<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="es">
		<id>https://mat.caminos.upm.es/w/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Javier+Ruiz+de+Galarreta+L%C3%B3pez</id>
		<title>MateWiki - Contribuciones del usuario [es]</title>
		<link rel="self" type="application/atom+xml" href="https://mat.caminos.upm.es/w/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Javier+Ruiz+de+Galarreta+L%C3%B3pez"/>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/wiki/Especial:Contribuciones/Javier_Ruiz_de_Galarreta_L%C3%B3pez"/>
		<updated>2026-04-28T20:29:27Z</updated>
		<subtitle>Contribuciones del usuario</subtitle>
		<generator>MediaWiki 1.26.2</generator>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=An%C3%A1lisis_sobre_la_viabilidad_de_la_ampliaci%C3%B3n_del_ancho_de_v%C3%ADa_internacional_en_el_Corredor_Mediterr%C3%A1neo_a_trav%C3%A9s_de_las_l%C3%ADneas_actuales&amp;diff=39988</id>
		<title>Análisis sobre la viabilidad de la ampliación del ancho de vía internacional en el Corredor Mediterráneo a través de las líneas actuales</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=An%C3%A1lisis_sobre_la_viabilidad_de_la_ampliaci%C3%B3n_del_ancho_de_v%C3%ADa_internacional_en_el_Corredor_Mediterr%C3%A1neo_a_trav%C3%A9s_de_las_l%C3%ADneas_actuales&amp;diff=39988"/>
				<updated>2017-05-26T09:34:37Z</updated>
		
		<summary type="html">&lt;p&gt;Javier Ruiz de Galarreta López: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{ TrabajoSIG | Análisis sobre la viabilidad de la ampliación del ancho de vía internacional en el Corredor Mediterráneo a través de las líneas actuales | Joaquín Sánchez Molina (396) Leoni Koch (698) Javier Ruiz de Galarreta López (1566)| [[:Categoría:SIGAIC_16/17|Curso 16/17]] }}&lt;br /&gt;
&lt;br /&gt;
El Corredor Ferroviario Mediterráneo discurre actualmente desde la frontera francesa hasta Murcia, ampliándose en el futuro hasta Algeciras. Debido al ancho de vía español, diferente al ancho internacional instalado mayoritariamente en Europa, los trenes no pueden circular de manera directa entre Europa y España. En diciembre de 2012, el Ministerio de Fomento propuso un plan para extender ese ancho europeo hacia el sur, hasta Algeciras, aunque dos años después lo desestimó. &lt;br /&gt;
&lt;br /&gt;
Nuestro trabajo consistirá en cuantificar el aumento de demanda de esa extensión del ancho europeo entre la frontera y Algeciras, buscando cuellos de botella y puntos de congestión como consecuencia de los nuevos tráficos captados, para cuantificar la necesidad o no de ampliaciones de capacidad de la red. Hemos utilizado datos del Ministerio de Fomento y ADIF, plasmándolos más tarde en SIG, incluyendo a su vez la población y el PIB de cada provincia, para ver de manera más gráfica la distribución de tráficos en el área. El año horizonte para el que hemos calculado estos tráficos es el 2025, pero este modelo debe irse actualizando en función de la demanda real de transporte que exista en el Corredor. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Palabras clave: ancho europeo, Corredor Mediterráneo, tren de mercancías, exportaciones, importaciones.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Introducción ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Como es sabido por todo aquel interesado en el ámbito ferroviario, en España, el ancho de vía es diferente al ancho de vía de Francia, Alemania y el resto de países de Europa Central y Occidental, a excepción de Portugal e Irlanda. Esto ha constituido desde el siglo XIX una enorme oportunidad perdida para revertir la situación de aislamiento geográfico que siempre ha tenido España por su condición periférica en Europa. Con la llegada de la Alta Velocidad el 1992 con la línea Madrid-Sevilla, se decidió la utilización del ancho europeo o internacional para ir comenzando un progresivo cambio de ancho de la red. Desde esa fecha, todas las líneas de alta velocidad (LAV) se han construido en ancho internacional, generando problemas de “frontera ferroviaria” a la hora de la conexión con la red convencional, en ancho ibérico.&lt;br /&gt;
&lt;br /&gt;
Esto ha supuesto tradicionalmente una imposibilidad de la circulación de trenes entre España y Francia, o al menos, obliga a un trasbordo en la frontera, con las molestias para las personas y los sobrecostes y retrasos para las mercancías. Una vez la red de alta velocidad llegó  hasta la frontera francesa con la LAV Barcelona-Frontera Francesa, inaugurada en enero de 2013, el problema de esa “frontera ferroviaria” se ha mitigado, pero sólo hasta Barcelona. Siendo casi todas las LAV exclusivas para tráfico de viajeros (excepto la Barcelona-Frontera Francesa, que está diseñada para viajeros y mercancías), los exiguos tráficos de mercancías han quedado consagrados a las líneas convencionales, en ancho ibérico. Esto constituye un problema importante, ya que, aunque algunos trenes de pasajeros pueden cambiar de ancho automáticamente entre LAV y red convencional, los vagones de mercancías no disponen de esa tecnología por falta de interés económico.&lt;br /&gt;
&lt;br /&gt;
Es por esto que, en el año 2012, el Ministerio de Fomento lanza un ambicioso plan para la extensión del ancho internacional/europeo por el Corredor Mediterráneo, desde Barcelona hasta Murcia. Gran parte de esta adaptación se centra en convertir las vías de ancho convencional en vías de ancho mixto (convencional y europeo), mediante la inclusión de un tercer carril. Sin embargo, en 2014, decidió dar carpetazo al asunto, volviendo a una solución mixta sin continuidad del ancho internacional. El objetivo de este trabajo es analizar el plan de 2012 de Fomento, y ver si con un ancho UIC continuo hasta Algeciras por la fachada mediterránea, sería suficiente con la instalación de ancho UIC en la red actual, o si, por el contrario, sería necesario un desdoblamiento para absorber la demanda.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Mapa provincias.jpg|750px|miniaturadeimagen|centro|Provincias por las que discurre el Corredor Mediterráneo y que son objeto de estudio en este trabajo]]&lt;br /&gt;
&lt;br /&gt;
== Metodología ==&lt;br /&gt;
Para la realización de este trabajo se ha empleado el mapa MTN200, obtenido del Centro de Descargas del Instituto Geográfico Nacional, que representa la totalidad de España. A continuación se ha digitalizado cada provincia, creando archivos vectoriales, agrupándolas más tarde para simplificar la representación en 4 zonas:&lt;br /&gt;
&lt;br /&gt;
*Zona I: Gerona, Barcelona y Tarragona. &lt;br /&gt;
*Zona II: Castellón y Valencia.&lt;br /&gt;
*Zona III: Alicante, Murcia y Almería. &lt;br /&gt;
*Zona IV: Granada, Málaga y Cádiz.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Mapa zonas.jpg|750px|miniaturadeimagen|centro|Fig. 2 Zonas de agrupación de las provincias objeto de estudio.]]&lt;br /&gt;
&lt;br /&gt;
Posteriormente, hemos digitalizado la línea ferroviaria por la que circularían los tráficos captados por la extensión del ancho internacional, asignándoles tres colores en función del grado de saturación (verde si no están saturados, amarillo si están próximos a la saturación y rojos si están saturados). Además, en cada zona hemos incluido varios atributos, como la población, el PIB y la proporción de las exportaciones respecto al PIB, para posteriormente clasificar las zonas y las provincias en función de estos factores mediante escalas cromáticas.&lt;br /&gt;
&lt;br /&gt;
Se han tomado los datos de tráfico del Estudio del Corredor Ferroviario Mediterráneo, de INECO para el Ministerio de Fomento y ADIF de marzo de 2011. De este estudio se han extraído los tráficos de mercancías, tanto por carretera como por ferrocarril, que circulan entre Europa y las diferentes zonas en las que hemos dividido el Corredor Mediterráneo, pero obviando los tráficos internos del mismo, ya que nos interesan los tráficos con Europa, por ser la implantación del ancho europeo el motivo de nuestro trabajo. Sumado a todo esto, vamos a suponer que, con esta ampliación del ancho europeo, siendo el ferrocarril el modo de transporte terrestre más barato por unidad de carga transportada en las distancias largas, se podrían captar el 80% de los tráficos actuales por carretera que realizan este recorrido hacia Francia. &lt;br /&gt;
Por último, hemos introducido el número de trenes actual en cada red que compartirían, sumando los trenes resultantes de los tráficos captados. De esta manera, podremos saber de una manera bastante ajustada a la realidad si la ampliación del ancho europeo hacia el sur por el Corredor Mediterráneo, puede utilizar las vías actuales o habría que construir una nueva plataforma expresamente para ello.&lt;br /&gt;
&lt;br /&gt;
== Resultados ==&lt;br /&gt;
Como hemos explicado antes, nuestro trabajo se basa en saber si la red actual sería capaz de absorber el aumento de tráficos que supondría la extensión del ancho europeo por el Corredor Mediterráneo. Por ello, vamos a identificar los tramos más congestionados a día de hoy, para entonces, en ellos, valorar si el aumento de trenes de mercancías es soportable o no, medido en trenes/hora. Asumimos que los trenes de mercancías deberán circular en los horarios de menor demanda, por lo que no tendremos en cuenta las horas punta para estudiar nuestro caso. Tomando las circulaciones actuales de la web de Renfe, así como las de mercancías en otros sitios web, hemos calculado el número de circulaciones diarias que soporta cada recorrido, con extremo en cada capital de provincia (excepto Motril en el caso de Granada y Algeciras en lugar de Cádiz). En la siguiente tabla, hemos indicado las circulaciones que se estiman para el año 2025, que es el año horizonte en el calcula que la extensión del ancho europeo debe de estar funcionando en su totalidad.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align:center;&amp;quot;&lt;br /&gt;
! Tramo&lt;br /&gt;
! Circulaciones/día&lt;br /&gt;
|-&lt;br /&gt;
|Frontera-Gerona||30&lt;br /&gt;
|-&lt;br /&gt;
|Gerona-Barcelona||62&lt;br /&gt;
|-&lt;br /&gt;
|Barcelona-Tarragona||168&lt;br /&gt;
|-&lt;br /&gt;
|Tarragona-Castellón||80&lt;br /&gt;
|-&lt;br /&gt;
|Castellón-Valencia||199&lt;br /&gt;
|-&lt;br /&gt;
|Valencia-Alicante||63*&lt;br /&gt;
|-&lt;br /&gt;
|Alicante-Murcia||92*&lt;br /&gt;
|-&lt;br /&gt;
|Murcia-Almería||66**&lt;br /&gt;
|-&lt;br /&gt;
|Almería-Granada||75**&lt;br /&gt;
|-&lt;br /&gt;
|Granada-Málaga||52**&lt;br /&gt;
|-&lt;br /&gt;
|Málaga-Cádiz||89**&lt;br /&gt;
|-&lt;br /&gt;
|colspan=2|''Tabla 1. Circulaciones/día en cada tramo del Corredor Mediterráneo en el horizonte 2025.''&lt;br /&gt;
|-&lt;br /&gt;
|colspan=2|''Nota:  *Sin vía; ** Sin línea existente, previsión en base a líneas con características semejantes.&lt;br /&gt;
''&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Sabemos que la extensión hacia el sur del ancho europeo hará que se incrementen las circulaciones, y para saber si la red actual puede soportarlo, tenemos que ver cuál es el tramo más saturado considerando también esas nuevas circulaciones. Sin embargo el incremento en esas circulaciones variará en función de la situación del mismo: no serán igual en la frontera francesa que en el tramo Murcia-Alicante.&lt;br /&gt;
&lt;br /&gt;
Ahora calculemos los trenes adicionales fruto del aumento de tráficos por la extensión del ancho europeo contando todos los tráficos, es decir, a la altura de la frontera francesa. Tenemos el tráfico de mercancías en el Corredor Mediterráneo con origen/destino Europa. Se trata en total de 25,49 millones de toneladas, de las que 23,29 se mueven por carretera y 2,2 lo hacen por ferrocarril. Tomando un peso medio por tren de 1000 t, nos da que, a día de hoy, tenemos 2.200 trenes de mercancías al año entre España y Europa. Con una captación del 70%, tendríamos que el ferrocarril pasaría a mover 23,29*0,7 + 2,2 = 18,503 millones de toneladas, lo que se traduce en 18.503 trenes al año. Suponiendo además que se distribuyen de manera uniforme a lo largo del año, tenemos que suponen un total de 51 trenes diarios. Estos cálculos los hemos tomado con los valores reales de 2007, sin embargo, para extrapolarlos al año horizonte 2025, debemos multiplicar esos valores por un 1,4, que es un valor que aproxima el aumento de la demanda de transporte para ese año. Por ello, tenemos que considerar 20.043*1,4=25.905 trenes anuales, lo que nos da 71 trenes diarios.&lt;br /&gt;
&lt;br /&gt;
Vamos a repetir este cálculo para cada uno de los tramos, siempre tomando en cuenta que cada vez ese incremento en las mercancías captadas y por lo tanto en nuevos tráficos generados es menor. Los resultados son los siguientes:&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align:center;&amp;quot;&lt;br /&gt;
! Tramo&lt;br /&gt;
! Δ circulaciones/día&lt;br /&gt;
|-&lt;br /&gt;
|Frontera-Gerona||71&lt;br /&gt;
|-&lt;br /&gt;
|Gerona-Barcelona||68&lt;br /&gt;
|-&lt;br /&gt;
|Barcelona-Tarragona||46&lt;br /&gt;
|-&lt;br /&gt;
|Tarragona-Castellón||37&lt;br /&gt;
|-&lt;br /&gt;
|Castellón-Valencia||30&lt;br /&gt;
|-&lt;br /&gt;
|Valencia-Alicante||19&lt;br /&gt;
|-&lt;br /&gt;
|Alicante-Murcia||14&lt;br /&gt;
|-&lt;br /&gt;
|Murcia-Almería||9&lt;br /&gt;
|-&lt;br /&gt;
|Almería-Granada||6&lt;br /&gt;
|-&lt;br /&gt;
|Granada-Málaga||3&lt;br /&gt;
|-&lt;br /&gt;
|Málaga-Cádiz||2&lt;br /&gt;
|-&lt;br /&gt;
|colspan=2|''Tabla 2.  Incremento de las circulaciones en cada tramo, fruto de la captación de nuevos tráficos.''&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
	&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Sumando estos valores a los anteriores, tenemos que las circulaciones/día en total son:&lt;br /&gt;
&lt;br /&gt;
{|class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align:center;&amp;quot; &lt;br /&gt;
! Tramo&lt;br /&gt;
! Circulaciones/día totales&lt;br /&gt;
|-&lt;br /&gt;
|Frontera-Gerona|| bgcolor=&amp;quot;LawnGreen&amp;quot; colspan=1 | 101&lt;br /&gt;
|-&lt;br /&gt;
|Gerona-Barcelona||bgcolor=&amp;quot;LawnGreen&amp;quot; colspan=1 |130&lt;br /&gt;
|-&lt;br /&gt;
|Barcelona-Tarragona||bgcolor=&amp;quot;Yellow&amp;quot; colspan=1 |214&lt;br /&gt;
|-&lt;br /&gt;
|Tarragona-Castellón||bgcolor=&amp;quot;LawnGreen&amp;quot; colspan=1 |117&lt;br /&gt;
|-&lt;br /&gt;
|Castellón-Valencia||bgcolor=&amp;quot;Yellow&amp;quot; colspan=1 |229&lt;br /&gt;
|-&lt;br /&gt;
|Valencia-Alicante||bgcolor=&amp;quot;Tomato&amp;quot; colspan=1 |82*&lt;br /&gt;
|-&lt;br /&gt;
|Alicante-Murcia||bgcolor=&amp;quot;Tomato&amp;quot; colspan=1 |106*&lt;br /&gt;
|-&lt;br /&gt;
|Murcia-Almería||bgcolor=&amp;quot;LawnGreen&amp;quot; colspan=1 |75**&lt;br /&gt;
|-&lt;br /&gt;
|Almería-Granada||bgcolor=&amp;quot;LawnGreen&amp;quot; colspan=1 |81**&lt;br /&gt;
|-&lt;br /&gt;
|Granada-Málaga||bgcolor=&amp;quot;LawnGreen&amp;quot; colspan=1 |55**&lt;br /&gt;
|-&lt;br /&gt;
|Málaga-Cádiz||bgcolor=&amp;quot;LawnGreen&amp;quot; colspan=1 |91**&lt;br /&gt;
|-&lt;br /&gt;
|colspan=2|''Tabla 3. Resultados de circulaciones totales.''&lt;br /&gt;
|-&lt;br /&gt;
|colspan=2|''Nota 1:  *Sin vía; ** Sin línea existente, previsión en base a líneas con características semejantes.''&lt;br /&gt;
|-&lt;br /&gt;
|colspan=2|''Nota 2:  En verde, tramos no saturados. En amarillo, tramos cercanos a la saturación. En rojo, tramos saturados.''&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Tomando valores propios de explotación ferroviaria, sabemos que las líneas de vía doble empiezan a tener problemas de capacidad a partir de las 200 circulaciones diarias, llegando a la saturación con valores de 280-300 circulaciones/día, por lo que vemos que en los tramos Barcelona-Tarragona y Castellón-Valencia tendríamos falta de capacidad, sobre todo en horas punta, pero sin llegar a la saturación. En el caso del tramo Alicante-Murcia, las 106 circulaciones/día sí que colapsarían nuestra línea, al ser de vía única, cuyo límite de saturación está entre las 70 y 80 circulaciones diarias. Esto también ocurriría en el tramo Valencia-Alicante.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Mapa linea fc.jpg|750px|miniaturadeimagen|centro|Fig. 3 Tramos de saturación de la línea férrea del Corredor Mediterráneo en 2025.]]&lt;br /&gt;
&lt;br /&gt;
== Conclusiones ==&lt;br /&gt;
Viendo los resultados de los cálculos realizados en base al crecimiento de las circulaciones en las líneas que nos ocupan, vemos que hay dos tramos en los que sería necesaria la ampliación de capacidad (preferentemente vía segregación de plataformas y anchos) para absorber la capacidad: Valencia-Alicante y Alicante-Murcia. Luego, tenemos otros dos tramos en los que, sin llegar a la saturación, convendría ir planificando un desdoble, separando los tráficos según anchos. Estamos hablando del Barcelona-Tarragona y el Castellón-Valencia.&lt;br /&gt;
&lt;br /&gt;
== Anejos ==&lt;br /&gt;
&lt;br /&gt;
Se añaden a continuación algunos mapas que reflejan variables fundamentales de la realidad socioeconómica de la zona de estudio.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Poblaci n mapa.jpg|750px|miniaturadeimagen|centro|Fig. 4 Población de las provincias de estudio.]]&lt;br /&gt;
&lt;br /&gt;
[[Archivo:PIB por Poblacion_mapa.jpg|750px|miniaturadeimagen|centro|Fig. 5 Producto Interior Bruto Per Cápita de las provincias bajo estudio.]]&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Exp por PIB mapa.jpg|750px|miniaturadeimagen|centro|Fig. 6 Porcentaje del valor de las exportaciones sobre el total del PIB.]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Referencias ==&lt;br /&gt;
&lt;br /&gt;
http://www.camins.cat/emailings/Cursos/Curs_ferroviari_2014/ponencies_web/9.5.14/Explotacion_infra_ferroviaria_Cantero_9.5.14.pdf&lt;br /&gt;
&lt;br /&gt;
http://www.fomento.es/NR/rdonlyres/1C7244AD-1CB8-46A5-8B3F-D515D2BBBF85/100282/20110314_ESTCORRMEDITERRANEObajo.pdf&lt;br /&gt;
&lt;br /&gt;
http://www.lavozlibre.com/noticias/ampliar/861280/el-ave-entre-girona-y-figueres-transporta-12-millones-de-viajeros-en-su-primer-ano&lt;br /&gt;
&lt;br /&gt;
http://www.ferropedia.es/wiki/Tr%C3%A1ficos_Corredor_Mediterr%C3%A1neo_(pasajeros)&lt;br /&gt;
&lt;br /&gt;
http://www.fomento.gob.es/NR/rdonlyres/109F0858-A15E-4F8C-B1D7-77C7F37FA9D8/114420/121218_Presentacion_proyecto_implantacion_UIC_Corr.pdf&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Categoría:Sistemas de Información Geográfica Aplicados a la Ingeniería Civil]]&lt;br /&gt;
[[Categoría:SIGAIC_16/17]]&lt;/div&gt;</summary>
		<author><name>Javier Ruiz de Galarreta López</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=An%C3%A1lisis_sobre_la_viabilidad_de_la_ampliaci%C3%B3n_del_ancho_de_v%C3%ADa_internacional_en_el_Corredor_Mediterr%C3%A1neo_a_trav%C3%A9s_de_las_l%C3%ADneas_actuales&amp;diff=39987</id>
		<title>Análisis sobre la viabilidad de la ampliación del ancho de vía internacional en el Corredor Mediterráneo a través de las líneas actuales</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=An%C3%A1lisis_sobre_la_viabilidad_de_la_ampliaci%C3%B3n_del_ancho_de_v%C3%ADa_internacional_en_el_Corredor_Mediterr%C3%A1neo_a_trav%C3%A9s_de_las_l%C3%ADneas_actuales&amp;diff=39987"/>
				<updated>2017-05-26T09:33:19Z</updated>
		
		<summary type="html">&lt;p&gt;Javier Ruiz de Galarreta López: /* Anejos */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{ TrabajoSIG | Análisis sobre la viabilidad de la ampliación del ancho de vía internacional en el Corredor Mediterráneo a través de las líneas actuales | Joaquín Sánchez Molina (396) Leoni Koch (698) Javier Ruiz de Galarreta López (1566)| [[:Categoría:SIGAIC_16/17|Curso 16/17]] }}&lt;br /&gt;
&lt;br /&gt;
El Corredor Ferroviario Mediterráneo discurre actualmente desde la frontera francesa hasta Murcia, ampliándose en el futuro hasta Algeciras. Debido al ancho de vía español, diferente al ancho internacional instalado mayoritariamente en Europa, los trenes no pueden circular de manera directa entre Europa y España. En diciembre de 2012, el Ministerio de Fomento propuso un plan para extender ese ancho europeo hacia el sur, hasta Algeciras, aunque dos años después lo desestimó. &lt;br /&gt;
&lt;br /&gt;
Nuestro trabajo consistirá en cuantificar el aumento de demanda de esa extensión del ancho europeo entre la frontera y Algeciras, buscando cuellos de botella y puntos de congestión como consecuencia de los nuevos tráficos captados, para cuantificar la necesidad o no de ampliaciones de capacidad de la red. Hemos utilizado datos del Ministerio de Fomento y ADIF, plasmándolos más tarde en SIG, incluyendo a su vez la población y el PIB de cada provincia, para ver de manera más gráfica la distribución de tráficos en el área. El año horizonte para el que hemos calculado estos tráficos es el 2025, pero este modelo debe irse actualizando en función de la demanda real de transporte que exista en el Corredor. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Palabras clave: ancho europeo, Corredor Mediterráneo, tren de mercancías, exportaciones, importaciones.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Introducción ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Como es sabido por todo aquel interesado en el ámbito ferroviario, en España, el ancho de vía es diferente al ancho de vía de Francia, Alemania y el resto de países de Europa Central y Occidental, a excepción de Portugal e Irlanda. Esto ha constituido desde el siglo XIX una enorme oportunidad perdida para revertir la situación de aislamiento geográfico que siempre ha tenido España por su condición periférica en Europa. Con la llegada de la Alta Velocidad el 1992 con la línea Madrid-Sevilla, se decidió la utilización del ancho europeo o internacional para ir comenzando un progresivo cambio de ancho de la red. Desde esa fecha, todas las líneas de alta velocidad (LAV) se han construido en ancho internacional, generando problemas de “frontera ferroviaria” a la hora de la conexión con la red convencional, en ancho ibérico.&lt;br /&gt;
&lt;br /&gt;
Esto ha supuesto tradicionalmente una imposibilidad de la circulación de trenes entre España y Francia, o al menos, obliga a un trasbordo en la frontera, con las molestias para las personas y los sobrecostes y retrasos para las mercancías. Una vez la red de alta velocidad llegó  hasta la frontera francesa con la LAV Barcelona-Frontera Francesa, inaugurada en enero de 2013, el problema de esa “frontera ferroviaria” se ha mitigado, pero sólo hasta Barcelona. Siendo casi todas las LAV exclusivas para tráfico de viajeros (excepto la Barcelona-Frontera Francesa, que está diseñada para viajeros y mercancías), los exiguos tráficos de mercancías han quedado consagrados a las líneas convencionales, en ancho ibérico. Esto constituye un problema importante, ya que, aunque algunos trenes de pasajeros pueden cambiar de ancho automáticamente entre LAV y red convencional, los vagones de mercancías no disponen de esa tecnología por falta de interés económico.&lt;br /&gt;
&lt;br /&gt;
Es por esto que, en el año 2012, el Ministerio de Fomento lanza un ambicioso plan para la extensión del ancho internacional/europeo por el Corredor Mediterráneo, desde Barcelona hasta Murcia. Gran parte de esta adaptación se centra en convertir las vías de ancho convencional en vías de ancho mixto (convencional y europeo), mediante la inclusión de un tercer carril. Sin embargo, en 2014, decidió dar carpetazo al asunto, volviendo a una solución mixta sin continuidad del ancho internacional. El objetivo de este trabajo es analizar el plan de 2012 de Fomento, y ver si con un ancho UIC continuo hasta Algeciras por la fachada mediterránea, sería suficiente con la instalación de ancho UIC en la red actual, o si, por el contrario, sería necesario un desdoblamiento para absorber la demanda.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Mapa provincias.jpg|750px|miniaturadeimagen|centro|Provincias por las que discurre el Corredor Mediterráneo y que son objeto de estudio en este trabajo]]&lt;br /&gt;
&lt;br /&gt;
== Metodología ==&lt;br /&gt;
Para la realización de este trabajo se ha empleado el mapa MTN200, obtenido del Centro de Descargas del Instituto Geográfico Nacional, que representa la totalidad de España. A continuación se ha digitalizado cada provincia, creando archivos vectoriales, agrupándolas más tarde para simplificar la representación en 4 zonas:&lt;br /&gt;
&lt;br /&gt;
*Zona I: Gerona, Barcelona y Tarragona. &lt;br /&gt;
*Zona II: Castellón y Valencia.&lt;br /&gt;
*Zona III: Alicante, Murcia y Almería. &lt;br /&gt;
*Zona IV: Granada, Málaga y Cádiz.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Mapa zonas.jpg|750px|miniaturadeimagen|centro|Fig. 2 Zonas de agrupación de las provincias objeto de estudio.]]&lt;br /&gt;
&lt;br /&gt;
Posteriormente, hemos digitalizado la línea ferroviaria por la que circularían los tráficos captados por la extensión del ancho internacional, asignándoles tres colores en función del grado de saturación (verde si no están saturados, amarillo si están próximos a la saturación y rojos si están saturados). Además, en cada zona hemos incluido varios atributos, como la población, el PIB y la proporción de las exportaciones respecto al PIB, para posteriormente clasificar las zonas y las provincias en función de estos factores mediante escalas cromáticas.&lt;br /&gt;
&lt;br /&gt;
Se han tomado los datos de tráfico del Estudio del Corredor Ferroviario Mediterráneo, de INECO para el Ministerio de Fomento y ADIF de marzo de 2011. De este estudio se han extraído los tráficos de mercancías, tanto por carretera como por ferrocarril, que circulan entre Europa y las diferentes zonas en las que hemos dividido el Corredor Mediterráneo, pero obviando los tráficos internos del mismo, ya que nos interesan los tráficos con Europa, por ser la implantación del ancho europeo el motivo de nuestro trabajo. Sumado a todo esto, vamos a suponer que, con esta ampliación del ancho europeo, siendo el ferrocarril el modo de transporte terrestre más barato por unidad de carga transportada en las distancias largas, se podrían captar el 80% de los tráficos actuales por carretera que realizan este recorrido hacia Francia. &lt;br /&gt;
Por último, hemos introducido el número de trenes actual en cada red que compartirían, sumando los trenes resultantes de los tráficos captados. De esta manera, podremos saber de una manera bastante ajustada a la realidad si la ampliación del ancho europeo hacia el sur por el Corredor Mediterráneo, puede utilizar las vías actuales o habría que construir una nueva plataforma expresamente para ello.&lt;br /&gt;
&lt;br /&gt;
== Resultados ==&lt;br /&gt;
Como hemos explicado antes, nuestro trabajo se basa en saber si la red actual sería capaz de absorber el aumento de tráficos que supondría la extensión del ancho europeo por el Corredor Mediterráneo. Por ello, vamos a identificar los tramos más congestionados a día de hoy, para entonces, en ellos, valorar si el aumento de trenes de mercancías es soportable o no, medido en trenes/hora. Asumimos que los trenes de mercancías deberán circular en los horarios de menor demanda, por lo que no tendremos en cuenta las horas punta para estudiar nuestro caso. Tomando las circulaciones actuales de la web de Renfe, así como las de mercancías en otros sitios web, hemos calculado el número de circulaciones diarias que soporta cada recorrido, con extremo en cada capital de provincia (excepto Motril en el caso de Granada y Algeciras en lugar de Cádiz). En la siguiente tabla, hemos indicado las circulaciones que se estiman para el año 2025, que es el año horizonte en el calcula que la extensión del ancho europeo debe de estar funcionando en su totalidad.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align:center;&amp;quot;&lt;br /&gt;
! Tramo&lt;br /&gt;
! Circulaciones/día&lt;br /&gt;
|-&lt;br /&gt;
|Frontera-Gerona||30&lt;br /&gt;
|-&lt;br /&gt;
|Gerona-Barcelona||62&lt;br /&gt;
|-&lt;br /&gt;
|Barcelona-Tarragona||168&lt;br /&gt;
|-&lt;br /&gt;
|Tarragona-Castellón||80&lt;br /&gt;
|-&lt;br /&gt;
|Castellón-Valencia||199&lt;br /&gt;
|-&lt;br /&gt;
|Valencia-Alicante||63*&lt;br /&gt;
|-&lt;br /&gt;
|Alicante-Murcia||92*&lt;br /&gt;
|-&lt;br /&gt;
|Murcia-Almería||66**&lt;br /&gt;
|-&lt;br /&gt;
|Almería-Granada||75**&lt;br /&gt;
|-&lt;br /&gt;
|Granada-Málaga||52**&lt;br /&gt;
|-&lt;br /&gt;
|Málaga-Cádiz||89**&lt;br /&gt;
|-&lt;br /&gt;
|colspan=2|''Tabla 1. Circulaciones/día en cada tramo del Corredor Mediterráneo en el horizonte 2025.''&lt;br /&gt;
|-&lt;br /&gt;
|colspan=2|''Nota:  *Sin vía; ** Sin línea existente, previsión en base a líneas con características semejantes.&lt;br /&gt;
''&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Sabemos que la extensión hacia el sur del ancho europeo hará que se incrementen las circulaciones, y para saber si la red actual puede soportarlo, tenemos que ver cuál es el tramo más saturado considerando también esas nuevas circulaciones. Sin embargo el incremento en esas circulaciones variará en función de la situación del mismo: no serán igual en la frontera francesa que en el tramo Murcia-Alicante.&lt;br /&gt;
&lt;br /&gt;
Ahora calculemos los trenes adicionales fruto del aumento de tráficos por la extensión del ancho europeo contando todos los tráficos, es decir, a la altura de la frontera francesa. Tenemos el tráfico de mercancías en el Corredor Mediterráneo con origen/destino Europa. Se trata en total de 25,49 millones de toneladas, de las que 23,29 se mueven por carretera y 2,2 lo hacen por ferrocarril. Tomando un peso medio por tren de 1000 t, nos da que, a día de hoy, tenemos 2.200 trenes de mercancías al año entre España y Europa. Con una captación del 70%, tendríamos que el ferrocarril pasaría a mover 23,29*0,7 + 2,2 = 18,503 millones de toneladas, lo que se traduce en 18.503 trenes al año. Suponiendo además que se distribuyen de manera uniforme a lo largo del año, tenemos que suponen un total de 51 trenes diarios. Estos cálculos los hemos tomado con los valores reales de 2007, sin embargo, para extrapolarlos al año horizonte 2025, debemos multiplicar esos valores por un 1,4, que es un valor que aproxima el aumento de la demanda de transporte para ese año. Por ello, tenemos que considerar 20.043*1,4=25.905 trenes anuales, lo que nos da 71 trenes diarios.&lt;br /&gt;
&lt;br /&gt;
Vamos a repetir este cálculo para cada uno de los tramos, siempre tomando en cuenta que cada vez ese incremento en las mercancías captadas y por lo tanto en nuevos tráficos generados es menor. Los resultados son los siguientes:&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align:center;&amp;quot;&lt;br /&gt;
! Tramo&lt;br /&gt;
! Δ circulaciones/día&lt;br /&gt;
|-&lt;br /&gt;
|Frontera-Gerona||71&lt;br /&gt;
|-&lt;br /&gt;
|Gerona-Barcelona||68&lt;br /&gt;
|-&lt;br /&gt;
|Barcelona-Tarragona||46&lt;br /&gt;
|-&lt;br /&gt;
|Tarragona-Castellón||37&lt;br /&gt;
|-&lt;br /&gt;
|Castellón-Valencia||30&lt;br /&gt;
|-&lt;br /&gt;
|Valencia-Alicante||19&lt;br /&gt;
|-&lt;br /&gt;
|Alicante-Murcia||14&lt;br /&gt;
|-&lt;br /&gt;
|Murcia-Almería||9&lt;br /&gt;
|-&lt;br /&gt;
|Almería-Granada||6&lt;br /&gt;
|-&lt;br /&gt;
|Granada-Málaga||3&lt;br /&gt;
|-&lt;br /&gt;
|Málaga-Cádiz||2&lt;br /&gt;
|-&lt;br /&gt;
|colspan=2|''Tabla 2.  Incremento de las circulaciones en cada tramo, fruto de la captación de nuevos tráficos.''&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
	&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Sumando estos valores a los anteriores, tenemos que las circulaciones/día en total son:&lt;br /&gt;
&lt;br /&gt;
{|class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align:center;&amp;quot; &lt;br /&gt;
! Tramo&lt;br /&gt;
! Circulaciones/día totales&lt;br /&gt;
|-&lt;br /&gt;
|Frontera-Gerona|| bgcolor=&amp;quot;LawnGreen&amp;quot; colspan=1 | 101&lt;br /&gt;
|-&lt;br /&gt;
|Gerona-Barcelona||bgcolor=&amp;quot;LawnGreen&amp;quot; colspan=1 |130&lt;br /&gt;
|-&lt;br /&gt;
|Barcelona-Tarragona||bgcolor=&amp;quot;Yellow&amp;quot; colspan=1 |214&lt;br /&gt;
|-&lt;br /&gt;
|Tarragona-Castellón||bgcolor=&amp;quot;LawnGreen&amp;quot; colspan=1 |117&lt;br /&gt;
|-&lt;br /&gt;
|Castellón-Valencia||bgcolor=&amp;quot;Yellow&amp;quot; colspan=1 |229&lt;br /&gt;
|-&lt;br /&gt;
|Valencia-Alicante||bgcolor=&amp;quot;Tomato&amp;quot; colspan=1 |82*&lt;br /&gt;
|-&lt;br /&gt;
|Alicante-Murcia||bgcolor=&amp;quot;Tomato&amp;quot; colspan=1 |106*&lt;br /&gt;
|-&lt;br /&gt;
|Murcia-Almería||bgcolor=&amp;quot;LawnGreen&amp;quot; colspan=1 |75**&lt;br /&gt;
|-&lt;br /&gt;
|Almería-Granada||bgcolor=&amp;quot;LawnGreen&amp;quot; colspan=1 |81**&lt;br /&gt;
|-&lt;br /&gt;
|Granada-Málaga||bgcolor=&amp;quot;LawnGreen&amp;quot; colspan=1 |55**&lt;br /&gt;
|-&lt;br /&gt;
|Málaga-Cádiz||bgcolor=&amp;quot;LawnGreen&amp;quot; colspan=1 |91**&lt;br /&gt;
|-&lt;br /&gt;
|colspan=2|''Tabla 3. Resultados de circulaciones totales.''&lt;br /&gt;
|-&lt;br /&gt;
|colspan=2|''Nota 1:  *Sin vía; ** Sin línea existente, previsión en base a líneas con características semejantes.''&lt;br /&gt;
|-&lt;br /&gt;
|colspan=2|''Nota 2:  En verde, tramos no saturados. En amarillo, tramos cercanos a la saturación. En rojo, tramos saturados.''&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Tomando valores propios de explotación ferroviaria, sabemos que las líneas de vía doble empiezan a tener problemas de capacidad a partir de las 200 circulaciones diarias, llegando a la saturación con valores de 280-300 circulaciones/día, por lo que vemos que en los tramos Barcelona-Tarragona y Castellón-Valencia tendríamos falta de capacidad, sobre todo en horas punta, pero sin llegar a la saturación. En el caso del tramo Alicante-Murcia, las 106 circulaciones/día sí que colapsarían nuestra línea, al ser de vía única, cuyo límite de saturación está entre las 70 y 80 circulaciones diarias. Esto también ocurriría en el tramo Valencia-Alicante.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Mapa linea fc.jpg|750px|miniaturadeimagen|centro|Fig. 3 Tramos de saturación de la línea férrea del Corredor Mediterráneo en 2025.]]&lt;br /&gt;
&lt;br /&gt;
== Conclusiones ==&lt;br /&gt;
Viendo los resultados de los cálculos realizados en base al crecimiento de las circulaciones en las líneas que nos ocupan, vemos que hay dos tramos en los que sería necesaria la ampliación de capacidad (preferentemente vía segregación de plataformas y anchos) para absorber la capacidad: Valencia-Alicante y Alicante-Murcia. Luego, tenemos otros dos tramos en los que, sin llegar a la saturación, convendría ir planificando un desdoble, separando los tráficos según anchos. Estamos hablando del Barcelona-Tarragona y el Castellón-Valencia.&lt;br /&gt;
&lt;br /&gt;
== Anejos ==&lt;br /&gt;
&lt;br /&gt;
Se añaden a continuación algunos mapas que reflejan variables fundamentales de la realidad socioeconómica de la zona de estudio.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Poblaci n mapa.jpg|750px|miniaturadeimagen|centro|Fig. 4 Población de las provincias de estudio.]]&lt;br /&gt;
&lt;br /&gt;
[[Archivo:PIB por Poblacion_mapa.jpg|750px|miniaturadeimagen|centro|Fig. 5 Producto Interior Bruto Per Cápita de las provincias bajo estudio.]]&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Exp por PIB mapa.jpg|750px|miniaturadeimagen|centro|Fig. 6 Porcentaje del valor de las exportaciones sobre el total del PIB.]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Categoría:Sistemas de Información Geográfica Aplicados a la Ingeniería Civil]]&lt;br /&gt;
[[Categoría:SIGAIC_16/17]]&lt;/div&gt;</summary>
		<author><name>Javier Ruiz de Galarreta López</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=An%C3%A1lisis_sobre_la_viabilidad_de_la_ampliaci%C3%B3n_del_ancho_de_v%C3%ADa_internacional_en_el_Corredor_Mediterr%C3%A1neo_a_trav%C3%A9s_de_las_l%C3%ADneas_actuales&amp;diff=39986</id>
		<title>Análisis sobre la viabilidad de la ampliación del ancho de vía internacional en el Corredor Mediterráneo a través de las líneas actuales</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=An%C3%A1lisis_sobre_la_viabilidad_de_la_ampliaci%C3%B3n_del_ancho_de_v%C3%ADa_internacional_en_el_Corredor_Mediterr%C3%A1neo_a_trav%C3%A9s_de_las_l%C3%ADneas_actuales&amp;diff=39986"/>
				<updated>2017-05-26T09:29:13Z</updated>
		
		<summary type="html">&lt;p&gt;Javier Ruiz de Galarreta López: /* Resultados */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{ TrabajoSIG | Análisis sobre la viabilidad de la ampliación del ancho de vía internacional en el Corredor Mediterráneo a través de las líneas actuales | Joaquín Sánchez Molina (396) Leoni Koch (698) Javier Ruiz de Galarreta López (1566)| [[:Categoría:SIGAIC_16/17|Curso 16/17]] }}&lt;br /&gt;
&lt;br /&gt;
El Corredor Ferroviario Mediterráneo discurre actualmente desde la frontera francesa hasta Murcia, ampliándose en el futuro hasta Algeciras. Debido al ancho de vía español, diferente al ancho internacional instalado mayoritariamente en Europa, los trenes no pueden circular de manera directa entre Europa y España. En diciembre de 2012, el Ministerio de Fomento propuso un plan para extender ese ancho europeo hacia el sur, hasta Algeciras, aunque dos años después lo desestimó. &lt;br /&gt;
&lt;br /&gt;
Nuestro trabajo consistirá en cuantificar el aumento de demanda de esa extensión del ancho europeo entre la frontera y Algeciras, buscando cuellos de botella y puntos de congestión como consecuencia de los nuevos tráficos captados, para cuantificar la necesidad o no de ampliaciones de capacidad de la red. Hemos utilizado datos del Ministerio de Fomento y ADIF, plasmándolos más tarde en SIG, incluyendo a su vez la población y el PIB de cada provincia, para ver de manera más gráfica la distribución de tráficos en el área. El año horizonte para el que hemos calculado estos tráficos es el 2025, pero este modelo debe irse actualizando en función de la demanda real de transporte que exista en el Corredor. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Palabras clave: ancho europeo, Corredor Mediterráneo, tren de mercancías, exportaciones, importaciones.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Introducción ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Como es sabido por todo aquel interesado en el ámbito ferroviario, en España, el ancho de vía es diferente al ancho de vía de Francia, Alemania y el resto de países de Europa Central y Occidental, a excepción de Portugal e Irlanda. Esto ha constituido desde el siglo XIX una enorme oportunidad perdida para revertir la situación de aislamiento geográfico que siempre ha tenido España por su condición periférica en Europa. Con la llegada de la Alta Velocidad el 1992 con la línea Madrid-Sevilla, se decidió la utilización del ancho europeo o internacional para ir comenzando un progresivo cambio de ancho de la red. Desde esa fecha, todas las líneas de alta velocidad (LAV) se han construido en ancho internacional, generando problemas de “frontera ferroviaria” a la hora de la conexión con la red convencional, en ancho ibérico.&lt;br /&gt;
&lt;br /&gt;
Esto ha supuesto tradicionalmente una imposibilidad de la circulación de trenes entre España y Francia, o al menos, obliga a un trasbordo en la frontera, con las molestias para las personas y los sobrecostes y retrasos para las mercancías. Una vez la red de alta velocidad llegó  hasta la frontera francesa con la LAV Barcelona-Frontera Francesa, inaugurada en enero de 2013, el problema de esa “frontera ferroviaria” se ha mitigado, pero sólo hasta Barcelona. Siendo casi todas las LAV exclusivas para tráfico de viajeros (excepto la Barcelona-Frontera Francesa, que está diseñada para viajeros y mercancías), los exiguos tráficos de mercancías han quedado consagrados a las líneas convencionales, en ancho ibérico. Esto constituye un problema importante, ya que, aunque algunos trenes de pasajeros pueden cambiar de ancho automáticamente entre LAV y red convencional, los vagones de mercancías no disponen de esa tecnología por falta de interés económico.&lt;br /&gt;
&lt;br /&gt;
Es por esto que, en el año 2012, el Ministerio de Fomento lanza un ambicioso plan para la extensión del ancho internacional/europeo por el Corredor Mediterráneo, desde Barcelona hasta Murcia. Gran parte de esta adaptación se centra en convertir las vías de ancho convencional en vías de ancho mixto (convencional y europeo), mediante la inclusión de un tercer carril. Sin embargo, en 2014, decidió dar carpetazo al asunto, volviendo a una solución mixta sin continuidad del ancho internacional. El objetivo de este trabajo es analizar el plan de 2012 de Fomento, y ver si con un ancho UIC continuo hasta Algeciras por la fachada mediterránea, sería suficiente con la instalación de ancho UIC en la red actual, o si, por el contrario, sería necesario un desdoblamiento para absorber la demanda.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Mapa provincias.jpg|750px|miniaturadeimagen|centro|Provincias por las que discurre el Corredor Mediterráneo y que son objeto de estudio en este trabajo]]&lt;br /&gt;
&lt;br /&gt;
== Metodología ==&lt;br /&gt;
Para la realización de este trabajo se ha empleado el mapa MTN200, obtenido del Centro de Descargas del Instituto Geográfico Nacional, que representa la totalidad de España. A continuación se ha digitalizado cada provincia, creando archivos vectoriales, agrupándolas más tarde para simplificar la representación en 4 zonas:&lt;br /&gt;
&lt;br /&gt;
*Zona I: Gerona, Barcelona y Tarragona. &lt;br /&gt;
*Zona II: Castellón y Valencia.&lt;br /&gt;
*Zona III: Alicante, Murcia y Almería. &lt;br /&gt;
*Zona IV: Granada, Málaga y Cádiz.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Mapa zonas.jpg|750px|miniaturadeimagen|centro|Fig. 2 Zonas de agrupación de las provincias objeto de estudio.]]&lt;br /&gt;
&lt;br /&gt;
Posteriormente, hemos digitalizado la línea ferroviaria por la que circularían los tráficos captados por la extensión del ancho internacional, asignándoles tres colores en función del grado de saturación (verde si no están saturados, amarillo si están próximos a la saturación y rojos si están saturados). Además, en cada zona hemos incluido varios atributos, como la población, el PIB y la proporción de las exportaciones respecto al PIB, para posteriormente clasificar las zonas y las provincias en función de estos factores mediante escalas cromáticas.&lt;br /&gt;
&lt;br /&gt;
Se han tomado los datos de tráfico del Estudio del Corredor Ferroviario Mediterráneo, de INECO para el Ministerio de Fomento y ADIF de marzo de 2011. De este estudio se han extraído los tráficos de mercancías, tanto por carretera como por ferrocarril, que circulan entre Europa y las diferentes zonas en las que hemos dividido el Corredor Mediterráneo, pero obviando los tráficos internos del mismo, ya que nos interesan los tráficos con Europa, por ser la implantación del ancho europeo el motivo de nuestro trabajo. Sumado a todo esto, vamos a suponer que, con esta ampliación del ancho europeo, siendo el ferrocarril el modo de transporte terrestre más barato por unidad de carga transportada en las distancias largas, se podrían captar el 80% de los tráficos actuales por carretera que realizan este recorrido hacia Francia. &lt;br /&gt;
Por último, hemos introducido el número de trenes actual en cada red que compartirían, sumando los trenes resultantes de los tráficos captados. De esta manera, podremos saber de una manera bastante ajustada a la realidad si la ampliación del ancho europeo hacia el sur por el Corredor Mediterráneo, puede utilizar las vías actuales o habría que construir una nueva plataforma expresamente para ello.&lt;br /&gt;
&lt;br /&gt;
== Resultados ==&lt;br /&gt;
Como hemos explicado antes, nuestro trabajo se basa en saber si la red actual sería capaz de absorber el aumento de tráficos que supondría la extensión del ancho europeo por el Corredor Mediterráneo. Por ello, vamos a identificar los tramos más congestionados a día de hoy, para entonces, en ellos, valorar si el aumento de trenes de mercancías es soportable o no, medido en trenes/hora. Asumimos que los trenes de mercancías deberán circular en los horarios de menor demanda, por lo que no tendremos en cuenta las horas punta para estudiar nuestro caso. Tomando las circulaciones actuales de la web de Renfe, así como las de mercancías en otros sitios web, hemos calculado el número de circulaciones diarias que soporta cada recorrido, con extremo en cada capital de provincia (excepto Motril en el caso de Granada y Algeciras en lugar de Cádiz). En la siguiente tabla, hemos indicado las circulaciones que se estiman para el año 2025, que es el año horizonte en el calcula que la extensión del ancho europeo debe de estar funcionando en su totalidad.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align:center;&amp;quot;&lt;br /&gt;
! Tramo&lt;br /&gt;
! Circulaciones/día&lt;br /&gt;
|-&lt;br /&gt;
|Frontera-Gerona||30&lt;br /&gt;
|-&lt;br /&gt;
|Gerona-Barcelona||62&lt;br /&gt;
|-&lt;br /&gt;
|Barcelona-Tarragona||168&lt;br /&gt;
|-&lt;br /&gt;
|Tarragona-Castellón||80&lt;br /&gt;
|-&lt;br /&gt;
|Castellón-Valencia||199&lt;br /&gt;
|-&lt;br /&gt;
|Valencia-Alicante||63*&lt;br /&gt;
|-&lt;br /&gt;
|Alicante-Murcia||92*&lt;br /&gt;
|-&lt;br /&gt;
|Murcia-Almería||66**&lt;br /&gt;
|-&lt;br /&gt;
|Almería-Granada||75**&lt;br /&gt;
|-&lt;br /&gt;
|Granada-Málaga||52**&lt;br /&gt;
|-&lt;br /&gt;
|Málaga-Cádiz||89**&lt;br /&gt;
|-&lt;br /&gt;
|colspan=2|''Tabla 1. Circulaciones/día en cada tramo del Corredor Mediterráneo en el horizonte 2025.''&lt;br /&gt;
|-&lt;br /&gt;
|colspan=2|''Nota:  *Sin vía; ** Sin línea existente, previsión en base a líneas con características semejantes.&lt;br /&gt;
''&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Sabemos que la extensión hacia el sur del ancho europeo hará que se incrementen las circulaciones, y para saber si la red actual puede soportarlo, tenemos que ver cuál es el tramo más saturado considerando también esas nuevas circulaciones. Sin embargo el incremento en esas circulaciones variará en función de la situación del mismo: no serán igual en la frontera francesa que en el tramo Murcia-Alicante.&lt;br /&gt;
&lt;br /&gt;
Ahora calculemos los trenes adicionales fruto del aumento de tráficos por la extensión del ancho europeo contando todos los tráficos, es decir, a la altura de la frontera francesa. Tenemos el tráfico de mercancías en el Corredor Mediterráneo con origen/destino Europa. Se trata en total de 25,49 millones de toneladas, de las que 23,29 se mueven por carretera y 2,2 lo hacen por ferrocarril. Tomando un peso medio por tren de 1000 t, nos da que, a día de hoy, tenemos 2.200 trenes de mercancías al año entre España y Europa. Con una captación del 70%, tendríamos que el ferrocarril pasaría a mover 23,29*0,7 + 2,2 = 18,503 millones de toneladas, lo que se traduce en 18.503 trenes al año. Suponiendo además que se distribuyen de manera uniforme a lo largo del año, tenemos que suponen un total de 51 trenes diarios. Estos cálculos los hemos tomado con los valores reales de 2007, sin embargo, para extrapolarlos al año horizonte 2025, debemos multiplicar esos valores por un 1,4, que es un valor que aproxima el aumento de la demanda de transporte para ese año. Por ello, tenemos que considerar 20.043*1,4=25.905 trenes anuales, lo que nos da 71 trenes diarios.&lt;br /&gt;
&lt;br /&gt;
Vamos a repetir este cálculo para cada uno de los tramos, siempre tomando en cuenta que cada vez ese incremento en las mercancías captadas y por lo tanto en nuevos tráficos generados es menor. Los resultados son los siguientes:&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align:center;&amp;quot;&lt;br /&gt;
! Tramo&lt;br /&gt;
! Δ circulaciones/día&lt;br /&gt;
|-&lt;br /&gt;
|Frontera-Gerona||71&lt;br /&gt;
|-&lt;br /&gt;
|Gerona-Barcelona||68&lt;br /&gt;
|-&lt;br /&gt;
|Barcelona-Tarragona||46&lt;br /&gt;
|-&lt;br /&gt;
|Tarragona-Castellón||37&lt;br /&gt;
|-&lt;br /&gt;
|Castellón-Valencia||30&lt;br /&gt;
|-&lt;br /&gt;
|Valencia-Alicante||19&lt;br /&gt;
|-&lt;br /&gt;
|Alicante-Murcia||14&lt;br /&gt;
|-&lt;br /&gt;
|Murcia-Almería||9&lt;br /&gt;
|-&lt;br /&gt;
|Almería-Granada||6&lt;br /&gt;
|-&lt;br /&gt;
|Granada-Málaga||3&lt;br /&gt;
|-&lt;br /&gt;
|Málaga-Cádiz||2&lt;br /&gt;
|-&lt;br /&gt;
|colspan=2|''Tabla 2.  Incremento de las circulaciones en cada tramo, fruto de la captación de nuevos tráficos.''&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
	&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Sumando estos valores a los anteriores, tenemos que las circulaciones/día en total son:&lt;br /&gt;
&lt;br /&gt;
{|class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align:center;&amp;quot; &lt;br /&gt;
! Tramo&lt;br /&gt;
! Circulaciones/día totales&lt;br /&gt;
|-&lt;br /&gt;
|Frontera-Gerona|| bgcolor=&amp;quot;LawnGreen&amp;quot; colspan=1 | 101&lt;br /&gt;
|-&lt;br /&gt;
|Gerona-Barcelona||bgcolor=&amp;quot;LawnGreen&amp;quot; colspan=1 |130&lt;br /&gt;
|-&lt;br /&gt;
|Barcelona-Tarragona||bgcolor=&amp;quot;Yellow&amp;quot; colspan=1 |214&lt;br /&gt;
|-&lt;br /&gt;
|Tarragona-Castellón||bgcolor=&amp;quot;LawnGreen&amp;quot; colspan=1 |117&lt;br /&gt;
|-&lt;br /&gt;
|Castellón-Valencia||bgcolor=&amp;quot;Yellow&amp;quot; colspan=1 |229&lt;br /&gt;
|-&lt;br /&gt;
|Valencia-Alicante||bgcolor=&amp;quot;Tomato&amp;quot; colspan=1 |82*&lt;br /&gt;
|-&lt;br /&gt;
|Alicante-Murcia||bgcolor=&amp;quot;Tomato&amp;quot; colspan=1 |106*&lt;br /&gt;
|-&lt;br /&gt;
|Murcia-Almería||bgcolor=&amp;quot;LawnGreen&amp;quot; colspan=1 |75**&lt;br /&gt;
|-&lt;br /&gt;
|Almería-Granada||bgcolor=&amp;quot;LawnGreen&amp;quot; colspan=1 |81**&lt;br /&gt;
|-&lt;br /&gt;
|Granada-Málaga||bgcolor=&amp;quot;LawnGreen&amp;quot; colspan=1 |55**&lt;br /&gt;
|-&lt;br /&gt;
|Málaga-Cádiz||bgcolor=&amp;quot;LawnGreen&amp;quot; colspan=1 |91**&lt;br /&gt;
|-&lt;br /&gt;
|colspan=2|''Tabla 3. Resultados de circulaciones totales.''&lt;br /&gt;
|-&lt;br /&gt;
|colspan=2|''Nota 1:  *Sin vía; ** Sin línea existente, previsión en base a líneas con características semejantes.''&lt;br /&gt;
|-&lt;br /&gt;
|colspan=2|''Nota 2:  En verde, tramos no saturados. En amarillo, tramos cercanos a la saturación. En rojo, tramos saturados.''&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Tomando valores propios de explotación ferroviaria, sabemos que las líneas de vía doble empiezan a tener problemas de capacidad a partir de las 200 circulaciones diarias, llegando a la saturación con valores de 280-300 circulaciones/día, por lo que vemos que en los tramos Barcelona-Tarragona y Castellón-Valencia tendríamos falta de capacidad, sobre todo en horas punta, pero sin llegar a la saturación. En el caso del tramo Alicante-Murcia, las 106 circulaciones/día sí que colapsarían nuestra línea, al ser de vía única, cuyo límite de saturación está entre las 70 y 80 circulaciones diarias. Esto también ocurriría en el tramo Valencia-Alicante.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Mapa linea fc.jpg|750px|miniaturadeimagen|centro|Fig. 3 Tramos de saturación de la línea férrea del Corredor Mediterráneo en 2025.]]&lt;br /&gt;
&lt;br /&gt;
== Conclusiones ==&lt;br /&gt;
Viendo los resultados de los cálculos realizados en base al crecimiento de las circulaciones en las líneas que nos ocupan, vemos que hay dos tramos en los que sería necesaria la ampliación de capacidad (preferentemente vía segregación de plataformas y anchos) para absorber la capacidad: Valencia-Alicante y Alicante-Murcia. Luego, tenemos otros dos tramos en los que, sin llegar a la saturación, convendría ir planificando un desdoble, separando los tráficos según anchos. Estamos hablando del Barcelona-Tarragona y el Castellón-Valencia.&lt;br /&gt;
&lt;br /&gt;
== Anejos ==&lt;br /&gt;
&lt;br /&gt;
Se pueden adjuntar archivos usando el enlace ''Subir archivo'' que aparece a la izquierda.&lt;br /&gt;
&lt;br /&gt;
[[Categoría:Sistemas de Información Geográfica Aplicados a la Ingeniería Civil]]&lt;br /&gt;
[[Categoría:SIGAIC_16/17]]&lt;/div&gt;</summary>
		<author><name>Javier Ruiz de Galarreta López</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=An%C3%A1lisis_sobre_la_viabilidad_de_la_ampliaci%C3%B3n_del_ancho_de_v%C3%ADa_internacional_en_el_Corredor_Mediterr%C3%A1neo_a_trav%C3%A9s_de_las_l%C3%ADneas_actuales&amp;diff=39985</id>
		<title>Análisis sobre la viabilidad de la ampliación del ancho de vía internacional en el Corredor Mediterráneo a través de las líneas actuales</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=An%C3%A1lisis_sobre_la_viabilidad_de_la_ampliaci%C3%B3n_del_ancho_de_v%C3%ADa_internacional_en_el_Corredor_Mediterr%C3%A1neo_a_trav%C3%A9s_de_las_l%C3%ADneas_actuales&amp;diff=39985"/>
				<updated>2017-05-26T09:24:08Z</updated>
		
		<summary type="html">&lt;p&gt;Javier Ruiz de Galarreta López: /* Metodología */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{ TrabajoSIG | Análisis sobre la viabilidad de la ampliación del ancho de vía internacional en el Corredor Mediterráneo a través de las líneas actuales | Joaquín Sánchez Molina (396) Leoni Koch (698) Javier Ruiz de Galarreta López (1566)| [[:Categoría:SIGAIC_16/17|Curso 16/17]] }}&lt;br /&gt;
&lt;br /&gt;
El Corredor Ferroviario Mediterráneo discurre actualmente desde la frontera francesa hasta Murcia, ampliándose en el futuro hasta Algeciras. Debido al ancho de vía español, diferente al ancho internacional instalado mayoritariamente en Europa, los trenes no pueden circular de manera directa entre Europa y España. En diciembre de 2012, el Ministerio de Fomento propuso un plan para extender ese ancho europeo hacia el sur, hasta Algeciras, aunque dos años después lo desestimó. &lt;br /&gt;
&lt;br /&gt;
Nuestro trabajo consistirá en cuantificar el aumento de demanda de esa extensión del ancho europeo entre la frontera y Algeciras, buscando cuellos de botella y puntos de congestión como consecuencia de los nuevos tráficos captados, para cuantificar la necesidad o no de ampliaciones de capacidad de la red. Hemos utilizado datos del Ministerio de Fomento y ADIF, plasmándolos más tarde en SIG, incluyendo a su vez la población y el PIB de cada provincia, para ver de manera más gráfica la distribución de tráficos en el área. El año horizonte para el que hemos calculado estos tráficos es el 2025, pero este modelo debe irse actualizando en función de la demanda real de transporte que exista en el Corredor. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Palabras clave: ancho europeo, Corredor Mediterráneo, tren de mercancías, exportaciones, importaciones.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Introducción ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Como es sabido por todo aquel interesado en el ámbito ferroviario, en España, el ancho de vía es diferente al ancho de vía de Francia, Alemania y el resto de países de Europa Central y Occidental, a excepción de Portugal e Irlanda. Esto ha constituido desde el siglo XIX una enorme oportunidad perdida para revertir la situación de aislamiento geográfico que siempre ha tenido España por su condición periférica en Europa. Con la llegada de la Alta Velocidad el 1992 con la línea Madrid-Sevilla, se decidió la utilización del ancho europeo o internacional para ir comenzando un progresivo cambio de ancho de la red. Desde esa fecha, todas las líneas de alta velocidad (LAV) se han construido en ancho internacional, generando problemas de “frontera ferroviaria” a la hora de la conexión con la red convencional, en ancho ibérico.&lt;br /&gt;
&lt;br /&gt;
Esto ha supuesto tradicionalmente una imposibilidad de la circulación de trenes entre España y Francia, o al menos, obliga a un trasbordo en la frontera, con las molestias para las personas y los sobrecostes y retrasos para las mercancías. Una vez la red de alta velocidad llegó  hasta la frontera francesa con la LAV Barcelona-Frontera Francesa, inaugurada en enero de 2013, el problema de esa “frontera ferroviaria” se ha mitigado, pero sólo hasta Barcelona. Siendo casi todas las LAV exclusivas para tráfico de viajeros (excepto la Barcelona-Frontera Francesa, que está diseñada para viajeros y mercancías), los exiguos tráficos de mercancías han quedado consagrados a las líneas convencionales, en ancho ibérico. Esto constituye un problema importante, ya que, aunque algunos trenes de pasajeros pueden cambiar de ancho automáticamente entre LAV y red convencional, los vagones de mercancías no disponen de esa tecnología por falta de interés económico.&lt;br /&gt;
&lt;br /&gt;
Es por esto que, en el año 2012, el Ministerio de Fomento lanza un ambicioso plan para la extensión del ancho internacional/europeo por el Corredor Mediterráneo, desde Barcelona hasta Murcia. Gran parte de esta adaptación se centra en convertir las vías de ancho convencional en vías de ancho mixto (convencional y europeo), mediante la inclusión de un tercer carril. Sin embargo, en 2014, decidió dar carpetazo al asunto, volviendo a una solución mixta sin continuidad del ancho internacional. El objetivo de este trabajo es analizar el plan de 2012 de Fomento, y ver si con un ancho UIC continuo hasta Algeciras por la fachada mediterránea, sería suficiente con la instalación de ancho UIC en la red actual, o si, por el contrario, sería necesario un desdoblamiento para absorber la demanda.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Mapa provincias.jpg|750px|miniaturadeimagen|centro|Provincias por las que discurre el Corredor Mediterráneo y que son objeto de estudio en este trabajo]]&lt;br /&gt;
&lt;br /&gt;
== Metodología ==&lt;br /&gt;
Para la realización de este trabajo se ha empleado el mapa MTN200, obtenido del Centro de Descargas del Instituto Geográfico Nacional, que representa la totalidad de España. A continuación se ha digitalizado cada provincia, creando archivos vectoriales, agrupándolas más tarde para simplificar la representación en 4 zonas:&lt;br /&gt;
&lt;br /&gt;
*Zona I: Gerona, Barcelona y Tarragona. &lt;br /&gt;
*Zona II: Castellón y Valencia.&lt;br /&gt;
*Zona III: Alicante, Murcia y Almería. &lt;br /&gt;
*Zona IV: Granada, Málaga y Cádiz.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Mapa zonas.jpg|750px|miniaturadeimagen|centro|Fig. 2 Zonas de agrupación de las provincias objeto de estudio.]]&lt;br /&gt;
&lt;br /&gt;
Posteriormente, hemos digitalizado la línea ferroviaria por la que circularían los tráficos captados por la extensión del ancho internacional, asignándoles tres colores en función del grado de saturación (verde si no están saturados, amarillo si están próximos a la saturación y rojos si están saturados). Además, en cada zona hemos incluido varios atributos, como la población, el PIB y la proporción de las exportaciones respecto al PIB, para posteriormente clasificar las zonas y las provincias en función de estos factores mediante escalas cromáticas.&lt;br /&gt;
&lt;br /&gt;
Se han tomado los datos de tráfico del Estudio del Corredor Ferroviario Mediterráneo, de INECO para el Ministerio de Fomento y ADIF de marzo de 2011. De este estudio se han extraído los tráficos de mercancías, tanto por carretera como por ferrocarril, que circulan entre Europa y las diferentes zonas en las que hemos dividido el Corredor Mediterráneo, pero obviando los tráficos internos del mismo, ya que nos interesan los tráficos con Europa, por ser la implantación del ancho europeo el motivo de nuestro trabajo. Sumado a todo esto, vamos a suponer que, con esta ampliación del ancho europeo, siendo el ferrocarril el modo de transporte terrestre más barato por unidad de carga transportada en las distancias largas, se podrían captar el 80% de los tráficos actuales por carretera que realizan este recorrido hacia Francia. &lt;br /&gt;
Por último, hemos introducido el número de trenes actual en cada red que compartirían, sumando los trenes resultantes de los tráficos captados. De esta manera, podremos saber de una manera bastante ajustada a la realidad si la ampliación del ancho europeo hacia el sur por el Corredor Mediterráneo, puede utilizar las vías actuales o habría que construir una nueva plataforma expresamente para ello.&lt;br /&gt;
&lt;br /&gt;
== Resultados ==&lt;br /&gt;
Como hemos explicado antes, nuestro trabajo se basa en saber si la red actual sería capaz de absorber el aumento de tráficos que supondría la extensión del ancho europeo por el Corredor Mediterráneo. Por ello, vamos a identificar los tramos más congestionados a día de hoy, para entonces, en ellos, valorar si el aumento de trenes de mercancías es soportable o no, medido en trenes/hora. Asumimos que los trenes de mercancías deberán circular en los horarios de menor demanda, por lo que no tendremos en cuenta las horas punta para estudiar nuestro caso. Tomando las circulaciones actuales de la web de Renfe, así como las de mercancías en otros sitios web, hemos calculado el número de circulaciones diarias que soporta cada recorrido, con extremo en cada capital de provincia (excepto Motril en el caso de Granada y Algeciras en lugar de Cádiz). En la siguiente tabla, hemos indicado las circulaciones que se estiman para el año 2025, que es el año horizonte en el calcula que la extensión del ancho europeo debe de estar funcionando en su totalidad.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align:center;&amp;quot;&lt;br /&gt;
! Tramo&lt;br /&gt;
! Circulaciones/día&lt;br /&gt;
|-&lt;br /&gt;
|Frontera-Gerona||30&lt;br /&gt;
|-&lt;br /&gt;
|Gerona-Barcelona||62&lt;br /&gt;
|-&lt;br /&gt;
|Barcelona-Tarragona||168&lt;br /&gt;
|-&lt;br /&gt;
|Tarragona-Castellón||80&lt;br /&gt;
|-&lt;br /&gt;
|Castellón-Valencia||199&lt;br /&gt;
|-&lt;br /&gt;
|Valencia-Alicante||63*&lt;br /&gt;
|-&lt;br /&gt;
|Alicante-Murcia||92*&lt;br /&gt;
|-&lt;br /&gt;
|Murcia-Almería||66**&lt;br /&gt;
|-&lt;br /&gt;
|Almería-Granada||75**&lt;br /&gt;
|-&lt;br /&gt;
|Granada-Málaga||52**&lt;br /&gt;
|-&lt;br /&gt;
|Málaga-Cádiz||89**&lt;br /&gt;
|-&lt;br /&gt;
|colspan=2|''Tabla 1. Circulaciones/día en cada tramo del Corredor Mediterráneo en el horizonte 2025.''&lt;br /&gt;
|-&lt;br /&gt;
|colspan=2|''Nota:  *Sin vía; ** Sin línea existente, previsión en base a líneas con características semejantes.&lt;br /&gt;
''&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Sabemos que la extensión hacia el sur del ancho europeo hará que se incrementen las circulaciones, y para saber si la red actual puede soportarlo, tenemos que ver cuál es el tramo más saturado considerando también esas nuevas circulaciones. Sin embargo el incremento en esas circulaciones variará en función de la situación del mismo: no serán igual en la frontera francesa que en el tramo Murcia-Alicante.&lt;br /&gt;
&lt;br /&gt;
Ahora calculemos los trenes adicionales fruto del aumento de tráficos por la extensión del ancho europeo contando todos los tráficos, es decir, a la altura de la frontera francesa. Tenemos el tráfico de mercancías en el Corredor Mediterráneo con origen/destino Europa. Se trata en total de 25,49 millones de toneladas, de las que 23,29 se mueven por carretera y 2,2 lo hacen por ferrocarril. Tomando un peso medio por tren de 1000 t, nos da que, a día de hoy, tenemos 2.200 trenes de mercancías al año entre España y Europa. Con una captación del 70%, tendríamos que el ferrocarril pasaría a mover 23,29*0,7 + 2,2 = 18,503 millones de toneladas, lo que se traduce en 18.503 trenes al año. Suponiendo además que se distribuyen de manera uniforme a lo largo del año, tenemos que suponen un total de 51 trenes diarios. Estos cálculos los hemos tomado con los valores reales de 2007, sin embargo, para extrapolarlos al año horizonte 2025, debemos multiplicar esos valores por un 1,4, que es un valor que aproxima el aumento de la demanda de transporte para ese año. Por ello, tenemos que considerar 20.043*1,4=25.905 trenes anuales, lo que nos da 71 trenes diarios.&lt;br /&gt;
&lt;br /&gt;
Vamos a repetir este cálculo para cada uno de los tramos, siempre tomando en cuenta que cada vez ese incremento en las mercancías captadas y por lo tanto en nuevos tráficos generados es menor. Los resultados son los siguientes:&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align:center;&amp;quot;&lt;br /&gt;
! Tramo&lt;br /&gt;
! Δ circulaciones/día&lt;br /&gt;
|-&lt;br /&gt;
|Frontera-Gerona||71&lt;br /&gt;
|-&lt;br /&gt;
|Gerona-Barcelona||68&lt;br /&gt;
|-&lt;br /&gt;
|Barcelona-Tarragona||46&lt;br /&gt;
|-&lt;br /&gt;
|Tarragona-Castellón||37&lt;br /&gt;
|-&lt;br /&gt;
|Castellón-Valencia||30&lt;br /&gt;
|-&lt;br /&gt;
|Valencia-Alicante||19&lt;br /&gt;
|-&lt;br /&gt;
|Alicante-Murcia||14&lt;br /&gt;
|-&lt;br /&gt;
|Murcia-Almería||9&lt;br /&gt;
|-&lt;br /&gt;
|Almería-Granada||6&lt;br /&gt;
|-&lt;br /&gt;
|Granada-Málaga||3&lt;br /&gt;
|-&lt;br /&gt;
|Málaga-Cádiz||2&lt;br /&gt;
|-&lt;br /&gt;
|colspan=2|''Tabla 2.  Incremento de las circulaciones en cada tramo, fruto de la captación de nuevos tráficos.''&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
	&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Sumando estos valores a los anteriores, tenemos que las circulaciones/día en total son:&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align:center;&amp;quot; &lt;br /&gt;
! Tramo&lt;br /&gt;
! Circulaciones/día totales&lt;br /&gt;
|-&lt;br /&gt;
|Frontera-Gerona|| bgcolor=&amp;quot;LawnGreen&amp;quot; colspan=1 | 101&lt;br /&gt;
|-&lt;br /&gt;
|Gerona-Barcelona||bgcolor=&amp;quot;LawnGreen&amp;quot; colspan=1 |130&lt;br /&gt;
|-&lt;br /&gt;
|Barcelona-Tarragona||bgcolor=&amp;quot;Yellow&amp;quot; colspan=1 |214&lt;br /&gt;
|-&lt;br /&gt;
|Tarragona-Castellón||bgcolor=&amp;quot;LawnGreen&amp;quot; colspan=1 |117&lt;br /&gt;
|-&lt;br /&gt;
|Castellón-Valencia||bgcolor=&amp;quot;Yellow&amp;quot; colspan=1 |229&lt;br /&gt;
|-&lt;br /&gt;
|Valencia-Alicante||bgcolor=&amp;quot;Tomato&amp;quot; colspan=1 |82*&lt;br /&gt;
|-&lt;br /&gt;
|Alicante-Murcia||bgcolor=&amp;quot;Tomato&amp;quot; colspan=1 |106*&lt;br /&gt;
|-&lt;br /&gt;
|Murcia-Almería||bgcolor=&amp;quot;LawnGreen&amp;quot; colspan=1 |75**&lt;br /&gt;
|-&lt;br /&gt;
|Almería-Granada||bgcolor=&amp;quot;LawnGreen&amp;quot; colspan=1 |81**&lt;br /&gt;
|-&lt;br /&gt;
|Granada-Málaga||bgcolor=&amp;quot;LawnGreen&amp;quot; colspan=1 |55**&lt;br /&gt;
|-&lt;br /&gt;
|Málaga-Cádiz||bgcolor=&amp;quot;LawnGreen&amp;quot; colspan=1 |91**&lt;br /&gt;
|-&lt;br /&gt;
|colspan=2|''Tabla 3. Resultados de circulaciones totales.''&lt;br /&gt;
|-&lt;br /&gt;
|colspan=2|''Nota 1:  *Sin vía; ** Sin línea existente, previsión en base a líneas con características semejantes.''&lt;br /&gt;
|-&lt;br /&gt;
|colspan=2|''Nota 2:  En verde, tramos no saturados. En amarillo, tramos cercanos a la saturación. En rojo, tramos saturados.''&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Tomando valores propios de explotación ferroviaria, sabemos que las líneas de vía doble empiezan a tener problemas de capacidad a partir de las 200 circulaciones diarias, llegando a la saturación con valores de 280-300 circulaciones/día, por lo que vemos que en los tramos Barcelona-Tarragona y Castellón-Valencia tendríamos falta de capacidad, sobre todo en horas punta, pero sin llegar a la saturación. En el caso del tramo Alicante-Murcia, las 106 circulaciones/día sí que colapsarían nuestra línea, al ser de vía única, cuyo límite de saturación está entre las 70 y 80 circulaciones diarias. Esto también ocurriría en el tramo Valencia-Alicante.&lt;br /&gt;
&lt;br /&gt;
== Conclusiones ==&lt;br /&gt;
Viendo los resultados de los cálculos realizados en base al crecimiento de las circulaciones en las líneas que nos ocupan, vemos que hay dos tramos en los que sería necesaria la ampliación de capacidad (preferentemente vía segregación de plataformas y anchos) para absorber la capacidad: Valencia-Alicante y Alicante-Murcia. Luego, tenemos otros dos tramos en los que, sin llegar a la saturación, convendría ir planificando un desdoble, separando los tráficos según anchos. Estamos hablando del Barcelona-Tarragona y el Castellón-Valencia.&lt;br /&gt;
&lt;br /&gt;
== Anejos ==&lt;br /&gt;
&lt;br /&gt;
Se pueden adjuntar archivos usando el enlace ''Subir archivo'' que aparece a la izquierda.&lt;br /&gt;
&lt;br /&gt;
[[Categoría:Sistemas de Información Geográfica Aplicados a la Ingeniería Civil]]&lt;br /&gt;
[[Categoría:SIGAIC_16/17]]&lt;/div&gt;</summary>
		<author><name>Javier Ruiz de Galarreta López</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=An%C3%A1lisis_sobre_la_viabilidad_de_la_ampliaci%C3%B3n_del_ancho_de_v%C3%ADa_internacional_en_el_Corredor_Mediterr%C3%A1neo_a_trav%C3%A9s_de_las_l%C3%ADneas_actuales&amp;diff=39984</id>
		<title>Análisis sobre la viabilidad de la ampliación del ancho de vía internacional en el Corredor Mediterráneo a través de las líneas actuales</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=An%C3%A1lisis_sobre_la_viabilidad_de_la_ampliaci%C3%B3n_del_ancho_de_v%C3%ADa_internacional_en_el_Corredor_Mediterr%C3%A1neo_a_trav%C3%A9s_de_las_l%C3%ADneas_actuales&amp;diff=39984"/>
				<updated>2017-05-26T09:19:45Z</updated>
		
		<summary type="html">&lt;p&gt;Javier Ruiz de Galarreta López: /* Introducción */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{ TrabajoSIG | Análisis sobre la viabilidad de la ampliación del ancho de vía internacional en el Corredor Mediterráneo a través de las líneas actuales | Joaquín Sánchez Molina (396) Leoni Koch (698) Javier Ruiz de Galarreta López (1566)| [[:Categoría:SIGAIC_16/17|Curso 16/17]] }}&lt;br /&gt;
&lt;br /&gt;
El Corredor Ferroviario Mediterráneo discurre actualmente desde la frontera francesa hasta Murcia, ampliándose en el futuro hasta Algeciras. Debido al ancho de vía español, diferente al ancho internacional instalado mayoritariamente en Europa, los trenes no pueden circular de manera directa entre Europa y España. En diciembre de 2012, el Ministerio de Fomento propuso un plan para extender ese ancho europeo hacia el sur, hasta Algeciras, aunque dos años después lo desestimó. &lt;br /&gt;
&lt;br /&gt;
Nuestro trabajo consistirá en cuantificar el aumento de demanda de esa extensión del ancho europeo entre la frontera y Algeciras, buscando cuellos de botella y puntos de congestión como consecuencia de los nuevos tráficos captados, para cuantificar la necesidad o no de ampliaciones de capacidad de la red. Hemos utilizado datos del Ministerio de Fomento y ADIF, plasmándolos más tarde en SIG, incluyendo a su vez la población y el PIB de cada provincia, para ver de manera más gráfica la distribución de tráficos en el área. El año horizonte para el que hemos calculado estos tráficos es el 2025, pero este modelo debe irse actualizando en función de la demanda real de transporte que exista en el Corredor. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Palabras clave: ancho europeo, Corredor Mediterráneo, tren de mercancías, exportaciones, importaciones.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Introducción ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Como es sabido por todo aquel interesado en el ámbito ferroviario, en España, el ancho de vía es diferente al ancho de vía de Francia, Alemania y el resto de países de Europa Central y Occidental, a excepción de Portugal e Irlanda. Esto ha constituido desde el siglo XIX una enorme oportunidad perdida para revertir la situación de aislamiento geográfico que siempre ha tenido España por su condición periférica en Europa. Con la llegada de la Alta Velocidad el 1992 con la línea Madrid-Sevilla, se decidió la utilización del ancho europeo o internacional para ir comenzando un progresivo cambio de ancho de la red. Desde esa fecha, todas las líneas de alta velocidad (LAV) se han construido en ancho internacional, generando problemas de “frontera ferroviaria” a la hora de la conexión con la red convencional, en ancho ibérico.&lt;br /&gt;
&lt;br /&gt;
Esto ha supuesto tradicionalmente una imposibilidad de la circulación de trenes entre España y Francia, o al menos, obliga a un trasbordo en la frontera, con las molestias para las personas y los sobrecostes y retrasos para las mercancías. Una vez la red de alta velocidad llegó  hasta la frontera francesa con la LAV Barcelona-Frontera Francesa, inaugurada en enero de 2013, el problema de esa “frontera ferroviaria” se ha mitigado, pero sólo hasta Barcelona. Siendo casi todas las LAV exclusivas para tráfico de viajeros (excepto la Barcelona-Frontera Francesa, que está diseñada para viajeros y mercancías), los exiguos tráficos de mercancías han quedado consagrados a las líneas convencionales, en ancho ibérico. Esto constituye un problema importante, ya que, aunque algunos trenes de pasajeros pueden cambiar de ancho automáticamente entre LAV y red convencional, los vagones de mercancías no disponen de esa tecnología por falta de interés económico.&lt;br /&gt;
&lt;br /&gt;
Es por esto que, en el año 2012, el Ministerio de Fomento lanza un ambicioso plan para la extensión del ancho internacional/europeo por el Corredor Mediterráneo, desde Barcelona hasta Murcia. Gran parte de esta adaptación se centra en convertir las vías de ancho convencional en vías de ancho mixto (convencional y europeo), mediante la inclusión de un tercer carril. Sin embargo, en 2014, decidió dar carpetazo al asunto, volviendo a una solución mixta sin continuidad del ancho internacional. El objetivo de este trabajo es analizar el plan de 2012 de Fomento, y ver si con un ancho UIC continuo hasta Algeciras por la fachada mediterránea, sería suficiente con la instalación de ancho UIC en la red actual, o si, por el contrario, sería necesario un desdoblamiento para absorber la demanda.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Mapa provincias.jpg|750px|miniaturadeimagen|centro|Provincias por las que discurre el Corredor Mediterráneo y que son objeto de estudio en este trabajo]]&lt;br /&gt;
&lt;br /&gt;
== Metodología ==&lt;br /&gt;
Para la realización de este trabajo se ha empleado el mapa MTN200, obtenido del Centro de Descargas del Instituto Geográfico Nacional, que representa la totalidad de España. A continuación se ha digitalizado cada provincia, creando archivos vectoriales, agrupándolas más tarde para simplificar la representación en 4 zonas:&lt;br /&gt;
&lt;br /&gt;
*Zona I: Gerona, Barcelona y Tarragona. &lt;br /&gt;
*Zona II: Castellón y Valencia.&lt;br /&gt;
*Zona III: Alicante, Murcia y Almería. &lt;br /&gt;
*Zona IV: Granada, Málaga y Cádiz.&lt;br /&gt;
&lt;br /&gt;
Posteriormente, hemos digitalizado la línea ferroviaria por la que circularían los tráficos captados por la extensión del ancho internacional, asignándoles tres colores en función del grado de saturación (verde si no están saturados, amarillo si están próximos a la saturación y rojos si están saturados). Además, en cada zona hemos incluido varios atributos, como la población, el PIB y la proporción de las exportaciones respecto al PIB, para posteriormente clasificar las zonas y las provincias en función de estos factores mediante escalas cromáticas. &lt;br /&gt;
Se han tomado los datos de tráfico del Estudio del Corredor Ferroviario Mediterráneo, de INECO para el Ministerio de Fomento y ADIF de marzo de 2011. De este estudio se han extraído los tráficos de mercancías, tanto por carretera como por ferrocarril, que circulan entre Europa y las diferentes zonas en las que hemos dividido el Corredor Mediterráneo, pero obviando los tráficos internos del mismo, ya que nos interesan los tráficos con Europa, por ser la implantación del ancho europeo el motivo de nuestro trabajo. Sumado a todo esto, vamos a suponer que, con esta ampliación del ancho europeo, siendo el ferrocarril el modo de transporte terrestre más barato por unidad de carga transportada en las distancias largas, se podrían captar el 80% de los tráficos actuales por carretera que realizan este recorrido hacia Francia. &lt;br /&gt;
Por último, hemos introducido el número de trenes actual en cada red que compartirían, sumando los trenes resultantes de los tráficos captados. De esta manera, podremos saber de una manera bastante ajustada a la realidad si la ampliación del ancho europeo hacia el sur por el Corredor Mediterráneo, puede utilizar las vías actuales o habría que construir una nueva plataforma expresamente para ello.&lt;br /&gt;
&lt;br /&gt;
== Resultados ==&lt;br /&gt;
Como hemos explicado antes, nuestro trabajo se basa en saber si la red actual sería capaz de absorber el aumento de tráficos que supondría la extensión del ancho europeo por el Corredor Mediterráneo. Por ello, vamos a identificar los tramos más congestionados a día de hoy, para entonces, en ellos, valorar si el aumento de trenes de mercancías es soportable o no, medido en trenes/hora. Asumimos que los trenes de mercancías deberán circular en los horarios de menor demanda, por lo que no tendremos en cuenta las horas punta para estudiar nuestro caso. Tomando las circulaciones actuales de la web de Renfe, así como las de mercancías en otros sitios web, hemos calculado el número de circulaciones diarias que soporta cada recorrido, con extremo en cada capital de provincia (excepto Motril en el caso de Granada y Algeciras en lugar de Cádiz). En la siguiente tabla, hemos indicado las circulaciones que se estiman para el año 2025, que es el año horizonte en el calcula que la extensión del ancho europeo debe de estar funcionando en su totalidad.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align:center;&amp;quot;&lt;br /&gt;
! Tramo&lt;br /&gt;
! Circulaciones/día&lt;br /&gt;
|-&lt;br /&gt;
|Frontera-Gerona||30&lt;br /&gt;
|-&lt;br /&gt;
|Gerona-Barcelona||62&lt;br /&gt;
|-&lt;br /&gt;
|Barcelona-Tarragona||168&lt;br /&gt;
|-&lt;br /&gt;
|Tarragona-Castellón||80&lt;br /&gt;
|-&lt;br /&gt;
|Castellón-Valencia||199&lt;br /&gt;
|-&lt;br /&gt;
|Valencia-Alicante||63*&lt;br /&gt;
|-&lt;br /&gt;
|Alicante-Murcia||92*&lt;br /&gt;
|-&lt;br /&gt;
|Murcia-Almería||66**&lt;br /&gt;
|-&lt;br /&gt;
|Almería-Granada||75**&lt;br /&gt;
|-&lt;br /&gt;
|Granada-Málaga||52**&lt;br /&gt;
|-&lt;br /&gt;
|Málaga-Cádiz||89**&lt;br /&gt;
|-&lt;br /&gt;
|colspan=2|''Tabla 1. Circulaciones/día en cada tramo del Corredor Mediterráneo en el horizonte 2025.''&lt;br /&gt;
|-&lt;br /&gt;
|colspan=2|''Nota:  *Sin vía; ** Sin línea existente, previsión en base a líneas con características semejantes.&lt;br /&gt;
''&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Sabemos que la extensión hacia el sur del ancho europeo hará que se incrementen las circulaciones, y para saber si la red actual puede soportarlo, tenemos que ver cuál es el tramo más saturado considerando también esas nuevas circulaciones. Sin embargo el incremento en esas circulaciones variará en función de la situación del mismo: no serán igual en la frontera francesa que en el tramo Murcia-Alicante.&lt;br /&gt;
&lt;br /&gt;
Ahora calculemos los trenes adicionales fruto del aumento de tráficos por la extensión del ancho europeo contando todos los tráficos, es decir, a la altura de la frontera francesa. Tenemos el tráfico de mercancías en el Corredor Mediterráneo con origen/destino Europa. Se trata en total de 25,49 millones de toneladas, de las que 23,29 se mueven por carretera y 2,2 lo hacen por ferrocarril. Tomando un peso medio por tren de 1000 t, nos da que, a día de hoy, tenemos 2.200 trenes de mercancías al año entre España y Europa. Con una captación del 70%, tendríamos que el ferrocarril pasaría a mover 23,29*0,7 + 2,2 = 18,503 millones de toneladas, lo que se traduce en 18.503 trenes al año. Suponiendo además que se distribuyen de manera uniforme a lo largo del año, tenemos que suponen un total de 51 trenes diarios. Estos cálculos los hemos tomado con los valores reales de 2007, sin embargo, para extrapolarlos al año horizonte 2025, debemos multiplicar esos valores por un 1,4, que es un valor que aproxima el aumento de la demanda de transporte para ese año. Por ello, tenemos que considerar 20.043*1,4=25.905 trenes anuales, lo que nos da 71 trenes diarios.&lt;br /&gt;
&lt;br /&gt;
Vamos a repetir este cálculo para cada uno de los tramos, siempre tomando en cuenta que cada vez ese incremento en las mercancías captadas y por lo tanto en nuevos tráficos generados es menor. Los resultados son los siguientes:&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align:center;&amp;quot;&lt;br /&gt;
! Tramo&lt;br /&gt;
! Δ circulaciones/día&lt;br /&gt;
|-&lt;br /&gt;
|Frontera-Gerona||71&lt;br /&gt;
|-&lt;br /&gt;
|Gerona-Barcelona||68&lt;br /&gt;
|-&lt;br /&gt;
|Barcelona-Tarragona||46&lt;br /&gt;
|-&lt;br /&gt;
|Tarragona-Castellón||37&lt;br /&gt;
|-&lt;br /&gt;
|Castellón-Valencia||30&lt;br /&gt;
|-&lt;br /&gt;
|Valencia-Alicante||19&lt;br /&gt;
|-&lt;br /&gt;
|Alicante-Murcia||14&lt;br /&gt;
|-&lt;br /&gt;
|Murcia-Almería||9&lt;br /&gt;
|-&lt;br /&gt;
|Almería-Granada||6&lt;br /&gt;
|-&lt;br /&gt;
|Granada-Málaga||3&lt;br /&gt;
|-&lt;br /&gt;
|Málaga-Cádiz||2&lt;br /&gt;
|-&lt;br /&gt;
|colspan=2|''Tabla 2.  Incremento de las circulaciones en cada tramo, fruto de la captación de nuevos tráficos.''&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
	&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Sumando estos valores a los anteriores, tenemos que las circulaciones/día en total son:&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align:center;&amp;quot; &lt;br /&gt;
! Tramo&lt;br /&gt;
! Circulaciones/día totales&lt;br /&gt;
|-&lt;br /&gt;
|Frontera-Gerona|| bgcolor=&amp;quot;LawnGreen&amp;quot; colspan=1 | 101&lt;br /&gt;
|-&lt;br /&gt;
|Gerona-Barcelona||bgcolor=&amp;quot;LawnGreen&amp;quot; colspan=1 |130&lt;br /&gt;
|-&lt;br /&gt;
|Barcelona-Tarragona||bgcolor=&amp;quot;Yellow&amp;quot; colspan=1 |214&lt;br /&gt;
|-&lt;br /&gt;
|Tarragona-Castellón||bgcolor=&amp;quot;LawnGreen&amp;quot; colspan=1 |117&lt;br /&gt;
|-&lt;br /&gt;
|Castellón-Valencia||bgcolor=&amp;quot;Yellow&amp;quot; colspan=1 |229&lt;br /&gt;
|-&lt;br /&gt;
|Valencia-Alicante||bgcolor=&amp;quot;Tomato&amp;quot; colspan=1 |82*&lt;br /&gt;
|-&lt;br /&gt;
|Alicante-Murcia||bgcolor=&amp;quot;Tomato&amp;quot; colspan=1 |106*&lt;br /&gt;
|-&lt;br /&gt;
|Murcia-Almería||bgcolor=&amp;quot;LawnGreen&amp;quot; colspan=1 |75**&lt;br /&gt;
|-&lt;br /&gt;
|Almería-Granada||bgcolor=&amp;quot;LawnGreen&amp;quot; colspan=1 |81**&lt;br /&gt;
|-&lt;br /&gt;
|Granada-Málaga||bgcolor=&amp;quot;LawnGreen&amp;quot; colspan=1 |55**&lt;br /&gt;
|-&lt;br /&gt;
|Málaga-Cádiz||bgcolor=&amp;quot;LawnGreen&amp;quot; colspan=1 |91**&lt;br /&gt;
|-&lt;br /&gt;
|colspan=2|''Tabla 3. Resultados de circulaciones totales.''&lt;br /&gt;
|-&lt;br /&gt;
|colspan=2|''Nota 1:  *Sin vía; ** Sin línea existente, previsión en base a líneas con características semejantes.''&lt;br /&gt;
|-&lt;br /&gt;
|colspan=2|''Nota 2:  En verde, tramos no saturados. En amarillo, tramos cercanos a la saturación. En rojo, tramos saturados.''&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Tomando valores propios de explotación ferroviaria, sabemos que las líneas de vía doble empiezan a tener problemas de capacidad a partir de las 200 circulaciones diarias, llegando a la saturación con valores de 280-300 circulaciones/día, por lo que vemos que en los tramos Barcelona-Tarragona y Castellón-Valencia tendríamos falta de capacidad, sobre todo en horas punta, pero sin llegar a la saturación. En el caso del tramo Alicante-Murcia, las 106 circulaciones/día sí que colapsarían nuestra línea, al ser de vía única, cuyo límite de saturación está entre las 70 y 80 circulaciones diarias. Esto también ocurriría en el tramo Valencia-Alicante.&lt;br /&gt;
&lt;br /&gt;
== Conclusiones ==&lt;br /&gt;
Viendo los resultados de los cálculos realizados en base al crecimiento de las circulaciones en las líneas que nos ocupan, vemos que hay dos tramos en los que sería necesaria la ampliación de capacidad (preferentemente vía segregación de plataformas y anchos) para absorber la capacidad: Valencia-Alicante y Alicante-Murcia. Luego, tenemos otros dos tramos en los que, sin llegar a la saturación, convendría ir planificando un desdoble, separando los tráficos según anchos. Estamos hablando del Barcelona-Tarragona y el Castellón-Valencia.&lt;br /&gt;
&lt;br /&gt;
== Anejos ==&lt;br /&gt;
&lt;br /&gt;
Se pueden adjuntar archivos usando el enlace ''Subir archivo'' que aparece a la izquierda.&lt;br /&gt;
&lt;br /&gt;
[[Categoría:Sistemas de Información Geográfica Aplicados a la Ingeniería Civil]]&lt;br /&gt;
[[Categoría:SIGAIC_16/17]]&lt;/div&gt;</summary>
		<author><name>Javier Ruiz de Galarreta López</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=An%C3%A1lisis_sobre_la_viabilidad_de_la_ampliaci%C3%B3n_del_ancho_de_v%C3%ADa_internacional_en_el_Corredor_Mediterr%C3%A1neo_a_trav%C3%A9s_de_las_l%C3%ADneas_actuales&amp;diff=39983</id>
		<title>Análisis sobre la viabilidad de la ampliación del ancho de vía internacional en el Corredor Mediterráneo a través de las líneas actuales</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=An%C3%A1lisis_sobre_la_viabilidad_de_la_ampliaci%C3%B3n_del_ancho_de_v%C3%ADa_internacional_en_el_Corredor_Mediterr%C3%A1neo_a_trav%C3%A9s_de_las_l%C3%ADneas_actuales&amp;diff=39983"/>
				<updated>2017-05-26T09:18:08Z</updated>
		
		<summary type="html">&lt;p&gt;Javier Ruiz de Galarreta López: /* Introducción */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{ TrabajoSIG | Análisis sobre la viabilidad de la ampliación del ancho de vía internacional en el Corredor Mediterráneo a través de las líneas actuales | Joaquín Sánchez Molina (396) Leoni Koch (698) Javier Ruiz de Galarreta López (1566)| [[:Categoría:SIGAIC_16/17|Curso 16/17]] }}&lt;br /&gt;
&lt;br /&gt;
El Corredor Ferroviario Mediterráneo discurre actualmente desde la frontera francesa hasta Murcia, ampliándose en el futuro hasta Algeciras. Debido al ancho de vía español, diferente al ancho internacional instalado mayoritariamente en Europa, los trenes no pueden circular de manera directa entre Europa y España. En diciembre de 2012, el Ministerio de Fomento propuso un plan para extender ese ancho europeo hacia el sur, hasta Algeciras, aunque dos años después lo desestimó. &lt;br /&gt;
&lt;br /&gt;
Nuestro trabajo consistirá en cuantificar el aumento de demanda de esa extensión del ancho europeo entre la frontera y Algeciras, buscando cuellos de botella y puntos de congestión como consecuencia de los nuevos tráficos captados, para cuantificar la necesidad o no de ampliaciones de capacidad de la red. Hemos utilizado datos del Ministerio de Fomento y ADIF, plasmándolos más tarde en SIG, incluyendo a su vez la población y el PIB de cada provincia, para ver de manera más gráfica la distribución de tráficos en el área. El año horizonte para el que hemos calculado estos tráficos es el 2025, pero este modelo debe irse actualizando en función de la demanda real de transporte que exista en el Corredor. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Palabras clave: ancho europeo, Corredor Mediterráneo, tren de mercancías, exportaciones, importaciones.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Introducción ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Como es sabido por todo aquel interesado en el ámbito ferroviario, en España, el ancho de vía es diferente al ancho de vía de Francia, Alemania y el resto de países de Europa Central y Occidental, a excepción de Portugal e Irlanda. Esto ha constituido desde el siglo XIX una enorme oportunidad perdida para revertir la situación de aislamiento geográfico que siempre ha tenido España por su condición periférica en Europa. Con la llegada de la Alta Velocidad el 1992 con la línea Madrid-Sevilla, se decidió la utilización del ancho europeo o internacional para ir comenzando un progresivo cambio de ancho de la red. Desde esa fecha, todas las líneas de alta velocidad (LAV) se han construido en ancho internacional, generando problemas de “frontera ferroviaria” a la hora de la conexión con la red convencional, en ancho ibérico.&lt;br /&gt;
&lt;br /&gt;
Esto ha supuesto tradicionalmente una imposibilidad de la circulación de trenes entre España y Francia, o al menos, obliga a un trasbordo en la frontera, con las molestias para las personas y los sobrecostes y retrasos para las mercancías. Una vez la red de alta velocidad llegó  hasta la frontera francesa con la LAV Barcelona-Frontera Francesa, inaugurada en enero de 2013, el problema de esa “frontera ferroviaria” se ha mitigado, pero sólo hasta Barcelona. Siendo casi todas las LAV exclusivas para tráfico de viajeros (excepto la Barcelona-Frontera Francesa, que está diseñada para viajeros y mercancías), los exiguos tráficos de mercancías han quedado consagrados a las líneas convencionales, en ancho ibérico. Esto constituye un problema importante, ya que, aunque algunos trenes de pasajeros pueden cambiar de ancho automáticamente entre LAV y red convencional, los vagones de mercancías no disponen de esa tecnología por falta de interés económico.&lt;br /&gt;
&lt;br /&gt;
Es por esto que, en el año 2012, el Ministerio de Fomento lanza un ambicioso plan para la extensión del ancho internacional/europeo por el Corredor Mediterráneo, desde Barcelona hasta Murcia. Gran parte de esta adaptación se centra en convertir las vías de ancho convencional en vías de ancho mixto (convencional y europeo), mediante la inclusión de un tercer carril. Sin embargo, en 2014, decidió dar carpetazo al asunto, volviendo a una solución mixta sin continuidad del ancho internacional. El objetivo de este trabajo es analizar el plan de 2012 de Fomento, y ver si con un ancho UIC continuo hasta Algeciras por la fachada mediterránea, sería suficiente con la instalación de ancho UIC en la red actual, o si, por el contrario, sería necesario un desdoblamiento para absorber la demanda.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Mapa provincias.jpg|miniaturadeimagen|centro|Provincias por las que discurre el Corredor Mediterráneo y que son objeto de estudio en este trabajo]]&lt;br /&gt;
[[Archivo:Mapa provincias.jpg|50px|marco|Provincias por las que discurre el Corredor Mediterráneo y que son objeto de estudio en este trabajo]]&lt;br /&gt;
&lt;br /&gt;
== Metodología ==&lt;br /&gt;
Para la realización de este trabajo se ha empleado el mapa MTN200, obtenido del Centro de Descargas del Instituto Geográfico Nacional, que representa la totalidad de España. A continuación se ha digitalizado cada provincia, creando archivos vectoriales, agrupándolas más tarde para simplificar la representación en 4 zonas:&lt;br /&gt;
&lt;br /&gt;
*Zona I: Gerona, Barcelona y Tarragona. &lt;br /&gt;
*Zona II: Castellón y Valencia.&lt;br /&gt;
*Zona III: Alicante, Murcia y Almería. &lt;br /&gt;
*Zona IV: Granada, Málaga y Cádiz.&lt;br /&gt;
&lt;br /&gt;
Posteriormente, hemos digitalizado la línea ferroviaria por la que circularían los tráficos captados por la extensión del ancho internacional, asignándoles tres colores en función del grado de saturación (verde si no están saturados, amarillo si están próximos a la saturación y rojos si están saturados). Además, en cada zona hemos incluido varios atributos, como la población, el PIB y la proporción de las exportaciones respecto al PIB, para posteriormente clasificar las zonas y las provincias en función de estos factores mediante escalas cromáticas. &lt;br /&gt;
Se han tomado los datos de tráfico del Estudio del Corredor Ferroviario Mediterráneo, de INECO para el Ministerio de Fomento y ADIF de marzo de 2011. De este estudio se han extraído los tráficos de mercancías, tanto por carretera como por ferrocarril, que circulan entre Europa y las diferentes zonas en las que hemos dividido el Corredor Mediterráneo, pero obviando los tráficos internos del mismo, ya que nos interesan los tráficos con Europa, por ser la implantación del ancho europeo el motivo de nuestro trabajo. Sumado a todo esto, vamos a suponer que, con esta ampliación del ancho europeo, siendo el ferrocarril el modo de transporte terrestre más barato por unidad de carga transportada en las distancias largas, se podrían captar el 80% de los tráficos actuales por carretera que realizan este recorrido hacia Francia. &lt;br /&gt;
Por último, hemos introducido el número de trenes actual en cada red que compartirían, sumando los trenes resultantes de los tráficos captados. De esta manera, podremos saber de una manera bastante ajustada a la realidad si la ampliación del ancho europeo hacia el sur por el Corredor Mediterráneo, puede utilizar las vías actuales o habría que construir una nueva plataforma expresamente para ello.&lt;br /&gt;
&lt;br /&gt;
== Resultados ==&lt;br /&gt;
Como hemos explicado antes, nuestro trabajo se basa en saber si la red actual sería capaz de absorber el aumento de tráficos que supondría la extensión del ancho europeo por el Corredor Mediterráneo. Por ello, vamos a identificar los tramos más congestionados a día de hoy, para entonces, en ellos, valorar si el aumento de trenes de mercancías es soportable o no, medido en trenes/hora. Asumimos que los trenes de mercancías deberán circular en los horarios de menor demanda, por lo que no tendremos en cuenta las horas punta para estudiar nuestro caso. Tomando las circulaciones actuales de la web de Renfe, así como las de mercancías en otros sitios web, hemos calculado el número de circulaciones diarias que soporta cada recorrido, con extremo en cada capital de provincia (excepto Motril en el caso de Granada y Algeciras en lugar de Cádiz). En la siguiente tabla, hemos indicado las circulaciones que se estiman para el año 2025, que es el año horizonte en el calcula que la extensión del ancho europeo debe de estar funcionando en su totalidad.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align:center;&amp;quot;&lt;br /&gt;
! Tramo&lt;br /&gt;
! Circulaciones/día&lt;br /&gt;
|-&lt;br /&gt;
|Frontera-Gerona||30&lt;br /&gt;
|-&lt;br /&gt;
|Gerona-Barcelona||62&lt;br /&gt;
|-&lt;br /&gt;
|Barcelona-Tarragona||168&lt;br /&gt;
|-&lt;br /&gt;
|Tarragona-Castellón||80&lt;br /&gt;
|-&lt;br /&gt;
|Castellón-Valencia||199&lt;br /&gt;
|-&lt;br /&gt;
|Valencia-Alicante||63*&lt;br /&gt;
|-&lt;br /&gt;
|Alicante-Murcia||92*&lt;br /&gt;
|-&lt;br /&gt;
|Murcia-Almería||66**&lt;br /&gt;
|-&lt;br /&gt;
|Almería-Granada||75**&lt;br /&gt;
|-&lt;br /&gt;
|Granada-Málaga||52**&lt;br /&gt;
|-&lt;br /&gt;
|Málaga-Cádiz||89**&lt;br /&gt;
|-&lt;br /&gt;
|colspan=2|''Tabla 1. Circulaciones/día en cada tramo del Corredor Mediterráneo en el horizonte 2025.''&lt;br /&gt;
|-&lt;br /&gt;
|colspan=2|''Nota:  *Sin vía; ** Sin línea existente, previsión en base a líneas con características semejantes.&lt;br /&gt;
''&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Sabemos que la extensión hacia el sur del ancho europeo hará que se incrementen las circulaciones, y para saber si la red actual puede soportarlo, tenemos que ver cuál es el tramo más saturado considerando también esas nuevas circulaciones. Sin embargo el incremento en esas circulaciones variará en función de la situación del mismo: no serán igual en la frontera francesa que en el tramo Murcia-Alicante.&lt;br /&gt;
&lt;br /&gt;
Ahora calculemos los trenes adicionales fruto del aumento de tráficos por la extensión del ancho europeo contando todos los tráficos, es decir, a la altura de la frontera francesa. Tenemos el tráfico de mercancías en el Corredor Mediterráneo con origen/destino Europa. Se trata en total de 25,49 millones de toneladas, de las que 23,29 se mueven por carretera y 2,2 lo hacen por ferrocarril. Tomando un peso medio por tren de 1000 t, nos da que, a día de hoy, tenemos 2.200 trenes de mercancías al año entre España y Europa. Con una captación del 70%, tendríamos que el ferrocarril pasaría a mover 23,29*0,7 + 2,2 = 18,503 millones de toneladas, lo que se traduce en 18.503 trenes al año. Suponiendo además que se distribuyen de manera uniforme a lo largo del año, tenemos que suponen un total de 51 trenes diarios. Estos cálculos los hemos tomado con los valores reales de 2007, sin embargo, para extrapolarlos al año horizonte 2025, debemos multiplicar esos valores por un 1,4, que es un valor que aproxima el aumento de la demanda de transporte para ese año. Por ello, tenemos que considerar 20.043*1,4=25.905 trenes anuales, lo que nos da 71 trenes diarios.&lt;br /&gt;
&lt;br /&gt;
Vamos a repetir este cálculo para cada uno de los tramos, siempre tomando en cuenta que cada vez ese incremento en las mercancías captadas y por lo tanto en nuevos tráficos generados es menor. Los resultados son los siguientes:&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align:center;&amp;quot;&lt;br /&gt;
! Tramo&lt;br /&gt;
! Δ circulaciones/día&lt;br /&gt;
|-&lt;br /&gt;
|Frontera-Gerona||71&lt;br /&gt;
|-&lt;br /&gt;
|Gerona-Barcelona||68&lt;br /&gt;
|-&lt;br /&gt;
|Barcelona-Tarragona||46&lt;br /&gt;
|-&lt;br /&gt;
|Tarragona-Castellón||37&lt;br /&gt;
|-&lt;br /&gt;
|Castellón-Valencia||30&lt;br /&gt;
|-&lt;br /&gt;
|Valencia-Alicante||19&lt;br /&gt;
|-&lt;br /&gt;
|Alicante-Murcia||14&lt;br /&gt;
|-&lt;br /&gt;
|Murcia-Almería||9&lt;br /&gt;
|-&lt;br /&gt;
|Almería-Granada||6&lt;br /&gt;
|-&lt;br /&gt;
|Granada-Málaga||3&lt;br /&gt;
|-&lt;br /&gt;
|Málaga-Cádiz||2&lt;br /&gt;
|-&lt;br /&gt;
|colspan=2|''Tabla 2.  Incremento de las circulaciones en cada tramo, fruto de la captación de nuevos tráficos.''&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
	&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Sumando estos valores a los anteriores, tenemos que las circulaciones/día en total son:&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align:center;&amp;quot; &lt;br /&gt;
! Tramo&lt;br /&gt;
! Circulaciones/día totales&lt;br /&gt;
|-&lt;br /&gt;
|Frontera-Gerona|| bgcolor=&amp;quot;LawnGreen&amp;quot; colspan=1 | 101&lt;br /&gt;
|-&lt;br /&gt;
|Gerona-Barcelona||bgcolor=&amp;quot;LawnGreen&amp;quot; colspan=1 |130&lt;br /&gt;
|-&lt;br /&gt;
|Barcelona-Tarragona||bgcolor=&amp;quot;Yellow&amp;quot; colspan=1 |214&lt;br /&gt;
|-&lt;br /&gt;
|Tarragona-Castellón||bgcolor=&amp;quot;LawnGreen&amp;quot; colspan=1 |117&lt;br /&gt;
|-&lt;br /&gt;
|Castellón-Valencia||bgcolor=&amp;quot;Yellow&amp;quot; colspan=1 |229&lt;br /&gt;
|-&lt;br /&gt;
|Valencia-Alicante||bgcolor=&amp;quot;Tomato&amp;quot; colspan=1 |82*&lt;br /&gt;
|-&lt;br /&gt;
|Alicante-Murcia||bgcolor=&amp;quot;Tomato&amp;quot; colspan=1 |106*&lt;br /&gt;
|-&lt;br /&gt;
|Murcia-Almería||bgcolor=&amp;quot;LawnGreen&amp;quot; colspan=1 |75**&lt;br /&gt;
|-&lt;br /&gt;
|Almería-Granada||bgcolor=&amp;quot;LawnGreen&amp;quot; colspan=1 |81**&lt;br /&gt;
|-&lt;br /&gt;
|Granada-Málaga||bgcolor=&amp;quot;LawnGreen&amp;quot; colspan=1 |55**&lt;br /&gt;
|-&lt;br /&gt;
|Málaga-Cádiz||bgcolor=&amp;quot;LawnGreen&amp;quot; colspan=1 |91**&lt;br /&gt;
|-&lt;br /&gt;
|colspan=2|''Tabla 3. Resultados de circulaciones totales.''&lt;br /&gt;
|-&lt;br /&gt;
|colspan=2|''Nota 1:  *Sin vía; ** Sin línea existente, previsión en base a líneas con características semejantes.''&lt;br /&gt;
|-&lt;br /&gt;
|colspan=2|''Nota 2:  En verde, tramos no saturados. En amarillo, tramos cercanos a la saturación. En rojo, tramos saturados.''&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Tomando valores propios de explotación ferroviaria, sabemos que las líneas de vía doble empiezan a tener problemas de capacidad a partir de las 200 circulaciones diarias, llegando a la saturación con valores de 280-300 circulaciones/día, por lo que vemos que en los tramos Barcelona-Tarragona y Castellón-Valencia tendríamos falta de capacidad, sobre todo en horas punta, pero sin llegar a la saturación. En el caso del tramo Alicante-Murcia, las 106 circulaciones/día sí que colapsarían nuestra línea, al ser de vía única, cuyo límite de saturación está entre las 70 y 80 circulaciones diarias. Esto también ocurriría en el tramo Valencia-Alicante.&lt;br /&gt;
&lt;br /&gt;
== Conclusiones ==&lt;br /&gt;
Viendo los resultados de los cálculos realizados en base al crecimiento de las circulaciones en las líneas que nos ocupan, vemos que hay dos tramos en los que sería necesaria la ampliación de capacidad (preferentemente vía segregación de plataformas y anchos) para absorber la capacidad: Valencia-Alicante y Alicante-Murcia. Luego, tenemos otros dos tramos en los que, sin llegar a la saturación, convendría ir planificando un desdoble, separando los tráficos según anchos. Estamos hablando del Barcelona-Tarragona y el Castellón-Valencia.&lt;br /&gt;
&lt;br /&gt;
== Anejos ==&lt;br /&gt;
&lt;br /&gt;
Se pueden adjuntar archivos usando el enlace ''Subir archivo'' que aparece a la izquierda.&lt;br /&gt;
&lt;br /&gt;
[[Categoría:Sistemas de Información Geográfica Aplicados a la Ingeniería Civil]]&lt;br /&gt;
[[Categoría:SIGAIC_16/17]]&lt;/div&gt;</summary>
		<author><name>Javier Ruiz de Galarreta López</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=An%C3%A1lisis_sobre_la_viabilidad_de_la_ampliaci%C3%B3n_del_ancho_de_v%C3%ADa_internacional_en_el_Corredor_Mediterr%C3%A1neo_a_trav%C3%A9s_de_las_l%C3%ADneas_actuales&amp;diff=39982</id>
		<title>Análisis sobre la viabilidad de la ampliación del ancho de vía internacional en el Corredor Mediterráneo a través de las líneas actuales</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=An%C3%A1lisis_sobre_la_viabilidad_de_la_ampliaci%C3%B3n_del_ancho_de_v%C3%ADa_internacional_en_el_Corredor_Mediterr%C3%A1neo_a_trav%C3%A9s_de_las_l%C3%ADneas_actuales&amp;diff=39982"/>
				<updated>2017-05-26T09:14:57Z</updated>
		
		<summary type="html">&lt;p&gt;Javier Ruiz de Galarreta López: /* Introducción */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{ TrabajoSIG | Análisis sobre la viabilidad de la ampliación del ancho de vía internacional en el Corredor Mediterráneo a través de las líneas actuales | Joaquín Sánchez Molina (396) Leoni Koch (698) Javier Ruiz de Galarreta López (1566)| [[:Categoría:SIGAIC_16/17|Curso 16/17]] }}&lt;br /&gt;
&lt;br /&gt;
El Corredor Ferroviario Mediterráneo discurre actualmente desde la frontera francesa hasta Murcia, ampliándose en el futuro hasta Algeciras. Debido al ancho de vía español, diferente al ancho internacional instalado mayoritariamente en Europa, los trenes no pueden circular de manera directa entre Europa y España. En diciembre de 2012, el Ministerio de Fomento propuso un plan para extender ese ancho europeo hacia el sur, hasta Algeciras, aunque dos años después lo desestimó. &lt;br /&gt;
&lt;br /&gt;
Nuestro trabajo consistirá en cuantificar el aumento de demanda de esa extensión del ancho europeo entre la frontera y Algeciras, buscando cuellos de botella y puntos de congestión como consecuencia de los nuevos tráficos captados, para cuantificar la necesidad o no de ampliaciones de capacidad de la red. Hemos utilizado datos del Ministerio de Fomento y ADIF, plasmándolos más tarde en SIG, incluyendo a su vez la población y el PIB de cada provincia, para ver de manera más gráfica la distribución de tráficos en el área. El año horizonte para el que hemos calculado estos tráficos es el 2025, pero este modelo debe irse actualizando en función de la demanda real de transporte que exista en el Corredor. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Palabras clave: ancho europeo, Corredor Mediterráneo, tren de mercancías, exportaciones, importaciones.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Introducción ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Como es sabido por todo aquel interesado en el ámbito ferroviario, en España, el ancho de vía es diferente al ancho de vía de Francia, Alemania y el resto de países de Europa Central y Occidental, a excepción de Portugal e Irlanda. Esto ha constituido desde el siglo XIX una enorme oportunidad perdida para revertir la situación de aislamiento geográfico que siempre ha tenido España por su condición periférica en Europa. Con la llegada de la Alta Velocidad el 1992 con la línea Madrid-Sevilla, se decidió la utilización del ancho europeo o internacional para ir comenzando un progresivo cambio de ancho de la red. Desde esa fecha, todas las líneas de alta velocidad (LAV) se han construido en ancho internacional, generando problemas de “frontera ferroviaria” a la hora de la conexión con la red convencional, en ancho ibérico.&lt;br /&gt;
&lt;br /&gt;
Esto ha supuesto tradicionalmente una imposibilidad de la circulación de trenes entre España y Francia, o al menos, obliga a un trasbordo en la frontera, con las molestias para las personas y los sobrecostes y retrasos para las mercancías. Una vez la red de alta velocidad llegó  hasta la frontera francesa con la LAV Barcelona-Frontera Francesa, inaugurada en enero de 2013, el problema de esa “frontera ferroviaria” se ha mitigado, pero sólo hasta Barcelona. Siendo casi todas las LAV exclusivas para tráfico de viajeros (excepto la Barcelona-Frontera Francesa, que está diseñada para viajeros y mercancías), los exiguos tráficos de mercancías han quedado consagrados a las líneas convencionales, en ancho ibérico. Esto constituye un problema importante, ya que, aunque algunos trenes de pasajeros pueden cambiar de ancho automáticamente entre LAV y red convencional, los vagones de mercancías no disponen de esa tecnología por falta de interés económico.&lt;br /&gt;
&lt;br /&gt;
Es por esto que, en el año 2012, el Ministerio de Fomento lanza un ambicioso plan para la extensión del ancho internacional/europeo por el Corredor Mediterráneo, desde Barcelona hasta Murcia. Gran parte de esta adaptación se centra en convertir las vías de ancho convencional en vías de ancho mixto (convencional y europeo), mediante la inclusión de un tercer carril. Sin embargo, en 2014, decidió dar carpetazo al asunto, volviendo a una solución mixta sin continuidad del ancho internacional. El objetivo de este trabajo es analizar el plan de 2012 de Fomento, y ver si con un ancho UIC continuo hasta Algeciras por la fachada mediterránea, sería suficiente con la instalación de ancho UIC en la red actual, o si, por el contrario, sería necesario un desdoblamiento para absorber la demanda.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Mapa_provincias|miniaturadeimagen|centro|Provincias por las que discurre el Corredor Mediterráneo y que son objeto de estudio en este trabajo]]&lt;br /&gt;
&lt;br /&gt;
== Metodología ==&lt;br /&gt;
Para la realización de este trabajo se ha empleado el mapa MTN200, obtenido del Centro de Descargas del Instituto Geográfico Nacional, que representa la totalidad de España. A continuación se ha digitalizado cada provincia, creando archivos vectoriales, agrupándolas más tarde para simplificar la representación en 4 zonas:&lt;br /&gt;
&lt;br /&gt;
*Zona I: Gerona, Barcelona y Tarragona. &lt;br /&gt;
*Zona II: Castellón y Valencia.&lt;br /&gt;
*Zona III: Alicante, Murcia y Almería. &lt;br /&gt;
*Zona IV: Granada, Málaga y Cádiz.&lt;br /&gt;
&lt;br /&gt;
Posteriormente, hemos digitalizado la línea ferroviaria por la que circularían los tráficos captados por la extensión del ancho internacional, asignándoles tres colores en función del grado de saturación (verde si no están saturados, amarillo si están próximos a la saturación y rojos si están saturados). Además, en cada zona hemos incluido varios atributos, como la población, el PIB y la proporción de las exportaciones respecto al PIB, para posteriormente clasificar las zonas y las provincias en función de estos factores mediante escalas cromáticas. &lt;br /&gt;
Se han tomado los datos de tráfico del Estudio del Corredor Ferroviario Mediterráneo, de INECO para el Ministerio de Fomento y ADIF de marzo de 2011. De este estudio se han extraído los tráficos de mercancías, tanto por carretera como por ferrocarril, que circulan entre Europa y las diferentes zonas en las que hemos dividido el Corredor Mediterráneo, pero obviando los tráficos internos del mismo, ya que nos interesan los tráficos con Europa, por ser la implantación del ancho europeo el motivo de nuestro trabajo. Sumado a todo esto, vamos a suponer que, con esta ampliación del ancho europeo, siendo el ferrocarril el modo de transporte terrestre más barato por unidad de carga transportada en las distancias largas, se podrían captar el 80% de los tráficos actuales por carretera que realizan este recorrido hacia Francia. &lt;br /&gt;
Por último, hemos introducido el número de trenes actual en cada red que compartirían, sumando los trenes resultantes de los tráficos captados. De esta manera, podremos saber de una manera bastante ajustada a la realidad si la ampliación del ancho europeo hacia el sur por el Corredor Mediterráneo, puede utilizar las vías actuales o habría que construir una nueva plataforma expresamente para ello.&lt;br /&gt;
&lt;br /&gt;
== Resultados ==&lt;br /&gt;
Como hemos explicado antes, nuestro trabajo se basa en saber si la red actual sería capaz de absorber el aumento de tráficos que supondría la extensión del ancho europeo por el Corredor Mediterráneo. Por ello, vamos a identificar los tramos más congestionados a día de hoy, para entonces, en ellos, valorar si el aumento de trenes de mercancías es soportable o no, medido en trenes/hora. Asumimos que los trenes de mercancías deberán circular en los horarios de menor demanda, por lo que no tendremos en cuenta las horas punta para estudiar nuestro caso. Tomando las circulaciones actuales de la web de Renfe, así como las de mercancías en otros sitios web, hemos calculado el número de circulaciones diarias que soporta cada recorrido, con extremo en cada capital de provincia (excepto Motril en el caso de Granada y Algeciras en lugar de Cádiz). En la siguiente tabla, hemos indicado las circulaciones que se estiman para el año 2025, que es el año horizonte en el calcula que la extensión del ancho europeo debe de estar funcionando en su totalidad.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align:center;&amp;quot;&lt;br /&gt;
! Tramo&lt;br /&gt;
! Circulaciones/día&lt;br /&gt;
|-&lt;br /&gt;
|Frontera-Gerona||30&lt;br /&gt;
|-&lt;br /&gt;
|Gerona-Barcelona||62&lt;br /&gt;
|-&lt;br /&gt;
|Barcelona-Tarragona||168&lt;br /&gt;
|-&lt;br /&gt;
|Tarragona-Castellón||80&lt;br /&gt;
|-&lt;br /&gt;
|Castellón-Valencia||199&lt;br /&gt;
|-&lt;br /&gt;
|Valencia-Alicante||63*&lt;br /&gt;
|-&lt;br /&gt;
|Alicante-Murcia||92*&lt;br /&gt;
|-&lt;br /&gt;
|Murcia-Almería||66**&lt;br /&gt;
|-&lt;br /&gt;
|Almería-Granada||75**&lt;br /&gt;
|-&lt;br /&gt;
|Granada-Málaga||52**&lt;br /&gt;
|-&lt;br /&gt;
|Málaga-Cádiz||89**&lt;br /&gt;
|-&lt;br /&gt;
|colspan=2|''Tabla 1. Circulaciones/día en cada tramo del Corredor Mediterráneo en el horizonte 2025.''&lt;br /&gt;
|-&lt;br /&gt;
|colspan=2|''Nota:  *Sin vía; ** Sin línea existente, previsión en base a líneas con características semejantes.&lt;br /&gt;
''&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Sabemos que la extensión hacia el sur del ancho europeo hará que se incrementen las circulaciones, y para saber si la red actual puede soportarlo, tenemos que ver cuál es el tramo más saturado considerando también esas nuevas circulaciones. Sin embargo el incremento en esas circulaciones variará en función de la situación del mismo: no serán igual en la frontera francesa que en el tramo Murcia-Alicante.&lt;br /&gt;
&lt;br /&gt;
Ahora calculemos los trenes adicionales fruto del aumento de tráficos por la extensión del ancho europeo contando todos los tráficos, es decir, a la altura de la frontera francesa. Tenemos el tráfico de mercancías en el Corredor Mediterráneo con origen/destino Europa. Se trata en total de 25,49 millones de toneladas, de las que 23,29 se mueven por carretera y 2,2 lo hacen por ferrocarril. Tomando un peso medio por tren de 1000 t, nos da que, a día de hoy, tenemos 2.200 trenes de mercancías al año entre España y Europa. Con una captación del 70%, tendríamos que el ferrocarril pasaría a mover 23,29*0,7 + 2,2 = 18,503 millones de toneladas, lo que se traduce en 18.503 trenes al año. Suponiendo además que se distribuyen de manera uniforme a lo largo del año, tenemos que suponen un total de 51 trenes diarios. Estos cálculos los hemos tomado con los valores reales de 2007, sin embargo, para extrapolarlos al año horizonte 2025, debemos multiplicar esos valores por un 1,4, que es un valor que aproxima el aumento de la demanda de transporte para ese año. Por ello, tenemos que considerar 20.043*1,4=25.905 trenes anuales, lo que nos da 71 trenes diarios.&lt;br /&gt;
&lt;br /&gt;
Vamos a repetir este cálculo para cada uno de los tramos, siempre tomando en cuenta que cada vez ese incremento en las mercancías captadas y por lo tanto en nuevos tráficos generados es menor. Los resultados son los siguientes:&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align:center;&amp;quot;&lt;br /&gt;
! Tramo&lt;br /&gt;
! Δ circulaciones/día&lt;br /&gt;
|-&lt;br /&gt;
|Frontera-Gerona||71&lt;br /&gt;
|-&lt;br /&gt;
|Gerona-Barcelona||68&lt;br /&gt;
|-&lt;br /&gt;
|Barcelona-Tarragona||46&lt;br /&gt;
|-&lt;br /&gt;
|Tarragona-Castellón||37&lt;br /&gt;
|-&lt;br /&gt;
|Castellón-Valencia||30&lt;br /&gt;
|-&lt;br /&gt;
|Valencia-Alicante||19&lt;br /&gt;
|-&lt;br /&gt;
|Alicante-Murcia||14&lt;br /&gt;
|-&lt;br /&gt;
|Murcia-Almería||9&lt;br /&gt;
|-&lt;br /&gt;
|Almería-Granada||6&lt;br /&gt;
|-&lt;br /&gt;
|Granada-Málaga||3&lt;br /&gt;
|-&lt;br /&gt;
|Málaga-Cádiz||2&lt;br /&gt;
|-&lt;br /&gt;
|colspan=2|''Tabla 2.  Incremento de las circulaciones en cada tramo, fruto de la captación de nuevos tráficos.''&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
	&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Sumando estos valores a los anteriores, tenemos que las circulaciones/día en total son:&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align:center;&amp;quot; &lt;br /&gt;
! Tramo&lt;br /&gt;
! Circulaciones/día totales&lt;br /&gt;
|-&lt;br /&gt;
|Frontera-Gerona|| bgcolor=&amp;quot;LawnGreen&amp;quot; colspan=1 | 101&lt;br /&gt;
|-&lt;br /&gt;
|Gerona-Barcelona||bgcolor=&amp;quot;LawnGreen&amp;quot; colspan=1 |130&lt;br /&gt;
|-&lt;br /&gt;
|Barcelona-Tarragona||bgcolor=&amp;quot;Yellow&amp;quot; colspan=1 |214&lt;br /&gt;
|-&lt;br /&gt;
|Tarragona-Castellón||bgcolor=&amp;quot;LawnGreen&amp;quot; colspan=1 |117&lt;br /&gt;
|-&lt;br /&gt;
|Castellón-Valencia||bgcolor=&amp;quot;Yellow&amp;quot; colspan=1 |229&lt;br /&gt;
|-&lt;br /&gt;
|Valencia-Alicante||bgcolor=&amp;quot;Tomato&amp;quot; colspan=1 |82*&lt;br /&gt;
|-&lt;br /&gt;
|Alicante-Murcia||bgcolor=&amp;quot;Tomato&amp;quot; colspan=1 |106*&lt;br /&gt;
|-&lt;br /&gt;
|Murcia-Almería||bgcolor=&amp;quot;LawnGreen&amp;quot; colspan=1 |75**&lt;br /&gt;
|-&lt;br /&gt;
|Almería-Granada||bgcolor=&amp;quot;LawnGreen&amp;quot; colspan=1 |81**&lt;br /&gt;
|-&lt;br /&gt;
|Granada-Málaga||bgcolor=&amp;quot;LawnGreen&amp;quot; colspan=1 |55**&lt;br /&gt;
|-&lt;br /&gt;
|Málaga-Cádiz||bgcolor=&amp;quot;LawnGreen&amp;quot; colspan=1 |91**&lt;br /&gt;
|-&lt;br /&gt;
|colspan=2|''Tabla 3. Resultados de circulaciones totales.''&lt;br /&gt;
|-&lt;br /&gt;
|colspan=2|''Nota 1:  *Sin vía; ** Sin línea existente, previsión en base a líneas con características semejantes.''&lt;br /&gt;
|-&lt;br /&gt;
|colspan=2|''Nota 2:  En verde, tramos no saturados. En amarillo, tramos cercanos a la saturación. En rojo, tramos saturados.''&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Tomando valores propios de explotación ferroviaria, sabemos que las líneas de vía doble empiezan a tener problemas de capacidad a partir de las 200 circulaciones diarias, llegando a la saturación con valores de 280-300 circulaciones/día, por lo que vemos que en los tramos Barcelona-Tarragona y Castellón-Valencia tendríamos falta de capacidad, sobre todo en horas punta, pero sin llegar a la saturación. En el caso del tramo Alicante-Murcia, las 106 circulaciones/día sí que colapsarían nuestra línea, al ser de vía única, cuyo límite de saturación está entre las 70 y 80 circulaciones diarias. Esto también ocurriría en el tramo Valencia-Alicante.&lt;br /&gt;
&lt;br /&gt;
== Conclusiones ==&lt;br /&gt;
Viendo los resultados de los cálculos realizados en base al crecimiento de las circulaciones en las líneas que nos ocupan, vemos que hay dos tramos en los que sería necesaria la ampliación de capacidad (preferentemente vía segregación de plataformas y anchos) para absorber la capacidad: Valencia-Alicante y Alicante-Murcia. Luego, tenemos otros dos tramos en los que, sin llegar a la saturación, convendría ir planificando un desdoble, separando los tráficos según anchos. Estamos hablando del Barcelona-Tarragona y el Castellón-Valencia.&lt;br /&gt;
&lt;br /&gt;
== Anejos ==&lt;br /&gt;
&lt;br /&gt;
Se pueden adjuntar archivos usando el enlace ''Subir archivo'' que aparece a la izquierda.&lt;br /&gt;
&lt;br /&gt;
[[Categoría:Sistemas de Información Geográfica Aplicados a la Ingeniería Civil]]&lt;br /&gt;
[[Categoría:SIGAIC_16/17]]&lt;/div&gt;</summary>
		<author><name>Javier Ruiz de Galarreta López</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=An%C3%A1lisis_sobre_la_viabilidad_de_la_ampliaci%C3%B3n_del_ancho_de_v%C3%ADa_internacional_en_el_Corredor_Mediterr%C3%A1neo_a_trav%C3%A9s_de_las_l%C3%ADneas_actuales&amp;diff=39981</id>
		<title>Análisis sobre la viabilidad de la ampliación del ancho de vía internacional en el Corredor Mediterráneo a través de las líneas actuales</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=An%C3%A1lisis_sobre_la_viabilidad_de_la_ampliaci%C3%B3n_del_ancho_de_v%C3%ADa_internacional_en_el_Corredor_Mediterr%C3%A1neo_a_trav%C3%A9s_de_las_l%C3%ADneas_actuales&amp;diff=39981"/>
				<updated>2017-05-26T09:14:40Z</updated>
		
		<summary type="html">&lt;p&gt;Javier Ruiz de Galarreta López: /* Introducción */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{ TrabajoSIG | Análisis sobre la viabilidad de la ampliación del ancho de vía internacional en el Corredor Mediterráneo a través de las líneas actuales | Joaquín Sánchez Molina (396) Leoni Koch (698) Javier Ruiz de Galarreta López (1566)| [[:Categoría:SIGAIC_16/17|Curso 16/17]] }}&lt;br /&gt;
&lt;br /&gt;
El Corredor Ferroviario Mediterráneo discurre actualmente desde la frontera francesa hasta Murcia, ampliándose en el futuro hasta Algeciras. Debido al ancho de vía español, diferente al ancho internacional instalado mayoritariamente en Europa, los trenes no pueden circular de manera directa entre Europa y España. En diciembre de 2012, el Ministerio de Fomento propuso un plan para extender ese ancho europeo hacia el sur, hasta Algeciras, aunque dos años después lo desestimó. &lt;br /&gt;
&lt;br /&gt;
Nuestro trabajo consistirá en cuantificar el aumento de demanda de esa extensión del ancho europeo entre la frontera y Algeciras, buscando cuellos de botella y puntos de congestión como consecuencia de los nuevos tráficos captados, para cuantificar la necesidad o no de ampliaciones de capacidad de la red. Hemos utilizado datos del Ministerio de Fomento y ADIF, plasmándolos más tarde en SIG, incluyendo a su vez la población y el PIB de cada provincia, para ver de manera más gráfica la distribución de tráficos en el área. El año horizonte para el que hemos calculado estos tráficos es el 2025, pero este modelo debe irse actualizando en función de la demanda real de transporte que exista en el Corredor. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Palabras clave: ancho europeo, Corredor Mediterráneo, tren de mercancías, exportaciones, importaciones.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Introducción ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Como es sabido por todo aquel interesado en el ámbito ferroviario, en España, el ancho de vía es diferente al ancho de vía de Francia, Alemania y el resto de países de Europa Central y Occidental, a excepción de Portugal e Irlanda. Esto ha constituido desde el siglo XIX una enorme oportunidad perdida para revertir la situación de aislamiento geográfico que siempre ha tenido España por su condición periférica en Europa. Con la llegada de la Alta Velocidad el 1992 con la línea Madrid-Sevilla, se decidió la utilización del ancho europeo o internacional para ir comenzando un progresivo cambio de ancho de la red. Desde esa fecha, todas las líneas de alta velocidad (LAV) se han construido en ancho internacional, generando problemas de “frontera ferroviaria” a la hora de la conexión con la red convencional, en ancho ibérico.&lt;br /&gt;
&lt;br /&gt;
Esto ha supuesto tradicionalmente una imposibilidad de la circulación de trenes entre España y Francia, o al menos, obliga a un trasbordo en la frontera, con las molestias para las personas y los sobrecostes y retrasos para las mercancías. Una vez la red de alta velocidad llegó  hasta la frontera francesa con la LAV Barcelona-Frontera Francesa, inaugurada en enero de 2013, el problema de esa “frontera ferroviaria” se ha mitigado, pero sólo hasta Barcelona. Siendo casi todas las LAV exclusivas para tráfico de viajeros (excepto la Barcelona-Frontera Francesa, que está diseñada para viajeros y mercancías), los exiguos tráficos de mercancías han quedado consagrados a las líneas convencionales, en ancho ibérico. Esto constituye un problema importante, ya que, aunque algunos trenes de pasajeros pueden cambiar de ancho automáticamente entre LAV y red convencional, los vagones de mercancías no disponen de esa tecnología por falta de interés económico.&lt;br /&gt;
&lt;br /&gt;
Es por esto que, en el año 2012, el Ministerio de Fomento lanza un ambicioso plan para la extensión del ancho internacional/europeo por el Corredor Mediterráneo, desde Barcelona hasta Murcia. Gran parte de esta adaptación se centra en convertir las vías de ancho convencional en vías de ancho mixto (convencional y europeo), mediante la inclusión de un tercer carril. Sin embargo, en 2014, decidió dar carpetazo al asunto, volviendo a una solución mixta sin continuidad del ancho internacional. El objetivo de este trabajo es analizar el plan de 2012 de Fomento, y ver si con un ancho UIC continuo hasta Algeciras por la fachada mediterránea, sería suficiente con la instalación de ancho UIC en la red actual, o si, por el contrario, sería necesario un desdoblamiento para absorber la demanda.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Mapa provincias|miniaturadeimagen|centro|Provincias por las que discurre el Corredor Mediterráneo y que son objeto de estudio en este trabajo]]&lt;br /&gt;
&lt;br /&gt;
== Metodología ==&lt;br /&gt;
Para la realización de este trabajo se ha empleado el mapa MTN200, obtenido del Centro de Descargas del Instituto Geográfico Nacional, que representa la totalidad de España. A continuación se ha digitalizado cada provincia, creando archivos vectoriales, agrupándolas más tarde para simplificar la representación en 4 zonas:&lt;br /&gt;
&lt;br /&gt;
*Zona I: Gerona, Barcelona y Tarragona. &lt;br /&gt;
*Zona II: Castellón y Valencia.&lt;br /&gt;
*Zona III: Alicante, Murcia y Almería. &lt;br /&gt;
*Zona IV: Granada, Málaga y Cádiz.&lt;br /&gt;
&lt;br /&gt;
Posteriormente, hemos digitalizado la línea ferroviaria por la que circularían los tráficos captados por la extensión del ancho internacional, asignándoles tres colores en función del grado de saturación (verde si no están saturados, amarillo si están próximos a la saturación y rojos si están saturados). Además, en cada zona hemos incluido varios atributos, como la población, el PIB y la proporción de las exportaciones respecto al PIB, para posteriormente clasificar las zonas y las provincias en función de estos factores mediante escalas cromáticas. &lt;br /&gt;
Se han tomado los datos de tráfico del Estudio del Corredor Ferroviario Mediterráneo, de INECO para el Ministerio de Fomento y ADIF de marzo de 2011. De este estudio se han extraído los tráficos de mercancías, tanto por carretera como por ferrocarril, que circulan entre Europa y las diferentes zonas en las que hemos dividido el Corredor Mediterráneo, pero obviando los tráficos internos del mismo, ya que nos interesan los tráficos con Europa, por ser la implantación del ancho europeo el motivo de nuestro trabajo. Sumado a todo esto, vamos a suponer que, con esta ampliación del ancho europeo, siendo el ferrocarril el modo de transporte terrestre más barato por unidad de carga transportada en las distancias largas, se podrían captar el 80% de los tráficos actuales por carretera que realizan este recorrido hacia Francia. &lt;br /&gt;
Por último, hemos introducido el número de trenes actual en cada red que compartirían, sumando los trenes resultantes de los tráficos captados. De esta manera, podremos saber de una manera bastante ajustada a la realidad si la ampliación del ancho europeo hacia el sur por el Corredor Mediterráneo, puede utilizar las vías actuales o habría que construir una nueva plataforma expresamente para ello.&lt;br /&gt;
&lt;br /&gt;
== Resultados ==&lt;br /&gt;
Como hemos explicado antes, nuestro trabajo se basa en saber si la red actual sería capaz de absorber el aumento de tráficos que supondría la extensión del ancho europeo por el Corredor Mediterráneo. Por ello, vamos a identificar los tramos más congestionados a día de hoy, para entonces, en ellos, valorar si el aumento de trenes de mercancías es soportable o no, medido en trenes/hora. Asumimos que los trenes de mercancías deberán circular en los horarios de menor demanda, por lo que no tendremos en cuenta las horas punta para estudiar nuestro caso. Tomando las circulaciones actuales de la web de Renfe, así como las de mercancías en otros sitios web, hemos calculado el número de circulaciones diarias que soporta cada recorrido, con extremo en cada capital de provincia (excepto Motril en el caso de Granada y Algeciras en lugar de Cádiz). En la siguiente tabla, hemos indicado las circulaciones que se estiman para el año 2025, que es el año horizonte en el calcula que la extensión del ancho europeo debe de estar funcionando en su totalidad.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align:center;&amp;quot;&lt;br /&gt;
! Tramo&lt;br /&gt;
! Circulaciones/día&lt;br /&gt;
|-&lt;br /&gt;
|Frontera-Gerona||30&lt;br /&gt;
|-&lt;br /&gt;
|Gerona-Barcelona||62&lt;br /&gt;
|-&lt;br /&gt;
|Barcelona-Tarragona||168&lt;br /&gt;
|-&lt;br /&gt;
|Tarragona-Castellón||80&lt;br /&gt;
|-&lt;br /&gt;
|Castellón-Valencia||199&lt;br /&gt;
|-&lt;br /&gt;
|Valencia-Alicante||63*&lt;br /&gt;
|-&lt;br /&gt;
|Alicante-Murcia||92*&lt;br /&gt;
|-&lt;br /&gt;
|Murcia-Almería||66**&lt;br /&gt;
|-&lt;br /&gt;
|Almería-Granada||75**&lt;br /&gt;
|-&lt;br /&gt;
|Granada-Málaga||52**&lt;br /&gt;
|-&lt;br /&gt;
|Málaga-Cádiz||89**&lt;br /&gt;
|-&lt;br /&gt;
|colspan=2|''Tabla 1. Circulaciones/día en cada tramo del Corredor Mediterráneo en el horizonte 2025.''&lt;br /&gt;
|-&lt;br /&gt;
|colspan=2|''Nota:  *Sin vía; ** Sin línea existente, previsión en base a líneas con características semejantes.&lt;br /&gt;
''&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Sabemos que la extensión hacia el sur del ancho europeo hará que se incrementen las circulaciones, y para saber si la red actual puede soportarlo, tenemos que ver cuál es el tramo más saturado considerando también esas nuevas circulaciones. Sin embargo el incremento en esas circulaciones variará en función de la situación del mismo: no serán igual en la frontera francesa que en el tramo Murcia-Alicante.&lt;br /&gt;
&lt;br /&gt;
Ahora calculemos los trenes adicionales fruto del aumento de tráficos por la extensión del ancho europeo contando todos los tráficos, es decir, a la altura de la frontera francesa. Tenemos el tráfico de mercancías en el Corredor Mediterráneo con origen/destino Europa. Se trata en total de 25,49 millones de toneladas, de las que 23,29 se mueven por carretera y 2,2 lo hacen por ferrocarril. Tomando un peso medio por tren de 1000 t, nos da que, a día de hoy, tenemos 2.200 trenes de mercancías al año entre España y Europa. Con una captación del 70%, tendríamos que el ferrocarril pasaría a mover 23,29*0,7 + 2,2 = 18,503 millones de toneladas, lo que se traduce en 18.503 trenes al año. Suponiendo además que se distribuyen de manera uniforme a lo largo del año, tenemos que suponen un total de 51 trenes diarios. Estos cálculos los hemos tomado con los valores reales de 2007, sin embargo, para extrapolarlos al año horizonte 2025, debemos multiplicar esos valores por un 1,4, que es un valor que aproxima el aumento de la demanda de transporte para ese año. Por ello, tenemos que considerar 20.043*1,4=25.905 trenes anuales, lo que nos da 71 trenes diarios.&lt;br /&gt;
&lt;br /&gt;
Vamos a repetir este cálculo para cada uno de los tramos, siempre tomando en cuenta que cada vez ese incremento en las mercancías captadas y por lo tanto en nuevos tráficos generados es menor. Los resultados son los siguientes:&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align:center;&amp;quot;&lt;br /&gt;
! Tramo&lt;br /&gt;
! Δ circulaciones/día&lt;br /&gt;
|-&lt;br /&gt;
|Frontera-Gerona||71&lt;br /&gt;
|-&lt;br /&gt;
|Gerona-Barcelona||68&lt;br /&gt;
|-&lt;br /&gt;
|Barcelona-Tarragona||46&lt;br /&gt;
|-&lt;br /&gt;
|Tarragona-Castellón||37&lt;br /&gt;
|-&lt;br /&gt;
|Castellón-Valencia||30&lt;br /&gt;
|-&lt;br /&gt;
|Valencia-Alicante||19&lt;br /&gt;
|-&lt;br /&gt;
|Alicante-Murcia||14&lt;br /&gt;
|-&lt;br /&gt;
|Murcia-Almería||9&lt;br /&gt;
|-&lt;br /&gt;
|Almería-Granada||6&lt;br /&gt;
|-&lt;br /&gt;
|Granada-Málaga||3&lt;br /&gt;
|-&lt;br /&gt;
|Málaga-Cádiz||2&lt;br /&gt;
|-&lt;br /&gt;
|colspan=2|''Tabla 2.  Incremento de las circulaciones en cada tramo, fruto de la captación de nuevos tráficos.''&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
	&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Sumando estos valores a los anteriores, tenemos que las circulaciones/día en total son:&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align:center;&amp;quot; &lt;br /&gt;
! Tramo&lt;br /&gt;
! Circulaciones/día totales&lt;br /&gt;
|-&lt;br /&gt;
|Frontera-Gerona|| bgcolor=&amp;quot;LawnGreen&amp;quot; colspan=1 | 101&lt;br /&gt;
|-&lt;br /&gt;
|Gerona-Barcelona||bgcolor=&amp;quot;LawnGreen&amp;quot; colspan=1 |130&lt;br /&gt;
|-&lt;br /&gt;
|Barcelona-Tarragona||bgcolor=&amp;quot;Yellow&amp;quot; colspan=1 |214&lt;br /&gt;
|-&lt;br /&gt;
|Tarragona-Castellón||bgcolor=&amp;quot;LawnGreen&amp;quot; colspan=1 |117&lt;br /&gt;
|-&lt;br /&gt;
|Castellón-Valencia||bgcolor=&amp;quot;Yellow&amp;quot; colspan=1 |229&lt;br /&gt;
|-&lt;br /&gt;
|Valencia-Alicante||bgcolor=&amp;quot;Tomato&amp;quot; colspan=1 |82*&lt;br /&gt;
|-&lt;br /&gt;
|Alicante-Murcia||bgcolor=&amp;quot;Tomato&amp;quot; colspan=1 |106*&lt;br /&gt;
|-&lt;br /&gt;
|Murcia-Almería||bgcolor=&amp;quot;LawnGreen&amp;quot; colspan=1 |75**&lt;br /&gt;
|-&lt;br /&gt;
|Almería-Granada||bgcolor=&amp;quot;LawnGreen&amp;quot; colspan=1 |81**&lt;br /&gt;
|-&lt;br /&gt;
|Granada-Málaga||bgcolor=&amp;quot;LawnGreen&amp;quot; colspan=1 |55**&lt;br /&gt;
|-&lt;br /&gt;
|Málaga-Cádiz||bgcolor=&amp;quot;LawnGreen&amp;quot; colspan=1 |91**&lt;br /&gt;
|-&lt;br /&gt;
|colspan=2|''Tabla 3. Resultados de circulaciones totales.''&lt;br /&gt;
|-&lt;br /&gt;
|colspan=2|''Nota 1:  *Sin vía; ** Sin línea existente, previsión en base a líneas con características semejantes.''&lt;br /&gt;
|-&lt;br /&gt;
|colspan=2|''Nota 2:  En verde, tramos no saturados. En amarillo, tramos cercanos a la saturación. En rojo, tramos saturados.''&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Tomando valores propios de explotación ferroviaria, sabemos que las líneas de vía doble empiezan a tener problemas de capacidad a partir de las 200 circulaciones diarias, llegando a la saturación con valores de 280-300 circulaciones/día, por lo que vemos que en los tramos Barcelona-Tarragona y Castellón-Valencia tendríamos falta de capacidad, sobre todo en horas punta, pero sin llegar a la saturación. En el caso del tramo Alicante-Murcia, las 106 circulaciones/día sí que colapsarían nuestra línea, al ser de vía única, cuyo límite de saturación está entre las 70 y 80 circulaciones diarias. Esto también ocurriría en el tramo Valencia-Alicante.&lt;br /&gt;
&lt;br /&gt;
== Conclusiones ==&lt;br /&gt;
Viendo los resultados de los cálculos realizados en base al crecimiento de las circulaciones en las líneas que nos ocupan, vemos que hay dos tramos en los que sería necesaria la ampliación de capacidad (preferentemente vía segregación de plataformas y anchos) para absorber la capacidad: Valencia-Alicante y Alicante-Murcia. Luego, tenemos otros dos tramos en los que, sin llegar a la saturación, convendría ir planificando un desdoble, separando los tráficos según anchos. Estamos hablando del Barcelona-Tarragona y el Castellón-Valencia.&lt;br /&gt;
&lt;br /&gt;
== Anejos ==&lt;br /&gt;
&lt;br /&gt;
Se pueden adjuntar archivos usando el enlace ''Subir archivo'' que aparece a la izquierda.&lt;br /&gt;
&lt;br /&gt;
[[Categoría:Sistemas de Información Geográfica Aplicados a la Ingeniería Civil]]&lt;br /&gt;
[[Categoría:SIGAIC_16/17]]&lt;/div&gt;</summary>
		<author><name>Javier Ruiz de Galarreta López</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Archivo:Poblaci_n_mapa.jpg&amp;diff=39980</id>
		<title>Archivo:Poblaci n mapa.jpg</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Archivo:Poblaci_n_mapa.jpg&amp;diff=39980"/>
				<updated>2017-05-26T09:13:18Z</updated>
		
		<summary type="html">&lt;p&gt;Javier Ruiz de Galarreta López: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>Javier Ruiz de Galarreta López</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Archivo:PIB_por_Poblacion_mapa.jpg&amp;diff=39979</id>
		<title>Archivo:PIB por Poblacion mapa.jpg</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Archivo:PIB_por_Poblacion_mapa.jpg&amp;diff=39979"/>
				<updated>2017-05-26T09:12:40Z</updated>
		
		<summary type="html">&lt;p&gt;Javier Ruiz de Galarreta López: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>Javier Ruiz de Galarreta López</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Archivo:Mapa_zonas.jpg&amp;diff=39978</id>
		<title>Archivo:Mapa zonas.jpg</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Archivo:Mapa_zonas.jpg&amp;diff=39978"/>
				<updated>2017-05-26T09:11:36Z</updated>
		
		<summary type="html">&lt;p&gt;Javier Ruiz de Galarreta López: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>Javier Ruiz de Galarreta López</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Archivo:Mapa_provincias.jpg&amp;diff=39977</id>
		<title>Archivo:Mapa provincias.jpg</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Archivo:Mapa_provincias.jpg&amp;diff=39977"/>
				<updated>2017-05-26T09:10:45Z</updated>
		
		<summary type="html">&lt;p&gt;Javier Ruiz de Galarreta López: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>Javier Ruiz de Galarreta López</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Archivo:Mapa_linea_fc.jpg&amp;diff=39976</id>
		<title>Archivo:Mapa linea fc.jpg</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Archivo:Mapa_linea_fc.jpg&amp;diff=39976"/>
				<updated>2017-05-26T09:09:21Z</updated>
		
		<summary type="html">&lt;p&gt;Javier Ruiz de Galarreta López: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>Javier Ruiz de Galarreta López</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Archivo:Exp_por_PIB_mapa.jpg&amp;diff=39975</id>
		<title>Archivo:Exp por PIB mapa.jpg</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Archivo:Exp_por_PIB_mapa.jpg&amp;diff=39975"/>
				<updated>2017-05-26T09:08:15Z</updated>
		
		<summary type="html">&lt;p&gt;Javier Ruiz de Galarreta López: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>Javier Ruiz de Galarreta López</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=An%C3%A1lisis_sobre_la_viabilidad_de_la_ampliaci%C3%B3n_del_ancho_de_v%C3%ADa_internacional_en_el_Corredor_Mediterr%C3%A1neo_a_trav%C3%A9s_de_las_l%C3%ADneas_actuales&amp;diff=39974</id>
		<title>Análisis sobre la viabilidad de la ampliación del ancho de vía internacional en el Corredor Mediterráneo a través de las líneas actuales</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=An%C3%A1lisis_sobre_la_viabilidad_de_la_ampliaci%C3%B3n_del_ancho_de_v%C3%ADa_internacional_en_el_Corredor_Mediterr%C3%A1neo_a_trav%C3%A9s_de_las_l%C3%ADneas_actuales&amp;diff=39974"/>
				<updated>2017-05-26T08:42:17Z</updated>
		
		<summary type="html">&lt;p&gt;Javier Ruiz de Galarreta López: /* Introducción */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{ TrabajoSIG | Análisis sobre la viabilidad de la ampliación del ancho de vía internacional en el Corredor Mediterráneo a través de las líneas actuales | Joaquín Sánchez Molina (396) Leoni Koch (698) Javier Ruiz de Galarreta López (1566)| [[:Categoría:SIGAIC_16/17|Curso 16/17]] }}&lt;br /&gt;
&lt;br /&gt;
El Corredor Ferroviario Mediterráneo discurre actualmente desde la frontera francesa hasta Murcia, ampliándose en el futuro hasta Algeciras. Debido al ancho de vía español, diferente al ancho internacional instalado mayoritariamente en Europa, los trenes no pueden circular de manera directa entre Europa y España. En diciembre de 2012, el Ministerio de Fomento propuso un plan para extender ese ancho europeo hacia el sur, hasta Algeciras, aunque dos años después lo desestimó. &lt;br /&gt;
&lt;br /&gt;
Nuestro trabajo consistirá en cuantificar el aumento de demanda de esa extensión del ancho europeo entre la frontera y Algeciras, buscando cuellos de botella y puntos de congestión como consecuencia de los nuevos tráficos captados, para cuantificar la necesidad o no de ampliaciones de capacidad de la red. Hemos utilizado datos del Ministerio de Fomento y ADIF, plasmándolos más tarde en SIG, incluyendo a su vez la población y el PIB de cada provincia, para ver de manera más gráfica la distribución de tráficos en el área. El año horizonte para el que hemos calculado estos tráficos es el 2025, pero este modelo debe irse actualizando en función de la demanda real de transporte que exista en el Corredor. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Palabras clave: ancho europeo, Corredor Mediterráneo, tren de mercancías, exportaciones, importaciones.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Introducción ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Como es sabido por todo aquel interesado en el ámbito ferroviario, en España, el ancho de vía es diferente al ancho de vía de Francia, Alemania y el resto de países de Europa Central y Occidental, a excepción de Portugal e Irlanda. Esto ha constituido desde el siglo XIX una enorme oportunidad perdida para revertir la situación de aislamiento geográfico que siempre ha tenido España por su condición periférica en Europa. Con la llegada de la Alta Velocidad el 1992 con la línea Madrid-Sevilla, se decidió la utilización del ancho europeo o internacional para ir comenzando un progresivo cambio de ancho de la red. Desde esa fecha, todas las líneas de alta velocidad (LAV) se han construido en ancho internacional, generando problemas de “frontera ferroviaria” a la hora de la conexión con la red convencional, en ancho ibérico.&lt;br /&gt;
&lt;br /&gt;
Esto ha supuesto tradicionalmente una imposibilidad de la circulación de trenes entre España y Francia, o al menos, obliga a un trasbordo en la frontera, con las molestias para las personas y los sobrecostes y retrasos para las mercancías. Una vez la red de alta velocidad llegó  hasta la frontera francesa con la LAV Barcelona-Frontera Francesa, inaugurada en enero de 2013, el problema de esa “frontera ferroviaria” se ha mitigado, pero sólo hasta Barcelona. Siendo casi todas las LAV exclusivas para tráfico de viajeros (excepto la Barcelona-Frontera Francesa, que está diseñada para viajeros y mercancías), los exiguos tráficos de mercancías han quedado consagrados a las líneas convencionales, en ancho ibérico. Esto constituye un problema importante, ya que, aunque algunos trenes de pasajeros pueden cambiar de ancho automáticamente entre LAV y red convencional, los vagones de mercancías no disponen de esa tecnología por falta de interés económico.&lt;br /&gt;
&lt;br /&gt;
Es por esto que, en el año 2012, el Ministerio de Fomento lanza un ambicioso plan para la extensión del ancho internacional/europeo por el Corredor Mediterráneo, desde Barcelona hasta Murcia. Gran parte de esta adaptación se centra en convertir las vías de ancho convencional en vías de ancho mixto (convencional y europeo), mediante la inclusión de un tercer carril. Sin embargo, en 2014, decidió dar carpetazo al asunto, volviendo a una solución mixta sin continuidad del ancho internacional. El objetivo de este trabajo es analizar el plan de 2012 de Fomento, y ver si con un ancho UIC continuo hasta Algeciras por la fachada mediterránea, sería suficiente con la instalación de ancho UIC en la red actual, o si, por el contrario, sería necesario un desdoblamiento para absorber la demanda.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Mapa provincias|marco|centro|Provincias por las que discurre el Corredor Mediterráneo y que son objeto de estudio en este trabajo.]]&lt;br /&gt;
&lt;br /&gt;
== Metodología ==&lt;br /&gt;
Para la realización de este trabajo se ha empleado el mapa MTN200, obtenido del Centro de Descargas del Instituto Geográfico Nacional, que representa la totalidad de España. A continuación se ha digitalizado cada provincia, creando archivos vectoriales, agrupándolas más tarde para simplificar la representación en 4 zonas:&lt;br /&gt;
&lt;br /&gt;
*Zona I: Gerona, Barcelona y Tarragona. &lt;br /&gt;
*Zona II: Castellón y Valencia.&lt;br /&gt;
*Zona III: Alicante, Murcia y Almería. &lt;br /&gt;
*Zona IV: Granada, Málaga y Cádiz.&lt;br /&gt;
&lt;br /&gt;
Posteriormente, hemos digitalizado la línea ferroviaria por la que circularían los tráficos captados por la extensión del ancho internacional, asignándoles tres colores en función del grado de saturación (verde si no están saturados, amarillo si están próximos a la saturación y rojos si están saturados). Además, en cada zona hemos incluido varios atributos, como la población, el PIB y la proporción de las exportaciones respecto al PIB, para posteriormente clasificar las zonas y las provincias en función de estos factores mediante escalas cromáticas. &lt;br /&gt;
Se han tomado los datos de tráfico del Estudio del Corredor Ferroviario Mediterráneo, de INECO para el Ministerio de Fomento y ADIF de marzo de 2011. De este estudio se han extraído los tráficos de mercancías, tanto por carretera como por ferrocarril, que circulan entre Europa y las diferentes zonas en las que hemos dividido el Corredor Mediterráneo, pero obviando los tráficos internos del mismo, ya que nos interesan los tráficos con Europa, por ser la implantación del ancho europeo el motivo de nuestro trabajo. Sumado a todo esto, vamos a suponer que, con esta ampliación del ancho europeo, siendo el ferrocarril el modo de transporte terrestre más barato por unidad de carga transportada en las distancias largas, se podrían captar el 80% de los tráficos actuales por carretera que realizan este recorrido hacia Francia. &lt;br /&gt;
Por último, hemos introducido el número de trenes actual en cada red que compartirían, sumando los trenes resultantes de los tráficos captados. De esta manera, podremos saber de una manera bastante ajustada a la realidad si la ampliación del ancho europeo hacia el sur por el Corredor Mediterráneo, puede utilizar las vías actuales o habría que construir una nueva plataforma expresamente para ello.&lt;br /&gt;
&lt;br /&gt;
== Resultados ==&lt;br /&gt;
Como hemos explicado antes, nuestro trabajo se basa en saber si la red actual sería capaz de absorber el aumento de tráficos que supondría la extensión del ancho europeo por el Corredor Mediterráneo. Por ello, vamos a identificar los tramos más congestionados a día de hoy, para entonces, en ellos, valorar si el aumento de trenes de mercancías es soportable o no, medido en trenes/hora. Asumimos que los trenes de mercancías deberán circular en los horarios de menor demanda, por lo que no tendremos en cuenta las horas punta para estudiar nuestro caso. Tomando las circulaciones actuales de la web de Renfe, así como las de mercancías en otros sitios web, hemos calculado el número de circulaciones diarias que soporta cada recorrido, con extremo en cada capital de provincia (excepto Motril en el caso de Granada y Algeciras en lugar de Cádiz). En la siguiente tabla, hemos indicado las circulaciones que se estiman para el año 2025, que es el año horizonte en el calcula que la extensión del ancho europeo debe de estar funcionando en su totalidad.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align:center;&amp;quot;&lt;br /&gt;
! Tramo&lt;br /&gt;
! Circulaciones/día&lt;br /&gt;
|-&lt;br /&gt;
|Frontera-Gerona||30&lt;br /&gt;
|-&lt;br /&gt;
|Gerona-Barcelona||62&lt;br /&gt;
|-&lt;br /&gt;
|Barcelona-Tarragona||168&lt;br /&gt;
|-&lt;br /&gt;
|Tarragona-Castellón||80&lt;br /&gt;
|-&lt;br /&gt;
|Castellón-Valencia||199&lt;br /&gt;
|-&lt;br /&gt;
|Valencia-Alicante||63*&lt;br /&gt;
|-&lt;br /&gt;
|Alicante-Murcia||92*&lt;br /&gt;
|-&lt;br /&gt;
|Murcia-Almería||66**&lt;br /&gt;
|-&lt;br /&gt;
|Almería-Granada||75**&lt;br /&gt;
|-&lt;br /&gt;
|Granada-Málaga||52**&lt;br /&gt;
|-&lt;br /&gt;
|Málaga-Cádiz||89**&lt;br /&gt;
|-&lt;br /&gt;
|colspan=2|''Tabla 1. Circulaciones/día en cada tramo del Corredor Mediterráneo en el horizonte 2025.''&lt;br /&gt;
|-&lt;br /&gt;
|colspan=2|''Nota:  *Sin vía; ** Sin línea existente, previsión en base a líneas con características semejantes.&lt;br /&gt;
''&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Sabemos que la extensión hacia el sur del ancho europeo hará que se incrementen las circulaciones, y para saber si la red actual puede soportarlo, tenemos que ver cuál es el tramo más saturado considerando también esas nuevas circulaciones. Sin embargo el incremento en esas circulaciones variará en función de la situación del mismo: no serán igual en la frontera francesa que en el tramo Murcia-Alicante.&lt;br /&gt;
&lt;br /&gt;
Ahora calculemos los trenes adicionales fruto del aumento de tráficos por la extensión del ancho europeo contando todos los tráficos, es decir, a la altura de la frontera francesa. Tenemos el tráfico de mercancías en el Corredor Mediterráneo con origen/destino Europa. Se trata en total de 25,49 millones de toneladas, de las que 23,29 se mueven por carretera y 2,2 lo hacen por ferrocarril. Tomando un peso medio por tren de 1000 t, nos da que, a día de hoy, tenemos 2.200 trenes de mercancías al año entre España y Europa. Con una captación del 70%, tendríamos que el ferrocarril pasaría a mover 23,29*0,7 + 2,2 = 18,503 millones de toneladas, lo que se traduce en 18.503 trenes al año. Suponiendo además que se distribuyen de manera uniforme a lo largo del año, tenemos que suponen un total de 51 trenes diarios. Estos cálculos los hemos tomado con los valores reales de 2007, sin embargo, para extrapolarlos al año horizonte 2025, debemos multiplicar esos valores por un 1,4, que es un valor que aproxima el aumento de la demanda de transporte para ese año. Por ello, tenemos que considerar 20.043*1,4=25.905 trenes anuales, lo que nos da 71 trenes diarios.&lt;br /&gt;
&lt;br /&gt;
Vamos a repetir este cálculo para cada uno de los tramos, siempre tomando en cuenta que cada vez ese incremento en las mercancías captadas y por lo tanto en nuevos tráficos generados es menor. Los resultados son los siguientes:&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align:center;&amp;quot;&lt;br /&gt;
! Tramo&lt;br /&gt;
! Δ circulaciones/día&lt;br /&gt;
|-&lt;br /&gt;
|Frontera-Gerona||71&lt;br /&gt;
|-&lt;br /&gt;
|Gerona-Barcelona||68&lt;br /&gt;
|-&lt;br /&gt;
|Barcelona-Tarragona||46&lt;br /&gt;
|-&lt;br /&gt;
|Tarragona-Castellón||37&lt;br /&gt;
|-&lt;br /&gt;
|Castellón-Valencia||30&lt;br /&gt;
|-&lt;br /&gt;
|Valencia-Alicante||19&lt;br /&gt;
|-&lt;br /&gt;
|Alicante-Murcia||14&lt;br /&gt;
|-&lt;br /&gt;
|Murcia-Almería||9&lt;br /&gt;
|-&lt;br /&gt;
|Almería-Granada||6&lt;br /&gt;
|-&lt;br /&gt;
|Granada-Málaga||3&lt;br /&gt;
|-&lt;br /&gt;
|Málaga-Cádiz||2&lt;br /&gt;
|-&lt;br /&gt;
|colspan=2|''Tabla 2.  Incremento de las circulaciones en cada tramo, fruto de la captación de nuevos tráficos.''&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
	&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Sumando estos valores a los anteriores, tenemos que las circulaciones/día en total son:&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align:center;&amp;quot; &lt;br /&gt;
! Tramo&lt;br /&gt;
! Circulaciones/día totales&lt;br /&gt;
|-&lt;br /&gt;
|Frontera-Gerona|| bgcolor=&amp;quot;LawnGreen&amp;quot; colspan=1 | 101&lt;br /&gt;
|-&lt;br /&gt;
|Gerona-Barcelona||bgcolor=&amp;quot;LawnGreen&amp;quot; colspan=1 |130&lt;br /&gt;
|-&lt;br /&gt;
|Barcelona-Tarragona||bgcolor=&amp;quot;Yellow&amp;quot; colspan=1 |214&lt;br /&gt;
|-&lt;br /&gt;
|Tarragona-Castellón||bgcolor=&amp;quot;LawnGreen&amp;quot; colspan=1 |117&lt;br /&gt;
|-&lt;br /&gt;
|Castellón-Valencia||bgcolor=&amp;quot;Yellow&amp;quot; colspan=1 |229&lt;br /&gt;
|-&lt;br /&gt;
|Valencia-Alicante||bgcolor=&amp;quot;Tomato&amp;quot; colspan=1 |82*&lt;br /&gt;
|-&lt;br /&gt;
|Alicante-Murcia||bgcolor=&amp;quot;Tomato&amp;quot; colspan=1 |106*&lt;br /&gt;
|-&lt;br /&gt;
|Murcia-Almería||bgcolor=&amp;quot;LawnGreen&amp;quot; colspan=1 |75**&lt;br /&gt;
|-&lt;br /&gt;
|Almería-Granada||bgcolor=&amp;quot;LawnGreen&amp;quot; colspan=1 |81**&lt;br /&gt;
|-&lt;br /&gt;
|Granada-Málaga||bgcolor=&amp;quot;LawnGreen&amp;quot; colspan=1 |55**&lt;br /&gt;
|-&lt;br /&gt;
|Málaga-Cádiz||bgcolor=&amp;quot;LawnGreen&amp;quot; colspan=1 |91**&lt;br /&gt;
|-&lt;br /&gt;
|colspan=2|''Tabla 3. Resultados de circulaciones totales.''&lt;br /&gt;
|-&lt;br /&gt;
|colspan=2|''Nota 1:  *Sin vía; ** Sin línea existente, previsión en base a líneas con características semejantes.''&lt;br /&gt;
|-&lt;br /&gt;
|colspan=2|''Nota 2:  En verde, tramos no saturados. En amarillo, tramos cercanos a la saturación. En rojo, tramos saturados.''&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Tomando valores propios de explotación ferroviaria, sabemos que las líneas de vía doble empiezan a tener problemas de capacidad a partir de las 200 circulaciones diarias, llegando a la saturación con valores de 280-300 circulaciones/día, por lo que vemos que en los tramos Barcelona-Tarragona y Castellón-Valencia tendríamos falta de capacidad, sobre todo en horas punta, pero sin llegar a la saturación. En el caso del tramo Alicante-Murcia, las 106 circulaciones/día sí que colapsarían nuestra línea, al ser de vía única, cuyo límite de saturación está entre las 70 y 80 circulaciones diarias. Esto también ocurriría en el tramo Valencia-Alicante.&lt;br /&gt;
&lt;br /&gt;
== Conclusiones ==&lt;br /&gt;
Viendo los resultados de los cálculos realizados en base al crecimiento de las circulaciones en las líneas que nos ocupan, vemos que hay dos tramos en los que sería necesaria la ampliación de capacidad (preferentemente vía segregación de plataformas y anchos) para absorber la capacidad: Valencia-Alicante y Alicante-Murcia. Luego, tenemos otros dos tramos en los que, sin llegar a la saturación, convendría ir planificando un desdoble, separando los tráficos según anchos. Estamos hablando del Barcelona-Tarragona y el Castellón-Valencia.&lt;br /&gt;
&lt;br /&gt;
== Anejos ==&lt;br /&gt;
&lt;br /&gt;
Se pueden adjuntar archivos usando el enlace ''Subir archivo'' que aparece a la izquierda.&lt;br /&gt;
&lt;br /&gt;
[[Categoría:Sistemas de Información Geográfica Aplicados a la Ingeniería Civil]]&lt;br /&gt;
[[Categoría:SIGAIC_16/17]]&lt;/div&gt;</summary>
		<author><name>Javier Ruiz de Galarreta López</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=An%C3%A1lisis_sobre_la_viabilidad_de_la_ampliaci%C3%B3n_del_ancho_de_v%C3%ADa_internacional_en_el_Corredor_Mediterr%C3%A1neo_a_trav%C3%A9s_de_las_l%C3%ADneas_actuales&amp;diff=39973</id>
		<title>Análisis sobre la viabilidad de la ampliación del ancho de vía internacional en el Corredor Mediterráneo a través de las líneas actuales</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=An%C3%A1lisis_sobre_la_viabilidad_de_la_ampliaci%C3%B3n_del_ancho_de_v%C3%ADa_internacional_en_el_Corredor_Mediterr%C3%A1neo_a_trav%C3%A9s_de_las_l%C3%ADneas_actuales&amp;diff=39973"/>
				<updated>2017-05-25T11:30:59Z</updated>
		
		<summary type="html">&lt;p&gt;Javier Ruiz de Galarreta López: /* Conclusiones */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{ TrabajoSIG | Análisis sobre la viabilidad de la ampliación del ancho de vía internacional en el Corredor Mediterráneo a través de las líneas actuales | Joaquín Sánchez Molina (396) Leoni Koch (698) Javier Ruiz de Galarreta López (1566)| [[:Categoría:SIGAIC_16/17|Curso 16/17]] }}&lt;br /&gt;
&lt;br /&gt;
El Corredor Ferroviario Mediterráneo discurre actualmente desde la frontera francesa hasta Murcia, ampliándose en el futuro hasta Algeciras. Debido al ancho de vía español, diferente al ancho internacional instalado mayoritariamente en Europa, los trenes no pueden circular de manera directa entre Europa y España. En diciembre de 2012, el Ministerio de Fomento propuso un plan para extender ese ancho europeo hacia el sur, hasta Algeciras, aunque dos años después lo desestimó. &lt;br /&gt;
&lt;br /&gt;
Nuestro trabajo consistirá en cuantificar el aumento de demanda de esa extensión del ancho europeo entre la frontera y Algeciras, buscando cuellos de botella y puntos de congestión como consecuencia de los nuevos tráficos captados, para cuantificar la necesidad o no de ampliaciones de capacidad de la red. Hemos utilizado datos del Ministerio de Fomento y ADIF, plasmándolos más tarde en SIG, incluyendo a su vez la población y el PIB de cada provincia, para ver de manera más gráfica la distribución de tráficos en el área. El año horizonte para el que hemos calculado estos tráficos es el 2025, pero este modelo debe irse actualizando en función de la demanda real de transporte que exista en el Corredor. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Palabras clave: ancho europeo, Corredor Mediterráneo, tren de mercancías, exportaciones, importaciones.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Introducción ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Como es sabido por todo aquel interesado en el ámbito ferroviario, en España, el ancho de vía es diferente al ancho de vía de Francia, Alemania y el resto de países de Europa Central y Occidental, a excepción de Portugal e Irlanda. Esto ha constituido desde el siglo XIX una enorme oportunidad perdida para revertir la situación de aislamiento geográfico que siempre ha tenido España por su condición periférica en Europa. Con la llegada de la Alta Velocidad el 1992 con la línea Madrid-Sevilla, se decidió la utilización del ancho europeo o internacional para ir comenzando un progresivo cambio de ancho de la red. Desde esa fecha, todas las líneas de alta velocidad (LAV) se han construido en ancho internacional, generando problemas de “frontera ferroviaria” a la hora de la conexión con la red convencional, en ancho ibérico.&lt;br /&gt;
&lt;br /&gt;
Esto ha supuesto tradicionalmente una imposibilidad de la circulación de trenes entre España y Francia, o al menos, obliga a un trasbordo en la frontera, con las molestias para las personas y los sobrecostes y retrasos para las mercancías. Una vez la red de alta velocidad llegó  hasta la frontera francesa con la LAV Barcelona-Frontera Francesa, inaugurada en enero de 2013, el problema de esa “frontera ferroviaria” se ha mitigado, pero sólo hasta Barcelona. Siendo casi todas las LAV exclusivas para tráfico de viajeros (excepto la Barcelona-Frontera Francesa, que está diseñada para viajeros y mercancías), los exiguos tráficos de mercancías han quedado consagrados a las líneas convencionales, en ancho ibérico. Esto constituye un problema importante, ya que, aunque algunos trenes de pasajeros pueden cambiar de ancho automáticamente entre LAV y red convencional, los vagones de mercancías no disponen de esa tecnología por falta de interés económico.&lt;br /&gt;
&lt;br /&gt;
Es por esto que, en el año 2012, el Ministerio de Fomento lanza un ambicioso plan para la extensión del ancho internacional/europeo por el Corredor Mediterráneo, desde Barcelona hasta Murcia. Gran parte de esta adaptación se centra en convertir las vías de ancho convencional en vías de ancho mixto (convencional y europeo), mediante la inclusión de un tercer carril. Sin embargo, en 2014, decidió dar carpetazo al asunto, volviendo a una solución mixta sin continuidad del ancho internacional. El objetivo de este trabajo es analizar el plan de 2012 de Fomento, y ver si con un ancho UIC continuo hasta Algeciras por la fachada mediterránea, sería suficiente con la instalación de ancho UIC en la red actual, o si, por el contrario, sería necesario un desdoblamiento para absorber la demanda.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Metodología ==&lt;br /&gt;
Para la realización de este trabajo se ha empleado el mapa MTN200, obtenido del Centro de Descargas del Instituto Geográfico Nacional, que representa la totalidad de España. A continuación se ha digitalizado cada provincia, creando archivos vectoriales, agrupándolas más tarde para simplificar la representación en 4 zonas:&lt;br /&gt;
&lt;br /&gt;
*Zona I: Gerona, Barcelona y Tarragona. &lt;br /&gt;
*Zona II: Castellón y Valencia.&lt;br /&gt;
*Zona III: Alicante, Murcia y Almería. &lt;br /&gt;
*Zona IV: Granada, Málaga y Cádiz.&lt;br /&gt;
&lt;br /&gt;
Posteriormente, hemos digitalizado la línea ferroviaria por la que circularían los tráficos captados por la extensión del ancho internacional, asignándoles tres colores en función del grado de saturación (verde si no están saturados, amarillo si están próximos a la saturación y rojos si están saturados). Además, en cada zona hemos incluido varios atributos, como la población, el PIB y la proporción de las exportaciones respecto al PIB, para posteriormente clasificar las zonas y las provincias en función de estos factores mediante escalas cromáticas. &lt;br /&gt;
Se han tomado los datos de tráfico del Estudio del Corredor Ferroviario Mediterráneo, de INECO para el Ministerio de Fomento y ADIF de marzo de 2011. De este estudio se han extraído los tráficos de mercancías, tanto por carretera como por ferrocarril, que circulan entre Europa y las diferentes zonas en las que hemos dividido el Corredor Mediterráneo, pero obviando los tráficos internos del mismo, ya que nos interesan los tráficos con Europa, por ser la implantación del ancho europeo el motivo de nuestro trabajo. Sumado a todo esto, vamos a suponer que, con esta ampliación del ancho europeo, siendo el ferrocarril el modo de transporte terrestre más barato por unidad de carga transportada en las distancias largas, se podrían captar el 80% de los tráficos actuales por carretera que realizan este recorrido hacia Francia. &lt;br /&gt;
Por último, hemos introducido el número de trenes actual en cada red que compartirían, sumando los trenes resultantes de los tráficos captados. De esta manera, podremos saber de una manera bastante ajustada a la realidad si la ampliación del ancho europeo hacia el sur por el Corredor Mediterráneo, puede utilizar las vías actuales o habría que construir una nueva plataforma expresamente para ello.&lt;br /&gt;
&lt;br /&gt;
== Resultados ==&lt;br /&gt;
Como hemos explicado antes, nuestro trabajo se basa en saber si la red actual sería capaz de absorber el aumento de tráficos que supondría la extensión del ancho europeo por el Corredor Mediterráneo. Por ello, vamos a identificar los tramos más congestionados a día de hoy, para entonces, en ellos, valorar si el aumento de trenes de mercancías es soportable o no, medido en trenes/hora. Asumimos que los trenes de mercancías deberán circular en los horarios de menor demanda, por lo que no tendremos en cuenta las horas punta para estudiar nuestro caso. Tomando las circulaciones actuales de la web de Renfe, así como las de mercancías en otros sitios web, hemos calculado el número de circulaciones diarias que soporta cada recorrido, con extremo en cada capital de provincia (excepto Motril en el caso de Granada y Algeciras en lugar de Cádiz). En la siguiente tabla, hemos indicado las circulaciones que se estiman para el año 2025, que es el año horizonte en el calcula que la extensión del ancho europeo debe de estar funcionando en su totalidad.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align:center;&amp;quot;&lt;br /&gt;
! Tramo&lt;br /&gt;
! Circulaciones/día&lt;br /&gt;
|-&lt;br /&gt;
|Frontera-Gerona||30&lt;br /&gt;
|-&lt;br /&gt;
|Gerona-Barcelona||62&lt;br /&gt;
|-&lt;br /&gt;
|Barcelona-Tarragona||168&lt;br /&gt;
|-&lt;br /&gt;
|Tarragona-Castellón||80&lt;br /&gt;
|-&lt;br /&gt;
|Castellón-Valencia||199&lt;br /&gt;
|-&lt;br /&gt;
|Valencia-Alicante||63*&lt;br /&gt;
|-&lt;br /&gt;
|Alicante-Murcia||92*&lt;br /&gt;
|-&lt;br /&gt;
|Murcia-Almería||66**&lt;br /&gt;
|-&lt;br /&gt;
|Almería-Granada||75**&lt;br /&gt;
|-&lt;br /&gt;
|Granada-Málaga||52**&lt;br /&gt;
|-&lt;br /&gt;
|Málaga-Cádiz||89**&lt;br /&gt;
|-&lt;br /&gt;
|colspan=2|''Tabla 1. Circulaciones/día en cada tramo del Corredor Mediterráneo en el horizonte 2025.''&lt;br /&gt;
|-&lt;br /&gt;
|colspan=2|''Nota:  *Sin vía; ** Sin línea existente, previsión en base a líneas con características semejantes.&lt;br /&gt;
''&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Sabemos que la extensión hacia el sur del ancho europeo hará que se incrementen las circulaciones, y para saber si la red actual puede soportarlo, tenemos que ver cuál es el tramo más saturado considerando también esas nuevas circulaciones. Sin embargo el incremento en esas circulaciones variará en función de la situación del mismo: no serán igual en la frontera francesa que en el tramo Murcia-Alicante.&lt;br /&gt;
&lt;br /&gt;
Ahora calculemos los trenes adicionales fruto del aumento de tráficos por la extensión del ancho europeo contando todos los tráficos, es decir, a la altura de la frontera francesa. Tenemos el tráfico de mercancías en el Corredor Mediterráneo con origen/destino Europa. Se trata en total de 25,49 millones de toneladas, de las que 23,29 se mueven por carretera y 2,2 lo hacen por ferrocarril. Tomando un peso medio por tren de 1000 t, nos da que, a día de hoy, tenemos 2.200 trenes de mercancías al año entre España y Europa. Con una captación del 70%, tendríamos que el ferrocarril pasaría a mover 23,29*0,7 + 2,2 = 18,503 millones de toneladas, lo que se traduce en 18.503 trenes al año. Suponiendo además que se distribuyen de manera uniforme a lo largo del año, tenemos que suponen un total de 51 trenes diarios. Estos cálculos los hemos tomado con los valores reales de 2007, sin embargo, para extrapolarlos al año horizonte 2025, debemos multiplicar esos valores por un 1,4, que es un valor que aproxima el aumento de la demanda de transporte para ese año. Por ello, tenemos que considerar 20.043*1,4=25.905 trenes anuales, lo que nos da 71 trenes diarios.&lt;br /&gt;
&lt;br /&gt;
Vamos a repetir este cálculo para cada uno de los tramos, siempre tomando en cuenta que cada vez ese incremento en las mercancías captadas y por lo tanto en nuevos tráficos generados es menor. Los resultados son los siguientes:&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align:center;&amp;quot;&lt;br /&gt;
! Tramo&lt;br /&gt;
! Δ circulaciones/día&lt;br /&gt;
|-&lt;br /&gt;
|Frontera-Gerona||71&lt;br /&gt;
|-&lt;br /&gt;
|Gerona-Barcelona||68&lt;br /&gt;
|-&lt;br /&gt;
|Barcelona-Tarragona||46&lt;br /&gt;
|-&lt;br /&gt;
|Tarragona-Castellón||37&lt;br /&gt;
|-&lt;br /&gt;
|Castellón-Valencia||30&lt;br /&gt;
|-&lt;br /&gt;
|Valencia-Alicante||19&lt;br /&gt;
|-&lt;br /&gt;
|Alicante-Murcia||14&lt;br /&gt;
|-&lt;br /&gt;
|Murcia-Almería||9&lt;br /&gt;
|-&lt;br /&gt;
|Almería-Granada||6&lt;br /&gt;
|-&lt;br /&gt;
|Granada-Málaga||3&lt;br /&gt;
|-&lt;br /&gt;
|Málaga-Cádiz||2&lt;br /&gt;
|-&lt;br /&gt;
|colspan=2|''Tabla 2.  Incremento de las circulaciones en cada tramo, fruto de la captación de nuevos tráficos.''&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
	&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Sumando estos valores a los anteriores, tenemos que las circulaciones/día en total son:&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align:center;&amp;quot; &lt;br /&gt;
! Tramo&lt;br /&gt;
! Circulaciones/día totales&lt;br /&gt;
|-&lt;br /&gt;
|Frontera-Gerona|| bgcolor=&amp;quot;LawnGreen&amp;quot; colspan=1 | 101&lt;br /&gt;
|-&lt;br /&gt;
|Gerona-Barcelona||bgcolor=&amp;quot;LawnGreen&amp;quot; colspan=1 |130&lt;br /&gt;
|-&lt;br /&gt;
|Barcelona-Tarragona||bgcolor=&amp;quot;Yellow&amp;quot; colspan=1 |214&lt;br /&gt;
|-&lt;br /&gt;
|Tarragona-Castellón||bgcolor=&amp;quot;LawnGreen&amp;quot; colspan=1 |117&lt;br /&gt;
|-&lt;br /&gt;
|Castellón-Valencia||bgcolor=&amp;quot;Yellow&amp;quot; colspan=1 |229&lt;br /&gt;
|-&lt;br /&gt;
|Valencia-Alicante||bgcolor=&amp;quot;Tomato&amp;quot; colspan=1 |82*&lt;br /&gt;
|-&lt;br /&gt;
|Alicante-Murcia||bgcolor=&amp;quot;Tomato&amp;quot; colspan=1 |106*&lt;br /&gt;
|-&lt;br /&gt;
|Murcia-Almería||bgcolor=&amp;quot;LawnGreen&amp;quot; colspan=1 |75**&lt;br /&gt;
|-&lt;br /&gt;
|Almería-Granada||bgcolor=&amp;quot;LawnGreen&amp;quot; colspan=1 |81**&lt;br /&gt;
|-&lt;br /&gt;
|Granada-Málaga||bgcolor=&amp;quot;LawnGreen&amp;quot; colspan=1 |55**&lt;br /&gt;
|-&lt;br /&gt;
|Málaga-Cádiz||bgcolor=&amp;quot;LawnGreen&amp;quot; colspan=1 |91**&lt;br /&gt;
|-&lt;br /&gt;
|colspan=2|''Tabla 3. Resultados de circulaciones totales.''&lt;br /&gt;
|-&lt;br /&gt;
|colspan=2|''Nota 1:  *Sin vía; ** Sin línea existente, previsión en base a líneas con características semejantes.''&lt;br /&gt;
|-&lt;br /&gt;
|colspan=2|''Nota 2:  En verde, tramos no saturados. En amarillo, tramos cercanos a la saturación. En rojo, tramos saturados.''&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Tomando valores propios de explotación ferroviaria, sabemos que las líneas de vía doble empiezan a tener problemas de capacidad a partir de las 200 circulaciones diarias, llegando a la saturación con valores de 280-300 circulaciones/día, por lo que vemos que en los tramos Barcelona-Tarragona y Castellón-Valencia tendríamos falta de capacidad, sobre todo en horas punta, pero sin llegar a la saturación. En el caso del tramo Alicante-Murcia, las 106 circulaciones/día sí que colapsarían nuestra línea, al ser de vía única, cuyo límite de saturación está entre las 70 y 80 circulaciones diarias. Esto también ocurriría en el tramo Valencia-Alicante.&lt;br /&gt;
&lt;br /&gt;
== Conclusiones ==&lt;br /&gt;
Viendo los resultados de los cálculos realizados en base al crecimiento de las circulaciones en las líneas que nos ocupan, vemos que hay dos tramos en los que sería necesaria la ampliación de capacidad (preferentemente vía segregación de plataformas y anchos) para absorber la capacidad: Valencia-Alicante y Alicante-Murcia. Luego, tenemos otros dos tramos en los que, sin llegar a la saturación, convendría ir planificando un desdoble, separando los tráficos según anchos. Estamos hablando del Barcelona-Tarragona y el Castellón-Valencia.&lt;br /&gt;
&lt;br /&gt;
== Anejos ==&lt;br /&gt;
&lt;br /&gt;
Se pueden adjuntar archivos usando el enlace ''Subir archivo'' que aparece a la izquierda.&lt;br /&gt;
&lt;br /&gt;
[[Categoría:Sistemas de Información Geográfica Aplicados a la Ingeniería Civil]]&lt;br /&gt;
[[Categoría:SIGAIC_16/17]]&lt;/div&gt;</summary>
		<author><name>Javier Ruiz de Galarreta López</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=An%C3%A1lisis_sobre_la_viabilidad_de_la_ampliaci%C3%B3n_del_ancho_de_v%C3%ADa_internacional_en_el_Corredor_Mediterr%C3%A1neo_a_trav%C3%A9s_de_las_l%C3%ADneas_actuales&amp;diff=39972</id>
		<title>Análisis sobre la viabilidad de la ampliación del ancho de vía internacional en el Corredor Mediterráneo a través de las líneas actuales</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=An%C3%A1lisis_sobre_la_viabilidad_de_la_ampliaci%C3%B3n_del_ancho_de_v%C3%ADa_internacional_en_el_Corredor_Mediterr%C3%A1neo_a_trav%C3%A9s_de_las_l%C3%ADneas_actuales&amp;diff=39972"/>
				<updated>2017-05-25T11:30:03Z</updated>
		
		<summary type="html">&lt;p&gt;Javier Ruiz de Galarreta López: /* Resultados */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{ TrabajoSIG | Análisis sobre la viabilidad de la ampliación del ancho de vía internacional en el Corredor Mediterráneo a través de las líneas actuales | Joaquín Sánchez Molina (396) Leoni Koch (698) Javier Ruiz de Galarreta López (1566)| [[:Categoría:SIGAIC_16/17|Curso 16/17]] }}&lt;br /&gt;
&lt;br /&gt;
El Corredor Ferroviario Mediterráneo discurre actualmente desde la frontera francesa hasta Murcia, ampliándose en el futuro hasta Algeciras. Debido al ancho de vía español, diferente al ancho internacional instalado mayoritariamente en Europa, los trenes no pueden circular de manera directa entre Europa y España. En diciembre de 2012, el Ministerio de Fomento propuso un plan para extender ese ancho europeo hacia el sur, hasta Algeciras, aunque dos años después lo desestimó. &lt;br /&gt;
&lt;br /&gt;
Nuestro trabajo consistirá en cuantificar el aumento de demanda de esa extensión del ancho europeo entre la frontera y Algeciras, buscando cuellos de botella y puntos de congestión como consecuencia de los nuevos tráficos captados, para cuantificar la necesidad o no de ampliaciones de capacidad de la red. Hemos utilizado datos del Ministerio de Fomento y ADIF, plasmándolos más tarde en SIG, incluyendo a su vez la población y el PIB de cada provincia, para ver de manera más gráfica la distribución de tráficos en el área. El año horizonte para el que hemos calculado estos tráficos es el 2025, pero este modelo debe irse actualizando en función de la demanda real de transporte que exista en el Corredor. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Palabras clave: ancho europeo, Corredor Mediterráneo, tren de mercancías, exportaciones, importaciones.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Introducción ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Como es sabido por todo aquel interesado en el ámbito ferroviario, en España, el ancho de vía es diferente al ancho de vía de Francia, Alemania y el resto de países de Europa Central y Occidental, a excepción de Portugal e Irlanda. Esto ha constituido desde el siglo XIX una enorme oportunidad perdida para revertir la situación de aislamiento geográfico que siempre ha tenido España por su condición periférica en Europa. Con la llegada de la Alta Velocidad el 1992 con la línea Madrid-Sevilla, se decidió la utilización del ancho europeo o internacional para ir comenzando un progresivo cambio de ancho de la red. Desde esa fecha, todas las líneas de alta velocidad (LAV) se han construido en ancho internacional, generando problemas de “frontera ferroviaria” a la hora de la conexión con la red convencional, en ancho ibérico.&lt;br /&gt;
&lt;br /&gt;
Esto ha supuesto tradicionalmente una imposibilidad de la circulación de trenes entre España y Francia, o al menos, obliga a un trasbordo en la frontera, con las molestias para las personas y los sobrecostes y retrasos para las mercancías. Una vez la red de alta velocidad llegó  hasta la frontera francesa con la LAV Barcelona-Frontera Francesa, inaugurada en enero de 2013, el problema de esa “frontera ferroviaria” se ha mitigado, pero sólo hasta Barcelona. Siendo casi todas las LAV exclusivas para tráfico de viajeros (excepto la Barcelona-Frontera Francesa, que está diseñada para viajeros y mercancías), los exiguos tráficos de mercancías han quedado consagrados a las líneas convencionales, en ancho ibérico. Esto constituye un problema importante, ya que, aunque algunos trenes de pasajeros pueden cambiar de ancho automáticamente entre LAV y red convencional, los vagones de mercancías no disponen de esa tecnología por falta de interés económico.&lt;br /&gt;
&lt;br /&gt;
Es por esto que, en el año 2012, el Ministerio de Fomento lanza un ambicioso plan para la extensión del ancho internacional/europeo por el Corredor Mediterráneo, desde Barcelona hasta Murcia. Gran parte de esta adaptación se centra en convertir las vías de ancho convencional en vías de ancho mixto (convencional y europeo), mediante la inclusión de un tercer carril. Sin embargo, en 2014, decidió dar carpetazo al asunto, volviendo a una solución mixta sin continuidad del ancho internacional. El objetivo de este trabajo es analizar el plan de 2012 de Fomento, y ver si con un ancho UIC continuo hasta Algeciras por la fachada mediterránea, sería suficiente con la instalación de ancho UIC en la red actual, o si, por el contrario, sería necesario un desdoblamiento para absorber la demanda.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Metodología ==&lt;br /&gt;
Para la realización de este trabajo se ha empleado el mapa MTN200, obtenido del Centro de Descargas del Instituto Geográfico Nacional, que representa la totalidad de España. A continuación se ha digitalizado cada provincia, creando archivos vectoriales, agrupándolas más tarde para simplificar la representación en 4 zonas:&lt;br /&gt;
&lt;br /&gt;
*Zona I: Gerona, Barcelona y Tarragona. &lt;br /&gt;
*Zona II: Castellón y Valencia.&lt;br /&gt;
*Zona III: Alicante, Murcia y Almería. &lt;br /&gt;
*Zona IV: Granada, Málaga y Cádiz.&lt;br /&gt;
&lt;br /&gt;
Posteriormente, hemos digitalizado la línea ferroviaria por la que circularían los tráficos captados por la extensión del ancho internacional, asignándoles tres colores en función del grado de saturación (verde si no están saturados, amarillo si están próximos a la saturación y rojos si están saturados). Además, en cada zona hemos incluido varios atributos, como la población, el PIB y la proporción de las exportaciones respecto al PIB, para posteriormente clasificar las zonas y las provincias en función de estos factores mediante escalas cromáticas. &lt;br /&gt;
Se han tomado los datos de tráfico del Estudio del Corredor Ferroviario Mediterráneo, de INECO para el Ministerio de Fomento y ADIF de marzo de 2011. De este estudio se han extraído los tráficos de mercancías, tanto por carretera como por ferrocarril, que circulan entre Europa y las diferentes zonas en las que hemos dividido el Corredor Mediterráneo, pero obviando los tráficos internos del mismo, ya que nos interesan los tráficos con Europa, por ser la implantación del ancho europeo el motivo de nuestro trabajo. Sumado a todo esto, vamos a suponer que, con esta ampliación del ancho europeo, siendo el ferrocarril el modo de transporte terrestre más barato por unidad de carga transportada en las distancias largas, se podrían captar el 80% de los tráficos actuales por carretera que realizan este recorrido hacia Francia. &lt;br /&gt;
Por último, hemos introducido el número de trenes actual en cada red que compartirían, sumando los trenes resultantes de los tráficos captados. De esta manera, podremos saber de una manera bastante ajustada a la realidad si la ampliación del ancho europeo hacia el sur por el Corredor Mediterráneo, puede utilizar las vías actuales o habría que construir una nueva plataforma expresamente para ello.&lt;br /&gt;
&lt;br /&gt;
== Resultados ==&lt;br /&gt;
Como hemos explicado antes, nuestro trabajo se basa en saber si la red actual sería capaz de absorber el aumento de tráficos que supondría la extensión del ancho europeo por el Corredor Mediterráneo. Por ello, vamos a identificar los tramos más congestionados a día de hoy, para entonces, en ellos, valorar si el aumento de trenes de mercancías es soportable o no, medido en trenes/hora. Asumimos que los trenes de mercancías deberán circular en los horarios de menor demanda, por lo que no tendremos en cuenta las horas punta para estudiar nuestro caso. Tomando las circulaciones actuales de la web de Renfe, así como las de mercancías en otros sitios web, hemos calculado el número de circulaciones diarias que soporta cada recorrido, con extremo en cada capital de provincia (excepto Motril en el caso de Granada y Algeciras en lugar de Cádiz). En la siguiente tabla, hemos indicado las circulaciones que se estiman para el año 2025, que es el año horizonte en el calcula que la extensión del ancho europeo debe de estar funcionando en su totalidad.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align:center;&amp;quot;&lt;br /&gt;
! Tramo&lt;br /&gt;
! Circulaciones/día&lt;br /&gt;
|-&lt;br /&gt;
|Frontera-Gerona||30&lt;br /&gt;
|-&lt;br /&gt;
|Gerona-Barcelona||62&lt;br /&gt;
|-&lt;br /&gt;
|Barcelona-Tarragona||168&lt;br /&gt;
|-&lt;br /&gt;
|Tarragona-Castellón||80&lt;br /&gt;
|-&lt;br /&gt;
|Castellón-Valencia||199&lt;br /&gt;
|-&lt;br /&gt;
|Valencia-Alicante||63*&lt;br /&gt;
|-&lt;br /&gt;
|Alicante-Murcia||92*&lt;br /&gt;
|-&lt;br /&gt;
|Murcia-Almería||66**&lt;br /&gt;
|-&lt;br /&gt;
|Almería-Granada||75**&lt;br /&gt;
|-&lt;br /&gt;
|Granada-Málaga||52**&lt;br /&gt;
|-&lt;br /&gt;
|Málaga-Cádiz||89**&lt;br /&gt;
|-&lt;br /&gt;
|colspan=2|''Tabla 1. Circulaciones/día en cada tramo del Corredor Mediterráneo en el horizonte 2025.''&lt;br /&gt;
|-&lt;br /&gt;
|colspan=2|''Nota:  *Sin vía; ** Sin línea existente, previsión en base a líneas con características semejantes.&lt;br /&gt;
''&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Sabemos que la extensión hacia el sur del ancho europeo hará que se incrementen las circulaciones, y para saber si la red actual puede soportarlo, tenemos que ver cuál es el tramo más saturado considerando también esas nuevas circulaciones. Sin embargo el incremento en esas circulaciones variará en función de la situación del mismo: no serán igual en la frontera francesa que en el tramo Murcia-Alicante.&lt;br /&gt;
&lt;br /&gt;
Ahora calculemos los trenes adicionales fruto del aumento de tráficos por la extensión del ancho europeo contando todos los tráficos, es decir, a la altura de la frontera francesa. Tenemos el tráfico de mercancías en el Corredor Mediterráneo con origen/destino Europa. Se trata en total de 25,49 millones de toneladas, de las que 23,29 se mueven por carretera y 2,2 lo hacen por ferrocarril. Tomando un peso medio por tren de 1000 t, nos da que, a día de hoy, tenemos 2.200 trenes de mercancías al año entre España y Europa. Con una captación del 70%, tendríamos que el ferrocarril pasaría a mover 23,29*0,7 + 2,2 = 18,503 millones de toneladas, lo que se traduce en 18.503 trenes al año. Suponiendo además que se distribuyen de manera uniforme a lo largo del año, tenemos que suponen un total de 51 trenes diarios. Estos cálculos los hemos tomado con los valores reales de 2007, sin embargo, para extrapolarlos al año horizonte 2025, debemos multiplicar esos valores por un 1,4, que es un valor que aproxima el aumento de la demanda de transporte para ese año. Por ello, tenemos que considerar 20.043*1,4=25.905 trenes anuales, lo que nos da 71 trenes diarios.&lt;br /&gt;
&lt;br /&gt;
Vamos a repetir este cálculo para cada uno de los tramos, siempre tomando en cuenta que cada vez ese incremento en las mercancías captadas y por lo tanto en nuevos tráficos generados es menor. Los resultados son los siguientes:&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align:center;&amp;quot;&lt;br /&gt;
! Tramo&lt;br /&gt;
! Δ circulaciones/día&lt;br /&gt;
|-&lt;br /&gt;
|Frontera-Gerona||71&lt;br /&gt;
|-&lt;br /&gt;
|Gerona-Barcelona||68&lt;br /&gt;
|-&lt;br /&gt;
|Barcelona-Tarragona||46&lt;br /&gt;
|-&lt;br /&gt;
|Tarragona-Castellón||37&lt;br /&gt;
|-&lt;br /&gt;
|Castellón-Valencia||30&lt;br /&gt;
|-&lt;br /&gt;
|Valencia-Alicante||19&lt;br /&gt;
|-&lt;br /&gt;
|Alicante-Murcia||14&lt;br /&gt;
|-&lt;br /&gt;
|Murcia-Almería||9&lt;br /&gt;
|-&lt;br /&gt;
|Almería-Granada||6&lt;br /&gt;
|-&lt;br /&gt;
|Granada-Málaga||3&lt;br /&gt;
|-&lt;br /&gt;
|Málaga-Cádiz||2&lt;br /&gt;
|-&lt;br /&gt;
|colspan=2|''Tabla 2.  Incremento de las circulaciones en cada tramo, fruto de la captación de nuevos tráficos.''&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
	&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Sumando estos valores a los anteriores, tenemos que las circulaciones/día en total son:&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align:center;&amp;quot; &lt;br /&gt;
! Tramo&lt;br /&gt;
! Circulaciones/día totales&lt;br /&gt;
|-&lt;br /&gt;
|Frontera-Gerona|| bgcolor=&amp;quot;LawnGreen&amp;quot; colspan=1 | 101&lt;br /&gt;
|-&lt;br /&gt;
|Gerona-Barcelona||bgcolor=&amp;quot;LawnGreen&amp;quot; colspan=1 |130&lt;br /&gt;
|-&lt;br /&gt;
|Barcelona-Tarragona||bgcolor=&amp;quot;Yellow&amp;quot; colspan=1 |214&lt;br /&gt;
|-&lt;br /&gt;
|Tarragona-Castellón||bgcolor=&amp;quot;LawnGreen&amp;quot; colspan=1 |117&lt;br /&gt;
|-&lt;br /&gt;
|Castellón-Valencia||bgcolor=&amp;quot;Yellow&amp;quot; colspan=1 |229&lt;br /&gt;
|-&lt;br /&gt;
|Valencia-Alicante||bgcolor=&amp;quot;Tomato&amp;quot; colspan=1 |82*&lt;br /&gt;
|-&lt;br /&gt;
|Alicante-Murcia||bgcolor=&amp;quot;Tomato&amp;quot; colspan=1 |106*&lt;br /&gt;
|-&lt;br /&gt;
|Murcia-Almería||bgcolor=&amp;quot;LawnGreen&amp;quot; colspan=1 |75**&lt;br /&gt;
|-&lt;br /&gt;
|Almería-Granada||bgcolor=&amp;quot;LawnGreen&amp;quot; colspan=1 |81**&lt;br /&gt;
|-&lt;br /&gt;
|Granada-Málaga||bgcolor=&amp;quot;LawnGreen&amp;quot; colspan=1 |55**&lt;br /&gt;
|-&lt;br /&gt;
|Málaga-Cádiz||bgcolor=&amp;quot;LawnGreen&amp;quot; colspan=1 |91**&lt;br /&gt;
|-&lt;br /&gt;
|colspan=2|''Tabla 3. Resultados de circulaciones totales.''&lt;br /&gt;
|-&lt;br /&gt;
|colspan=2|''Nota 1:  *Sin vía; ** Sin línea existente, previsión en base a líneas con características semejantes.''&lt;br /&gt;
|-&lt;br /&gt;
|colspan=2|''Nota 2:  En verde, tramos no saturados. En amarillo, tramos cercanos a la saturación. En rojo, tramos saturados.''&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Tomando valores propios de explotación ferroviaria, sabemos que las líneas de vía doble empiezan a tener problemas de capacidad a partir de las 200 circulaciones diarias, llegando a la saturación con valores de 280-300 circulaciones/día, por lo que vemos que en los tramos Barcelona-Tarragona y Castellón-Valencia tendríamos falta de capacidad, sobre todo en horas punta, pero sin llegar a la saturación. En el caso del tramo Alicante-Murcia, las 106 circulaciones/día sí que colapsarían nuestra línea, al ser de vía única, cuyo límite de saturación está entre las 70 y 80 circulaciones diarias. Esto también ocurriría en el tramo Valencia-Alicante.&lt;br /&gt;
&lt;br /&gt;
== Conclusiones ==&lt;br /&gt;
&lt;br /&gt;
== Anejos ==&lt;br /&gt;
&lt;br /&gt;
Se pueden adjuntar archivos usando el enlace ''Subir archivo'' que aparece a la izquierda.&lt;br /&gt;
&lt;br /&gt;
[[Categoría:Sistemas de Información Geográfica Aplicados a la Ingeniería Civil]]&lt;br /&gt;
[[Categoría:SIGAIC_16/17]]&lt;/div&gt;</summary>
		<author><name>Javier Ruiz de Galarreta López</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=An%C3%A1lisis_sobre_la_viabilidad_de_la_ampliaci%C3%B3n_del_ancho_de_v%C3%ADa_internacional_en_el_Corredor_Mediterr%C3%A1neo_a_trav%C3%A9s_de_las_l%C3%ADneas_actuales&amp;diff=39971</id>
		<title>Análisis sobre la viabilidad de la ampliación del ancho de vía internacional en el Corredor Mediterráneo a través de las líneas actuales</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=An%C3%A1lisis_sobre_la_viabilidad_de_la_ampliaci%C3%B3n_del_ancho_de_v%C3%ADa_internacional_en_el_Corredor_Mediterr%C3%A1neo_a_trav%C3%A9s_de_las_l%C3%ADneas_actuales&amp;diff=39971"/>
				<updated>2017-05-25T11:08:36Z</updated>
		
		<summary type="html">&lt;p&gt;Javier Ruiz de Galarreta López: /* Resultados */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{ TrabajoSIG | Análisis sobre la viabilidad de la ampliación del ancho de vía internacional en el Corredor Mediterráneo a través de las líneas actuales | Joaquín Sánchez Molina (396) Leoni Koch (698) Javier Ruiz de Galarreta López (1566)| [[:Categoría:SIGAIC_16/17|Curso 16/17]] }}&lt;br /&gt;
&lt;br /&gt;
El Corredor Ferroviario Mediterráneo discurre actualmente desde la frontera francesa hasta Murcia, ampliándose en el futuro hasta Algeciras. Debido al ancho de vía español, diferente al ancho internacional instalado mayoritariamente en Europa, los trenes no pueden circular de manera directa entre Europa y España. En diciembre de 2012, el Ministerio de Fomento propuso un plan para extender ese ancho europeo hacia el sur, hasta Algeciras, aunque dos años después lo desestimó. &lt;br /&gt;
&lt;br /&gt;
Nuestro trabajo consistirá en cuantificar el aumento de demanda de esa extensión del ancho europeo entre la frontera y Algeciras, buscando cuellos de botella y puntos de congestión como consecuencia de los nuevos tráficos captados, para cuantificar la necesidad o no de ampliaciones de capacidad de la red. Hemos utilizado datos del Ministerio de Fomento y ADIF, plasmándolos más tarde en SIG, incluyendo a su vez la población y el PIB de cada provincia, para ver de manera más gráfica la distribución de tráficos en el área. El año horizonte para el que hemos calculado estos tráficos es el 2025, pero este modelo debe irse actualizando en función de la demanda real de transporte que exista en el Corredor. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Palabras clave: ancho europeo, Corredor Mediterráneo, tren de mercancías, exportaciones, importaciones.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Introducción ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Como es sabido por todo aquel interesado en el ámbito ferroviario, en España, el ancho de vía es diferente al ancho de vía de Francia, Alemania y el resto de países de Europa Central y Occidental, a excepción de Portugal e Irlanda. Esto ha constituido desde el siglo XIX una enorme oportunidad perdida para revertir la situación de aislamiento geográfico que siempre ha tenido España por su condición periférica en Europa. Con la llegada de la Alta Velocidad el 1992 con la línea Madrid-Sevilla, se decidió la utilización del ancho europeo o internacional para ir comenzando un progresivo cambio de ancho de la red. Desde esa fecha, todas las líneas de alta velocidad (LAV) se han construido en ancho internacional, generando problemas de “frontera ferroviaria” a la hora de la conexión con la red convencional, en ancho ibérico.&lt;br /&gt;
&lt;br /&gt;
Esto ha supuesto tradicionalmente una imposibilidad de la circulación de trenes entre España y Francia, o al menos, obliga a un trasbordo en la frontera, con las molestias para las personas y los sobrecostes y retrasos para las mercancías. Una vez la red de alta velocidad llegó  hasta la frontera francesa con la LAV Barcelona-Frontera Francesa, inaugurada en enero de 2013, el problema de esa “frontera ferroviaria” se ha mitigado, pero sólo hasta Barcelona. Siendo casi todas las LAV exclusivas para tráfico de viajeros (excepto la Barcelona-Frontera Francesa, que está diseñada para viajeros y mercancías), los exiguos tráficos de mercancías han quedado consagrados a las líneas convencionales, en ancho ibérico. Esto constituye un problema importante, ya que, aunque algunos trenes de pasajeros pueden cambiar de ancho automáticamente entre LAV y red convencional, los vagones de mercancías no disponen de esa tecnología por falta de interés económico.&lt;br /&gt;
&lt;br /&gt;
Es por esto que, en el año 2012, el Ministerio de Fomento lanza un ambicioso plan para la extensión del ancho internacional/europeo por el Corredor Mediterráneo, desde Barcelona hasta Murcia. Gran parte de esta adaptación se centra en convertir las vías de ancho convencional en vías de ancho mixto (convencional y europeo), mediante la inclusión de un tercer carril. Sin embargo, en 2014, decidió dar carpetazo al asunto, volviendo a una solución mixta sin continuidad del ancho internacional. El objetivo de este trabajo es analizar el plan de 2012 de Fomento, y ver si con un ancho UIC continuo hasta Algeciras por la fachada mediterránea, sería suficiente con la instalación de ancho UIC en la red actual, o si, por el contrario, sería necesario un desdoblamiento para absorber la demanda.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Metodología ==&lt;br /&gt;
Para la realización de este trabajo se ha empleado el mapa MTN200, obtenido del Centro de Descargas del Instituto Geográfico Nacional, que representa la totalidad de España. A continuación se ha digitalizado cada provincia, creando archivos vectoriales, agrupándolas más tarde para simplificar la representación en 4 zonas:&lt;br /&gt;
&lt;br /&gt;
*Zona I: Gerona, Barcelona y Tarragona. &lt;br /&gt;
*Zona II: Castellón y Valencia.&lt;br /&gt;
*Zona III: Alicante, Murcia y Almería. &lt;br /&gt;
*Zona IV: Granada, Málaga y Cádiz.&lt;br /&gt;
&lt;br /&gt;
Posteriormente, hemos digitalizado la línea ferroviaria por la que circularían los tráficos captados por la extensión del ancho internacional, asignándoles tres colores en función del grado de saturación (verde si no están saturados, amarillo si están próximos a la saturación y rojos si están saturados). Además, en cada zona hemos incluido varios atributos, como la población, el PIB y la proporción de las exportaciones respecto al PIB, para posteriormente clasificar las zonas y las provincias en función de estos factores mediante escalas cromáticas. &lt;br /&gt;
Se han tomado los datos de tráfico del Estudio del Corredor Ferroviario Mediterráneo, de INECO para el Ministerio de Fomento y ADIF de marzo de 2011. De este estudio se han extraído los tráficos de mercancías, tanto por carretera como por ferrocarril, que circulan entre Europa y las diferentes zonas en las que hemos dividido el Corredor Mediterráneo, pero obviando los tráficos internos del mismo, ya que nos interesan los tráficos con Europa, por ser la implantación del ancho europeo el motivo de nuestro trabajo. Sumado a todo esto, vamos a suponer que, con esta ampliación del ancho europeo, siendo el ferrocarril el modo de transporte terrestre más barato por unidad de carga transportada en las distancias largas, se podrían captar el 80% de los tráficos actuales por carretera que realizan este recorrido hacia Francia. &lt;br /&gt;
Por último, hemos introducido el número de trenes actual en cada red que compartirían, sumando los trenes resultantes de los tráficos captados. De esta manera, podremos saber de una manera bastante ajustada a la realidad si la ampliación del ancho europeo hacia el sur por el Corredor Mediterráneo, puede utilizar las vías actuales o habría que construir una nueva plataforma expresamente para ello.&lt;br /&gt;
&lt;br /&gt;
== Resultados ==&lt;br /&gt;
Como hemos explicado antes, nuestro trabajo se basa en saber si la red actual sería capaz de absorber el aumento de tráficos que supondría la extensión del ancho europeo por el Corredor Mediterráneo. Por ello, vamos a identificar los tramos más congestionados a día de hoy, para entonces, en ellos, valorar si el aumento de trenes de mercancías es soportable o no, medido en trenes/hora. Asumimos que los trenes de mercancías deberán circular en los horarios de menor demanda, por lo que no tendremos en cuenta las horas punta para estudiar nuestro caso. Tomando las circulaciones actuales de la web de Renfe, así como las de mercancías en otros sitios web, hemos calculado el número de circulaciones diarias que soporta cada recorrido, con extremo en cada capital de provincia (excepto Motril en el caso de Granada y Algeciras en lugar de Cádiz). En la siguiente tabla, hemos indicado las circulaciones que se estiman para el año 2025, que es el año horizonte en el calcula que la extensión del ancho europeo debe de estar funcionando en su totalidad.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align:center;&amp;quot;&lt;br /&gt;
! Tramo&lt;br /&gt;
! Circulaciones/día&lt;br /&gt;
|-&lt;br /&gt;
|Frontera-Gerona||30&lt;br /&gt;
|-&lt;br /&gt;
|Gerona-Barcelona||62&lt;br /&gt;
|-&lt;br /&gt;
|Barcelona-Tarragona||168&lt;br /&gt;
|-&lt;br /&gt;
|Tarragona-Castellón||80&lt;br /&gt;
|-&lt;br /&gt;
|Castellón-Valencia||199&lt;br /&gt;
|-&lt;br /&gt;
|Valencia-Alicante||63*&lt;br /&gt;
|-&lt;br /&gt;
|Alicante-Murcia||92*&lt;br /&gt;
|-&lt;br /&gt;
|Murcia-Almería||66**&lt;br /&gt;
|-&lt;br /&gt;
|Almería-Granada||75**&lt;br /&gt;
|-&lt;br /&gt;
|Granada-Málaga||52**&lt;br /&gt;
|-&lt;br /&gt;
|Málaga-Cádiz||89**&lt;br /&gt;
|-&lt;br /&gt;
|colspan=2|''Tabla 1. Circulaciones/día en cada tramo del Corredor Mediterráneo en el horizonte 2025.''&lt;br /&gt;
|-&lt;br /&gt;
|colspan=2|''Nota:  *Sin vía; ** Sin línea existente, previsión en base a líneas con características semejantes.&lt;br /&gt;
''&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Sabemos que la extensión hacia el sur del ancho europeo hará que se incrementen las circulaciones, y para saber si la red actual puede soportarlo, tenemos que ver cuál es el tramo más saturado considerando también esas nuevas circulaciones. Sin embargo el incremento en esas circulaciones variará en función de la situación del mismo: no serán igual en la frontera francesa que en el tramo Murcia-Alicante.&lt;br /&gt;
&lt;br /&gt;
Ahora calculemos los trenes adicionales fruto del aumento de tráficos por la extensión del ancho europeo contando todos los tráficos, es decir, a la altura de la frontera francesa. Tenemos el tráfico de mercancías en el Corredor Mediterráneo con origen/destino Europa. Se trata en total de 25,49 millones de toneladas, de las que 23,29 se mueven por carretera y 2,2 lo hacen por ferrocarril. Tomando un peso medio por tren de 1000 t, nos da que, a día de hoy, tenemos 2.200 trenes de mercancías al año entre España y Europa. Con una captación del 70%, tendríamos que el ferrocarril pasaría a mover 23,29*0,7 + 2,2 = 18,503 millones de toneladas, lo que se traduce en 18.503 trenes al año. Suponiendo además que se distribuyen de manera uniforme a lo largo del año, tenemos que suponen un total de 51 trenes diarios. Estos cálculos los hemos tomado con los valores reales de 2007, sin embargo, para extrapolarlos al año horizonte 2025, debemos multiplicar esos valores por un 1,4, que es un valor que aproxima el aumento de la demanda de transporte para ese año. Por ello, tenemos que considerar 20.043*1,4=25.905 trenes anuales, lo que nos da 71 trenes diarios.&lt;br /&gt;
&lt;br /&gt;
Vamos a repetir este cálculo para cada uno de los tramos, siempre tomando en cuenta que cada vez ese incremento en las mercancías captadas y por lo tanto en nuevos tráficos generados es menor. Los resultados son los siguientes:&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align:center;&amp;quot;&lt;br /&gt;
! Tramo&lt;br /&gt;
! Δ circulaciones/día&lt;br /&gt;
|-&lt;br /&gt;
|Frontera-Gerona||71&lt;br /&gt;
|-&lt;br /&gt;
|Gerona-Barcelona||68&lt;br /&gt;
|-&lt;br /&gt;
|Barcelona-Tarragona||46&lt;br /&gt;
|-&lt;br /&gt;
|Tarragona-Castellón||37&lt;br /&gt;
|-&lt;br /&gt;
|Castellón-Valencia||30&lt;br /&gt;
|-&lt;br /&gt;
|Valencia-Alicante||19&lt;br /&gt;
|-&lt;br /&gt;
|Alicante-Murcia||14&lt;br /&gt;
|-&lt;br /&gt;
|Murcia-Almería||9&lt;br /&gt;
|-&lt;br /&gt;
|Almería-Granada||6&lt;br /&gt;
|-&lt;br /&gt;
|Granada-Málaga||3&lt;br /&gt;
|-&lt;br /&gt;
|Málaga-Cádiz||2&lt;br /&gt;
|-&lt;br /&gt;
|colspan=2|''Tabla 2.  Incremento de las circulaciones en cada tramo, fruto de la captación de nuevos tráficos.''&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
	&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Sumando estos valores a los anteriores, tenemos que las circulaciones/día en total son:&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align:center;&amp;quot;&lt;br /&gt;
! Tramo&lt;br /&gt;
! Circulaciones/día totales&lt;br /&gt;
|-&lt;br /&gt;
|Frontera-Gerona||101&lt;br /&gt;
|-&lt;br /&gt;
|Gerona-Barcelona||130&lt;br /&gt;
|-&lt;br /&gt;
|Barcelona-Tarragona||214&lt;br /&gt;
|-&lt;br /&gt;
|Tarragona-Castellón||117&lt;br /&gt;
|-&lt;br /&gt;
|Castellón-Valencia||229&lt;br /&gt;
|-&lt;br /&gt;
|Valencia-Alicante||82*&lt;br /&gt;
|-&lt;br /&gt;
|Alicante-Murcia||106*&lt;br /&gt;
|-&lt;br /&gt;
|Murcia-Almería||75**&lt;br /&gt;
|-&lt;br /&gt;
|Almería-Granada||81**&lt;br /&gt;
|-&lt;br /&gt;
|Granada-Málaga||55**&lt;br /&gt;
|-&lt;br /&gt;
|Málaga-Cádiz||91**&lt;br /&gt;
|-&lt;br /&gt;
|colspan=2|''Tabla 3. Resultados de circulaciones totales.''&lt;br /&gt;
|-&lt;br /&gt;
|colspan=2|''Nota 1:  *Sin vía; ** Sin línea existente, previsión en base a líneas con características semejantes.''&lt;br /&gt;
|-&lt;br /&gt;
|colspan=2|''Nota 2:  En verde, tramos no saturados. En amarillo, tramos cercanos a la saturación. En rojo, tramos saturados.''&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Nota:  *Sin vía; ** Sin línea existente, previsión en base a líneas con características semejantes.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Tomando valores propios de explotación ferroviaria, sabemos que las líneas de vía doble empiezan a tener problemas de capacidad a partir de las 200 circulaciones diarias, llegando a la saturación con valores de 280-300 circulaciones/día, por lo que vemos que en los tramos Barcelona-Tarragona y Castellón-Valencia tendríamos falta de capacidad, sobre todo en horas punta, pero sin llegar a la saturación. En el caso del tramo Alicante-Murcia, las 106 circulaciones/día sí que colapsarían nuestra línea, al ser de vía única, cuyo límite de saturación está entre las 70 y 80 circulaciones diarias. Esto también pasaría en el tramo Valencia-Alicante.&lt;br /&gt;
&lt;br /&gt;
== Conclusiones ==&lt;br /&gt;
&lt;br /&gt;
== Anejos ==&lt;br /&gt;
&lt;br /&gt;
Se pueden adjuntar archivos usando el enlace ''Subir archivo'' que aparece a la izquierda.&lt;br /&gt;
&lt;br /&gt;
[[Categoría:Sistemas de Información Geográfica Aplicados a la Ingeniería Civil]]&lt;br /&gt;
[[Categoría:SIGAIC_16/17]]&lt;/div&gt;</summary>
		<author><name>Javier Ruiz de Galarreta López</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=An%C3%A1lisis_sobre_la_viabilidad_de_la_ampliaci%C3%B3n_del_ancho_de_v%C3%ADa_internacional_en_el_Corredor_Mediterr%C3%A1neo_a_trav%C3%A9s_de_las_l%C3%ADneas_actuales&amp;diff=39970</id>
		<title>Análisis sobre la viabilidad de la ampliación del ancho de vía internacional en el Corredor Mediterráneo a través de las líneas actuales</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=An%C3%A1lisis_sobre_la_viabilidad_de_la_ampliaci%C3%B3n_del_ancho_de_v%C3%ADa_internacional_en_el_Corredor_Mediterr%C3%A1neo_a_trav%C3%A9s_de_las_l%C3%ADneas_actuales&amp;diff=39970"/>
				<updated>2017-05-25T10:51:27Z</updated>
		
		<summary type="html">&lt;p&gt;Javier Ruiz de Galarreta López: /* Resultados */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{ TrabajoSIG | Análisis sobre la viabilidad de la ampliación del ancho de vía internacional en el Corredor Mediterráneo a través de las líneas actuales | Joaquín Sánchez Molina (396) Leoni Koch (698) Javier Ruiz de Galarreta López (1566)| [[:Categoría:SIGAIC_16/17|Curso 16/17]] }}&lt;br /&gt;
&lt;br /&gt;
El Corredor Ferroviario Mediterráneo discurre actualmente desde la frontera francesa hasta Murcia, ampliándose en el futuro hasta Algeciras. Debido al ancho de vía español, diferente al ancho internacional instalado mayoritariamente en Europa, los trenes no pueden circular de manera directa entre Europa y España. En diciembre de 2012, el Ministerio de Fomento propuso un plan para extender ese ancho europeo hacia el sur, hasta Algeciras, aunque dos años después lo desestimó. &lt;br /&gt;
&lt;br /&gt;
Nuestro trabajo consistirá en cuantificar el aumento de demanda de esa extensión del ancho europeo entre la frontera y Algeciras, buscando cuellos de botella y puntos de congestión como consecuencia de los nuevos tráficos captados, para cuantificar la necesidad o no de ampliaciones de capacidad de la red. Hemos utilizado datos del Ministerio de Fomento y ADIF, plasmándolos más tarde en SIG, incluyendo a su vez la población y el PIB de cada provincia, para ver de manera más gráfica la distribución de tráficos en el área. El año horizonte para el que hemos calculado estos tráficos es el 2025, pero este modelo debe irse actualizando en función de la demanda real de transporte que exista en el Corredor. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Palabras clave: ancho europeo, Corredor Mediterráneo, tren de mercancías, exportaciones, importaciones.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Introducción ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Como es sabido por todo aquel interesado en el ámbito ferroviario, en España, el ancho de vía es diferente al ancho de vía de Francia, Alemania y el resto de países de Europa Central y Occidental, a excepción de Portugal e Irlanda. Esto ha constituido desde el siglo XIX una enorme oportunidad perdida para revertir la situación de aislamiento geográfico que siempre ha tenido España por su condición periférica en Europa. Con la llegada de la Alta Velocidad el 1992 con la línea Madrid-Sevilla, se decidió la utilización del ancho europeo o internacional para ir comenzando un progresivo cambio de ancho de la red. Desde esa fecha, todas las líneas de alta velocidad (LAV) se han construido en ancho internacional, generando problemas de “frontera ferroviaria” a la hora de la conexión con la red convencional, en ancho ibérico.&lt;br /&gt;
&lt;br /&gt;
Esto ha supuesto tradicionalmente una imposibilidad de la circulación de trenes entre España y Francia, o al menos, obliga a un trasbordo en la frontera, con las molestias para las personas y los sobrecostes y retrasos para las mercancías. Una vez la red de alta velocidad llegó  hasta la frontera francesa con la LAV Barcelona-Frontera Francesa, inaugurada en enero de 2013, el problema de esa “frontera ferroviaria” se ha mitigado, pero sólo hasta Barcelona. Siendo casi todas las LAV exclusivas para tráfico de viajeros (excepto la Barcelona-Frontera Francesa, que está diseñada para viajeros y mercancías), los exiguos tráficos de mercancías han quedado consagrados a las líneas convencionales, en ancho ibérico. Esto constituye un problema importante, ya que, aunque algunos trenes de pasajeros pueden cambiar de ancho automáticamente entre LAV y red convencional, los vagones de mercancías no disponen de esa tecnología por falta de interés económico.&lt;br /&gt;
&lt;br /&gt;
Es por esto que, en el año 2012, el Ministerio de Fomento lanza un ambicioso plan para la extensión del ancho internacional/europeo por el Corredor Mediterráneo, desde Barcelona hasta Murcia. Gran parte de esta adaptación se centra en convertir las vías de ancho convencional en vías de ancho mixto (convencional y europeo), mediante la inclusión de un tercer carril. Sin embargo, en 2014, decidió dar carpetazo al asunto, volviendo a una solución mixta sin continuidad del ancho internacional. El objetivo de este trabajo es analizar el plan de 2012 de Fomento, y ver si con un ancho UIC continuo hasta Algeciras por la fachada mediterránea, sería suficiente con la instalación de ancho UIC en la red actual, o si, por el contrario, sería necesario un desdoblamiento para absorber la demanda.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Metodología ==&lt;br /&gt;
Para la realización de este trabajo se ha empleado el mapa MTN200, obtenido del Centro de Descargas del Instituto Geográfico Nacional, que representa la totalidad de España. A continuación se ha digitalizado cada provincia, creando archivos vectoriales, agrupándolas más tarde para simplificar la representación en 4 zonas:&lt;br /&gt;
&lt;br /&gt;
*Zona I: Gerona, Barcelona y Tarragona. &lt;br /&gt;
*Zona II: Castellón y Valencia.&lt;br /&gt;
*Zona III: Alicante, Murcia y Almería. &lt;br /&gt;
*Zona IV: Granada, Málaga y Cádiz.&lt;br /&gt;
&lt;br /&gt;
Posteriormente, hemos digitalizado la línea ferroviaria por la que circularían los tráficos captados por la extensión del ancho internacional, asignándoles tres colores en función del grado de saturación (verde si no están saturados, amarillo si están próximos a la saturación y rojos si están saturados). Además, en cada zona hemos incluido varios atributos, como la población, el PIB y la proporción de las exportaciones respecto al PIB, para posteriormente clasificar las zonas y las provincias en función de estos factores mediante escalas cromáticas. &lt;br /&gt;
Se han tomado los datos de tráfico del Estudio del Corredor Ferroviario Mediterráneo, de INECO para el Ministerio de Fomento y ADIF de marzo de 2011. De este estudio se han extraído los tráficos de mercancías, tanto por carretera como por ferrocarril, que circulan entre Europa y las diferentes zonas en las que hemos dividido el Corredor Mediterráneo, pero obviando los tráficos internos del mismo, ya que nos interesan los tráficos con Europa, por ser la implantación del ancho europeo el motivo de nuestro trabajo. Sumado a todo esto, vamos a suponer que, con esta ampliación del ancho europeo, siendo el ferrocarril el modo de transporte terrestre más barato por unidad de carga transportada en las distancias largas, se podrían captar el 80% de los tráficos actuales por carretera que realizan este recorrido hacia Francia. &lt;br /&gt;
Por último, hemos introducido el número de trenes actual en cada red que compartirían, sumando los trenes resultantes de los tráficos captados. De esta manera, podremos saber de una manera bastante ajustada a la realidad si la ampliación del ancho europeo hacia el sur por el Corredor Mediterráneo, puede utilizar las vías actuales o habría que construir una nueva plataforma expresamente para ello.&lt;br /&gt;
&lt;br /&gt;
== Resultados ==&lt;br /&gt;
Como hemos explicado antes, nuestro trabajo se basa en saber si la red actual sería capaz de absorber el aumento de tráficos que supondría la extensión del ancho europeo por el Corredor Mediterráneo. Por ello, vamos a identificar los tramos más congestionados a día de hoy, para entonces, en ellos, valorar si el aumento de trenes de mercancías es soportable o no, medido en trenes/hora. Asumimos que los trenes de mercancías deberán circular en los horarios de menor demanda, por lo que no tendremos en cuenta las horas punta para estudiar nuestro caso. Tomando las circulaciones actuales de la web de Renfe, así como las de mercancías en otros sitios web, hemos calculado el número de circulaciones diarias que soporta cada recorrido, con extremo en cada capital de provincia (excepto Motril en el caso de Granada y Algeciras en lugar de Cádiz). En la siguiente tabla, hemos indicado las circulaciones que se estiman para el año 2025, que es el año horizonte en el calcula que la extensión del ancho europeo debe de estar funcionando en su totalidad.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! Tramo&lt;br /&gt;
! Circulaciones/día&lt;br /&gt;
|-&lt;br /&gt;
|Frontera-Gerona||30&lt;br /&gt;
|-&lt;br /&gt;
|Gerona-Barcelona||62&lt;br /&gt;
|-&lt;br /&gt;
|Barcelona-Tarragona||168&lt;br /&gt;
|-&lt;br /&gt;
|Tarragona-Castellón||80&lt;br /&gt;
|-&lt;br /&gt;
|Castellón-Valencia||199&lt;br /&gt;
|-&lt;br /&gt;
|Valencia-Alicante||63*&lt;br /&gt;
|-&lt;br /&gt;
|Alicante-Murcia||92*&lt;br /&gt;
|-&lt;br /&gt;
|Murcia-Almería||66**&lt;br /&gt;
|-&lt;br /&gt;
|Almería-Granada||75**&lt;br /&gt;
|-&lt;br /&gt;
|Granada-Málaga||52**&lt;br /&gt;
|-&lt;br /&gt;
|Málaga-Cádiz||89**&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Tabla 1. Circulaciones/día en cada tramo del Corredor Mediterráneo en el horizonte 2025.&lt;br /&gt;
Nota:  *Sin vía; ** Sin línea existente, previsión en base a líneas con características semejantes&lt;br /&gt;
&lt;br /&gt;
Sabemos que la extensión hacia el sur del ancho europeo hará que se incrementen las circulaciones, y para saber si la red actual puede soportarlo, tenemos que ver cuál es el tramo más saturado considerando también esas nuevas circulaciones. Sin embargo el incremento en esas circulaciones variará en función de la situación del mismo: no serán igual en la frontera francesa que en el tramo Murcia-Alicante.&lt;br /&gt;
&lt;br /&gt;
Ahora calculemos los trenes adicionales fruto del aumento de tráficos por la extensión del ancho europeo contando todos los tráficos, es decir, a la altura de la frontera francesa. Tenemos el tráfico de mercancías en el Corredor Mediterráneo con origen/destino Europa. Se trata en total de 25,49 millones de toneladas, de las que 23,29 se mueven por carretera y 2,2 lo hacen por ferrocarril. Tomando un peso medio por tren de 1000 t, nos da que, a día de hoy, tenemos 2.200 trenes de mercancías al año entre España y Europa. Con una captación del 70%, tendríamos que el ferrocarril pasaría a mover 23,29*0,7 + 2,2 = 18,503 millones de toneladas, lo que se traduce en 18.503 trenes al año. Suponiendo además que se distribuyen de manera uniforme a lo largo del año, tenemos que suponen un total de 51 trenes diarios. Estos cálculos los hemos tomado con los valores reales de 2007, sin embargo, para extrapolarlos al año horizonte 2025, debemos multiplicar esos valores por un 1,4, que es un valor que aproxima el aumento de la demanda de transporte para ese año. Por ello, tenemos que considerar 20.043*1,4=25.905 trenes anuales, lo que nos da 71 trenes diarios.&lt;br /&gt;
&lt;br /&gt;
Vamos a repetir este cálculo para cada uno de los tramos, siempre tomando en cuenta que cada vez ese incremento en las mercancías captadas y por lo tanto en nuevos tráficos generados es menor. Los resultados son los siguientes:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Tramo	Δ circulaciones/día&lt;br /&gt;
Frontera-Gerona	71&lt;br /&gt;
Gerona-Barcelona	68&lt;br /&gt;
Barcelona-Tarragona	46&lt;br /&gt;
Tarragona-Castellón	37&lt;br /&gt;
Castellón-Valencia	30&lt;br /&gt;
Valencia-Alicante	19&lt;br /&gt;
Alicante-Murcia	14&lt;br /&gt;
Murcia-Almería	9&lt;br /&gt;
Almería-Granada	6&lt;br /&gt;
Granada-Málaga	3&lt;br /&gt;
Málaga-Cádiz	2&lt;br /&gt;
&lt;br /&gt;
Tabla 2.  Incremento de las circulaciones en cada tramo, fruto de la captación de nuevos tráficos.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Sumando estos valores a los anteriores, tenemos que las circulaciones/día en total son:&lt;br /&gt;
&lt;br /&gt;
Tramo	Circulaciones/día totales&lt;br /&gt;
Frontera-Gerona	101&lt;br /&gt;
Gerona-Barcelona	130&lt;br /&gt;
Barcelona-Tarragona	214&lt;br /&gt;
Tarragona-Castellón	117&lt;br /&gt;
Castellón-Valencia	229&lt;br /&gt;
Valencia-Alicante	82*&lt;br /&gt;
Alicante-Murcia	106*&lt;br /&gt;
Murcia-Almería	75**&lt;br /&gt;
Almería-Granada	81**&lt;br /&gt;
Granada-Málaga	55**&lt;br /&gt;
Málaga-Cádiz	91**&lt;br /&gt;
&lt;br /&gt;
Tabla 3. Resultados de circulaciones totales.&lt;br /&gt;
Nota:  *Sin vía; ** Sin línea existente, previsión en base a líneas con características semejantes.&lt;br /&gt;
En verde, tramos no saturados. En amarillo, tramos cercanos a la saturación. En rojo, tramos saturados.&lt;br /&gt;
&lt;br /&gt;
Tomando valores propios de explotación ferroviaria, sabemos que las líneas de vía doble empiezan a tener problemas de capacidad a partir de las 200 circulaciones diarias, llegando a la saturación con valores de 280-300 circulaciones/día, por lo que vemos que en los tramos Barcelona-Tarragona y Castellón-Valencia tendríamos falta de capacidad, sobre todo en horas punta, pero sin llegar a la saturación. En el caso del tramo Alicante-Murcia, las 106 circulaciones/día sí que colapsarían nuestra línea, al ser de vía única, cuyo límite de saturación está entre las 70 y 80 circulaciones diarias. Esto también pasaría en el tramo Valencia-Alicante.&lt;br /&gt;
&lt;br /&gt;
== Conclusiones ==&lt;br /&gt;
&lt;br /&gt;
== Anejos ==&lt;br /&gt;
&lt;br /&gt;
Se pueden adjuntar archivos usando el enlace ''Subir archivo'' que aparece a la izquierda.&lt;br /&gt;
&lt;br /&gt;
[[Categoría:Sistemas de Información Geográfica Aplicados a la Ingeniería Civil]]&lt;br /&gt;
[[Categoría:SIGAIC_16/17]]&lt;/div&gt;</summary>
		<author><name>Javier Ruiz de Galarreta López</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=An%C3%A1lisis_sobre_la_viabilidad_de_la_ampliaci%C3%B3n_del_ancho_de_v%C3%ADa_internacional_en_el_Corredor_Mediterr%C3%A1neo_a_trav%C3%A9s_de_las_l%C3%ADneas_actuales&amp;diff=39969</id>
		<title>Análisis sobre la viabilidad de la ampliación del ancho de vía internacional en el Corredor Mediterráneo a través de las líneas actuales</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=An%C3%A1lisis_sobre_la_viabilidad_de_la_ampliaci%C3%B3n_del_ancho_de_v%C3%ADa_internacional_en_el_Corredor_Mediterr%C3%A1neo_a_trav%C3%A9s_de_las_l%C3%ADneas_actuales&amp;diff=39969"/>
				<updated>2017-05-25T08:49:58Z</updated>
		
		<summary type="html">&lt;p&gt;Javier Ruiz de Galarreta López: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{ TrabajoSIG | Análisis sobre la viabilidad de la ampliación del ancho de vía internacional en el Corredor Mediterráneo a través de las líneas actuales | Joaquín Sánchez Molina (396) Leoni Koch (698) Javier Ruiz de Galarreta López (1566)| [[:Categoría:SIGAIC_16/17|Curso 16/17]] }}&lt;br /&gt;
&lt;br /&gt;
El Corredor Ferroviario Mediterráneo discurre actualmente desde la frontera francesa hasta Murcia, ampliándose en el futuro hasta Algeciras. Debido al ancho de vía español, diferente al ancho internacional instalado mayoritariamente en Europa, los trenes no pueden circular de manera directa entre Europa y España. En diciembre de 2012, el Ministerio de Fomento propuso un plan para extender ese ancho europeo hacia el sur, hasta Algeciras, aunque dos años después lo desestimó. &lt;br /&gt;
&lt;br /&gt;
Nuestro trabajo consistirá en cuantificar el aumento de demanda de esa extensión del ancho europeo entre la frontera y Algeciras, buscando cuellos de botella y puntos de congestión como consecuencia de los nuevos tráficos captados, para cuantificar la necesidad o no de ampliaciones de capacidad de la red. Hemos utilizado datos del Ministerio de Fomento y ADIF, plasmándolos más tarde en SIG, incluyendo a su vez la población y el PIB de cada provincia, para ver de manera más gráfica la distribución de tráficos en el área. El año horizonte para el que hemos calculado estos tráficos es el 2025, pero este modelo debe irse actualizando en función de la demanda real de transporte que exista en el Corredor. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Palabras clave: ancho europeo, Corredor Mediterráneo, tren de mercancías, exportaciones, importaciones.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Introducción ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Como es sabido por todo aquel interesado en el ámbito ferroviario, en España, el ancho de vía es diferente al ancho de vía de Francia, Alemania y el resto de países de Europa Central y Occidental, a excepción de Portugal e Irlanda. Esto ha constituido desde el siglo XIX una enorme oportunidad perdida para revertir la situación de aislamiento geográfico que siempre ha tenido España por su condición periférica en Europa. Con la llegada de la Alta Velocidad el 1992 con la línea Madrid-Sevilla, se decidió la utilización del ancho europeo o internacional para ir comenzando un progresivo cambio de ancho de la red. Desde esa fecha, todas las líneas de alta velocidad (LAV) se han construido en ancho internacional, generando problemas de “frontera ferroviaria” a la hora de la conexión con la red convencional, en ancho ibérico.&lt;br /&gt;
&lt;br /&gt;
Esto ha supuesto tradicionalmente una imposibilidad de la circulación de trenes entre España y Francia, o al menos, obliga a un trasbordo en la frontera, con las molestias para las personas y los sobrecostes y retrasos para las mercancías. Una vez la red de alta velocidad llegó  hasta la frontera francesa con la LAV Barcelona-Frontera Francesa, inaugurada en enero de 2013, el problema de esa “frontera ferroviaria” se ha mitigado, pero sólo hasta Barcelona. Siendo casi todas las LAV exclusivas para tráfico de viajeros (excepto la Barcelona-Frontera Francesa, que está diseñada para viajeros y mercancías), los exiguos tráficos de mercancías han quedado consagrados a las líneas convencionales, en ancho ibérico. Esto constituye un problema importante, ya que, aunque algunos trenes de pasajeros pueden cambiar de ancho automáticamente entre LAV y red convencional, los vagones de mercancías no disponen de esa tecnología por falta de interés económico.&lt;br /&gt;
&lt;br /&gt;
Es por esto que, en el año 2012, el Ministerio de Fomento lanza un ambicioso plan para la extensión del ancho internacional/europeo por el Corredor Mediterráneo, desde Barcelona hasta Murcia. Gran parte de esta adaptación se centra en convertir las vías de ancho convencional en vías de ancho mixto (convencional y europeo), mediante la inclusión de un tercer carril. Sin embargo, en 2014, decidió dar carpetazo al asunto, volviendo a una solución mixta sin continuidad del ancho internacional. El objetivo de este trabajo es analizar el plan de 2012 de Fomento, y ver si con un ancho UIC continuo hasta Algeciras por la fachada mediterránea, sería suficiente con la instalación de ancho UIC en la red actual, o si, por el contrario, sería necesario un desdoblamiento para absorber la demanda.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Metodología ==&lt;br /&gt;
Para la realización de este trabajo se ha empleado el mapa MTN200, obtenido del Centro de Descargas del Instituto Geográfico Nacional, que representa la totalidad de España. A continuación se ha digitalizado cada provincia, creando archivos vectoriales, agrupándolas más tarde para simplificar la representación en 4 zonas:&lt;br /&gt;
&lt;br /&gt;
*Zona I: Gerona, Barcelona y Tarragona. &lt;br /&gt;
*Zona II: Castellón y Valencia.&lt;br /&gt;
*Zona III: Alicante, Murcia y Almería. &lt;br /&gt;
*Zona IV: Granada, Málaga y Cádiz.&lt;br /&gt;
&lt;br /&gt;
Posteriormente, hemos digitalizado la línea ferroviaria por la que circularían los tráficos captados por la extensión del ancho internacional, asignándoles tres colores en función del grado de saturación (verde si no están saturados, amarillo si están próximos a la saturación y rojos si están saturados). Además, en cada zona hemos incluido varios atributos, como la población, el PIB y la proporción de las exportaciones respecto al PIB, para posteriormente clasificar las zonas y las provincias en función de estos factores mediante escalas cromáticas. &lt;br /&gt;
Se han tomado los datos de tráfico del Estudio del Corredor Ferroviario Mediterráneo, de INECO para el Ministerio de Fomento y ADIF de marzo de 2011. De este estudio se han extraído los tráficos de mercancías, tanto por carretera como por ferrocarril, que circulan entre Europa y las diferentes zonas en las que hemos dividido el Corredor Mediterráneo, pero obviando los tráficos internos del mismo, ya que nos interesan los tráficos con Europa, por ser la implantación del ancho europeo el motivo de nuestro trabajo. Sumado a todo esto, vamos a suponer que, con esta ampliación del ancho europeo, siendo el ferrocarril el modo de transporte terrestre más barato por unidad de carga transportada en las distancias largas, se podrían captar el 80% de los tráficos actuales por carretera que realizan este recorrido hacia Francia. &lt;br /&gt;
Por último, hemos introducido el número de trenes actual en cada red que compartirían, sumando los trenes resultantes de los tráficos captados. De esta manera, podremos saber de una manera bastante ajustada a la realidad si la ampliación del ancho europeo hacia el sur por el Corredor Mediterráneo, puede utilizar las vías actuales o habría que construir una nueva plataforma expresamente para ello.&lt;br /&gt;
&lt;br /&gt;
== Resultados ==&lt;br /&gt;
&lt;br /&gt;
== Conclusiones ==&lt;br /&gt;
&lt;br /&gt;
== Anejos ==&lt;br /&gt;
&lt;br /&gt;
Se pueden adjuntar archivos usando el enlace ''Subir archivo'' que aparece a la izquierda.&lt;br /&gt;
&lt;br /&gt;
[[Categoría:Sistemas de Información Geográfica Aplicados a la Ingeniería Civil]]&lt;br /&gt;
[[Categoría:SIGAIC_16/17]]&lt;/div&gt;</summary>
		<author><name>Javier Ruiz de Galarreta López</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=An%C3%A1lisis_sobre_la_viabilidad_de_la_ampliaci%C3%B3n_del_ancho_de_v%C3%ADa_internacional_en_el_Corredor_Mediterr%C3%A1neo_a_trav%C3%A9s_de_las_l%C3%ADneas_actuales&amp;diff=39968</id>
		<title>Análisis sobre la viabilidad de la ampliación del ancho de vía internacional en el Corredor Mediterráneo a través de las líneas actuales</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=An%C3%A1lisis_sobre_la_viabilidad_de_la_ampliaci%C3%B3n_del_ancho_de_v%C3%ADa_internacional_en_el_Corredor_Mediterr%C3%A1neo_a_trav%C3%A9s_de_las_l%C3%ADneas_actuales&amp;diff=39968"/>
				<updated>2017-05-25T08:04:10Z</updated>
		
		<summary type="html">&lt;p&gt;Javier Ruiz de Galarreta López: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{ TrabajoSIG | Análisis sobre la viabilidad de la ampliación del ancho de vía internacional en el Corredor Mediterráneo a través de las líneas actuales | Joaquín Sánchez Molina (396) Leoni Koch (698) Javier Ruiz de Galarreta López (1566)| [[:Categoría:SIGAIC_16/17|Curso 16/17]] }}&lt;br /&gt;
&lt;br /&gt;
Resumen máximo 300 palabras&lt;br /&gt;
&lt;br /&gt;
== Introducción ==&lt;br /&gt;
&lt;br /&gt;
== Metodología ==&lt;br /&gt;
&lt;br /&gt;
== Resultados ==&lt;br /&gt;
&lt;br /&gt;
== Conclusiones ==&lt;br /&gt;
&lt;br /&gt;
== Anejos ==&lt;br /&gt;
&lt;br /&gt;
Se pueden adjuntar archivos usando el enlace ''Subir archivo'' que aparece a la izquierda.&lt;br /&gt;
&lt;br /&gt;
[[Categoría:Sistemas de Información Geográfica Aplicados a la Ingeniería Civil]]&lt;br /&gt;
[[Categoría:SIGAIC_16/17]]&lt;/div&gt;</summary>
		<author><name>Javier Ruiz de Galarreta López</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=An%C3%A1lisis_sobre_la_viabilidad_de_la_ampliaci%C3%B3n_del_ancho_de_v%C3%ADa_internacional_en_el_Corredor_Mediterr%C3%A1neo_a_trav%C3%A9s_de_las_l%C3%ADneas_actuales&amp;diff=39806</id>
		<title>Análisis sobre la viabilidad de la ampliación del ancho de vía internacional en el Corredor Mediterráneo a través de las líneas actuales</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=An%C3%A1lisis_sobre_la_viabilidad_de_la_ampliaci%C3%B3n_del_ancho_de_v%C3%ADa_internacional_en_el_Corredor_Mediterr%C3%A1neo_a_trav%C3%A9s_de_las_l%C3%ADneas_actuales&amp;diff=39806"/>
				<updated>2017-05-23T16:15:55Z</updated>
		
		<summary type="html">&lt;p&gt;Javier Ruiz de Galarreta López: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{ TrabajoSIG | Análisis sobre la viabilidad de la ampliación del ancho de vía internacional en el Corredor Mediterráneo a través de las líneas actuales | Joaquín Sánchez Molina (396) Leoni Koch (698) Javier Ruiz de Galarreta López (1566)| [[:Categoría:SIGAIC_16/17|Curso 16/17]] }}&lt;br /&gt;
&lt;br /&gt;
Resumen máximo 300 palabras&lt;br /&gt;
&lt;br /&gt;
== Introducción ==&lt;br /&gt;
&lt;br /&gt;
== Metodología ==&lt;br /&gt;
&lt;br /&gt;
== Resultados ==&lt;br /&gt;
&lt;br /&gt;
== Conclusiones ==&lt;br /&gt;
&lt;br /&gt;
== Anejos ==&lt;br /&gt;
&lt;br /&gt;
Se pueden adjuntar archivos usando el enlace ''Subir archivo'' que aparece a la izquierda.&lt;br /&gt;
&lt;br /&gt;
[[Categoría:Sistemas de Información Geográfica Aplicados a la Ingeniería Civil]]&lt;br /&gt;
[[Categoría:SIGAIC_14/15]]&lt;/div&gt;</summary>
		<author><name>Javier Ruiz de Galarreta López</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=An%C3%A1lisis_sobre_la_viabilidad_de_la_ampliaci%C3%B3n_del_ancho_de_v%C3%ADa_internacional_en_el_Corredor_Mediterr%C3%A1neo_a_trav%C3%A9s_de_las_l%C3%ADneas_actuales&amp;diff=39805</id>
		<title>Análisis sobre la viabilidad de la ampliación del ancho de vía internacional en el Corredor Mediterráneo a través de las líneas actuales</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=An%C3%A1lisis_sobre_la_viabilidad_de_la_ampliaci%C3%B3n_del_ancho_de_v%C3%ADa_internacional_en_el_Corredor_Mediterr%C3%A1neo_a_trav%C3%A9s_de_las_l%C3%ADneas_actuales&amp;diff=39805"/>
				<updated>2017-05-23T16:12:21Z</updated>
		
		<summary type="html">&lt;p&gt;Javier Ruiz de Galarreta López: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{ TrabajoSIG | Análisis sobre la viabilidad de la ampliación del ancho de vía internacional en el Corredor Mediterráneo a través de las líneas actuales | Joaquín Sánchez Molina (396) Leoni Koch (698) Javier Ruiz de Galarreta López (1566)| [[:Categoría:SIGAIC_16/17|Curso 16/17]] }}&lt;br /&gt;
Usa el enlace ''Ver fuente'' (o ''Editar'' si has entrado con tu usuario) para ver el código wiki de esta plantilla y usarlo para tu trabajo. '''No guardes los cambios en esta plantilla'''. [[Ayuda:Crear un artículo|Crea tu propio artículo]], y copia y pega allí el código wiki. Consulta la [[Ayuda:Contenidos|ayuda]] para saber cómo añadir diferentes elementos a tu artículo. También te puedes fijar en el resto de artículos que hay en el wiki. Pero '''por favor no guardes tus cambios en los artículos de otras personas'''. En un wiki, cualquiera puede tocar cualquier artículo. Esto facilita mantener al día los contenidos, pero también quiere decir que podemos pisar sin querer otros artículos. Si queremos añadir contenido nuevo, es mejor crear un artículo nuevo. '''Puedes crear tantos artículos como quieras''', el wiki es de todos, si tienes contenidos docentes originales, puedes compartirlos en MateWiki.&lt;br /&gt;
&lt;br /&gt;
Al principio de tu artículo añade el siguiente código, para que aparezca una tabla como la que se muestra a la derecha:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&amp;lt;nowiki&amp;gt;{{ TrabajoSIG | Mi título | Nuestros nombres | [[:Categoría:SIGAIC_14/15|Curso 14/15]] }}&amp;lt;/nowiki&amp;gt;&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Al final de tu artículo, incluye el siguiente código también, para clasificar adecuadamente tu trabajo:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&amp;lt;nowiki&amp;gt;[[Categoría:SIGAIC_14/15]]&amp;lt;/nowiki&amp;gt;&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Combinado con el código de esta plantilla, tu artículo quedará clasificado en la asignatura [[:Categoría:Sistemas de Información Geográfica Aplicados a la Ingeniería Civil|Sistemas de Información Geográfica Aplicados a la Ingeniería Civil]] y en el [[:Categoría:SIGAIC_14/15|listado de trabajos de estudiantes del curso académico 14/15]].&lt;br /&gt;
&lt;br /&gt;
Usa todo el código de abajo para tener la estructura inicial del artículo.&lt;br /&gt;
&lt;br /&gt;
Resumen máximo 300 palabras&lt;br /&gt;
&lt;br /&gt;
== Introducción ==&lt;br /&gt;
&lt;br /&gt;
== Metodología ==&lt;br /&gt;
&lt;br /&gt;
== Resultados ==&lt;br /&gt;
&lt;br /&gt;
== Conclusiones ==&lt;br /&gt;
&lt;br /&gt;
== Anejos ==&lt;br /&gt;
&lt;br /&gt;
Se pueden adjuntar archivos usando el enlace ''Subir archivo'' que aparece a la izquierda.&lt;br /&gt;
&lt;br /&gt;
[[Categoría:Sistemas de Información Geográfica Aplicados a la Ingeniería Civil]]&lt;br /&gt;
[[Categoría:SIGAIC_14/15]]&lt;/div&gt;</summary>
		<author><name>Javier Ruiz de Galarreta López</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=An%C3%A1lisis_sobre_la_viabilidad_de_la_ampliaci%C3%B3n_del_ancho_de_v%C3%ADa_internacional_en_el_Corredor_Mediterr%C3%A1neo_a_trav%C3%A9s_de_las_l%C3%ADneas_actuales&amp;diff=39804</id>
		<title>Análisis sobre la viabilidad de la ampliación del ancho de vía internacional en el Corredor Mediterráneo a través de las líneas actuales</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=An%C3%A1lisis_sobre_la_viabilidad_de_la_ampliaci%C3%B3n_del_ancho_de_v%C3%ADa_internacional_en_el_Corredor_Mediterr%C3%A1neo_a_trav%C3%A9s_de_las_l%C3%ADneas_actuales&amp;diff=39804"/>
				<updated>2017-05-23T16:09:08Z</updated>
		
		<summary type="html">&lt;p&gt;Javier Ruiz de Galarreta López: Página creada con «{{ TrabajoSIG | Mi título | Nuestros nombres | Curso 14/15 }} Usa el enlace ''Ver fuente'' (o ''Editar'' si has entrado con tu usuario) para v...»&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{ TrabajoSIG | Mi título | Nuestros nombres | [[:Categoría:SIGAIC_14/15|Curso 14/15]] }}&lt;br /&gt;
Usa el enlace ''Ver fuente'' (o ''Editar'' si has entrado con tu usuario) para ver el código wiki de esta plantilla y usarlo para tu trabajo. '''No guardes los cambios en esta plantilla'''. [[Ayuda:Crear un artículo|Crea tu propio artículo]], y copia y pega allí el código wiki. Consulta la [[Ayuda:Contenidos|ayuda]] para saber cómo añadir diferentes elementos a tu artículo. También te puedes fijar en el resto de artículos que hay en el wiki. Pero '''por favor no guardes tus cambios en los artículos de otras personas'''. En un wiki, cualquiera puede tocar cualquier artículo. Esto facilita mantener al día los contenidos, pero también quiere decir que podemos pisar sin querer otros artículos. Si queremos añadir contenido nuevo, es mejor crear un artículo nuevo. '''Puedes crear tantos artículos como quieras''', el wiki es de todos, si tienes contenidos docentes originales, puedes compartirlos en MateWiki.&lt;br /&gt;
&lt;br /&gt;
Al principio de tu artículo añade el siguiente código, para que aparezca una tabla como la que se muestra a la derecha:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&amp;lt;nowiki&amp;gt;{{ TrabajoSIG | Mi título | Nuestros nombres | [[:Categoría:SIGAIC_14/15|Curso 14/15]] }}&amp;lt;/nowiki&amp;gt;&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Al final de tu artículo, incluye el siguiente código también, para clasificar adecuadamente tu trabajo:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&amp;lt;nowiki&amp;gt;[[Categoría:SIGAIC_14/15]]&amp;lt;/nowiki&amp;gt;&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Combinado con el código de esta plantilla, tu artículo quedará clasificado en la asignatura [[:Categoría:Sistemas de Información Geográfica Aplicados a la Ingeniería Civil|Sistemas de Información Geográfica Aplicados a la Ingeniería Civil]] y en el [[:Categoría:SIGAIC_14/15|listado de trabajos de estudiantes del curso académico 14/15]].&lt;br /&gt;
&lt;br /&gt;
Usa todo el código de abajo para tener la estructura inicial del artículo.&lt;br /&gt;
&lt;br /&gt;
Resumen máximo 300 palabras&lt;br /&gt;
&lt;br /&gt;
== Introducción ==&lt;br /&gt;
&lt;br /&gt;
== Metodología ==&lt;br /&gt;
&lt;br /&gt;
== Resultados ==&lt;br /&gt;
&lt;br /&gt;
== Conclusiones ==&lt;br /&gt;
&lt;br /&gt;
== Anejos ==&lt;br /&gt;
&lt;br /&gt;
Se pueden adjuntar archivos usando el enlace ''Subir archivo'' que aparece a la izquierda.&lt;br /&gt;
&lt;br /&gt;
[[Categoría:Sistemas de Información Geográfica Aplicados a la Ingeniería Civil]]&lt;br /&gt;
[[Categoría:SIGAIC_14/15]]&lt;/div&gt;</summary>
		<author><name>Javier Ruiz de Galarreta López</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Reacciones_con_autocat%C3%A1lisis._Grupo_D12&amp;diff=29269</id>
		<title>Reacciones con autocatálisis. Grupo D12</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Reacciones_con_autocat%C3%A1lisis._Grupo_D12&amp;diff=29269"/>
				<updated>2015-03-13T11:30:07Z</updated>
		
		<summary type="html">&lt;p&gt;Javier Ruiz de Galarreta López: /* Método de Euler */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{ TrabajoED | Reacciones con autocatálisis. Grupo D12 | [[:Categoría:Ecuaciones Diferenciales|Ecuaciones Diferenciales]]|[[:Categoría:ED14/15|Curso 2014-15]] | Javier Ruiz de Galarreta López, Argimiro Martínez López, Eduardo Moyano García, Alberto Rodríguez Ruiz. }}&lt;br /&gt;
&lt;br /&gt;
= Introducción: objetivos y metodología =&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
El objetivo de este trabajo es estudiar las concentraciones de los reactivos y productos de una reacción química a lo largo de la evolución en el tiempo de dicha reacción. Para ello modelizaremos el proceso empleando ecuaciones diferenciales y teniendo en cuenta la Ley de Acción de Masas y el Principio de Conservación de la materia.&lt;br /&gt;
&lt;br /&gt;
Al ser las ecuaciones y sistemas que se nos presentan de difícil resolución analítica, utilizaremos el programa informático Matlab para resolverlos mediante métodos numéricos como el de Euler, el del Trapecio, el de Runge-Kutta y el de Heun. &lt;br /&gt;
&lt;br /&gt;
Plasmaremos las soluciones en gráficos que nos permitirán dar una interpretación físico química de los resultados.&lt;br /&gt;
&lt;br /&gt;
= Reacción I =&lt;br /&gt;
&lt;br /&gt;
En primer lugar consideramos una reacción química irreversible en una solución bien mezclada, que se desarrolla para un volumen y una temperatura constantes, y en la que uno de los componentes (B, en este caso), hace de efecto catalítico.&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt; A + B →_{k1} 2B  &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Para desarrollar nuestro análisis nos apoyaremos en dos leyes físico químicas:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''Ley de acción de masas''': Enunciada por Guldberg y Waage en 1864, establece, entre otras cosas, que  la velocidad de&lt;br /&gt;
reacción es proporcional al producto de las concentraciones de los reactivos.&lt;br /&gt;
&lt;br /&gt;
'''Principio de conservación de la masa''': Establece que en una reacción química ordinaria la masa permanece constante, siendo la masa consumida de los reactivos igual a la masa obtenida de los productos. Fue elaborada independientemente por Míjail Lomonósov en 1745 y Antoine Lavoisier en 1785.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Interpretación del problema y deducción de las ecuaciones diferenciales ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Para hallar las ecuaciones diferenciales que nos describan cómo se desarrolla la reacción en el tiempo nos basaremos en las dos leyes enunciadas anteriormente. En primer lugar, definimos nuestra variable independiente como el tiempo &amp;lt;math&amp;gt;t&amp;lt;/math&amp;gt; en segundos. Las dos variables dependientes serán las concentraciones de los compuestos A y B, que denominaremos &amp;lt;math&amp;gt;x(t)&amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt;y(t)&amp;lt;/math&amp;gt;, ambas expresadas en mol/l. &lt;br /&gt;
&lt;br /&gt;
El principio de conservación de la masa expone que la suma de las concentraciones de los reactivos y los productos es constante. Esto equivale, derivando la expresión &amp;lt;math&amp;gt;x(t)+y(t)=cte&amp;lt;/math&amp;gt;, a que  desaparece tanto reactivo como producto aparece, o lo que es lo mismo, que la velocidad de aparición del producto es igual a la velocidad de desaparición (velocidad de aparición negativa) del reactivo:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;x'(t)=-y'(t)&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
La otra ecuación que necesitamos la obtenemos directamente de aplicar la Ley de acción de masas, que establece que la velocidad de la reacción (la velocidad a la que aparece el producto o desaparece el reactivo) es igual al producto de las concentraciones por una constante.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;y'(t)=k_1x(t)y(t)&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Obtención del problema de valor inicial ==&lt;br /&gt;
Una vez demostrado el origen de las ecuaciones (1) y (2) en el apartado anterior, obtendremos el problema de valor inicial (PVI) mediante las operaciones detalladas a continuación:&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;x'(t)+y'(t)=0\quad\quad(1)&amp;lt;/math&amp;gt;&lt;br /&gt;
:&amp;lt;math&amp;gt;y'(t)=k_1x(t)y(t)\quad\quad(2)&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Integrando (1) obtenemos (3):&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
:&amp;lt;math&amp;gt;\int_\mathbb{D} (\frac{dx(t)}{dt} + \frac{dy(t)}{dt})\,dt =\int_\mathbb{D} 0\,dt \quad \Rightarrow \quad x(t)+y(t)=k_2\quad \Rightarrow \quad x(t)=k_2-y(t)\quad\quad(3)&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Sustituyendo (3) en (2), obtenemos (4):&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;y'(t)=k_1x(t)y(t)\quad \Rightarrow \quad y'(t)=k_1(k_2-y(t))y(t)\quad \Rightarrow \quad y'(t)=k_1k_2y(t)-k_1y^2(t)\quad\quad(4)&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Conocemos las concentraciones iniciales de A y de B, por lo que podemos obtener el valor de la constante k&amp;lt;sub&amp;gt;2&amp;lt;/sub&amp;gt;:&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;[A]:\quad x(0)=1 mol/l;\quad\quad [B]:\quad y(0)=0,01 mol/l&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;x(t)+y(t)=k_2\quad \Rightarrow \quad x(0)+y(0)=k_2\quad \Rightarrow \quad 1+0,01=k_2\quad \Rightarrow \quad k_2=1,01&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Por último, conocemos también el valor de k&amp;lt;sub&amp;gt;1&amp;lt;/sub&amp;gt;, por lo que podremos plantear a continuación el correspondiente PVI:&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;k_1=1&amp;lt;/math&amp;gt;&lt;br /&gt;
:&amp;lt;math&amp;gt;(PVI)\begin{cases}y'(t)=1,01y(t)-y^2(t) \\ \\&lt;br /&gt;
y(0) = 0,01 \end{cases}\quad (t,y)\in[0,10]\times\mathbb{R}^+&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Unicidad de la solución ==&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Existencia-y-unicidad-II.png|200px|miniaturadeimagen|derecha|Intersección B con dominio]]&lt;br /&gt;
&lt;br /&gt;
Aplicamos a continuación el Teorema de Existencia y Unicidad:&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Sea &amp;lt;math&amp;gt;f(t,y)=y'(t) \Rightarrow f(t,y)=1.01y(t)-y^2(t)\quad&amp;lt;/math&amp;gt;, y &amp;lt;math&amp;gt;\quad\frac{\partial }{\partial y} f(t,y) = 1.01-2y(t)&amp;lt;/math&amp;gt;.&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
Sea &amp;lt;math&amp;gt;B[(t_0,y_0),r],\quad r&amp;gt;0,\quad en (t_0,y_0)=(0,0.01)&amp;lt;/math&amp;gt;.&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt; &lt;br /&gt;
&lt;br /&gt;
Y siendo &amp;lt;math&amp;gt;(t,y) \in \mathbb{D} = [0,10]\times \mathbb{R}^+ &amp;lt;/math&amp;gt; .&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt; &lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;f(t,y)&amp;lt;/math&amp;gt; es continua en &amp;lt;math&amp;gt; \mathbb{B}\cap \mathbb{D}\quad \Rightarrow \quad \exists  y(t)\quad /\quad y'(t)=1,01y(t)-y^2(t)&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;math&amp;gt;\frac{\partial }{\partial y} f(t,y)&amp;lt;/math&amp;gt; es continua en &amp;lt;math&amp;gt; \mathbb{B}\cap \mathbb{D}\quad \Rightarrow \quad \exists !  y(t)\quad /\quad y'(t)=1,01y(t)-y^2(t)&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Con lo que queda demostrado que el (PVI) tiene solución y además esta es única.&lt;br /&gt;
&lt;br /&gt;
== Resolución numérica del problema de valor inicial ==&lt;br /&gt;
&lt;br /&gt;
En este apartado resolveremos el problema de valor inicial planteado anteriormente con tres métodos de integración numérica: el método de Euler, el método del Trapecio y el método de Runge-Kutta de orden 4.&lt;br /&gt;
&lt;br /&gt;
=== Método de Euler ===&lt;br /&gt;
&lt;br /&gt;
El método de Euler, llamado así en honor al matemático Leonhard Euler, es un procedimiento de integración numérica. Su expresión matemática es: &lt;br /&gt;
&amp;lt;math&amp;gt;  PVI =   &lt;br /&gt;
\begin{cases}&lt;br /&gt;
 y_0 \\&lt;br /&gt;
 y_{n+1}  = y_n + h*f(t_n,y_n) \\&lt;br /&gt;
\end{cases}\quad&lt;br /&gt;
   &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
A continuación emplearemos esta expresión en un programa de Matlab para obtener una aproximación de las soluciones. El código de dicho programa es el siguiente.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Eulergrafica.png|400px|miniaturadeimagen|derecha|Representación gráfica y(t). Método de Euler]]&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
%Método de Euler&lt;br /&gt;
clc&lt;br /&gt;
&lt;br /&gt;
%Datos iniciales&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=4;&lt;br /&gt;
y0=0.01;&lt;br /&gt;
h=0.1;&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=10;&lt;br /&gt;
&lt;br /&gt;
%Cálculo de subintervalos&lt;br /&gt;
N=round((tN-t0)/h);&lt;br /&gt;
t=t0:h:tN;&lt;br /&gt;
&lt;br /&gt;
%Creamos el vector donde vamos a guardar las soluciones&lt;br /&gt;
y=zeros(1,N+1);&lt;br /&gt;
y(1)=y0;&lt;br /&gt;
&lt;br /&gt;
%Euler&lt;br /&gt;
for i=1:N;&lt;br /&gt;
    y(i+1)=y(i)+h*(1.01*y(i)-(y(i)).^2);&lt;br /&gt;
end&lt;br /&gt;
%Tabla de Resultados&lt;br /&gt;
[t',y']&lt;br /&gt;
x=1.01-y;&lt;br /&gt;
hold on &lt;br /&gt;
plot(t,y,'r')&lt;br /&gt;
plot(t,x,'b')&lt;br /&gt;
hold off&lt;br /&gt;
legend('Sustancia B: y(t)','Sustancia A: x(t)','Location','best');&lt;br /&gt;
xlabel('Tiempo (s)')&lt;br /&gt;
ylabel('Concentración (mol/l)')&lt;br /&gt;
grid on&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
=== Método del trapecio ===&lt;br /&gt;
&lt;br /&gt;
Vamos a aplicar un método de integración numérica conocido como el Método del Trapecio por aproximar el valor de la integral al del área de un trapecio. Su expresión matemática es:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;  PVI =   &lt;br /&gt;
\begin{cases}&lt;br /&gt;
 y_0 \\&lt;br /&gt;
 y_{n+1}  =  y_n + \frac{h}{2}*(f(t_n,y_n)+f(t_{n+1},y_{n+1}))\\&lt;br /&gt;
\end{cases}\quad&lt;br /&gt;
   &amp;lt;/math&amp;gt;&lt;br /&gt;
   &lt;br /&gt;
Introducimos esta expresión en el código y obtenemos la gráfica de la solución.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Trapeciografica.png|400px|miniaturadeimagen|derecha|Representación gráfica y(t). Método del Trapecio]]&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
%Método del Trapecio&lt;br /&gt;
clc&lt;br /&gt;
&lt;br /&gt;
%Datos iniciales&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=4;&lt;br /&gt;
y0=0.01;&lt;br /&gt;
h=0.1;&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=10;&lt;br /&gt;
&lt;br /&gt;
%Cálculo de subintervalos&lt;br /&gt;
N=round((tN-t0)/h);&lt;br /&gt;
t=t0:h:tN;&lt;br /&gt;
&lt;br /&gt;
%Creamos el vector donde vamos a guardar las soluciones&lt;br /&gt;
y=zeros(1,N+1);&lt;br /&gt;
y(1)=y0;&lt;br /&gt;
&lt;br /&gt;
for i=1:N&lt;br /&gt;
y(i+1)=(((1-(h/2)*1.01)-sqrt(((1-(h/2)*1.01)^2)+4*(h/2)*((1+(h/2)*1.01)*y(i)-(h/2)*(y(i))^2)))/-h);&lt;br /&gt;
end&lt;br /&gt;
%Sacamos la tabla de resultados&lt;br /&gt;
[t',y']&lt;br /&gt;
x=1.01-y;&lt;br /&gt;
%Gráfico&lt;br /&gt;
hold on&lt;br /&gt;
plot(t,y,'r')&lt;br /&gt;
plot(t,x,'b')&lt;br /&gt;
legend('Sustancia B: y(t)','Sustancia A: x(t)','Location','best');&lt;br /&gt;
xlabel('Tiempo (s)')&lt;br /&gt;
ylabel('Concentración (mol/l)')&lt;br /&gt;
grid on&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
=== Método de Runge-Kutta ===&lt;br /&gt;
&lt;br /&gt;
El método de resolución numérica de Runge-Kutta, involucra un gran número de parámetros. Para simplificar la implementación de este método en Matlab, utilizaremos la función ''inline'', con la que declararemos previamente la función algebraica necesaria para el cálculo de los parámetros &amp;lt;math&amp;gt;k_i&amp;lt;/math&amp;gt;, ahorrándonos tener que escribir innumerables veces la correspondiente expresión matemática.&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
A continuación, detallamos la función &amp;lt;math&amp;gt;f(y)&amp;lt;/math&amp;gt; de la que dependerán los valores de los parámetros &amp;lt;math&amp;gt;k_i&amp;lt;/math&amp;gt;:&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;f(y)=y'(t)=1.01y(t)-y(t)^2&lt;br /&gt;
&lt;br /&gt;
\quad → \quad&lt;br /&gt;
&lt;br /&gt;
\begin{cases}&lt;br /&gt;
 k_1 &amp;amp; =  f(y_i) \\&lt;br /&gt;
 k_2 &amp;amp; =  f(y_i + {1 \over 2}k_1h) \\&lt;br /&gt;
 k_3 &amp;amp; =  f(y_i + \frac{1}{2}k_2h) \\&lt;br /&gt;
 k_4 &amp;amp; =  f(y_i + k_3h) \\&lt;br /&gt;
\end{cases}\quad [h=0.1]&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Entonces el método RK4 para este problema está dado por la siguiente ecuación:&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;y_{i+1} = y_{i} + {1 \over 6}h(k_1+2k_2+2k_3+k_4)&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Mediante el siguiente programa en Matlab calculamos numéricamente la solución y la representamos en un gráfico:&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Archivo:RK4II.png|400px|miniaturadeimagen|derecha|Representación gráfica y(t). Método Runge-Kutta]]&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
%Método de Runge-Kutta&lt;br /&gt;
clc&lt;br /&gt;
&lt;br /&gt;
%Función f(t)=y'(t)&lt;br /&gt;
fy=inline('1.01*y-y^2','y');&lt;br /&gt;
&lt;br /&gt;
%Datos del problema&lt;br /&gt;
y0=0.01;&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=10;&lt;br /&gt;
h=0.1;&lt;br /&gt;
&lt;br /&gt;
%Variable independiente (t)&lt;br /&gt;
t=t0:h:tN;&lt;br /&gt;
&lt;br /&gt;
%Variable dependiente (y)&lt;br /&gt;
y=zeros(1,length(t));&lt;br /&gt;
y(1)=y0;&lt;br /&gt;
&lt;br /&gt;
for i=1:length(t)-1&lt;br /&gt;
    k1=fy(y(i));&lt;br /&gt;
    k2=fy(y(i)+k1/2*h);&lt;br /&gt;
    k3=fy(y(i)+k2/2*h);&lt;br /&gt;
    k4=fy(y(i)+k3*h);&lt;br /&gt;
    y(i+1)=y(i)+h/6*(k1+2*k2+2*k3+k4);&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
%Variable dependiente (x)&lt;br /&gt;
x=1.01-y;&lt;br /&gt;
&lt;br /&gt;
%Representación gráfica&lt;br /&gt;
hold on&lt;br /&gt;
plot(t,x,'b')&lt;br /&gt;
plot(t,y,'r')&lt;br /&gt;
legend('Sustancia A: x(t)','Sustancia B: y(t)')&lt;br /&gt;
xlabel('Tiempo (s)')&lt;br /&gt;
ylabel('Concentración (mol/l)')&lt;br /&gt;
grid on&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
=== Comparación de métodos===&lt;br /&gt;
&lt;br /&gt;
Podemos observar fácilmente que las gráficas obtenidas con los diferentes métodos son iguales a primera vista. Sin embargo, superponiéndolas queda patente que no son exactamente iguales debido a que los métodos no poseen la misma precisión y , al operar todos con la misma longitud de paso, unos aproximan la solución exacta mejor que otros. Así se observa en estas imágenes:&lt;br /&gt;
&lt;br /&gt;
[[Archivo:comparativa1.jpg|400px|miniaturadeimagen|izquierda|Comparación de métodos]]&lt;br /&gt;
[[Archivo:comparativa2.jpg|400px|miniaturadeimagen|derecha|Comparación de métodos]]&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
Como podemos comprobar en las imágenes, el método de Euler es menos preciso que el del trapecio o el de Runge-Kutta.&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Resolución en forma de sistema de ecuaciones ==&lt;br /&gt;
&lt;br /&gt;
A continuación vamos a plantear el problema de valor inicial con un sistema no lineal de dos ecuaciones equivalente al problema resuelto anteriormente.&lt;br /&gt;
&lt;br /&gt;
Estas ecuaciones serán:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;(PVI)&lt;br /&gt;
\begin{cases}&lt;br /&gt;
    y'(t)=k_1 x(t)y(t) \\&lt;br /&gt;
    x'(t)=-k_1 x(t)y(t) \\&lt;br /&gt;
    \\&lt;br /&gt;
    x(0)=1 \\&lt;br /&gt;
    y(0) = 0.01&lt;br /&gt;
\end{cases}&lt;br /&gt;
\quad t\in[0,10]&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Resolveremos el problema por el método de Euler y por el método de Runge-Kutta, plasmando las soluciones en gráficos.&lt;br /&gt;
&lt;br /&gt;
=== Método de Euler ===&lt;br /&gt;
&lt;br /&gt;
En este caso aplicaremos en el siguiente código la expresión para EDO a cada una de las ecuaciones que conforma el sistema, obteniendo la correspondiente gráfica.&lt;br /&gt;
 &lt;br /&gt;
[[Archivo:SistEuler.png|400px|miniaturadeimagen|derecha|Representación gráfica de las concentraciones de A y B. Resolución del sistema por Euler]]&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
&lt;br /&gt;
%Resolución del sistema por el método de Euler&lt;br /&gt;
&lt;br /&gt;
clear all&lt;br /&gt;
&lt;br /&gt;
%Definimos el vector de la variable independiente, el número de&lt;br /&gt;
%subintervalos y la longitud de paso&lt;br /&gt;
&lt;br /&gt;
t0 = 0;&lt;br /&gt;
tN = 10;&lt;br /&gt;
h = 0.1;&lt;br /&gt;
t = t0:h:tN&lt;br /&gt;
N = (tN-t0)/h;&lt;br /&gt;
&lt;br /&gt;
%Definimos los vectores de las variables dependientes&lt;br /&gt;
&lt;br /&gt;
x = zeros(1, N+1);&lt;br /&gt;
y = zeros(1, N+1);&lt;br /&gt;
&lt;br /&gt;
x(1) = 1;&lt;br /&gt;
y(1) = 0.01;&lt;br /&gt;
&lt;br /&gt;
for i = 1:N&lt;br /&gt;
    &lt;br /&gt;
    x(i+1)=x(i)+h*(-x(i).*y(i));&lt;br /&gt;
    y(i+1)=y(i)+h*(y(i).*x(i));&lt;br /&gt;
    &lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
%Representamos gráficamente las soluciones&lt;br /&gt;
&lt;br /&gt;
hold on&lt;br /&gt;
&lt;br /&gt;
plot(t,x,'b');&lt;br /&gt;
plot(t,y,'r');&lt;br /&gt;
grid on&lt;br /&gt;
&lt;br /&gt;
legend('Sustancia A: x(t)','Sustancia B: y(t)')&lt;br /&gt;
xlabel('Tiempo (s)')&lt;br /&gt;
ylabel('Concentración (mol/l)')&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
hold off&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
}}&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Método de Runge-Kutta===&lt;br /&gt;
&lt;br /&gt;
El método de resolución numérica de Runge-Kutta, involucra un gran número de parámetros. Para simplificar la implementación de este método en Matlab, el sistema se tratará como una matriz &amp;lt;math&amp;gt;z&amp;lt;/math&amp;gt;. Además, utilizaremos la función ''inline'', con la que declararemos previamente la función algebraica necesaria para el cálculo de los parámetros &amp;lt;math&amp;gt;k_i&amp;lt;/math&amp;gt;, ahorrándonos tener que escribir innumerables veces la correspondiente expresión matemática.&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Primero, expresamos el sistema en forma matricial:&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;(PVI)\begin{cases}&lt;br /&gt;
    x'(t)=-k_1 x(t)y(t) \\&lt;br /&gt;
    y'(t)=k_1 x(t)y(t) \\&lt;br /&gt;
    \\&lt;br /&gt;
    x(0)=1 \\&lt;br /&gt;
    y(0) = 0.01&lt;br /&gt;
\end{cases}\quad t\in[0,10]&lt;br /&gt;
&lt;br /&gt;
\quad \Rightarrow \quad (k_1=1)\quad \Rightarrow \quad&lt;br /&gt;
&lt;br /&gt;
(PVI)\begin{cases}\vec{z}'(t)=&lt;br /&gt;
   \begin{bmatrix}&lt;br /&gt;
      x'(t) \\&lt;br /&gt;
      y'(t) \\&lt;br /&gt;
   \end{bmatrix}&lt;br /&gt;
=&lt;br /&gt;
      \begin{bmatrix}&lt;br /&gt;
      -x(t)y(t) \\&lt;br /&gt;
      x(t)y(t) \\&lt;br /&gt;
   \end{bmatrix}&lt;br /&gt;
&lt;br /&gt;
 \\ \\ \vec{z}(0)=&lt;br /&gt;
   \begin{bmatrix}&lt;br /&gt;
      x(0) \\&lt;br /&gt;
      y(0) \\&lt;br /&gt;
   \end{bmatrix}&lt;br /&gt;
=&lt;br /&gt;
      \begin{bmatrix}&lt;br /&gt;
      1 \\&lt;br /&gt;
      0.01 \\&lt;br /&gt;
   \end{bmatrix}&lt;br /&gt;
\end{cases}\quad t\in[0,10]&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
A continuación, detallamos la función &amp;lt;math&amp;gt;\vec{F}&amp;lt;/math&amp;gt; de la que dependerán los valores de los parámetros &amp;lt;math&amp;gt;k_i&amp;lt;/math&amp;gt;:&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;\vec{F}(x,y)=\vec{F}(\vec{z})=&lt;br /&gt;
&lt;br /&gt;
\begin{bmatrix}&lt;br /&gt;
    f(\vec{z}) \\&lt;br /&gt;
    g(\vec{z}) \\&lt;br /&gt;
\end{bmatrix}=&lt;br /&gt;
&lt;br /&gt;
\begin{bmatrix}&lt;br /&gt;
    x'(t) \\&lt;br /&gt;
    y'(t) \\&lt;br /&gt;
\end{bmatrix}=&lt;br /&gt;
&lt;br /&gt;
\vec{z}'(t)=&lt;br /&gt;
&lt;br /&gt;
\begin{bmatrix}&lt;br /&gt;
    -x(t)y(t) \\&lt;br /&gt;
    x(t)y(t) \\&lt;br /&gt;
\end{bmatrix}&lt;br /&gt;
&lt;br /&gt;
\quad → \quad&lt;br /&gt;
&lt;br /&gt;
\begin{cases}&lt;br /&gt;
 [\vec{k_1}] &amp;amp; =  F(\vec{z}_i) \\&lt;br /&gt;
 [\vec{k_2}] &amp;amp; =  F(\vec{z}_i + {1 \over 2}\vec{k_1}h) \\&lt;br /&gt;
 [\vec{k_3}] &amp;amp; =  F(\vec{z}_i + \frac{1}{2}\vec{k_2}h) \\&lt;br /&gt;
 [\vec{k_4}] &amp;amp; =  F(\vec{z}_i + \vec{k_3}h) \\&lt;br /&gt;
\end{cases}\quad [h=0.1]&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Entonces el método RK4 para este problema está dado por la siguiente ecuación:&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;\vec{z}_{i+1} = \vec{z}_{i} + {1 \over 6}h(\vec{k_1}+2\vec{k_2}+2\vec{k_3}+\vec{k_4})&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Mediante el siguiente programa en Matlab calculamos numéricamente la solución y la representamos en un gráfico:&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Archivo:sistema_RK4.png|400px|miniaturadeimagen|derecha|Representación gráfica de las concentraciones de A y B. Resolución del sistema por Runge-Kutta]]&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
%Método de Runge-Kutta&lt;br /&gt;
clc&lt;br /&gt;
&lt;br /&gt;
%Función F=[x'(t); y'(t)]&lt;br /&gt;
F=inline('[-z(1)*z(2);z(1)*z(2)]','z');&lt;br /&gt;
&lt;br /&gt;
%Datos del problema &lt;br /&gt;
x0=1;&lt;br /&gt;
y0=0.01;&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=10;&lt;br /&gt;
h=0.1;&lt;br /&gt;
&lt;br /&gt;
%Vector de variable independiente (t)&lt;br /&gt;
t=t0:h:tN;&lt;br /&gt;
&lt;br /&gt;
%Matriz de variables dependientes z=[x;y]&lt;br /&gt;
z=zeros(2,length(t));&lt;br /&gt;
z(:,1)=[x0;y0];&lt;br /&gt;
&lt;br /&gt;
for i = 1:length(t)-1&lt;br /&gt;
    k1=F(z(:,i));&lt;br /&gt;
    k2=F(z(:,i)+k1.*h/2);&lt;br /&gt;
    k3=F(z(:,i)+k2.*h/2);&lt;br /&gt;
    k4=F(z(:,i)+k3.*h);&lt;br /&gt;
    z(:,i+1)=z(:,i)+h/6.*(k1+2.*k2+2.*k3+k4);&lt;br /&gt;
end&lt;br /&gt;
 &lt;br /&gt;
%Representación gráfica&lt;br /&gt;
hold on&lt;br /&gt;
plot(t,z(1,:))&lt;br /&gt;
plot(t,z(2,:),'r')&lt;br /&gt;
legend('Sustancia A: x(t)','Sustancia B: y(t)')&lt;br /&gt;
xlabel('Tiempo (s)')&lt;br /&gt;
ylabel('Concentración (mol/l)')&lt;br /&gt;
grid on&lt;br /&gt;
%hold off&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
== Interpretación de las gráficas ==&lt;br /&gt;
&lt;br /&gt;
Como cabía esperar, obtenemos la misma solución resolviendo el problema como sistema o como EDO. Podemos observar por los resultados obtenidos que la velocidad de aparición de B es igual a la velocidad de desaparición de A (como dicta el principio de conservación de la masa), que A acaba desapareciendo prácticamente por completo y que la concentración de B termina por estabilizarse alrededor de 1 mol/l. Ambos compuestos alcanzan los extremos de sus concentraciones en el mismo instante de tiempo&lt;br /&gt;
&lt;br /&gt;
También cabe destacar que cuando el tiempo transcurrido alcanza 4,5 segundos las concentraciones de ambos compuestos son las mismas.&lt;br /&gt;
&lt;br /&gt;
= Reacción II =&lt;br /&gt;
&lt;br /&gt;
En este apartado vamos a estudiar la reacción propuesta por Alfred J. Lotka en 1920, que es la siguiente:&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt; A + X →_{k1} 2X;&amp;lt;/math&amp;gt;     :&amp;lt;math&amp;gt; X + Y →_{k2} 2Y;&amp;lt;/math&amp;gt;     :&amp;lt;math&amp;gt;Y →_{k3} 2B  &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Como se puede observar, se trata de una reacción compleja integrada por 3 reacciones simples (las dos primeras autocatalíticas) en las que intervienen un total de 4 compuestos, A, B, X e Y. Siguiendo el desarrollo de la reacción, es lógico suponer que A se agotará al comienzo de la reacción, que los máximos de concentración de X e Y se darán en los estados intermedios y que al final el compuesto B será el único restante, siendo el producto final de la reacción.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Interpretación del problema y deducción de las ecuaciones diferenciales ==&lt;br /&gt;
&lt;br /&gt;
Para averiguar cómo evolucionan las concentraciones de los cuatro compuestos durante el desarrollo de la reacción necesitaremos obtener cuatro ecuaciones diferenciales. Para ello nos volveremos a basar en los principios físicos que ya empleamos en la anterior reacción. Definimos A(t), x(t), y(t), y B(t) (A, x, y, B; para ahorrar notación) como las concentraciones de A, X, Y, y B, respectivamente. &lt;br /&gt;
&lt;br /&gt;
En primer lugar aplicamos el Principio de Conservación de la masa, que establece que la suma de las concentraciones de los compuestos es constante (no desaparece masa en el proceso), lo que derivando nos indica que:&lt;br /&gt;
&lt;br /&gt;
: &amp;lt;math&amp;gt; A' + x' + y' + B' = 0 \quad\quad(I)&amp;lt;/math&amp;gt;       &lt;br /&gt;
&lt;br /&gt;
A continuación aplicaremos la Ley de Acción de Masas (velocidad de reacción proporcional al producto de la concentración de los reactivos).&lt;br /&gt;
&lt;br /&gt;
Aplicando esta ley a la última reacción simple obtenemos que: &lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;B'=k_3y \quad\quad(II)&amp;lt;/math&amp;gt;        &lt;br /&gt;
&lt;br /&gt;
En el caso de las concentraciones de X e Y las expresiones resultantes son algo más complicadas ya que estos dos compuestos actúan como reactivos y productos en más de una reacción simple, por lo que la variación de sus concentraciones será la suma de las variaciones de las reacciones en las que aparezcan:&lt;br /&gt;
&lt;br /&gt;
: &amp;lt;math&amp;gt; x' = x'_{1} + x'_{2} → x' = k_{1}Ax - k_{2}xy \quad\quad(III)&amp;lt;/math&amp;gt;        &lt;br /&gt;
: &amp;lt;math&amp;gt; y' = y'_{2} + y'_{3} → y' = k_{2}xy − k_3{y} \quad\quad(IV)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Por último sustituimos (II), (III) y (IV) en (I) obteniendo: &lt;br /&gt;
&lt;br /&gt;
: &amp;lt;math&amp;gt; A' + k_{1}Ax - k{2}xy + k_{2}xy − k_3{y}+ k_3y= 0 : &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
De donde obtenemos que:&lt;br /&gt;
&lt;br /&gt;
: &amp;lt;math&amp;gt; A' = -k_{1}Ax &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Ahora que ya tenemos las variaciones de concentración de los compuestos en función de las concentraciones podemos aplicar métodos numéricos que nos lleven a una solución aproximada.&lt;br /&gt;
&lt;br /&gt;
== Resolución numérica del sistema de ecuaciones ==&lt;br /&gt;
&lt;br /&gt;
Una vez obtenidas las ecuaciones y conociendo las condiciones iniciales y los valores de las constantes podemos plantear el problema de valor inicial para luego resolverlo.&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;(PVI)&lt;br /&gt;
\begin{cases}&lt;br /&gt;
    A' = -k_{1}Ax\\&lt;br /&gt;
    x' = k_{1}Ax - k{2}xy\\&lt;br /&gt;
    y' = k_{2}xy − k_3{y}\\&lt;br /&gt;
    B'=k_3y \\&lt;br /&gt;
\\&lt;br /&gt;
    A(0)=5  \\&lt;br /&gt;
    x(0)=5*10^{-4} \\&lt;br /&gt;
    y(0)=10^{-5}\\&lt;br /&gt;
    B(0)=0 \\&lt;br /&gt;
\end{cases}&lt;br /&gt;
\quad t\in[0,200]&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Siendo &amp;lt;math&amp;gt; k_{1}=K_{2}=2k_{3}=0.1 &amp;lt;/math&amp;gt; y las unidades de la concentración mol/l.&lt;br /&gt;
&lt;br /&gt;
=== Método de Euler ===&lt;br /&gt;
&lt;br /&gt;
Aplicamos el método de Euler de forma análoga a como lo hicimos en [[Reacciones_con_autocatálisis._Grupo_D12#Método_de_Euler_2|apartado 2.5.1]]&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Euler lotka0.01.png|400px|miniaturadeimagen|derecha|Representación gráfica de las concentraciones de A, B, X, e Y a lo largo del tiempo. Resoluciónd delsistema por el método de Euler con longitud de paso h=0.01]] &lt;br /&gt;
[[Archivo:Euler lotka0.001.png|400px|miniaturadeimagen|derecha|Representación gráfica de las concentraciones de A, B, X, e Y a lo largo del tiempo. Resoluciónd delsistema por el método de Euler con longitud de paso h=0.001]]&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
&lt;br /&gt;
%Resolución del sistema de la reacción de Lotka por el método de Euler&lt;br /&gt;
&lt;br /&gt;
clear all&lt;br /&gt;
&lt;br /&gt;
%Definimos la variable independiente y establecemos los datos del problema&lt;br /&gt;
%de valor inicial. Para la longitud de paso h introducimos en primer lugar&lt;br /&gt;
%0.01 y luego 0.001&lt;br /&gt;
&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=200;&lt;br /&gt;
h= input('Introduzca una longitud de paso ');&lt;br /&gt;
t = t0:h:tN;&lt;br /&gt;
N=(tN-t0)/h;&lt;br /&gt;
k1 = 0.1;&lt;br /&gt;
k2 = 0.1;&lt;br /&gt;
k3 = 0.05;&lt;br /&gt;
A0 = 5;&lt;br /&gt;
B0 = 0;&lt;br /&gt;
X0 = 5*10^(-4);&lt;br /&gt;
Y0 = 10^(-5);&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
%Definimos las variables dependientes.&lt;br /&gt;
&lt;br /&gt;
A = zeros(1, N+1);&lt;br /&gt;
B = A;&lt;br /&gt;
X = A;&lt;br /&gt;
Y = A;&lt;br /&gt;
&lt;br /&gt;
A(1) = A0;&lt;br /&gt;
B(1) = B0;&lt;br /&gt;
X(1) = X0;&lt;br /&gt;
Y(1) = Y0;&lt;br /&gt;
&lt;br /&gt;
for i = 1:N&lt;br /&gt;
    &lt;br /&gt;
    X(i+1) = X(i) + h*(k1*A(i)*X(i)-k2*Y(i)*X(i));&lt;br /&gt;
    Y(i+1)=Y(i)+h.*(k2.*X(i).*Y(i)-k3.*Y(i));&lt;br /&gt;
    B(i+1) = B(i) + h*(k3*Y(i));&lt;br /&gt;
    A(i+1) = A(i) + h*(-k1*A(i)*X(i));&lt;br /&gt;
   &lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
%Representamos gráficamente la solución&lt;br /&gt;
&lt;br /&gt;
hold on&lt;br /&gt;
&lt;br /&gt;
plot (t,A,'b')&lt;br /&gt;
plot(t, X, 'r')&lt;br /&gt;
plot(t,Y, 'g')&lt;br /&gt;
plot(t, B, 'm')&lt;br /&gt;
legend('Sustancia A: A(t)','Sustancia X: x(t)','Sustancia Y: y(t)','Sustancia B: B(t)','Location','Best')&lt;br /&gt;
xlabel('Tiempo (s)')&lt;br /&gt;
ylabel('Concentración (mol/l)')&lt;br /&gt;
grid on&lt;br /&gt;
&lt;br /&gt;
hold off&lt;br /&gt;
&lt;br /&gt;
}}&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
A continuación tendremos que comprobar si el método es estable. &amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
Un método es estable cuando el error local es pequeño y además este error no se amplifica a lo largo del tiempo. Para calificar la estabilidad del método de Euler resolveremos el sistema anterior con este método, con pasos &amp;quot;h=0.01&amp;quot; y &amp;quot;h=0.001&amp;quot;, y lo compararemos con la resolución del sistema con el método de Heun, que se asemeja más a la solución exacta.&amp;lt;br /&amp;gt;&lt;br /&gt;
En la comparación representaremos en azul el método de Heun y en rojo el método de Euler.&amp;lt;br /&amp;gt;&lt;br /&gt;
Para &amp;quot;h=0.01&amp;quot; tenemos lo siguiente:&lt;br /&gt;
[[Archivo:1estabilidad123.jpg|400px|miniaturadeimagen|izquierda|Comparación entre Método de Heun (Azul) con el Método de Euler con paso h=0.01 (Rojo)]] &lt;br /&gt;
[[Archivo:1estabilidad321.jpg|400px|miniaturadeimagen|derecha|Comparación entre Método de Heun (Azul) con el Método de Euler con paso h=0.01 (Rojo)]] &lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
Para &amp;quot;h=0.001&amp;quot; tenemos lo siguiente:&lt;br /&gt;
[[Archivo:2estabilidad123.jpg|400px|miniaturadeimagen|izquierda|Comparación entre Método de Heun (Azul) con el Método de Euler con paso h=0.001 (Rojo)]] &lt;br /&gt;
[[Archivo:2estabilidad321.jpg|400px|miniaturadeimagen|derecha|Comparación entre Método de Heun (Azul) con el Método de Euler con paso h=0.001 (Rojo)]]&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
Como podemos ver en las imágenes de los dos procesos las gráficas se superponen y no se aprecian diferencias hasta que no ampliamos la imagen. Y esto sucede en todo momento con lo que podemos garantizar que en este caso el método de Euler es estable para los pasos que hemos usado.&lt;br /&gt;
&lt;br /&gt;
=== Método de Heun ===&lt;br /&gt;
&lt;br /&gt;
Si bien el método de resolución numérica de Heun no involucra un número de parámetros tan notable como el método de Runge-Kutta, en este caso tenemos un sistema de 4 ecuaciones diferenciales, por lo que, en aras de simplificar, utilizaremos el mismo criterio que en el [[Reacciones_con_autocatálisis._Grupo_D12#Método_de_Runge-Kutta_2|apartado 2.5.2]].: El sistema se tratará como una matriz &amp;lt;math&amp;gt;z&amp;lt;/math&amp;gt;, y para la obtención de los parámetros &amp;lt;math&amp;gt;k_i&amp;lt;/math&amp;gt; utilizaremos la función ''inline'', con la que declararemos previamente las expresiones necesarias para el cálculo de los parámetros &amp;lt;math&amp;gt;k_i&amp;lt;/math&amp;gt;.&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Primero, expresamos el sistema en forma matricial:&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;(PVI)\begin{cases}&lt;br /&gt;
A'(t)=-k_1 A(t)x(t) \\&lt;br /&gt;
x'(t)=k_1 A(t)x(t)-k_2 x(t)y(t) \\&lt;br /&gt;
y'(t)=k_2 x(t)y(t)-k_3 y(t) \\&lt;br /&gt;
B'(t)=k_3 x(t)y(t) \\ \\&lt;br /&gt;
A(0)=5 \\&lt;br /&gt;
x(0)=5·10^{-4} \\&lt;br /&gt;
y(0)=10^{-5} \\&lt;br /&gt;
B(0) = 0&lt;br /&gt;
\end{cases}\quad t\in[0,200]&lt;br /&gt;
&lt;br /&gt;
\quad \Rightarrow \quad&lt;br /&gt;
&lt;br /&gt;
\begin{cases}&lt;br /&gt;
k_1=0.1 \\&lt;br /&gt;
k_2=0.1 \\&lt;br /&gt;
k_3=0.05 \\&lt;br /&gt;
&lt;br /&gt;
\end{cases}&lt;br /&gt;
&lt;br /&gt;
\quad \Rightarrow \quad&lt;br /&gt;
&lt;br /&gt;
(PVI)\begin{cases}\vec{z}'(t)=&lt;br /&gt;
   \begin{bmatrix}&lt;br /&gt;
      A'(t) \\&lt;br /&gt;
      x'(t) \\&lt;br /&gt;
      y'(t) \\&lt;br /&gt;
      B'(t) \\&lt;br /&gt;
   \end{bmatrix}&lt;br /&gt;
=&lt;br /&gt;
      \begin{bmatrix}&lt;br /&gt;
      -0.1 A(t)x(t) \\&lt;br /&gt;
      0.1 A(t)x(t)-0.1 x(t)y(t) \\&lt;br /&gt;
      0.1 x(t)y(t)-0.05 y(t) \\&lt;br /&gt;
      0.05 y(t)x(t)\\&lt;br /&gt;
   \end{bmatrix}&lt;br /&gt;
&lt;br /&gt;
 \\ \\ \vec{z}(0)=&lt;br /&gt;
   \begin{bmatrix}&lt;br /&gt;
      A(0) \\&lt;br /&gt;
      x(0) \\&lt;br /&gt;
      y(0) \\&lt;br /&gt;
      B(0) \\&lt;br /&gt;
   \end{bmatrix}&lt;br /&gt;
=&lt;br /&gt;
      \begin{bmatrix}&lt;br /&gt;
      5 \\&lt;br /&gt;
      5·10^{-4} \\&lt;br /&gt;
      10^{-5} \\&lt;br /&gt;
      0&lt;br /&gt;
   \end{bmatrix}&lt;br /&gt;
\end{cases}\quad t\in[0,200]&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
A continuación, detallamos la función &amp;lt;math&amp;gt;\vec{F}&amp;lt;/math&amp;gt; de la que dependerán los valores de los parámetros &amp;lt;math&amp;gt;k_i&amp;lt;/math&amp;gt;:&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;\vec{F}(A,x,y,B)=\vec{F}(\vec{z})=&lt;br /&gt;
\begin{bmatrix}&lt;br /&gt;
    f(\vec{z}) \\ &lt;br /&gt;
    g(\vec{z}) \\ &lt;br /&gt;
    h(\vec{z}) \\ &lt;br /&gt;
    i(\vec{z}) \\ &lt;br /&gt;
\end{bmatrix}=&lt;br /&gt;
\begin{bmatrix}&lt;br /&gt;
    A'(t) \\&lt;br /&gt;
    x'(t) \\&lt;br /&gt;
    y'(t) \\&lt;br /&gt;
    B'(t) \\&lt;br /&gt;
\end{bmatrix}=&lt;br /&gt;
\vec{z}'(t)=&lt;br /&gt;
      \begin{bmatrix}&lt;br /&gt;
      -0.1 A(t)x(t) \\&lt;br /&gt;
      0.1 A(t)x(t)-0.1 x(t)y(t) \\&lt;br /&gt;
      0.1 x(t)y(t)-0.05 y(t) \\&lt;br /&gt;
      0.05 y(t)x(t)\\&lt;br /&gt;
   \end{bmatrix}&lt;br /&gt;
&lt;br /&gt;
\quad → \quad&lt;br /&gt;
&lt;br /&gt;
\begin{cases}&lt;br /&gt;
 [\vec{k_1}] &amp;amp; =  F(\vec{z}_i) \\&lt;br /&gt;
 [\vec{k_2}] &amp;amp; =  F(\vec{z}_i + {1 \over 2}\vec{k_1}h) \\&lt;br /&gt;
\end{cases}\quad [h=0.01]&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Entonces el método de Heun para este problema está dado por la siguiente ecuación:&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;\vec{z}_{i+1} = \vec{z}_{i} + {1 \over 2}h(\vec{k_1}+\vec{k_2})&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Mediante el siguiente programa en Matlab calculamos numéricamente la solución y la representamos en un gráfico:&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Archivo:AXYBRK4.png|400px|miniaturadeimagen|derecha|Representación gráfica de las concentraciones de A,X,Y y B. Resolución del sistema por Heun]]&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
%Método de Heun&lt;br /&gt;
clc&lt;br /&gt;
&lt;br /&gt;
%Función F=[A'(t);x'(t); y'(t);B'(t)]&lt;br /&gt;
F=inline('0.1.*[-z(1)*z(2);z(1)*z(2)-z(2)*z(3);z(2)*z(3)-z(3)/2;z(3)/2]','z');&lt;br /&gt;
&lt;br /&gt;
%Datos del problema&lt;br /&gt;
A0=5;&lt;br /&gt;
x0=5*10^-4;&lt;br /&gt;
y0=10^(-5);&lt;br /&gt;
B0=0;&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=200;&lt;br /&gt;
h=0.1;&lt;br /&gt;
&lt;br /&gt;
%Vector de variable independiente (t)&lt;br /&gt;
t=t0:h:tN;&lt;br /&gt;
&lt;br /&gt;
%Matriz de variables dependientes z=[A;x;y;B]&lt;br /&gt;
z=zeros(4,length(t));&lt;br /&gt;
z(:,1)=[A0;x0;y0;B0];&lt;br /&gt;
&lt;br /&gt;
for i = 1:length(t)-1&lt;br /&gt;
    k1=F(z(:,i));&lt;br /&gt;
    k2=F(z(:,i)+k1.*h/2);&lt;br /&gt;
    z(:,i+1)=z(:,i)+h/2.*(k1+k2);&lt;br /&gt;
end&lt;br /&gt;
 &lt;br /&gt;
%Representación gráfica&lt;br /&gt;
hold on&lt;br /&gt;
plot(t,z(1,:),'b')&lt;br /&gt;
plot(t,z(2,:),'r')&lt;br /&gt;
plot(t,z(3,:),'g')&lt;br /&gt;
plot(t,z(4,:),'m')&lt;br /&gt;
legend('Sustancia A: A(t)','Sustancia X: x(t)','Sustancia Y: y(t)','Sustancia B: B(t)','Location','Best')&lt;br /&gt;
xlabel('Tiempo (s)')&lt;br /&gt;
ylabel('Concentración (mol/l)')&lt;br /&gt;
grid on&lt;br /&gt;
hold off&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
== Interpretación de las gráficas == &lt;br /&gt;
 &lt;br /&gt;
El proceso comienza con el predominio absoluto del compuesto A en la concentración total, siendo la presencia de los otros tres compuestos despreciable. Durante los primeros segundos la situación apenas cambia, pero tras los diez primeros segundos la concentración de A cae bruscamente mientras que la concentración de X aumenta a la misma velocidad; antes de llegar a los veinte segundos transcurridos las concentraciones de ambos compuestos se igualan y otros quince segundos más tarde el compuesto A  prácticamente ha desaparecido y el X ha alcanzado su concentración máxima (5 mol/litro).&lt;br /&gt;
&lt;br /&gt;
Es entonces cuando concluye la primera reacción y comienzan las otras dos, al no haber más compuesto A que cree compuesto X. La velocidad de aparición de Y es inicialmente mayor que la de B, superando al poco tiempo en concentración a la sustancia X. Sin embargo, llega un momento en el que la concentración de X es tan baja que se ralentiza la creación de Y y pronto empieza a disminuir su concentración tras alcanzar un máximo en torno a los 56 segundos, perdiendo peso la segunda reacción en beneficio de la tercera.&lt;br /&gt;
&lt;br /&gt;
Tras los 60 segundos de reacción el compuesto X pasa a tener una concentración despreciable, por lo que la única reacción simple que se sigue desarrollando es la tercera, destruyéndose reactivo Y y creándose producto B. La concentración de Y va reduciéndose paulatinamente hasta que en torno a los 160 segundos de reacción alcanza niveles insignificantes mientras que la concentración de B alcanza su máximo de 5 mol/litro.&lt;br /&gt;
&lt;br /&gt;
Es interesante observar que en todo momento se cumple el Principio de Conservación de la masa: la suma en cualquier momento de las concentraciones de las sustancias es 5 mol /litro. Esto es fácilmente comprobable en los momentos en que las concentraciones de A, X y B alcanzan su máximo de 5 mol/litro y el resto de concentraciones son nulas o despreciables. &lt;br /&gt;
[[Categoría:Ecuaciones Diferenciales]]&lt;br /&gt;
[[Categoría:ED14/15]]&lt;br /&gt;
[[Categoría:Trabajos 2014-15]]&lt;/div&gt;</summary>
		<author><name>Javier Ruiz de Galarreta López</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Reacciones_con_autocat%C3%A1lisis._Grupo_D12&amp;diff=29264</id>
		<title>Reacciones con autocatálisis. Grupo D12</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Reacciones_con_autocat%C3%A1lisis._Grupo_D12&amp;diff=29264"/>
				<updated>2015-03-13T08:35:52Z</updated>
		
		<summary type="html">&lt;p&gt;Javier Ruiz de Galarreta López: /* Método de Runge-Kutta */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{ TrabajoED | Reacciones con autocatálisis. Grupo D12 | [[:Categoría:Ecuaciones Diferenciales|Ecuaciones Diferenciales]]|[[:Categoría:ED14/15|Curso 2014-15]] | Javier Ruiz de Galarreta López, Argimiro Martínez López, Eduardo Moyano García, Alberto Rodríguez Ruiz. }}&lt;br /&gt;
&lt;br /&gt;
= Introducción: objetivos y metodología =&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
El objetivo de este trabajo es estudiar las concentraciones de los reactivos y productos de una reacción química a lo largo de la evolución en el tiempo de dicha reacción. Para ello modelizaremos el proceso empleando ecuaciones diferenciales y teniendo en cuenta la Ley de Acción de Masas y el Principio de Conservación de la materia.&lt;br /&gt;
&lt;br /&gt;
Al ser las ecuaciones y sistemas que se nos presentan de difícil resolución analítica, utilizaremos el programa informático Matlab para resolverlos mediante métodos numéricos como el de Euler, el del Trapecio, el de Runge-Kutta y el de Heun. &lt;br /&gt;
&lt;br /&gt;
Plasmaremos las soluciones en gráficos que nos permitirán dar una interpretación físico química de los resultados.&lt;br /&gt;
&lt;br /&gt;
= Reacción I =&lt;br /&gt;
&lt;br /&gt;
En primer lugar consideramos una reacción química irreversible en una solución bien mezclada, que se desarrolla para un volumen y una temperatura constantes, y en la que uno de los componentes (B, en este caso), hace de efecto catalítico.&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt; A + B →_{k1} 2B  &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Para desarrollar nuestro análisis nos apoyaremos en dos leyes físico químicas:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''Ley de acción de masas''': Enunciada por Guldberg y Waage en 1864, establece, entre otras cosas, que  la velocidad de&lt;br /&gt;
reacción es proporcional al producto de las concentraciones de los reactivos.&lt;br /&gt;
&lt;br /&gt;
'''Principio de conservación de la masa''': Establece que en una reacción química ordinaria la masa permanece constante, siendo la masa consumida de los reactivos igual a la masa obtenida de los productos. Fue elaborada independientemente por Míjail Lomonósov en 1745 y Antoine Lavoisier en 1785.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Interpretación del problema y deducción de las ecuaciones diferenciales ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Para hallar las ecuaciones diferenciales que nos describan cómo se desarrolla la reacción en el tiempo nos basaremos en las dos leyes enunciadas anteriormente. En primer lugar, definimos nuestra variable independiente como el tiempo &amp;lt;math&amp;gt;t&amp;lt;/math&amp;gt; en segundos. Las dos variables dependientes serán las concentraciones de los compuestos A y B, que denominaremos &amp;lt;math&amp;gt;x(t)&amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt;y(t)&amp;lt;/math&amp;gt;, ambas expresadas en mol/l. &lt;br /&gt;
&lt;br /&gt;
El principio de conservación de la masa expone que la suma de las concentraciones de los reactivos y los productos es constante. Esto equivale, derivando la expresión &amp;lt;math&amp;gt;x(t)+y(t)=cte&amp;lt;/math&amp;gt;, a que  desaparece tanto reactivo como producto aparece, o lo que es lo mismo, que la velocidad de aparición del producto es igual a la velocidad de desaparición (velocidad de aparición negativa) del reactivo:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;x'(t)=-y'(t)&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
La otra ecuación que necesitamos la obtenemos directamente de aplicar la Ley de acción de masas, que establece que la velocidad de la reacción (la velocidad a la que aparece el producto o desaparece el reactivo) es igual al producto de las concentraciones por una constante.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;y'(t)=k_1x(t)y(t)&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Obtención del problema de valor inicial ==&lt;br /&gt;
Una vez demostrado el origen de las ecuaciones (1) y (2) en el apartado anterior, obtendremos el problema de valor inicial (PVI) mediante las operaciones detalladas a continuación:&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;x'(t)+y'(t)=0\quad\quad(1)&amp;lt;/math&amp;gt;&lt;br /&gt;
:&amp;lt;math&amp;gt;y'(t)=k_1x(t)y(t)\quad\quad(2)&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Integrando (1) obtenemos (3):&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
:&amp;lt;math&amp;gt;\int_\mathbb{D} (\frac{dx(t)}{dt} + \frac{dy(t)}{dt})\,dt =\int_\mathbb{D} 0\,dt \quad \Rightarrow \quad x(t)+y(t)=k_2\quad \Rightarrow \quad x(t)=k_2-y(t)\quad\quad(3)&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Sustituyendo (3) en (2), obtenemos (4):&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;y'(t)=k_1x(t)y(t)\quad \Rightarrow \quad y'(t)=k_1(k_2-y(t))y(t)\quad \Rightarrow \quad y'(t)=k_1k_2y(t)-k_1y^2(t)\quad\quad(4)&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Conocemos las concentraciones iniciales de A y de B, por lo que podemos obtener el valor de la constante k&amp;lt;sub&amp;gt;2&amp;lt;/sub&amp;gt;:&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;[A]:\quad x(0)=1 mol/l;\quad\quad [B]:\quad y(0)=0,01 mol/l&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;x(t)+y(t)=k_2\quad \Rightarrow \quad x(0)+y(0)=k_2\quad \Rightarrow \quad 1+0,01=k_2\quad \Rightarrow \quad k_2=1,01&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Por último, conocemos también el valor de k&amp;lt;sub&amp;gt;1&amp;lt;/sub&amp;gt;, por lo que podremos plantear a continuación el correspondiente PVI:&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;k_1=1&amp;lt;/math&amp;gt;&lt;br /&gt;
:&amp;lt;math&amp;gt;(PVI)\begin{cases}y'(t)=1,01y(t)-y^2(t) \\ \\&lt;br /&gt;
y(0) = 0,01 \end{cases}\quad (t,y)\in[0,10]\times\mathbb{R}^+&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Unicidad de la solución ==&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Existencia-y-unicidad-II.png|200px|miniaturadeimagen|derecha|Intersección B con dominio]]&lt;br /&gt;
&lt;br /&gt;
Aplicamos a continuación el Teorema de Existencia y Unicidad:&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Sea &amp;lt;math&amp;gt;f(t,y)=y'(t) \Rightarrow f(t,y)=1.01y(t)-y^2(t)\quad&amp;lt;/math&amp;gt;, y &amp;lt;math&amp;gt;\quad\frac{\partial }{\partial y} f(t,y) = 1.01-2y(t)&amp;lt;/math&amp;gt;.&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
Sea &amp;lt;math&amp;gt;B[(t_0,y_0),r],\quad r&amp;gt;0,\quad en (t_0,y_0)=(0,0.01)&amp;lt;/math&amp;gt;.&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt; &lt;br /&gt;
&lt;br /&gt;
Y siendo &amp;lt;math&amp;gt;(t,y) \in \mathbb{D} = [0,10]\times \mathbb{R}^+ &amp;lt;/math&amp;gt; .&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt; &lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;f(t,y)&amp;lt;/math&amp;gt; es continua en &amp;lt;math&amp;gt; \mathbb{B}\cap \mathbb{D}\quad \Rightarrow \quad \exists  y(t)\quad /\quad y'(t)=1,01y(t)-y^2(t)&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;math&amp;gt;\frac{\partial }{\partial y} f(t,y)&amp;lt;/math&amp;gt; es continua en &amp;lt;math&amp;gt; \mathbb{B}\cap \mathbb{D}\quad \Rightarrow \quad \exists !  y(t)\quad /\quad y'(t)=1,01y(t)-y^2(t)&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Con lo que queda demostrado que el (PVI) tiene solución y además esta es única.&lt;br /&gt;
&lt;br /&gt;
== Resolución numérica del problema de valor inicial ==&lt;br /&gt;
&lt;br /&gt;
En este apartado resolveremos el problema de valor inicial planteado anteriormente con tres métodos de integración numérica: el método de Euler, el método del Trapecio y el método de Runge-Kutta de orden 4.&lt;br /&gt;
&lt;br /&gt;
=== Método de Euler ===&lt;br /&gt;
&lt;br /&gt;
El método de Euler, llamado así en honor al matemático Leonhard Euler, es un procedimiento de integración numérica. Su expresión matemática es: &lt;br /&gt;
&amp;lt;math&amp;gt;  PVI =   &lt;br /&gt;
\begin{cases}&lt;br /&gt;
 y_0 \\&lt;br /&gt;
 y_{n+1}  = y_n + h*f(t_n,y_n) \\&lt;br /&gt;
\end{cases}\quad&lt;br /&gt;
   &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
A continuación emplearemos esta expresión en un programa de Matlab para obtener una aproximación de las soluciones. El código de dicho programa es el siguiente.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Eulergrafica.png|400px|miniaturadeimagen|derecha|Representación gráfica y(t). Método de Euler]]&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
%Método de Euler&lt;br /&gt;
clc&lt;br /&gt;
&lt;br /&gt;
%Datos iniciales&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=4;&lt;br /&gt;
y0=0.01;&lt;br /&gt;
h=0.1;&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=10;&lt;br /&gt;
&lt;br /&gt;
%Cálculo de subintervalos&lt;br /&gt;
N=round((tN-t0)/h);&lt;br /&gt;
t=t0:h:tN;&lt;br /&gt;
&lt;br /&gt;
%Creamos el vector donde vamos a guardar las soluciones&lt;br /&gt;
y=zeros(1,N+1);&lt;br /&gt;
y(1)=y0;&lt;br /&gt;
&lt;br /&gt;
%Euler&lt;br /&gt;
for i=1:N;&lt;br /&gt;
    y(i+1)=y(i)+h*(1.01*y(i)-(y(i)).^2);&lt;br /&gt;
end&lt;br /&gt;
%Tabla de Resultados&lt;br /&gt;
[t',y']&lt;br /&gt;
x=1.01-y;&lt;br /&gt;
hold on &lt;br /&gt;
plot(t,y,'r')&lt;br /&gt;
plot(t,x,'b')&lt;br /&gt;
hold off&lt;br /&gt;
legend('Sustancia B: y(t)','Sustancia A: x(t)','Location','best');&lt;br /&gt;
xlabel('Tiempo (s)')&lt;br /&gt;
ylabel('Concentración (mol/l)')&lt;br /&gt;
grid on&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
=== Método del trapecio ===&lt;br /&gt;
&lt;br /&gt;
Vamos a aplicar un método de integración numérica conocido como el Método del Trapecio por aproximar el valor de la integral al del área de un trapecio. Su expresión matemática es:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;  PVI =   &lt;br /&gt;
\begin{cases}&lt;br /&gt;
 y_0 \\&lt;br /&gt;
 y_{n+1}  =  y_n + \frac{h}{2}*(f(t_n,y_n)+f(t_{n+1},y_{n+1}))\\&lt;br /&gt;
\end{cases}\quad&lt;br /&gt;
   &amp;lt;/math&amp;gt;&lt;br /&gt;
   &lt;br /&gt;
Introducimos esta expresión en el código y obtenemos la gráfica de la solución.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Trapeciografica.png|400px|miniaturadeimagen|derecha|Representación gráfica y(t). Método del Trapecio]]&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
%Método del Trapecio&lt;br /&gt;
clc&lt;br /&gt;
&lt;br /&gt;
%Datos iniciales&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=4;&lt;br /&gt;
y0=0.01;&lt;br /&gt;
h=0.1;&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=10;&lt;br /&gt;
&lt;br /&gt;
%Cálculo de subintervalos&lt;br /&gt;
N=round((tN-t0)/h);&lt;br /&gt;
t=t0:h:tN;&lt;br /&gt;
&lt;br /&gt;
%Creamos el vector donde vamos a guardar las soluciones&lt;br /&gt;
y=zeros(1,N+1);&lt;br /&gt;
y(1)=y0;&lt;br /&gt;
&lt;br /&gt;
for i=1:N&lt;br /&gt;
y(i+1)=(((1-(h/2)*1.01)-sqrt(((1-(h/2)*1.01)^2)+4*(h/2)*((1+(h/2)*1.01)*y(i)-(h/2)*(y(i))^2)))/-h);&lt;br /&gt;
end&lt;br /&gt;
%Sacamos la tabla de resultados&lt;br /&gt;
[t',y']&lt;br /&gt;
x=1.01-y;&lt;br /&gt;
%Gráfico&lt;br /&gt;
hold on&lt;br /&gt;
plot(t,y,'r')&lt;br /&gt;
plot(t,x,'b')&lt;br /&gt;
legend('Sustancia B: y(t)','Sustancia A: x(t)','Location','best');&lt;br /&gt;
xlabel('Tiempo (s)')&lt;br /&gt;
ylabel('Concentración (mol/l)')&lt;br /&gt;
grid on&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
=== Método de Runge-Kutta ===&lt;br /&gt;
&lt;br /&gt;
El método de resolución numérica de Runge-Kutta, involucra un gran número de parámetros. Para simplificar la implementación de este método en Matlab, utilizaremos la función ''inline'', con la que declararemos previamente la función algebraica necesaria para el cálculo de los parámetros &amp;lt;math&amp;gt;k_i&amp;lt;/math&amp;gt;, ahorrándonos tener que escribir innumerables veces la correspondiente expresión matemática.&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
A continuación, detallamos la función &amp;lt;math&amp;gt;f(y)&amp;lt;/math&amp;gt; de la que dependerán los valores de los parámetros &amp;lt;math&amp;gt;k_i&amp;lt;/math&amp;gt;:&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;f(y)=y'(t)=1.01y(t)-y(t)^2&lt;br /&gt;
&lt;br /&gt;
\quad → \quad&lt;br /&gt;
&lt;br /&gt;
\begin{cases}&lt;br /&gt;
 k_1 &amp;amp; =  f(y_i) \\&lt;br /&gt;
 k_2 &amp;amp; =  f(y_i + {1 \over 2}k_1h) \\&lt;br /&gt;
 k_3 &amp;amp; =  f(y_i + \frac{1}{2}k_2h) \\&lt;br /&gt;
 k_4 &amp;amp; =  f(y_i + k_3h) \\&lt;br /&gt;
\end{cases}\quad [h=0.1]&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Entonces el método RK4 para este problema está dado por la siguiente ecuación:&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;y_{i+1} = y_{i} + {1 \over 6}h(k_1+2k_2+2k_3+k_4)&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Mediante el siguiente programa en Matlab calculamos numéricamente la solución y la representamos en un gráfico:&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Archivo:RK4II.png|400px|miniaturadeimagen|derecha|Representación gráfica y(t). Método Runge-Kutta]]&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
%Método de Runge-Kutta&lt;br /&gt;
clc&lt;br /&gt;
&lt;br /&gt;
%Función f(t)=y'(t)&lt;br /&gt;
fy=inline('1.01*y-y^2','y');&lt;br /&gt;
&lt;br /&gt;
%Datos del problema&lt;br /&gt;
y0=0.01;&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=10;&lt;br /&gt;
h=0.1;&lt;br /&gt;
&lt;br /&gt;
%Variable independiente (t)&lt;br /&gt;
t=t0:h:tN;&lt;br /&gt;
&lt;br /&gt;
%Variable dependiente (y)&lt;br /&gt;
y=zeros(1,length(t));&lt;br /&gt;
y(1)=y0;&lt;br /&gt;
&lt;br /&gt;
for i=1:length(t)-1&lt;br /&gt;
    k1=fy(y(i));&lt;br /&gt;
    k2=fy(y(i)+k1/2*h);&lt;br /&gt;
    k3=fy(y(i)+k2/2*h);&lt;br /&gt;
    k4=fy(y(i)+k3*h);&lt;br /&gt;
    y(i+1)=y(i)+h/6*(k1+2*k2+2*k3+k4);&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
%Variable dependiente (x)&lt;br /&gt;
x=1.01-y;&lt;br /&gt;
&lt;br /&gt;
%Representación gráfica&lt;br /&gt;
hold on&lt;br /&gt;
plot(t,x,'b')&lt;br /&gt;
plot(t,y,'r')&lt;br /&gt;
legend('Sustancia A: x(t)','Sustancia B: y(t)')&lt;br /&gt;
xlabel('Tiempo (s)')&lt;br /&gt;
ylabel('Concentración (mol/l)')&lt;br /&gt;
grid on&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
=== Comparación de métodos===&lt;br /&gt;
&lt;br /&gt;
Podemos observar fácilmente que las gráficas obtenidas con los diferentes métodos son iguales a primera vista. Sin embargo, superponiéndolas queda patente que no son exactamente iguales debido a que los métodos no poseen la misma precisión y , al operar todos con la misma longitud de paso, unos aproximan la solución exacta mejor que otros. Así se observa en estas imágenes:&lt;br /&gt;
&lt;br /&gt;
[[Archivo:comparativa1.jpg|400px|miniaturadeimagen|izquierda|Comparación de métodos]]&lt;br /&gt;
[[Archivo:comparativa2.jpg|400px|miniaturadeimagen|derecha|Comparación de métodos]]&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
Como podemos comprobar en las imágenes, el método de Euler es menos preciso que el del trapecio o el de Runge-Kutta.&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Resolución en forma de sistema de ecuaciones ==&lt;br /&gt;
&lt;br /&gt;
A continuación vamos a plantear el problema de valor inicial con un sistema no lineal de dos ecuaciones equivalente al problema resuelto anteriormente.&lt;br /&gt;
&lt;br /&gt;
Estas ecuaciones serán:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;(PVI)&lt;br /&gt;
\begin{cases}&lt;br /&gt;
    y'(t)=k_1 x(t)y(t) \\&lt;br /&gt;
    x'(t)=-k_1 x(t)y(t) \\&lt;br /&gt;
    \\&lt;br /&gt;
    x(0)=1 \\&lt;br /&gt;
    y(0) = 0.01&lt;br /&gt;
\end{cases}&lt;br /&gt;
\quad t\in[0,10]&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Resolveremos el problema por el método de Euler y por el método de Runge-Kutta, plasmando las soluciones en gráficos.&lt;br /&gt;
&lt;br /&gt;
=== Método de Euler ===&lt;br /&gt;
&lt;br /&gt;
En este caso aplicaremos en el siguiente código la expresión para EDO a cada una de las ecuaciones que conforma el sistema, obteniendo la correspondiente gráfica.&lt;br /&gt;
 &lt;br /&gt;
[[Archivo:SistEuler.png|400px|miniaturadeimagen|derecha|Representación gráfica de las concentraciones de A y B. Resolución del sistema por Euler]]&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
&lt;br /&gt;
%Resolución del sistema por el método de Euler&lt;br /&gt;
&lt;br /&gt;
clear all&lt;br /&gt;
&lt;br /&gt;
%Definimos el vector de la variable independiente, el número de&lt;br /&gt;
%subintervalos y la longitud de paso&lt;br /&gt;
&lt;br /&gt;
t0 = 0;&lt;br /&gt;
tN = 10;&lt;br /&gt;
h = 0.1;&lt;br /&gt;
t = t0:h:tN&lt;br /&gt;
N = (tN-t0)/h;&lt;br /&gt;
&lt;br /&gt;
%Definimos los vectores de las variables dependientes&lt;br /&gt;
&lt;br /&gt;
x = zeros(1, N+1);&lt;br /&gt;
y = zeros(1, N+1);&lt;br /&gt;
&lt;br /&gt;
x(1) = 1;&lt;br /&gt;
y(1) = 0.01;&lt;br /&gt;
&lt;br /&gt;
for i = 1:N&lt;br /&gt;
    &lt;br /&gt;
    x(i+1)=x(i)+h*(-x(i).*y(i));&lt;br /&gt;
    y(i+1)=y(i)+h*(y(i).*x(i));&lt;br /&gt;
    &lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
%Representamos gráficamente las soluciones&lt;br /&gt;
&lt;br /&gt;
hold on&lt;br /&gt;
&lt;br /&gt;
plot(t,x,'b');&lt;br /&gt;
plot(t,y,'r');&lt;br /&gt;
grid on&lt;br /&gt;
&lt;br /&gt;
legend('Sustancia A: x(t)','Sustancia B: y(t)')&lt;br /&gt;
xlabel('Tiempo (s)')&lt;br /&gt;
ylabel('Concentración (mol/l)')&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
hold off&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
}}&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Método de Runge-Kutta===&lt;br /&gt;
&lt;br /&gt;
El método de resolución numérica de Runge-Kutta, involucra un gran número de parámetros. Para simplificar la implementación de este método en Matlab, el sistema se tratará como una matriz &amp;lt;math&amp;gt;z&amp;lt;/math&amp;gt;. Además, utilizaremos la función ''inline'', con la que declararemos previamente la función algebraica necesaria para el cálculo de los parámetros &amp;lt;math&amp;gt;k_i&amp;lt;/math&amp;gt;, ahorrándonos tener que escribir innumerables veces la correspondiente expresión matemática.&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Primero, expresamos el sistema en forma matricial:&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;(PVI)\begin{cases}&lt;br /&gt;
    x'(t)=-k_1 x(t)y(t) \\&lt;br /&gt;
    y'(t)=k_1 x(t)y(t) \\&lt;br /&gt;
    \\&lt;br /&gt;
    x(0)=1 \\&lt;br /&gt;
    y(0) = 0.01&lt;br /&gt;
\end{cases}\quad t\in[0,10]&lt;br /&gt;
&lt;br /&gt;
\quad \Rightarrow \quad (k_1=1)\quad \Rightarrow \quad&lt;br /&gt;
&lt;br /&gt;
(PVI)\begin{cases}\vec{z}'(t)=&lt;br /&gt;
   \begin{bmatrix}&lt;br /&gt;
      x'(t) \\&lt;br /&gt;
      y'(t) \\&lt;br /&gt;
   \end{bmatrix}&lt;br /&gt;
=&lt;br /&gt;
      \begin{bmatrix}&lt;br /&gt;
      -x(t)y(t) \\&lt;br /&gt;
      x(t)y(t) \\&lt;br /&gt;
   \end{bmatrix}&lt;br /&gt;
&lt;br /&gt;
 \\ \\ \vec{z}(0)=&lt;br /&gt;
   \begin{bmatrix}&lt;br /&gt;
      x(0) \\&lt;br /&gt;
      y(0) \\&lt;br /&gt;
   \end{bmatrix}&lt;br /&gt;
=&lt;br /&gt;
      \begin{bmatrix}&lt;br /&gt;
      1 \\&lt;br /&gt;
      0.01 \\&lt;br /&gt;
   \end{bmatrix}&lt;br /&gt;
\end{cases}\quad t\in[0,10]&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
A continuación, detallamos la función &amp;lt;math&amp;gt;\vec{F}&amp;lt;/math&amp;gt; de la que dependerán los valores de los parámetros &amp;lt;math&amp;gt;k_i&amp;lt;/math&amp;gt;:&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;\vec{F}(x,y)=\vec{F}(\vec{z})=&lt;br /&gt;
&lt;br /&gt;
\begin{bmatrix}&lt;br /&gt;
    f(\vec{z}) \\&lt;br /&gt;
    g(\vec{z}) \\&lt;br /&gt;
\end{bmatrix}=&lt;br /&gt;
&lt;br /&gt;
\begin{bmatrix}&lt;br /&gt;
    x'(t) \\&lt;br /&gt;
    y'(t) \\&lt;br /&gt;
\end{bmatrix}=&lt;br /&gt;
&lt;br /&gt;
\vec{z}'(t)=&lt;br /&gt;
&lt;br /&gt;
\begin{bmatrix}&lt;br /&gt;
    -x(t)y(t) \\&lt;br /&gt;
    x(t)y(t) \\&lt;br /&gt;
\end{bmatrix}&lt;br /&gt;
&lt;br /&gt;
\quad → \quad&lt;br /&gt;
&lt;br /&gt;
\begin{cases}&lt;br /&gt;
 [\vec{k_1}] &amp;amp; =  F(\vec{z}_i) \\&lt;br /&gt;
 [\vec{k_2}] &amp;amp; =  F(\vec{z}_i + {1 \over 2}\vec{k_1}h) \\&lt;br /&gt;
 [\vec{k_3}] &amp;amp; =  F(\vec{z}_i + \frac{1}{2}\vec{k_2}h) \\&lt;br /&gt;
 [\vec{k_4}] &amp;amp; =  F(\vec{z}_i + \vec{k_3}h) \\&lt;br /&gt;
\end{cases}\quad [h=0.1]&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Entonces el método RK4 para este problema está dado por la siguiente ecuación:&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;\vec{z}_{i+1} = \vec{z}_{i} + {1 \over 6}h(\vec{k_1}+2\vec{k_2}+2\vec{k_3}+\vec{k_4})&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Mediante el siguiente programa en Matlab calculamos numéricamente la solución y la representamos en un gráfico:&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Archivo:sistema_RK4.png|400px|miniaturadeimagen|derecha|Representación gráfica de las concentraciones de A y B. Resolución del sistema por Runge-Kutta]]&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
%Método de Runge-Kutta&lt;br /&gt;
clc&lt;br /&gt;
&lt;br /&gt;
%Función F=[x'(t); y'(t)]&lt;br /&gt;
F=inline('[-z(1)*z(2);z(1)*z(2)]','z');&lt;br /&gt;
&lt;br /&gt;
%Datos del problema &lt;br /&gt;
x0=1;&lt;br /&gt;
y0=0.01;&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=10;&lt;br /&gt;
h=0.1;&lt;br /&gt;
&lt;br /&gt;
%Vector de variable independiente (t)&lt;br /&gt;
t=t0:h:tN;&lt;br /&gt;
&lt;br /&gt;
%Matriz de variables dependientes z=[x;y]&lt;br /&gt;
z=zeros(2,length(t));&lt;br /&gt;
z(:,1)=[x0;y0];&lt;br /&gt;
&lt;br /&gt;
for i = 1:length(t)-1&lt;br /&gt;
    k1=F(z(:,i));&lt;br /&gt;
    k2=F(z(:,i)+k1.*h/2);&lt;br /&gt;
    k3=F(z(:,i)+k2.*h/2);&lt;br /&gt;
    k4=F(z(:,i)+k3.*h);&lt;br /&gt;
    z(:,i+1)=z(:,i)+h/6.*(k1+2.*k2+2.*k3+k4);&lt;br /&gt;
end&lt;br /&gt;
 &lt;br /&gt;
%Representación gráfica&lt;br /&gt;
hold on&lt;br /&gt;
plot(t,z(1,:))&lt;br /&gt;
plot(t,z(2,:),'r')&lt;br /&gt;
legend('Sustancia A: x(t)','Sustancia B: y(t)')&lt;br /&gt;
xlabel('Tiempo (s)')&lt;br /&gt;
ylabel('Concentración (mol/l)')&lt;br /&gt;
grid on&lt;br /&gt;
%hold off&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
== Interpretación de las gráficas ==&lt;br /&gt;
&lt;br /&gt;
Como cabía esperar, obtenemos la misma solución resolviendo el problema como sistema o como EDO. Podemos observar por los resultados obtenidos que la velocidad de aparición de B es igual a la velocidad de desaparición de A (como dicta el principio de conservación de la masa), que A acaba desapareciendo prácticamente por completo y que la concentración de B termina por estabilizarse alrededor de 1 mol/l. Ambos compuestos alcanzan los extremos de sus concentraciones en el mismo instante de tiempo&lt;br /&gt;
&lt;br /&gt;
También cabe destacar que cuando el tiempo transcurrido alcanza 4,5 segundos las concentraciones de ambos compuestos son las mismas.&lt;br /&gt;
&lt;br /&gt;
= Reacción II =&lt;br /&gt;
&lt;br /&gt;
En este apartado vamos a estudiar la reacción propuesta por Alfred J. Lotka en 1920, que es la siguiente:&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt; A + X →_{k1} 2X;&amp;lt;/math&amp;gt;     :&amp;lt;math&amp;gt; X + Y →_{k2} 2Y;&amp;lt;/math&amp;gt;     :&amp;lt;math&amp;gt;Y →_{k3} 2B  &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Como se puede observar, se trata de una reacción compleja integrada por 3 reacciones simples (las dos primeras autocatalíticas) en las que intervienen un total de 4 compuestos, A, B, X e Y. Siguiendo el desarrollo de la reacción, es lógico suponer que A se agotará al comienzo de la reacción, que los máximos de concentración de X e Y se darán en los estados intermedios y que al final el compuesto B será el único restante, siendo el producto final de la reacción.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Interpretación del problema y deducción de las ecuaciones diferenciales ==&lt;br /&gt;
&lt;br /&gt;
Para averiguar cómo evolucionan las concentraciones de los cuatro compuestos durante el desarrollo de la reacción necesitaremos obtener cuatro ecuaciones diferenciales. Para ello nos volveremos a basar en los principios físicos que ya empleamos en la anterior reacción. Definimos A(t), x(t), y(t), y B(t) (A, x, y, B; para ahorrar notación) como las concentraciones de A, X, Y, y B, respectivamente. &lt;br /&gt;
&lt;br /&gt;
En primer lugar aplicamos el Principio de Conservación de la masa, que establece que la suma de las concentraciones de los compuestos es constante (no desaparece masa en el proceso), lo que derivando nos indica que:&lt;br /&gt;
&lt;br /&gt;
: &amp;lt;math&amp;gt; A' + x' + y' + B' = 0 \quad\quad(I)&amp;lt;/math&amp;gt;       &lt;br /&gt;
&lt;br /&gt;
A continuación aplicaremos la Ley de Acción de Masas (velocidad de reacción proporcional al producto de la concentración de los reactivos).&lt;br /&gt;
&lt;br /&gt;
Aplicando esta ley a la última reacción simple obtenemos que: &lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;B'=k_3y \quad\quad(II)&amp;lt;/math&amp;gt;        &lt;br /&gt;
&lt;br /&gt;
En el caso de las concentraciones de X e Y las expresiones resultantes son algo más complicadas ya que estos dos compuestos actúan como reactivos y productos en más de una reacción simple, por lo que la variación de sus concentraciones será la suma de las variaciones de las reacciones en las que aparezcan:&lt;br /&gt;
&lt;br /&gt;
: &amp;lt;math&amp;gt; x' = x'_{1} + x'_{2} → x' = k_{1}Ax - k_{2}xy \quad\quad(III)&amp;lt;/math&amp;gt;        &lt;br /&gt;
: &amp;lt;math&amp;gt; y' = y'_{2} + y'_{3} → y' = k_{2}xy − k_3{y} \quad\quad(IV)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Por último sustituimos (II), (III) y (IV) en (I) obteniendo: &lt;br /&gt;
&lt;br /&gt;
: &amp;lt;math&amp;gt; A' + k_{1}Ax - k{2}xy + k_{2}xy − k_3{y}+ k_3y= 0 : &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
De donde obtenemos que:&lt;br /&gt;
&lt;br /&gt;
: &amp;lt;math&amp;gt; A' = -k_{1}Ax &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Ahora que ya tenemos las variaciones de concentración de los compuestos en función de las concentraciones podemos aplicar métodos numéricos que nos lleven a una solución aproximada.&lt;br /&gt;
&lt;br /&gt;
== Resolución numérica del sistema de ecuaciones ==&lt;br /&gt;
&lt;br /&gt;
Una vez obtenidas las ecuaciones y conociendo las condiciones iniciales y los valores de las constantes podemos plantear el problema de valor inicial para luego resolverlo.&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;(PVI)&lt;br /&gt;
\begin{cases}&lt;br /&gt;
    A' = -k_{1}Ax\\&lt;br /&gt;
    x' = k_{1}Ax - k{2}xy\\&lt;br /&gt;
    y' = k_{2}xy − k_3{y}\\&lt;br /&gt;
    B'=k_3y \\&lt;br /&gt;
\\&lt;br /&gt;
    A(0)=5  \\&lt;br /&gt;
    x(0)=5*10^{-4} \\&lt;br /&gt;
    y(0)=10^{-5}\\&lt;br /&gt;
    B(0)=0 \\&lt;br /&gt;
\end{cases}&lt;br /&gt;
\quad t\in[0,200]&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Siendo &amp;lt;math&amp;gt; k_{1}=K_{2}=2k_{3}=0.1 &amp;lt;/math&amp;gt; y las unidades de la concentración mol/l.&lt;br /&gt;
&lt;br /&gt;
=== Método de Euler ===&lt;br /&gt;
&lt;br /&gt;
Aplicamos el método de Euler de forma análoga a como lo hicimos en [[Reacciones_con_autocatálisis._Grupo_D12#Método_de_Euler_2|apartado 2.5.1]]&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Euler lotka0.01.png|400px|miniaturadeimagen|derecha|Representación gráfica de las concentraciones de A, B, X, e Y a lo largo del tiempo. Resoluciónd delsistema por el método de Euler con longitud de paso h=0.01]] &lt;br /&gt;
[[Archivo:Euler lotka0.001.png|400px|miniaturadeimagen|derecha|Representación gráfica de las concentraciones de A, B, X, e Y a lo largo del tiempo. Resoluciónd delsistema por el método de Euler con longitud de paso h=0.001]]&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
&lt;br /&gt;
%Resolución del sistema de la reacción de Lotka por el método de Euler&lt;br /&gt;
&lt;br /&gt;
clear all&lt;br /&gt;
&lt;br /&gt;
%Definimos la variable independiente y establecemos los datos del problema&lt;br /&gt;
%de valor inicial. Para la longitud de paso h introducimos en primer lugar&lt;br /&gt;
%0.01 y luego 0.001&lt;br /&gt;
&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=200;&lt;br /&gt;
h= input('Introduzca una longitud de paso ');&lt;br /&gt;
t = t0:h:tN;&lt;br /&gt;
N=(tN-t0)/h;&lt;br /&gt;
k1 = 0.1;&lt;br /&gt;
k2 = 0.1;&lt;br /&gt;
k3 = 0.05;&lt;br /&gt;
A0 = 5;&lt;br /&gt;
B0 = 0;&lt;br /&gt;
X0 = 5*10^(-4);&lt;br /&gt;
Y0 = 10^(-5);&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
%Definimos las variables dependientes.&lt;br /&gt;
&lt;br /&gt;
A = zeros(1, N-1);&lt;br /&gt;
B = A;&lt;br /&gt;
X = A;&lt;br /&gt;
Y = A;&lt;br /&gt;
&lt;br /&gt;
A(1) = A0;&lt;br /&gt;
B(1) = B0;&lt;br /&gt;
X(1) = X0;&lt;br /&gt;
Y(1) = Y0;&lt;br /&gt;
&lt;br /&gt;
for i = 1:N&lt;br /&gt;
    &lt;br /&gt;
    X(i+1) = X(i) + h*(k1*A(i)*X(i)-k2*Y(i)*X(i));&lt;br /&gt;
    Y(i+1)=Y(i)+h.*(k2.*X(i).*Y(i)-k3.*Y(i));&lt;br /&gt;
    B(i+1) = B(i) + h*(k3*Y(i));&lt;br /&gt;
    A(i+1) = A(i) + h*(-k1*A(i)*X(i));&lt;br /&gt;
   &lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
%Representamos gráficamente la solución&lt;br /&gt;
&lt;br /&gt;
hold on&lt;br /&gt;
&lt;br /&gt;
plot (t,A,'b')&lt;br /&gt;
plot(t, X, 'r')&lt;br /&gt;
plot(t,Y, 'g')&lt;br /&gt;
plot(t, B, 'm')&lt;br /&gt;
legend('Sustancia A: A(t)','Sustancia X: x(t)','Sustancia Y: y(t)','Sustancia B: B(t)','Location','Best')&lt;br /&gt;
xlabel('Tiempo (s)')&lt;br /&gt;
ylabel('Concentración (mol/l)')&lt;br /&gt;
grid on&lt;br /&gt;
&lt;br /&gt;
hold off&lt;br /&gt;
&lt;br /&gt;
}}&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
A continuación tendremos que comprobar si el método es estable. &amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
Un método es estable cuando el error local es pequeño y además este error no se amplifica a lo largo del tiempo. Para calificar la estabilidad del método de Euler resolveremos el sistema anterior con este método, con pasos &amp;quot;h=0.01&amp;quot; y &amp;quot;h=0.001&amp;quot;, y lo compararemos con la resolución del sistema con el método de Heun, que se asemeja más a la solución exacta.&amp;lt;br /&amp;gt;&lt;br /&gt;
En la comparación representaremos en azul el método de Heun y en rojo el método de Euler.&amp;lt;br /&amp;gt;&lt;br /&gt;
Para &amp;quot;h=0.01&amp;quot; tenemos lo siguiente:&lt;br /&gt;
[[Archivo:1estabilidad123.jpg|400px|miniaturadeimagen|izquierda|Comparación entre Método de Heun (Azul) con el Método de Euler con paso h=0.01 (Rojo)]] &lt;br /&gt;
[[Archivo:1estabilidad321.jpg|400px|miniaturadeimagen|derecha|Comparación entre Método de Heun (Azul) con el Método de Euler con paso h=0.01 (Rojo)]] &lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
Para &amp;quot;h=0.001&amp;quot; tenemos lo siguiente:&lt;br /&gt;
[[Archivo:2estabilidad123.jpg|400px|miniaturadeimagen|izquierda|Comparación entre Método de Heun (Azul) con el Método de Euler con paso h=0.001 (Rojo)]] &lt;br /&gt;
[[Archivo:2estabilidad321.jpg|400px|miniaturadeimagen|derecha|Comparación entre Método de Heun (Azul) con el Método de Euler con paso h=0.001 (Rojo)]]&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
Como podemos ver en las imágenes de los dos procesos las gráficas se superponen y no se aprecian diferencias hasta que no ampliamos la imagen. Y esto sucede en todo momento con lo que podemos garantizar que en este caso el método de Euler es estable para los pasos que hemos usado.&lt;br /&gt;
&lt;br /&gt;
=== Método de Heun ===&lt;br /&gt;
&lt;br /&gt;
Si bien el método de resolución numérica de Heun no involucra un número de parámetros tan notable como el método de Runge-Kutta, en este caso tenemos un sistema de 4 ecuaciones diferenciales, por lo que, en aras de simplificar, utilizaremos el mismo criterio que en el [[Reacciones_con_autocatálisis._Grupo_D12#Método_de_Runge-Kutta_2|apartado 2.5.2]].: El sistema se tratará como una matriz &amp;lt;math&amp;gt;z&amp;lt;/math&amp;gt;, y para la obtención de los parámetros &amp;lt;math&amp;gt;k_i&amp;lt;/math&amp;gt; utilizaremos la función ''inline'', con la que declararemos previamente las expresiones necesarias para el cálculo de los parámetros &amp;lt;math&amp;gt;k_i&amp;lt;/math&amp;gt;.&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Primero, expresamos el sistema en forma matricial:&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;(PVI)\begin{cases}&lt;br /&gt;
A'(t)=-k_1 A(t)x(t) \\&lt;br /&gt;
x'(t)=k_1 A(t)x(t)-k_2 x(t)y(t) \\&lt;br /&gt;
y'(t)=k_2 x(t)y(t)-k_3 y(t) \\&lt;br /&gt;
B'(t)=k_3 x(t)y(t) \\ \\&lt;br /&gt;
A(0)=5 \\&lt;br /&gt;
x(0)=5·10^{-4} \\&lt;br /&gt;
y(0)=10^{-5} \\&lt;br /&gt;
B(0) = 0&lt;br /&gt;
\end{cases}\quad t\in[0,200]&lt;br /&gt;
&lt;br /&gt;
\quad \Rightarrow \quad&lt;br /&gt;
&lt;br /&gt;
\begin{cases}&lt;br /&gt;
k_1=0.1 \\&lt;br /&gt;
k_2=0.1 \\&lt;br /&gt;
k_3=0.05 \\&lt;br /&gt;
&lt;br /&gt;
\end{cases}&lt;br /&gt;
&lt;br /&gt;
\quad \Rightarrow \quad&lt;br /&gt;
&lt;br /&gt;
(PVI)\begin{cases}\vec{z}'(t)=&lt;br /&gt;
   \begin{bmatrix}&lt;br /&gt;
      A'(t) \\&lt;br /&gt;
      x'(t) \\&lt;br /&gt;
      y'(t) \\&lt;br /&gt;
      B'(t) \\&lt;br /&gt;
   \end{bmatrix}&lt;br /&gt;
=&lt;br /&gt;
      \begin{bmatrix}&lt;br /&gt;
      -0.1 A(t)x(t) \\&lt;br /&gt;
      0.1 A(t)x(t)-0.1 x(t)y(t) \\&lt;br /&gt;
      0.1 x(t)y(t)-0.05 y(t) \\&lt;br /&gt;
      0.05 y(t)x(t)\\&lt;br /&gt;
   \end{bmatrix}&lt;br /&gt;
&lt;br /&gt;
 \\ \\ \vec{z}(0)=&lt;br /&gt;
   \begin{bmatrix}&lt;br /&gt;
      A(0) \\&lt;br /&gt;
      x(0) \\&lt;br /&gt;
      y(0) \\&lt;br /&gt;
      B(0) \\&lt;br /&gt;
   \end{bmatrix}&lt;br /&gt;
=&lt;br /&gt;
      \begin{bmatrix}&lt;br /&gt;
      5 \\&lt;br /&gt;
      5·10^{-4} \\&lt;br /&gt;
      10^{-5} \\&lt;br /&gt;
      0&lt;br /&gt;
   \end{bmatrix}&lt;br /&gt;
\end{cases}\quad t\in[0,200]&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
A continuación, detallamos la función &amp;lt;math&amp;gt;\vec{F}&amp;lt;/math&amp;gt; de la que dependerán los valores de los parámetros &amp;lt;math&amp;gt;k_i&amp;lt;/math&amp;gt;:&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;\vec{F}(A,x,y,B)=\vec{F}(\vec{z})=&lt;br /&gt;
\begin{bmatrix}&lt;br /&gt;
    f(\vec{z}) \\ &lt;br /&gt;
    g(\vec{z}) \\ &lt;br /&gt;
    h(\vec{z}) \\ &lt;br /&gt;
    i(\vec{z}) \\ &lt;br /&gt;
\end{bmatrix}=&lt;br /&gt;
\begin{bmatrix}&lt;br /&gt;
    A'(t) \\&lt;br /&gt;
    x'(t) \\&lt;br /&gt;
    y'(t) \\&lt;br /&gt;
    B'(t) \\&lt;br /&gt;
\end{bmatrix}=&lt;br /&gt;
\vec{z}'(t)=&lt;br /&gt;
      \begin{bmatrix}&lt;br /&gt;
      -0.1 A(t)x(t) \\&lt;br /&gt;
      0.1 A(t)x(t)-0.1 x(t)y(t) \\&lt;br /&gt;
      0.1 x(t)y(t)-0.05 y(t) \\&lt;br /&gt;
      0.05 y(t)x(t)\\&lt;br /&gt;
   \end{bmatrix}&lt;br /&gt;
&lt;br /&gt;
\quad → \quad&lt;br /&gt;
&lt;br /&gt;
\begin{cases}&lt;br /&gt;
 [\vec{k_1}] &amp;amp; =  F(\vec{z}_i) \\&lt;br /&gt;
 [\vec{k_2}] &amp;amp; =  F(\vec{z}_i + {1 \over 2}\vec{k_1}h) \\&lt;br /&gt;
\end{cases}\quad [h=0.01]&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Entonces el método de Heun para este problema está dado por la siguiente ecuación:&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;\vec{z}_{i+1} = \vec{z}_{i} + {1 \over 2}h(\vec{k_1}+\vec{k_2})&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Mediante el siguiente programa en Matlab calculamos numéricamente la solución y la representamos en un gráfico:&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Archivo:AXYBRK4.png|400px|miniaturadeimagen|derecha|Representación gráfica de las concentraciones de A,X,Y y B. Resolución del sistema por Heun]]&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
%Método de Heun&lt;br /&gt;
clc&lt;br /&gt;
&lt;br /&gt;
%Función F=[A'(t);x'(t); y'(t);B'(t)]&lt;br /&gt;
F=inline('0.1.*[-z(1)*z(2);z(1)*z(2)-z(2)*z(3);z(2)*z(3)-z(3)/2;z(3)/2]','z');&lt;br /&gt;
&lt;br /&gt;
%Datos del problema&lt;br /&gt;
A0=5;&lt;br /&gt;
x0=5*10^-4;&lt;br /&gt;
y0=10^(-5);&lt;br /&gt;
B0=0;&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=200;&lt;br /&gt;
h=0.1;&lt;br /&gt;
&lt;br /&gt;
%Vector de variable independiente (t)&lt;br /&gt;
t=t0:h:tN;&lt;br /&gt;
&lt;br /&gt;
%Matriz de variables dependientes z=[A;x;y;B]&lt;br /&gt;
z=zeros(4,length(t));&lt;br /&gt;
z(:,1)=[A0;x0;y0;B0];&lt;br /&gt;
&lt;br /&gt;
for i = 1:length(t)-1&lt;br /&gt;
    k1=F(z(:,i));&lt;br /&gt;
    k2=F(z(:,i)+k1.*h/2);&lt;br /&gt;
    z(:,i+1)=z(:,i)+h/2.*(k1+k2);&lt;br /&gt;
end&lt;br /&gt;
 &lt;br /&gt;
%Representación gráfica&lt;br /&gt;
hold on&lt;br /&gt;
plot(t,z(1,:),'b')&lt;br /&gt;
plot(t,z(2,:),'r')&lt;br /&gt;
plot(t,z(3,:),'g')&lt;br /&gt;
plot(t,z(4,:),'m')&lt;br /&gt;
legend('Sustancia A: A(t)','Sustancia X: x(t)','Sustancia Y: y(t)','Sustancia B: B(t)','Location','Best')&lt;br /&gt;
xlabel('Tiempo (s)')&lt;br /&gt;
ylabel('Concentración (mol/l)')&lt;br /&gt;
grid on&lt;br /&gt;
hold off&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
== Interpretación de las gráficas == &lt;br /&gt;
 &lt;br /&gt;
El proceso comienza con el predominio absoluto del compuesto A en la concentración total, siendo la presencia de los otros tres compuestos despreciable. Durante los primeros segundos la situación apenas cambia, pero tras los diez primeros segundos la concentración de A cae bruscamente mientras que la concentración de X aumenta a la misma velocidad; antes de llegar a los veinte segundos transcurridos las concentraciones de ambos compuestos se igualan y otros quince segundos más tarde el compuesto A  prácticamente ha desaparecido y el X ha alcanzado su concentración máxima (5 mol/litro).&lt;br /&gt;
&lt;br /&gt;
Es entonces cuando concluye la primera reacción y comienzan las otras dos, al no haber más compuesto A que cree compuesto X. La velocidad de aparición de Y es inicialmente mayor que la de B, superando al poco tiempo en concentración a la sustancia X. Sin embargo, llega un momento en el que la concentración de X es tan baja que se ralentiza la creación de Y y pronto empieza a disminuir su concentración tras alcanzar un máximo en torno a los 56 segundos, perdiendo peso la segunda reacción en beneficio de la tercera.&lt;br /&gt;
&lt;br /&gt;
Tras los 60 segundos de reacción el compuesto X pasa a tener una concentración despreciable, por lo que la única reacción simple que se sigue desarrollando es la tercera, destruyéndose reactivo Y y creándose producto B. La concentración de Y va reduciéndose paulatinamente hasta que en torno a los 160 segundos de reacción alcanza niveles insignificantes mientras que la concentración de B alcanza su máximo de 5 mol/litro.&lt;br /&gt;
&lt;br /&gt;
Es interesante observar que en todo momento se cumple el Principio de Conservación de la masa: la suma en cualquier momento de las concentraciones de las sustancias es 5 mol /litro. Esto es fácilmente comprobable en los momentos en que las concentraciones de A, X y B alcanzan su máximo de 5 mol/litro y el resto de concentraciones son nulas o despreciables. &lt;br /&gt;
[[Categoría:Ecuaciones Diferenciales]]&lt;br /&gt;
[[Categoría:ED14/15]]&lt;br /&gt;
[[Categoría:Trabajos 2014-15]]&lt;/div&gt;</summary>
		<author><name>Javier Ruiz de Galarreta López</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Reacciones_con_autocat%C3%A1lisis._Grupo_D12&amp;diff=29263</id>
		<title>Reacciones con autocatálisis. Grupo D12</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Reacciones_con_autocat%C3%A1lisis._Grupo_D12&amp;diff=29263"/>
				<updated>2015-03-13T08:34:28Z</updated>
		
		<summary type="html">&lt;p&gt;Javier Ruiz de Galarreta López: /* Método de Runge-Kutta */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{ TrabajoED | Reacciones con autocatálisis. Grupo D12 | [[:Categoría:Ecuaciones Diferenciales|Ecuaciones Diferenciales]]|[[:Categoría:ED14/15|Curso 2014-15]] | Javier Ruiz de Galarreta López, Argimiro Martínez López, Eduardo Moyano García, Alberto Rodríguez Ruiz. }}&lt;br /&gt;
&lt;br /&gt;
= Introducción: objetivos y metodología =&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
El objetivo de este trabajo es estudiar las concentraciones de los reactivos y productos de una reacción química a lo largo de la evolución en el tiempo de dicha reacción. Para ello modelizaremos el proceso empleando ecuaciones diferenciales y teniendo en cuenta la Ley de Acción de Masas y el Principio de Conservación de la materia.&lt;br /&gt;
&lt;br /&gt;
Al ser las ecuaciones y sistemas que se nos presentan de difícil resolución analítica, utilizaremos el programa informático Matlab para resolverlos mediante métodos numéricos como el de Euler, el del Trapecio, el de Runge-Kutta y el de Heun. &lt;br /&gt;
&lt;br /&gt;
Plasmaremos las soluciones en gráficos que nos permitirán dar una interpretación físico química de los resultados.&lt;br /&gt;
&lt;br /&gt;
= Reacción I =&lt;br /&gt;
&lt;br /&gt;
En primer lugar consideramos una reacción química irreversible en una solución bien mezclada, que se desarrolla para un volumen y una temperatura constantes, y en la que uno de los componentes (B, en este caso), hace de efecto catalítico.&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt; A + B →_{k1} 2B  &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Para desarrollar nuestro análisis nos apoyaremos en dos leyes físico químicas:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''Ley de acción de masas''': Enunciada por Guldberg y Waage en 1864, establece, entre otras cosas, que  la velocidad de&lt;br /&gt;
reacción es proporcional al producto de las concentraciones de los reactivos.&lt;br /&gt;
&lt;br /&gt;
'''Principio de conservación de la masa''': Establece que en una reacción química ordinaria la masa permanece constante, siendo la masa consumida de los reactivos igual a la masa obtenida de los productos. Fue elaborada independientemente por Míjail Lomonósov en 1745 y Antoine Lavoisier en 1785.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Interpretación del problema y deducción de las ecuaciones diferenciales ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Para hallar las ecuaciones diferenciales que nos describan cómo se desarrolla la reacción en el tiempo nos basaremos en las dos leyes enunciadas anteriormente. En primer lugar, definimos nuestra variable independiente como el tiempo &amp;lt;math&amp;gt;t&amp;lt;/math&amp;gt; en segundos. Las dos variables dependientes serán las concentraciones de los compuestos A y B, que denominaremos &amp;lt;math&amp;gt;x(t)&amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt;y(t)&amp;lt;/math&amp;gt;, ambas expresadas en mol/l. &lt;br /&gt;
&lt;br /&gt;
El principio de conservación de la masa expone que la suma de las concentraciones de los reactivos y los productos es constante. Esto equivale, derivando la expresión &amp;lt;math&amp;gt;x(t)+y(t)=cte&amp;lt;/math&amp;gt;, a que  desaparece tanto reactivo como producto aparece, o lo que es lo mismo, que la velocidad de aparición del producto es igual a la velocidad de desaparición (velocidad de aparición negativa) del reactivo:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;x'(t)=-y'(t)&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
La otra ecuación que necesitamos la obtenemos directamente de aplicar la Ley de acción de masas, que establece que la velocidad de la reacción (la velocidad a la que aparece el producto o desaparece el reactivo) es igual al producto de las concentraciones por una constante.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;y'(t)=k_1x(t)y(t)&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Obtención del problema de valor inicial ==&lt;br /&gt;
Una vez demostrado el origen de las ecuaciones (1) y (2) en el apartado anterior, obtendremos el problema de valor inicial (PVI) mediante las operaciones detalladas a continuación:&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;x'(t)+y'(t)=0\quad\quad(1)&amp;lt;/math&amp;gt;&lt;br /&gt;
:&amp;lt;math&amp;gt;y'(t)=k_1x(t)y(t)\quad\quad(2)&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Integrando (1) obtenemos (3):&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
:&amp;lt;math&amp;gt;\int_\mathbb{D} (\frac{dx(t)}{dt} + \frac{dy(t)}{dt})\,dt =\int_\mathbb{D} 0\,dt \quad \Rightarrow \quad x(t)+y(t)=k_2\quad \Rightarrow \quad x(t)=k_2-y(t)\quad\quad(3)&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Sustituyendo (3) en (2), obtenemos (4):&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;y'(t)=k_1x(t)y(t)\quad \Rightarrow \quad y'(t)=k_1(k_2-y(t))y(t)\quad \Rightarrow \quad y'(t)=k_1k_2y(t)-k_1y^2(t)\quad\quad(4)&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Conocemos las concentraciones iniciales de A y de B, por lo que podemos obtener el valor de la constante k&amp;lt;sub&amp;gt;2&amp;lt;/sub&amp;gt;:&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;[A]:\quad x(0)=1 mol/l;\quad\quad [B]:\quad y(0)=0,01 mol/l&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;x(t)+y(t)=k_2\quad \Rightarrow \quad x(0)+y(0)=k_2\quad \Rightarrow \quad 1+0,01=k_2\quad \Rightarrow \quad k_2=1,01&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Por último, conocemos también el valor de k&amp;lt;sub&amp;gt;1&amp;lt;/sub&amp;gt;, por lo que podremos plantear a continuación el correspondiente PVI:&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;k_1=1&amp;lt;/math&amp;gt;&lt;br /&gt;
:&amp;lt;math&amp;gt;(PVI)\begin{cases}y'(t)=1,01y(t)-y^2(t) \\ \\&lt;br /&gt;
y(0) = 0,01 \end{cases}\quad (t,y)\in[0,10]\times\mathbb{R}^+&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Unicidad de la solución ==&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Existencia-y-unicidad-II.png|200px|miniaturadeimagen|derecha|Intersección B con dominio]]&lt;br /&gt;
&lt;br /&gt;
Aplicamos a continuación el Teorema de Existencia y Unicidad:&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Sea &amp;lt;math&amp;gt;f(t,y)=y'(t) \Rightarrow f(t,y)=1.01y(t)-y^2(t)\quad&amp;lt;/math&amp;gt;, y &amp;lt;math&amp;gt;\quad\frac{\partial }{\partial y} f(t,y) = 1.01-2y(t)&amp;lt;/math&amp;gt;.&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
Sea &amp;lt;math&amp;gt;B[(t_0,y_0),r],\quad r&amp;gt;0,\quad en (t_0,y_0)=(0,0.01)&amp;lt;/math&amp;gt;.&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt; &lt;br /&gt;
&lt;br /&gt;
Y siendo &amp;lt;math&amp;gt;(t,y) \in \mathbb{D} = [0,10]\times \mathbb{R}^+ &amp;lt;/math&amp;gt; .&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt; &lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;f(t,y)&amp;lt;/math&amp;gt; es continua en &amp;lt;math&amp;gt; \mathbb{B}\cap \mathbb{D}\quad \Rightarrow \quad \exists  y(t)\quad /\quad y'(t)=1,01y(t)-y^2(t)&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;math&amp;gt;\frac{\partial }{\partial y} f(t,y)&amp;lt;/math&amp;gt; es continua en &amp;lt;math&amp;gt; \mathbb{B}\cap \mathbb{D}\quad \Rightarrow \quad \exists !  y(t)\quad /\quad y'(t)=1,01y(t)-y^2(t)&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Con lo que queda demostrado que el (PVI) tiene solución y además esta es única.&lt;br /&gt;
&lt;br /&gt;
== Resolución numérica del problema de valor inicial ==&lt;br /&gt;
&lt;br /&gt;
En este apartado resolveremos el problema de valor inicial planteado anteriormente con tres métodos de integración numérica: el método de Euler, el método del Trapecio y el método de Runge-Kutta de orden 4.&lt;br /&gt;
&lt;br /&gt;
=== Método de Euler ===&lt;br /&gt;
&lt;br /&gt;
El método de Euler, llamado así en honor al matemático Leonhard Euler, es un procedimiento de integración numérica. Su expresión matemática es: &lt;br /&gt;
&amp;lt;math&amp;gt;  PVI =   &lt;br /&gt;
\begin{cases}&lt;br /&gt;
 y_0 \\&lt;br /&gt;
 y_{n+1}  = y_n + h*f(t_n,y_n) \\&lt;br /&gt;
\end{cases}\quad&lt;br /&gt;
   &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
A continuación emplearemos esta expresión en un programa de Matlab para obtener una aproximación de las soluciones. El código de dicho programa es el siguiente.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Eulergrafica.png|400px|miniaturadeimagen|derecha|Representación gráfica y(t). Método de Euler]]&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
%Método de Euler&lt;br /&gt;
clc&lt;br /&gt;
&lt;br /&gt;
%Datos iniciales&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=4;&lt;br /&gt;
y0=0.01;&lt;br /&gt;
h=0.1;&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=10;&lt;br /&gt;
&lt;br /&gt;
%Cálculo de subintervalos&lt;br /&gt;
N=round((tN-t0)/h);&lt;br /&gt;
t=t0:h:tN;&lt;br /&gt;
&lt;br /&gt;
%Creamos el vector donde vamos a guardar las soluciones&lt;br /&gt;
y=zeros(1,N+1);&lt;br /&gt;
y(1)=y0;&lt;br /&gt;
&lt;br /&gt;
%Euler&lt;br /&gt;
for i=1:N;&lt;br /&gt;
    y(i+1)=y(i)+h*(1.01*y(i)-(y(i)).^2);&lt;br /&gt;
end&lt;br /&gt;
%Tabla de Resultados&lt;br /&gt;
[t',y']&lt;br /&gt;
x=1.01-y;&lt;br /&gt;
hold on &lt;br /&gt;
plot(t,y,'r')&lt;br /&gt;
plot(t,x,'b')&lt;br /&gt;
hold off&lt;br /&gt;
legend('Sustancia B: y(t)','Sustancia A: x(t)','Location','best');&lt;br /&gt;
xlabel('Tiempo (s)')&lt;br /&gt;
ylabel('Concentración (mol/l)')&lt;br /&gt;
grid on&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
=== Método del trapecio ===&lt;br /&gt;
&lt;br /&gt;
Vamos a aplicar un método de integración numérica conocido como el Método del Trapecio por aproximar el valor de la integral al del área de un trapecio. Su expresión matemática es:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;  PVI =   &lt;br /&gt;
\begin{cases}&lt;br /&gt;
 y_0 \\&lt;br /&gt;
 y_{n+1}  =  y_n + \frac{h}{2}*(f(t_n,y_n)+f(t_{n+1},y_{n+1}))\\&lt;br /&gt;
\end{cases}\quad&lt;br /&gt;
   &amp;lt;/math&amp;gt;&lt;br /&gt;
   &lt;br /&gt;
Introducimos esta expresión en el código y obtenemos la gráfica de la solución.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Trapeciografica.png|400px|miniaturadeimagen|derecha|Representación gráfica y(t). Método del Trapecio]]&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
%Método del Trapecio&lt;br /&gt;
clc&lt;br /&gt;
&lt;br /&gt;
%Datos iniciales&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=4;&lt;br /&gt;
y0=0.01;&lt;br /&gt;
h=0.1;&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=10;&lt;br /&gt;
&lt;br /&gt;
%Cálculo de subintervalos&lt;br /&gt;
N=round((tN-t0)/h);&lt;br /&gt;
t=t0:h:tN;&lt;br /&gt;
&lt;br /&gt;
%Creamos el vector donde vamos a guardar las soluciones&lt;br /&gt;
y=zeros(1,N+1);&lt;br /&gt;
y(1)=y0;&lt;br /&gt;
&lt;br /&gt;
for i=1:N&lt;br /&gt;
y(i+1)=(((1-(h/2)*1.01)-sqrt(((1-(h/2)*1.01)^2)+4*(h/2)*((1+(h/2)*1.01)*y(i)-(h/2)*(y(i))^2)))/-h);&lt;br /&gt;
end&lt;br /&gt;
%Sacamos la tabla de resultados&lt;br /&gt;
[t',y']&lt;br /&gt;
x=1.01-y;&lt;br /&gt;
%Gráfico&lt;br /&gt;
hold on&lt;br /&gt;
plot(t,y,'r')&lt;br /&gt;
plot(t,x,'b')&lt;br /&gt;
legend('Sustancia B: y(t)','Sustancia A: x(t)','Location','best');&lt;br /&gt;
xlabel('Tiempo (s)')&lt;br /&gt;
ylabel('Concentración (mol/l)')&lt;br /&gt;
grid on&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
=== Método de Runge-Kutta ===&lt;br /&gt;
&lt;br /&gt;
El método de resolución numérica de Runge-Kutta, involucra un gran número de parámetros. Para simplificar la implementación de este método en Matlab, utilizaremos la función ''inline'', con la que declararemos previamente la función algebraica necesaria para el cálculo de los parámetros &amp;lt;math&amp;gt;k_i&amp;lt;/math&amp;gt;, ahorrándonos tener que escribir innumerables veces la correspondiente expresión matemática.&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
A continuación, detallamos la función &amp;lt;math&amp;gt;f(y)&amp;lt;/math&amp;gt; de la que dependerán los valores de los parámetros &amp;lt;math&amp;gt;k_i&amp;lt;/math&amp;gt;:&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;f(y)=y'(t)=1.01y(t)-y(t)^2&lt;br /&gt;
&lt;br /&gt;
\quad → \quad&lt;br /&gt;
&lt;br /&gt;
\begin{cases}&lt;br /&gt;
 k_1 &amp;amp; =  f(y_i) \\&lt;br /&gt;
 k_2 &amp;amp; =  f(y_i + {1 \over 2}k_1h) \\&lt;br /&gt;
 k_3 &amp;amp; =  f(y_i + \frac{1}{2}k_2h) \\&lt;br /&gt;
 k_4 &amp;amp; =  f(y_i + k_3h) \\&lt;br /&gt;
\end{cases}\quad [h=0.1]&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Entonces el método RK4 para este problema está dado por la siguiente ecuación:&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;y_{i+1} = y_{i} + {1 \over 6}h(k_1+2k_2+2k_3+k_4)&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Mediante el siguiente programa en Matlab calculamos numéricamente la solución y la representamos en un gráfico:&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Archivo:RK4II.png|400px|miniaturadeimagen|derecha|Representación gráfica y(t). Método Runge-Kutta]]&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
%Método de Runge-Kutta&lt;br /&gt;
clc&lt;br /&gt;
&lt;br /&gt;
%Función f(t)=y'(t)&lt;br /&gt;
fy=inline('1.01*y-y^2','y');&lt;br /&gt;
&lt;br /&gt;
%Datos del problema&lt;br /&gt;
y0=0.01;&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=10;&lt;br /&gt;
h=0.1;&lt;br /&gt;
&lt;br /&gt;
%Variable independiente (t)&lt;br /&gt;
t=t0:h:tN;&lt;br /&gt;
&lt;br /&gt;
%Variable dependiente (y)&lt;br /&gt;
y=zeros(1,length(t));&lt;br /&gt;
y(1)=y0;&lt;br /&gt;
&lt;br /&gt;
for i=1:length(t)-1&lt;br /&gt;
    k1=fy(y(i));&lt;br /&gt;
    k2=fy(y(i)+k1/2*h);&lt;br /&gt;
    k3=fy(y(i)+k2/2*h);&lt;br /&gt;
    k4=fy(y(i)+k3*h);&lt;br /&gt;
    y(i+1)=y(i)+h/6*(k1+2*k2+2*k3+k4);&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
%Variable dependiente (x)&lt;br /&gt;
x=1.01-y;&lt;br /&gt;
&lt;br /&gt;
%Representación gráfica&lt;br /&gt;
hold on&lt;br /&gt;
plot(t,x,'b')&lt;br /&gt;
plot(t,y,'r')&lt;br /&gt;
legend('Sustancia A: x(t)','Sustancia B: y(t)')&lt;br /&gt;
xlabel('Tiempo (s)')&lt;br /&gt;
ylabel('Concentración (mol/l)')&lt;br /&gt;
grid on&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
=== Comparación de métodos===&lt;br /&gt;
&lt;br /&gt;
Podemos observar fácilmente que las gráficas obtenidas con los diferentes métodos son iguales a primera vista. Sin embargo, superponiéndolas queda patente que no son exactamente iguales debido a que los métodos no poseen la misma precisión y , al operar todos con la misma longitud de paso, unos aproximan la solución exacta mejor que otros. Así se observa en estas imágenes:&lt;br /&gt;
&lt;br /&gt;
[[Archivo:comparativa1.jpg|400px|miniaturadeimagen|izquierda|Comparación de métodos]]&lt;br /&gt;
[[Archivo:comparativa2.jpg|400px|miniaturadeimagen|derecha|Comparación de métodos]]&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
Como podemos comprobar en las imágenes, el método de Euler es menos preciso que el del trapecio o el de Runge-Kutta.&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Resolución en forma de sistema de ecuaciones ==&lt;br /&gt;
&lt;br /&gt;
A continuación vamos a plantear el problema de valor inicial con un sistema no lineal de dos ecuaciones equivalente al problema resuelto anteriormente.&lt;br /&gt;
&lt;br /&gt;
Estas ecuaciones serán:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;(PVI)&lt;br /&gt;
\begin{cases}&lt;br /&gt;
    y'(t)=k_1 x(t)y(t) \\&lt;br /&gt;
    x'(t)=-k_1 x(t)y(t) \\&lt;br /&gt;
    \\&lt;br /&gt;
    x(0)=1 \\&lt;br /&gt;
    y(0) = 0.01&lt;br /&gt;
\end{cases}&lt;br /&gt;
\quad t\in[0,10]&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Resolveremos el problema por el método de Euler y por el método de Runge-Kutta, plasmando las soluciones en gráficos.&lt;br /&gt;
&lt;br /&gt;
=== Método de Euler ===&lt;br /&gt;
&lt;br /&gt;
En este caso aplicaremos en el siguiente código la expresión para EDO a cada una de las ecuaciones que conforma el sistema, obteniendo la correspondiente gráfica.&lt;br /&gt;
 &lt;br /&gt;
[[Archivo:SistEuler.png|400px|miniaturadeimagen|derecha|Representación gráfica de las concentraciones de A y B. Resolución del sistema por Euler]]&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
&lt;br /&gt;
%Resolución del sistema por el método de Euler&lt;br /&gt;
&lt;br /&gt;
clear all&lt;br /&gt;
&lt;br /&gt;
%Definimos el vector de la variable independiente, el número de&lt;br /&gt;
%subintervalos y la longitud de paso&lt;br /&gt;
&lt;br /&gt;
t0 = 0;&lt;br /&gt;
tN = 10;&lt;br /&gt;
h = 0.1;&lt;br /&gt;
t = t0:h:tN&lt;br /&gt;
N = (tN-t0)/h;&lt;br /&gt;
&lt;br /&gt;
%Definimos los vectores de las variables dependientes&lt;br /&gt;
&lt;br /&gt;
x = zeros(1, N+1);&lt;br /&gt;
y = zeros(1, N+1);&lt;br /&gt;
&lt;br /&gt;
x(1) = 1;&lt;br /&gt;
y(1) = 0.01;&lt;br /&gt;
&lt;br /&gt;
for i = 1:N&lt;br /&gt;
    &lt;br /&gt;
    x(i+1)=x(i)+h*(-x(i).*y(i));&lt;br /&gt;
    y(i+1)=y(i)+h*(y(i).*x(i));&lt;br /&gt;
    &lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
%Representamos gráficamente las soluciones&lt;br /&gt;
&lt;br /&gt;
hold on&lt;br /&gt;
&lt;br /&gt;
plot(t,x,'b');&lt;br /&gt;
plot(t,y,'r');&lt;br /&gt;
grid on&lt;br /&gt;
&lt;br /&gt;
legend('Sustancia A: x(t)','Sustancia B: y(t)')&lt;br /&gt;
xlabel('Tiempo (s)')&lt;br /&gt;
ylabel('Concentración (mol/l)')&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
hold off&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
}}&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Método de Runge-Kutta===&lt;br /&gt;
&lt;br /&gt;
El método de resolución numérica de Runge-Kutta, involucra un gran número de parámetros. Para simplificar la implementación de este método en Matlab, el sistema se tratará como una matriz &amp;lt;math&amp;gt;z&amp;lt;/math&amp;gt;. Además, utilizaremos la función ''inline'', con la que declararemos previamente la función algebraica necesaria para el cálculo de los parámetros &amp;lt;math&amp;gt;k_i&amp;lt;/math&amp;gt;, ahorrándonos tener que escribir innumerables veces la correspondiente expresión matemática.&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Primero, expresamos el sistema en forma matricial:&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;(PVI)\begin{cases}&lt;br /&gt;
    x'(t)=-k_1 x(t)y(t) \\&lt;br /&gt;
    y'(t)=k_1 x(t)y(t) \\&lt;br /&gt;
    \\&lt;br /&gt;
    x(0)=1 \\&lt;br /&gt;
    y(0) = 0.01&lt;br /&gt;
\end{cases}\quad t\in[0,10]&lt;br /&gt;
&lt;br /&gt;
\quad \→ \quad k_1=1\quad \Rightarrow \quad&lt;br /&gt;
&lt;br /&gt;
(PVI)\begin{cases}\vec{z}'(t)=&lt;br /&gt;
   \begin{bmatrix}&lt;br /&gt;
      x'(t) \\&lt;br /&gt;
      y'(t) \\&lt;br /&gt;
   \end{bmatrix}&lt;br /&gt;
=&lt;br /&gt;
      \begin{bmatrix}&lt;br /&gt;
      -x(t)y(t) \\&lt;br /&gt;
      x(t)y(t) \\&lt;br /&gt;
   \end{bmatrix}&lt;br /&gt;
&lt;br /&gt;
 \\ \\ \vec{z}(0)=&lt;br /&gt;
   \begin{bmatrix}&lt;br /&gt;
      x(0) \\&lt;br /&gt;
      y(0) \\&lt;br /&gt;
   \end{bmatrix}&lt;br /&gt;
=&lt;br /&gt;
      \begin{bmatrix}&lt;br /&gt;
      1 \\&lt;br /&gt;
      0.01 \\&lt;br /&gt;
   \end{bmatrix}&lt;br /&gt;
\end{cases}\quad t\in[0,10]&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
A continuación, detallamos la función &amp;lt;math&amp;gt;\vec{F}&amp;lt;/math&amp;gt; de la que dependerán los valores de los parámetros &amp;lt;math&amp;gt;k_i&amp;lt;/math&amp;gt;:&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;\vec{F}(x,y)=\vec{F}(\vec{z})=&lt;br /&gt;
&lt;br /&gt;
\begin{bmatrix}&lt;br /&gt;
    f(\vec{z}) \\&lt;br /&gt;
    g(\vec{z}) \\&lt;br /&gt;
\end{bmatrix}=&lt;br /&gt;
&lt;br /&gt;
\begin{bmatrix}&lt;br /&gt;
    x'(t) \\&lt;br /&gt;
    y'(t) \\&lt;br /&gt;
\end{bmatrix}=&lt;br /&gt;
&lt;br /&gt;
\vec{z}'(t)=&lt;br /&gt;
&lt;br /&gt;
\begin{bmatrix}&lt;br /&gt;
    -x(t)y(t) \\&lt;br /&gt;
    x(t)y(t) \\&lt;br /&gt;
\end{bmatrix}&lt;br /&gt;
&lt;br /&gt;
\quad → \quad&lt;br /&gt;
&lt;br /&gt;
\begin{cases}&lt;br /&gt;
 [\vec{k_1}] &amp;amp; =  F(\vec{z}_i) \\&lt;br /&gt;
 [\vec{k_2}] &amp;amp; =  F(\vec{z}_i + {1 \over 2}\vec{k_1}h) \\&lt;br /&gt;
 [\vec{k_3}] &amp;amp; =  F(\vec{z}_i + \frac{1}{2}\vec{k_2}h) \\&lt;br /&gt;
 [\vec{k_4}] &amp;amp; =  F(\vec{z}_i + \vec{k_3}h) \\&lt;br /&gt;
\end{cases}\quad [h=0.1]&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Entonces el método RK4 para este problema está dado por la siguiente ecuación:&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;\vec{z}_{i+1} = \vec{z}_{i} + {1 \over 6}h(\vec{k_1}+2\vec{k_2}+2\vec{k_3}+\vec{k_4})&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Mediante el siguiente programa en Matlab calculamos numéricamente la solución y la representamos en un gráfico:&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Archivo:sistema_RK4.png|400px|miniaturadeimagen|derecha|Representación gráfica de las concentraciones de A y B. Resolución del sistema por Runge-Kutta]]&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
%Método de Runge-Kutta&lt;br /&gt;
clc&lt;br /&gt;
&lt;br /&gt;
%Función F=[x'(t); y'(t)]&lt;br /&gt;
F=inline('[-z(1)*z(2);z(1)*z(2)]','z');&lt;br /&gt;
&lt;br /&gt;
%Datos del problema &lt;br /&gt;
x0=1;&lt;br /&gt;
y0=0.01;&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=10;&lt;br /&gt;
h=0.1;&lt;br /&gt;
&lt;br /&gt;
%Vector de variable independiente (t)&lt;br /&gt;
t=t0:h:tN;&lt;br /&gt;
&lt;br /&gt;
%Matriz de variables dependientes z=[x;y]&lt;br /&gt;
z=zeros(2,length(t));&lt;br /&gt;
z(:,1)=[x0;y0];&lt;br /&gt;
&lt;br /&gt;
for i = 1:length(t)-1&lt;br /&gt;
    k1=F(z(:,i));&lt;br /&gt;
    k2=F(z(:,i)+k1.*h/2);&lt;br /&gt;
    k3=F(z(:,i)+k2.*h/2);&lt;br /&gt;
    k4=F(z(:,i)+k3.*h);&lt;br /&gt;
    z(:,i+1)=z(:,i)+h/6.*(k1+2.*k2+2.*k3+k4);&lt;br /&gt;
end&lt;br /&gt;
 &lt;br /&gt;
%Representación gráfica&lt;br /&gt;
hold on&lt;br /&gt;
plot(t,z(1,:))&lt;br /&gt;
plot(t,z(2,:),'r')&lt;br /&gt;
legend('Sustancia A: x(t)','Sustancia B: y(t)')&lt;br /&gt;
xlabel('Tiempo (s)')&lt;br /&gt;
ylabel('Concentración (mol/l)')&lt;br /&gt;
grid on&lt;br /&gt;
%hold off&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
== Interpretación de las gráficas ==&lt;br /&gt;
&lt;br /&gt;
Como cabía esperar, obtenemos la misma solución resolviendo el problema como sistema o como EDO. Podemos observar por los resultados obtenidos que la velocidad de aparición de B es igual a la velocidad de desaparición de A (como dicta el principio de conservación de la masa), que A acaba desapareciendo prácticamente por completo y que la concentración de B termina por estabilizarse alrededor de 1 mol/l. Ambos compuestos alcanzan los extremos de sus concentraciones en el mismo instante de tiempo&lt;br /&gt;
&lt;br /&gt;
También cabe destacar que cuando el tiempo transcurrido alcanza 4,5 segundos las concentraciones de ambos compuestos son las mismas.&lt;br /&gt;
&lt;br /&gt;
= Reacción II =&lt;br /&gt;
&lt;br /&gt;
En este apartado vamos a estudiar la reacción propuesta por Alfred J. Lotka en 1920, que es la siguiente:&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt; A + X →_{k1} 2X;&amp;lt;/math&amp;gt;     :&amp;lt;math&amp;gt; X + Y →_{k2} 2Y;&amp;lt;/math&amp;gt;     :&amp;lt;math&amp;gt;Y →_{k3} 2B  &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Como se puede observar, se trata de una reacción compleja integrada por 3 reacciones simples (las dos primeras autocatalíticas) en las que intervienen un total de 4 compuestos, A, B, X e Y. Siguiendo el desarrollo de la reacción, es lógico suponer que A se agotará al comienzo de la reacción, que los máximos de concentración de X e Y se darán en los estados intermedios y que al final el compuesto B será el único restante, siendo el producto final de la reacción.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Interpretación del problema y deducción de las ecuaciones diferenciales ==&lt;br /&gt;
&lt;br /&gt;
Para averiguar cómo evolucionan las concentraciones de los cuatro compuestos durante el desarrollo de la reacción necesitaremos obtener cuatro ecuaciones diferenciales. Para ello nos volveremos a basar en los principios físicos que ya empleamos en la anterior reacción. Definimos A(t), x(t), y(t), y B(t) (A, x, y, B; para ahorrar notación) como las concentraciones de A, X, Y, y B, respectivamente. &lt;br /&gt;
&lt;br /&gt;
En primer lugar aplicamos el Principio de Conservación de la masa, que establece que la suma de las concentraciones de los compuestos es constante (no desaparece masa en el proceso), lo que derivando nos indica que:&lt;br /&gt;
&lt;br /&gt;
: &amp;lt;math&amp;gt; A' + x' + y' + B' = 0 \quad\quad(I)&amp;lt;/math&amp;gt;       &lt;br /&gt;
&lt;br /&gt;
A continuación aplicaremos la Ley de Acción de Masas (velocidad de reacción proporcional al producto de la concentración de los reactivos).&lt;br /&gt;
&lt;br /&gt;
Aplicando esta ley a la última reacción simple obtenemos que: &lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;B'=k_3y \quad\quad(II)&amp;lt;/math&amp;gt;        &lt;br /&gt;
&lt;br /&gt;
En el caso de las concentraciones de X e Y las expresiones resultantes son algo más complicadas ya que estos dos compuestos actúan como reactivos y productos en más de una reacción simple, por lo que la variación de sus concentraciones será la suma de las variaciones de las reacciones en las que aparezcan:&lt;br /&gt;
&lt;br /&gt;
: &amp;lt;math&amp;gt; x' = x'_{1} + x'_{2} → x' = k_{1}Ax - k_{2}xy \quad\quad(III)&amp;lt;/math&amp;gt;        &lt;br /&gt;
: &amp;lt;math&amp;gt; y' = y'_{2} + y'_{3} → y' = k_{2}xy − k_3{y} \quad\quad(IV)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Por último sustituimos (II), (III) y (IV) en (I) obteniendo: &lt;br /&gt;
&lt;br /&gt;
: &amp;lt;math&amp;gt; A' + k_{1}Ax - k{2}xy + k_{2}xy − k_3{y}+ k_3y= 0 : &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
De donde obtenemos que:&lt;br /&gt;
&lt;br /&gt;
: &amp;lt;math&amp;gt; A' = -k_{1}Ax &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Ahora que ya tenemos las variaciones de concentración de los compuestos en función de las concentraciones podemos aplicar métodos numéricos que nos lleven a una solución aproximada.&lt;br /&gt;
&lt;br /&gt;
== Resolución numérica del sistema de ecuaciones ==&lt;br /&gt;
&lt;br /&gt;
Una vez obtenidas las ecuaciones y conociendo las condiciones iniciales y los valores de las constantes podemos plantear el problema de valor inicial para luego resolverlo.&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;(PVI)&lt;br /&gt;
\begin{cases}&lt;br /&gt;
    A' = -k_{1}Ax\\&lt;br /&gt;
    x' = k_{1}Ax - k{2}xy\\&lt;br /&gt;
    y' = k_{2}xy − k_3{y}\\&lt;br /&gt;
    B'=k_3y \\&lt;br /&gt;
\\&lt;br /&gt;
    A(0)=5  \\&lt;br /&gt;
    x(0)=5*10^{-4} \\&lt;br /&gt;
    y(0)=10^{-5}\\&lt;br /&gt;
    B(0)=0 \\&lt;br /&gt;
\end{cases}&lt;br /&gt;
\quad t\in[0,200]&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Siendo &amp;lt;math&amp;gt; k_{1}=K_{2}=2k_{3}=0.1 &amp;lt;/math&amp;gt; y las unidades de la concentración mol/l.&lt;br /&gt;
&lt;br /&gt;
=== Método de Euler ===&lt;br /&gt;
&lt;br /&gt;
Aplicamos el método de Euler de forma análoga a como lo hicimos en [[Reacciones_con_autocatálisis._Grupo_D12#Método_de_Euler_2|apartado 2.5.1]]&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Euler lotka0.01.png|400px|miniaturadeimagen|derecha|Representación gráfica de las concentraciones de A, B, X, e Y a lo largo del tiempo. Resoluciónd delsistema por el método de Euler con longitud de paso h=0.01]] &lt;br /&gt;
[[Archivo:Euler lotka0.001.png|400px|miniaturadeimagen|derecha|Representación gráfica de las concentraciones de A, B, X, e Y a lo largo del tiempo. Resoluciónd delsistema por el método de Euler con longitud de paso h=0.001]]&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
&lt;br /&gt;
%Resolución del sistema de la reacción de Lotka por el método de Euler&lt;br /&gt;
&lt;br /&gt;
clear all&lt;br /&gt;
&lt;br /&gt;
%Definimos la variable independiente y establecemos los datos del problema&lt;br /&gt;
%de valor inicial. Para la longitud de paso h introducimos en primer lugar&lt;br /&gt;
%0.01 y luego 0.001&lt;br /&gt;
&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=200;&lt;br /&gt;
h= input('Introduzca una longitud de paso ');&lt;br /&gt;
t = t0:h:tN;&lt;br /&gt;
N=(tN-t0)/h;&lt;br /&gt;
k1 = 0.1;&lt;br /&gt;
k2 = 0.1;&lt;br /&gt;
k3 = 0.05;&lt;br /&gt;
A0 = 5;&lt;br /&gt;
B0 = 0;&lt;br /&gt;
X0 = 5*10^(-4);&lt;br /&gt;
Y0 = 10^(-5);&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
%Definimos las variables dependientes.&lt;br /&gt;
&lt;br /&gt;
A = zeros(1, N-1);&lt;br /&gt;
B = A;&lt;br /&gt;
X = A;&lt;br /&gt;
Y = A;&lt;br /&gt;
&lt;br /&gt;
A(1) = A0;&lt;br /&gt;
B(1) = B0;&lt;br /&gt;
X(1) = X0;&lt;br /&gt;
Y(1) = Y0;&lt;br /&gt;
&lt;br /&gt;
for i = 1:N&lt;br /&gt;
    &lt;br /&gt;
    X(i+1) = X(i) + h*(k1*A(i)*X(i)-k2*Y(i)*X(i));&lt;br /&gt;
    Y(i+1)=Y(i)+h.*(k2.*X(i).*Y(i)-k3.*Y(i));&lt;br /&gt;
    B(i+1) = B(i) + h*(k3*Y(i));&lt;br /&gt;
    A(i+1) = A(i) + h*(-k1*A(i)*X(i));&lt;br /&gt;
   &lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
%Representamos gráficamente la solución&lt;br /&gt;
&lt;br /&gt;
hold on&lt;br /&gt;
&lt;br /&gt;
plot (t,A,'b')&lt;br /&gt;
plot(t, X, 'r')&lt;br /&gt;
plot(t,Y, 'g')&lt;br /&gt;
plot(t, B, 'm')&lt;br /&gt;
legend('Sustancia A: A(t)','Sustancia X: x(t)','Sustancia Y: y(t)','Sustancia B: B(t)','Location','Best')&lt;br /&gt;
xlabel('Tiempo (s)')&lt;br /&gt;
ylabel('Concentración (mol/l)')&lt;br /&gt;
grid on&lt;br /&gt;
&lt;br /&gt;
hold off&lt;br /&gt;
&lt;br /&gt;
}}&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
A continuación tendremos que comprobar si el método es estable. &amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
Un método es estable cuando el error local es pequeño y además este error no se amplifica a lo largo del tiempo. Para calificar la estabilidad del método de Euler resolveremos el sistema anterior con este método, con pasos &amp;quot;h=0.01&amp;quot; y &amp;quot;h=0.001&amp;quot;, y lo compararemos con la resolución del sistema con el método de Heun, que se asemeja más a la solución exacta.&amp;lt;br /&amp;gt;&lt;br /&gt;
En la comparación representaremos en azul el método de Heun y en rojo el método de Euler.&amp;lt;br /&amp;gt;&lt;br /&gt;
Para &amp;quot;h=0.01&amp;quot; tenemos lo siguiente:&lt;br /&gt;
[[Archivo:1estabilidad123.jpg|400px|miniaturadeimagen|izquierda|Comparación entre Método de Heun (Azul) con el Método de Euler con paso h=0.01 (Rojo)]] &lt;br /&gt;
[[Archivo:1estabilidad321.jpg|400px|miniaturadeimagen|derecha|Comparación entre Método de Heun (Azul) con el Método de Euler con paso h=0.01 (Rojo)]] &lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
Para &amp;quot;h=0.001&amp;quot; tenemos lo siguiente:&lt;br /&gt;
[[Archivo:2estabilidad123.jpg|400px|miniaturadeimagen|izquierda|Comparación entre Método de Heun (Azul) con el Método de Euler con paso h=0.001 (Rojo)]] &lt;br /&gt;
[[Archivo:2estabilidad321.jpg|400px|miniaturadeimagen|derecha|Comparación entre Método de Heun (Azul) con el Método de Euler con paso h=0.001 (Rojo)]]&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
Como podemos ver en las imágenes de los dos procesos las gráficas se superponen y no se aprecian diferencias hasta que no ampliamos la imagen. Y esto sucede en todo momento con lo que podemos garantizar que en este caso el método de Euler es estable para los pasos que hemos usado.&lt;br /&gt;
&lt;br /&gt;
=== Método de Heun ===&lt;br /&gt;
&lt;br /&gt;
Si bien el método de resolución numérica de Heun no involucra un número de parámetros tan notable como el método de Runge-Kutta, en este caso tenemos un sistema de 4 ecuaciones diferenciales, por lo que, en aras de simplificar, utilizaremos el mismo criterio que en el [[Reacciones_con_autocatálisis._Grupo_D12#Método_de_Runge-Kutta_2|apartado 2.5.2]].: El sistema se tratará como una matriz &amp;lt;math&amp;gt;z&amp;lt;/math&amp;gt;, y para la obtención de los parámetros &amp;lt;math&amp;gt;k_i&amp;lt;/math&amp;gt; utilizaremos la función ''inline'', con la que declararemos previamente las expresiones necesarias para el cálculo de los parámetros &amp;lt;math&amp;gt;k_i&amp;lt;/math&amp;gt;.&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Primero, expresamos el sistema en forma matricial:&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;(PVI)\begin{cases}&lt;br /&gt;
A'(t)=-k_1 A(t)x(t) \\&lt;br /&gt;
x'(t)=k_1 A(t)x(t)-k_2 x(t)y(t) \\&lt;br /&gt;
y'(t)=k_2 x(t)y(t)-k_3 y(t) \\&lt;br /&gt;
B'(t)=k_3 x(t)y(t) \\ \\&lt;br /&gt;
A(0)=5 \\&lt;br /&gt;
x(0)=5·10^{-4} \\&lt;br /&gt;
y(0)=10^{-5} \\&lt;br /&gt;
B(0) = 0&lt;br /&gt;
\end{cases}\quad t\in[0,200]&lt;br /&gt;
&lt;br /&gt;
\quad \Rightarrow \quad&lt;br /&gt;
&lt;br /&gt;
\begin{cases}&lt;br /&gt;
k_1=0.1 \\&lt;br /&gt;
k_2=0.1 \\&lt;br /&gt;
k_3=0.05 \\&lt;br /&gt;
&lt;br /&gt;
\end{cases}&lt;br /&gt;
&lt;br /&gt;
\quad \Rightarrow \quad&lt;br /&gt;
&lt;br /&gt;
(PVI)\begin{cases}\vec{z}'(t)=&lt;br /&gt;
   \begin{bmatrix}&lt;br /&gt;
      A'(t) \\&lt;br /&gt;
      x'(t) \\&lt;br /&gt;
      y'(t) \\&lt;br /&gt;
      B'(t) \\&lt;br /&gt;
   \end{bmatrix}&lt;br /&gt;
=&lt;br /&gt;
      \begin{bmatrix}&lt;br /&gt;
      -0.1 A(t)x(t) \\&lt;br /&gt;
      0.1 A(t)x(t)-0.1 x(t)y(t) \\&lt;br /&gt;
      0.1 x(t)y(t)-0.05 y(t) \\&lt;br /&gt;
      0.05 y(t)x(t)\\&lt;br /&gt;
   \end{bmatrix}&lt;br /&gt;
&lt;br /&gt;
 \\ \\ \vec{z}(0)=&lt;br /&gt;
   \begin{bmatrix}&lt;br /&gt;
      A(0) \\&lt;br /&gt;
      x(0) \\&lt;br /&gt;
      y(0) \\&lt;br /&gt;
      B(0) \\&lt;br /&gt;
   \end{bmatrix}&lt;br /&gt;
=&lt;br /&gt;
      \begin{bmatrix}&lt;br /&gt;
      5 \\&lt;br /&gt;
      5·10^{-4} \\&lt;br /&gt;
      10^{-5} \\&lt;br /&gt;
      0&lt;br /&gt;
   \end{bmatrix}&lt;br /&gt;
\end{cases}\quad t\in[0,200]&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
A continuación, detallamos la función &amp;lt;math&amp;gt;\vec{F}&amp;lt;/math&amp;gt; de la que dependerán los valores de los parámetros &amp;lt;math&amp;gt;k_i&amp;lt;/math&amp;gt;:&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;\vec{F}(A,x,y,B)=\vec{F}(\vec{z})=&lt;br /&gt;
\begin{bmatrix}&lt;br /&gt;
    f(\vec{z}) \\ &lt;br /&gt;
    g(\vec{z}) \\ &lt;br /&gt;
    h(\vec{z}) \\ &lt;br /&gt;
    i(\vec{z}) \\ &lt;br /&gt;
\end{bmatrix}=&lt;br /&gt;
\begin{bmatrix}&lt;br /&gt;
    A'(t) \\&lt;br /&gt;
    x'(t) \\&lt;br /&gt;
    y'(t) \\&lt;br /&gt;
    B'(t) \\&lt;br /&gt;
\end{bmatrix}=&lt;br /&gt;
\vec{z}'(t)=&lt;br /&gt;
      \begin{bmatrix}&lt;br /&gt;
      -0.1 A(t)x(t) \\&lt;br /&gt;
      0.1 A(t)x(t)-0.1 x(t)y(t) \\&lt;br /&gt;
      0.1 x(t)y(t)-0.05 y(t) \\&lt;br /&gt;
      0.05 y(t)x(t)\\&lt;br /&gt;
   \end{bmatrix}&lt;br /&gt;
&lt;br /&gt;
\quad → \quad&lt;br /&gt;
&lt;br /&gt;
\begin{cases}&lt;br /&gt;
 [\vec{k_1}] &amp;amp; =  F(\vec{z}_i) \\&lt;br /&gt;
 [\vec{k_2}] &amp;amp; =  F(\vec{z}_i + {1 \over 2}\vec{k_1}h) \\&lt;br /&gt;
\end{cases}\quad [h=0.01]&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Entonces el método de Heun para este problema está dado por la siguiente ecuación:&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;\vec{z}_{i+1} = \vec{z}_{i} + {1 \over 2}h(\vec{k_1}+\vec{k_2})&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Mediante el siguiente programa en Matlab calculamos numéricamente la solución y la representamos en un gráfico:&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Archivo:AXYBRK4.png|400px|miniaturadeimagen|derecha|Representación gráfica de las concentraciones de A,X,Y y B. Resolución del sistema por Heun]]&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
%Método de Heun&lt;br /&gt;
clc&lt;br /&gt;
&lt;br /&gt;
%Función F=[A'(t);x'(t); y'(t);B'(t)]&lt;br /&gt;
F=inline('0.1.*[-z(1)*z(2);z(1)*z(2)-z(2)*z(3);z(2)*z(3)-z(3)/2;z(3)/2]','z');&lt;br /&gt;
&lt;br /&gt;
%Datos del problema&lt;br /&gt;
A0=5;&lt;br /&gt;
x0=5*10^-4;&lt;br /&gt;
y0=10^(-5);&lt;br /&gt;
B0=0;&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=200;&lt;br /&gt;
h=0.1;&lt;br /&gt;
&lt;br /&gt;
%Vector de variable independiente (t)&lt;br /&gt;
t=t0:h:tN;&lt;br /&gt;
&lt;br /&gt;
%Matriz de variables dependientes z=[A;x;y;B]&lt;br /&gt;
z=zeros(4,length(t));&lt;br /&gt;
z(:,1)=[A0;x0;y0;B0];&lt;br /&gt;
&lt;br /&gt;
for i = 1:length(t)-1&lt;br /&gt;
    k1=F(z(:,i));&lt;br /&gt;
    k2=F(z(:,i)+k1.*h/2);&lt;br /&gt;
    z(:,i+1)=z(:,i)+h/2.*(k1+k2);&lt;br /&gt;
end&lt;br /&gt;
 &lt;br /&gt;
%Representación gráfica&lt;br /&gt;
hold on&lt;br /&gt;
plot(t,z(1,:),'b')&lt;br /&gt;
plot(t,z(2,:),'r')&lt;br /&gt;
plot(t,z(3,:),'g')&lt;br /&gt;
plot(t,z(4,:),'m')&lt;br /&gt;
legend('Sustancia A: A(t)','Sustancia X: x(t)','Sustancia Y: y(t)','Sustancia B: B(t)','Location','Best')&lt;br /&gt;
xlabel('Tiempo (s)')&lt;br /&gt;
ylabel('Concentración (mol/l)')&lt;br /&gt;
grid on&lt;br /&gt;
hold off&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
== Interpretación de las gráficas == &lt;br /&gt;
 &lt;br /&gt;
El proceso comienza con el predominio absoluto del compuesto A en la concentración total, siendo la presencia de los otros tres compuestos despreciable. Durante los primeros segundos la situación apenas cambia, pero tras los diez primeros segundos la concentración de A cae bruscamente mientras que la concentración de X aumenta a la misma velocidad; antes de llegar a los veinte segundos transcurridos las concentraciones de ambos compuestos se igualan y otros quince segundos más tarde el compuesto A  prácticamente ha desaparecido y el X ha alcanzado su concentración máxima (5 mol/litro).&lt;br /&gt;
&lt;br /&gt;
Es entonces cuando concluye la primera reacción y comienzan las otras dos, al no haber más compuesto A que cree compuesto X. La velocidad de aparición de Y es inicialmente mayor que la de B, superando al poco tiempo en concentración a la sustancia X. Sin embargo, llega un momento en el que la concentración de X es tan baja que se ralentiza la creación de Y y pronto empieza a disminuir su concentración tras alcanzar un máximo en torno a los 56 segundos, perdiendo peso la segunda reacción en beneficio de la tercera.&lt;br /&gt;
&lt;br /&gt;
Tras los 60 segundos de reacción el compuesto X pasa a tener una concentración despreciable, por lo que la única reacción simple que se sigue desarrollando es la tercera, destruyéndose reactivo Y y creándose producto B. La concentración de Y va reduciéndose paulatinamente hasta que en torno a los 160 segundos de reacción alcanza niveles insignificantes mientras que la concentración de B alcanza su máximo de 5 mol/litro.&lt;br /&gt;
&lt;br /&gt;
Es interesante observar que en todo momento se cumple el Principio de Conservación de la masa: la suma en cualquier momento de las concentraciones de las sustancias es 5 mol /litro. Esto es fácilmente comprobable en los momentos en que las concentraciones de A, X y B alcanzan su máximo de 5 mol/litro y el resto de concentraciones son nulas o despreciables. &lt;br /&gt;
[[Categoría:Ecuaciones Diferenciales]]&lt;br /&gt;
[[Categoría:ED14/15]]&lt;br /&gt;
[[Categoría:Trabajos 2014-15]]&lt;/div&gt;</summary>
		<author><name>Javier Ruiz de Galarreta López</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Reacciones_con_autocat%C3%A1lisis._Grupo_D12&amp;diff=29247</id>
		<title>Reacciones con autocatálisis. Grupo D12</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Reacciones_con_autocat%C3%A1lisis._Grupo_D12&amp;diff=29247"/>
				<updated>2015-03-12T22:12:27Z</updated>
		
		<summary type="html">&lt;p&gt;Javier Ruiz de Galarreta López: /* Introducción: objetivos y metodología */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{ TrabajoED | Reacciones con autocatálisis. Grupo D12 | [[:Categoría:Ecuaciones Diferenciales|Ecuaciones Diferenciales]]|[[:Categoría:ED14/15|Curso 2014-15]] | Javier Ruiz de Galarreta López, Argimiro Martínez López, Eduardo Moyano García, Alberto Rodríguez Ruiz. }}&lt;br /&gt;
&lt;br /&gt;
= Introducción: objetivos y metodología =&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
El objetivo de este trabajo es estudiar las concentraciones de los reactivos y productos de una reacción química a lo largo de la evolución en el tiempo de dicha reacción. Para ello modelizaremos el proceso empleando ecuaciones diferenciales y teniendo en cuenta la Ley de Acción de Masas y el Principio de Conservación de la materia.&lt;br /&gt;
&lt;br /&gt;
Al ser las ecuaciones y sistemas que se nos presentan de difícil resolución analítica, utilizaremos el programa informático Matlab para resolverlos mediante métodos numéricos como el de Euler, el del Trapecio, el de Runge-Kutta y el de Heun. &lt;br /&gt;
&lt;br /&gt;
Plasmaremos las soluciones en gráficos que nos permitirán dar una interpretación físico química de los resultados.&lt;br /&gt;
&lt;br /&gt;
= Reacción I =&lt;br /&gt;
&lt;br /&gt;
En primer lugar consideramos una reacción química irreversible en una solución bien mezclada, que se desarrolla para un volumen y una temperatura constantes, y en la que uno de los componentes (B, en este caso), hace de efecto catalítico.&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt; A + B →_{k1} 2B  &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Para desarrollar nuestro análisis nos apoyaremos en dos leyes físico químicas:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''Ley de acción de masas''': Enunciada por Guldberg y Waage en 1864, establece, entre otras cosas, que  la velocidad de&lt;br /&gt;
reacción es proporcional al producto de las concentraciones de los reactivos.&lt;br /&gt;
&lt;br /&gt;
'''Principio de conservación de la masa''': Establece que en una reacción química ordinaria la masa permanece constante, siendo la masa consumida de los reactivos igual a la masa obtenida de los productos. Fue elaborada independientemente por Míjail Lomonósov en 1745 y Antoine Lavoisier en 1785.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Interpretación del problema y deducción de las ecuaciones diferenciales ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Para hallar las ecuaciones diferenciales que nos describan cómo se desarrolla la reacción en el tiempo nos basaremos en las dos leyes enunciadas anteriormente. En primer lugar, definimos nuestra variable independiente como el tiempo &amp;lt;math&amp;gt;t&amp;lt;/math&amp;gt; en segundos. Las dos variables dependientes serán las concentraciones de los compuestos A y B, que denominaremos &amp;lt;math&amp;gt;x(t)&amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt;y(t)&amp;lt;/math&amp;gt;, ambas expresadas en mol/l. &lt;br /&gt;
&lt;br /&gt;
El principio de conservación de la masa expone que la suma de las concentraciones de los reactivos y los productos es constante. Esto equivale, derivando la expresión &amp;lt;math&amp;gt;x(t)+y(t)=cte&amp;lt;/math&amp;gt;, a que  desaparece tanto reactivo como producto aparece, o lo que es lo mismo, que la velocidad de aparición del producto es igual a la velocidad de desaparición (velocidad de aparición negativa) del reactivo:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;x'(t)=-y'(t)&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
La otra ecuación que necesitamos la obtenemos directamente de aplicar la Ley de acción de masas, que establece que la velocidad de la reacción (la velocidad a la que aparece el producto o desaparece el reactivo) es igual al producto de las concentraciones por una constante.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;y'(t)=k_1x(t)y(t)&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Obtención del problema de valor inicial ==&lt;br /&gt;
Una vez demostrado el origen de las ecuaciones (1) y (2) en el apartado anterior, obtendremos el problema de valor inicial (PVI) mediante las operaciones detalladas a continuación:&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;x'(t)+y'(t)=0\quad\quad(1)&amp;lt;/math&amp;gt;&lt;br /&gt;
:&amp;lt;math&amp;gt;y'(t)=k_1x(t)y(t)\quad\quad(2)&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Integrando (1) obtenemos (3):&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
:&amp;lt;math&amp;gt;\int_\mathbb{D} (\frac{dx(t)}{dt} + \frac{dy(t)}{dt})\,dt =\int_\mathbb{D} 0\,dt \quad \Rightarrow \quad x(t)+y(t)=k_2\quad \Rightarrow \quad x(t)=k_2-y(t)\quad\quad(3)&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Sustituyendo (3) en (2), obtenemos (4):&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;y'(t)=k_1x(t)y(t)\quad \Rightarrow \quad y'(t)=k_1(k_2-y(t))y(t)\quad \Rightarrow \quad y'(t)=k_1k_2y(t)-k_1y^2(t)\quad\quad(4)&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Conocemos las concentraciones iniciales de A y de B, por lo que podemos obtener el valor de la constante k&amp;lt;sub&amp;gt;2&amp;lt;/sub&amp;gt;:&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;[A]:\quad x(0)=1 mol/l;\quad\quad [B]:\quad y(0)=0,01 mol/l&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;x(t)+y(t)=k_2\quad \Rightarrow \quad x(0)+y(0)=k_2\quad \Rightarrow \quad 1+0,01=k_2\quad \Rightarrow \quad k_2=1,01&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Por último, conocemos también el valor de k&amp;lt;sub&amp;gt;1&amp;lt;/sub&amp;gt;, por lo que podremos plantear a continuación el correspondiente PVI:&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;k_1=1&amp;lt;/math&amp;gt;&lt;br /&gt;
:&amp;lt;math&amp;gt;(PVI)\begin{cases}y'(t)=1,01y(t)-y^2(t) \\ \\&lt;br /&gt;
y(0) = 0,01 \end{cases}\quad (t,y)\in[0,10]\times\mathbb{R}^+&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Unicidad de la solución ==&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Existencia-y-unicidad.png|200px|miniaturadeimagen|derecha|Intersección B con dominio]]&lt;br /&gt;
&lt;br /&gt;
Aplicamos a continuación el Teorema de Existencia y Unicidad:&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Sea &amp;lt;math&amp;gt;f(t,y)=y'(t) \Rightarrow f(t,y)=1.01y(t)-y^2(t)\quad&amp;lt;/math&amp;gt;, y &amp;lt;math&amp;gt;\quad\frac{\partial }{\partial y} f(t,y) = 1.01-2y(t)&amp;lt;/math&amp;gt;.&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
Sea &amp;lt;math&amp;gt;B[(t_0,y_0),r],\quad r&amp;gt;0,\quad en (t_0,y_0)=(0,0.01)&amp;lt;/math&amp;gt;.&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt; &lt;br /&gt;
&lt;br /&gt;
Y siendo &amp;lt;math&amp;gt;(t,y) \in \mathbb{D} = [0,10]\times \mathbb{R}^+ &amp;lt;/math&amp;gt; .&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt; &lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;f(t,y)&amp;lt;/math&amp;gt; es continua en &amp;lt;math&amp;gt; \mathbb{B}\cap \mathbb{D}\quad \Rightarrow \quad \exists  y(t)\quad /\quad y'(t)=1,01y(t)-y^2(t)&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;math&amp;gt;\frac{\partial }{\partial y} f(t,y)&amp;lt;/math&amp;gt; es continua en &amp;lt;math&amp;gt; \mathbb{B}\cap \mathbb{D}\quad \Rightarrow \quad \exists !  y(t)\quad /\quad y'(t)=1,01y(t)-y^2(t)&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Con lo que queda demostrado que el (PVI) tiene solución y además esta es única.&lt;br /&gt;
&lt;br /&gt;
== Resolución numérica del problema de valor inicial ==&lt;br /&gt;
&lt;br /&gt;
En este apartado resolveremos el problema de valor inicial planteado anteriormente con tres métodos de integración numérica: el método de Euler, el método del Trapecio y el método de Runge-Kutta de orden 4.&lt;br /&gt;
&lt;br /&gt;
=== Método de Euler ===&lt;br /&gt;
&lt;br /&gt;
El método de Euler, llamado así en honor al matemático Leonhard Euler, es un procedimiento de integración numérica. Su expresión matemática es: &lt;br /&gt;
&amp;lt;math&amp;gt;  PVI =   &lt;br /&gt;
\begin{cases}&lt;br /&gt;
 y_0 \\&lt;br /&gt;
 y_{n+1}  = y_n + h*f(t_n,y_n) \\&lt;br /&gt;
\end{cases}\quad&lt;br /&gt;
   &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
A continuación emplearemos esta expresión en un programa de Matlab para obtener una aproximación de las soluciones. El código de dicho programa es el siguiente.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Eulergrafica.png|400px|miniaturadeimagen|derecha|Representación gráfica y(t). Método de Euler]]&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
%Método de Euler&lt;br /&gt;
clc&lt;br /&gt;
&lt;br /&gt;
%Datos iniciales&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=4;&lt;br /&gt;
y0=0.01;&lt;br /&gt;
h=0.1;&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=10;&lt;br /&gt;
&lt;br /&gt;
%Cálculo de subintervalos&lt;br /&gt;
N=round((tN-t0)/h);&lt;br /&gt;
t=t0:h:tN;&lt;br /&gt;
&lt;br /&gt;
%Creamos el vector donde vamos a guardar las soluciones&lt;br /&gt;
y=zeros(1,N+1);&lt;br /&gt;
y(1)=y0;&lt;br /&gt;
&lt;br /&gt;
%Euler&lt;br /&gt;
for i=1:N;&lt;br /&gt;
    y(i+1)=y(i)+h*(1.01*y(i)-(y(i)).^2);&lt;br /&gt;
end&lt;br /&gt;
%Tabla de Resultados&lt;br /&gt;
[t',y']&lt;br /&gt;
x=1.01-y;&lt;br /&gt;
hold on &lt;br /&gt;
plot(t,y,'r')&lt;br /&gt;
plot(t,x,'b')&lt;br /&gt;
hold off&lt;br /&gt;
legend('Sustancia B: y(t)','Sustancia A: x(t)','Location','best');&lt;br /&gt;
xlabel('Tiempo (s)')&lt;br /&gt;
ylabel('Concentración (mol/l)')&lt;br /&gt;
grid on&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
=== Método del trapecio ===&lt;br /&gt;
&lt;br /&gt;
Vamos a aplicar un método de integración numérica conocido como el Método del Trapecio por aproximar el valor de la integral al del área de un trapecio. Su expresión matemática es:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;  PVI =   &lt;br /&gt;
\begin{cases}&lt;br /&gt;
 y_0 \\&lt;br /&gt;
 y_{n+1}  =  y_n + \frac{h}{2}*(f(t_n,y_n)+f(t_{n+1},y_{n+1}))\\&lt;br /&gt;
\end{cases}\quad&lt;br /&gt;
   &amp;lt;/math&amp;gt;&lt;br /&gt;
   &lt;br /&gt;
Introducimos esta expresión en el código y obtenemos la gráfica de la solución.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Trapeciografica.png|400px|miniaturadeimagen|derecha|Representación gráfica y(t). Método del Trapecio]]&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
%Método del Trapecio&lt;br /&gt;
clc&lt;br /&gt;
&lt;br /&gt;
%Datos iniciales&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=4;&lt;br /&gt;
y0=0.01;&lt;br /&gt;
h=0.1;&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=10;&lt;br /&gt;
&lt;br /&gt;
%Cálculo de subintervalos&lt;br /&gt;
N=round((tN-t0)/h);&lt;br /&gt;
t=t0:h:tN;&lt;br /&gt;
&lt;br /&gt;
%Creamos el vector donde vamos a guardar las soluciones&lt;br /&gt;
y=zeros(1,N+1);&lt;br /&gt;
y(1)=y0;&lt;br /&gt;
&lt;br /&gt;
for i=1:N&lt;br /&gt;
y(i+1)=(((1-(h/2)*1.01)-sqrt(((1-(h/2)*1.01)^2)+4*(h/2)*((1+(h/2)*1.01)*y(i)-(h/2)*(y(i))^2)))/-h);&lt;br /&gt;
end&lt;br /&gt;
%Sacamos la tabla de resultados&lt;br /&gt;
[t',y']&lt;br /&gt;
x=1.01-y;&lt;br /&gt;
%Gráfico&lt;br /&gt;
hold on&lt;br /&gt;
plot(t,y,'r')&lt;br /&gt;
plot(t,x,'b')&lt;br /&gt;
legend('Sustancia B: y(t)','Sustancia A: x(t)','Location','best');&lt;br /&gt;
xlabel('Tiempo (s)')&lt;br /&gt;
ylabel('Concentración (mol/l)')&lt;br /&gt;
grid on&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
=== Método de Runge-Kutta ===&lt;br /&gt;
&lt;br /&gt;
El método de resolución numérica de Runge-Kutta, involucra un gran número de parámetros. Para simplificar la implementación de este método en Matlab, utilizaremos la función ''inline'', con la que declararemos previamente la función algebraica necesaria para el cálculo de los parámetros &amp;lt;math&amp;gt;k_i&amp;lt;/math&amp;gt;, ahorrándonos tener que escribir innumerables veces la correspondiente expresión matemática.&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
A continuación, detallamos la función &amp;lt;math&amp;gt;f(y)&amp;lt;/math&amp;gt; de la que dependerán los valores de los parámetros &amp;lt;math&amp;gt;k_i&amp;lt;/math&amp;gt;:&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;f(y)=y'(t)=1.01y(t)-y(t)^2&lt;br /&gt;
&lt;br /&gt;
\quad \Rightarrow \quad&lt;br /&gt;
&lt;br /&gt;
\begin{cases}&lt;br /&gt;
 k_1 &amp;amp; =  f(y_i) \\&lt;br /&gt;
 k_2 &amp;amp; =  f(y_i + {1 \over 2}k_1h) \\&lt;br /&gt;
 k_3 &amp;amp; =  f(y_i + \frac{1}{2}k_2h) \\&lt;br /&gt;
 k_4 &amp;amp; =  f(y_i + k_3h) \\&lt;br /&gt;
\end{cases}\quad [h=0.1]&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Entonces el método RK4 para este problema está dado por la siguiente ecuación:&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;y_{i+1} = y_{i} + {1 \over 6}h(k_1+2k_2+2k_3+k_4)&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Mediante el siguiente programa en Matlab calculamos numéricamente la solución y la representamos en un gráfico:&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Archivo:RK4II.png|400px|miniaturadeimagen|derecha|Representación gráfica y(t). Método Runge-Kutta]]&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
%Método de Runge-Kutta&lt;br /&gt;
clc&lt;br /&gt;
&lt;br /&gt;
%Función f(t)=y'(t)&lt;br /&gt;
fy=inline('1.01*y-y^2','y');&lt;br /&gt;
&lt;br /&gt;
%Datos del problema&lt;br /&gt;
y0=0.01;&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=10;&lt;br /&gt;
h=0.1;&lt;br /&gt;
&lt;br /&gt;
%Variable independiente (t)&lt;br /&gt;
t=t0:h:tN;&lt;br /&gt;
&lt;br /&gt;
%Variable dependiente (y)&lt;br /&gt;
y=zeros(1,length(t));&lt;br /&gt;
y(1)=y0;&lt;br /&gt;
&lt;br /&gt;
for i=1:length(t)-1&lt;br /&gt;
    k1=fy(y(i));&lt;br /&gt;
    k2=fy(y(i)+k1/2*h);&lt;br /&gt;
    k3=fy(y(i)+k2/2*h);&lt;br /&gt;
    k4=fy(y(i)+k3*h);&lt;br /&gt;
    y(i+1)=y(i)+h/6*(k1+2*k2+2*k3+k4);&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
%Variable dependiente (x)&lt;br /&gt;
x=1.01-y;&lt;br /&gt;
&lt;br /&gt;
%Representación gráfica&lt;br /&gt;
hold on&lt;br /&gt;
plot(t,x,'b')&lt;br /&gt;
plot(t,y,'r')&lt;br /&gt;
legend('Sustancia A: x(t)','Sustancia B: y(t)')&lt;br /&gt;
xlabel('Tiempo (s)')&lt;br /&gt;
ylabel('Concentración (mol/l)')&lt;br /&gt;
grid on&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
=== Comparación de métodos===&lt;br /&gt;
&lt;br /&gt;
Podemos observar fácilmente que las gráficas obtenidas con los diferentes métodos son iguales a primera vista. Sin embargo, superponiéndolas queda patente que no son exactamente iguales debido a que los métodos no poseen la misma precisión y , al operar todos con la misma longitud de paso, unos aproximan la solución exacta mejor que otros. Así se observa en estas imágenes:&lt;br /&gt;
&lt;br /&gt;
[[Archivo:comparativa1.jpg|400px|miniaturadeimagen|izquierda|Comparación de métodos]]&lt;br /&gt;
[[Archivo:comparativa2.jpg|400px|miniaturadeimagen|derecha|Comparación de métodos]]&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
Como podemos comprobar en las imágenes, el método de Euler es menos preciso que el del trapecio o el de Runge-Kutta.&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Resolución en forma de sistema de ecuaciones ==&lt;br /&gt;
&lt;br /&gt;
A continuación vamos a plantear el problema de valor inicial con un sistema no lineal de dos ecuaciones equivalente al problema resuelto anteriormente.&lt;br /&gt;
&lt;br /&gt;
Estas ecuaciones serán:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;(PVI)&lt;br /&gt;
\begin{cases}&lt;br /&gt;
    y'(t)=k_1 x(t)y(t) \\&lt;br /&gt;
    x'(t)=-k_1 x(t)y(t) \\&lt;br /&gt;
    \\&lt;br /&gt;
    x(0)=1 \\&lt;br /&gt;
    y(0) = 0.01&lt;br /&gt;
\end{cases}&lt;br /&gt;
\quad t\in[0,10]&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Resolveremos el problema por el método de Euler y por el método de Runge-Kutta, plasmando las soluciones en gráficos.&lt;br /&gt;
&lt;br /&gt;
=== Método de Euler ===&lt;br /&gt;
&lt;br /&gt;
En este caso aplicaremos en el siguiente código la expresión para EDO a cada una de las ecuaciones que conforma el sistema, obteniendo la correspondiente gráfica.&lt;br /&gt;
 &lt;br /&gt;
[[Archivo:SistEuler.png|400px|miniaturadeimagen|derecha|Representación gráfica de las concentraciones de A y B. Resolución del sistema por Euler]]&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
&lt;br /&gt;
%Resolución del sistema por el método de Euler&lt;br /&gt;
&lt;br /&gt;
clear all&lt;br /&gt;
&lt;br /&gt;
%Definimos el vector de la variable independiente, el número de&lt;br /&gt;
%subintervalos y la longitud de paso&lt;br /&gt;
&lt;br /&gt;
t0 = 0;&lt;br /&gt;
tN = 10;&lt;br /&gt;
h = 0.1;&lt;br /&gt;
t = t0:h:tN&lt;br /&gt;
N = (tN-t0)/h;&lt;br /&gt;
&lt;br /&gt;
%Definimos los vectores de las variables dependientes&lt;br /&gt;
&lt;br /&gt;
x = zeros(1, N+1);&lt;br /&gt;
y = zeros(1, N+1);&lt;br /&gt;
&lt;br /&gt;
x(1) = 1;&lt;br /&gt;
y(1) = 0.01;&lt;br /&gt;
&lt;br /&gt;
for i = 1:N&lt;br /&gt;
    &lt;br /&gt;
    x(i+1)=x(i)+h*(-x(i).*y(i));&lt;br /&gt;
    y(i+1)=y(i)+h*(y(i).*x(i));&lt;br /&gt;
    &lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
%Representamos gráficamente las soluciones&lt;br /&gt;
&lt;br /&gt;
hold on&lt;br /&gt;
&lt;br /&gt;
plot(t,x,'b');&lt;br /&gt;
plot(t,y,'r');&lt;br /&gt;
grid on&lt;br /&gt;
&lt;br /&gt;
legend('Sustancia A: x(t)','Sustancia B: y(t)')&lt;br /&gt;
xlabel('Tiempo (s)')&lt;br /&gt;
ylabel('Concentración (mol/l)')&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
hold off&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
}}&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Método de Runge-Kutta===&lt;br /&gt;
&lt;br /&gt;
El método de resolución numérica de Runge-Kutta, involucra un gran número de parámetros. Para simplificar la implementación de este método en Matlab, el sistema se tratará como una matriz &amp;lt;math&amp;gt;z&amp;lt;/math&amp;gt;. Además, utilizaremos la función ''inline'', con la que declararemos previamente la función algebraica necesaria para el cálculo de los parámetros &amp;lt;math&amp;gt;k_i&amp;lt;/math&amp;gt;, ahorrándonos tener que escribir innumerables veces la correspondiente expresión matemática.&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Primero, expresamos el sistema en forma matricial:&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;(PVI)\begin{cases}&lt;br /&gt;
    x'(t)=-k_1 x(t)y(t) \\&lt;br /&gt;
    y'(t)=k_1 x(t)y(t) \\&lt;br /&gt;
    \\&lt;br /&gt;
    x(0)=1 \\&lt;br /&gt;
    y(0) = 0.01&lt;br /&gt;
\end{cases}\quad t\in[0,10]&lt;br /&gt;
&lt;br /&gt;
\quad \Rightarrow \quad k_1=1\quad \Rightarrow \quad&lt;br /&gt;
&lt;br /&gt;
(PVI)\begin{cases}\vec{z}'(t)=&lt;br /&gt;
   \begin{bmatrix}&lt;br /&gt;
      x'(t) \\&lt;br /&gt;
      y'(t) \\&lt;br /&gt;
   \end{bmatrix}&lt;br /&gt;
=&lt;br /&gt;
      \begin{bmatrix}&lt;br /&gt;
      -x(t)y(t) \\&lt;br /&gt;
      x(t)y(t) \\&lt;br /&gt;
   \end{bmatrix}&lt;br /&gt;
&lt;br /&gt;
 \\ \\ \vec{z}(0)=&lt;br /&gt;
   \begin{bmatrix}&lt;br /&gt;
      x(0) \\&lt;br /&gt;
      y(0) \\&lt;br /&gt;
   \end{bmatrix}&lt;br /&gt;
=&lt;br /&gt;
      \begin{bmatrix}&lt;br /&gt;
      1 \\&lt;br /&gt;
      0.01 \\&lt;br /&gt;
   \end{bmatrix}&lt;br /&gt;
\end{cases}\quad t\in[0,10]&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
A continuación, detallamos la función &amp;lt;math&amp;gt;\vec{F}&amp;lt;/math&amp;gt; de la que dependerán los valores de los parámetros &amp;lt;math&amp;gt;k_i&amp;lt;/math&amp;gt;:&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;\vec{F}(x,y)=\vec{F}(\vec{z})=&lt;br /&gt;
&lt;br /&gt;
\begin{bmatrix}&lt;br /&gt;
    f(\vec{z}) \\&lt;br /&gt;
    g(\vec{z}) \\&lt;br /&gt;
\end{bmatrix}=&lt;br /&gt;
&lt;br /&gt;
\begin{bmatrix}&lt;br /&gt;
    x'(t) \\&lt;br /&gt;
    y'(t) \\&lt;br /&gt;
\end{bmatrix}=&lt;br /&gt;
&lt;br /&gt;
\vec{z}'(t)=&lt;br /&gt;
&lt;br /&gt;
\begin{bmatrix}&lt;br /&gt;
    -x(t)y(t) \\&lt;br /&gt;
    x(t)y(t) \\&lt;br /&gt;
\end{bmatrix}&lt;br /&gt;
\quad \Rightarrow \quad&lt;br /&gt;
&lt;br /&gt;
\begin{cases}&lt;br /&gt;
 [\vec{k_1}] &amp;amp; =  F(\vec{z}_i) \\&lt;br /&gt;
 [\vec{k_2}] &amp;amp; =  F(\vec{z}_i + {1 \over 2}k_1h) \\&lt;br /&gt;
 [\vec{k_3}] &amp;amp; =  F(\vec{z}_i + \frac{1}{2}k_2h) \\&lt;br /&gt;
 [\vec{k_4}] &amp;amp; =  F(\vec{z}_i + k_3h) \\&lt;br /&gt;
\end{cases}\quad [h=0.1]&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Entonces el método RK4 para este problema está dado por la siguiente ecuación:&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;\vec{z}_{i+1} = \vec{z}_{i} + {1 \over 6}h(\vec{k_1}+2\vec{k_2}+2\vec{k_3}+\vec{k_4})&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Mediante el siguiente programa en Matlab calculamos numéricamente la solución y la representamos en un gráfico:&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Archivo:sistema_RK4.png|400px|miniaturadeimagen|derecha|Representación gráfica de las concentraciones de A y B. Resolución del sistema por Runge-Kutta]]&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
%Método de Runge-Kutta&lt;br /&gt;
clc&lt;br /&gt;
&lt;br /&gt;
%Función F=[x'(t); y'(t)]&lt;br /&gt;
F=inline('[-z(1)*z(2);z(1)*z(2)]','z');&lt;br /&gt;
&lt;br /&gt;
%Datos del problema &lt;br /&gt;
x0=1;&lt;br /&gt;
y0=0.01;&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=10;&lt;br /&gt;
h=0.1;&lt;br /&gt;
&lt;br /&gt;
%Vector de variable independiente (t)&lt;br /&gt;
t=t0:h:tN;&lt;br /&gt;
&lt;br /&gt;
%Matriz de variables dependientes z=[x;y]&lt;br /&gt;
z=zeros(2,length(t));&lt;br /&gt;
z(:,1)=[x0;y0];&lt;br /&gt;
&lt;br /&gt;
for i = 1:length(t)-1&lt;br /&gt;
    k1=F(z(:,i));&lt;br /&gt;
    k2=F(z(:,i)+k1.*h/2);&lt;br /&gt;
    k3=F(z(:,i)+k2.*h/2);&lt;br /&gt;
    k4=F(z(:,i)+k3.*h);&lt;br /&gt;
    z(:,i+1)=z(:,i)+h/6.*(k1+2.*k2+2.*k3+k4);&lt;br /&gt;
end&lt;br /&gt;
 &lt;br /&gt;
%Representación gráfica&lt;br /&gt;
hold on&lt;br /&gt;
plot(t,z(1,:))&lt;br /&gt;
plot(t,z(2,:),'r')&lt;br /&gt;
legend('Sustancia A: x(t)','Sustancia B: y(t)')&lt;br /&gt;
xlabel('Tiempo (s)')&lt;br /&gt;
ylabel('Concentración (mol/l)')&lt;br /&gt;
grid on&lt;br /&gt;
%hold off&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
== Interpretación de las gráficas ==&lt;br /&gt;
&lt;br /&gt;
Como cabía esperar, obtenemos la misma solución resolviendo el problema como sistema o como EDO. Podemos observar por los resultados obtenidos que la velocidad de aparición de B es igual a la velocidad de desaparición de A (como dicta el principio de conservación de la masa), que A acaba desapareciendo prácticamente por completo y que la concentración de B termina por estabilizarse alrededor de 1 mol/l. Ambos compuestos alcanzan los extremos de sus concentraciones en el mismo instante de tiempo&lt;br /&gt;
&lt;br /&gt;
También cabe destacar que cuando el tiempo transcurrido alcanza 4,5 segundos las concentraciones de ambos compuestos son las mismas.&lt;br /&gt;
&lt;br /&gt;
= Reacción II =&lt;br /&gt;
&lt;br /&gt;
En este apartado vamos a estudiar la reacción propuesta por Alfred J. Lotka en 1920, que es la siguiente:&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt; A + X →_{k1} 2X;&amp;lt;/math&amp;gt;     :&amp;lt;math&amp;gt; X + Y →_{k2} 2Y;&amp;lt;/math&amp;gt;     :&amp;lt;math&amp;gt;Y →_{k3} 2B  &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Como se puede observar, se trata de una reacción compleja integrada por 3 reacciones simples (las dos primeras autocatalíticas) en las que intervienen un total de 4 compuestos, A, B, X e Y. Siguiendo el desarrollo de la reacción, es lógico suponer que A se agotará al comienzo de la reacción, que los máximos de concentración de X e Y se darán en los estados intermedios y que al final el compuesto B será el único restante, siendo el producto final de la reacción.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Interpretación del problema y deducción de las ecuaciones diferenciales ==&lt;br /&gt;
&lt;br /&gt;
Para averiguar cómo evolucionan las concentraciones de los cuatro compuestos durante el desarrollo de la reacción necesitaremos obtener cuatro ecuaciones diferenciales. Para ello nos volveremos a basar en los principios físicos que ya empleamos en la anterior reacción. Definimos A(t), x(t), y(t), y B(t) (A, x, y, B; para ahorrar notación) como las concentraciones de A, X, Y, y B, respectivamente. &lt;br /&gt;
&lt;br /&gt;
En primer lugar aplicamos el Principio de Conservación de la masa, que establece que la suma de las concentraciones de los compuestos es constante (no desaparece masa en el proceso), lo que derivando nos indica que:&lt;br /&gt;
&lt;br /&gt;
: &amp;lt;math&amp;gt; A' + x' + y' + B' = 0 \quad\quad(I)&amp;lt;/math&amp;gt;       &lt;br /&gt;
&lt;br /&gt;
A continuación aplicaremos la Ley de Acción de Masas (velocidad de reacción proporcional al producto de la concentración de los reactivos).&lt;br /&gt;
&lt;br /&gt;
Aplicando esta ley a la última reacción simple obtenemos que: &lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;B'=k_3y \quad\quad(II)&amp;lt;/math&amp;gt;        &lt;br /&gt;
&lt;br /&gt;
En el caso de las concentraciones de X e Y las expresiones resultantes son algo más complicadas ya que estos dos compuestos actúan como reactivos y productos en más de una reacción simple, por lo que la variación de sus concentraciones será la suma de las variaciones de las reacciones en las que aparezcan:&lt;br /&gt;
&lt;br /&gt;
: &amp;lt;math&amp;gt; x' = x'_{1} + x'_{2} → x' = k_{1}Ax - k_{2}xy \quad\quad(III)&amp;lt;/math&amp;gt;        &lt;br /&gt;
: &amp;lt;math&amp;gt; y' = y'_{2} + y'_{3} → y' = k_{2}xy − k_3{y} \quad\quad(IV)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Por último sustituimos (II), (III) y (IV) en (I) obteniendo: &lt;br /&gt;
&lt;br /&gt;
: &amp;lt;math&amp;gt; A' + k_{1}Ax - k{2}xy + k_{2}xy − k_3{y}+ k_3y= 0 : &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
De donde obtenemos que:&lt;br /&gt;
&lt;br /&gt;
: &amp;lt;math&amp;gt; A' = -k_{1}Ax &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Ahora que ya tenemos las variaciones de concentración de los compuestos en función de las concentraciones podemos aplicar métodos numéricos que nos lleven a una solución aproximada.&lt;br /&gt;
&lt;br /&gt;
== Resolución numérica del sistema de ecuaciones ==&lt;br /&gt;
&lt;br /&gt;
Una vez obtenidas las ecuaciones y conociendo las condiciones iniciales y los valores de las constantes podemos plantear el problema de valor inicial para luego resolverlo.&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;(PVI)&lt;br /&gt;
\begin{cases}&lt;br /&gt;
    A' = -k_{1}Ax\\&lt;br /&gt;
    x' = k_{1}Ax - k{2}xy\\&lt;br /&gt;
    y' = k_{2}xy − k_3{y}\\&lt;br /&gt;
    B'=k_3y \\&lt;br /&gt;
\\&lt;br /&gt;
    A(0)=5  \\&lt;br /&gt;
    x(0)=5*10^{-4} \\&lt;br /&gt;
    y(0)=10^{-5}\\&lt;br /&gt;
    B(0)=0 \\&lt;br /&gt;
\end{cases}&lt;br /&gt;
\quad t\in[0,200]&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Siendo &amp;lt;math&amp;gt; k_{1}=K_{2}=2k_{3}=0.1 &amp;lt;/math&amp;gt; y las unidades de la concentración mol/l.&lt;br /&gt;
&lt;br /&gt;
=== Método de Euler ===&lt;br /&gt;
&lt;br /&gt;
Aplicamos el método de Euler de forma análoga a como lo hicimos en [[Reacciones_con_autocatálisis._Grupo_D12#Método_de_Euler_2|apartado 2.5.1]]&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Euler lotka0.01.png|400px|miniaturadeimagen|derecha|Representación gráfica de las concentraciones de A, B, X, e Y a lo largo del tiempo. Resoluciónd delsistema por el método de Euler con longitud de paso h=0.01]] &lt;br /&gt;
[[Archivo:Euler lotka0.001.png|400px|miniaturadeimagen|derecha|Representación gráfica de las concentraciones de A, B, X, e Y a lo largo del tiempo. Resoluciónd delsistema por el método de Euler con longitud de paso h=0.001]]&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
&lt;br /&gt;
%Resolución del sistema de la reacción de Lotka por el método de Euler&lt;br /&gt;
&lt;br /&gt;
clear all&lt;br /&gt;
&lt;br /&gt;
%Definimos la variable independiente y establecemos los datos del problema&lt;br /&gt;
%de valor inicial. Para la longitud de paso h introducimos en primer lugar&lt;br /&gt;
%0.01 y luego 0.001&lt;br /&gt;
&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=200;&lt;br /&gt;
h= input('Introduzca una longitud de paso ');&lt;br /&gt;
t = t0:h:tN;&lt;br /&gt;
N=(tN-t0)/h;&lt;br /&gt;
k1 = 0.1;&lt;br /&gt;
k2 = 0.1;&lt;br /&gt;
k3 = 0.05;&lt;br /&gt;
A0 = 5;&lt;br /&gt;
B0 = 0;&lt;br /&gt;
X0 = 5*10^(-4);&lt;br /&gt;
Y0 = 10^(-5);&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
%Definimos las variables dependientes.&lt;br /&gt;
&lt;br /&gt;
A = zeros(1, N-1);&lt;br /&gt;
B = A;&lt;br /&gt;
X = A;&lt;br /&gt;
Y = A;&lt;br /&gt;
&lt;br /&gt;
A(1) = A0;&lt;br /&gt;
B(1) = B0;&lt;br /&gt;
X(1) = X0;&lt;br /&gt;
Y(1) = Y0;&lt;br /&gt;
&lt;br /&gt;
for i = 1:N&lt;br /&gt;
    &lt;br /&gt;
    X(i+1) = X(i) + h*(k1*A(i)*X(i)-k2*Y(i)*X(i));&lt;br /&gt;
    Y(i+1)=Y(i)+h.*(k2.*X(i).*Y(i)-k3.*Y(i));&lt;br /&gt;
    B(i+1) = B(i) + h*(k3*Y(i));&lt;br /&gt;
    A(i+1) = A(i) + h*(-k1*A(i)*X(i));&lt;br /&gt;
   &lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
%Representamos gráficamente la solución&lt;br /&gt;
&lt;br /&gt;
hold on&lt;br /&gt;
&lt;br /&gt;
plot (t,A,'b')&lt;br /&gt;
plot(t, X, 'r')&lt;br /&gt;
plot(t,Y, 'g')&lt;br /&gt;
plot(t, B, 'm')&lt;br /&gt;
legend('Sustancia A: A(t)','Sustancia X: x(t)','Sustancia Y: y(t)','Sustancia B: B(t)','Location','Best')&lt;br /&gt;
xlabel('Tiempo (s)')&lt;br /&gt;
ylabel('Concentración (mol/l)')&lt;br /&gt;
grid on&lt;br /&gt;
&lt;br /&gt;
hold off&lt;br /&gt;
&lt;br /&gt;
}}&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
A continuación tendremos que comprobar si el método es estable. &amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
Un método es estable cuando el error local es pequeño y además este error no se amplifica a lo largo del tiempo. Para calificar la estabilidad del método de Euler resolveremos el sistema anterior con este método, con pasos &amp;quot;h=0.01&amp;quot; y &amp;quot;h=0.001&amp;quot;, y lo compararemos con la resolución del sistema con el método de Heun, que se asemeja más a la solución exacta.&amp;lt;br /&amp;gt;&lt;br /&gt;
En la comparación representaremos en azul el método de Heun y en rojo el método de Euler.&amp;lt;br /&amp;gt;&lt;br /&gt;
Para &amp;quot;h=0.01&amp;quot; tenemos lo siguiente:&lt;br /&gt;
[[Archivo:1estabilidad123.jpg|400px|miniaturadeimagen|izquierda|Comparación entre Método de Heun (Azul) con el Método de Euler con paso h=0.01 (Rojo)]] &lt;br /&gt;
[[Archivo:1estabilidad321.jpg|400px|miniaturadeimagen|derecha|Comparación entre Método de Heun (Azul) con el Método de Euler con paso h=0.01 (Rojo)]] &lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
Para &amp;quot;h=0.001&amp;quot; tenemos lo siguiente:&lt;br /&gt;
[[Archivo:2estabilidad123.jpg|400px|miniaturadeimagen|izquierda|Comparación entre Método de Heun (Azul) con el Método de Euler con paso h=0.001 (Rojo)]] &lt;br /&gt;
[[Archivo:2estabilidad321.jpg|400px|miniaturadeimagen|derecha|Comparación entre Método de Heun (Azul) con el Método de Euler con paso h=0.001 (Rojo)]]&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
Como podemos ver en las imágenes de los dos procesos las gráficas se superponen y no se aprecian diferencias hasta que no ampliamos la imagen. Y esto sucede en todo momento con lo que podemos garantizar que en este caso el método de Euler es estable para los pasos que hemos usado.&lt;br /&gt;
&lt;br /&gt;
=== Método de Heun ===&lt;br /&gt;
&lt;br /&gt;
Si bien el método de resolución numérica de Heun no involucra un número de parámetros tan notable como el método de Runge-Kutta, en este caso tenemos un sistema de 4 ecuaciones diferenciales, por lo que, en aras de simplificar, utilizaremos el mismo criterio que en el [[Reacciones_con_autocatálisis._Grupo_D12#Método_de_Runge-Kutta_2|apartado 2.5.2]].: El sistema se tratará como una matriz &amp;lt;math&amp;gt;z&amp;lt;/math&amp;gt;, y para la obtención de los parámetros &amp;lt;math&amp;gt;k_i&amp;lt;/math&amp;gt; utilizaremos la función ''inline'', con la que declararemos previamente las expresiones necesarias para el cálculo de los parámetros &amp;lt;math&amp;gt;k_i&amp;lt;/math&amp;gt;.&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Primero, expresamos el sistema en forma matricial:&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;(PVI)\begin{cases}&lt;br /&gt;
A'(t)=-k_1 A(t)x(t) \\&lt;br /&gt;
x'(t)=k_1 A(t)x(t)-k_2 x(t)y(t) \\&lt;br /&gt;
y'(t)=k_2 x(t)y(t)-k_3 y(t) \\&lt;br /&gt;
B'(t)=k_3 x(t)y(t) \\ \\&lt;br /&gt;
A(0)=5 \\&lt;br /&gt;
x(0)=5·10^{-4} \\&lt;br /&gt;
y(0)=10^{-5} \\&lt;br /&gt;
B(0) = 0&lt;br /&gt;
\end{cases}\quad t\in[0,200]&lt;br /&gt;
&lt;br /&gt;
\quad \Rightarrow \quad&lt;br /&gt;
&lt;br /&gt;
\begin{cases}&lt;br /&gt;
k_1=0.1 \\&lt;br /&gt;
k_2=0.1 \\&lt;br /&gt;
k_3=0.05 \\&lt;br /&gt;
&lt;br /&gt;
\end{cases}&lt;br /&gt;
&lt;br /&gt;
\quad \Rightarrow \quad&lt;br /&gt;
&lt;br /&gt;
(PVI)\begin{cases}\vec{z}'(t)=&lt;br /&gt;
   \begin{bmatrix}&lt;br /&gt;
      A'(t) \\&lt;br /&gt;
      x'(t) \\&lt;br /&gt;
      y'(t) \\&lt;br /&gt;
      B'(t) \\&lt;br /&gt;
   \end{bmatrix}&lt;br /&gt;
=&lt;br /&gt;
      \begin{bmatrix}&lt;br /&gt;
      -0.1 A(t)x(t) \\&lt;br /&gt;
      0.1 A(t)x(t)-0.1 x(t)y(t) \\&lt;br /&gt;
      0.1 x(t)y(t)-0.05 y(t) \\&lt;br /&gt;
      0.05 y(t)x(t)\\&lt;br /&gt;
   \end{bmatrix}&lt;br /&gt;
&lt;br /&gt;
 \\ \\ \vec{z}(0)=&lt;br /&gt;
   \begin{bmatrix}&lt;br /&gt;
      A(0) \\&lt;br /&gt;
      x(0) \\&lt;br /&gt;
      y(0) \\&lt;br /&gt;
      B(0) \\&lt;br /&gt;
   \end{bmatrix}&lt;br /&gt;
=&lt;br /&gt;
      \begin{bmatrix}&lt;br /&gt;
      5 \\&lt;br /&gt;
      5·10^{-4} \\&lt;br /&gt;
      10^{-5} \\&lt;br /&gt;
      0&lt;br /&gt;
   \end{bmatrix}&lt;br /&gt;
\end{cases}\quad t\in[0,200]&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
A continuación, detallamos la función &amp;lt;math&amp;gt;\vec{F}&amp;lt;/math&amp;gt; de la que dependerán los valores de los parámetros &amp;lt;math&amp;gt;k_i&amp;lt;/math&amp;gt;:&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;\vec{F}(A,x,y,B)=\vec{F}(\vec{z})=&lt;br /&gt;
\begin{bmatrix}&lt;br /&gt;
    f(\vec{z}) \\ &lt;br /&gt;
    g(\vec{z}) \\ &lt;br /&gt;
    h(\vec{z}) \\ &lt;br /&gt;
    i(\vec{z}) \\ &lt;br /&gt;
\end{bmatrix}=&lt;br /&gt;
\begin{bmatrix}&lt;br /&gt;
    A'(t) \\&lt;br /&gt;
    x'(t) \\&lt;br /&gt;
    y'(t) \\&lt;br /&gt;
    B'(t) \\&lt;br /&gt;
\end{bmatrix}=&lt;br /&gt;
\vec{z}'(t)=&lt;br /&gt;
      \begin{bmatrix}&lt;br /&gt;
      -0.1 A(t)x(t) \\&lt;br /&gt;
      0.1 A(t)x(t)-0.1 x(t)y(t) \\&lt;br /&gt;
      0.1 x(t)y(t)-0.05 y(t) \\&lt;br /&gt;
      0.05 y(t)x(t)\\&lt;br /&gt;
   \end{bmatrix}&lt;br /&gt;
&lt;br /&gt;
\quad \Rightarrow \quad &lt;br /&gt;
&lt;br /&gt;
\begin{cases}&lt;br /&gt;
 [\vec{k_1}] &amp;amp; =  F(\vec{z}_i) \\&lt;br /&gt;
 [\vec{k_2}] &amp;amp; =  F(\vec{z}_i + {1 \over 2}k_1h) \\&lt;br /&gt;
\end{cases}\quad [h=0.01]&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Entonces el método de Heun para este problema está dado por la siguiente ecuación:&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;\vec{z}_{i+1} = \vec{z}_{i} + {1 \over 2}h(\vec{k_1}+\vec{k_2})&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Mediante el siguiente programa en Matlab calculamos numéricamente la solución y la representamos en un gráfico:&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Archivo:AXYBRK4.png|400px|miniaturadeimagen|derecha|Representación gráfica de las concentraciones de A,X,Y y B. Resolución del sistema por Heun]]&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
%Método de Heun&lt;br /&gt;
clc&lt;br /&gt;
&lt;br /&gt;
%Función F=[A'(t);x'(t); y'(t);B'(t)]&lt;br /&gt;
F=inline('0.1.*[-z(1)*z(2);z(1)*z(2)-z(2)*z(3);z(2)*z(3)-z(3)/2;z(3)/2]','z');&lt;br /&gt;
&lt;br /&gt;
%Datos del problema&lt;br /&gt;
A0=5;&lt;br /&gt;
x0=5*10^-4;&lt;br /&gt;
y0=10^(-5);&lt;br /&gt;
B0=0;&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=200;&lt;br /&gt;
h=0.1;&lt;br /&gt;
&lt;br /&gt;
%Vector de variable independiente (t)&lt;br /&gt;
t=t0:h:tN;&lt;br /&gt;
&lt;br /&gt;
%Matriz de variables dependientes z=[A;x;y;B]&lt;br /&gt;
z=zeros(4,length(t));&lt;br /&gt;
z(:,1)=[A0;x0;y0;B0];&lt;br /&gt;
&lt;br /&gt;
for i = 1:length(t)-1&lt;br /&gt;
    k1=F(z(:,i));&lt;br /&gt;
    k2=F(z(:,i)+k1.*h/2);&lt;br /&gt;
    z(:,i+1)=z(:,i)+h/2.*(k1+k2);&lt;br /&gt;
end&lt;br /&gt;
 &lt;br /&gt;
%Representación gráfica&lt;br /&gt;
hold on&lt;br /&gt;
plot(t,z(1,:),'b')&lt;br /&gt;
plot(t,z(2,:),'r')&lt;br /&gt;
plot(t,z(3,:),'g')&lt;br /&gt;
plot(t,z(4,:),'m')&lt;br /&gt;
legend('Sustancia A: A(t)','Sustancia X: x(t)','Sustancia Y: y(t)','Sustancia B: B(t)','Location','Best')&lt;br /&gt;
xlabel('Tiempo (s)')&lt;br /&gt;
ylabel('Concentración (mol/l)')&lt;br /&gt;
grid on&lt;br /&gt;
hold off&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
== Interpretación de las gráficas == &lt;br /&gt;
 &lt;br /&gt;
El proceso comienza con el predominio absoluto del compuesto A en la concentración total, siendo la presencia de los otros tres compuestos despreciable. Durante los primeros segundos la situación apenas cambia, pero tras los diez primeros segundos la concentración de A cae bruscamente mientras que la concentración de X aumenta a la misma velocidad; antes de llegar a los veinte segundos transcurridos las concentraciones de ambos compuestos se igualan y otros quince segundos más tarde el compuesto A  prácticamente ha desaparecido y el X ha alcanzado su concentración máxima (5 mol/litro).&lt;br /&gt;
&lt;br /&gt;
Es entonces cuando concluye la primera reacción y comienzan las otras dos, al no haber más compuesto A que cree compuesto X. La velocidad de aparición de Y es inicialmente mayor que la de B, superando al poco tiempo en concentración a la sustancia X. Sin embargo, llega un momento en el que la concentración de X es tan baja que se ralentiza la creación de Y y pronto empieza a disminuir su concentración tras alcanzar un máximo en torno a los 56 segundos, perdiendo peso la segunda reacción en beneficio de la tercera.&lt;br /&gt;
&lt;br /&gt;
Tras los 60 segundos de reacción el compuesto X pasa a tener una concentración despreciable, por lo que la única reacción simple que se sigue desarrollando es la tercera, destruyéndose reactivo Y y creándose producto B. La concentración de Y va reduciéndose paulatinamente hasta que en torno a los 160 segundos de reacción alcanza niveles insignificantes mientras que la concentración de B alcanza su máximo de 5 mol/litro.&lt;br /&gt;
&lt;br /&gt;
Es interesante observar que en todo momento se cumple el Principio de Conservación de la masa: la suma en cualquier momento de las concentraciones de las sustancias es 5 mol /litro. Esto es fácilmente comprobable en los momentos en que las concentraciones de A, X y B alcanzan su máximo de 5 mol/litro y el resto de concentraciones son nulas o despreciables. &lt;br /&gt;
[[Categoría:Ecuaciones Diferenciales]]&lt;br /&gt;
[[Categoría:ED14/15]]&lt;br /&gt;
[[Categoría:Trabajos 2014-15]]&lt;/div&gt;</summary>
		<author><name>Javier Ruiz de Galarreta López</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Reacciones_con_autocat%C3%A1lisis._Grupo_D12&amp;diff=29240</id>
		<title>Reacciones con autocatálisis. Grupo D12</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Reacciones_con_autocat%C3%A1lisis._Grupo_D12&amp;diff=29240"/>
				<updated>2015-03-12T18:58:08Z</updated>
		
		<summary type="html">&lt;p&gt;Javier Ruiz de Galarreta López: /* Interpretación del problema y deducción de las ecuaciones diferenciales */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{ TrabajoED | Reacciones con autocatálisis. Grupo D12 | [[:Categoría:Ecuaciones Diferenciales|Ecuaciones Diferenciales]]|[[:Categoría:ED14/15|Curso 2014-15]] | Javier Ruiz de Galarreta López, Argimiro Martínez López, Eduardo Moyano García, Alberto Rodríguez Ruiz. }}&lt;br /&gt;
&lt;br /&gt;
= Introducción: objetivos y metodología =&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
El objetivo de este trabajo es estudiar las concentraciones de los reactivos y productos de una reacción química a lo largo de la evolución en el tiempo de dicha reacción. Para ello modelizaremos el proceso empleando ecuaciones diferenciales y teniendo en cuenta la Ley de Acción de Masas y el Principio de Conservación de la materia.&lt;br /&gt;
&lt;br /&gt;
Al ser las ecuaciones y sistemas que se nos presentan de difícil resolución analítica, utilizaremos el programa informático Matlab para resolverlos mediante métodos numéricos como el de Euler, el del Trapecio, el de Runge-Kutta y el de Heun. &lt;br /&gt;
&lt;br /&gt;
Plasmaremos las soluciones en gráficos que nos permitirán dar una interpretación físico química a los resultados.&lt;br /&gt;
&lt;br /&gt;
= Reacción I =&lt;br /&gt;
&lt;br /&gt;
En primer lugar consideramos una reacción química irreversible en una solución bien mezclada, que se desarrolla para un volumen y una temperatura constantes, y en la que uno de los componentes (B, en este caso), hace de efecto catalítico.&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt; A + B →_{k1} 2B  &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Para desarrollar nuestro análisis nos apoyaremos en dos leyes físico químicas:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''Ley de acción de masas''': Enunciada por Guldberg y Waage en 1864, establece, entre otras cosas, que  la velocidad de&lt;br /&gt;
reacción es proporcional al producto de las concentraciones de los reactivos.&lt;br /&gt;
&lt;br /&gt;
'''Principio de conservación de la masa''': Establece que en una reacción química ordinaria la masa permanece constante, siendo la masa consumida de los reactivos igual a la masa obtenida de los productos. Fue elaborada independientemente por Míjail Lomonósov en 1745 y Antoine Lavoisier en 1785.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Interpretación del problema y deducción de las ecuaciones diferenciales ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Para hallar las ecuaciones diferenciales que nos describan cómo se desarrolla la reacción en el tiempo nos basaremos en las dos leyes enunciadas anteriormente. En primer lugar, definimos nuestra variable independiente como el tiempo &amp;lt;math&amp;gt;t&amp;lt;/math&amp;gt; en segundos. Las dos variables dependientes serán las concentraciones de los compuestos A y B, que denominaremos &amp;lt;math&amp;gt;x(t)&amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt;y(t)&amp;lt;/math&amp;gt;, ambas expresadas en mol/l. &lt;br /&gt;
&lt;br /&gt;
El principio de conservación de la masa expone que la suma de las concentraciones de los reactivos y los productos es constante. Esto equivale, derivando la expresión &amp;lt;math&amp;gt;x(t)+y(t)=cte&amp;lt;/math&amp;gt;, a que  desaparece tanto reactivo como producto aparece, o lo que es lo mismo, que la velocidad de aparición del producto es igual a la velocidad de desaparición (velocidad de aparición negativa) del reactivo:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;x'(t)=-y'(t)&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
La otra ecuación que necesitamos la obtenemos directamente de aplicar la Ley de acción de masas, que establece que la velocidad de la reacción (la velocidad a la que aparece el producto o desaparece el reactivo) es igual al producto de las concentraciones por una constante.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;y'(t)=k_1x(t)y(t)&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Obtención del problema de valor inicial ==&lt;br /&gt;
Una vez demostrado el origen de las ecuaciones (1) y (2) en el apartado anterior, obtendremos el problema de valor inicial (PVI) mediante las operaciones detalladas a continuación:&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;x'(t)+y'(t)=0\quad\quad(1)&amp;lt;/math&amp;gt;&lt;br /&gt;
:&amp;lt;math&amp;gt;y'(t)=k_1x(t)y(t)\quad\quad(2)&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Integrando (1) obtenemos (3):&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
:&amp;lt;math&amp;gt;\int_\mathbb{D} (\frac{dx(t)}{dt} + \frac{dy(t)}{dt})\,dt =\int_\mathbb{D} 0\,dt \quad \Rightarrow \quad x(t)+y(t)=k_2\quad \Rightarrow \quad x(t)=k_2-y(t)\quad\quad(3)&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Sustituyendo (3) en (2), obtenemos (4):&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;y'(t)=k_1x(t)y(t)\quad \Rightarrow \quad y'(t)=k_1(k_2-y(t))y(t)\quad \Rightarrow \quad y'(t)=k_1k_2y(t)-k_1y^2(t)\quad\quad(4)&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Conocemos las concentraciones iniciales de A y de B, por lo que podemos obtener el valor de la constante k&amp;lt;sub&amp;gt;2&amp;lt;/sub&amp;gt;:&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;[A]:\quad x(0)=1 mol/l;\quad\quad [B]:\quad y(0)=0,01 mol/l&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;x(t)+y(t)=k_2\quad \Rightarrow \quad x(0)+y(0)=k_2\quad \Rightarrow \quad 1+0,01=k_2\quad \Rightarrow \quad k_2=1,01&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Por último, conocemos también el valor de k&amp;lt;sub&amp;gt;1&amp;lt;/sub&amp;gt;, por lo que podremos plantear a continuación el correspondiente PVI:&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;k_1=1&amp;lt;/math&amp;gt;&lt;br /&gt;
:&amp;lt;math&amp;gt;(PVI)\begin{cases}y'(t)=1,01y(t)-y^2(t) \\ \\&lt;br /&gt;
y(0) = 0,01 \end{cases}\quad (t,y)\in[0,10]\times\mathbb{R}^+&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Unicidad de la solución ==&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Existencia-y-unicidad.png|200px|miniaturadeimagen|derecha|Intersección B con dominio]]&lt;br /&gt;
&lt;br /&gt;
Aplicamos a continuación el Teorema de Existencia y Unicidad:&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Sea &amp;lt;math&amp;gt;f(t,y)=y'(t) \Rightarrow f(t,y)=1.01y(t)-y^2(t)\quad&amp;lt;/math&amp;gt;, y &amp;lt;math&amp;gt;\quad\frac{\partial }{\partial y} f(t,y) = 1.01-2y(t)&amp;lt;/math&amp;gt;.&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
Sea &amp;lt;math&amp;gt;B[(t_0,y_0),r],\quad r&amp;gt;0,\quad en (t_0,y_0)=(0,0.01)&amp;lt;/math&amp;gt;.&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt; &lt;br /&gt;
&lt;br /&gt;
Y siendo &amp;lt;math&amp;gt;(t,y) \in \mathbb{D} = [0,10]\times \mathbb{R}^+ &amp;lt;/math&amp;gt; .&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt; &lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;f(t,y)&amp;lt;/math&amp;gt; es continua en &amp;lt;math&amp;gt; \mathbb{B}\cap \mathbb{D}\quad \Rightarrow \quad \exists  y(t)\quad /\quad y'(t)=1,01y(t)-y^2(t)&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;math&amp;gt;\frac{\partial }{\partial y} f(t,y)&amp;lt;/math&amp;gt; es continua en &amp;lt;math&amp;gt; \mathbb{B}\cap \mathbb{D}\quad \Rightarrow \quad \exists !  y(t)\quad /\quad y'(t)=1,01y(t)-y^2(t)&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Con lo que queda demostrado que el (PVI) tiene solución y además esta es única.&lt;br /&gt;
&lt;br /&gt;
== Resolución numérica del problema de valor inicial ==&lt;br /&gt;
&lt;br /&gt;
En este apartado resolveremos el problema de valor inicial planteado anteriormente con tres métodos de integración numérica: el método de Euler, el método del Trapecio y el método de Runge-Kutta de orden 4.&lt;br /&gt;
&lt;br /&gt;
=== Método de Euler ===&lt;br /&gt;
&lt;br /&gt;
El método de Euler, llamado así en honor al matemático Leonhard Euler, es un procedimiento de integración numérica. Su expresión matemática es: &lt;br /&gt;
&amp;lt;math&amp;gt;  PVI =   &lt;br /&gt;
\begin{cases}&lt;br /&gt;
 y_0 \\&lt;br /&gt;
 y_{n+1}  = y_n + h*f(t_n,y_n) \\&lt;br /&gt;
\end{cases}\quad&lt;br /&gt;
   &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
A continuación emplearemos esta expresión en un programa de Matlab para obtener una aproximación de las soluciones. El código de dicho programa es el siguiente.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Eulergrafica.png|400px|miniaturadeimagen|derecha|Representación gráfica y(t). Método de Euler]]&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
%Método de Euler&lt;br /&gt;
clc&lt;br /&gt;
&lt;br /&gt;
%Datos iniciales&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=4;&lt;br /&gt;
y0=0.01;&lt;br /&gt;
h=0.1;&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=10;&lt;br /&gt;
&lt;br /&gt;
%Cálculo de subintervalos&lt;br /&gt;
N=round((tN-t0)/h);&lt;br /&gt;
t=t0:h:tN;&lt;br /&gt;
&lt;br /&gt;
%Creamos el vector donde vamos a guardar las soluciones&lt;br /&gt;
y=zeros(1,N+1);&lt;br /&gt;
y(1)=y0;&lt;br /&gt;
&lt;br /&gt;
%Euler&lt;br /&gt;
for i=1:N;&lt;br /&gt;
    y(i+1)=y(i)+h*(1.01*y(i)-(y(i)).^2);&lt;br /&gt;
end&lt;br /&gt;
%Tabla de Resultados&lt;br /&gt;
[t',y']&lt;br /&gt;
x=1.01-y;&lt;br /&gt;
hold on &lt;br /&gt;
plot(t,y,'r')&lt;br /&gt;
plot(t,x,'b')&lt;br /&gt;
hold off&lt;br /&gt;
legend('Sustancia B: y(t)','Sustancia A: x(t)','Location','best');&lt;br /&gt;
xlabel('Tiempo (s)')&lt;br /&gt;
ylabel('Concentración (mol/l)')&lt;br /&gt;
grid on&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
=== Método del trapecio ===&lt;br /&gt;
&lt;br /&gt;
Vamos a aplicar un método de integración numérica conocido como el Método del Trapecio por aproximar el valor de la integral al del área de un trapecio. Su expresión matemática es:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;  PVI =   &lt;br /&gt;
\begin{cases}&lt;br /&gt;
 y_0 \\&lt;br /&gt;
 y_{n+1}  =  y_n + \frac{h}{2}*(f(t_n,y_n)+f(t_{n+1},y_{n+1}))\\&lt;br /&gt;
\end{cases}\quad&lt;br /&gt;
   &amp;lt;/math&amp;gt;&lt;br /&gt;
   &lt;br /&gt;
Introducimos esta expresión en el código y obtenemos la gráfica de la solución.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Trapeciografica.png|400px|miniaturadeimagen|derecha|Representación gráfica y(t). Método del Trapecio]]&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
%Método del Trapecio&lt;br /&gt;
clc&lt;br /&gt;
&lt;br /&gt;
%Datos iniciales&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=4;&lt;br /&gt;
y0=0.01;&lt;br /&gt;
h=0.1;&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=10;&lt;br /&gt;
&lt;br /&gt;
%Cálculo de subintervalos&lt;br /&gt;
N=round((tN-t0)/h);&lt;br /&gt;
t=t0:h:tN;&lt;br /&gt;
&lt;br /&gt;
%Creamos el vector donde vamos a guardar las soluciones&lt;br /&gt;
y=zeros(1,N+1);&lt;br /&gt;
y(1)=y0;&lt;br /&gt;
&lt;br /&gt;
for i=1:N&lt;br /&gt;
y(i+1)=(((1-(h/2)*1.01)-sqrt(((1-(h/2)*1.01)^2)+4*(h/2)*((1+(h/2)*1.01)*y(i)-(h/2)*(y(i))^2)))/-h);&lt;br /&gt;
end&lt;br /&gt;
%Sacamos la tabla de resultados&lt;br /&gt;
[t',y']&lt;br /&gt;
x=1.01-y;&lt;br /&gt;
%Gráfico&lt;br /&gt;
hold on&lt;br /&gt;
plot(t,y,'r')&lt;br /&gt;
plot(t,x,'b')&lt;br /&gt;
legend('Sustancia B: y(t)','Sustancia A: x(t)','Location','best');&lt;br /&gt;
xlabel('Tiempo (s)')&lt;br /&gt;
ylabel('Concentración (mol/l)')&lt;br /&gt;
grid on&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
=== Método de Runge-Kutta ===&lt;br /&gt;
&lt;br /&gt;
El método de resolución numérica de Runge-Kutta, involucra un gran número de parámetros. Para simplificar la implementación de este método en Matlab, utilizaremos la función ''inline'', con la que declararemos previamente la función algebraica necesaria para el cálculo de los parámetros &amp;lt;math&amp;gt;k_i&amp;lt;/math&amp;gt;, ahorrándonos tener que escribir innumerables veces la correspondiente expresión matemática.&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
A continuación, detallamos la función &amp;lt;math&amp;gt;f(y)&amp;lt;/math&amp;gt; de la que dependerán los valores de los parámetros &amp;lt;math&amp;gt;k_i&amp;lt;/math&amp;gt;:&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;f(y)=y'(t)=1.01y(t)-y(t)^2&lt;br /&gt;
&lt;br /&gt;
\quad \Rightarrow \quad&lt;br /&gt;
&lt;br /&gt;
\begin{cases}&lt;br /&gt;
 k_1 &amp;amp; =  f(y_i) \\&lt;br /&gt;
 k_2 &amp;amp; =  f(y_i + {1 \over 2}k_1h) \\&lt;br /&gt;
 k_3 &amp;amp; =  f(y_i + \frac{1}{2}k_2h) \\&lt;br /&gt;
 k_4 &amp;amp; =  f(y_i + k_3h) \\&lt;br /&gt;
\end{cases}\quad [h=0.1]&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Entonces el método RK4 para este problema está dado por la siguiente ecuación:&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;y_{i+1} = y_{i} + {1 \over 6}h(k_1+2k_2+2k_3+k_4)&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Mediante el siguiente programa en Matlab calculamos numéricamente la solución y la representamos en un gráfico:&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Archivo:RK4II.png|400px|miniaturadeimagen|derecha|Representación gráfica y(t). Método Runge-Kutta]]&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
%Método de Runge-Kutta&lt;br /&gt;
clc&lt;br /&gt;
&lt;br /&gt;
%Función f(t)=y'(t)&lt;br /&gt;
fy=inline('1.01*y-y^2','y');&lt;br /&gt;
&lt;br /&gt;
%Datos del problema&lt;br /&gt;
y0=0.01;&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=10;&lt;br /&gt;
h=0.1;&lt;br /&gt;
&lt;br /&gt;
%Variable independiente (t)&lt;br /&gt;
t=t0:h:tN;&lt;br /&gt;
&lt;br /&gt;
%Variable dependiente (y)&lt;br /&gt;
y=zeros(1,length(t));&lt;br /&gt;
y(1)=y0;&lt;br /&gt;
&lt;br /&gt;
for i=1:length(t)-1&lt;br /&gt;
    k1=fy(y(i));&lt;br /&gt;
    k2=fy(y(i)+k1/2*h);&lt;br /&gt;
    k3=fy(y(i)+k2/2*h);&lt;br /&gt;
    k4=fy(y(i)+k3*h);&lt;br /&gt;
    y(i+1)=y(i)+h/6*(k1+2*k2+2*k3+k4);&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
%Variable dependiente (x)&lt;br /&gt;
x=1.01-y;&lt;br /&gt;
&lt;br /&gt;
%Representación gráfica&lt;br /&gt;
hold on&lt;br /&gt;
plot(t,x,'b')&lt;br /&gt;
plot(t,y,'r')&lt;br /&gt;
legend('Sustancia A: x(t)','Sustancia B: y(t)')&lt;br /&gt;
xlabel('Tiempo (s)')&lt;br /&gt;
ylabel('Concentración (mol/l)')&lt;br /&gt;
grid on&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
=== Comparación de métodos===&lt;br /&gt;
&lt;br /&gt;
Podemos observar fácilmente que las gráficas obtenidas con los diferentes métodos son iguales a primera vista. Sin embargo, superponiéndolas queda patente que no son exactamente iguales debido a que los métodos no poseen la misma precisión y , al operar todos con la misma longitud de paso, unos aproximan la solución exacta mejor que otros. Así se observa en estas imágenes:&lt;br /&gt;
&lt;br /&gt;
[[Archivo:comparativa1.jpg|400px|miniaturadeimagen|izquierda|Comparación de métodos]]&lt;br /&gt;
[[Archivo:comparativa2.jpg|400px|miniaturadeimagen|derecha|Comparación de métodos]]&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
Como podemos comprobar en las imágenes, el método de Euler es menos preciso que el del trapecio o el de Runge-Kutta.&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Resolución en forma de sistema de ecuaciones ==&lt;br /&gt;
&lt;br /&gt;
A continuación vamos a plantear el problema de valor inicial con un sistema no lineal de dos ecuaciones equivalente al problema resuelto anteriormente.&lt;br /&gt;
&lt;br /&gt;
Estas ecuaciones serán:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;(PVI)&lt;br /&gt;
\begin{cases}&lt;br /&gt;
    y'(t)=k_1 x(t)y(t) \\&lt;br /&gt;
    x'(t)=-k_1 x(t)y(t) \\&lt;br /&gt;
    \\&lt;br /&gt;
    x(0)=1 \\&lt;br /&gt;
    y(0) = 0.01&lt;br /&gt;
\end{cases}&lt;br /&gt;
\quad t\in[0,10]&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Resolveremos el problema por el método de Euler y por el método de Runge-Kutta, plasmando las soluciones en gráficos.&lt;br /&gt;
&lt;br /&gt;
=== Método de Euler ===&lt;br /&gt;
&lt;br /&gt;
En este caso aplicaremos en el siguiente código la expresión para EDO a cada una de las ecuaciones que conforma el sistema, obteniendo la correspondiente gráfica.&lt;br /&gt;
 &lt;br /&gt;
[[Archivo:SistEuler.png|400px|miniaturadeimagen|derecha|Representación gráfica de las concentraciones de A y B. Resolución del sistema por Euler]]&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
&lt;br /&gt;
%Resolución del sistema por el método de Euler&lt;br /&gt;
&lt;br /&gt;
clear all&lt;br /&gt;
&lt;br /&gt;
%Definimos el vector de la variable independiente, el número de&lt;br /&gt;
%subintervalos y la longitud de paso&lt;br /&gt;
&lt;br /&gt;
t0 = 0;&lt;br /&gt;
tN = 10;&lt;br /&gt;
h = 0.1;&lt;br /&gt;
t = t0:h:tN&lt;br /&gt;
N = (tN-t0)/h;&lt;br /&gt;
&lt;br /&gt;
%Definimos los vectores de las variables dependientes&lt;br /&gt;
&lt;br /&gt;
x = zeros(1, N+1);&lt;br /&gt;
y = zeros(1, N+1);&lt;br /&gt;
&lt;br /&gt;
x(1) = 1;&lt;br /&gt;
y(1) = 0.01;&lt;br /&gt;
&lt;br /&gt;
for i = 1:N&lt;br /&gt;
    &lt;br /&gt;
    x(i+1)=x(i)+h*(-x(i).*y(i));&lt;br /&gt;
    y(i+1)=y(i)+h*(y(i).*x(i));&lt;br /&gt;
    &lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
%Representamos gráficamente las soluciones&lt;br /&gt;
&lt;br /&gt;
hold on&lt;br /&gt;
&lt;br /&gt;
plot(t,x,'b');&lt;br /&gt;
plot(t,y,'r');&lt;br /&gt;
grid on&lt;br /&gt;
&lt;br /&gt;
legend('Sustancia A: x(t)','Sustancia B: y(t)')&lt;br /&gt;
xlabel('Tiempo (s)')&lt;br /&gt;
ylabel('Concentración (mol/l)')&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
hold off&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
}}&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Método de Runge-Kutta===&lt;br /&gt;
&lt;br /&gt;
El método de resolución numérica de Runge-Kutta, involucra un gran número de parámetros. Para simplificar la implementación de este método en Matlab, el sistema se tratará como una matriz &amp;lt;math&amp;gt;z&amp;lt;/math&amp;gt;. Además, utilizaremos la función ''inline'', con la que declararemos previamente la función algebraica necesaria para el cálculo de los parámetros &amp;lt;math&amp;gt;k_i&amp;lt;/math&amp;gt;, ahorrándonos tener que escribir innumerables veces la correspondiente expresión matemática.&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Primero, expresamos el sistema en forma matricial:&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;(PVI)\begin{cases}&lt;br /&gt;
    x'(t)=-k_1 x(t)y(t) \\&lt;br /&gt;
    y'(t)=k_1 x(t)y(t) \\&lt;br /&gt;
    \\&lt;br /&gt;
    x(0)=1 \\&lt;br /&gt;
    y(0) = 0.01&lt;br /&gt;
\end{cases}\quad t\in[0,10]&lt;br /&gt;
&lt;br /&gt;
\quad \Rightarrow \quad k_1=1\quad \Rightarrow \quad&lt;br /&gt;
&lt;br /&gt;
(PVI)\begin{cases}\vec{z}'(t)=&lt;br /&gt;
   \begin{bmatrix}&lt;br /&gt;
      x'(t) \\&lt;br /&gt;
      y'(t) \\&lt;br /&gt;
   \end{bmatrix}&lt;br /&gt;
=&lt;br /&gt;
      \begin{bmatrix}&lt;br /&gt;
      -x(t)y(t) \\&lt;br /&gt;
      x(t)y(t) \\&lt;br /&gt;
   \end{bmatrix}&lt;br /&gt;
&lt;br /&gt;
 \\ \\ \vec{z}(0)=&lt;br /&gt;
   \begin{bmatrix}&lt;br /&gt;
      x(0) \\&lt;br /&gt;
      y(0) \\&lt;br /&gt;
   \end{bmatrix}&lt;br /&gt;
=&lt;br /&gt;
      \begin{bmatrix}&lt;br /&gt;
      1 \\&lt;br /&gt;
      0.01 \\&lt;br /&gt;
   \end{bmatrix}&lt;br /&gt;
\end{cases}\quad t\in[0,10]&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
A continuación, detallamos la función &amp;lt;math&amp;gt;\vec{F}&amp;lt;/math&amp;gt; de la que dependerán los valores de los parámetros &amp;lt;math&amp;gt;k_i&amp;lt;/math&amp;gt;:&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;\vec{F}(x,y)=\vec{F}(\vec{z})=&lt;br /&gt;
&lt;br /&gt;
\begin{bmatrix}&lt;br /&gt;
    f(\vec{z}) \\&lt;br /&gt;
    g(\vec{z}) \\&lt;br /&gt;
\end{bmatrix}=&lt;br /&gt;
&lt;br /&gt;
\begin{bmatrix}&lt;br /&gt;
    x'(t) \\&lt;br /&gt;
    y'(t) \\&lt;br /&gt;
\end{bmatrix}=&lt;br /&gt;
&lt;br /&gt;
\vec{z}'(t)=&lt;br /&gt;
&lt;br /&gt;
\begin{bmatrix}&lt;br /&gt;
    -x(t)y(t) \\&lt;br /&gt;
    x(t)y(t) \\&lt;br /&gt;
\end{bmatrix}&lt;br /&gt;
\quad \Rightarrow \quad&lt;br /&gt;
&lt;br /&gt;
\begin{cases}&lt;br /&gt;
 [\vec{k_1}] &amp;amp; =  F(\vec{z}_i) \\&lt;br /&gt;
 [\vec{k_2}] &amp;amp; =  F(\vec{z}_i + {1 \over 2}k_1h) \\&lt;br /&gt;
 [\vec{k_3}] &amp;amp; =  F(\vec{z}_i + \frac{1}{2}k_2h) \\&lt;br /&gt;
 [\vec{k_4}] &amp;amp; =  F(\vec{z}_i + k_3h) \\&lt;br /&gt;
\end{cases}\quad [h=0.1]&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Entonces el método RK4 para este problema está dado por la siguiente ecuación:&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;\vec{z}_{i+1} = \vec{z}_{i} + {1 \over 6}h(\vec{k_1}+2\vec{k_2}+2\vec{k_3}+\vec{k_4})&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Mediante el siguiente programa en Matlab calculamos numéricamente la solución y la representamos en un gráfico:&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Archivo:sistema_RK4.png|400px|miniaturadeimagen|derecha|Representación gráfica de las concentraciones de A y B. Resolución del sistema por Runge-Kutta]]&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
%Método de Runge-Kutta&lt;br /&gt;
clc&lt;br /&gt;
&lt;br /&gt;
%Función F=[x'(t); y'(t)]&lt;br /&gt;
F=inline('[-z(1)*z(2);z(1)*z(2)]','z');&lt;br /&gt;
&lt;br /&gt;
%Datos del problema &lt;br /&gt;
x0=1;&lt;br /&gt;
y0=0.01;&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=10;&lt;br /&gt;
h=0.1;&lt;br /&gt;
&lt;br /&gt;
%Vector de variable independiente (t)&lt;br /&gt;
t=t0:h:tN;&lt;br /&gt;
&lt;br /&gt;
%Matriz de variables dependientes z=[x;y]&lt;br /&gt;
z=zeros(2,length(t));&lt;br /&gt;
z(:,1)=[x0;y0];&lt;br /&gt;
&lt;br /&gt;
for i = 1:length(t)-1&lt;br /&gt;
    k1=F(z(:,i));&lt;br /&gt;
    k2=F(z(:,i)+k1.*h/2);&lt;br /&gt;
    k3=F(z(:,i)+k2.*h/2);&lt;br /&gt;
    k4=F(z(:,i)+k3.*h);&lt;br /&gt;
    z(:,i+1)=z(:,i)+h/6.*(k1+2.*k2+2.*k3+k4);&lt;br /&gt;
end&lt;br /&gt;
 &lt;br /&gt;
%Representación gráfica&lt;br /&gt;
hold on&lt;br /&gt;
plot(t,z(1,:))&lt;br /&gt;
plot(t,z(2,:),'r')&lt;br /&gt;
legend('Sustancia A: x(t)','Sustancia B: y(t)')&lt;br /&gt;
xlabel('Tiempo (s)')&lt;br /&gt;
ylabel('Concentración (mol/l)')&lt;br /&gt;
grid on&lt;br /&gt;
%hold off&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
== Interpretación de las gráficas ==&lt;br /&gt;
&lt;br /&gt;
Como cabía esperar, obtenemos la misma solución resolviendo el problema como sistema o como EDO. Podemos observar por los resultados obtenidos que la velocidad de aparición de B es igual a la velocidad de desaparición de A (como dicta el principio de conservación de la masa), que A acaba desapareciendo prácticamente por completo y que la concentración de B termina por estabilizarse alrededor de 1 mol/l. Ambos compuestos alcanzan los extremos de sus concentraciones en el mismo instante de tiempo&lt;br /&gt;
&lt;br /&gt;
También cabe destacar que cuando el tiempo transcurrido alcanza 4,5 segundos las concentraciones de ambos compuestos son las mismas.&lt;br /&gt;
&lt;br /&gt;
= Reacción II =&lt;br /&gt;
&lt;br /&gt;
En este apartado vamos a estudiar la reacción propuesta por Alfred J. Lotka en 1920, que es la siguiente:&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt; A + X →_{k1} 2X;&amp;lt;/math&amp;gt;     :&amp;lt;math&amp;gt; X + Y →_{k2} 2Y;&amp;lt;/math&amp;gt;     :&amp;lt;math&amp;gt;Y →_{k3} 2B  &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Como se puede observar, se trata de una reacción compleja integrada por 3 reacciones simples (las dos primeras autocatalíticas) en las que intervienen un total de 4 compuestos, A, B, X e Y. Siguiendo el desarrollo de la reacción, es lógico suponer que A se agotará al comienzo de la reacción, que los máximos de concentración de X e Y se darán en los estados intermedios y que al final el compuesto B será el único restante, siendo el producto final de la reacción.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Interpretación del problema y deducción de las ecuaciones diferenciales ==&lt;br /&gt;
&lt;br /&gt;
Para averiguar cómo evolucionan las concentraciones de los cuatro compuestos durante el desarrollo de la reacción necesitaremos obtener cuatro ecuaciones diferenciales. Para ello nos volveremos a basar en los principios físicos que ya empleamos en la anterior reacción. Definimos A(t), x(t), y(t), y B(t) (A, x, y, B; para ahorrar notación) como las concentraciones de A, X, Y, y B, respectivamente. &lt;br /&gt;
&lt;br /&gt;
En primer lugar aplicamos el Principio de Conservación de la masa, que establece que la suma de las concentraciones de los compuestos es constante (no desaparece masa en el proceso), lo que derivando nos indica que:&lt;br /&gt;
&lt;br /&gt;
: &amp;lt;math&amp;gt; A' + x' + y' + B' = 0 \quad\quad(I)&amp;lt;/math&amp;gt;       &lt;br /&gt;
&lt;br /&gt;
A continuación aplicaremos la Ley de Acción de Masas (velocidad de reacción proporcional al producto de la concentración de los reactivos).&lt;br /&gt;
&lt;br /&gt;
Aplicando esta ley a la última reacción simple obtenemos que: &lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;B'=k_3y \quad\quad(II)&amp;lt;/math&amp;gt;        &lt;br /&gt;
&lt;br /&gt;
En el caso de las concentraciones de X e Y las expresiones resultantes son algo más complicadas ya que estos dos compuestos actúan como reactivos y productos en más de una reacción simple, por lo que la variación de sus concentraciones será la suma de las variaciones de las reacciones en las que aparezcan:&lt;br /&gt;
&lt;br /&gt;
: &amp;lt;math&amp;gt; x' = x'_{1} + x'_{2} → x' = k_{1}Ax - k_{2}xy \quad\quad(III)&amp;lt;/math&amp;gt;        &lt;br /&gt;
: &amp;lt;math&amp;gt; y' = y'_{2} + y'_{3} → y' = k_{2}xy − k_3{y} \quad\quad(IV)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Por último sustituimos (II), (III) y (IV) en (I) obteniendo: &lt;br /&gt;
&lt;br /&gt;
: &amp;lt;math&amp;gt; A' + k_{1}Ax - k{2}xy + k_{2}xy − k_3{y}+ k_3y= 0 : &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
De donde obtenemos que:&lt;br /&gt;
&lt;br /&gt;
: &amp;lt;math&amp;gt; A' = -k_{1}Ax &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Ahora que ya tenemos las variaciones de concentración de los compuestos en función de las concentraciones podemos aplicar métodos numéricos que nos lleven a una solución aproximada.&lt;br /&gt;
&lt;br /&gt;
== Resolución numérica del sistema de ecuaciones ==&lt;br /&gt;
&lt;br /&gt;
Una vez obtenidas las ecuaciones y conociendo las condiciones iniciales y los valores de las constantes podemos plantear el problema de valor inicial para luego resolverlo.&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;(PVI)&lt;br /&gt;
\begin{cases}&lt;br /&gt;
    A' = -k_{1}Ax\\&lt;br /&gt;
    x' = k_{1}Ax - k{2}xy\\&lt;br /&gt;
    y' = k_{2}xy − k_3{y}\\&lt;br /&gt;
    B'=k_3y \\&lt;br /&gt;
\\&lt;br /&gt;
    A(0)=5  \\&lt;br /&gt;
    x(0)=5*10^{-4} \\&lt;br /&gt;
    y(0)=10^{-5}\\&lt;br /&gt;
    B(0)=0 \\&lt;br /&gt;
\end{cases}&lt;br /&gt;
\quad t\in[0,200]&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Siendo &amp;lt;math&amp;gt; k_{1}=K_{2}=2k_{3}=0.1 &amp;lt;/math&amp;gt; y las unidades de la concentración mol/l.&lt;br /&gt;
&lt;br /&gt;
=== Método de Euler ===&lt;br /&gt;
&lt;br /&gt;
Aplicamos el método de Euler de forma análoga a como lo hicimos en [[Reacciones_con_autocatálisis._Grupo_D12#Método_de_Euler_2|apartado 2.5.1]]&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Euler lotka0.01.png|400px|miniaturadeimagen|derecha|Representación gráfica de las concentraciones de A, B, X, e Y a lo largo del tiempo. Resoluciónd delsistema por el método de Euler con longitud de paso h=0.01]] &lt;br /&gt;
[[Archivo:Euler lotka0.001.png|400px|miniaturadeimagen|derecha|Representación gráfica de las concentraciones de A, B, X, e Y a lo largo del tiempo. Resoluciónd delsistema por el método de Euler con longitud de paso h=0.001]]&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
&lt;br /&gt;
%Resolución del sistema de la reacción de Lotka por el método de Euler&lt;br /&gt;
&lt;br /&gt;
clear all&lt;br /&gt;
&lt;br /&gt;
%Definimos la variable independiente y establecemos los datos del problema&lt;br /&gt;
%de valor inicial. Para la longitud de paso h introducimos en primer lugar&lt;br /&gt;
%0.01 y luego 0.001&lt;br /&gt;
&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=200;&lt;br /&gt;
h= input('Introduzca una longitud de paso ');&lt;br /&gt;
t = t0:h:tN;&lt;br /&gt;
N=(tN-t0)/h;&lt;br /&gt;
k1 = 0.1;&lt;br /&gt;
k2 = 0.1;&lt;br /&gt;
k3 = 0.05;&lt;br /&gt;
A0 = 5;&lt;br /&gt;
B0 = 0;&lt;br /&gt;
X0 = 5*10^(-4);&lt;br /&gt;
Y0 = 10^(-5);&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
%Definimos las variables dependientes.&lt;br /&gt;
&lt;br /&gt;
A = zeros(1, N-1);&lt;br /&gt;
B = A;&lt;br /&gt;
X = A;&lt;br /&gt;
Y = A;&lt;br /&gt;
&lt;br /&gt;
A(1) = A0;&lt;br /&gt;
B(1) = B0;&lt;br /&gt;
X(1) = X0;&lt;br /&gt;
Y(1) = Y0;&lt;br /&gt;
&lt;br /&gt;
for i = 1:N&lt;br /&gt;
    &lt;br /&gt;
    X(i+1) = X(i) + h*(k1*A(i)*X(i)-k2*Y(i)*X(i));&lt;br /&gt;
    Y(i+1)=Y(i)+h.*(k2.*X(i).*Y(i)-k3.*Y(i));&lt;br /&gt;
    B(i+1) = B(i) + h*(k3*Y(i));&lt;br /&gt;
    A(i+1) = A(i) + h*(-k1*A(i)*X(i));&lt;br /&gt;
   &lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
%Representamos gráficamente la solución&lt;br /&gt;
&lt;br /&gt;
hold on&lt;br /&gt;
&lt;br /&gt;
plot (t,A,'b')&lt;br /&gt;
plot(t, X, 'r')&lt;br /&gt;
plot(t,Y, 'g')&lt;br /&gt;
plot(t, B, 'm')&lt;br /&gt;
legend('Sustancia A: A(t)','Sustancia X: x(t)','Sustancia Y: y(t)','Sustancia B: B(t)','Location','Best')&lt;br /&gt;
xlabel('Tiempo (s)')&lt;br /&gt;
ylabel('Concentración (mol/l)')&lt;br /&gt;
grid on&lt;br /&gt;
&lt;br /&gt;
hold off&lt;br /&gt;
&lt;br /&gt;
}}&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
A continuación tendremos que comprobar si el método es estable. &amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
Un método es estable cuando el error local es pequeño y además este error no se amplifica a lo largo del tiempo. Para calificar la estabilidad del método de Euler resolveremos el sistema anterior con este método, con pasos &amp;quot;h=0.01&amp;quot; y &amp;quot;h=0.001&amp;quot;, y lo compararemos con la resolución del sistema con el método de Heun, que se asemeja más a la solución exacta.&amp;lt;br /&amp;gt;&lt;br /&gt;
En la comparación representaremos en azul el método de Heun y en rojo el método de Euler.&amp;lt;br /&amp;gt;&lt;br /&gt;
Para &amp;quot;h=0.01&amp;quot; tenemos lo siguiente:&lt;br /&gt;
[[Archivo:1estabilidad123.jpg|400px|miniaturadeimagen|izquierda|Comparación entre Método de Heun (Azul) con el Método de Euler con paso h=0.01 (Rojo)]] &lt;br /&gt;
[[Archivo:1estabilidad321.jpg|400px|miniaturadeimagen|derecha|Comparación entre Método de Heun (Azul) con el Método de Euler con paso h=0.01 (Rojo)]] &lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
Para &amp;quot;h=0.001&amp;quot; tenemos lo siguiente:&lt;br /&gt;
[[Archivo:2estabilidad123.jpg|400px|miniaturadeimagen|izquierda|Comparación entre Método de Heun (Azul) con el Método de Euler con paso h=0.001 (Rojo)]] &lt;br /&gt;
[[Archivo:2estabilidad321.jpg|400px|miniaturadeimagen|derecha|Comparación entre Método de Heun (Azul) con el Método de Euler con paso h=0.001 (Rojo)]]&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
Como podemos ver en las imágenes de los dos procesos las gráficas se superponen y no se aprecian diferencias hasta que no ampliamos la imagen. Y esto sucede en todo momento con lo que podemos garantizar que en este caso el método de Euler es estable para los pasos que hemos usado.&lt;br /&gt;
&lt;br /&gt;
=== Método de Heun ===&lt;br /&gt;
&lt;br /&gt;
Si bien el método de resolución numérica de Heun no involucra un número de parámetros tan notable como el método de Runge-Kutta, en este caso tenemos un sistema de 4 ecuaciones diferenciales, por lo que, en aras de simplificar, utilizaremos el mismo criterio que en el [[Reacciones_con_autocatálisis._Grupo_D12#Método_de_Runge-Kutta_2|apartado 2.5.2]].: El sistema se tratará como una matriz &amp;lt;math&amp;gt;z&amp;lt;/math&amp;gt;, y para la obtención de los parámetros &amp;lt;math&amp;gt;k_i&amp;lt;/math&amp;gt; utilizaremos la función ''inline'', con la que declararemos previamente las expresiones necesarias para el cálculo de los parámetros &amp;lt;math&amp;gt;k_i&amp;lt;/math&amp;gt;.&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Primero, expresamos el sistema en forma matricial:&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;(PVI)\begin{cases}&lt;br /&gt;
A'(t)=-k_1 A(t)x(t) \\&lt;br /&gt;
x'(t)=k_1 A(t)x(t)-k_2 x(t)y(t) \\&lt;br /&gt;
y'(t)=k_2 x(t)y(t)-k_3 y(t) \\&lt;br /&gt;
B'(t)=k_3 x(t)y(t) \\ \\&lt;br /&gt;
A(0)=5 \\&lt;br /&gt;
x(0)=5·10^{-4} \\&lt;br /&gt;
y(0)=10^{-5} \\&lt;br /&gt;
B(0) = 0&lt;br /&gt;
\end{cases}\quad t\in[0,200]&lt;br /&gt;
&lt;br /&gt;
\quad \Rightarrow \quad&lt;br /&gt;
&lt;br /&gt;
\begin{cases}&lt;br /&gt;
k_1=0.1 \\&lt;br /&gt;
k_2=0.1 \\&lt;br /&gt;
k_3=0.05 \\&lt;br /&gt;
&lt;br /&gt;
\end{cases}&lt;br /&gt;
&lt;br /&gt;
\quad \Rightarrow \quad&lt;br /&gt;
&lt;br /&gt;
(PVI)\begin{cases}\vec{z}'(t)=&lt;br /&gt;
   \begin{bmatrix}&lt;br /&gt;
      A'(t) \\&lt;br /&gt;
      x'(t) \\&lt;br /&gt;
      y'(t) \\&lt;br /&gt;
      B'(t) \\&lt;br /&gt;
   \end{bmatrix}&lt;br /&gt;
=&lt;br /&gt;
      \begin{bmatrix}&lt;br /&gt;
      -0.1 A(t)x(t) \\&lt;br /&gt;
      0.1 A(t)x(t)-0.1 x(t)y(t) \\&lt;br /&gt;
      0.1 x(t)y(t)-0.05 y(t) \\&lt;br /&gt;
      0.05 y(t)x(t)\\&lt;br /&gt;
   \end{bmatrix}&lt;br /&gt;
&lt;br /&gt;
 \\ \\ \vec{z}(0)=&lt;br /&gt;
   \begin{bmatrix}&lt;br /&gt;
      A(0) \\&lt;br /&gt;
      x(0) \\&lt;br /&gt;
      y(0) \\&lt;br /&gt;
      B(0) \\&lt;br /&gt;
   \end{bmatrix}&lt;br /&gt;
=&lt;br /&gt;
      \begin{bmatrix}&lt;br /&gt;
      5 \\&lt;br /&gt;
      5·10^{-4} \\&lt;br /&gt;
      10^{-5} \\&lt;br /&gt;
      0&lt;br /&gt;
   \end{bmatrix}&lt;br /&gt;
\end{cases}\quad t\in[0,200]&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
A continuación, detallamos la función &amp;lt;math&amp;gt;\vec{F}&amp;lt;/math&amp;gt; de la que dependerán los valores de los parámetros &amp;lt;math&amp;gt;k_i&amp;lt;/math&amp;gt;:&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;\vec{F}(A,x,y,B)=\vec{F}(\vec{z})=&lt;br /&gt;
\begin{bmatrix}&lt;br /&gt;
    f(\vec{z}) \\ &lt;br /&gt;
    g(\vec{z}) \\ &lt;br /&gt;
    h(\vec{z}) \\ &lt;br /&gt;
    i(\vec{z}) \\ &lt;br /&gt;
\end{bmatrix}=&lt;br /&gt;
\begin{bmatrix}&lt;br /&gt;
    A'(t) \\&lt;br /&gt;
    x'(t) \\&lt;br /&gt;
    y'(t) \\&lt;br /&gt;
    B'(t) \\&lt;br /&gt;
\end{bmatrix}=&lt;br /&gt;
\vec{z}'(t)=&lt;br /&gt;
      \begin{bmatrix}&lt;br /&gt;
      -0.1 A(t)x(t) \\&lt;br /&gt;
      0.1 A(t)x(t)-0.1 x(t)y(t) \\&lt;br /&gt;
      0.1 x(t)y(t)-0.05 y(t) \\&lt;br /&gt;
      0.05 y(t)x(t)\\&lt;br /&gt;
   \end{bmatrix}&lt;br /&gt;
&lt;br /&gt;
\quad \Rightarrow \quad &lt;br /&gt;
&lt;br /&gt;
\begin{cases}&lt;br /&gt;
 [\vec{k_1}] &amp;amp; =  F(\vec{z}_i) \\&lt;br /&gt;
 [\vec{k_2}] &amp;amp; =  F(\vec{z}_i + {1 \over 2}k_1h) \\&lt;br /&gt;
\end{cases}\quad [h=0.01]&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Entonces el método de Heun para este problema está dado por la siguiente ecuación:&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;\vec{z}_{i+1} = \vec{z}_{i} + {1 \over 2}h(\vec{k_1}+\vec{k_2})&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Mediante el siguiente programa en Matlab calculamos numéricamente la solución y la representamos en un gráfico:&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Archivo:AXYBRK4.png|400px|miniaturadeimagen|derecha|Representación gráfica de las concentraciones de A,X,Y y B. Resolución del sistema por Heun]]&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
%Método de Heun&lt;br /&gt;
clc&lt;br /&gt;
&lt;br /&gt;
%Función F=[A'(t);x'(t); y'(t);B'(t)]&lt;br /&gt;
F=inline('0.1.*[-z(1)*z(2);z(1)*z(2)-z(2)*z(3);z(2)*z(3)-z(3)/2;z(3)/2]','z');&lt;br /&gt;
&lt;br /&gt;
%Datos del problema&lt;br /&gt;
A0=5;&lt;br /&gt;
x0=5*10^-4;&lt;br /&gt;
y0=10^(-5);&lt;br /&gt;
B0=0;&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=200;&lt;br /&gt;
h=0.1;&lt;br /&gt;
&lt;br /&gt;
%Vector de variable independiente (t)&lt;br /&gt;
t=t0:h:tN;&lt;br /&gt;
&lt;br /&gt;
%Matriz de variables dependientes z=[A;x;y;B]&lt;br /&gt;
z=zeros(4,length(t));&lt;br /&gt;
z(:,1)=[A0;x0;y0;B0];&lt;br /&gt;
&lt;br /&gt;
for i = 1:length(t)-1&lt;br /&gt;
    k1=F(z(:,i));&lt;br /&gt;
    k2=F(z(:,i)+k1.*h/2);&lt;br /&gt;
    z(:,i+1)=z(:,i)+h/2.*(k1+k2);&lt;br /&gt;
end&lt;br /&gt;
 &lt;br /&gt;
%Representación gráfica&lt;br /&gt;
hold on&lt;br /&gt;
plot(t,z(1,:),'b')&lt;br /&gt;
plot(t,z(2,:),'r')&lt;br /&gt;
plot(t,z(3,:),'g')&lt;br /&gt;
plot(t,z(4,:),'m')&lt;br /&gt;
legend('Sustancia A: A(t)','Sustancia X: x(t)','Sustancia Y: y(t)','Sustancia B: B(t)','Location','Best')&lt;br /&gt;
xlabel('Tiempo (s)')&lt;br /&gt;
ylabel('Concentración (mol/l)')&lt;br /&gt;
grid on&lt;br /&gt;
hold off&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
== Interpretación de las gráficas == &lt;br /&gt;
 &lt;br /&gt;
El proceso comienza con el predominio absoluto del compuesto A en la concentración total, siendo la presencia de los otros tres compuestos despreciable. Durante los primeros segundos la situación apenas cambia, pero tras los diez primeros segundos la concentración de A cae bruscamente mientras que la concentración de X aumenta a la misma velocidad; antes de llegar a los veinte segundos transcurridos las concentraciones de ambos compuestos se igualan y otros quince segundos más tarde el compuesto A  prácticamente ha desaparecido y el X ha alcanzado su concentración máxima (5 mol/litro).&lt;br /&gt;
&lt;br /&gt;
Es entonces cuando concluye la primera reacción y comienzan las otras dos, al no haber más compuesto A que cree compuesto X. La velocidad de aparición de Y es inicialmente mayor que la de B, superando al poco tiempo en concentración a la sustancia X. Sin embargo, llega un momento en el que la concentración de X es tan baja que se ralentiza la creación de Y y pronto empieza a disminuir su concentración tras alcanzar un máximo en torno a los 56 segundos, perdiendo peso la segunda reacción en beneficio de la tercera.&lt;br /&gt;
&lt;br /&gt;
Tras los 60 segundos de reacción el compuesto X pasa a tener una concentración despreciable, por lo que la única reacción simple que se sigue desarrollando es la tercera, destruyéndose reactivo Y y creándose producto B. La concentración de Y va reduciéndose paulatinamente hasta que en torno a los 160 segundos de reacción alcanza niveles insignificantes mientras que la concentración de B alcanza su máximo de 5 mol/litro.&lt;br /&gt;
&lt;br /&gt;
Es interesante observar que en todo momento se cumple el Principio de Conservación de la masa: la suma en cualquier momento de las concentraciones de las sustancias es 5 mol /litro. Esto es fácilmente comprobable en los momentos en que las concentraciones de A, X y B alcanzan su máximo de 5 mol/litro y el resto de concentraciones son nulas o despreciables. &lt;br /&gt;
[[Categoría:Ecuaciones Diferenciales]]&lt;br /&gt;
[[Categoría:ED14/15]]&lt;br /&gt;
[[Categoría:Trabajos 2014-15]]&lt;/div&gt;</summary>
		<author><name>Javier Ruiz de Galarreta López</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Reacciones_con_autocat%C3%A1lisis._Grupo_D12&amp;diff=29239</id>
		<title>Reacciones con autocatálisis. Grupo D12</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Reacciones_con_autocat%C3%A1lisis._Grupo_D12&amp;diff=29239"/>
				<updated>2015-03-12T18:56:16Z</updated>
		
		<summary type="html">&lt;p&gt;Javier Ruiz de Galarreta López: /* Interpretación del problema y deducción de las ecuaciones diferenciales */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{ TrabajoED | Reacciones con autocatálisis. Grupo D12 | [[:Categoría:Ecuaciones Diferenciales|Ecuaciones Diferenciales]]|[[:Categoría:ED14/15|Curso 2014-15]] | Javier Ruiz de Galarreta López, Argimiro Martínez López, Eduardo Moyano García, Alberto Rodríguez Ruiz. }}&lt;br /&gt;
&lt;br /&gt;
= Introducción: objetivos y metodología =&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
El objetivo de este trabajo es estudiar las concentraciones de los reactivos y productos de una reacción química a lo largo de la evolución en el tiempo de dicha reacción. Para ello modelizaremos el proceso empleando ecuaciones diferenciales y teniendo en cuenta la Ley de Acción de Masas y el Principio de Conservación de la materia.&lt;br /&gt;
&lt;br /&gt;
Al ser las ecuaciones y sistemas que se nos presentan de difícil resolución analítica, utilizaremos el programa informático Matlab para resolverlos mediante métodos numéricos como el de Euler, el del Trapecio, el de Runge-Kutta y el de Heun. &lt;br /&gt;
&lt;br /&gt;
Plasmaremos las soluciones en gráficos que nos permitirán dar una interpretación físico química a los resultados.&lt;br /&gt;
&lt;br /&gt;
= Reacción I =&lt;br /&gt;
&lt;br /&gt;
En primer lugar consideramos una reacción química irreversible en una solución bien mezclada, que se desarrolla para un volumen y una temperatura constantes, y en la que uno de los componentes (B, en este caso), hace de efecto catalítico.&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt; A + B →_{k1} 2B  &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Para desarrollar nuestro análisis nos apoyaremos en dos leyes físico químicas:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''Ley de acción de masas''': Enunciada por Guldberg y Waage en 1864, establece, entre otras cosas, que  la velocidad de&lt;br /&gt;
reacción es proporcional al producto de las concentraciones de los reactivos.&lt;br /&gt;
&lt;br /&gt;
'''Principio de conservación de la masa''': Establece que en una reacción química ordinaria la masa permanece constante, siendo la masa consumida de los reactivos igual a la masa obtenida de los productos. Fue elaborada independientemente por Míjail Lomonósov en 1745 y Antoine Lavoisier en 1785.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Interpretación del problema y deducción de las ecuaciones diferenciales ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Para hallar las ecuaciones diferenciales que nos describan cómo se desarrolla la reacción en el tiempo nos basaremos en las dos leyes enunciadas anteriormente. En primer lugar, definimos nuestra variable independiente como el tiempo &amp;lt;math&amp;gt;t&amp;lt;/math&amp;gt; en segundos. Las dos variables dependientes serán las concentraciones de los compuestos A y B, que denominaremos &amp;lt;math&amp;gt;x(t)&amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt;y(t)&amp;lt;/math&amp;gt;, ambas expresadas en mol/l. &lt;br /&gt;
&lt;br /&gt;
El principio de conservación de la masa expone que la suma de las concentraciones de los reactivos y los productos es constante. Esto equivale, derivando la expresión &amp;lt;math&amp;gt;x(t)+y(t)=cte&amp;lt;/math&amp;gt;, a que  desaparece tanto reactivo como producto aparece, o lo que es lo mismo, que la velocidad de aparición del producto es igual a la velocidad de desaparición (velocidad de aparición negativa) del reactivo:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;x'(t)=-y'(t)&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
La otra ecuación que necesitamos la obtenemos directamente de aplicar la Ley de acción de masas, que establece que la velocidad de la reacción (la velocidad a la que aparece el producto o desaparece el reactivo) es igual al producto de las concentraciones por una constante.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;y'(t)=k_1x(t)y(t)&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Obtención del problema de valor inicial ==&lt;br /&gt;
Una vez demostrado el origen de las ecuaciones (1) y (2) en el apartado anterior, obtendremos el problema de valor inicial (PVI) mediante las operaciones detalladas a continuación:&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;x'(t)+y'(t)=0\quad\quad(1)&amp;lt;/math&amp;gt;&lt;br /&gt;
:&amp;lt;math&amp;gt;y'(t)=k_1x(t)y(t)\quad\quad(2)&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Integrando (1) obtenemos (3):&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
:&amp;lt;math&amp;gt;\int_\mathbb{D} (\frac{dx(t)}{dt} + \frac{dy(t)}{dt})\,dt =\int_\mathbb{D} 0\,dt \quad \Rightarrow \quad x(t)+y(t)=k_2\quad \Rightarrow \quad x(t)=k_2-y(t)\quad\quad(3)&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Sustituyendo (3) en (2), obtenemos (4):&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;y'(t)=k_1x(t)y(t)\quad \Rightarrow \quad y'(t)=k_1(k_2-y(t))y(t)\quad \Rightarrow \quad y'(t)=k_1k_2y(t)-k_1y^2(t)\quad\quad(4)&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Conocemos las concentraciones iniciales de A y de B, por lo que podemos obtener el valor de la constante k&amp;lt;sub&amp;gt;2&amp;lt;/sub&amp;gt;:&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;[A]:\quad x(0)=1 mol/l;\quad\quad [B]:\quad y(0)=0,01 mol/l&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;x(t)+y(t)=k_2\quad \Rightarrow \quad x(0)+y(0)=k_2\quad \Rightarrow \quad 1+0,01=k_2\quad \Rightarrow \quad k_2=1,01&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Por último, conocemos también el valor de k&amp;lt;sub&amp;gt;1&amp;lt;/sub&amp;gt;, por lo que podremos plantear a continuación el correspondiente PVI:&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;k_1=1&amp;lt;/math&amp;gt;&lt;br /&gt;
:&amp;lt;math&amp;gt;(PVI)\begin{cases}y'(t)=1,01y(t)-y^2(t) \\ \\&lt;br /&gt;
y(0) = 0,01 \end{cases}\quad (t,y)\in[0,10]\times\mathbb{R}^+&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Unicidad de la solución ==&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Existencia-y-unicidad.png|200px|miniaturadeimagen|derecha|Intersección B con dominio]]&lt;br /&gt;
&lt;br /&gt;
Aplicamos a continuación el Teorema de Existencia y Unicidad:&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Sea &amp;lt;math&amp;gt;f(t,y)=y'(t) \Rightarrow f(t,y)=1.01y(t)-y^2(t)\quad&amp;lt;/math&amp;gt;, y &amp;lt;math&amp;gt;\quad\frac{\partial }{\partial y} f(t,y) = 1.01-2y(t)&amp;lt;/math&amp;gt;.&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
Sea &amp;lt;math&amp;gt;B[(t_0,y_0),r],\quad r&amp;gt;0,\quad en (t_0,y_0)=(0,0.01)&amp;lt;/math&amp;gt;.&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt; &lt;br /&gt;
&lt;br /&gt;
Y siendo &amp;lt;math&amp;gt;(t,y) \in \mathbb{D} = [0,10]\times \mathbb{R}^+ &amp;lt;/math&amp;gt; .&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt; &lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;f(t,y)&amp;lt;/math&amp;gt; es continua en &amp;lt;math&amp;gt; \mathbb{B}\cap \mathbb{D}\quad \Rightarrow \quad \exists  y(t)\quad /\quad y'(t)=1,01y(t)-y^2(t)&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;math&amp;gt;\frac{\partial }{\partial y} f(t,y)&amp;lt;/math&amp;gt; es continua en &amp;lt;math&amp;gt; \mathbb{B}\cap \mathbb{D}\quad \Rightarrow \quad \exists !  y(t)\quad /\quad y'(t)=1,01y(t)-y^2(t)&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Con lo que queda demostrado que el (PVI) tiene solución y además esta es única.&lt;br /&gt;
&lt;br /&gt;
== Resolución numérica del problema de valor inicial ==&lt;br /&gt;
&lt;br /&gt;
En este apartado resolveremos el problema de valor inicial planteado anteriormente con tres métodos de integración numérica: el método de Euler, el método del Trapecio y el método de Runge-Kutta de orden 4.&lt;br /&gt;
&lt;br /&gt;
=== Método de Euler ===&lt;br /&gt;
&lt;br /&gt;
El método de Euler, llamado así en honor al matemático Leonhard Euler, es un procedimiento de integración numérica. Su expresión matemática es: &lt;br /&gt;
&amp;lt;math&amp;gt;  PVI =   &lt;br /&gt;
\begin{cases}&lt;br /&gt;
 y_0 \\&lt;br /&gt;
 y_{n+1}  = y_n + h*f(t_n,y_n) \\&lt;br /&gt;
\end{cases}\quad&lt;br /&gt;
   &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
A continuación emplearemos esta expresión en un programa de Matlab para obtener una aproximación de las soluciones. El código de dicho programa es el siguiente.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Eulergrafica.png|400px|miniaturadeimagen|derecha|Representación gráfica y(t). Método de Euler]]&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
%Método de Euler&lt;br /&gt;
clc&lt;br /&gt;
&lt;br /&gt;
%Datos iniciales&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=4;&lt;br /&gt;
y0=0.01;&lt;br /&gt;
h=0.1;&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=10;&lt;br /&gt;
&lt;br /&gt;
%Cálculo de subintervalos&lt;br /&gt;
N=round((tN-t0)/h);&lt;br /&gt;
t=t0:h:tN;&lt;br /&gt;
&lt;br /&gt;
%Creamos el vector donde vamos a guardar las soluciones&lt;br /&gt;
y=zeros(1,N+1);&lt;br /&gt;
y(1)=y0;&lt;br /&gt;
&lt;br /&gt;
%Euler&lt;br /&gt;
for i=1:N;&lt;br /&gt;
    y(i+1)=y(i)+h*(1.01*y(i)-(y(i)).^2);&lt;br /&gt;
end&lt;br /&gt;
%Tabla de Resultados&lt;br /&gt;
[t',y']&lt;br /&gt;
x=1.01-y;&lt;br /&gt;
hold on &lt;br /&gt;
plot(t,y,'r')&lt;br /&gt;
plot(t,x,'b')&lt;br /&gt;
hold off&lt;br /&gt;
legend('Sustancia B: y(t)','Sustancia A: x(t)','Location','best');&lt;br /&gt;
xlabel('Tiempo (s)')&lt;br /&gt;
ylabel('Concentración (mol/l)')&lt;br /&gt;
grid on&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
=== Método del trapecio ===&lt;br /&gt;
&lt;br /&gt;
Vamos a aplicar un método de integración numérica conocido como el Método del Trapecio por aproximar el valor de la integral al del área de un trapecio. Su expresión matemática es:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;  PVI =   &lt;br /&gt;
\begin{cases}&lt;br /&gt;
 y_0 \\&lt;br /&gt;
 y_{n+1}  =  y_n + \frac{h}{2}*(f(t_n,y_n)+f(t_{n+1},y_{n+1}))\\&lt;br /&gt;
\end{cases}\quad&lt;br /&gt;
   &amp;lt;/math&amp;gt;&lt;br /&gt;
   &lt;br /&gt;
Introducimos esta expresión en el código y obtenemos la gráfica de la solución.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Trapeciografica.png|400px|miniaturadeimagen|derecha|Representación gráfica y(t). Método del Trapecio]]&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
%Método del Trapecio&lt;br /&gt;
clc&lt;br /&gt;
&lt;br /&gt;
%Datos iniciales&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=4;&lt;br /&gt;
y0=0.01;&lt;br /&gt;
h=0.1;&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=10;&lt;br /&gt;
&lt;br /&gt;
%Cálculo de subintervalos&lt;br /&gt;
N=round((tN-t0)/h);&lt;br /&gt;
t=t0:h:tN;&lt;br /&gt;
&lt;br /&gt;
%Creamos el vector donde vamos a guardar las soluciones&lt;br /&gt;
y=zeros(1,N+1);&lt;br /&gt;
y(1)=y0;&lt;br /&gt;
&lt;br /&gt;
for i=1:N&lt;br /&gt;
y(i+1)=(((1-(h/2)*1.01)-sqrt(((1-(h/2)*1.01)^2)+4*(h/2)*((1+(h/2)*1.01)*y(i)-(h/2)*(y(i))^2)))/-h);&lt;br /&gt;
end&lt;br /&gt;
%Sacamos la tabla de resultados&lt;br /&gt;
[t',y']&lt;br /&gt;
x=1.01-y;&lt;br /&gt;
%Gráfico&lt;br /&gt;
hold on&lt;br /&gt;
plot(t,y,'r')&lt;br /&gt;
plot(t,x,'b')&lt;br /&gt;
legend('Sustancia B: y(t)','Sustancia A: x(t)','Location','best');&lt;br /&gt;
xlabel('Tiempo (s)')&lt;br /&gt;
ylabel('Concentración (mol/l)')&lt;br /&gt;
grid on&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
=== Método de Runge-Kutta ===&lt;br /&gt;
&lt;br /&gt;
El método de resolución numérica de Runge-Kutta, involucra un gran número de parámetros. Para simplificar la implementación de este método en Matlab, utilizaremos la función ''inline'', con la que declararemos previamente la función algebraica necesaria para el cálculo de los parámetros &amp;lt;math&amp;gt;k_i&amp;lt;/math&amp;gt;, ahorrándonos tener que escribir innumerables veces la correspondiente expresión matemática.&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
A continuación, detallamos la función &amp;lt;math&amp;gt;f(y)&amp;lt;/math&amp;gt; de la que dependerán los valores de los parámetros &amp;lt;math&amp;gt;k_i&amp;lt;/math&amp;gt;:&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;f(y)=y'(t)=1.01y(t)-y(t)^2&lt;br /&gt;
&lt;br /&gt;
\quad \Rightarrow \quad&lt;br /&gt;
&lt;br /&gt;
\begin{cases}&lt;br /&gt;
 k_1 &amp;amp; =  f(y_i) \\&lt;br /&gt;
 k_2 &amp;amp; =  f(y_i + {1 \over 2}k_1h) \\&lt;br /&gt;
 k_3 &amp;amp; =  f(y_i + \frac{1}{2}k_2h) \\&lt;br /&gt;
 k_4 &amp;amp; =  f(y_i + k_3h) \\&lt;br /&gt;
\end{cases}\quad [h=0.1]&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Entonces el método RK4 para este problema está dado por la siguiente ecuación:&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;y_{i+1} = y_{i} + {1 \over 6}h(k_1+2k_2+2k_3+k_4)&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Mediante el siguiente programa en Matlab calculamos numéricamente la solución y la representamos en un gráfico:&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Archivo:RK4II.png|400px|miniaturadeimagen|derecha|Representación gráfica y(t). Método Runge-Kutta]]&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
%Método de Runge-Kutta&lt;br /&gt;
clc&lt;br /&gt;
&lt;br /&gt;
%Función f(t)=y'(t)&lt;br /&gt;
fy=inline('1.01*y-y^2','y');&lt;br /&gt;
&lt;br /&gt;
%Datos del problema&lt;br /&gt;
y0=0.01;&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=10;&lt;br /&gt;
h=0.1;&lt;br /&gt;
&lt;br /&gt;
%Variable independiente (t)&lt;br /&gt;
t=t0:h:tN;&lt;br /&gt;
&lt;br /&gt;
%Variable dependiente (y)&lt;br /&gt;
y=zeros(1,length(t));&lt;br /&gt;
y(1)=y0;&lt;br /&gt;
&lt;br /&gt;
for i=1:length(t)-1&lt;br /&gt;
    k1=fy(y(i));&lt;br /&gt;
    k2=fy(y(i)+k1/2*h);&lt;br /&gt;
    k3=fy(y(i)+k2/2*h);&lt;br /&gt;
    k4=fy(y(i)+k3*h);&lt;br /&gt;
    y(i+1)=y(i)+h/6*(k1+2*k2+2*k3+k4);&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
%Variable dependiente (x)&lt;br /&gt;
x=1.01-y;&lt;br /&gt;
&lt;br /&gt;
%Representación gráfica&lt;br /&gt;
hold on&lt;br /&gt;
plot(t,x,'b')&lt;br /&gt;
plot(t,y,'r')&lt;br /&gt;
legend('Sustancia A: x(t)','Sustancia B: y(t)')&lt;br /&gt;
xlabel('Tiempo (s)')&lt;br /&gt;
ylabel('Concentración (mol/l)')&lt;br /&gt;
grid on&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
=== Comparación de métodos===&lt;br /&gt;
&lt;br /&gt;
Podemos observar fácilmente que las gráficas obtenidas con los diferentes métodos son iguales a primera vista. Sin embargo, superponiéndolas queda patente que no son exactamente iguales debido a que los métodos no poseen la misma precisión y , al operar todos con la misma longitud de paso, unos aproximan la solución exacta mejor que otros. Así se observa en estas imágenes:&lt;br /&gt;
&lt;br /&gt;
[[Archivo:comparativa1.jpg|400px|miniaturadeimagen|izquierda|Comparación de métodos]]&lt;br /&gt;
[[Archivo:comparativa2.jpg|400px|miniaturadeimagen|derecha|Comparación de métodos]]&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
Como podemos comprobar en las imágenes, el método de Euler es menos preciso que el del trapecio o el de Runge-Kutta.&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Resolución en forma de sistema de ecuaciones ==&lt;br /&gt;
&lt;br /&gt;
A continuación vamos a plantear el problema de valor inicial con un sistema no lineal de dos ecuaciones equivalente al problema resuelto anteriormente.&lt;br /&gt;
&lt;br /&gt;
Estas ecuaciones serán:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;(PVI)&lt;br /&gt;
\begin{cases}&lt;br /&gt;
    y'(t)=k_1 x(t)y(t) \\&lt;br /&gt;
    x'(t)=-k_1 x(t)y(t) \\&lt;br /&gt;
    \\&lt;br /&gt;
    x(0)=1 \\&lt;br /&gt;
    y(0) = 0.01&lt;br /&gt;
\end{cases}&lt;br /&gt;
\quad t\in[0,10]&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Resolveremos el problema por el método de Euler y por el método de Runge-Kutta, plasmando las soluciones en gráficos.&lt;br /&gt;
&lt;br /&gt;
=== Método de Euler ===&lt;br /&gt;
&lt;br /&gt;
En este caso aplicaremos en el siguiente código la expresión para EDO a cada una de las ecuaciones que conforma el sistema, obteniendo la correspondiente gráfica.&lt;br /&gt;
 &lt;br /&gt;
[[Archivo:SistEuler.png|400px|miniaturadeimagen|derecha|Representación gráfica de las concentraciones de A y B. Resolución del sistema por Euler]]&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
&lt;br /&gt;
%Resolución del sistema por el método de Euler&lt;br /&gt;
&lt;br /&gt;
clear all&lt;br /&gt;
&lt;br /&gt;
%Definimos el vector de la variable independiente, el número de&lt;br /&gt;
%subintervalos y la longitud de paso&lt;br /&gt;
&lt;br /&gt;
t0 = 0;&lt;br /&gt;
tN = 10;&lt;br /&gt;
h = 0.1;&lt;br /&gt;
t = t0:h:tN&lt;br /&gt;
N = (tN-t0)/h;&lt;br /&gt;
&lt;br /&gt;
%Definimos los vectores de las variables dependientes&lt;br /&gt;
&lt;br /&gt;
x = zeros(1, N+1);&lt;br /&gt;
y = zeros(1, N+1);&lt;br /&gt;
&lt;br /&gt;
x(1) = 1;&lt;br /&gt;
y(1) = 0.01;&lt;br /&gt;
&lt;br /&gt;
for i = 1:N&lt;br /&gt;
    &lt;br /&gt;
    x(i+1)=x(i)+h*(-x(i).*y(i));&lt;br /&gt;
    y(i+1)=y(i)+h*(y(i).*x(i));&lt;br /&gt;
    &lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
%Representamos gráficamente las soluciones&lt;br /&gt;
&lt;br /&gt;
hold on&lt;br /&gt;
&lt;br /&gt;
plot(t,x,'b');&lt;br /&gt;
plot(t,y,'r');&lt;br /&gt;
grid on&lt;br /&gt;
&lt;br /&gt;
legend('Sustancia A: x(t)','Sustancia B: y(t)')&lt;br /&gt;
xlabel('Tiempo (s)')&lt;br /&gt;
ylabel('Concentración (mol/l)')&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
hold off&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
}}&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Método de Runge-Kutta===&lt;br /&gt;
&lt;br /&gt;
El método de resolución numérica de Runge-Kutta, involucra un gran número de parámetros. Para simplificar la implementación de este método en Matlab, el sistema se tratará como una matriz &amp;lt;math&amp;gt;z&amp;lt;/math&amp;gt;. Además, utilizaremos la función ''inline'', con la que declararemos previamente la función algebraica necesaria para el cálculo de los parámetros &amp;lt;math&amp;gt;k_i&amp;lt;/math&amp;gt;, ahorrándonos tener que escribir innumerables veces la correspondiente expresión matemática.&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Primero, expresamos el sistema en forma matricial:&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;(PVI)\begin{cases}&lt;br /&gt;
    x'(t)=-k_1 x(t)y(t) \\&lt;br /&gt;
    y'(t)=k_1 x(t)y(t) \\&lt;br /&gt;
    \\&lt;br /&gt;
    x(0)=1 \\&lt;br /&gt;
    y(0) = 0.01&lt;br /&gt;
\end{cases}\quad t\in[0,10]&lt;br /&gt;
&lt;br /&gt;
\quad \Rightarrow \quad k_1=1\quad \Rightarrow \quad&lt;br /&gt;
&lt;br /&gt;
(PVI)\begin{cases}\vec{z}'(t)=&lt;br /&gt;
   \begin{bmatrix}&lt;br /&gt;
      x'(t) \\&lt;br /&gt;
      y'(t) \\&lt;br /&gt;
   \end{bmatrix}&lt;br /&gt;
=&lt;br /&gt;
      \begin{bmatrix}&lt;br /&gt;
      -x(t)y(t) \\&lt;br /&gt;
      x(t)y(t) \\&lt;br /&gt;
   \end{bmatrix}&lt;br /&gt;
&lt;br /&gt;
 \\ \\ \vec{z}(0)=&lt;br /&gt;
   \begin{bmatrix}&lt;br /&gt;
      x(0) \\&lt;br /&gt;
      y(0) \\&lt;br /&gt;
   \end{bmatrix}&lt;br /&gt;
=&lt;br /&gt;
      \begin{bmatrix}&lt;br /&gt;
      1 \\&lt;br /&gt;
      0.01 \\&lt;br /&gt;
   \end{bmatrix}&lt;br /&gt;
\end{cases}\quad t\in[0,10]&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
A continuación, detallamos la función &amp;lt;math&amp;gt;\vec{F}&amp;lt;/math&amp;gt; de la que dependerán los valores de los parámetros &amp;lt;math&amp;gt;k_i&amp;lt;/math&amp;gt;:&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;\vec{F}(x,y)=\vec{F}(\vec{z})=&lt;br /&gt;
&lt;br /&gt;
\begin{bmatrix}&lt;br /&gt;
    f(\vec{z}) \\&lt;br /&gt;
    g(\vec{z}) \\&lt;br /&gt;
\end{bmatrix}=&lt;br /&gt;
&lt;br /&gt;
\begin{bmatrix}&lt;br /&gt;
    x'(t) \\&lt;br /&gt;
    y'(t) \\&lt;br /&gt;
\end{bmatrix}=&lt;br /&gt;
&lt;br /&gt;
\vec{z}'(t)=&lt;br /&gt;
&lt;br /&gt;
\begin{bmatrix}&lt;br /&gt;
    -x(t)y(t) \\&lt;br /&gt;
    x(t)y(t) \\&lt;br /&gt;
\end{bmatrix}&lt;br /&gt;
\quad \Rightarrow \quad&lt;br /&gt;
&lt;br /&gt;
\begin{cases}&lt;br /&gt;
 [\vec{k_1}] &amp;amp; =  F(\vec{z}_i) \\&lt;br /&gt;
 [\vec{k_2}] &amp;amp; =  F(\vec{z}_i + {1 \over 2}k_1h) \\&lt;br /&gt;
 [\vec{k_3}] &amp;amp; =  F(\vec{z}_i + \frac{1}{2}k_2h) \\&lt;br /&gt;
 [\vec{k_4}] &amp;amp; =  F(\vec{z}_i + k_3h) \\&lt;br /&gt;
\end{cases}\quad [h=0.1]&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Entonces el método RK4 para este problema está dado por la siguiente ecuación:&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;\vec{z}_{i+1} = \vec{z}_{i} + {1 \over 6}h(\vec{k_1}+2\vec{k_2}+2\vec{k_3}+\vec{k_4})&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Mediante el siguiente programa en Matlab calculamos numéricamente la solución y la representamos en un gráfico:&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Archivo:sistema_RK4.png|400px|miniaturadeimagen|derecha|Representación gráfica de las concentraciones de A y B. Resolución del sistema por Runge-Kutta]]&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
%Método de Runge-Kutta&lt;br /&gt;
clc&lt;br /&gt;
&lt;br /&gt;
%Función F=[x'(t); y'(t)]&lt;br /&gt;
F=inline('[-z(1)*z(2);z(1)*z(2)]','z');&lt;br /&gt;
&lt;br /&gt;
%Datos del problema &lt;br /&gt;
x0=1;&lt;br /&gt;
y0=0.01;&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=10;&lt;br /&gt;
h=0.1;&lt;br /&gt;
&lt;br /&gt;
%Vector de variable independiente (t)&lt;br /&gt;
t=t0:h:tN;&lt;br /&gt;
&lt;br /&gt;
%Matriz de variables dependientes z=[x;y]&lt;br /&gt;
z=zeros(2,length(t));&lt;br /&gt;
z(:,1)=[x0;y0];&lt;br /&gt;
&lt;br /&gt;
for i = 1:length(t)-1&lt;br /&gt;
    k1=F(z(:,i));&lt;br /&gt;
    k2=F(z(:,i)+k1.*h/2);&lt;br /&gt;
    k3=F(z(:,i)+k2.*h/2);&lt;br /&gt;
    k4=F(z(:,i)+k3.*h);&lt;br /&gt;
    z(:,i+1)=z(:,i)+h/6.*(k1+2.*k2+2.*k3+k4);&lt;br /&gt;
end&lt;br /&gt;
 &lt;br /&gt;
%Representación gráfica&lt;br /&gt;
hold on&lt;br /&gt;
plot(t,z(1,:))&lt;br /&gt;
plot(t,z(2,:),'r')&lt;br /&gt;
legend('Sustancia A: x(t)','Sustancia B: y(t)')&lt;br /&gt;
xlabel('Tiempo (s)')&lt;br /&gt;
ylabel('Concentración (mol/l)')&lt;br /&gt;
grid on&lt;br /&gt;
%hold off&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
== Interpretación de las gráficas ==&lt;br /&gt;
&lt;br /&gt;
Como cabía esperar, obtenemos la misma solución resolviendo el problema como sistema o como EDO. Podemos observar por los resultados obtenidos que la velocidad de aparición de B es igual a la velocidad de desaparición de A (como dicta el principio de conservación de la masa), que A acaba desapareciendo prácticamente por completo y que la concentración de B termina por estabilizarse alrededor de 1 mol/l. Ambos compuestos alcanzan los extremos de sus concentraciones en el mismo instante de tiempo&lt;br /&gt;
&lt;br /&gt;
También cabe destacar que cuando el tiempo transcurrido alcanza 4,5 segundos las concentraciones de ambos compuestos son las mismas.&lt;br /&gt;
&lt;br /&gt;
= Reacción II =&lt;br /&gt;
&lt;br /&gt;
En este apartado vamos a estudiar la reacción propuesta por Alfred J. Lotka en 1920, que es la siguiente:&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt; A + X →_{k1} 2X;&amp;lt;/math&amp;gt;     :&amp;lt;math&amp;gt; X + Y →_{k2} 2Y;&amp;lt;/math&amp;gt;     :&amp;lt;math&amp;gt;Y →_{k3} 2B  &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Como se puede observar, se trata de una reacción compleja integrada por 3 reacciones simples (las dos primeras autocatalíticas) en las que intervienen un total de 4 compuestos, A, B, X e Y. Siguiendo el desarrollo de la reacción, es lógico suponer que A se agotará al comienzo de la reacción, que los máximos de concentración de X e Y se darán en los estados intermedios y que al final el compuesto B será el único restante, siendo el producto final de la reacción.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Interpretación del problema y deducción de las ecuaciones diferenciales ==&lt;br /&gt;
&lt;br /&gt;
Para averiguar cómo evolucionan las concentraciones de los cuatro compuestos durante el desarrollo de la reacción necesitaremos obtener cuatro ecuaciones diferenciales. Para ello nos volveremos a basar en los principios físicos que ya empleamos en la anterior reacción. Definimos A(t), x(t), y(t), y B(t) (A, x, y, B; para ahorrar notación) como las concentraciones de A, X, Y, y B, respectivamente. &lt;br /&gt;
&lt;br /&gt;
En primer lugar aplicamos el Principio de Conservación de la masa, que establece que la suma de las concentraciones de los compuestos es constante (no desaparece masa en el proceso), lo que derivando nos indica que:&lt;br /&gt;
&lt;br /&gt;
: &amp;lt;math&amp;gt; A' + x' + y' + B' = 0 \quad\quad(I)&amp;lt;/math&amp;gt;       &lt;br /&gt;
&lt;br /&gt;
A continuación aplicaremos la Ley de Acción de Masas (velocidad de reacción proporcional al producto de la concentración de los reactivos).&lt;br /&gt;
&lt;br /&gt;
Aplicando esta ley a la última reacción simple obtenemos que: &lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;B'=k_3y \quad\quad(II)&amp;lt;/math&amp;gt;        &lt;br /&gt;
&lt;br /&gt;
En el caso de las concentraciones de X e Y las expresiones resultantes son algo más complicadas ya que estos dos compuestos actúan como reactivos y productos en más de una reacción simple, por lo que la variación de sus concentraciones será la suma de las variaciones de las reacciones en las que aparezcan:&lt;br /&gt;
&lt;br /&gt;
: &amp;lt;math&amp;gt; x' = x'_{1} + x'_{2} → x' = k_{1}Ax - k{2}xy \quad\quad(III)&amp;lt;/math&amp;gt;        &lt;br /&gt;
: &amp;lt;math&amp;gt; y' = y'_{2} + y'_{3} → y' = k_{2}xy − k_3{y} \quad\quad(IV)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Por último sustituimos (II), (III) y (IV) en (I) obteniendo: &lt;br /&gt;
&lt;br /&gt;
: &amp;lt;math&amp;gt; A' + k_{1}Ax - k{2}xy + k_{2}xy − k_3{y}+ k_3y= 0 : &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
De donde obtenemos que:&lt;br /&gt;
&lt;br /&gt;
: &amp;lt;math&amp;gt; A' = -k_{1}Ax &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Ahora que ya tenemos las variaciones de concentración de los compuestos en función de las concentraciones podemos aplicar métodos numéricos que nos lleven a una solución aproximada.&lt;br /&gt;
&lt;br /&gt;
== Resolución numérica del sistema de ecuaciones ==&lt;br /&gt;
&lt;br /&gt;
Una vez obtenidas las ecuaciones y conociendo las condiciones iniciales y los valores de las constantes podemos plantear el problema de valor inicial para luego resolverlo.&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;(PVI)&lt;br /&gt;
\begin{cases}&lt;br /&gt;
    A' = -k_{1}Ax\\&lt;br /&gt;
    x' = k_{1}Ax - k{2}xy\\&lt;br /&gt;
    y' = k_{2}xy − k_3{y}\\&lt;br /&gt;
    B'=k_3y \\&lt;br /&gt;
\\&lt;br /&gt;
    A(0)=5  \\&lt;br /&gt;
    x(0)=5*10^{-4} \\&lt;br /&gt;
    y(0)=10^{-5}\\&lt;br /&gt;
    B(0)=0 \\&lt;br /&gt;
\end{cases}&lt;br /&gt;
\quad t\in[0,200]&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Siendo &amp;lt;math&amp;gt; k_{1}=K_{2}=2k_{3}=0.1 &amp;lt;/math&amp;gt; y las unidades de la concentración mol/l.&lt;br /&gt;
&lt;br /&gt;
=== Método de Euler ===&lt;br /&gt;
&lt;br /&gt;
Aplicamos el método de Euler de forma análoga a como lo hicimos en [[Reacciones_con_autocatálisis._Grupo_D12#Método_de_Euler_2|apartado 2.5.1]]&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Euler lotka0.01.png|400px|miniaturadeimagen|derecha|Representación gráfica de las concentraciones de A, B, X, e Y a lo largo del tiempo. Resoluciónd delsistema por el método de Euler con longitud de paso h=0.01]] &lt;br /&gt;
[[Archivo:Euler lotka0.001.png|400px|miniaturadeimagen|derecha|Representación gráfica de las concentraciones de A, B, X, e Y a lo largo del tiempo. Resoluciónd delsistema por el método de Euler con longitud de paso h=0.001]]&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
&lt;br /&gt;
%Resolución del sistema de la reacción de Lotka por el método de Euler&lt;br /&gt;
&lt;br /&gt;
clear all&lt;br /&gt;
&lt;br /&gt;
%Definimos la variable independiente y establecemos los datos del problema&lt;br /&gt;
%de valor inicial. Para la longitud de paso h introducimos en primer lugar&lt;br /&gt;
%0.01 y luego 0.001&lt;br /&gt;
&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=200;&lt;br /&gt;
h= input('Introduzca una longitud de paso ');&lt;br /&gt;
t = t0:h:tN;&lt;br /&gt;
N=(tN-t0)/h;&lt;br /&gt;
k1 = 0.1;&lt;br /&gt;
k2 = 0.1;&lt;br /&gt;
k3 = 0.05;&lt;br /&gt;
A0 = 5;&lt;br /&gt;
B0 = 0;&lt;br /&gt;
X0 = 5*10^(-4);&lt;br /&gt;
Y0 = 10^(-5);&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
%Definimos las variables dependientes.&lt;br /&gt;
&lt;br /&gt;
A = zeros(1, N-1);&lt;br /&gt;
B = A;&lt;br /&gt;
X = A;&lt;br /&gt;
Y = A;&lt;br /&gt;
&lt;br /&gt;
A(1) = A0;&lt;br /&gt;
B(1) = B0;&lt;br /&gt;
X(1) = X0;&lt;br /&gt;
Y(1) = Y0;&lt;br /&gt;
&lt;br /&gt;
for i = 1:N&lt;br /&gt;
    &lt;br /&gt;
    X(i+1) = X(i) + h*(k1*A(i)*X(i)-k2*Y(i)*X(i));&lt;br /&gt;
    Y(i+1)=Y(i)+h.*(k2.*X(i).*Y(i)-k3.*Y(i));&lt;br /&gt;
    B(i+1) = B(i) + h*(k3*Y(i));&lt;br /&gt;
    A(i+1) = A(i) + h*(-k1*A(i)*X(i));&lt;br /&gt;
   &lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
%Representamos gráficamente la solución&lt;br /&gt;
&lt;br /&gt;
hold on&lt;br /&gt;
&lt;br /&gt;
plot (t,A,'b')&lt;br /&gt;
plot(t, X, 'r')&lt;br /&gt;
plot(t,Y, 'g')&lt;br /&gt;
plot(t, B, 'm')&lt;br /&gt;
legend('Sustancia A: A(t)','Sustancia X: x(t)','Sustancia Y: y(t)','Sustancia B: B(t)','Location','Best')&lt;br /&gt;
xlabel('Tiempo (s)')&lt;br /&gt;
ylabel('Concentración (mol/l)')&lt;br /&gt;
grid on&lt;br /&gt;
&lt;br /&gt;
hold off&lt;br /&gt;
&lt;br /&gt;
}}&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
A continuación tendremos que comprobar si el método es estable. &amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
Un método es estable cuando el error local es pequeño y además este error no se amplifica a lo largo del tiempo. Para calificar la estabilidad del método de Euler resolveremos el sistema anterior con este método, con pasos &amp;quot;h=0.01&amp;quot; y &amp;quot;h=0.001&amp;quot;, y lo compararemos con la resolución del sistema con el método de Heun, que se asemeja más a la solución exacta.&amp;lt;br /&amp;gt;&lt;br /&gt;
En la comparación representaremos en azul el método de Heun y en rojo el método de Euler.&amp;lt;br /&amp;gt;&lt;br /&gt;
Para &amp;quot;h=0.01&amp;quot; tenemos lo siguiente:&lt;br /&gt;
[[Archivo:1estabilidad123.jpg|400px|miniaturadeimagen|izquierda|Comparación entre Método de Heun (Azul) con el Método de Euler con paso h=0.01 (Rojo)]] &lt;br /&gt;
[[Archivo:1estabilidad321.jpg|400px|miniaturadeimagen|derecha|Comparación entre Método de Heun (Azul) con el Método de Euler con paso h=0.01 (Rojo)]] &lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
Para &amp;quot;h=0.001&amp;quot; tenemos lo siguiente:&lt;br /&gt;
[[Archivo:2estabilidad123.jpg|400px|miniaturadeimagen|izquierda|Comparación entre Método de Heun (Azul) con el Método de Euler con paso h=0.001 (Rojo)]] &lt;br /&gt;
[[Archivo:2estabilidad321.jpg|400px|miniaturadeimagen|derecha|Comparación entre Método de Heun (Azul) con el Método de Euler con paso h=0.001 (Rojo)]]&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
Como podemos ver en las imágenes de los dos procesos las gráficas se superponen y no se aprecian diferencias hasta que no ampliamos la imagen. Y esto sucede en todo momento con lo que podemos garantizar que en este caso el método de Euler es estable para los pasos que hemos usado.&lt;br /&gt;
&lt;br /&gt;
=== Método de Heun ===&lt;br /&gt;
&lt;br /&gt;
Si bien el método de resolución numérica de Heun no involucra un número de parámetros tan notable como el método de Runge-Kutta, en este caso tenemos un sistema de 4 ecuaciones diferenciales, por lo que, en aras de simplificar, utilizaremos el mismo criterio que en el [[Reacciones_con_autocatálisis._Grupo_D12#Método_de_Runge-Kutta_2|apartado 2.5.2]].: El sistema se tratará como una matriz &amp;lt;math&amp;gt;z&amp;lt;/math&amp;gt;, y para la obtención de los parámetros &amp;lt;math&amp;gt;k_i&amp;lt;/math&amp;gt; utilizaremos la función ''inline'', con la que declararemos previamente las expresiones necesarias para el cálculo de los parámetros &amp;lt;math&amp;gt;k_i&amp;lt;/math&amp;gt;.&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Primero, expresamos el sistema en forma matricial:&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;(PVI)\begin{cases}&lt;br /&gt;
A'(t)=-k_1 A(t)x(t) \\&lt;br /&gt;
x'(t)=k_1 A(t)x(t)-k_2 x(t)y(t) \\&lt;br /&gt;
y'(t)=k_2 x(t)y(t)-k_3 y(t) \\&lt;br /&gt;
B'(t)=k_3 x(t)y(t) \\ \\&lt;br /&gt;
A(0)=5 \\&lt;br /&gt;
x(0)=5·10^{-4} \\&lt;br /&gt;
y(0)=10^{-5} \\&lt;br /&gt;
B(0) = 0&lt;br /&gt;
\end{cases}\quad t\in[0,200]&lt;br /&gt;
&lt;br /&gt;
\quad \Rightarrow \quad&lt;br /&gt;
&lt;br /&gt;
\begin{cases}&lt;br /&gt;
k_1=0.1 \\&lt;br /&gt;
k_2=0.1 \\&lt;br /&gt;
k_3=0.05 \\&lt;br /&gt;
&lt;br /&gt;
\end{cases}&lt;br /&gt;
&lt;br /&gt;
\quad \Rightarrow \quad&lt;br /&gt;
&lt;br /&gt;
(PVI)\begin{cases}\vec{z}'(t)=&lt;br /&gt;
   \begin{bmatrix}&lt;br /&gt;
      A'(t) \\&lt;br /&gt;
      x'(t) \\&lt;br /&gt;
      y'(t) \\&lt;br /&gt;
      B'(t) \\&lt;br /&gt;
   \end{bmatrix}&lt;br /&gt;
=&lt;br /&gt;
      \begin{bmatrix}&lt;br /&gt;
      -0.1 A(t)x(t) \\&lt;br /&gt;
      0.1 A(t)x(t)-0.1 x(t)y(t) \\&lt;br /&gt;
      0.1 x(t)y(t)-0.05 y(t) \\&lt;br /&gt;
      0.05 y(t)x(t)\\&lt;br /&gt;
   \end{bmatrix}&lt;br /&gt;
&lt;br /&gt;
 \\ \\ \vec{z}(0)=&lt;br /&gt;
   \begin{bmatrix}&lt;br /&gt;
      A(0) \\&lt;br /&gt;
      x(0) \\&lt;br /&gt;
      y(0) \\&lt;br /&gt;
      B(0) \\&lt;br /&gt;
   \end{bmatrix}&lt;br /&gt;
=&lt;br /&gt;
      \begin{bmatrix}&lt;br /&gt;
      5 \\&lt;br /&gt;
      5·10^{-4} \\&lt;br /&gt;
      10^{-5} \\&lt;br /&gt;
      0&lt;br /&gt;
   \end{bmatrix}&lt;br /&gt;
\end{cases}\quad t\in[0,200]&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
A continuación, detallamos la función &amp;lt;math&amp;gt;\vec{F}&amp;lt;/math&amp;gt; de la que dependerán los valores de los parámetros &amp;lt;math&amp;gt;k_i&amp;lt;/math&amp;gt;:&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;\vec{F}(A,x,y,B)=\vec{F}(\vec{z})=&lt;br /&gt;
\begin{bmatrix}&lt;br /&gt;
    f(\vec{z}) \\ &lt;br /&gt;
    g(\vec{z}) \\ &lt;br /&gt;
    h(\vec{z}) \\ &lt;br /&gt;
    i(\vec{z}) \\ &lt;br /&gt;
\end{bmatrix}=&lt;br /&gt;
\begin{bmatrix}&lt;br /&gt;
    A'(t) \\&lt;br /&gt;
    x'(t) \\&lt;br /&gt;
    y'(t) \\&lt;br /&gt;
    B'(t) \\&lt;br /&gt;
\end{bmatrix}=&lt;br /&gt;
\vec{z}'(t)=&lt;br /&gt;
      \begin{bmatrix}&lt;br /&gt;
      -0.1 A(t)x(t) \\&lt;br /&gt;
      0.1 A(t)x(t)-0.1 x(t)y(t) \\&lt;br /&gt;
      0.1 x(t)y(t)-0.05 y(t) \\&lt;br /&gt;
      0.05 y(t)x(t)\\&lt;br /&gt;
   \end{bmatrix}&lt;br /&gt;
&lt;br /&gt;
\quad \Rightarrow \quad &lt;br /&gt;
&lt;br /&gt;
\begin{cases}&lt;br /&gt;
 [\vec{k_1}] &amp;amp; =  F(\vec{z}_i) \\&lt;br /&gt;
 [\vec{k_2}] &amp;amp; =  F(\vec{z}_i + {1 \over 2}k_1h) \\&lt;br /&gt;
\end{cases}\quad [h=0.01]&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Entonces el método de Heun para este problema está dado por la siguiente ecuación:&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;\vec{z}_{i+1} = \vec{z}_{i} + {1 \over 2}h(\vec{k_1}+\vec{k_2})&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Mediante el siguiente programa en Matlab calculamos numéricamente la solución y la representamos en un gráfico:&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Archivo:AXYBRK4.png|400px|miniaturadeimagen|derecha|Representación gráfica de las concentraciones de A,X,Y y B. Resolución del sistema por Heun]]&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
%Método de Heun&lt;br /&gt;
clc&lt;br /&gt;
&lt;br /&gt;
%Función F=[A'(t);x'(t); y'(t);B'(t)]&lt;br /&gt;
F=inline('0.1.*[-z(1)*z(2);z(1)*z(2)-z(2)*z(3);z(2)*z(3)-z(3)/2;z(3)/2]','z');&lt;br /&gt;
&lt;br /&gt;
%Datos del problema&lt;br /&gt;
A0=5;&lt;br /&gt;
x0=5*10^-4;&lt;br /&gt;
y0=10^(-5);&lt;br /&gt;
B0=0;&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=200;&lt;br /&gt;
h=0.1;&lt;br /&gt;
&lt;br /&gt;
%Vector de variable independiente (t)&lt;br /&gt;
t=t0:h:tN;&lt;br /&gt;
&lt;br /&gt;
%Matriz de variables dependientes z=[A;x;y;B]&lt;br /&gt;
z=zeros(4,length(t));&lt;br /&gt;
z(:,1)=[A0;x0;y0;B0];&lt;br /&gt;
&lt;br /&gt;
for i = 1:length(t)-1&lt;br /&gt;
    k1=F(z(:,i));&lt;br /&gt;
    k2=F(z(:,i)+k1.*h/2);&lt;br /&gt;
    z(:,i+1)=z(:,i)+h/2.*(k1+k2);&lt;br /&gt;
end&lt;br /&gt;
 &lt;br /&gt;
%Representación gráfica&lt;br /&gt;
hold on&lt;br /&gt;
plot(t,z(1,:),'b')&lt;br /&gt;
plot(t,z(2,:),'r')&lt;br /&gt;
plot(t,z(3,:),'g')&lt;br /&gt;
plot(t,z(4,:),'m')&lt;br /&gt;
legend('Sustancia A: A(t)','Sustancia X: x(t)','Sustancia Y: y(t)','Sustancia B: B(t)','Location','Best')&lt;br /&gt;
xlabel('Tiempo (s)')&lt;br /&gt;
ylabel('Concentración (mol/l)')&lt;br /&gt;
grid on&lt;br /&gt;
hold off&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
== Interpretación de las gráficas == &lt;br /&gt;
 &lt;br /&gt;
El proceso comienza con el predominio absoluto del compuesto A en la concentración total, siendo la presencia de los otros tres compuestos despreciable. Durante los primeros segundos la situación apenas cambia, pero tras los diez primeros segundos la concentración de A cae bruscamente mientras que la concentración de X aumenta a la misma velocidad; antes de llegar a los veinte segundos transcurridos las concentraciones de ambos compuestos se igualan y otros quince segundos más tarde el compuesto A  prácticamente ha desaparecido y el X ha alcanzado su concentración máxima (5 mol/litro).&lt;br /&gt;
&lt;br /&gt;
Es entonces cuando concluye la primera reacción y comienzan las otras dos, al no haber más compuesto A que cree compuesto X. La velocidad de aparición de Y es inicialmente mayor que la de B, superando al poco tiempo en concentración a la sustancia X. Sin embargo, llega un momento en el que la concentración de X es tan baja que se ralentiza la creación de Y y pronto empieza a disminuir su concentración tras alcanzar un máximo en torno a los 56 segundos, perdiendo peso la segunda reacción en beneficio de la tercera.&lt;br /&gt;
&lt;br /&gt;
Tras los 60 segundos de reacción el compuesto X pasa a tener una concentración despreciable, por lo que la única reacción simple que se sigue desarrollando es la tercera, destruyéndose reactivo Y y creándose producto B. La concentración de Y va reduciéndose paulatinamente hasta que en torno a los 160 segundos de reacción alcanza niveles insignificantes mientras que la concentración de B alcanza su máximo de 5 mol/litro.&lt;br /&gt;
&lt;br /&gt;
Es interesante observar que en todo momento se cumple el Principio de Conservación de la masa: la suma en cualquier momento de las concentraciones de las sustancias es 5 mol /litro. Esto es fácilmente comprobable en los momentos en que las concentraciones de A, X y B alcanzan su máximo de 5 mol/litro y el resto de concentraciones son nulas o despreciables. &lt;br /&gt;
[[Categoría:Ecuaciones Diferenciales]]&lt;br /&gt;
[[Categoría:ED14/15]]&lt;br /&gt;
[[Categoría:Trabajos 2014-15]]&lt;/div&gt;</summary>
		<author><name>Javier Ruiz de Galarreta López</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Reacciones_con_autocat%C3%A1lisis._Grupo_D12&amp;diff=29238</id>
		<title>Reacciones con autocatálisis. Grupo D12</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Reacciones_con_autocat%C3%A1lisis._Grupo_D12&amp;diff=29238"/>
				<updated>2015-03-12T18:53:09Z</updated>
		
		<summary type="html">&lt;p&gt;Javier Ruiz de Galarreta López: /* Unicidad de la solución */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{ TrabajoED | Reacciones con autocatálisis. Grupo D12 | [[:Categoría:Ecuaciones Diferenciales|Ecuaciones Diferenciales]]|[[:Categoría:ED14/15|Curso 2014-15]] | Javier Ruiz de Galarreta López, Argimiro Martínez López, Eduardo Moyano García, Alberto Rodríguez Ruiz. }}&lt;br /&gt;
&lt;br /&gt;
= Introducción: objetivos y metodología =&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
El objetivo de este trabajo es estudiar las concentraciones de los reactivos y productos de una reacción química a lo largo de la evolución en el tiempo de dicha reacción. Para ello modelizaremos el proceso empleando ecuaciones diferenciales y teniendo en cuenta la Ley de Acción de Masas y el Principio de Conservación de la materia.&lt;br /&gt;
&lt;br /&gt;
Al ser las ecuaciones y sistemas que se nos presentan de difícil resolución analítica, utilizaremos el programa informático Matlab para resolverlos mediante métodos numéricos como el de Euler, el del Trapecio, el de Runge-Kutta y el de Heun. &lt;br /&gt;
&lt;br /&gt;
Plasmaremos las soluciones en gráficos que nos permitirán dar una interpretación físico química a los resultados.&lt;br /&gt;
&lt;br /&gt;
= Reacción I =&lt;br /&gt;
&lt;br /&gt;
En primer lugar consideramos una reacción química irreversible en una solución bien mezclada, que se desarrolla para un volumen y una temperatura constantes, y en la que uno de los componentes (B, en este caso), hace de efecto catalítico.&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt; A + B →_{k1} 2B  &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Para desarrollar nuestro análisis nos apoyaremos en dos leyes físico químicas:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''Ley de acción de masas''': Enunciada por Guldberg y Waage en 1864, establece, entre otras cosas, que  la velocidad de&lt;br /&gt;
reacción es proporcional al producto de las concentraciones de los reactivos.&lt;br /&gt;
&lt;br /&gt;
'''Principio de conservación de la masa''': Establece que en una reacción química ordinaria la masa permanece constante, siendo la masa consumida de los reactivos igual a la masa obtenida de los productos. Fue elaborada independientemente por Míjail Lomonósov en 1745 y Antoine Lavoisier en 1785.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Interpretación del problema y deducción de las ecuaciones diferenciales ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Para hallar las ecuaciones diferenciales que nos describan cómo se desarrolla la reacción en el tiempo nos basaremos en las dos leyes enunciadas anteriormente. En primer lugar, definimos nuestra variable independiente como el tiempo &amp;lt;math&amp;gt;t&amp;lt;/math&amp;gt; en segundos. Las dos variables dependientes serán las concentraciones de los compuestos A y B, que denominaremos &amp;lt;math&amp;gt;x(t)&amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt;y(t)&amp;lt;/math&amp;gt;, ambas expresadas en mol/l. &lt;br /&gt;
&lt;br /&gt;
El principio de conservación de la masa expone que la suma de las concentraciones de los reactivos y los productos es constante. Esto equivale, derivando la expresión &amp;lt;math&amp;gt;x(t)+y(t)=cte&amp;lt;/math&amp;gt;, a que  desaparece tanto reactivo como producto aparece, o lo que es lo mismo, que la velocidad de aparición del producto es igual a la velocidad de desaparición (velocidad de aparición negativa) del reactivo:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;x'(t)=-y'(t)&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
La otra ecuación que necesitamos la obtenemos directamente de aplicar la Ley de acción de masas, que establece que la velocidad de la reacción (la velocidad a la que aparece el producto o desaparece el reactivo) es igual al producto de las concentraciones por una constante.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;y'(t)=k_1x(t)y(t)&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Obtención del problema de valor inicial ==&lt;br /&gt;
Una vez demostrado el origen de las ecuaciones (1) y (2) en el apartado anterior, obtendremos el problema de valor inicial (PVI) mediante las operaciones detalladas a continuación:&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;x'(t)+y'(t)=0\quad\quad(1)&amp;lt;/math&amp;gt;&lt;br /&gt;
:&amp;lt;math&amp;gt;y'(t)=k_1x(t)y(t)\quad\quad(2)&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Integrando (1) obtenemos (3):&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
:&amp;lt;math&amp;gt;\int_\mathbb{D} (\frac{dx(t)}{dt} + \frac{dy(t)}{dt})\,dt =\int_\mathbb{D} 0\,dt \quad \Rightarrow \quad x(t)+y(t)=k_2\quad \Rightarrow \quad x(t)=k_2-y(t)\quad\quad(3)&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Sustituyendo (3) en (2), obtenemos (4):&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;y'(t)=k_1x(t)y(t)\quad \Rightarrow \quad y'(t)=k_1(k_2-y(t))y(t)\quad \Rightarrow \quad y'(t)=k_1k_2y(t)-k_1y^2(t)\quad\quad(4)&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Conocemos las concentraciones iniciales de A y de B, por lo que podemos obtener el valor de la constante k&amp;lt;sub&amp;gt;2&amp;lt;/sub&amp;gt;:&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;[A]:\quad x(0)=1 mol/l;\quad\quad [B]:\quad y(0)=0,01 mol/l&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;x(t)+y(t)=k_2\quad \Rightarrow \quad x(0)+y(0)=k_2\quad \Rightarrow \quad 1+0,01=k_2\quad \Rightarrow \quad k_2=1,01&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Por último, conocemos también el valor de k&amp;lt;sub&amp;gt;1&amp;lt;/sub&amp;gt;, por lo que podremos plantear a continuación el correspondiente PVI:&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;k_1=1&amp;lt;/math&amp;gt;&lt;br /&gt;
:&amp;lt;math&amp;gt;(PVI)\begin{cases}y'(t)=1,01y(t)-y^2(t) \\ \\&lt;br /&gt;
y(0) = 0,01 \end{cases}\quad (t,y)\in[0,10]\times\mathbb{R}^+&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Unicidad de la solución ==&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Existencia-y-unicidad.png|200px|miniaturadeimagen|derecha|Intersección B con dominio]]&lt;br /&gt;
&lt;br /&gt;
Aplicamos a continuación el Teorema de Existencia y Unicidad:&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Sea &amp;lt;math&amp;gt;f(t,y)=y'(t) \Rightarrow f(t,y)=1.01y(t)-y^2(t)\quad&amp;lt;/math&amp;gt;, y &amp;lt;math&amp;gt;\quad\frac{\partial }{\partial y} f(t,y) = 1.01-2y(t)&amp;lt;/math&amp;gt;.&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
Sea &amp;lt;math&amp;gt;B[(t_0,y_0),r],\quad r&amp;gt;0,\quad en (t_0,y_0)=(0,0.01)&amp;lt;/math&amp;gt;.&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt; &lt;br /&gt;
&lt;br /&gt;
Y siendo &amp;lt;math&amp;gt;(t,y) \in \mathbb{D} = [0,10]\times \mathbb{R}^+ &amp;lt;/math&amp;gt; .&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt; &lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;f(t,y)&amp;lt;/math&amp;gt; es continua en &amp;lt;math&amp;gt; \mathbb{B}\cap \mathbb{D}\quad \Rightarrow \quad \exists  y(t)\quad /\quad y'(t)=1,01y(t)-y^2(t)&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;math&amp;gt;\frac{\partial }{\partial y} f(t,y)&amp;lt;/math&amp;gt; es continua en &amp;lt;math&amp;gt; \mathbb{B}\cap \mathbb{D}\quad \Rightarrow \quad \exists !  y(t)\quad /\quad y'(t)=1,01y(t)-y^2(t)&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Con lo que queda demostrado que el (PVI) tiene solución y además esta es única.&lt;br /&gt;
&lt;br /&gt;
== Resolución numérica del problema de valor inicial ==&lt;br /&gt;
&lt;br /&gt;
En este apartado resolveremos el problema de valor inicial planteado anteriormente con tres métodos de integración numérica: el método de Euler, el método del Trapecio y el método de Runge-Kutta de orden 4.&lt;br /&gt;
&lt;br /&gt;
=== Método de Euler ===&lt;br /&gt;
&lt;br /&gt;
El método de Euler, llamado así en honor al matemático Leonhard Euler, es un procedimiento de integración numérica. Su expresión matemática es: &lt;br /&gt;
&amp;lt;math&amp;gt;  PVI =   &lt;br /&gt;
\begin{cases}&lt;br /&gt;
 y_0 \\&lt;br /&gt;
 y_{n+1}  = y_n + h*f(t_n,y_n) \\&lt;br /&gt;
\end{cases}\quad&lt;br /&gt;
   &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
A continuación emplearemos esta expresión en un programa de Matlab para obtener una aproximación de las soluciones. El código de dicho programa es el siguiente.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Eulergrafica.png|400px|miniaturadeimagen|derecha|Representación gráfica y(t). Método de Euler]]&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
%Método de Euler&lt;br /&gt;
clc&lt;br /&gt;
&lt;br /&gt;
%Datos iniciales&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=4;&lt;br /&gt;
y0=0.01;&lt;br /&gt;
h=0.1;&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=10;&lt;br /&gt;
&lt;br /&gt;
%Cálculo de subintervalos&lt;br /&gt;
N=round((tN-t0)/h);&lt;br /&gt;
t=t0:h:tN;&lt;br /&gt;
&lt;br /&gt;
%Creamos el vector donde vamos a guardar las soluciones&lt;br /&gt;
y=zeros(1,N+1);&lt;br /&gt;
y(1)=y0;&lt;br /&gt;
&lt;br /&gt;
%Euler&lt;br /&gt;
for i=1:N;&lt;br /&gt;
    y(i+1)=y(i)+h*(1.01*y(i)-(y(i)).^2);&lt;br /&gt;
end&lt;br /&gt;
%Tabla de Resultados&lt;br /&gt;
[t',y']&lt;br /&gt;
x=1.01-y;&lt;br /&gt;
hold on &lt;br /&gt;
plot(t,y,'r')&lt;br /&gt;
plot(t,x,'b')&lt;br /&gt;
hold off&lt;br /&gt;
legend('Sustancia B: y(t)','Sustancia A: x(t)','Location','best');&lt;br /&gt;
xlabel('Tiempo (s)')&lt;br /&gt;
ylabel('Concentración (mol/l)')&lt;br /&gt;
grid on&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
=== Método del trapecio ===&lt;br /&gt;
&lt;br /&gt;
Vamos a aplicar un método de integración numérica conocido como el Método del Trapecio por aproximar el valor de la integral al del área de un trapecio. Su expresión matemática es:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;  PVI =   &lt;br /&gt;
\begin{cases}&lt;br /&gt;
 y_0 \\&lt;br /&gt;
 y_{n+1}  =  y_n + \frac{h}{2}*(f(t_n,y_n)+f(t_{n+1},y_{n+1}))\\&lt;br /&gt;
\end{cases}\quad&lt;br /&gt;
   &amp;lt;/math&amp;gt;&lt;br /&gt;
   &lt;br /&gt;
Introducimos esta expresión en el código y obtenemos la gráfica de la solución.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Trapeciografica.png|400px|miniaturadeimagen|derecha|Representación gráfica y(t). Método del Trapecio]]&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
%Método del Trapecio&lt;br /&gt;
clc&lt;br /&gt;
&lt;br /&gt;
%Datos iniciales&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=4;&lt;br /&gt;
y0=0.01;&lt;br /&gt;
h=0.1;&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=10;&lt;br /&gt;
&lt;br /&gt;
%Cálculo de subintervalos&lt;br /&gt;
N=round((tN-t0)/h);&lt;br /&gt;
t=t0:h:tN;&lt;br /&gt;
&lt;br /&gt;
%Creamos el vector donde vamos a guardar las soluciones&lt;br /&gt;
y=zeros(1,N+1);&lt;br /&gt;
y(1)=y0;&lt;br /&gt;
&lt;br /&gt;
for i=1:N&lt;br /&gt;
y(i+1)=(((1-(h/2)*1.01)-sqrt(((1-(h/2)*1.01)^2)+4*(h/2)*((1+(h/2)*1.01)*y(i)-(h/2)*(y(i))^2)))/-h);&lt;br /&gt;
end&lt;br /&gt;
%Sacamos la tabla de resultados&lt;br /&gt;
[t',y']&lt;br /&gt;
x=1.01-y;&lt;br /&gt;
%Gráfico&lt;br /&gt;
hold on&lt;br /&gt;
plot(t,y,'r')&lt;br /&gt;
plot(t,x,'b')&lt;br /&gt;
legend('Sustancia B: y(t)','Sustancia A: x(t)','Location','best');&lt;br /&gt;
xlabel('Tiempo (s)')&lt;br /&gt;
ylabel('Concentración (mol/l)')&lt;br /&gt;
grid on&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
=== Método de Runge-Kutta ===&lt;br /&gt;
&lt;br /&gt;
El método de resolución numérica de Runge-Kutta, involucra un gran número de parámetros. Para simplificar la implementación de este método en Matlab, utilizaremos la función ''inline'', con la que declararemos previamente la función algebraica necesaria para el cálculo de los parámetros &amp;lt;math&amp;gt;k_i&amp;lt;/math&amp;gt;, ahorrándonos tener que escribir innumerables veces la correspondiente expresión matemática.&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
A continuación, detallamos la función &amp;lt;math&amp;gt;f(y)&amp;lt;/math&amp;gt; de la que dependerán los valores de los parámetros &amp;lt;math&amp;gt;k_i&amp;lt;/math&amp;gt;:&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;f(y)=y'(t)=1.01y(t)-y(t)^2&lt;br /&gt;
&lt;br /&gt;
\quad \Rightarrow \quad&lt;br /&gt;
&lt;br /&gt;
\begin{cases}&lt;br /&gt;
 k_1 &amp;amp; =  f(y_i) \\&lt;br /&gt;
 k_2 &amp;amp; =  f(y_i + {1 \over 2}k_1h) \\&lt;br /&gt;
 k_3 &amp;amp; =  f(y_i + \frac{1}{2}k_2h) \\&lt;br /&gt;
 k_4 &amp;amp; =  f(y_i + k_3h) \\&lt;br /&gt;
\end{cases}\quad [h=0.1]&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Entonces el método RK4 para este problema está dado por la siguiente ecuación:&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;y_{i+1} = y_{i} + {1 \over 6}h(k_1+2k_2+2k_3+k_4)&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Mediante el siguiente programa en Matlab calculamos numéricamente la solución y la representamos en un gráfico:&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Archivo:RK4II.png|400px|miniaturadeimagen|derecha|Representación gráfica y(t). Método Runge-Kutta]]&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
%Método de Runge-Kutta&lt;br /&gt;
clc&lt;br /&gt;
&lt;br /&gt;
%Función f(t)=y'(t)&lt;br /&gt;
fy=inline('1.01*y-y^2','y');&lt;br /&gt;
&lt;br /&gt;
%Datos del problema&lt;br /&gt;
y0=0.01;&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=10;&lt;br /&gt;
h=0.1;&lt;br /&gt;
&lt;br /&gt;
%Variable independiente (t)&lt;br /&gt;
t=t0:h:tN;&lt;br /&gt;
&lt;br /&gt;
%Variable dependiente (y)&lt;br /&gt;
y=zeros(1,length(t));&lt;br /&gt;
y(1)=y0;&lt;br /&gt;
&lt;br /&gt;
for i=1:length(t)-1&lt;br /&gt;
    k1=fy(y(i));&lt;br /&gt;
    k2=fy(y(i)+k1/2*h);&lt;br /&gt;
    k3=fy(y(i)+k2/2*h);&lt;br /&gt;
    k4=fy(y(i)+k3*h);&lt;br /&gt;
    y(i+1)=y(i)+h/6*(k1+2*k2+2*k3+k4);&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
%Variable dependiente (x)&lt;br /&gt;
x=1.01-y;&lt;br /&gt;
&lt;br /&gt;
%Representación gráfica&lt;br /&gt;
hold on&lt;br /&gt;
plot(t,x,'b')&lt;br /&gt;
plot(t,y,'r')&lt;br /&gt;
legend('Sustancia A: x(t)','Sustancia B: y(t)')&lt;br /&gt;
xlabel('Tiempo (s)')&lt;br /&gt;
ylabel('Concentración (mol/l)')&lt;br /&gt;
grid on&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
=== Comparación de métodos===&lt;br /&gt;
&lt;br /&gt;
Podemos observar fácilmente que las gráficas obtenidas con los diferentes métodos son iguales a primera vista. Sin embargo, superponiéndolas queda patente que no son exactamente iguales debido a que los métodos no poseen la misma precisión y , al operar todos con la misma longitud de paso, unos aproximan la solución exacta mejor que otros. Así se observa en estas imágenes:&lt;br /&gt;
&lt;br /&gt;
[[Archivo:comparativa1.jpg|400px|miniaturadeimagen|izquierda|Comparación de métodos]]&lt;br /&gt;
[[Archivo:comparativa2.jpg|400px|miniaturadeimagen|derecha|Comparación de métodos]]&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
Como podemos comprobar en las imágenes, el método de Euler es menos preciso que el del trapecio o el de Runge-Kutta.&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Resolución en forma de sistema de ecuaciones ==&lt;br /&gt;
&lt;br /&gt;
A continuación vamos a plantear el problema de valor inicial con un sistema no lineal de dos ecuaciones equivalente al problema resuelto anteriormente.&lt;br /&gt;
&lt;br /&gt;
Estas ecuaciones serán:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;(PVI)&lt;br /&gt;
\begin{cases}&lt;br /&gt;
    y'(t)=k_1 x(t)y(t) \\&lt;br /&gt;
    x'(t)=-k_1 x(t)y(t) \\&lt;br /&gt;
    \\&lt;br /&gt;
    x(0)=1 \\&lt;br /&gt;
    y(0) = 0.01&lt;br /&gt;
\end{cases}&lt;br /&gt;
\quad t\in[0,10]&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Resolveremos el problema por el método de Euler y por el método de Runge-Kutta, plasmando las soluciones en gráficos.&lt;br /&gt;
&lt;br /&gt;
=== Método de Euler ===&lt;br /&gt;
&lt;br /&gt;
En este caso aplicaremos en el siguiente código la expresión para EDO a cada una de las ecuaciones que conforma el sistema, obteniendo la correspondiente gráfica.&lt;br /&gt;
 &lt;br /&gt;
[[Archivo:SistEuler.png|400px|miniaturadeimagen|derecha|Representación gráfica de las concentraciones de A y B. Resolución del sistema por Euler]]&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
&lt;br /&gt;
%Resolución del sistema por el método de Euler&lt;br /&gt;
&lt;br /&gt;
clear all&lt;br /&gt;
&lt;br /&gt;
%Definimos el vector de la variable independiente, el número de&lt;br /&gt;
%subintervalos y la longitud de paso&lt;br /&gt;
&lt;br /&gt;
t0 = 0;&lt;br /&gt;
tN = 10;&lt;br /&gt;
h = 0.1;&lt;br /&gt;
t = t0:h:tN&lt;br /&gt;
N = (tN-t0)/h;&lt;br /&gt;
&lt;br /&gt;
%Definimos los vectores de las variables dependientes&lt;br /&gt;
&lt;br /&gt;
x = zeros(1, N+1);&lt;br /&gt;
y = zeros(1, N+1);&lt;br /&gt;
&lt;br /&gt;
x(1) = 1;&lt;br /&gt;
y(1) = 0.01;&lt;br /&gt;
&lt;br /&gt;
for i = 1:N&lt;br /&gt;
    &lt;br /&gt;
    x(i+1)=x(i)+h*(-x(i).*y(i));&lt;br /&gt;
    y(i+1)=y(i)+h*(y(i).*x(i));&lt;br /&gt;
    &lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
%Representamos gráficamente las soluciones&lt;br /&gt;
&lt;br /&gt;
hold on&lt;br /&gt;
&lt;br /&gt;
plot(t,x,'b');&lt;br /&gt;
plot(t,y,'r');&lt;br /&gt;
grid on&lt;br /&gt;
&lt;br /&gt;
legend('Sustancia A: x(t)','Sustancia B: y(t)')&lt;br /&gt;
xlabel('Tiempo (s)')&lt;br /&gt;
ylabel('Concentración (mol/l)')&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
hold off&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
}}&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Método de Runge-Kutta===&lt;br /&gt;
&lt;br /&gt;
El método de resolución numérica de Runge-Kutta, involucra un gran número de parámetros. Para simplificar la implementación de este método en Matlab, el sistema se tratará como una matriz &amp;lt;math&amp;gt;z&amp;lt;/math&amp;gt;. Además, utilizaremos la función ''inline'', con la que declararemos previamente la función algebraica necesaria para el cálculo de los parámetros &amp;lt;math&amp;gt;k_i&amp;lt;/math&amp;gt;, ahorrándonos tener que escribir innumerables veces la correspondiente expresión matemática.&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Primero, expresamos el sistema en forma matricial:&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;(PVI)\begin{cases}&lt;br /&gt;
    x'(t)=-k_1 x(t)y(t) \\&lt;br /&gt;
    y'(t)=k_1 x(t)y(t) \\&lt;br /&gt;
    \\&lt;br /&gt;
    x(0)=1 \\&lt;br /&gt;
    y(0) = 0.01&lt;br /&gt;
\end{cases}\quad t\in[0,10]&lt;br /&gt;
&lt;br /&gt;
\quad \Rightarrow \quad k_1=1\quad \Rightarrow \quad&lt;br /&gt;
&lt;br /&gt;
(PVI)\begin{cases}\vec{z}'(t)=&lt;br /&gt;
   \begin{bmatrix}&lt;br /&gt;
      x'(t) \\&lt;br /&gt;
      y'(t) \\&lt;br /&gt;
   \end{bmatrix}&lt;br /&gt;
=&lt;br /&gt;
      \begin{bmatrix}&lt;br /&gt;
      -x(t)y(t) \\&lt;br /&gt;
      x(t)y(t) \\&lt;br /&gt;
   \end{bmatrix}&lt;br /&gt;
&lt;br /&gt;
 \\ \\ \vec{z}(0)=&lt;br /&gt;
   \begin{bmatrix}&lt;br /&gt;
      x(0) \\&lt;br /&gt;
      y(0) \\&lt;br /&gt;
   \end{bmatrix}&lt;br /&gt;
=&lt;br /&gt;
      \begin{bmatrix}&lt;br /&gt;
      1 \\&lt;br /&gt;
      0.01 \\&lt;br /&gt;
   \end{bmatrix}&lt;br /&gt;
\end{cases}\quad t\in[0,10]&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
A continuación, detallamos la función &amp;lt;math&amp;gt;\vec{F}&amp;lt;/math&amp;gt; de la que dependerán los valores de los parámetros &amp;lt;math&amp;gt;k_i&amp;lt;/math&amp;gt;:&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;\vec{F}(x,y)=\vec{F}(\vec{z})=&lt;br /&gt;
&lt;br /&gt;
\begin{bmatrix}&lt;br /&gt;
    f(\vec{z}) \\&lt;br /&gt;
    g(\vec{z}) \\&lt;br /&gt;
\end{bmatrix}=&lt;br /&gt;
&lt;br /&gt;
\begin{bmatrix}&lt;br /&gt;
    x'(t) \\&lt;br /&gt;
    y'(t) \\&lt;br /&gt;
\end{bmatrix}=&lt;br /&gt;
&lt;br /&gt;
\vec{z}'(t)=&lt;br /&gt;
&lt;br /&gt;
\begin{bmatrix}&lt;br /&gt;
    -x(t)y(t) \\&lt;br /&gt;
    x(t)y(t) \\&lt;br /&gt;
\end{bmatrix}&lt;br /&gt;
\quad \Rightarrow \quad&lt;br /&gt;
&lt;br /&gt;
\begin{cases}&lt;br /&gt;
 [\vec{k_1}] &amp;amp; =  F(\vec{z}_i) \\&lt;br /&gt;
 [\vec{k_2}] &amp;amp; =  F(\vec{z}_i + {1 \over 2}k_1h) \\&lt;br /&gt;
 [\vec{k_3}] &amp;amp; =  F(\vec{z}_i + \frac{1}{2}k_2h) \\&lt;br /&gt;
 [\vec{k_4}] &amp;amp; =  F(\vec{z}_i + k_3h) \\&lt;br /&gt;
\end{cases}\quad [h=0.1]&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Entonces el método RK4 para este problema está dado por la siguiente ecuación:&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;\vec{z}_{i+1} = \vec{z}_{i} + {1 \over 6}h(\vec{k_1}+2\vec{k_2}+2\vec{k_3}+\vec{k_4})&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Mediante el siguiente programa en Matlab calculamos numéricamente la solución y la representamos en un gráfico:&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Archivo:sistema_RK4.png|400px|miniaturadeimagen|derecha|Representación gráfica de las concentraciones de A y B. Resolución del sistema por Runge-Kutta]]&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
%Método de Runge-Kutta&lt;br /&gt;
clc&lt;br /&gt;
&lt;br /&gt;
%Función F=[x'(t); y'(t)]&lt;br /&gt;
F=inline('[-z(1)*z(2);z(1)*z(2)]','z');&lt;br /&gt;
&lt;br /&gt;
%Datos del problema &lt;br /&gt;
x0=1;&lt;br /&gt;
y0=0.01;&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=10;&lt;br /&gt;
h=0.1;&lt;br /&gt;
&lt;br /&gt;
%Vector de variable independiente (t)&lt;br /&gt;
t=t0:h:tN;&lt;br /&gt;
&lt;br /&gt;
%Matriz de variables dependientes z=[x;y]&lt;br /&gt;
z=zeros(2,length(t));&lt;br /&gt;
z(:,1)=[x0;y0];&lt;br /&gt;
&lt;br /&gt;
for i = 1:length(t)-1&lt;br /&gt;
    k1=F(z(:,i));&lt;br /&gt;
    k2=F(z(:,i)+k1.*h/2);&lt;br /&gt;
    k3=F(z(:,i)+k2.*h/2);&lt;br /&gt;
    k4=F(z(:,i)+k3.*h);&lt;br /&gt;
    z(:,i+1)=z(:,i)+h/6.*(k1+2.*k2+2.*k3+k4);&lt;br /&gt;
end&lt;br /&gt;
 &lt;br /&gt;
%Representación gráfica&lt;br /&gt;
hold on&lt;br /&gt;
plot(t,z(1,:))&lt;br /&gt;
plot(t,z(2,:),'r')&lt;br /&gt;
legend('Sustancia A: x(t)','Sustancia B: y(t)')&lt;br /&gt;
xlabel('Tiempo (s)')&lt;br /&gt;
ylabel('Concentración (mol/l)')&lt;br /&gt;
grid on&lt;br /&gt;
%hold off&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
== Interpretación de las gráficas ==&lt;br /&gt;
&lt;br /&gt;
Como cabía esperar, obtenemos la misma solución resolviendo el problema como sistema o como EDO. Podemos observar por los resultados obtenidos que la velocidad de aparición de B es igual a la velocidad de desaparición de A (como dicta el principio de conservación de la masa), que A acaba desapareciendo prácticamente por completo y que la concentración de B termina por estabilizarse alrededor de 1 mol/l. Ambos compuestos alcanzan los extremos de sus concentraciones en el mismo instante de tiempo&lt;br /&gt;
&lt;br /&gt;
También cabe destacar que cuando el tiempo transcurrido alcanza 4,5 segundos las concentraciones de ambos compuestos son las mismas.&lt;br /&gt;
&lt;br /&gt;
= Reacción II =&lt;br /&gt;
&lt;br /&gt;
En este apartado vamos a estudiar la reacción propuesta por Alfred J. Lotka en 1920, que es la siguiente:&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt; A + X →_{k1} 2X;&amp;lt;/math&amp;gt;     :&amp;lt;math&amp;gt; X + Y →_{k2} 2Y;&amp;lt;/math&amp;gt;     :&amp;lt;math&amp;gt;Y →_{k3} 2B  &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Como se puede observar, se trata de una reacción compleja integrada por 3 reacciones simples (las dos primeras autocatalíticas) en las que intervienen un total de 4 compuestos, A, B, X e Y. Siguiendo el desarrollo de la reacción, es lógico suponer que A se agotará al comienzo de la reacción, que los máximos de concentración de X e Y se darán en los estados intermedios y que al final el compuesto B será el único restante, siendo el producto final de la reacción.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Interpretación del problema y deducción de las ecuaciones diferenciales ==&lt;br /&gt;
&lt;br /&gt;
Para averiguar cómo evolucionan las concentraciones de los cuatro compuestos durante el desarrollo de la reacción necesitaremos obtener cuatro ecuaciones diferenciales. Para ello nos volveremos a basar en los principios físicos que ya empleamos en la anterior reacción. Definimos A(t), x(t), y(t), y B(t) (A, x, y, B; para ahorrar notación) a las concentraciones de A, X, Y, y B, respectivamente. &lt;br /&gt;
&lt;br /&gt;
En primer lugar aplicamos el Principio de Conservación de la masa, que establece que la suma de las concentraciones de los compuestos es constante (no desaparece masa en el proceso), lo que derivando nos indica que:&lt;br /&gt;
&lt;br /&gt;
: &amp;lt;math&amp;gt; A' + x' + y' + B' = 0 \quad\quad(I)&amp;lt;/math&amp;gt;       &lt;br /&gt;
&lt;br /&gt;
A continuación aplicaremos la Ley de Acción de Masas (velocidad de reacción proporcional al producto de la concentración de los reactivos).&lt;br /&gt;
&lt;br /&gt;
Aplicando esta ley a la última reacción simple obtenemos que: &lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;B'=k_3y \quad\quad(II)&amp;lt;/math&amp;gt;        &lt;br /&gt;
&lt;br /&gt;
En el caso de las concentraciones de X e Y las expresiones resultantes son algo más complicadas ya que estos dos compuestos actúan como reactivos y productos en más de una reacción simple, por lo que la variación de sus concentraciones será la suma de las variaciones de las reacciones en las que aparezcan:&lt;br /&gt;
&lt;br /&gt;
: &amp;lt;math&amp;gt; x' = x'_{1} + x'_{2} → x' = k_{1}Ax - k{2}xy \quad\quad(III)&amp;lt;/math&amp;gt;        &lt;br /&gt;
: &amp;lt;math&amp;gt; y' = y'_{2} + y'_{3} → y' = k_{2}xy − k_3{y} \quad\quad(IV)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Por último sustituimos (II), (III) y (IV) en (I) obteniendo: &lt;br /&gt;
&lt;br /&gt;
: &amp;lt;math&amp;gt; A' + k_{1}Ax - k{2}xy + k_{2}xy − k_3{y}+ k_3y= 0 : &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
De donde obtenemos que:&lt;br /&gt;
&lt;br /&gt;
: &amp;lt;math&amp;gt; A' = -k_{1}Ax &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Ahora que ya tenemos las variaciones de concentración de los compuestos en función de las concentraciones podemos aplicar métodos numéricos que nos lleven a una solución aproximada.&lt;br /&gt;
&lt;br /&gt;
== Resolución numérica del sistema de ecuaciones ==&lt;br /&gt;
&lt;br /&gt;
Una vez obtenidas las ecuaciones y conociendo las condiciones iniciales y los valores de las constantes podemos plantear el problema de valor inicial para luego resolverlo.&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;(PVI)&lt;br /&gt;
\begin{cases}&lt;br /&gt;
    A' = -k_{1}Ax\\&lt;br /&gt;
    x' = k_{1}Ax - k{2}xy\\&lt;br /&gt;
    y' = k_{2}xy − k_3{y}\\&lt;br /&gt;
    B'=k_3y \\&lt;br /&gt;
\\&lt;br /&gt;
    A(0)=5  \\&lt;br /&gt;
    x(0)=5*10^{-4} \\&lt;br /&gt;
    y(0)=10^{-5}\\&lt;br /&gt;
    B(0)=0 \\&lt;br /&gt;
\end{cases}&lt;br /&gt;
\quad t\in[0,200]&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Siendo &amp;lt;math&amp;gt; k_{1}=K_{2}=2k_{3}=0.1 &amp;lt;/math&amp;gt; y las unidades de la concentración mol/l.&lt;br /&gt;
&lt;br /&gt;
=== Método de Euler ===&lt;br /&gt;
&lt;br /&gt;
Aplicamos el método de Euler de forma análoga a como lo hicimos en [[Reacciones_con_autocatálisis._Grupo_D12#Método_de_Euler_2|apartado 2.5.1]]&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Euler lotka0.01.png|400px|miniaturadeimagen|derecha|Representación gráfica de las concentraciones de A, B, X, e Y a lo largo del tiempo. Resoluciónd delsistema por el método de Euler con longitud de paso h=0.01]] &lt;br /&gt;
[[Archivo:Euler lotka0.001.png|400px|miniaturadeimagen|derecha|Representación gráfica de las concentraciones de A, B, X, e Y a lo largo del tiempo. Resoluciónd delsistema por el método de Euler con longitud de paso h=0.001]]&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
&lt;br /&gt;
%Resolución del sistema de la reacción de Lotka por el método de Euler&lt;br /&gt;
&lt;br /&gt;
clear all&lt;br /&gt;
&lt;br /&gt;
%Definimos la variable independiente y establecemos los datos del problema&lt;br /&gt;
%de valor inicial. Para la longitud de paso h introducimos en primer lugar&lt;br /&gt;
%0.01 y luego 0.001&lt;br /&gt;
&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=200;&lt;br /&gt;
h= input('Introduzca una longitud de paso ');&lt;br /&gt;
t = t0:h:tN;&lt;br /&gt;
N=(tN-t0)/h;&lt;br /&gt;
k1 = 0.1;&lt;br /&gt;
k2 = 0.1;&lt;br /&gt;
k3 = 0.05;&lt;br /&gt;
A0 = 5;&lt;br /&gt;
B0 = 0;&lt;br /&gt;
X0 = 5*10^(-4);&lt;br /&gt;
Y0 = 10^(-5);&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
%Definimos las variables dependientes.&lt;br /&gt;
&lt;br /&gt;
A = zeros(1, N-1);&lt;br /&gt;
B = A;&lt;br /&gt;
X = A;&lt;br /&gt;
Y = A;&lt;br /&gt;
&lt;br /&gt;
A(1) = A0;&lt;br /&gt;
B(1) = B0;&lt;br /&gt;
X(1) = X0;&lt;br /&gt;
Y(1) = Y0;&lt;br /&gt;
&lt;br /&gt;
for i = 1:N&lt;br /&gt;
    &lt;br /&gt;
    X(i+1) = X(i) + h*(k1*A(i)*X(i)-k2*Y(i)*X(i));&lt;br /&gt;
    Y(i+1)=Y(i)+h.*(k2.*X(i).*Y(i)-k3.*Y(i));&lt;br /&gt;
    B(i+1) = B(i) + h*(k3*Y(i));&lt;br /&gt;
    A(i+1) = A(i) + h*(-k1*A(i)*X(i));&lt;br /&gt;
   &lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
%Representamos gráficamente la solución&lt;br /&gt;
&lt;br /&gt;
hold on&lt;br /&gt;
&lt;br /&gt;
plot (t,A,'b')&lt;br /&gt;
plot(t, X, 'r')&lt;br /&gt;
plot(t,Y, 'g')&lt;br /&gt;
plot(t, B, 'm')&lt;br /&gt;
legend('Sustancia A: A(t)','Sustancia X: x(t)','Sustancia Y: y(t)','Sustancia B: B(t)','Location','Best')&lt;br /&gt;
xlabel('Tiempo (s)')&lt;br /&gt;
ylabel('Concentración (mol/l)')&lt;br /&gt;
grid on&lt;br /&gt;
&lt;br /&gt;
hold off&lt;br /&gt;
&lt;br /&gt;
}}&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
A continuación tendremos que comprobar si el método es estable. &amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
Un método es estable cuando el error local es pequeño y además este error no se amplifica a lo largo del tiempo. Para calificar la estabilidad del método de Euler resolveremos el sistema anterior con este método, con pasos &amp;quot;h=0.01&amp;quot; y &amp;quot;h=0.001&amp;quot;, y lo compararemos con la resolución del sistema con el método de Heun, que se asemeja más a la solución exacta.&amp;lt;br /&amp;gt;&lt;br /&gt;
En la comparación representaremos en azul el método de Heun y en rojo el método de Euler.&amp;lt;br /&amp;gt;&lt;br /&gt;
Para &amp;quot;h=0.01&amp;quot; tenemos lo siguiente:&lt;br /&gt;
[[Archivo:1estabilidad123.jpg|400px|miniaturadeimagen|izquierda|Comparación entre Método de Heun (Azul) con el Método de Euler con paso h=0.01 (Rojo)]] &lt;br /&gt;
[[Archivo:1estabilidad321.jpg|400px|miniaturadeimagen|derecha|Comparación entre Método de Heun (Azul) con el Método de Euler con paso h=0.01 (Rojo)]] &lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
Para &amp;quot;h=0.001&amp;quot; tenemos lo siguiente:&lt;br /&gt;
[[Archivo:2estabilidad123.jpg|400px|miniaturadeimagen|izquierda|Comparación entre Método de Heun (Azul) con el Método de Euler con paso h=0.001 (Rojo)]] &lt;br /&gt;
[[Archivo:2estabilidad321.jpg|400px|miniaturadeimagen|derecha|Comparación entre Método de Heun (Azul) con el Método de Euler con paso h=0.001 (Rojo)]]&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
Como podemos ver en las imágenes de los dos procesos las gráficas se superponen y no se aprecian diferencias hasta que no ampliamos la imagen. Y esto sucede en todo momento con lo que podemos garantizar que en este caso el método de Euler es estable para los pasos que hemos usado.&lt;br /&gt;
&lt;br /&gt;
=== Método de Heun ===&lt;br /&gt;
&lt;br /&gt;
Si bien el método de resolución numérica de Heun no involucra un número de parámetros tan notable como el método de Runge-Kutta, en este caso tenemos un sistema de 4 ecuaciones diferenciales, por lo que, en aras de simplificar, utilizaremos el mismo criterio que en el [[Reacciones_con_autocatálisis._Grupo_D12#Método_de_Runge-Kutta_2|apartado 2.5.2]].: El sistema se tratará como una matriz &amp;lt;math&amp;gt;z&amp;lt;/math&amp;gt;, y para la obtención de los parámetros &amp;lt;math&amp;gt;k_i&amp;lt;/math&amp;gt; utilizaremos la función ''inline'', con la que declararemos previamente las expresiones necesarias para el cálculo de los parámetros &amp;lt;math&amp;gt;k_i&amp;lt;/math&amp;gt;.&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Primero, expresamos el sistema en forma matricial:&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;(PVI)\begin{cases}&lt;br /&gt;
A'(t)=-k_1 A(t)x(t) \\&lt;br /&gt;
x'(t)=k_1 A(t)x(t)-k_2 x(t)y(t) \\&lt;br /&gt;
y'(t)=k_2 x(t)y(t)-k_3 y(t) \\&lt;br /&gt;
B'(t)=k_3 x(t)y(t) \\ \\&lt;br /&gt;
A(0)=5 \\&lt;br /&gt;
x(0)=5·10^{-4} \\&lt;br /&gt;
y(0)=10^{-5} \\&lt;br /&gt;
B(0) = 0&lt;br /&gt;
\end{cases}\quad t\in[0,200]&lt;br /&gt;
&lt;br /&gt;
\quad \Rightarrow \quad&lt;br /&gt;
&lt;br /&gt;
\begin{cases}&lt;br /&gt;
k_1=0.1 \\&lt;br /&gt;
k_2=0.1 \\&lt;br /&gt;
k_3=0.05 \\&lt;br /&gt;
&lt;br /&gt;
\end{cases}&lt;br /&gt;
&lt;br /&gt;
\quad \Rightarrow \quad&lt;br /&gt;
&lt;br /&gt;
(PVI)\begin{cases}\vec{z}'(t)=&lt;br /&gt;
   \begin{bmatrix}&lt;br /&gt;
      A'(t) \\&lt;br /&gt;
      x'(t) \\&lt;br /&gt;
      y'(t) \\&lt;br /&gt;
      B'(t) \\&lt;br /&gt;
   \end{bmatrix}&lt;br /&gt;
=&lt;br /&gt;
      \begin{bmatrix}&lt;br /&gt;
      -0.1 A(t)x(t) \\&lt;br /&gt;
      0.1 A(t)x(t)-0.1 x(t)y(t) \\&lt;br /&gt;
      0.1 x(t)y(t)-0.05 y(t) \\&lt;br /&gt;
      0.05 y(t)x(t)\\&lt;br /&gt;
   \end{bmatrix}&lt;br /&gt;
&lt;br /&gt;
 \\ \\ \vec{z}(0)=&lt;br /&gt;
   \begin{bmatrix}&lt;br /&gt;
      A(0) \\&lt;br /&gt;
      x(0) \\&lt;br /&gt;
      y(0) \\&lt;br /&gt;
      B(0) \\&lt;br /&gt;
   \end{bmatrix}&lt;br /&gt;
=&lt;br /&gt;
      \begin{bmatrix}&lt;br /&gt;
      5 \\&lt;br /&gt;
      5·10^{-4} \\&lt;br /&gt;
      10^{-5} \\&lt;br /&gt;
      0&lt;br /&gt;
   \end{bmatrix}&lt;br /&gt;
\end{cases}\quad t\in[0,200]&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
A continuación, detallamos la función &amp;lt;math&amp;gt;\vec{F}&amp;lt;/math&amp;gt; de la que dependerán los valores de los parámetros &amp;lt;math&amp;gt;k_i&amp;lt;/math&amp;gt;:&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;\vec{F}(A,x,y,B)=\vec{F}(\vec{z})=&lt;br /&gt;
\begin{bmatrix}&lt;br /&gt;
    f(\vec{z}) \\ &lt;br /&gt;
    g(\vec{z}) \\ &lt;br /&gt;
    h(\vec{z}) \\ &lt;br /&gt;
    i(\vec{z}) \\ &lt;br /&gt;
\end{bmatrix}=&lt;br /&gt;
\begin{bmatrix}&lt;br /&gt;
    A'(t) \\&lt;br /&gt;
    x'(t) \\&lt;br /&gt;
    y'(t) \\&lt;br /&gt;
    B'(t) \\&lt;br /&gt;
\end{bmatrix}=&lt;br /&gt;
\vec{z}'(t)=&lt;br /&gt;
      \begin{bmatrix}&lt;br /&gt;
      -0.1 A(t)x(t) \\&lt;br /&gt;
      0.1 A(t)x(t)-0.1 x(t)y(t) \\&lt;br /&gt;
      0.1 x(t)y(t)-0.05 y(t) \\&lt;br /&gt;
      0.05 y(t)x(t)\\&lt;br /&gt;
   \end{bmatrix}&lt;br /&gt;
&lt;br /&gt;
\quad \Rightarrow \quad &lt;br /&gt;
&lt;br /&gt;
\begin{cases}&lt;br /&gt;
 [\vec{k_1}] &amp;amp; =  F(\vec{z}_i) \\&lt;br /&gt;
 [\vec{k_2}] &amp;amp; =  F(\vec{z}_i + {1 \over 2}k_1h) \\&lt;br /&gt;
\end{cases}\quad [h=0.01]&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Entonces el método de Heun para este problema está dado por la siguiente ecuación:&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;\vec{z}_{i+1} = \vec{z}_{i} + {1 \over 2}h(\vec{k_1}+\vec{k_2})&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Mediante el siguiente programa en Matlab calculamos numéricamente la solución y la representamos en un gráfico:&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Archivo:AXYBRK4.png|400px|miniaturadeimagen|derecha|Representación gráfica de las concentraciones de A,X,Y y B. Resolución del sistema por Heun]]&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
%Método de Heun&lt;br /&gt;
clc&lt;br /&gt;
&lt;br /&gt;
%Función F=[A'(t);x'(t); y'(t);B'(t)]&lt;br /&gt;
F=inline('0.1.*[-z(1)*z(2);z(1)*z(2)-z(2)*z(3);z(2)*z(3)-z(3)/2;z(3)/2]','z');&lt;br /&gt;
&lt;br /&gt;
%Datos del problema&lt;br /&gt;
A0=5;&lt;br /&gt;
x0=5*10^-4;&lt;br /&gt;
y0=10^(-5);&lt;br /&gt;
B0=0;&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=200;&lt;br /&gt;
h=0.1;&lt;br /&gt;
&lt;br /&gt;
%Vector de variable independiente (t)&lt;br /&gt;
t=t0:h:tN;&lt;br /&gt;
&lt;br /&gt;
%Matriz de variables dependientes z=[A;x;y;B]&lt;br /&gt;
z=zeros(4,length(t));&lt;br /&gt;
z(:,1)=[A0;x0;y0;B0];&lt;br /&gt;
&lt;br /&gt;
for i = 1:length(t)-1&lt;br /&gt;
    k1=F(z(:,i));&lt;br /&gt;
    k2=F(z(:,i)+k1.*h/2);&lt;br /&gt;
    z(:,i+1)=z(:,i)+h/2.*(k1+k2);&lt;br /&gt;
end&lt;br /&gt;
 &lt;br /&gt;
%Representación gráfica&lt;br /&gt;
hold on&lt;br /&gt;
plot(t,z(1,:),'b')&lt;br /&gt;
plot(t,z(2,:),'r')&lt;br /&gt;
plot(t,z(3,:),'g')&lt;br /&gt;
plot(t,z(4,:),'m')&lt;br /&gt;
legend('Sustancia A: A(t)','Sustancia X: x(t)','Sustancia Y: y(t)','Sustancia B: B(t)','Location','Best')&lt;br /&gt;
xlabel('Tiempo (s)')&lt;br /&gt;
ylabel('Concentración (mol/l)')&lt;br /&gt;
grid on&lt;br /&gt;
hold off&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
== Interpretación de las gráficas == &lt;br /&gt;
 &lt;br /&gt;
El proceso comienza con el predominio absoluto del compuesto A en la concentración total, siendo la presencia de los otros tres compuestos despreciable. Durante los primeros segundos la situación apenas cambia, pero tras los diez primeros segundos la concentración de A cae bruscamente mientras que la concentración de X aumenta a la misma velocidad; antes de llegar a los veinte segundos transcurridos las concentraciones de ambos compuestos se igualan y otros quince segundos más tarde el compuesto A  prácticamente ha desaparecido y el X ha alcanzado su concentración máxima (5 mol/litro).&lt;br /&gt;
&lt;br /&gt;
Es entonces cuando concluye la primera reacción y comienzan las otras dos, al no haber más compuesto A que cree compuesto X. La velocidad de aparición de Y es inicialmente mayor que la de B, superando al poco tiempo en concentración a la sustancia X. Sin embargo, llega un momento en el que la concentración de X es tan baja que se ralentiza la creación de Y y pronto empieza a disminuir su concentración tras alcanzar un máximo en torno a los 56 segundos, perdiendo peso la segunda reacción en beneficio de la tercera.&lt;br /&gt;
&lt;br /&gt;
Tras los 60 segundos de reacción el compuesto X pasa a tener una concentración despreciable, por lo que la única reacción simple que se sigue desarrollando es la tercera, destruyéndose reactivo Y y creándose producto B. La concentración de Y va reduciéndose paulatinamente hasta que en torno a los 160 segundos de reacción alcanza niveles insignificantes mientras que la concentración de B alcanza su máximo de 5 mol/litro.&lt;br /&gt;
&lt;br /&gt;
Es interesante observar que en todo momento se cumple el Principio de Conservación de la masa: la suma en cualquier momento de las concentraciones de las sustancias es 5 mol /litro. Esto es fácilmente comprobable en los momentos en que las concentraciones de A, X y B alcanzan su máximo de 5 mol/litro y el resto de concentraciones son nulas o despreciables. &lt;br /&gt;
[[Categoría:Ecuaciones Diferenciales]]&lt;br /&gt;
[[Categoría:ED14/15]]&lt;br /&gt;
[[Categoría:Trabajos 2014-15]]&lt;/div&gt;</summary>
		<author><name>Javier Ruiz de Galarreta López</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Reacciones_con_autocat%C3%A1lisis._Grupo_D12&amp;diff=29237</id>
		<title>Reacciones con autocatálisis. Grupo D12</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Reacciones_con_autocat%C3%A1lisis._Grupo_D12&amp;diff=29237"/>
				<updated>2015-03-12T18:50:00Z</updated>
		
		<summary type="html">&lt;p&gt;Javier Ruiz de Galarreta López: /* Unicidad de la solución */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{ TrabajoED | Reacciones con autocatálisis. Grupo D12 | [[:Categoría:Ecuaciones Diferenciales|Ecuaciones Diferenciales]]|[[:Categoría:ED14/15|Curso 2014-15]] | Javier Ruiz de Galarreta López, Argimiro Martínez López, Eduardo Moyano García, Alberto Rodríguez Ruiz. }}&lt;br /&gt;
&lt;br /&gt;
= Introducción: objetivos y metodología =&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
El objetivo de este trabajo es estudiar las concentraciones de los reactivos y productos de una reacción química a lo largo de la evolución en el tiempo de dicha reacción. Para ello modelizaremos el proceso empleando ecuaciones diferenciales y teniendo en cuenta la Ley de Acción de Masas y el Principio de Conservación de la materia.&lt;br /&gt;
&lt;br /&gt;
Al ser las ecuaciones y sistemas que se nos presentan de difícil resolución analítica, utilizaremos el programa informático Matlab para resolverlos mediante métodos numéricos como el de Euler, el del Trapecio, el de Runge-Kutta y el de Heun. &lt;br /&gt;
&lt;br /&gt;
Plasmaremos las soluciones en gráficos que nos permitirán dar una interpretación físico química a los resultados.&lt;br /&gt;
&lt;br /&gt;
= Reacción I =&lt;br /&gt;
&lt;br /&gt;
En primer lugar consideramos una reacción química irreversible en una solución bien mezclada, que se desarrolla para un volumen y una temperatura constantes, y en la que uno de los componentes (B, en este caso), hace de efecto catalítico.&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt; A + B →_{k1} 2B  &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Para desarrollar nuestro análisis nos apoyaremos en dos leyes físico químicas:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''Ley de acción de masas''': Enunciada por Guldberg y Waage en 1864, establece, entre otras cosas, que  la velocidad de&lt;br /&gt;
reacción es proporcional al producto de las concentraciones de los reactivos.&lt;br /&gt;
&lt;br /&gt;
'''Principio de conservación de la masa''': Establece que en una reacción química ordinaria la masa permanece constante, siendo la masa consumida de los reactivos igual a la masa obtenida de los productos. Fue elaborada independientemente por Míjail Lomonósov en 1745 y Antoine Lavoisier en 1785.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Interpretación del problema y deducción de las ecuaciones diferenciales ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Para hallar las ecuaciones diferenciales que nos describan cómo se desarrolla la reacción en el tiempo nos basaremos en las dos leyes enunciadas anteriormente. En primer lugar, definimos nuestra variable independiente como el tiempo &amp;lt;math&amp;gt;t&amp;lt;/math&amp;gt; en segundos. Las dos variables dependientes serán las concentraciones de los compuestos A y B, que denominaremos &amp;lt;math&amp;gt;x(t)&amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt;y(t)&amp;lt;/math&amp;gt;, ambas expresadas en mol/l. &lt;br /&gt;
&lt;br /&gt;
El principio de conservación de la masa expone que la suma de las concentraciones de los reactivos y los productos es constante. Esto equivale, derivando la expresión &amp;lt;math&amp;gt;x(t)+y(t)=cte&amp;lt;/math&amp;gt;, a que  desaparece tanto reactivo como producto aparece, o lo que es lo mismo, que la velocidad de aparición del producto es igual a la velocidad de desaparición (velocidad de aparición negativa) del reactivo:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;x'(t)=-y'(t)&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
La otra ecuación que necesitamos la obtenemos directamente de aplicar la Ley de acción de masas, que establece que la velocidad de la reacción (la velocidad a la que aparece el producto o desaparece el reactivo) es igual al producto de las concentraciones por una constante.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;y'(t)=k_1x(t)y(t)&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Obtención del problema de valor inicial ==&lt;br /&gt;
Una vez demostrado el origen de las ecuaciones (1) y (2) en el apartado anterior, obtendremos el problema de valor inicial (PVI) mediante las operaciones detalladas a continuación:&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;x'(t)+y'(t)=0\quad\quad(1)&amp;lt;/math&amp;gt;&lt;br /&gt;
:&amp;lt;math&amp;gt;y'(t)=k_1x(t)y(t)\quad\quad(2)&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Integrando (1) obtenemos (3):&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
:&amp;lt;math&amp;gt;\int_\mathbb{D} (\frac{dx(t)}{dt} + \frac{dy(t)}{dt})\,dt =\int_\mathbb{D} 0\,dt \quad \Rightarrow \quad x(t)+y(t)=k_2\quad \Rightarrow \quad x(t)=k_2-y(t)\quad\quad(3)&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Sustituyendo (3) en (2), obtenemos (4):&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;y'(t)=k_1x(t)y(t)\quad \Rightarrow \quad y'(t)=k_1(k_2-y(t))y(t)\quad \Rightarrow \quad y'(t)=k_1k_2y(t)-k_1y^2(t)\quad\quad(4)&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Conocemos las concentraciones iniciales de A y de B, por lo que podemos obtener el valor de la constante k&amp;lt;sub&amp;gt;2&amp;lt;/sub&amp;gt;:&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;[A]:\quad x(0)=1 mol/l;\quad\quad [B]:\quad y(0)=0,01 mol/l&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;x(t)+y(t)=k_2\quad \Rightarrow \quad x(0)+y(0)=k_2\quad \Rightarrow \quad 1+0,01=k_2\quad \Rightarrow \quad k_2=1,01&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Por último, conocemos también el valor de k&amp;lt;sub&amp;gt;1&amp;lt;/sub&amp;gt;, por lo que podremos plantear a continuación el correspondiente PVI:&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;k_1=1&amp;lt;/math&amp;gt;&lt;br /&gt;
:&amp;lt;math&amp;gt;(PVI)\begin{cases}y'(t)=1,01y(t)-y^2(t) \\ \\&lt;br /&gt;
y(0) = 0,01 \end{cases}\quad (t,y)\in[0,10]\times\mathbb{R}^+&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Unicidad de la solución ==&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Existencia-y-unicidad.png|200px|miniaturadeimagen|derecha|Intersección B con dominio]]&lt;br /&gt;
&lt;br /&gt;
Aplicamos a continuación el Teorema de Existencia y Unicidad:&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Sea &amp;lt;math&amp;gt;f(t,y)=y'(t) \Rightarrow f(t,y)=1.01y(t)-y^2(t)\quad&amp;lt;/math&amp;gt;, y &amp;lt;math&amp;gt;\quad\frac{\partial }{\partial y} f(t,y) = 1.01-2y(t)&amp;lt;/math&amp;gt;.&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
Sea &amp;lt;math&amp;gt;B[(t_0,y_0),r],\quad r&amp;gt;0,\quad en (t_0,y_0)=(0,0.01)&amp;lt;/math&amp;gt;.&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt; &lt;br /&gt;
&lt;br /&gt;
Y siendo &amp;lt;math&amp;gt;(t,y) \in \mathbb{D} = [0,10]\times \mathbb{R}^+ + \{0\}&amp;lt;/math&amp;gt; .&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt; &lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;f(t,y)&amp;lt;/math&amp;gt; es continua en &amp;lt;math&amp;gt; \mathbb{B}\cap \mathbb{D}\quad \Rightarrow \quad \exists  y(t)\quad /\quad y'(t)=1,01y(t)-y^2(t)&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;math&amp;gt;\frac{\partial }{\partial y} f(t,y)&amp;lt;/math&amp;gt; es continua en &amp;lt;math&amp;gt; \mathbb{B}\cap \mathbb{D}\quad \Rightarrow \quad \exists !  y(t)\quad /\quad y'(t)=1,01y(t)-y^2(t)&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Con lo que queda demostrado que el (PVI) tiene solución y además esta es única.&lt;br /&gt;
&lt;br /&gt;
== Resolución numérica del problema de valor inicial ==&lt;br /&gt;
&lt;br /&gt;
En este apartado resolveremos el problema de valor inicial planteado anteriormente con tres métodos de integración numérica: el método de Euler, el método del Trapecio y el método de Runge-Kutta de orden 4.&lt;br /&gt;
&lt;br /&gt;
=== Método de Euler ===&lt;br /&gt;
&lt;br /&gt;
El método de Euler, llamado así en honor al matemático Leonhard Euler, es un procedimiento de integración numérica. Su expresión matemática es: &lt;br /&gt;
&amp;lt;math&amp;gt;  PVI =   &lt;br /&gt;
\begin{cases}&lt;br /&gt;
 y_0 \\&lt;br /&gt;
 y_{n+1}  = y_n + h*f(t_n,y_n) \\&lt;br /&gt;
\end{cases}\quad&lt;br /&gt;
   &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
A continuación emplearemos esta expresión en un programa de Matlab para obtener una aproximación de las soluciones. El código de dicho programa es el siguiente.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Eulergrafica.png|400px|miniaturadeimagen|derecha|Representación gráfica y(t). Método de Euler]]&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
%Método de Euler&lt;br /&gt;
clc&lt;br /&gt;
&lt;br /&gt;
%Datos iniciales&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=4;&lt;br /&gt;
y0=0.01;&lt;br /&gt;
h=0.1;&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=10;&lt;br /&gt;
&lt;br /&gt;
%Cálculo de subintervalos&lt;br /&gt;
N=round((tN-t0)/h);&lt;br /&gt;
t=t0:h:tN;&lt;br /&gt;
&lt;br /&gt;
%Creamos el vector donde vamos a guardar las soluciones&lt;br /&gt;
y=zeros(1,N+1);&lt;br /&gt;
y(1)=y0;&lt;br /&gt;
&lt;br /&gt;
%Euler&lt;br /&gt;
for i=1:N;&lt;br /&gt;
    y(i+1)=y(i)+h*(1.01*y(i)-(y(i)).^2);&lt;br /&gt;
end&lt;br /&gt;
%Tabla de Resultados&lt;br /&gt;
[t',y']&lt;br /&gt;
x=1.01-y;&lt;br /&gt;
hold on &lt;br /&gt;
plot(t,y,'r')&lt;br /&gt;
plot(t,x,'b')&lt;br /&gt;
hold off&lt;br /&gt;
legend('Sustancia B: y(t)','Sustancia A: x(t)','Location','best');&lt;br /&gt;
xlabel('Tiempo (s)')&lt;br /&gt;
ylabel('Concentración (mol/l)')&lt;br /&gt;
grid on&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
=== Método del trapecio ===&lt;br /&gt;
&lt;br /&gt;
Vamos a aplicar un método de integración numérica conocido como el Método del Trapecio por aproximar el valor de la integral al del área de un trapecio. Su expresión matemática es:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;  PVI =   &lt;br /&gt;
\begin{cases}&lt;br /&gt;
 y_0 \\&lt;br /&gt;
 y_{n+1}  =  y_n + \frac{h}{2}*(f(t_n,y_n)+f(t_{n+1},y_{n+1}))\\&lt;br /&gt;
\end{cases}\quad&lt;br /&gt;
   &amp;lt;/math&amp;gt;&lt;br /&gt;
   &lt;br /&gt;
Introducimos esta expresión en el código y obtenemos la gráfica de la solución.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Trapeciografica.png|400px|miniaturadeimagen|derecha|Representación gráfica y(t). Método del Trapecio]]&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
%Método del Trapecio&lt;br /&gt;
clc&lt;br /&gt;
&lt;br /&gt;
%Datos iniciales&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=4;&lt;br /&gt;
y0=0.01;&lt;br /&gt;
h=0.1;&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=10;&lt;br /&gt;
&lt;br /&gt;
%Cálculo de subintervalos&lt;br /&gt;
N=round((tN-t0)/h);&lt;br /&gt;
t=t0:h:tN;&lt;br /&gt;
&lt;br /&gt;
%Creamos el vector donde vamos a guardar las soluciones&lt;br /&gt;
y=zeros(1,N+1);&lt;br /&gt;
y(1)=y0;&lt;br /&gt;
&lt;br /&gt;
for i=1:N&lt;br /&gt;
y(i+1)=(((1-(h/2)*1.01)-sqrt(((1-(h/2)*1.01)^2)+4*(h/2)*((1+(h/2)*1.01)*y(i)-(h/2)*(y(i))^2)))/-h);&lt;br /&gt;
end&lt;br /&gt;
%Sacamos la tabla de resultados&lt;br /&gt;
[t',y']&lt;br /&gt;
x=1.01-y;&lt;br /&gt;
%Gráfico&lt;br /&gt;
hold on&lt;br /&gt;
plot(t,y,'r')&lt;br /&gt;
plot(t,x,'b')&lt;br /&gt;
legend('Sustancia B: y(t)','Sustancia A: x(t)','Location','best');&lt;br /&gt;
xlabel('Tiempo (s)')&lt;br /&gt;
ylabel('Concentración (mol/l)')&lt;br /&gt;
grid on&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
=== Método de Runge-Kutta ===&lt;br /&gt;
&lt;br /&gt;
El método de resolución numérica de Runge-Kutta, involucra un gran número de parámetros. Para simplificar la implementación de este método en Matlab, utilizaremos la función ''inline'', con la que declararemos previamente la función algebraica necesaria para el cálculo de los parámetros &amp;lt;math&amp;gt;k_i&amp;lt;/math&amp;gt;, ahorrándonos tener que escribir innumerables veces la correspondiente expresión matemática.&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
A continuación, detallamos la función &amp;lt;math&amp;gt;f(y)&amp;lt;/math&amp;gt; de la que dependerán los valores de los parámetros &amp;lt;math&amp;gt;k_i&amp;lt;/math&amp;gt;:&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;f(y)=y'(t)=1.01y(t)-y(t)^2&lt;br /&gt;
&lt;br /&gt;
\quad \Rightarrow \quad&lt;br /&gt;
&lt;br /&gt;
\begin{cases}&lt;br /&gt;
 k_1 &amp;amp; =  f(y_i) \\&lt;br /&gt;
 k_2 &amp;amp; =  f(y_i + {1 \over 2}k_1h) \\&lt;br /&gt;
 k_3 &amp;amp; =  f(y_i + \frac{1}{2}k_2h) \\&lt;br /&gt;
 k_4 &amp;amp; =  f(y_i + k_3h) \\&lt;br /&gt;
\end{cases}\quad [h=0.1]&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Entonces el método RK4 para este problema está dado por la siguiente ecuación:&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;y_{i+1} = y_{i} + {1 \over 6}h(k_1+2k_2+2k_3+k_4)&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Mediante el siguiente programa en Matlab calculamos numéricamente la solución y la representamos en un gráfico:&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Archivo:RK4II.png|400px|miniaturadeimagen|derecha|Representación gráfica y(t). Método Runge-Kutta]]&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
%Método de Runge-Kutta&lt;br /&gt;
clc&lt;br /&gt;
&lt;br /&gt;
%Función f(t)=y'(t)&lt;br /&gt;
fy=inline('1.01*y-y^2','y');&lt;br /&gt;
&lt;br /&gt;
%Datos del problema&lt;br /&gt;
y0=0.01;&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=10;&lt;br /&gt;
h=0.1;&lt;br /&gt;
&lt;br /&gt;
%Variable independiente (t)&lt;br /&gt;
t=t0:h:tN;&lt;br /&gt;
&lt;br /&gt;
%Variable dependiente (y)&lt;br /&gt;
y=zeros(1,length(t));&lt;br /&gt;
y(1)=y0;&lt;br /&gt;
&lt;br /&gt;
for i=1:length(t)-1&lt;br /&gt;
    k1=fy(y(i));&lt;br /&gt;
    k2=fy(y(i)+k1/2*h);&lt;br /&gt;
    k3=fy(y(i)+k2/2*h);&lt;br /&gt;
    k4=fy(y(i)+k3*h);&lt;br /&gt;
    y(i+1)=y(i)+h/6*(k1+2*k2+2*k3+k4);&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
%Variable dependiente (x)&lt;br /&gt;
x=1.01-y;&lt;br /&gt;
&lt;br /&gt;
%Representación gráfica&lt;br /&gt;
hold on&lt;br /&gt;
plot(t,x,'b')&lt;br /&gt;
plot(t,y,'r')&lt;br /&gt;
legend('Sustancia A: x(t)','Sustancia B: y(t)')&lt;br /&gt;
xlabel('Tiempo (s)')&lt;br /&gt;
ylabel('Concentración (mol/l)')&lt;br /&gt;
grid on&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
=== Comparación de métodos===&lt;br /&gt;
&lt;br /&gt;
Podemos observar fácilmente que las gráficas obtenidas con los diferentes métodos son iguales a primera vista. Sin embargo, superponiéndolas queda patente que no son exactamente iguales debido a que los métodos no poseen la misma precisión y , al operar todos con la misma longitud de paso, unos aproximan la solución exacta mejor que otros. Así se observa en estas imágenes:&lt;br /&gt;
&lt;br /&gt;
[[Archivo:comparativa1.jpg|400px|miniaturadeimagen|izquierda|Comparación de métodos]]&lt;br /&gt;
[[Archivo:comparativa2.jpg|400px|miniaturadeimagen|derecha|Comparación de métodos]]&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
Como podemos comprobar en las imágenes, el método de Euler es menos preciso que el del trapecio o el de Runge-Kutta.&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Resolución en forma de sistema de ecuaciones ==&lt;br /&gt;
&lt;br /&gt;
A continuación vamos a plantear el problema de valor inicial con un sistema no lineal de dos ecuaciones equivalente al problema resuelto anteriormente.&lt;br /&gt;
&lt;br /&gt;
Estas ecuaciones serán:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;(PVI)&lt;br /&gt;
\begin{cases}&lt;br /&gt;
    y'(t)=k_1 x(t)y(t) \\&lt;br /&gt;
    x'(t)=-k_1 x(t)y(t) \\&lt;br /&gt;
    \\&lt;br /&gt;
    x(0)=1 \\&lt;br /&gt;
    y(0) = 0.01&lt;br /&gt;
\end{cases}&lt;br /&gt;
\quad t\in[0,10]&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Resolveremos el problema por el método de Euler y por el método de Runge-Kutta, plasmando las soluciones en gráficos.&lt;br /&gt;
&lt;br /&gt;
=== Método de Euler ===&lt;br /&gt;
&lt;br /&gt;
En este caso aplicaremos en el siguiente código la expresión para EDO a cada una de las ecuaciones que conforma el sistema, obteniendo la correspondiente gráfica.&lt;br /&gt;
 &lt;br /&gt;
[[Archivo:SistEuler.png|400px|miniaturadeimagen|derecha|Representación gráfica de las concentraciones de A y B. Resolución del sistema por Euler]]&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
&lt;br /&gt;
%Resolución del sistema por el método de Euler&lt;br /&gt;
&lt;br /&gt;
clear all&lt;br /&gt;
&lt;br /&gt;
%Definimos el vector de la variable independiente, el número de&lt;br /&gt;
%subintervalos y la longitud de paso&lt;br /&gt;
&lt;br /&gt;
t0 = 0;&lt;br /&gt;
tN = 10;&lt;br /&gt;
h = 0.1;&lt;br /&gt;
t = t0:h:tN&lt;br /&gt;
N = (tN-t0)/h;&lt;br /&gt;
&lt;br /&gt;
%Definimos los vectores de las variables dependientes&lt;br /&gt;
&lt;br /&gt;
x = zeros(1, N+1);&lt;br /&gt;
y = zeros(1, N+1);&lt;br /&gt;
&lt;br /&gt;
x(1) = 1;&lt;br /&gt;
y(1) = 0.01;&lt;br /&gt;
&lt;br /&gt;
for i = 1:N&lt;br /&gt;
    &lt;br /&gt;
    x(i+1)=x(i)+h*(-x(i).*y(i));&lt;br /&gt;
    y(i+1)=y(i)+h*(y(i).*x(i));&lt;br /&gt;
    &lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
%Representamos gráficamente las soluciones&lt;br /&gt;
&lt;br /&gt;
hold on&lt;br /&gt;
&lt;br /&gt;
plot(t,x,'b');&lt;br /&gt;
plot(t,y,'r');&lt;br /&gt;
grid on&lt;br /&gt;
&lt;br /&gt;
legend('Sustancia A: x(t)','Sustancia B: y(t)')&lt;br /&gt;
xlabel('Tiempo (s)')&lt;br /&gt;
ylabel('Concentración (mol/l)')&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
hold off&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
}}&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Método de Runge-Kutta===&lt;br /&gt;
&lt;br /&gt;
El método de resolución numérica de Runge-Kutta, involucra un gran número de parámetros. Para simplificar la implementación de este método en Matlab, el sistema se tratará como una matriz &amp;lt;math&amp;gt;z&amp;lt;/math&amp;gt;. Además, utilizaremos la función ''inline'', con la que declararemos previamente la función algebraica necesaria para el cálculo de los parámetros &amp;lt;math&amp;gt;k_i&amp;lt;/math&amp;gt;, ahorrándonos tener que escribir innumerables veces la correspondiente expresión matemática.&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Primero, expresamos el sistema en forma matricial:&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;(PVI)\begin{cases}&lt;br /&gt;
    x'(t)=-k_1 x(t)y(t) \\&lt;br /&gt;
    y'(t)=k_1 x(t)y(t) \\&lt;br /&gt;
    \\&lt;br /&gt;
    x(0)=1 \\&lt;br /&gt;
    y(0) = 0.01&lt;br /&gt;
\end{cases}\quad t\in[0,10]&lt;br /&gt;
&lt;br /&gt;
\quad \Rightarrow \quad k_1=1\quad \Rightarrow \quad&lt;br /&gt;
&lt;br /&gt;
(PVI)\begin{cases}\vec{z}'(t)=&lt;br /&gt;
   \begin{bmatrix}&lt;br /&gt;
      x'(t) \\&lt;br /&gt;
      y'(t) \\&lt;br /&gt;
   \end{bmatrix}&lt;br /&gt;
=&lt;br /&gt;
      \begin{bmatrix}&lt;br /&gt;
      -x(t)y(t) \\&lt;br /&gt;
      x(t)y(t) \\&lt;br /&gt;
   \end{bmatrix}&lt;br /&gt;
&lt;br /&gt;
 \\ \\ \vec{z}(0)=&lt;br /&gt;
   \begin{bmatrix}&lt;br /&gt;
      x(0) \\&lt;br /&gt;
      y(0) \\&lt;br /&gt;
   \end{bmatrix}&lt;br /&gt;
=&lt;br /&gt;
      \begin{bmatrix}&lt;br /&gt;
      1 \\&lt;br /&gt;
      0.01 \\&lt;br /&gt;
   \end{bmatrix}&lt;br /&gt;
\end{cases}\quad t\in[0,10]&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
A continuación, detallamos la función &amp;lt;math&amp;gt;\vec{F}&amp;lt;/math&amp;gt; de la que dependerán los valores de los parámetros &amp;lt;math&amp;gt;k_i&amp;lt;/math&amp;gt;:&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;\vec{F}(x,y)=\vec{F}(\vec{z})=&lt;br /&gt;
&lt;br /&gt;
\begin{bmatrix}&lt;br /&gt;
    f(\vec{z}) \\&lt;br /&gt;
    g(\vec{z}) \\&lt;br /&gt;
\end{bmatrix}=&lt;br /&gt;
&lt;br /&gt;
\begin{bmatrix}&lt;br /&gt;
    x'(t) \\&lt;br /&gt;
    y'(t) \\&lt;br /&gt;
\end{bmatrix}=&lt;br /&gt;
&lt;br /&gt;
\vec{z}'(t)=&lt;br /&gt;
&lt;br /&gt;
\begin{bmatrix}&lt;br /&gt;
    -x(t)y(t) \\&lt;br /&gt;
    x(t)y(t) \\&lt;br /&gt;
\end{bmatrix}&lt;br /&gt;
\quad \Rightarrow \quad&lt;br /&gt;
&lt;br /&gt;
\begin{cases}&lt;br /&gt;
 [\vec{k_1}] &amp;amp; =  F(\vec{z}_i) \\&lt;br /&gt;
 [\vec{k_2}] &amp;amp; =  F(\vec{z}_i + {1 \over 2}k_1h) \\&lt;br /&gt;
 [\vec{k_3}] &amp;amp; =  F(\vec{z}_i + \frac{1}{2}k_2h) \\&lt;br /&gt;
 [\vec{k_4}] &amp;amp; =  F(\vec{z}_i + k_3h) \\&lt;br /&gt;
\end{cases}\quad [h=0.1]&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Entonces el método RK4 para este problema está dado por la siguiente ecuación:&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;\vec{z}_{i+1} = \vec{z}_{i} + {1 \over 6}h(\vec{k_1}+2\vec{k_2}+2\vec{k_3}+\vec{k_4})&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Mediante el siguiente programa en Matlab calculamos numéricamente la solución y la representamos en un gráfico:&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Archivo:sistema_RK4.png|400px|miniaturadeimagen|derecha|Representación gráfica de las concentraciones de A y B. Resolución del sistema por Runge-Kutta]]&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
%Método de Runge-Kutta&lt;br /&gt;
clc&lt;br /&gt;
&lt;br /&gt;
%Función F=[x'(t); y'(t)]&lt;br /&gt;
F=inline('[-z(1)*z(2);z(1)*z(2)]','z');&lt;br /&gt;
&lt;br /&gt;
%Datos del problema &lt;br /&gt;
x0=1;&lt;br /&gt;
y0=0.01;&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=10;&lt;br /&gt;
h=0.1;&lt;br /&gt;
&lt;br /&gt;
%Vector de variable independiente (t)&lt;br /&gt;
t=t0:h:tN;&lt;br /&gt;
&lt;br /&gt;
%Matriz de variables dependientes z=[x;y]&lt;br /&gt;
z=zeros(2,length(t));&lt;br /&gt;
z(:,1)=[x0;y0];&lt;br /&gt;
&lt;br /&gt;
for i = 1:length(t)-1&lt;br /&gt;
    k1=F(z(:,i));&lt;br /&gt;
    k2=F(z(:,i)+k1.*h/2);&lt;br /&gt;
    k3=F(z(:,i)+k2.*h/2);&lt;br /&gt;
    k4=F(z(:,i)+k3.*h);&lt;br /&gt;
    z(:,i+1)=z(:,i)+h/6.*(k1+2.*k2+2.*k3+k4);&lt;br /&gt;
end&lt;br /&gt;
 &lt;br /&gt;
%Representación gráfica&lt;br /&gt;
hold on&lt;br /&gt;
plot(t,z(1,:))&lt;br /&gt;
plot(t,z(2,:),'r')&lt;br /&gt;
legend('Sustancia A: x(t)','Sustancia B: y(t)')&lt;br /&gt;
xlabel('Tiempo (s)')&lt;br /&gt;
ylabel('Concentración (mol/l)')&lt;br /&gt;
grid on&lt;br /&gt;
%hold off&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
== Interpretación de las gráficas ==&lt;br /&gt;
&lt;br /&gt;
Como cabía esperar, obtenemos la misma solución resolviendo el problema como sistema o como EDO. Podemos observar por los resultados obtenidos que la velocidad de aparición de B es igual a la velocidad de desaparición de A (como dicta el principio de conservación de la masa), que A acaba desapareciendo prácticamente por completo y que la concentración de B termina por estabilizarse alrededor de 1 mol/l. Ambos compuestos alcanzan los extremos de sus concentraciones en el mismo instante de tiempo&lt;br /&gt;
&lt;br /&gt;
También cabe destacar que cuando el tiempo transcurrido alcanza 4,5 segundos las concentraciones de ambos compuestos son las mismas.&lt;br /&gt;
&lt;br /&gt;
= Reacción II =&lt;br /&gt;
&lt;br /&gt;
En este apartado vamos a estudiar la reacción propuesta por Alfred J. Lotka en 1920, que es la siguiente:&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt; A + X →_{k1} 2X;&amp;lt;/math&amp;gt;     :&amp;lt;math&amp;gt; X + Y →_{k2} 2Y;&amp;lt;/math&amp;gt;     :&amp;lt;math&amp;gt;Y →_{k3} 2B  &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Como se puede observar, se trata de una reacción compleja integrada por 3 reacciones simples (las dos primeras autocatalíticas) en las que intervienen un total de 4 compuestos, A, B, X e Y. Siguiendo el desarrollo de la reacción, es lógico suponer que A se agotará al comienzo de la reacción, que los máximos de concentración de X e Y se darán en los estados intermedios y que al final el compuesto B será el único restante, siendo el producto final de la reacción.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Interpretación del problema y deducción de las ecuaciones diferenciales ==&lt;br /&gt;
&lt;br /&gt;
Para averiguar cómo evolucionan las concentraciones de los cuatro compuestos durante el desarrollo de la reacción necesitaremos obtener cuatro ecuaciones diferenciales. Para ello nos volveremos a basar en los principios físicos que ya empleamos en la anterior reacción. Definimos A(t), x(t), y(t), y B(t) (A, x, y, B; para ahorrar notación) a las concentraciones de A, X, Y, y B, respectivamente. &lt;br /&gt;
&lt;br /&gt;
En primer lugar aplicamos el Principio de Conservación de la masa, que establece que la suma de las concentraciones de los compuestos es constante (no desaparece masa en el proceso), lo que derivando nos indica que:&lt;br /&gt;
&lt;br /&gt;
: &amp;lt;math&amp;gt; A' + x' + y' + B' = 0 \quad\quad(I)&amp;lt;/math&amp;gt;       &lt;br /&gt;
&lt;br /&gt;
A continuación aplicaremos la Ley de Acción de Masas (velocidad de reacción proporcional al producto de la concentración de los reactivos).&lt;br /&gt;
&lt;br /&gt;
Aplicando esta ley a la última reacción simple obtenemos que: &lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;B'=k_3y \quad\quad(II)&amp;lt;/math&amp;gt;        &lt;br /&gt;
&lt;br /&gt;
En el caso de las concentraciones de X e Y las expresiones resultantes son algo más complicadas ya que estos dos compuestos actúan como reactivos y productos en más de una reacción simple, por lo que la variación de sus concentraciones será la suma de las variaciones de las reacciones en las que aparezcan:&lt;br /&gt;
&lt;br /&gt;
: &amp;lt;math&amp;gt; x' = x'_{1} + x'_{2} → x' = k_{1}Ax - k{2}xy \quad\quad(III)&amp;lt;/math&amp;gt;        &lt;br /&gt;
: &amp;lt;math&amp;gt; y' = y'_{2} + y'_{3} → y' = k_{2}xy − k_3{y} \quad\quad(IV)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Por último sustituimos (II), (III) y (IV) en (I) obteniendo: &lt;br /&gt;
&lt;br /&gt;
: &amp;lt;math&amp;gt; A' + k_{1}Ax - k{2}xy + k_{2}xy − k_3{y}+ k_3y= 0 : &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
De donde obtenemos que:&lt;br /&gt;
&lt;br /&gt;
: &amp;lt;math&amp;gt; A' = -k_{1}Ax &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Ahora que ya tenemos las variaciones de concentración de los compuestos en función de las concentraciones podemos aplicar métodos numéricos que nos lleven a una solución aproximada.&lt;br /&gt;
&lt;br /&gt;
== Resolución numérica del sistema de ecuaciones ==&lt;br /&gt;
&lt;br /&gt;
Una vez obtenidas las ecuaciones y conociendo las condiciones iniciales y los valores de las constantes podemos plantear el problema de valor inicial para luego resolverlo.&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;(PVI)&lt;br /&gt;
\begin{cases}&lt;br /&gt;
    A' = -k_{1}Ax\\&lt;br /&gt;
    x' = k_{1}Ax - k{2}xy\\&lt;br /&gt;
    y' = k_{2}xy − k_3{y}\\&lt;br /&gt;
    B'=k_3y \\&lt;br /&gt;
\\&lt;br /&gt;
    A(0)=5  \\&lt;br /&gt;
    x(0)=5*10^{-4} \\&lt;br /&gt;
    y(0)=10^{-5}\\&lt;br /&gt;
    B(0)=0 \\&lt;br /&gt;
\end{cases}&lt;br /&gt;
\quad t\in[0,200]&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Siendo &amp;lt;math&amp;gt; k_{1}=K_{2}=2k_{3}=0.1 &amp;lt;/math&amp;gt; y las unidades de la concentración mol/l.&lt;br /&gt;
&lt;br /&gt;
=== Método de Euler ===&lt;br /&gt;
&lt;br /&gt;
Aplicamos el método de Euler de forma análoga a como lo hicimos en [[Reacciones_con_autocatálisis._Grupo_D12#Método_de_Euler_2|apartado 2.5.1]]&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Euler lotka0.01.png|400px|miniaturadeimagen|derecha|Representación gráfica de las concentraciones de A, B, X, e Y a lo largo del tiempo. Resoluciónd delsistema por el método de Euler con longitud de paso h=0.01]] &lt;br /&gt;
[[Archivo:Euler lotka0.001.png|400px|miniaturadeimagen|derecha|Representación gráfica de las concentraciones de A, B, X, e Y a lo largo del tiempo. Resoluciónd delsistema por el método de Euler con longitud de paso h=0.001]]&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
&lt;br /&gt;
%Resolución del sistema de la reacción de Lotka por el método de Euler&lt;br /&gt;
&lt;br /&gt;
clear all&lt;br /&gt;
&lt;br /&gt;
%Definimos la variable independiente y establecemos los datos del problema&lt;br /&gt;
%de valor inicial. Para la longitud de paso h introducimos en primer lugar&lt;br /&gt;
%0.01 y luego 0.001&lt;br /&gt;
&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=200;&lt;br /&gt;
h= input('Introduzca una longitud de paso ');&lt;br /&gt;
t = t0:h:tN;&lt;br /&gt;
N=(tN-t0)/h;&lt;br /&gt;
k1 = 0.1;&lt;br /&gt;
k2 = 0.1;&lt;br /&gt;
k3 = 0.05;&lt;br /&gt;
A0 = 5;&lt;br /&gt;
B0 = 0;&lt;br /&gt;
X0 = 5*10^(-4);&lt;br /&gt;
Y0 = 10^(-5);&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
%Definimos las variables dependientes.&lt;br /&gt;
&lt;br /&gt;
A = zeros(1, N-1);&lt;br /&gt;
B = A;&lt;br /&gt;
X = A;&lt;br /&gt;
Y = A;&lt;br /&gt;
&lt;br /&gt;
A(1) = A0;&lt;br /&gt;
B(1) = B0;&lt;br /&gt;
X(1) = X0;&lt;br /&gt;
Y(1) = Y0;&lt;br /&gt;
&lt;br /&gt;
for i = 1:N&lt;br /&gt;
    &lt;br /&gt;
    X(i+1) = X(i) + h*(k1*A(i)*X(i)-k2*Y(i)*X(i));&lt;br /&gt;
    Y(i+1)=Y(i)+h.*(k2.*X(i).*Y(i)-k3.*Y(i));&lt;br /&gt;
    B(i+1) = B(i) + h*(k3*Y(i));&lt;br /&gt;
    A(i+1) = A(i) + h*(-k1*A(i)*X(i));&lt;br /&gt;
   &lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
%Representamos gráficamente la solución&lt;br /&gt;
&lt;br /&gt;
hold on&lt;br /&gt;
&lt;br /&gt;
plot (t,A,'b')&lt;br /&gt;
plot(t, X, 'r')&lt;br /&gt;
plot(t,Y, 'g')&lt;br /&gt;
plot(t, B, 'm')&lt;br /&gt;
legend('Sustancia A: A(t)','Sustancia X: x(t)','Sustancia Y: y(t)','Sustancia B: B(t)','Location','Best')&lt;br /&gt;
xlabel('Tiempo (s)')&lt;br /&gt;
ylabel('Concentración (mol/l)')&lt;br /&gt;
grid on&lt;br /&gt;
&lt;br /&gt;
hold off&lt;br /&gt;
&lt;br /&gt;
}}&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
A continuación tendremos que comprobar si el método es estable. &amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
Un método es estable cuando el error local es pequeño y además este error no se amplifica a lo largo del tiempo. Para calificar la estabilidad del método de Euler resolveremos el sistema anterior con este método, con pasos &amp;quot;h=0.01&amp;quot; y &amp;quot;h=0.001&amp;quot;, y lo compararemos con la resolución del sistema con el método de Heun, que se asemeja más a la solución exacta.&amp;lt;br /&amp;gt;&lt;br /&gt;
En la comparación representaremos en azul el método de Heun y en rojo el método de Euler.&amp;lt;br /&amp;gt;&lt;br /&gt;
Para &amp;quot;h=0.01&amp;quot; tenemos lo siguiente:&lt;br /&gt;
[[Archivo:1estabilidad123.jpg|400px|miniaturadeimagen|izquierda|Comparación entre Método de Heun (Azul) con el Método de Euler con paso h=0.01 (Rojo)]] &lt;br /&gt;
[[Archivo:1estabilidad321.jpg|400px|miniaturadeimagen|derecha|Comparación entre Método de Heun (Azul) con el Método de Euler con paso h=0.01 (Rojo)]] &lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
Para &amp;quot;h=0.001&amp;quot; tenemos lo siguiente:&lt;br /&gt;
[[Archivo:2estabilidad123.jpg|400px|miniaturadeimagen|izquierda|Comparación entre Método de Heun (Azul) con el Método de Euler con paso h=0.001 (Rojo)]] &lt;br /&gt;
[[Archivo:2estabilidad321.jpg|400px|miniaturadeimagen|derecha|Comparación entre Método de Heun (Azul) con el Método de Euler con paso h=0.001 (Rojo)]]&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
Como podemos ver en las imágenes de los dos procesos las gráficas se superponen y no se aprecian diferencias hasta que no ampliamos la imagen. Y esto sucede en todo momento con lo que podemos garantizar que en este caso el método de Euler es estable para los pasos que hemos usado.&lt;br /&gt;
&lt;br /&gt;
=== Método de Heun ===&lt;br /&gt;
&lt;br /&gt;
Si bien el método de resolución numérica de Heun no involucra un número de parámetros tan notable como el método de Runge-Kutta, en este caso tenemos un sistema de 4 ecuaciones diferenciales, por lo que, en aras de simplificar, utilizaremos el mismo criterio que en el [[Reacciones_con_autocatálisis._Grupo_D12#Método_de_Runge-Kutta_2|apartado 2.5.2]].: El sistema se tratará como una matriz &amp;lt;math&amp;gt;z&amp;lt;/math&amp;gt;, y para la obtención de los parámetros &amp;lt;math&amp;gt;k_i&amp;lt;/math&amp;gt; utilizaremos la función ''inline'', con la que declararemos previamente las expresiones necesarias para el cálculo de los parámetros &amp;lt;math&amp;gt;k_i&amp;lt;/math&amp;gt;.&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Primero, expresamos el sistema en forma matricial:&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;(PVI)\begin{cases}&lt;br /&gt;
A'(t)=-k_1 A(t)x(t) \\&lt;br /&gt;
x'(t)=k_1 A(t)x(t)-k_2 x(t)y(t) \\&lt;br /&gt;
y'(t)=k_2 x(t)y(t)-k_3 y(t) \\&lt;br /&gt;
B'(t)=k_3 x(t)y(t) \\ \\&lt;br /&gt;
A(0)=5 \\&lt;br /&gt;
x(0)=5·10^{-4} \\&lt;br /&gt;
y(0)=10^{-5} \\&lt;br /&gt;
B(0) = 0&lt;br /&gt;
\end{cases}\quad t\in[0,200]&lt;br /&gt;
&lt;br /&gt;
\quad \Rightarrow \quad&lt;br /&gt;
&lt;br /&gt;
\begin{cases}&lt;br /&gt;
k_1=0.1 \\&lt;br /&gt;
k_2=0.1 \\&lt;br /&gt;
k_3=0.05 \\&lt;br /&gt;
&lt;br /&gt;
\end{cases}&lt;br /&gt;
&lt;br /&gt;
\quad \Rightarrow \quad&lt;br /&gt;
&lt;br /&gt;
(PVI)\begin{cases}\vec{z}'(t)=&lt;br /&gt;
   \begin{bmatrix}&lt;br /&gt;
      A'(t) \\&lt;br /&gt;
      x'(t) \\&lt;br /&gt;
      y'(t) \\&lt;br /&gt;
      B'(t) \\&lt;br /&gt;
   \end{bmatrix}&lt;br /&gt;
=&lt;br /&gt;
      \begin{bmatrix}&lt;br /&gt;
      -0.1 A(t)x(t) \\&lt;br /&gt;
      0.1 A(t)x(t)-0.1 x(t)y(t) \\&lt;br /&gt;
      0.1 x(t)y(t)-0.05 y(t) \\&lt;br /&gt;
      0.05 y(t)x(t)\\&lt;br /&gt;
   \end{bmatrix}&lt;br /&gt;
&lt;br /&gt;
 \\ \\ \vec{z}(0)=&lt;br /&gt;
   \begin{bmatrix}&lt;br /&gt;
      A(0) \\&lt;br /&gt;
      x(0) \\&lt;br /&gt;
      y(0) \\&lt;br /&gt;
      B(0) \\&lt;br /&gt;
   \end{bmatrix}&lt;br /&gt;
=&lt;br /&gt;
      \begin{bmatrix}&lt;br /&gt;
      5 \\&lt;br /&gt;
      5·10^{-4} \\&lt;br /&gt;
      10^{-5} \\&lt;br /&gt;
      0&lt;br /&gt;
   \end{bmatrix}&lt;br /&gt;
\end{cases}\quad t\in[0,200]&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
A continuación, detallamos la función &amp;lt;math&amp;gt;\vec{F}&amp;lt;/math&amp;gt; de la que dependerán los valores de los parámetros &amp;lt;math&amp;gt;k_i&amp;lt;/math&amp;gt;:&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;\vec{F}(A,x,y,B)=\vec{F}(\vec{z})=&lt;br /&gt;
\begin{bmatrix}&lt;br /&gt;
    f(\vec{z}) \\ &lt;br /&gt;
    g(\vec{z}) \\ &lt;br /&gt;
    h(\vec{z}) \\ &lt;br /&gt;
    i(\vec{z}) \\ &lt;br /&gt;
\end{bmatrix}=&lt;br /&gt;
\begin{bmatrix}&lt;br /&gt;
    A'(t) \\&lt;br /&gt;
    x'(t) \\&lt;br /&gt;
    y'(t) \\&lt;br /&gt;
    B'(t) \\&lt;br /&gt;
\end{bmatrix}=&lt;br /&gt;
\vec{z}'(t)=&lt;br /&gt;
      \begin{bmatrix}&lt;br /&gt;
      -0.1 A(t)x(t) \\&lt;br /&gt;
      0.1 A(t)x(t)-0.1 x(t)y(t) \\&lt;br /&gt;
      0.1 x(t)y(t)-0.05 y(t) \\&lt;br /&gt;
      0.05 y(t)x(t)\\&lt;br /&gt;
   \end{bmatrix}&lt;br /&gt;
&lt;br /&gt;
\quad \Rightarrow \quad &lt;br /&gt;
&lt;br /&gt;
\begin{cases}&lt;br /&gt;
 [\vec{k_1}] &amp;amp; =  F(\vec{z}_i) \\&lt;br /&gt;
 [\vec{k_2}] &amp;amp; =  F(\vec{z}_i + {1 \over 2}k_1h) \\&lt;br /&gt;
\end{cases}\quad [h=0.01]&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Entonces el método de Heun para este problema está dado por la siguiente ecuación:&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;\vec{z}_{i+1} = \vec{z}_{i} + {1 \over 2}h(\vec{k_1}+\vec{k_2})&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Mediante el siguiente programa en Matlab calculamos numéricamente la solución y la representamos en un gráfico:&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Archivo:AXYBRK4.png|400px|miniaturadeimagen|derecha|Representación gráfica de las concentraciones de A,X,Y y B. Resolución del sistema por Heun]]&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
%Método de Heun&lt;br /&gt;
clc&lt;br /&gt;
&lt;br /&gt;
%Función F=[A'(t);x'(t); y'(t);B'(t)]&lt;br /&gt;
F=inline('0.1.*[-z(1)*z(2);z(1)*z(2)-z(2)*z(3);z(2)*z(3)-z(3)/2;z(3)/2]','z');&lt;br /&gt;
&lt;br /&gt;
%Datos del problema&lt;br /&gt;
A0=5;&lt;br /&gt;
x0=5*10^-4;&lt;br /&gt;
y0=10^(-5);&lt;br /&gt;
B0=0;&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=200;&lt;br /&gt;
h=0.1;&lt;br /&gt;
&lt;br /&gt;
%Vector de variable independiente (t)&lt;br /&gt;
t=t0:h:tN;&lt;br /&gt;
&lt;br /&gt;
%Matriz de variables dependientes z=[A;x;y;B]&lt;br /&gt;
z=zeros(4,length(t));&lt;br /&gt;
z(:,1)=[A0;x0;y0;B0];&lt;br /&gt;
&lt;br /&gt;
for i = 1:length(t)-1&lt;br /&gt;
    k1=F(z(:,i));&lt;br /&gt;
    k2=F(z(:,i)+k1.*h/2);&lt;br /&gt;
    z(:,i+1)=z(:,i)+h/2.*(k1+k2);&lt;br /&gt;
end&lt;br /&gt;
 &lt;br /&gt;
%Representación gráfica&lt;br /&gt;
hold on&lt;br /&gt;
plot(t,z(1,:),'b')&lt;br /&gt;
plot(t,z(2,:),'r')&lt;br /&gt;
plot(t,z(3,:),'g')&lt;br /&gt;
plot(t,z(4,:),'m')&lt;br /&gt;
legend('Sustancia A: A(t)','Sustancia X: x(t)','Sustancia Y: y(t)','Sustancia B: B(t)','Location','Best')&lt;br /&gt;
xlabel('Tiempo (s)')&lt;br /&gt;
ylabel('Concentración (mol/l)')&lt;br /&gt;
grid on&lt;br /&gt;
hold off&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
== Interpretación de las gráficas == &lt;br /&gt;
 &lt;br /&gt;
El proceso comienza con el predominio absoluto del compuesto A en la concentración total, siendo la presencia de los otros tres compuestos despreciable. Durante los primeros segundos la situación apenas cambia, pero tras los diez primeros segundos la concentración de A cae bruscamente mientras que la concentración de X aumenta a la misma velocidad; antes de llegar a los veinte segundos transcurridos las concentraciones de ambos compuestos se igualan y otros quince segundos más tarde el compuesto A  prácticamente ha desaparecido y el X ha alcanzado su concentración máxima (5 mol/litro).&lt;br /&gt;
&lt;br /&gt;
Es entonces cuando concluye la primera reacción y comienzan las otras dos, al no haber más compuesto A que cree compuesto X. La velocidad de aparición de Y es inicialmente mayor que la de B, superando al poco tiempo en concentración a la sustancia X. Sin embargo, llega un momento en el que la concentración de X es tan baja que se ralentiza la creación de Y y pronto empieza a disminuir su concentración tras alcanzar un máximo en torno a los 56 segundos, perdiendo peso la segunda reacción en beneficio de la tercera.&lt;br /&gt;
&lt;br /&gt;
Tras los 60 segundos de reacción el compuesto X pasa a tener una concentración despreciable, por lo que la única reacción simple que se sigue desarrollando es la tercera, destruyéndose reactivo Y y creándose producto B. La concentración de Y va reduciéndose paulatinamente hasta que en torno a los 160 segundos de reacción alcanza niveles insignificantes mientras que la concentración de B alcanza su máximo de 5 mol/litro.&lt;br /&gt;
&lt;br /&gt;
Es interesante observar que en todo momento se cumple el Principio de Conservación de la masa: la suma en cualquier momento de las concentraciones de las sustancias es 5 mol /litro. Esto es fácilmente comprobable en los momentos en que las concentraciones de A, X y B alcanzan su máximo de 5 mol/litro y el resto de concentraciones son nulas o despreciables. &lt;br /&gt;
[[Categoría:Ecuaciones Diferenciales]]&lt;br /&gt;
[[Categoría:ED14/15]]&lt;br /&gt;
[[Categoría:Trabajos 2014-15]]&lt;/div&gt;</summary>
		<author><name>Javier Ruiz de Galarreta López</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Reacciones_con_autocat%C3%A1lisis._Grupo_D12&amp;diff=29236</id>
		<title>Reacciones con autocatálisis. Grupo D12</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Reacciones_con_autocat%C3%A1lisis._Grupo_D12&amp;diff=29236"/>
				<updated>2015-03-12T18:47:16Z</updated>
		
		<summary type="html">&lt;p&gt;Javier Ruiz de Galarreta López: /* Interpretación de las gráficas */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{ TrabajoED | Reacciones con autocatálisis. Grupo D12 | [[:Categoría:Ecuaciones Diferenciales|Ecuaciones Diferenciales]]|[[:Categoría:ED14/15|Curso 2014-15]] | Javier Ruiz de Galarreta López, Argimiro Martínez López, Eduardo Moyano García, Alberto Rodríguez Ruiz. }}&lt;br /&gt;
&lt;br /&gt;
= Introducción: objetivos y metodología =&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
El objetivo de este trabajo es estudiar las concentraciones de los reactivos y productos de una reacción química a lo largo de la evolución en el tiempo de dicha reacción. Para ello modelizaremos el proceso empleando ecuaciones diferenciales y teniendo en cuenta la Ley de Acción de Masas y el Principio de Conservación de la materia.&lt;br /&gt;
&lt;br /&gt;
Al ser las ecuaciones y sistemas que se nos presentan de difícil resolución analítica, utilizaremos el programa informático Matlab para resolverlos mediante métodos numéricos como el de Euler, el del Trapecio, el de Runge-Kutta y el de Heun. &lt;br /&gt;
&lt;br /&gt;
Plasmaremos las soluciones en gráficos que nos permitirán dar una interpretación físico química a los resultados.&lt;br /&gt;
&lt;br /&gt;
= Reacción I =&lt;br /&gt;
&lt;br /&gt;
En primer lugar consideramos una reacción química irreversible en una solución bien mezclada, que se desarrolla para un volumen y una temperatura constantes, y en la que uno de los componentes (B, en este caso), hace de efecto catalítico.&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt; A + B →_{k1} 2B  &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Para desarrollar nuestro análisis nos apoyaremos en dos leyes físico químicas:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''Ley de acción de masas''': Enunciada por Guldberg y Waage en 1864, establece, entre otras cosas, que  la velocidad de&lt;br /&gt;
reacción es proporcional al producto de las concentraciones de los reactivos.&lt;br /&gt;
&lt;br /&gt;
'''Principio de conservación de la masa''': Establece que en una reacción química ordinaria la masa permanece constante, siendo la masa consumida de los reactivos igual a la masa obtenida de los productos. Fue elaborada independientemente por Míjail Lomonósov en 1745 y Antoine Lavoisier en 1785.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Interpretación del problema y deducción de las ecuaciones diferenciales ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Para hallar las ecuaciones diferenciales que nos describan cómo se desarrolla la reacción en el tiempo nos basaremos en las dos leyes enunciadas anteriormente. En primer lugar, definimos nuestra variable independiente como el tiempo &amp;lt;math&amp;gt;t&amp;lt;/math&amp;gt; en segundos. Las dos variables dependientes serán las concentraciones de los compuestos A y B, que denominaremos &amp;lt;math&amp;gt;x(t)&amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt;y(t)&amp;lt;/math&amp;gt;, ambas expresadas en mol/l. &lt;br /&gt;
&lt;br /&gt;
El principio de conservación de la masa expone que la suma de las concentraciones de los reactivos y los productos es constante. Esto equivale, derivando la expresión &amp;lt;math&amp;gt;x(t)+y(t)=cte&amp;lt;/math&amp;gt;, a que  desaparece tanto reactivo como producto aparece, o lo que es lo mismo, que la velocidad de aparición del producto es igual a la velocidad de desaparición (velocidad de aparición negativa) del reactivo:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;x'(t)=-y'(t)&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
La otra ecuación que necesitamos la obtenemos directamente de aplicar la Ley de acción de masas, que establece que la velocidad de la reacción (la velocidad a la que aparece el producto o desaparece el reactivo) es igual al producto de las concentraciones por una constante.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;y'(t)=k_1x(t)y(t)&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Obtención del problema de valor inicial ==&lt;br /&gt;
Una vez demostrado el origen de las ecuaciones (1) y (2) en el apartado anterior, obtendremos el problema de valor inicial (PVI) mediante las operaciones detalladas a continuación:&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;x'(t)+y'(t)=0\quad\quad(1)&amp;lt;/math&amp;gt;&lt;br /&gt;
:&amp;lt;math&amp;gt;y'(t)=k_1x(t)y(t)\quad\quad(2)&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Integrando (1) obtenemos (3):&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
:&amp;lt;math&amp;gt;\int_\mathbb{D} (\frac{dx(t)}{dt} + \frac{dy(t)}{dt})\,dt =\int_\mathbb{D} 0\,dt \quad \Rightarrow \quad x(t)+y(t)=k_2\quad \Rightarrow \quad x(t)=k_2-y(t)\quad\quad(3)&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Sustituyendo (3) en (2), obtenemos (4):&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;y'(t)=k_1x(t)y(t)\quad \Rightarrow \quad y'(t)=k_1(k_2-y(t))y(t)\quad \Rightarrow \quad y'(t)=k_1k_2y(t)-k_1y^2(t)\quad\quad(4)&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Conocemos las concentraciones iniciales de A y de B, por lo que podemos obtener el valor de la constante k&amp;lt;sub&amp;gt;2&amp;lt;/sub&amp;gt;:&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;[A]:\quad x(0)=1 mol/l;\quad\quad [B]:\quad y(0)=0,01 mol/l&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;x(t)+y(t)=k_2\quad \Rightarrow \quad x(0)+y(0)=k_2\quad \Rightarrow \quad 1+0,01=k_2\quad \Rightarrow \quad k_2=1,01&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Por último, conocemos también el valor de k&amp;lt;sub&amp;gt;1&amp;lt;/sub&amp;gt;, por lo que podremos plantear a continuación el correspondiente PVI:&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;k_1=1&amp;lt;/math&amp;gt;&lt;br /&gt;
:&amp;lt;math&amp;gt;(PVI)\begin{cases}y'(t)=1,01y(t)-y^2(t) \\ \\&lt;br /&gt;
y(0) = 0,01 \end{cases}\quad (t,y)\in[0,10]\times\mathbb{R}^+&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Unicidad de la solución ==&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Existencia-y-unicidad.png|200px|miniaturadeimagen|derecha|Intersección B con dominio]]&lt;br /&gt;
&lt;br /&gt;
Aplicamos a continuación el Teorema de Existencia y Unicidad:&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Sea &amp;lt;math&amp;gt;f(t,y)=y'(t) \Rightarrow f(t,y)=1.01y(t)-y^2(t)\quad&amp;lt;/math&amp;gt;, y &amp;lt;math&amp;gt;\quad\frac{\partial }{\partial y} f(t,y) = 1.01-2y(t)&amp;lt;/math&amp;gt;.&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
Sea &amp;lt;math&amp;gt;B[(t_0,y_0),r],\quad r&amp;gt;0,\quad en (t_0,y_0)=(0,0.01)&amp;lt;/math&amp;gt;.&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt; &lt;br /&gt;
&lt;br /&gt;
Y siendo &amp;lt;math&amp;gt;(t,y) \in \mathbb{D} = [0,10]\times \mathbb{R}^+ &amp;lt;/math&amp;gt; .&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt; &lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;f(t,y)&amp;lt;/math&amp;gt; es continua en &amp;lt;math&amp;gt; \mathbb{B}\cap \mathbb{D}\quad \Rightarrow \quad \exists  y(t)\quad /\quad y'(t)=1,01y(t)-y^2(t)&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;math&amp;gt;\frac{\partial }{\partial y} f(t,y)&amp;lt;/math&amp;gt; es continua en &amp;lt;math&amp;gt; \mathbb{B}\cap \mathbb{D}\quad \Rightarrow \quad \exists !  y(t)\quad /\quad y'(t)=1,01y(t)-y^2(t)&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Con lo que queda demostrado que el (PVI) tiene solución y además esta es única.&lt;br /&gt;
&lt;br /&gt;
== Resolución numérica del problema de valor inicial ==&lt;br /&gt;
&lt;br /&gt;
En este apartado resolveremos el problema de valor inicial planteado anteriormente con tres métodos de integración numérica: el método de Euler, el método del Trapecio y el método de Runge-Kutta de orden 4.&lt;br /&gt;
&lt;br /&gt;
=== Método de Euler ===&lt;br /&gt;
&lt;br /&gt;
El método de Euler, llamado así en honor al matemático Leonhard Euler, es un procedimiento de integración numérica. Su expresión matemática es: &lt;br /&gt;
&amp;lt;math&amp;gt;  PVI =   &lt;br /&gt;
\begin{cases}&lt;br /&gt;
 y_0 \\&lt;br /&gt;
 y_{n+1}  = y_n + h*f(t_n,y_n) \\&lt;br /&gt;
\end{cases}\quad&lt;br /&gt;
   &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
A continuación emplearemos esta expresión en un programa de Matlab para obtener una aproximación de las soluciones. El código de dicho programa es el siguiente.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Eulergrafica.png|400px|miniaturadeimagen|derecha|Representación gráfica y(t). Método de Euler]]&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
%Método de Euler&lt;br /&gt;
clc&lt;br /&gt;
&lt;br /&gt;
%Datos iniciales&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=4;&lt;br /&gt;
y0=0.01;&lt;br /&gt;
h=0.1;&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=10;&lt;br /&gt;
&lt;br /&gt;
%Cálculo de subintervalos&lt;br /&gt;
N=round((tN-t0)/h);&lt;br /&gt;
t=t0:h:tN;&lt;br /&gt;
&lt;br /&gt;
%Creamos el vector donde vamos a guardar las soluciones&lt;br /&gt;
y=zeros(1,N+1);&lt;br /&gt;
y(1)=y0;&lt;br /&gt;
&lt;br /&gt;
%Euler&lt;br /&gt;
for i=1:N;&lt;br /&gt;
    y(i+1)=y(i)+h*(1.01*y(i)-(y(i)).^2);&lt;br /&gt;
end&lt;br /&gt;
%Tabla de Resultados&lt;br /&gt;
[t',y']&lt;br /&gt;
x=1.01-y;&lt;br /&gt;
hold on &lt;br /&gt;
plot(t,y,'r')&lt;br /&gt;
plot(t,x,'b')&lt;br /&gt;
hold off&lt;br /&gt;
legend('Sustancia B: y(t)','Sustancia A: x(t)','Location','best');&lt;br /&gt;
xlabel('Tiempo (s)')&lt;br /&gt;
ylabel('Concentración (mol/l)')&lt;br /&gt;
grid on&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
=== Método del trapecio ===&lt;br /&gt;
&lt;br /&gt;
Vamos a aplicar un método de integración numérica conocido como el Método del Trapecio por aproximar el valor de la integral al del área de un trapecio. Su expresión matemática es:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;  PVI =   &lt;br /&gt;
\begin{cases}&lt;br /&gt;
 y_0 \\&lt;br /&gt;
 y_{n+1}  =  y_n + \frac{h}{2}*(f(t_n,y_n)+f(t_{n+1},y_{n+1}))\\&lt;br /&gt;
\end{cases}\quad&lt;br /&gt;
   &amp;lt;/math&amp;gt;&lt;br /&gt;
   &lt;br /&gt;
Introducimos esta expresión en el código y obtenemos la gráfica de la solución.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Trapeciografica.png|400px|miniaturadeimagen|derecha|Representación gráfica y(t). Método del Trapecio]]&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
%Método del Trapecio&lt;br /&gt;
clc&lt;br /&gt;
&lt;br /&gt;
%Datos iniciales&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=4;&lt;br /&gt;
y0=0.01;&lt;br /&gt;
h=0.1;&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=10;&lt;br /&gt;
&lt;br /&gt;
%Cálculo de subintervalos&lt;br /&gt;
N=round((tN-t0)/h);&lt;br /&gt;
t=t0:h:tN;&lt;br /&gt;
&lt;br /&gt;
%Creamos el vector donde vamos a guardar las soluciones&lt;br /&gt;
y=zeros(1,N+1);&lt;br /&gt;
y(1)=y0;&lt;br /&gt;
&lt;br /&gt;
for i=1:N&lt;br /&gt;
y(i+1)=(((1-(h/2)*1.01)-sqrt(((1-(h/2)*1.01)^2)+4*(h/2)*((1+(h/2)*1.01)*y(i)-(h/2)*(y(i))^2)))/-h);&lt;br /&gt;
end&lt;br /&gt;
%Sacamos la tabla de resultados&lt;br /&gt;
[t',y']&lt;br /&gt;
x=1.01-y;&lt;br /&gt;
%Gráfico&lt;br /&gt;
hold on&lt;br /&gt;
plot(t,y,'r')&lt;br /&gt;
plot(t,x,'b')&lt;br /&gt;
legend('Sustancia B: y(t)','Sustancia A: x(t)','Location','best');&lt;br /&gt;
xlabel('Tiempo (s)')&lt;br /&gt;
ylabel('Concentración (mol/l)')&lt;br /&gt;
grid on&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
=== Método de Runge-Kutta ===&lt;br /&gt;
&lt;br /&gt;
El método de resolución numérica de Runge-Kutta, involucra un gran número de parámetros. Para simplificar la implementación de este método en Matlab, utilizaremos la función ''inline'', con la que declararemos previamente la función algebraica necesaria para el cálculo de los parámetros &amp;lt;math&amp;gt;k_i&amp;lt;/math&amp;gt;, ahorrándonos tener que escribir innumerables veces la correspondiente expresión matemática.&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
A continuación, detallamos la función &amp;lt;math&amp;gt;f(y)&amp;lt;/math&amp;gt; de la que dependerán los valores de los parámetros &amp;lt;math&amp;gt;k_i&amp;lt;/math&amp;gt;:&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;f(y)=y'(t)=1.01y(t)-y(t)^2&lt;br /&gt;
&lt;br /&gt;
\quad \Rightarrow \quad&lt;br /&gt;
&lt;br /&gt;
\begin{cases}&lt;br /&gt;
 k_1 &amp;amp; =  f(y_i) \\&lt;br /&gt;
 k_2 &amp;amp; =  f(y_i + {1 \over 2}k_1h) \\&lt;br /&gt;
 k_3 &amp;amp; =  f(y_i + \frac{1}{2}k_2h) \\&lt;br /&gt;
 k_4 &amp;amp; =  f(y_i + k_3h) \\&lt;br /&gt;
\end{cases}\quad [h=0.1]&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Entonces el método RK4 para este problema está dado por la siguiente ecuación:&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;y_{i+1} = y_{i} + {1 \over 6}h(k_1+2k_2+2k_3+k_4)&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Mediante el siguiente programa en Matlab calculamos numéricamente la solución y la representamos en un gráfico:&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Archivo:RK4II.png|400px|miniaturadeimagen|derecha|Representación gráfica y(t). Método Runge-Kutta]]&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
%Método de Runge-Kutta&lt;br /&gt;
clc&lt;br /&gt;
&lt;br /&gt;
%Función f(t)=y'(t)&lt;br /&gt;
fy=inline('1.01*y-y^2','y');&lt;br /&gt;
&lt;br /&gt;
%Datos del problema&lt;br /&gt;
y0=0.01;&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=10;&lt;br /&gt;
h=0.1;&lt;br /&gt;
&lt;br /&gt;
%Variable independiente (t)&lt;br /&gt;
t=t0:h:tN;&lt;br /&gt;
&lt;br /&gt;
%Variable dependiente (y)&lt;br /&gt;
y=zeros(1,length(t));&lt;br /&gt;
y(1)=y0;&lt;br /&gt;
&lt;br /&gt;
for i=1:length(t)-1&lt;br /&gt;
    k1=fy(y(i));&lt;br /&gt;
    k2=fy(y(i)+k1/2*h);&lt;br /&gt;
    k3=fy(y(i)+k2/2*h);&lt;br /&gt;
    k4=fy(y(i)+k3*h);&lt;br /&gt;
    y(i+1)=y(i)+h/6*(k1+2*k2+2*k3+k4);&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
%Variable dependiente (x)&lt;br /&gt;
x=1.01-y;&lt;br /&gt;
&lt;br /&gt;
%Representación gráfica&lt;br /&gt;
hold on&lt;br /&gt;
plot(t,x,'b')&lt;br /&gt;
plot(t,y,'r')&lt;br /&gt;
legend('Sustancia A: x(t)','Sustancia B: y(t)')&lt;br /&gt;
xlabel('Tiempo (s)')&lt;br /&gt;
ylabel('Concentración (mol/l)')&lt;br /&gt;
grid on&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
=== Comparación de métodos===&lt;br /&gt;
&lt;br /&gt;
Podemos observar fácilmente que las gráficas obtenidas con los diferentes métodos son iguales a primera vista. Sin embargo, superponiéndolas queda patente que no son exactamente iguales debido a que los métodos no poseen la misma precisión y , al operar todos con la misma longitud de paso, unos aproximan la solución exacta mejor que otros. Así se observa en estas imágenes:&lt;br /&gt;
&lt;br /&gt;
[[Archivo:comparativa1.jpg|400px|miniaturadeimagen|izquierda|Comparación de métodos]]&lt;br /&gt;
[[Archivo:comparativa2.jpg|400px|miniaturadeimagen|derecha|Comparación de métodos]]&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
Como podemos comprobar en las imágenes, el método de Euler es menos preciso que el del trapecio o el de Runge-Kutta.&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Resolución en forma de sistema de ecuaciones ==&lt;br /&gt;
&lt;br /&gt;
A continuación vamos a plantear el problema de valor inicial con un sistema no lineal de dos ecuaciones equivalente al problema resuelto anteriormente.&lt;br /&gt;
&lt;br /&gt;
Estas ecuaciones serán:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;(PVI)&lt;br /&gt;
\begin{cases}&lt;br /&gt;
    y'(t)=k_1 x(t)y(t) \\&lt;br /&gt;
    x'(t)=-k_1 x(t)y(t) \\&lt;br /&gt;
    \\&lt;br /&gt;
    x(0)=1 \\&lt;br /&gt;
    y(0) = 0.01&lt;br /&gt;
\end{cases}&lt;br /&gt;
\quad t\in[0,10]&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Resolveremos el problema por el método de Euler y por el método de Runge-Kutta, plasmando las soluciones en gráficos.&lt;br /&gt;
&lt;br /&gt;
=== Método de Euler ===&lt;br /&gt;
&lt;br /&gt;
En este caso aplicaremos en el siguiente código la expresión para EDO a cada una de las ecuaciones que conforma el sistema, obteniendo la correspondiente gráfica.&lt;br /&gt;
 &lt;br /&gt;
[[Archivo:SistEuler.png|400px|miniaturadeimagen|derecha|Representación gráfica de las concentraciones de A y B. Resolución del sistema por Euler]]&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
&lt;br /&gt;
%Resolución del sistema por el método de Euler&lt;br /&gt;
&lt;br /&gt;
clear all&lt;br /&gt;
&lt;br /&gt;
%Definimos el vector de la variable independiente, el número de&lt;br /&gt;
%subintervalos y la longitud de paso&lt;br /&gt;
&lt;br /&gt;
t0 = 0;&lt;br /&gt;
tN = 10;&lt;br /&gt;
h = 0.1;&lt;br /&gt;
t = t0:h:tN&lt;br /&gt;
N = (tN-t0)/h;&lt;br /&gt;
&lt;br /&gt;
%Definimos los vectores de las variables dependientes&lt;br /&gt;
&lt;br /&gt;
x = zeros(1, N+1);&lt;br /&gt;
y = zeros(1, N+1);&lt;br /&gt;
&lt;br /&gt;
x(1) = 1;&lt;br /&gt;
y(1) = 0.01;&lt;br /&gt;
&lt;br /&gt;
for i = 1:N&lt;br /&gt;
    &lt;br /&gt;
    x(i+1)=x(i)+h*(-x(i).*y(i));&lt;br /&gt;
    y(i+1)=y(i)+h*(y(i).*x(i));&lt;br /&gt;
    &lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
%Representamos gráficamente las soluciones&lt;br /&gt;
&lt;br /&gt;
hold on&lt;br /&gt;
&lt;br /&gt;
plot(t,x,'b');&lt;br /&gt;
plot(t,y,'r');&lt;br /&gt;
grid on&lt;br /&gt;
&lt;br /&gt;
legend('Sustancia A: x(t)','Sustancia B: y(t)')&lt;br /&gt;
xlabel('Tiempo (s)')&lt;br /&gt;
ylabel('Concentración (mol/l)')&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
hold off&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
}}&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Método de Runge-Kutta===&lt;br /&gt;
&lt;br /&gt;
El método de resolución numérica de Runge-Kutta, involucra un gran número de parámetros. Para simplificar la implementación de este método en Matlab, el sistema se tratará como una matriz &amp;lt;math&amp;gt;z&amp;lt;/math&amp;gt;. Además, utilizaremos la función ''inline'', con la que declararemos previamente la función algebraica necesaria para el cálculo de los parámetros &amp;lt;math&amp;gt;k_i&amp;lt;/math&amp;gt;, ahorrándonos tener que escribir innumerables veces la correspondiente expresión matemática.&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Primero, expresamos el sistema en forma matricial:&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;(PVI)\begin{cases}&lt;br /&gt;
    x'(t)=-k_1 x(t)y(t) \\&lt;br /&gt;
    y'(t)=k_1 x(t)y(t) \\&lt;br /&gt;
    \\&lt;br /&gt;
    x(0)=1 \\&lt;br /&gt;
    y(0) = 0.01&lt;br /&gt;
\end{cases}\quad t\in[0,10]&lt;br /&gt;
&lt;br /&gt;
\quad \Rightarrow \quad k_1=1\quad \Rightarrow \quad&lt;br /&gt;
&lt;br /&gt;
(PVI)\begin{cases}\vec{z}'(t)=&lt;br /&gt;
   \begin{bmatrix}&lt;br /&gt;
      x'(t) \\&lt;br /&gt;
      y'(t) \\&lt;br /&gt;
   \end{bmatrix}&lt;br /&gt;
=&lt;br /&gt;
      \begin{bmatrix}&lt;br /&gt;
      -x(t)y(t) \\&lt;br /&gt;
      x(t)y(t) \\&lt;br /&gt;
   \end{bmatrix}&lt;br /&gt;
&lt;br /&gt;
 \\ \\ \vec{z}(0)=&lt;br /&gt;
   \begin{bmatrix}&lt;br /&gt;
      x(0) \\&lt;br /&gt;
      y(0) \\&lt;br /&gt;
   \end{bmatrix}&lt;br /&gt;
=&lt;br /&gt;
      \begin{bmatrix}&lt;br /&gt;
      1 \\&lt;br /&gt;
      0.01 \\&lt;br /&gt;
   \end{bmatrix}&lt;br /&gt;
\end{cases}\quad t\in[0,10]&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
A continuación, detallamos la función &amp;lt;math&amp;gt;\vec{F}&amp;lt;/math&amp;gt; de la que dependerán los valores de los parámetros &amp;lt;math&amp;gt;k_i&amp;lt;/math&amp;gt;:&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;\vec{F}(x,y)=\vec{F}(\vec{z})=&lt;br /&gt;
&lt;br /&gt;
\begin{bmatrix}&lt;br /&gt;
    f(\vec{z}) \\&lt;br /&gt;
    g(\vec{z}) \\&lt;br /&gt;
\end{bmatrix}=&lt;br /&gt;
&lt;br /&gt;
\begin{bmatrix}&lt;br /&gt;
    x'(t) \\&lt;br /&gt;
    y'(t) \\&lt;br /&gt;
\end{bmatrix}=&lt;br /&gt;
&lt;br /&gt;
\vec{z}'(t)=&lt;br /&gt;
&lt;br /&gt;
\begin{bmatrix}&lt;br /&gt;
    -x(t)y(t) \\&lt;br /&gt;
    x(t)y(t) \\&lt;br /&gt;
\end{bmatrix}&lt;br /&gt;
\quad \Rightarrow \quad&lt;br /&gt;
&lt;br /&gt;
\begin{cases}&lt;br /&gt;
 [\vec{k_1}] &amp;amp; =  F(\vec{z}_i) \\&lt;br /&gt;
 [\vec{k_2}] &amp;amp; =  F(\vec{z}_i + {1 \over 2}k_1h) \\&lt;br /&gt;
 [\vec{k_3}] &amp;amp; =  F(\vec{z}_i + \frac{1}{2}k_2h) \\&lt;br /&gt;
 [\vec{k_4}] &amp;amp; =  F(\vec{z}_i + k_3h) \\&lt;br /&gt;
\end{cases}\quad [h=0.1]&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Entonces el método RK4 para este problema está dado por la siguiente ecuación:&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;\vec{z}_{i+1} = \vec{z}_{i} + {1 \over 6}h(\vec{k_1}+2\vec{k_2}+2\vec{k_3}+\vec{k_4})&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Mediante el siguiente programa en Matlab calculamos numéricamente la solución y la representamos en un gráfico:&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Archivo:sistema_RK4.png|400px|miniaturadeimagen|derecha|Representación gráfica de las concentraciones de A y B. Resolución del sistema por Runge-Kutta]]&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
%Método de Runge-Kutta&lt;br /&gt;
clc&lt;br /&gt;
&lt;br /&gt;
%Función F=[x'(t); y'(t)]&lt;br /&gt;
F=inline('[-z(1)*z(2);z(1)*z(2)]','z');&lt;br /&gt;
&lt;br /&gt;
%Datos del problema &lt;br /&gt;
x0=1;&lt;br /&gt;
y0=0.01;&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=10;&lt;br /&gt;
h=0.1;&lt;br /&gt;
&lt;br /&gt;
%Vector de variable independiente (t)&lt;br /&gt;
t=t0:h:tN;&lt;br /&gt;
&lt;br /&gt;
%Matriz de variables dependientes z=[x;y]&lt;br /&gt;
z=zeros(2,length(t));&lt;br /&gt;
z(:,1)=[x0;y0];&lt;br /&gt;
&lt;br /&gt;
for i = 1:length(t)-1&lt;br /&gt;
    k1=F(z(:,i));&lt;br /&gt;
    k2=F(z(:,i)+k1.*h/2);&lt;br /&gt;
    k3=F(z(:,i)+k2.*h/2);&lt;br /&gt;
    k4=F(z(:,i)+k3.*h);&lt;br /&gt;
    z(:,i+1)=z(:,i)+h/6.*(k1+2.*k2+2.*k3+k4);&lt;br /&gt;
end&lt;br /&gt;
 &lt;br /&gt;
%Representación gráfica&lt;br /&gt;
hold on&lt;br /&gt;
plot(t,z(1,:))&lt;br /&gt;
plot(t,z(2,:),'r')&lt;br /&gt;
legend('Sustancia A: x(t)','Sustancia B: y(t)')&lt;br /&gt;
xlabel('Tiempo (s)')&lt;br /&gt;
ylabel('Concentración (mol/l)')&lt;br /&gt;
grid on&lt;br /&gt;
%hold off&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
== Interpretación de las gráficas ==&lt;br /&gt;
&lt;br /&gt;
Como cabía esperar, obtenemos la misma solución resolviendo el problema como sistema o como EDO. Podemos observar por los resultados obtenidos que la velocidad de aparición de B es igual a la velocidad de desaparición de A (como dicta el principio de conservación de la masa), que A acaba desapareciendo prácticamente por completo y que la concentración de B termina por estabilizarse alrededor de 1 mol/l. Ambos compuestos alcanzan los extremos de sus concentraciones en el mismo instante de tiempo&lt;br /&gt;
&lt;br /&gt;
También cabe destacar que cuando el tiempo transcurrido alcanza 4,5 segundos las concentraciones de ambos compuestos son las mismas.&lt;br /&gt;
&lt;br /&gt;
= Reacción II =&lt;br /&gt;
&lt;br /&gt;
En este apartado vamos a estudiar la reacción propuesta por Alfred J. Lotka en 1920, que es la siguiente:&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt; A + X →_{k1} 2X;&amp;lt;/math&amp;gt;     :&amp;lt;math&amp;gt; X + Y →_{k2} 2Y;&amp;lt;/math&amp;gt;     :&amp;lt;math&amp;gt;Y →_{k3} 2B  &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Como se puede observar, se trata de una reacción compleja integrada por 3 reacciones simples (las dos primeras autocatalíticas) en las que intervienen un total de 4 compuestos, A, B, X e Y. Siguiendo el desarrollo de la reacción, es lógico suponer que A se agotará al comienzo de la reacción, que los máximos de concentración de X e Y se darán en los estados intermedios y que al final el compuesto B será el único restante, siendo el producto final de la reacción.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Interpretación del problema y deducción de las ecuaciones diferenciales ==&lt;br /&gt;
&lt;br /&gt;
Para averiguar cómo evolucionan las concentraciones de los cuatro compuestos durante el desarrollo de la reacción necesitaremos obtener cuatro ecuaciones diferenciales. Para ello nos volveremos a basar en los principios físicos que ya empleamos en la anterior reacción. Definimos A(t), x(t), y(t), y B(t) (A, x, y, B; para ahorrar notación) a las concentraciones de A, X, Y, y B, respectivamente. &lt;br /&gt;
&lt;br /&gt;
En primer lugar aplicamos el Principio de Conservación de la masa, que establece que la suma de las concentraciones de los compuestos es constante (no desaparece masa en el proceso), lo que derivando nos indica que:&lt;br /&gt;
&lt;br /&gt;
: &amp;lt;math&amp;gt; A' + x' + y' + B' = 0 \quad\quad(I)&amp;lt;/math&amp;gt;       &lt;br /&gt;
&lt;br /&gt;
A continuación aplicaremos la Ley de Acción de Masas (velocidad de reacción proporcional al producto de la concentración de los reactivos).&lt;br /&gt;
&lt;br /&gt;
Aplicando esta ley a la última reacción simple obtenemos que: &lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;B'=k_3y \quad\quad(II)&amp;lt;/math&amp;gt;        &lt;br /&gt;
&lt;br /&gt;
En el caso de las concentraciones de X e Y las expresiones resultantes son algo más complicadas ya que estos dos compuestos actúan como reactivos y productos en más de una reacción simple, por lo que la variación de sus concentraciones será la suma de las variaciones de las reacciones en las que aparezcan:&lt;br /&gt;
&lt;br /&gt;
: &amp;lt;math&amp;gt; x' = x'_{1} + x'_{2} → x' = k_{1}Ax - k{2}xy \quad\quad(III)&amp;lt;/math&amp;gt;        &lt;br /&gt;
: &amp;lt;math&amp;gt; y' = y'_{2} + y'_{3} → y' = k_{2}xy − k_3{y} \quad\quad(IV)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Por último sustituimos (II), (III) y (IV) en (I) obteniendo: &lt;br /&gt;
&lt;br /&gt;
: &amp;lt;math&amp;gt; A' + k_{1}Ax - k{2}xy + k_{2}xy − k_3{y}+ k_3y= 0 : &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
De donde obtenemos que:&lt;br /&gt;
&lt;br /&gt;
: &amp;lt;math&amp;gt; A' = -k_{1}Ax &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Ahora que ya tenemos las variaciones de concentración de los compuestos en función de las concentraciones podemos aplicar métodos numéricos que nos lleven a una solución aproximada.&lt;br /&gt;
&lt;br /&gt;
== Resolución numérica del sistema de ecuaciones ==&lt;br /&gt;
&lt;br /&gt;
Una vez obtenidas las ecuaciones y conociendo las condiciones iniciales y los valores de las constantes podemos plantear el problema de valor inicial para luego resolverlo.&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;(PVI)&lt;br /&gt;
\begin{cases}&lt;br /&gt;
    A' = -k_{1}Ax\\&lt;br /&gt;
    x' = k_{1}Ax - k{2}xy\\&lt;br /&gt;
    y' = k_{2}xy − k_3{y}\\&lt;br /&gt;
    B'=k_3y \\&lt;br /&gt;
\\&lt;br /&gt;
    A(0)=5  \\&lt;br /&gt;
    x(0)=5*10^{-4} \\&lt;br /&gt;
    y(0)=10^{-5}\\&lt;br /&gt;
    B(0)=0 \\&lt;br /&gt;
\end{cases}&lt;br /&gt;
\quad t\in[0,200]&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Siendo &amp;lt;math&amp;gt; k_{1}=K_{2}=2k_{3}=0.1 &amp;lt;/math&amp;gt; y las unidades de la concentración mol/l.&lt;br /&gt;
&lt;br /&gt;
=== Método de Euler ===&lt;br /&gt;
&lt;br /&gt;
Aplicamos el método de Euler de forma análoga a como lo hicimos en [[Reacciones_con_autocatálisis._Grupo_D12#Método_de_Euler_2|apartado 2.5.1]]&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Euler lotka0.01.png|400px|miniaturadeimagen|derecha|Representación gráfica de las concentraciones de A, B, X, e Y a lo largo del tiempo. Resoluciónd delsistema por el método de Euler con longitud de paso h=0.01]] &lt;br /&gt;
[[Archivo:Euler lotka0.001.png|400px|miniaturadeimagen|derecha|Representación gráfica de las concentraciones de A, B, X, e Y a lo largo del tiempo. Resoluciónd delsistema por el método de Euler con longitud de paso h=0.001]]&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
&lt;br /&gt;
%Resolución del sistema de la reacción de Lotka por el método de Euler&lt;br /&gt;
&lt;br /&gt;
clear all&lt;br /&gt;
&lt;br /&gt;
%Definimos la variable independiente y establecemos los datos del problema&lt;br /&gt;
%de valor inicial. Para la longitud de paso h introducimos en primer lugar&lt;br /&gt;
%0.01 y luego 0.001&lt;br /&gt;
&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=200;&lt;br /&gt;
h= input('Introduzca una longitud de paso ');&lt;br /&gt;
t = t0:h:tN;&lt;br /&gt;
N=(tN-t0)/h;&lt;br /&gt;
k1 = 0.1;&lt;br /&gt;
k2 = 0.1;&lt;br /&gt;
k3 = 0.05;&lt;br /&gt;
A0 = 5;&lt;br /&gt;
B0 = 0;&lt;br /&gt;
X0 = 5*10^(-4);&lt;br /&gt;
Y0 = 10^(-5);&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
%Definimos las variables dependientes.&lt;br /&gt;
&lt;br /&gt;
A = zeros(1, N-1);&lt;br /&gt;
B = A;&lt;br /&gt;
X = A;&lt;br /&gt;
Y = A;&lt;br /&gt;
&lt;br /&gt;
A(1) = A0;&lt;br /&gt;
B(1) = B0;&lt;br /&gt;
X(1) = X0;&lt;br /&gt;
Y(1) = Y0;&lt;br /&gt;
&lt;br /&gt;
for i = 1:N&lt;br /&gt;
    &lt;br /&gt;
    X(i+1) = X(i) + h*(k1*A(i)*X(i)-k2*Y(i)*X(i));&lt;br /&gt;
    Y(i+1)=Y(i)+h.*(k2.*X(i).*Y(i)-k3.*Y(i));&lt;br /&gt;
    B(i+1) = B(i) + h*(k3*Y(i));&lt;br /&gt;
    A(i+1) = A(i) + h*(-k1*A(i)*X(i));&lt;br /&gt;
   &lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
%Representamos gráficamente la solución&lt;br /&gt;
&lt;br /&gt;
hold on&lt;br /&gt;
&lt;br /&gt;
plot (t,A,'b')&lt;br /&gt;
plot(t, X, 'r')&lt;br /&gt;
plot(t,Y, 'g')&lt;br /&gt;
plot(t, B, 'm')&lt;br /&gt;
legend('Sustancia A: A(t)','Sustancia X: x(t)','Sustancia Y: y(t)','Sustancia B: B(t)','Location','Best')&lt;br /&gt;
xlabel('Tiempo (s)')&lt;br /&gt;
ylabel('Concentración (mol/l)')&lt;br /&gt;
grid on&lt;br /&gt;
&lt;br /&gt;
hold off&lt;br /&gt;
&lt;br /&gt;
}}&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
A continuación tendremos que comprobar si el método es estable. &amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
Un método es estable cuando el error local es pequeño y además este error no se amplifica a lo largo del tiempo. Para calificar la estabilidad del método de Euler resolveremos el sistema anterior con este método, con pasos &amp;quot;h=0.01&amp;quot; y &amp;quot;h=0.001&amp;quot;, y lo compararemos con la resolución del sistema con el método de Heun, que se asemeja más a la solución exacta.&amp;lt;br /&amp;gt;&lt;br /&gt;
En la comparación representaremos en azul el método de Heun y en rojo el método de Euler.&amp;lt;br /&amp;gt;&lt;br /&gt;
Para &amp;quot;h=0.01&amp;quot; tenemos lo siguiente:&lt;br /&gt;
[[Archivo:1estabilidad123.jpg|400px|miniaturadeimagen|izquierda|Comparación entre Método de Heun (Azul) con el Método de Euler con paso h=0.01 (Rojo)]] &lt;br /&gt;
[[Archivo:1estabilidad321.jpg|400px|miniaturadeimagen|derecha|Comparación entre Método de Heun (Azul) con el Método de Euler con paso h=0.01 (Rojo)]] &lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
Para &amp;quot;h=0.001&amp;quot; tenemos lo siguiente:&lt;br /&gt;
[[Archivo:2estabilidad123.jpg|400px|miniaturadeimagen|izquierda|Comparación entre Método de Heun (Azul) con el Método de Euler con paso h=0.001 (Rojo)]] &lt;br /&gt;
[[Archivo:2estabilidad321.jpg|400px|miniaturadeimagen|derecha|Comparación entre Método de Heun (Azul) con el Método de Euler con paso h=0.001 (Rojo)]]&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
Como podemos ver en las imágenes de los dos procesos las gráficas se superponen y no se aprecian diferencias hasta que no ampliamos la imagen. Y esto sucede en todo momento con lo que podemos garantizar que en este caso el método de Euler es estable para los pasos que hemos usado.&lt;br /&gt;
&lt;br /&gt;
=== Método de Heun ===&lt;br /&gt;
&lt;br /&gt;
Si bien el método de resolución numérica de Heun no involucra un número de parámetros tan notable como el método de Runge-Kutta, en este caso tenemos un sistema de 4 ecuaciones diferenciales, por lo que, en aras de simplificar, utilizaremos el mismo criterio que en el [[Reacciones_con_autocatálisis._Grupo_D12#Método_de_Runge-Kutta_2|apartado 2.5.2]].: El sistema se tratará como una matriz &amp;lt;math&amp;gt;z&amp;lt;/math&amp;gt;, y para la obtención de los parámetros &amp;lt;math&amp;gt;k_i&amp;lt;/math&amp;gt; utilizaremos la función ''inline'', con la que declararemos previamente las expresiones necesarias para el cálculo de los parámetros &amp;lt;math&amp;gt;k_i&amp;lt;/math&amp;gt;.&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Primero, expresamos el sistema en forma matricial:&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;(PVI)\begin{cases}&lt;br /&gt;
A'(t)=-k_1 A(t)x(t) \\&lt;br /&gt;
x'(t)=k_1 A(t)x(t)-k_2 x(t)y(t) \\&lt;br /&gt;
y'(t)=k_2 x(t)y(t)-k_3 y(t) \\&lt;br /&gt;
B'(t)=k_3 x(t)y(t) \\ \\&lt;br /&gt;
A(0)=5 \\&lt;br /&gt;
x(0)=5·10^{-4} \\&lt;br /&gt;
y(0)=10^{-5} \\&lt;br /&gt;
B(0) = 0&lt;br /&gt;
\end{cases}\quad t\in[0,200]&lt;br /&gt;
&lt;br /&gt;
\quad \Rightarrow \quad&lt;br /&gt;
&lt;br /&gt;
\begin{cases}&lt;br /&gt;
k_1=0.1 \\&lt;br /&gt;
k_2=0.1 \\&lt;br /&gt;
k_3=0.05 \\&lt;br /&gt;
&lt;br /&gt;
\end{cases}&lt;br /&gt;
&lt;br /&gt;
\quad \Rightarrow \quad&lt;br /&gt;
&lt;br /&gt;
(PVI)\begin{cases}\vec{z}'(t)=&lt;br /&gt;
   \begin{bmatrix}&lt;br /&gt;
      A'(t) \\&lt;br /&gt;
      x'(t) \\&lt;br /&gt;
      y'(t) \\&lt;br /&gt;
      B'(t) \\&lt;br /&gt;
   \end{bmatrix}&lt;br /&gt;
=&lt;br /&gt;
      \begin{bmatrix}&lt;br /&gt;
      -0.1 A(t)x(t) \\&lt;br /&gt;
      0.1 A(t)x(t)-0.1 x(t)y(t) \\&lt;br /&gt;
      0.1 x(t)y(t)-0.05 y(t) \\&lt;br /&gt;
      0.05 y(t)x(t)\\&lt;br /&gt;
   \end{bmatrix}&lt;br /&gt;
&lt;br /&gt;
 \\ \\ \vec{z}(0)=&lt;br /&gt;
   \begin{bmatrix}&lt;br /&gt;
      A(0) \\&lt;br /&gt;
      x(0) \\&lt;br /&gt;
      y(0) \\&lt;br /&gt;
      B(0) \\&lt;br /&gt;
   \end{bmatrix}&lt;br /&gt;
=&lt;br /&gt;
      \begin{bmatrix}&lt;br /&gt;
      5 \\&lt;br /&gt;
      5·10^{-4} \\&lt;br /&gt;
      10^{-5} \\&lt;br /&gt;
      0&lt;br /&gt;
   \end{bmatrix}&lt;br /&gt;
\end{cases}\quad t\in[0,200]&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
A continuación, detallamos la función &amp;lt;math&amp;gt;\vec{F}&amp;lt;/math&amp;gt; de la que dependerán los valores de los parámetros &amp;lt;math&amp;gt;k_i&amp;lt;/math&amp;gt;:&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;\vec{F}(A,x,y,B)=\vec{F}(\vec{z})=&lt;br /&gt;
\begin{bmatrix}&lt;br /&gt;
    f(\vec{z}) \\ &lt;br /&gt;
    g(\vec{z}) \\ &lt;br /&gt;
    h(\vec{z}) \\ &lt;br /&gt;
    i(\vec{z}) \\ &lt;br /&gt;
\end{bmatrix}=&lt;br /&gt;
\begin{bmatrix}&lt;br /&gt;
    A'(t) \\&lt;br /&gt;
    x'(t) \\&lt;br /&gt;
    y'(t) \\&lt;br /&gt;
    B'(t) \\&lt;br /&gt;
\end{bmatrix}=&lt;br /&gt;
\vec{z}'(t)=&lt;br /&gt;
      \begin{bmatrix}&lt;br /&gt;
      -0.1 A(t)x(t) \\&lt;br /&gt;
      0.1 A(t)x(t)-0.1 x(t)y(t) \\&lt;br /&gt;
      0.1 x(t)y(t)-0.05 y(t) \\&lt;br /&gt;
      0.05 y(t)x(t)\\&lt;br /&gt;
   \end{bmatrix}&lt;br /&gt;
&lt;br /&gt;
\quad \Rightarrow \quad &lt;br /&gt;
&lt;br /&gt;
\begin{cases}&lt;br /&gt;
 [\vec{k_1}] &amp;amp; =  F(\vec{z}_i) \\&lt;br /&gt;
 [\vec{k_2}] &amp;amp; =  F(\vec{z}_i + {1 \over 2}k_1h) \\&lt;br /&gt;
\end{cases}\quad [h=0.01]&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Entonces el método de Heun para este problema está dado por la siguiente ecuación:&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;\vec{z}_{i+1} = \vec{z}_{i} + {1 \over 2}h(\vec{k_1}+\vec{k_2})&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Mediante el siguiente programa en Matlab calculamos numéricamente la solución y la representamos en un gráfico:&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Archivo:AXYBRK4.png|400px|miniaturadeimagen|derecha|Representación gráfica de las concentraciones de A,X,Y y B. Resolución del sistema por Heun]]&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
%Método de Heun&lt;br /&gt;
clc&lt;br /&gt;
&lt;br /&gt;
%Función F=[A'(t);x'(t); y'(t);B'(t)]&lt;br /&gt;
F=inline('0.1.*[-z(1)*z(2);z(1)*z(2)-z(2)*z(3);z(2)*z(3)-z(3)/2;z(3)/2]','z');&lt;br /&gt;
&lt;br /&gt;
%Datos del problema&lt;br /&gt;
A0=5;&lt;br /&gt;
x0=5*10^-4;&lt;br /&gt;
y0=10^(-5);&lt;br /&gt;
B0=0;&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=200;&lt;br /&gt;
h=0.1;&lt;br /&gt;
&lt;br /&gt;
%Vector de variable independiente (t)&lt;br /&gt;
t=t0:h:tN;&lt;br /&gt;
&lt;br /&gt;
%Matriz de variables dependientes z=[A;x;y;B]&lt;br /&gt;
z=zeros(4,length(t));&lt;br /&gt;
z(:,1)=[A0;x0;y0;B0];&lt;br /&gt;
&lt;br /&gt;
for i = 1:length(t)-1&lt;br /&gt;
    k1=F(z(:,i));&lt;br /&gt;
    k2=F(z(:,i)+k1.*h/2);&lt;br /&gt;
    z(:,i+1)=z(:,i)+h/2.*(k1+k2);&lt;br /&gt;
end&lt;br /&gt;
 &lt;br /&gt;
%Representación gráfica&lt;br /&gt;
hold on&lt;br /&gt;
plot(t,z(1,:),'b')&lt;br /&gt;
plot(t,z(2,:),'r')&lt;br /&gt;
plot(t,z(3,:),'g')&lt;br /&gt;
plot(t,z(4,:),'m')&lt;br /&gt;
legend('Sustancia A: A(t)','Sustancia X: x(t)','Sustancia Y: y(t)','Sustancia B: B(t)','Location','Best')&lt;br /&gt;
xlabel('Tiempo (s)')&lt;br /&gt;
ylabel('Concentración (mol/l)')&lt;br /&gt;
grid on&lt;br /&gt;
hold off&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
== Interpretación de las gráficas == &lt;br /&gt;
 &lt;br /&gt;
El proceso comienza con el predominio absoluto del compuesto A en la concentración total, siendo la presencia de los otros tres compuestos despreciable. Durante los primeros segundos la situación apenas cambia, pero tras los diez primeros segundos la concentración de A cae bruscamente mientras que la concentración de X aumenta a la misma velocidad; antes de llegar a los veinte segundos transcurridos las concentraciones de ambos compuestos se igualan y otros quince segundos más tarde el compuesto A  prácticamente ha desaparecido y el X ha alcanzado su concentración máxima (5 mol/litro).&lt;br /&gt;
&lt;br /&gt;
Es entonces cuando concluye la primera reacción y comienzan las otras dos, al no haber más compuesto A que cree compuesto X. La velocidad de aparición de Y es inicialmente mayor que la de B, superando al poco tiempo en concentración a la sustancia X. Sin embargo, llega un momento en el que la concentración de X es tan baja que se ralentiza la creación de Y y pronto empieza a disminuir su concentración tras alcanzar un máximo en torno a los 56 segundos, perdiendo peso la segunda reacción en beneficio de la tercera.&lt;br /&gt;
&lt;br /&gt;
Tras los 60 segundos de reacción el compuesto X pasa a tener una concentración despreciable, por lo que la única reacción simple que se sigue desarrollando es la tercera, destruyéndose reactivo Y y creándose producto B. La concentración de Y va reduciéndose paulatinamente hasta que en torno a los 160 segundos de reacción alcanza niveles insignificantes mientras que la concentración de B alcanza su máximo de 5 mol/litro.&lt;br /&gt;
&lt;br /&gt;
Es interesante observar que en todo momento se cumple el Principio de Conservación de la masa: la suma en cualquier momento de las concentraciones de las sustancias es 5 mol /litro. Esto es fácilmente comprobable en los momentos en que las concentraciones de A, X y B alcanzan su máximo de 5 mol/litro y el resto de concentraciones son nulas o despreciables. &lt;br /&gt;
[[Categoría:Ecuaciones Diferenciales]]&lt;br /&gt;
[[Categoría:ED14/15]]&lt;br /&gt;
[[Categoría:Trabajos 2014-15]]&lt;/div&gt;</summary>
		<author><name>Javier Ruiz de Galarreta López</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Reacciones_con_autocat%C3%A1lisis._Grupo_D12&amp;diff=29225</id>
		<title>Reacciones con autocatálisis. Grupo D12</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Reacciones_con_autocat%C3%A1lisis._Grupo_D12&amp;diff=29225"/>
				<updated>2015-03-12T10:11:40Z</updated>
		
		<summary type="html">&lt;p&gt;Javier Ruiz de Galarreta López: /* Unicidad de la solución */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{ TrabajoED | Reacciones con autocatálisis. Grupo D12 | [[:Categoría:Ecuaciones Diferenciales|Ecuaciones Diferenciales]]|[[:Categoría:ED14/15|Curso 2014-15]] | Javier Ruiz de Galarreta López, Argimiro Martínez López, Eduardo Moyano García, Alberto Rodríguez Ruiz. }}&lt;br /&gt;
&lt;br /&gt;
= Introducción: objetivos y metodología =&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
El objetivo de este trabajo es estudiar las concentraciones de los reactivos y productos de una reacción química a lo largo de la evolución en el tiempo de dicha reacción. Para ello modelizaremos el proceso empleando ecuaciones diferenciales y teniendo en cuenta la Ley de Acción de Masas y el Principio de Conservación de la materia.&lt;br /&gt;
&lt;br /&gt;
Al ser las ecuaciones y sistemas que se nos presentan de difícil resolución analítica, utilizaremos el programa informático Matlab para resolverlos mediante métodos numéricos como el de Euler, el del Trapecio, el de Runge-Kutta y el de Heun. &lt;br /&gt;
&lt;br /&gt;
Plasmaremos las soluciones en gráficos que nos permitirán dar una interpretación físico química a los resultados.&lt;br /&gt;
&lt;br /&gt;
= Reacción I =&lt;br /&gt;
&lt;br /&gt;
En primer lugar consideramos una reacción química irreversible en una solución bien mezclada, que se desarrolla para un volumen y una temperatura constantes, y en la que uno de los componentes (B, en este caso), hace de efecto catalítico.&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt; A + B →_{k1} 2B  &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Para desarrollar nuestro análisis nos apoyaremos en dos leyes físico químicas:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''Ley de acción de masas''': Enunciada por Guldberg y Waage en 1864, establece, entre otras cosas, que  la velocidad de&lt;br /&gt;
reacción es proporcional al producto de las concentraciones de los reactivos.&lt;br /&gt;
&lt;br /&gt;
'''Principio de conservación de la masa''': Establece que en una reacción química ordinaria la masa permanece constante, siendo la masa consumida de los reactivos igual a la masa obtenida de los productos. Fue elaborada independientemente por Míjail Lomonósov en 1745 y Antoine Lavoisier en 1785.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Interpretación del problema y deducción de las ecuaciones diferenciales ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Para hallar las ecuaciones diferenciales que nos describan cómo se desarrolla la reacción en el tiempo nos basaremos en las dos leyes enunciadas anteriormente. En primer lugar, definimos nuestra variable independiente como el tiempo &amp;lt;math&amp;gt;t&amp;lt;/math&amp;gt; en segundos. Las dos variables dependientes serán las concentraciones de los compuestos A y B, que denominaremos &amp;lt;math&amp;gt;x(t)&amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt;y(t)&amp;lt;/math&amp;gt;, ambas expresadas en mol/l. &lt;br /&gt;
&lt;br /&gt;
El principio de conservación de la masa expone que la suma de las concentraciones de los reactivos y los productos es constante. Esto equivale, derivando la expresión &amp;lt;math&amp;gt;x(t)+y(t)=cte&amp;lt;/math&amp;gt;, a que  desaparece tanto reactivo como producto aparece, o lo que es lo mismo, que la velocidad de aparición del producto es igual a la velocidad de desaparición (velocidad de aparición negativa) del reactivo:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;x'(t)=-y'(t)&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
La otra ecuación que necesitamos la obtenemos directamente de aplicar la Ley de acción de masas, que establece que la velocidad de la reacción (la velocidad a la que aparece el producto o desaparece el reactivo) es igual al producto de las concentraciones por una constante.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;y'(t)=k_1x(t)y(t)&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Obtención del problema de valor inicial ==&lt;br /&gt;
Una vez demostrado el origen de las ecuaciones (1) y (2) en el apartado anterior, obtendremos el problema de valor inicial (PVI) mediante las operaciones detalladas a continuación:&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;x'(t)+y'(t)=0\quad\quad(1)&amp;lt;/math&amp;gt;&lt;br /&gt;
:&amp;lt;math&amp;gt;y'(t)=k_1x(t)y(t)\quad\quad(2)&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Integrando (1) obtenemos (3):&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
:&amp;lt;math&amp;gt;\int_\mathbb{D} (\frac{dx(t)}{dt} + \frac{dy(t)}{dt})\,dt =\int_\mathbb{D} 0\,dt \quad \Rightarrow \quad x(t)+y(t)=k_2\quad \Rightarrow \quad x(t)=k_2-y(t)\quad\quad(3)&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Sustituyendo (3) en (2), obtenemos (4):&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;y'(t)=k_1x(t)y(t)\quad \Rightarrow \quad y'(t)=k_1(k_2-y(t))y(t)\quad \Rightarrow \quad y'(t)=k_1k_2y(t)-k_1y^2(t)\quad\quad(4)&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Conocemos las concentraciones iniciales de A y de B, por lo que podemos obtener el valor de la constante k&amp;lt;sub&amp;gt;2&amp;lt;/sub&amp;gt;:&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;[A]:\quad x(0)=1 mol/l;\quad\quad [B]:\quad y(0)=0,01 mol/l&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;x(t)+y(t)=k_2\quad \Rightarrow \quad x(0)+y(0)=k_2\quad \Rightarrow \quad 1+0,01=k_2\quad \Rightarrow \quad k_2=1,01&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Por último, conocemos también el valor de k&amp;lt;sub&amp;gt;1&amp;lt;/sub&amp;gt;, por lo que podremos plantear a continuación el correspondiente PVI:&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;k_1=1&amp;lt;/math&amp;gt;&lt;br /&gt;
:&amp;lt;math&amp;gt;(PVI)\begin{cases}y'(t)=1,01y(t)-y^2(t) \\ \\&lt;br /&gt;
y(0) = 0,01 \end{cases}\quad (t,y)\in[0,10]\times\mathbb{R}&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Unicidad de la solución ==&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Existencia-y-unicidad.png|200px|miniaturadeimagen|derecha|Intersección B con dominio]]&lt;br /&gt;
&lt;br /&gt;
Aplicamos a continuación el Teorema de Existencia y Unicidad:&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Sea &amp;lt;math&amp;gt;f(t,y)=y'(t) \Rightarrow f(t,y)=1.01y(t)-y^2(t)\quad&amp;lt;/math&amp;gt;, y &amp;lt;math&amp;gt;\quad\frac{\partial }{\partial y} f(t,y) = 1.01-2y(t)&amp;lt;/math&amp;gt;.&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
Sea &amp;lt;math&amp;gt;B[(t_0,y_0),r],\quad r&amp;gt;0,\quad en (t_0,y_0)=(0,0.01)&amp;lt;/math&amp;gt;.&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt; &lt;br /&gt;
&lt;br /&gt;
Y siendo &amp;lt;math&amp;gt;(t,y) \in \mathbb{D} = (\mathbb{R}^+ + {0}) \times (\mathbb{R}^+ + {0}) &amp;lt;/math&amp;gt; .&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt; &lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;f(t,y)&amp;lt;/math&amp;gt; es continua en &amp;lt;math&amp;gt; \mathbb{B}\cap \mathbb{D}\quad \Rightarrow \quad \exists  y(t)\quad /\quad y'(t)=1,01y(t)-y^2(t)&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;math&amp;gt;\frac{\partial }{\partial y} f(t,y)&amp;lt;/math&amp;gt; es continua en &amp;lt;math&amp;gt; \mathbb{B}\cap \mathbb{D}\quad \Rightarrow \quad \exists !  y(t)\quad /\quad y'(t)=1,01y(t)-y^2(t)&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Con lo que queda demostrado que el (PVI) tiene solución y además esta es única.&lt;br /&gt;
&lt;br /&gt;
== Resolución numérica del problema de valor inicial ==&lt;br /&gt;
&lt;br /&gt;
En este apartado resolveremos el problema de valor inicial planteado anteriormente con tres métodos de integración numérica: el método de Euler, el método del Trapecio y el método de Runge-Kutta de orden 4.&lt;br /&gt;
&lt;br /&gt;
=== Método de Euler ===&lt;br /&gt;
&lt;br /&gt;
El método de Euler, llamado así en honor al matemático Leonhard Euler, es un procedimiento de integración numérica. Su expresión matemática es: &lt;br /&gt;
&amp;lt;math&amp;gt;  PVI =   &lt;br /&gt;
\begin{cases}&lt;br /&gt;
 y_0 \\&lt;br /&gt;
 y_{n+1}  = y_n + h*f(t_n,y_n) \\&lt;br /&gt;
\end{cases}\quad&lt;br /&gt;
   &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
A continuación emplearemos esta expresión en un programa de Matlab para obtener una aproximación de las soluciones. El código de dicho programa es el siguiente.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Eulergrafica.png|400px|miniaturadeimagen|derecha|Representación gráfica y(t). Método de Euler]]&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
%Método de Euler&lt;br /&gt;
clc&lt;br /&gt;
&lt;br /&gt;
%Datos iniciales&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=4;&lt;br /&gt;
y0=0.01;&lt;br /&gt;
h=0.1;&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=10;&lt;br /&gt;
&lt;br /&gt;
%Cálculo de subintervalos&lt;br /&gt;
N=round((tN-t0)/h);&lt;br /&gt;
t=t0:h:tN;&lt;br /&gt;
&lt;br /&gt;
%Creamos el vector donde vamos a guardar las soluciones&lt;br /&gt;
y=zeros(1,N+1);&lt;br /&gt;
y(1)=y0;&lt;br /&gt;
&lt;br /&gt;
%Euler&lt;br /&gt;
for i=1:N;&lt;br /&gt;
    y(i+1)=y(i)+h*(1.01*y(i)-(y(i)).^2);&lt;br /&gt;
end&lt;br /&gt;
%Tabla de Resultados&lt;br /&gt;
[t',y']&lt;br /&gt;
x=1.01-y;&lt;br /&gt;
hold on &lt;br /&gt;
plot(t,y,'r')&lt;br /&gt;
plot(t,x,'b')&lt;br /&gt;
hold off&lt;br /&gt;
legend('Sustancia B: y(t)','Sustancia A: x(t)','Location','best');&lt;br /&gt;
xlabel('Tiempo (s)')&lt;br /&gt;
ylabel('Concentración (mol/l)')&lt;br /&gt;
grid on&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
=== Método del trapecio ===&lt;br /&gt;
&lt;br /&gt;
Vamos a aplicar un método de integración numérica conocido como el Método del Trapecio por aproximar el valor de la integral al del área de un trapecio. Su expresión matemática es:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;  PVI =   &lt;br /&gt;
\begin{cases}&lt;br /&gt;
 y_0 \\&lt;br /&gt;
 y_{n+1}  =  y_n + \frac{h}{2}*(f(t_n,y_n)+f(t_{n+1},y_{n+1}))\\&lt;br /&gt;
\end{cases}\quad&lt;br /&gt;
   &amp;lt;/math&amp;gt;&lt;br /&gt;
   &lt;br /&gt;
Introducimos esta expresión en el código y obtenemos la gráfica de la solución.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Trapeciografica.png|400px|miniaturadeimagen|derecha|Representación gráfica y(t). Método del Trapecio]]&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
%Método del Trapecio&lt;br /&gt;
clc&lt;br /&gt;
&lt;br /&gt;
%Datos iniciales&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=4;&lt;br /&gt;
y0=0.01;&lt;br /&gt;
h=0.1;&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=10;&lt;br /&gt;
&lt;br /&gt;
%Cálculo de subintervalos&lt;br /&gt;
N=round((tN-t0)/h);&lt;br /&gt;
t=t0:h:tN;&lt;br /&gt;
&lt;br /&gt;
%Creamos el vector donde vamos a guardar las soluciones&lt;br /&gt;
y=zeros(1,N+1);&lt;br /&gt;
y(1)=y0;&lt;br /&gt;
&lt;br /&gt;
for i=1:N&lt;br /&gt;
y(i+1)=(((1-(h/2)*1.01)-sqrt(((1-(h/2)*1.01)^2)+4*(h/2)*((1+(h/2)*1.01)*y(i)-(h/2)*(y(i))^2)))/-h);&lt;br /&gt;
end&lt;br /&gt;
%Sacamos la tabla de resultados&lt;br /&gt;
[t',y']&lt;br /&gt;
x=1.01-y;&lt;br /&gt;
%Gráfico&lt;br /&gt;
hold on&lt;br /&gt;
plot(t,y,'r')&lt;br /&gt;
plot(t,x,'b')&lt;br /&gt;
legend('Sustancia B: y(t)','Sustancia A: x(t)','Location','best');&lt;br /&gt;
xlabel('Tiempo (s)')&lt;br /&gt;
ylabel('Concentración (mol/l)')&lt;br /&gt;
grid on&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
=== Método de Runge-Kutta ===&lt;br /&gt;
&lt;br /&gt;
El método de resolución numérica de Runge-Kutta, involucra un gran número de parámetros. Para simplificar la implementación de este método en Matlab, utilizaremos la función ''inline'', con la que declararemos previamente la función algebraica necesaria para el cálculo de los parámetros &amp;lt;math&amp;gt;k_i&amp;lt;/math&amp;gt;, ahorrándonos tener que escribir innumerables veces la correspondiente expresión matemática.&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
A continuación, detallamos la función &amp;lt;math&amp;gt;f(y)&amp;lt;/math&amp;gt; de la que dependerán los valores de los parámetros &amp;lt;math&amp;gt;k_i&amp;lt;/math&amp;gt;:&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;f(y)=y'(t)=1.01y(t)-y(t)^2&lt;br /&gt;
&lt;br /&gt;
\quad \Rightarrow \quad&lt;br /&gt;
&lt;br /&gt;
\begin{cases}&lt;br /&gt;
 k_1 &amp;amp; =  f(y_i) \\&lt;br /&gt;
 k_2 &amp;amp; =  f(y_i + {1 \over 2}k_1h) \\&lt;br /&gt;
 k_3 &amp;amp; =  f(y_i + \frac{1}{2}k_2h) \\&lt;br /&gt;
 k_4 &amp;amp; =  f(y_i + k_3h) \\&lt;br /&gt;
\end{cases}\quad [h=0.1]&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Entonces el método RK4 para este problema está dado por la siguiente ecuación:&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;y_{i+1} = y_{i} + {1 \over 6}h(k_1+2k_2+2k_3+k_4)&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Mediante el siguiente programa en Matlab calculamos numéricamente la solución y la representamos en un gráfico:&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Archivo:RK4II.png|400px|miniaturadeimagen|derecha|Representación gráfica y(t). Método Runge-Kutta]]&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
%Método de Runge-Kutta&lt;br /&gt;
clc&lt;br /&gt;
&lt;br /&gt;
%Función f(t)=y'(t)&lt;br /&gt;
fy=inline('1.01*y-y^2','y');&lt;br /&gt;
&lt;br /&gt;
%Datos del problema&lt;br /&gt;
y0=0.01;&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=10;&lt;br /&gt;
h=0.1;&lt;br /&gt;
&lt;br /&gt;
%Variable independiente (t)&lt;br /&gt;
t=t0:h:tN;&lt;br /&gt;
&lt;br /&gt;
%Variable dependiente (y)&lt;br /&gt;
y=zeros(1,length(t));&lt;br /&gt;
y(1)=y0;&lt;br /&gt;
&lt;br /&gt;
for i=1:length(t)-1&lt;br /&gt;
    k1=fy(y(i));&lt;br /&gt;
    k2=fy(y(i)+k1/2*h);&lt;br /&gt;
    k3=fy(y(i)+k2/2*h);&lt;br /&gt;
    k4=fy(y(i)+k3*h);&lt;br /&gt;
    y(i+1)=y(i)+h/6*(k1+2*k2+2*k3+k4);&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
%Variable dependiente (x)&lt;br /&gt;
x=1.01-y;&lt;br /&gt;
&lt;br /&gt;
%Representación gráfica&lt;br /&gt;
hold on&lt;br /&gt;
plot(t,x,'b')&lt;br /&gt;
plot(t,y,'r')&lt;br /&gt;
legend('Sustancia A: x(t)','Sustancia B: y(t)')&lt;br /&gt;
xlabel('Tiempo (s)')&lt;br /&gt;
ylabel('Concentración (mol/l)')&lt;br /&gt;
grid on&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
=== Comparación de métodos===&lt;br /&gt;
&lt;br /&gt;
Podemos observar fácilmente que las gráficas obtenidas con los diferentes métodos son iguales a primera vista. Sin embargo, superponiéndolas queda patente que no son exactamente iguales debido a que los métodos no poseen la misma precisión y , al operar todos con la misma longitud de paso, unos aproximan la solución exacta mejor que otros. Así se observa en estas imágenes:&lt;br /&gt;
&lt;br /&gt;
[[Archivo:comparativa1.jpg|400px|miniaturadeimagen|izquierda|Comparación de métodos]]&lt;br /&gt;
[[Archivo:comparativa2.jpg|400px|miniaturadeimagen|derecha|Comparación de métodos]]&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
Como podemos comprobar en las imágenes, el método de Euler es menos preciso que el del trapecio o el de Runge-Kutta.&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Resolución en forma de sistema de ecuaciones ==&lt;br /&gt;
&lt;br /&gt;
A continuación vamos a plantear el problema de valor inicial con un sistema no lineal de dos ecuaciones equivalente al problema resuelto anteriormente.&lt;br /&gt;
&lt;br /&gt;
Estas ecuaciones serán:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;(PVI)&lt;br /&gt;
\begin{cases}&lt;br /&gt;
    y'(t)=k_1 x(t)y(t) \\&lt;br /&gt;
    x'(t)=-k_1 x(t)y(t) \\&lt;br /&gt;
    \\&lt;br /&gt;
    x(0)=1 \\&lt;br /&gt;
    y(0) = 0.01&lt;br /&gt;
\end{cases}&lt;br /&gt;
\quad t\in[0,10]&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Resolveremos el problema por el método de Euler y por el método de Runge-Kutta, plasmando las soluciones en gráficos.&lt;br /&gt;
&lt;br /&gt;
=== Método de Euler ===&lt;br /&gt;
&lt;br /&gt;
En este caso aplicaremos en el siguiente código la expresión para EDO a cada una de las ecuaciones que conforma el sistema, obteniendo la correspondiente gráfica.&lt;br /&gt;
 &lt;br /&gt;
[[Archivo:SistEuler.png|400px|miniaturadeimagen|derecha|Representación gráfica de las concentraciones de A y B. Resolución del sistema por Euler]]&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
&lt;br /&gt;
%Resolución del sistema por el método de Euler&lt;br /&gt;
&lt;br /&gt;
clear all&lt;br /&gt;
&lt;br /&gt;
%Definimos el vector de la variable independiente, el número de&lt;br /&gt;
%subintervalos y la longitud de paso&lt;br /&gt;
&lt;br /&gt;
t0 = 0;&lt;br /&gt;
tN = 10;&lt;br /&gt;
h = 0.1;&lt;br /&gt;
t = t0:h:tN&lt;br /&gt;
N = (tN-t0)/h;&lt;br /&gt;
&lt;br /&gt;
%Definimos los vectores de las variables dependientes&lt;br /&gt;
&lt;br /&gt;
x = zeros(1, N+1);&lt;br /&gt;
y = zeros(1, N+1);&lt;br /&gt;
&lt;br /&gt;
x(1) = 1;&lt;br /&gt;
y(1) = 0.01;&lt;br /&gt;
&lt;br /&gt;
for i = 1:N&lt;br /&gt;
    &lt;br /&gt;
    x(i+1)=x(i)+h*(-x(i).*y(i));&lt;br /&gt;
    y(i+1)=y(i)+h*(y(i).*x(i));&lt;br /&gt;
    &lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
%Representamos gráficamente las soluciones&lt;br /&gt;
&lt;br /&gt;
hold on&lt;br /&gt;
&lt;br /&gt;
plot(t,x,'b');&lt;br /&gt;
plot(t,y,'r');&lt;br /&gt;
grid on&lt;br /&gt;
&lt;br /&gt;
legend('Sustancia A: x(t)','Sustancia B: y(t)')&lt;br /&gt;
xlabel('Tiempo (s)')&lt;br /&gt;
ylabel('Concentración (mol/l)')&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
hold off&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
}}&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Método de Runge-Kutta===&lt;br /&gt;
&lt;br /&gt;
El método de resolución numérica de Runge-Kutta, involucra un gran número de parámetros. Para simplificar la implementación de este método en Matlab, el sistema se tratará como una matriz &amp;lt;math&amp;gt;z&amp;lt;/math&amp;gt;. Además, utilizaremos la función ''inline'', con la que declararemos previamente la función algebraica necesaria para el cálculo de los parámetros &amp;lt;math&amp;gt;k_i&amp;lt;/math&amp;gt;, ahorrándonos tener que escribir innumerables veces la correspondiente expresión matemática.&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Primero, expresamos el sistema en forma matricial:&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;(PVI)\begin{cases}&lt;br /&gt;
    x'(t)=-k_1 x(t)y(t) \\&lt;br /&gt;
    y'(t)=k_1 x(t)y(t) \\&lt;br /&gt;
    \\&lt;br /&gt;
    x(0)=1 \\&lt;br /&gt;
    y(0) = 0.01&lt;br /&gt;
\end{cases}\quad t\in[0,10]&lt;br /&gt;
&lt;br /&gt;
\quad \Rightarrow \quad k_1=1\quad \Rightarrow \quad&lt;br /&gt;
&lt;br /&gt;
(PVI)\begin{cases}\vec{z}'(t)=&lt;br /&gt;
   \begin{bmatrix}&lt;br /&gt;
      x'(t) \\&lt;br /&gt;
      y'(t) \\&lt;br /&gt;
   \end{bmatrix}&lt;br /&gt;
=&lt;br /&gt;
      \begin{bmatrix}&lt;br /&gt;
      -x(t)y(t) \\&lt;br /&gt;
      x(t)y(t) \\&lt;br /&gt;
   \end{bmatrix}&lt;br /&gt;
&lt;br /&gt;
 \\ \\ \vec{z}(0)=&lt;br /&gt;
   \begin{bmatrix}&lt;br /&gt;
      x(0) \\&lt;br /&gt;
      y(0) \\&lt;br /&gt;
   \end{bmatrix}&lt;br /&gt;
=&lt;br /&gt;
      \begin{bmatrix}&lt;br /&gt;
      1 \\&lt;br /&gt;
      0.01 \\&lt;br /&gt;
   \end{bmatrix}&lt;br /&gt;
\end{cases}\quad t\in[0,10]&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
A continuación, detallamos la función &amp;lt;math&amp;gt;\vec{F}&amp;lt;/math&amp;gt; de la que dependerán los valores de los parámetros &amp;lt;math&amp;gt;k_i&amp;lt;/math&amp;gt;:&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;\vec{F}(x,y)=\vec{F}(\vec{z})=&lt;br /&gt;
&lt;br /&gt;
\begin{bmatrix}&lt;br /&gt;
    f(\vec{z}) \\&lt;br /&gt;
    g(\vec{z}) \\&lt;br /&gt;
\end{bmatrix}=&lt;br /&gt;
&lt;br /&gt;
\begin{bmatrix}&lt;br /&gt;
    x'(t) \\&lt;br /&gt;
    y'(t) \\&lt;br /&gt;
\end{bmatrix}=&lt;br /&gt;
&lt;br /&gt;
\vec{z}'(t)=&lt;br /&gt;
&lt;br /&gt;
\begin{bmatrix}&lt;br /&gt;
    -x(t)y(t) \\&lt;br /&gt;
    x(t)y(t) \\&lt;br /&gt;
\end{bmatrix}&lt;br /&gt;
\quad \Rightarrow \quad&lt;br /&gt;
&lt;br /&gt;
\begin{cases}&lt;br /&gt;
 [\vec{k_1}] &amp;amp; =  F(\vec{z}_i) \\&lt;br /&gt;
 [\vec{k_2}] &amp;amp; =  F(\vec{z}_i + {1 \over 2}k_1h) \\&lt;br /&gt;
 [\vec{k_3}] &amp;amp; =  F(\vec{z}_i + \frac{1}{2}k_2h) \\&lt;br /&gt;
 [\vec{k_4}] &amp;amp; =  F(\vec{z}_i + k_3h) \\&lt;br /&gt;
\end{cases}\quad [h=0.1]&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Entonces el método RK4 para este problema está dado por la siguiente ecuación:&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;\vec{z}_{i+1} = \vec{z}_{i} + {1 \over 6}h(\vec{k_1}+2\vec{k_2}+2\vec{k_3}+\vec{k_4})&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Mediante el siguiente programa en Matlab calculamos numéricamente la solución y la representamos en un gráfico:&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Archivo:sistema_RK4.png|400px|miniaturadeimagen|derecha|Representación gráfica de las concentraciones de A y B. Resolución del sistema por Runge-Kutta]]&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
%Método de Runge-Kutta&lt;br /&gt;
clc&lt;br /&gt;
&lt;br /&gt;
%Función F=[x'(t); y'(t)]&lt;br /&gt;
F=inline('[-z(1)*z(2);z(1)*z(2)]','z');&lt;br /&gt;
&lt;br /&gt;
%Datos del problema &lt;br /&gt;
x0=1;&lt;br /&gt;
y0=0.01;&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=10;&lt;br /&gt;
h=0.1;&lt;br /&gt;
&lt;br /&gt;
%Vector de variable independiente (t)&lt;br /&gt;
t=t0:h:tN;&lt;br /&gt;
&lt;br /&gt;
%Matriz de variables dependientes z=[x;y]&lt;br /&gt;
z=zeros(2,length(t));&lt;br /&gt;
z(:,1)=[x0;y0];&lt;br /&gt;
&lt;br /&gt;
for i = 1:length(t)-1&lt;br /&gt;
    k1=F(z(:,i));&lt;br /&gt;
    k2=F(z(:,i)+k1.*h/2);&lt;br /&gt;
    k3=F(z(:,i)+k2.*h/2);&lt;br /&gt;
    k4=F(z(:,i)+k3.*h);&lt;br /&gt;
    z(:,i+1)=z(:,i)+h/6.*(k1+2.*k2+2.*k3+k4);&lt;br /&gt;
end&lt;br /&gt;
 &lt;br /&gt;
%Representación gráfica&lt;br /&gt;
hold on&lt;br /&gt;
plot(t,z(1,:))&lt;br /&gt;
plot(t,z(2,:),'r')&lt;br /&gt;
legend('Sustancia A: x(t)','Sustancia B: y(t)')&lt;br /&gt;
xlabel('Tiempo (s)')&lt;br /&gt;
ylabel('Concentración (mol/l)')&lt;br /&gt;
grid on&lt;br /&gt;
%hold off&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
== Interpretación de las gráficas ==&lt;br /&gt;
&lt;br /&gt;
Como cabía esperar, obtenemos la misma solución resolviendo el problema como sistema o como EDO. Podemos observar por los resultados obtenidos que la velocidad de aparición de B es igual a la velocidad de desaparición de A (como dicta el principio de conservación de la masa), que A acaba desapareciendo prácticamente por completo y que la concentración de B termina por estabilizarse alrededor de 1 mol/l. Ambos compuestos alcanzan sus los extremos de sus concentraciones en el mismo instante de tiempo&lt;br /&gt;
&lt;br /&gt;
También cabe destacar que cuando el tiempo transcurrido alcanza 4,5 segundos las concentraciones de ambos compuestos son las mismas.&lt;br /&gt;
&lt;br /&gt;
= Reacción II =&lt;br /&gt;
&lt;br /&gt;
En este apartado vamos a estudiar la reacción propuesta por Alfred J. Lotka en 1920, que es la siguiente:&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt; A + X →_{k1} 2X;&amp;lt;/math&amp;gt;     :&amp;lt;math&amp;gt; X + Y →_{k2} 2Y;&amp;lt;/math&amp;gt;     :&amp;lt;math&amp;gt;Y →_{k3} 2B  &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Como se puede observar, se trata de una reacción compleja integrada por 3 reacciones simples (las dos primeras autocatalíticas) en las que intervienen un total de 4 compuestos, A, B, X e Y. Siguiendo el desarrollo de la reacción, es lógico suponer que A se agotará al comienzo de la reacción, que los máximos de concentración de X e Y se darán en los estados intermedios y que al final el compuesto B será el único restante, siendo el producto final de la reacción.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Interpretación del problema y deducción de las ecuaciones diferenciales ==&lt;br /&gt;
&lt;br /&gt;
Para averiguar cómo evolucionan las concentraciones de los cuatro compuestos durante el desarrollo de la reacción necesitaremos obtener cuatro ecuaciones diferenciales. Para ello nos volveremos a basar en los principios físicos que ya empleamos en la anterior reacción. Definimos A(t), x(t), y(t), y B(t) (A, x, y, B; para ahorrar notación) a las concentraciones de A, X, Y, y B, respectivamente. &lt;br /&gt;
&lt;br /&gt;
En primer lugar aplicamos el Principio de Conservación de la masa, que establece que la suma de las concentraciones de los compuestos es constante (no desaparece masa en el proceso), lo que derivando nos indica que:&lt;br /&gt;
&lt;br /&gt;
: &amp;lt;math&amp;gt; A' + x' + y' + B' = 0 \quad\quad(I)&amp;lt;/math&amp;gt;       &lt;br /&gt;
&lt;br /&gt;
A continuación aplicaremos la Ley de Acción de Masas (velocidad de reacción proporcional al producto de la concentración de los reactivos).&lt;br /&gt;
&lt;br /&gt;
Aplicando esta ley a la última reacción simple obtenemos que: &lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;B'=k_3y \quad\quad(II)&amp;lt;/math&amp;gt;        &lt;br /&gt;
&lt;br /&gt;
En el caso de las concentraciones de X e Y las expresiones resultantes son algo más complicadas ya que estos dos compuestos actúan como reactivos y productos en más de una reacción simple, por lo que la variación de sus concentraciones será la suma de las variaciones de las reacciones en las que aparezcan:&lt;br /&gt;
&lt;br /&gt;
: &amp;lt;math&amp;gt; x' = x'_{1} + x'_{2} → x' = k_{1}Ax - k{2}xy \quad\quad(III)&amp;lt;/math&amp;gt;        &lt;br /&gt;
: &amp;lt;math&amp;gt; y' = y'_{2} + y'_{3} → y' = k_{2}xy − k_3{y} \quad\quad(IV)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Por último sustituimos (II), (III) y (IV) en (I) obteniendo: &lt;br /&gt;
&lt;br /&gt;
: &amp;lt;math&amp;gt; A' + k_{1}Ax - k{2}xy + k_{2}xy − k_3{y}+ k_3y= 0 : &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
De donde obtenemos que:&lt;br /&gt;
&lt;br /&gt;
: &amp;lt;math&amp;gt; A' = -k_{1}Ax &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Ahora que ya tenemos las variaciones de concentración de los compuestos en función de las concentraciones podemos aplicar métodos numéricos que nos lleven a una solución aproximada.&lt;br /&gt;
&lt;br /&gt;
== Resolución numérica del sistema de ecuaciones ==&lt;br /&gt;
&lt;br /&gt;
Una vez obtenidas las ecuaciones y conociendo las condiciones iniciales y los valores de las constantes podemos plantear el problema de valor inicial para luego resolverlo.&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;(PVI)&lt;br /&gt;
\begin{cases}&lt;br /&gt;
    A' = -k_{1}Ax\\&lt;br /&gt;
    x' = k_{1}Ax - k{2}xy\\&lt;br /&gt;
    y' = k_{2}xy − k_3{y}\\&lt;br /&gt;
    B'=k_3y \\&lt;br /&gt;
\\&lt;br /&gt;
    A(0)=5  \\&lt;br /&gt;
    x(0)=5*10^{-4} \\&lt;br /&gt;
    y(0)=10^{-5}\\&lt;br /&gt;
    B(0)=0 \\&lt;br /&gt;
\end{cases}&lt;br /&gt;
\quad t\in[0,200]&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Siendo &amp;lt;math&amp;gt; k_{1}=K_{2}=2k_{3}=0.1 &amp;lt;/math&amp;gt; y las unidades de la concentración mol/l.&lt;br /&gt;
&lt;br /&gt;
=== Método de Euler ===&lt;br /&gt;
&lt;br /&gt;
Aplicamos el método de Euler de forma análoga a como lo hicimos en [[Reacciones_con_autocatálisis._Grupo_D12#Método_de_Euler_2|apartado 2.5.1]]&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Euler lotka0.01.png|400px|miniaturadeimagen|derecha|Representación gráfica de las concentraciones de A, B, X, e Y a lo largo del tiempo. Resoluciónd delsistema por el método de Euler con longitud de paso h=0.01]] &lt;br /&gt;
[[Archivo:Euler lotka0.001.png|400px|miniaturadeimagen|derecha|Representación gráfica de las concentraciones de A, B, X, e Y a lo largo del tiempo. Resoluciónd delsistema por el método de Euler con longitud de paso h=0.001]]&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
&lt;br /&gt;
%Resolución del sistema de la reacción de Lotka por el método de Euler&lt;br /&gt;
&lt;br /&gt;
clear all&lt;br /&gt;
&lt;br /&gt;
%Definimos la variable independiente y establecemos los datos del problema&lt;br /&gt;
%de valor inicial. Para la longitud de paso h introducimos en primer lugar&lt;br /&gt;
%0.01 y luego 0.001&lt;br /&gt;
&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=200;&lt;br /&gt;
h= input('Introduzca una longitud de paso ');&lt;br /&gt;
t = t0:h:tN;&lt;br /&gt;
N=(tN-t0)/h;&lt;br /&gt;
k1 = 0.1;&lt;br /&gt;
k2 = 0.1;&lt;br /&gt;
k3 = 0.05;&lt;br /&gt;
A0 = 5;&lt;br /&gt;
B0 = 0;&lt;br /&gt;
X0 = 5*10^(-4);&lt;br /&gt;
Y0 = 10^(-5);&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
%Definimos las variables dependientes.&lt;br /&gt;
&lt;br /&gt;
A = zeros(1, N-1);&lt;br /&gt;
B = A;&lt;br /&gt;
X = A;&lt;br /&gt;
Y = A;&lt;br /&gt;
&lt;br /&gt;
A(1) = A0;&lt;br /&gt;
B(1) = B0;&lt;br /&gt;
X(1) = X0;&lt;br /&gt;
Y(1) = Y0;&lt;br /&gt;
&lt;br /&gt;
for i = 1:N&lt;br /&gt;
    &lt;br /&gt;
    X(i+1) = X(i) + h*(k1*A(i)*X(i)-k2*Y(i)*X(i));&lt;br /&gt;
    Y(i+1)=Y(i)+h.*(k2.*X(i).*Y(i)-k3.*Y(i));&lt;br /&gt;
    B(i+1) = B(i) + h*(k3*Y(i));&lt;br /&gt;
    A(i+1) = A(i) + h*(-k1*A(i)*X(i));&lt;br /&gt;
   &lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
%Representamos gráficamente la solución&lt;br /&gt;
&lt;br /&gt;
hold on&lt;br /&gt;
&lt;br /&gt;
plot (t,A,'b')&lt;br /&gt;
plot(t, X, 'r')&lt;br /&gt;
plot(t,Y, 'g')&lt;br /&gt;
plot(t, B, 'm')&lt;br /&gt;
legend('Sustancia A: A(t)','Sustancia X: x(t)','Sustancia Y: y(t)','Sustancia B: B(t)','Location','Best')&lt;br /&gt;
xlabel('Tiempo (s)')&lt;br /&gt;
ylabel('Concentración (mol/l)')&lt;br /&gt;
grid on&lt;br /&gt;
&lt;br /&gt;
hold off&lt;br /&gt;
&lt;br /&gt;
}}&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
A continuación tendremos que comprobar si el método es estable. &amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
Un método es estable cuando el error local es pequeño y además este error no se amplifica a lo largo del tiempo. Para calificar la estabilidad del método de Euler resolveremos el sistema anterior con este método, con pasos &amp;quot;h=0.01&amp;quot; y &amp;quot;h=0.001&amp;quot;, y lo compararemos con la resolución del sistema con el método de Heun, que se asemeja más a la solución exacta.&amp;lt;br /&amp;gt;&lt;br /&gt;
En la comparación representaremos en azul el método de Heun y en rojo el método de Euler.&amp;lt;br /&amp;gt;&lt;br /&gt;
Para &amp;quot;h=0.01&amp;quot; tenemos lo siguiente:&lt;br /&gt;
[[Archivo:1estabilidad123.jpg|400px|miniaturadeimagen|izquierda|Comparación entre Método de Heun (Azul) con el Método de Euler con paso h=0.01 (Rojo)]] &lt;br /&gt;
[[Archivo:1estabilidad321.jpg|400px|miniaturadeimagen|derecha|Comparación entre Método de Heun (Azul) con el Método de Euler con paso h=0.01 (Rojo)]] &lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
Para &amp;quot;h=0.001&amp;quot; tenemos lo siguiente:&lt;br /&gt;
[[Archivo:2estabilidad123.jpg|400px|miniaturadeimagen|izquierda|Comparación entre Método de Heun (Azul) con el Método de Euler con paso h=0.001 (Rojo)]] &lt;br /&gt;
[[Archivo:2estabilidad321.jpg|400px|miniaturadeimagen|derecha|Comparación entre Método de Heun (Azul) con el Método de Euler con paso h=0.001 (Rojo)]]&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
Como podemos ver en las imágenes de los dos procesos las gráficas se superponen y no se aprecian diferencias hasta que no ampliamos la imagen. Y esto sucede en todo momento con lo que podemos garantizar que en este caso el método de Euler es estable para los pasos que hemos usado.&lt;br /&gt;
&lt;br /&gt;
=== Método de Heun ===&lt;br /&gt;
&lt;br /&gt;
Si bien el método de resolución numérica de Heun no involucra un número de parámetros tan notable como el método de Runge-Kutta, en este caso tenemos un sistema de 4 ecuaciones diferenciales, por lo que, en aras de simplificar, utilizaremos el mismo criterio que en el [[Reacciones_con_autocatálisis._Grupo_D12#Método_de_Runge-Kutta_2|apartado 2.5.2]].: El sistema se tratará como una matriz &amp;lt;math&amp;gt;z&amp;lt;/math&amp;gt;, y para la obtención de los parámetros &amp;lt;math&amp;gt;k_i&amp;lt;/math&amp;gt; utilizaremos la función ''inline'', con la que declararemos previamente las expresiones necesarias para el cálculo de los parámetros &amp;lt;math&amp;gt;k_i&amp;lt;/math&amp;gt;.&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Primero, expresamos el sistema en forma matricial:&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;(PVI)\begin{cases}&lt;br /&gt;
A'(t)=-k_1 A(t)x(t) \\&lt;br /&gt;
x'(t)=k_1 A(t)x(t)-k_2 x(t)y(t) \\&lt;br /&gt;
y'(t)=k_2 x(t)y(t)-k_3 y(t) \\&lt;br /&gt;
B'(t)=k_3 x(t)y(t) \\ \\&lt;br /&gt;
A(0)=5 \\&lt;br /&gt;
x(0)=5·10^{-4} \\&lt;br /&gt;
y(0)=10^{-5} \\&lt;br /&gt;
B(0) = 0&lt;br /&gt;
\end{cases}\quad t\in[0,200]&lt;br /&gt;
&lt;br /&gt;
\quad \Rightarrow \quad&lt;br /&gt;
&lt;br /&gt;
\begin{cases}&lt;br /&gt;
k_1=0.1 \\&lt;br /&gt;
k_2=0.1 \\&lt;br /&gt;
k_3=0.05 \\&lt;br /&gt;
&lt;br /&gt;
\end{cases}&lt;br /&gt;
&lt;br /&gt;
\quad \Rightarrow \quad&lt;br /&gt;
&lt;br /&gt;
(PVI)\begin{cases}\vec{z}'(t)=&lt;br /&gt;
   \begin{bmatrix}&lt;br /&gt;
      A'(t) \\&lt;br /&gt;
      x'(t) \\&lt;br /&gt;
      y'(t) \\&lt;br /&gt;
      B'(t) \\&lt;br /&gt;
   \end{bmatrix}&lt;br /&gt;
=&lt;br /&gt;
      \begin{bmatrix}&lt;br /&gt;
      -0.1 A(t)x(t) \\&lt;br /&gt;
      0.1 A(t)x(t)-0.1 x(t)y(t) \\&lt;br /&gt;
      0.1 x(t)y(t)-0.05 y(t) \\&lt;br /&gt;
      0.05 y(t)x(t)\\&lt;br /&gt;
   \end{bmatrix}&lt;br /&gt;
&lt;br /&gt;
 \\ \\ \vec{z}(0)=&lt;br /&gt;
   \begin{bmatrix}&lt;br /&gt;
      A(0) \\&lt;br /&gt;
      x(0) \\&lt;br /&gt;
      y(0) \\&lt;br /&gt;
      B(0) \\&lt;br /&gt;
   \end{bmatrix}&lt;br /&gt;
=&lt;br /&gt;
      \begin{bmatrix}&lt;br /&gt;
      5 \\&lt;br /&gt;
      5·10^{-4} \\&lt;br /&gt;
      10^{-5} \\&lt;br /&gt;
      0&lt;br /&gt;
   \end{bmatrix}&lt;br /&gt;
\end{cases}\quad t\in[0,200]&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
A continuación, detallamos la función &amp;lt;math&amp;gt;\vec{F}&amp;lt;/math&amp;gt; de la que dependerán los valores de los parámetros &amp;lt;math&amp;gt;k_i&amp;lt;/math&amp;gt;:&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;\vec{F}(A,x,y,B)=\vec{F}(\vec{z})=&lt;br /&gt;
\begin{bmatrix}&lt;br /&gt;
    f(\vec{z}) \\ &lt;br /&gt;
    g(\vec{z}) \\ &lt;br /&gt;
    h(\vec{z}) \\ &lt;br /&gt;
    i(\vec{z}) \\ &lt;br /&gt;
\end{bmatrix}=&lt;br /&gt;
\begin{bmatrix}&lt;br /&gt;
    A'(t) \\&lt;br /&gt;
    x'(t) \\&lt;br /&gt;
    y'(t) \\&lt;br /&gt;
    B'(t) \\&lt;br /&gt;
\end{bmatrix}=&lt;br /&gt;
\vec{z}'(t)=&lt;br /&gt;
      \begin{bmatrix}&lt;br /&gt;
      -0.1 A(t)x(t) \\&lt;br /&gt;
      0.1 A(t)x(t)-0.1 x(t)y(t) \\&lt;br /&gt;
      0.1 x(t)y(t)-0.05 y(t) \\&lt;br /&gt;
      0.05 y(t)x(t)\\&lt;br /&gt;
   \end{bmatrix}&lt;br /&gt;
&lt;br /&gt;
\quad \Rightarrow \quad &lt;br /&gt;
&lt;br /&gt;
\begin{cases}&lt;br /&gt;
 [\vec{k_1}] &amp;amp; =  F(\vec{z}_i) \\&lt;br /&gt;
 [\vec{k_2}] &amp;amp; =  F(\vec{z}_i + {1 \over 2}k_1h) \\&lt;br /&gt;
\end{cases}\quad [h=0.01]&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Entonces el método de Heun para este problema está dado por la siguiente ecuación:&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;\vec{z}_{i+1} = \vec{z}_{i} + {1 \over 2}h(\vec{k_1}+\vec{k_2})&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Mediante el siguiente programa en Matlab calculamos numéricamente la solución y la representamos en un gráfico:&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Archivo:AXYBRK4.png|400px|miniaturadeimagen|derecha|Representación gráfica de las concentraciones de A,X,Y y B. Resolución del sistema por Heun]]&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
%Método de Heun&lt;br /&gt;
clc&lt;br /&gt;
&lt;br /&gt;
%Función F=[A'(t);x'(t); y'(t);B'(t)]&lt;br /&gt;
F=inline('0.1.*[-z(1)*z(2);z(1)*z(2)-z(2)*z(3);z(2)*z(3)-z(3)/2;z(3)/2]','z');&lt;br /&gt;
&lt;br /&gt;
%Datos del problema&lt;br /&gt;
A0=5;&lt;br /&gt;
x0=5*10^-4;&lt;br /&gt;
y0=10^(-5);&lt;br /&gt;
B0=0;&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=200;&lt;br /&gt;
h=0.1;&lt;br /&gt;
&lt;br /&gt;
%Vector de variable independiente (t)&lt;br /&gt;
t=t0:h:tN;&lt;br /&gt;
&lt;br /&gt;
%Matriz de variables dependientes z=[A;x;y;B]&lt;br /&gt;
z=zeros(4,length(t));&lt;br /&gt;
z(:,1)=[A0;x0;y0;B0];&lt;br /&gt;
&lt;br /&gt;
for i = 1:length(t)-1&lt;br /&gt;
    k1=F(z(:,i));&lt;br /&gt;
    k2=F(z(:,i)+k1.*h/2);&lt;br /&gt;
    z(:,i+1)=z(:,i)+h/2.*(k1+k2);&lt;br /&gt;
end&lt;br /&gt;
 &lt;br /&gt;
%Representación gráfica&lt;br /&gt;
hold on&lt;br /&gt;
plot(t,z(1,:),'b')&lt;br /&gt;
plot(t,z(2,:),'r')&lt;br /&gt;
plot(t,z(3,:),'g')&lt;br /&gt;
plot(t,z(4,:),'m')&lt;br /&gt;
legend('Sustancia A: A(t)','Sustancia X: x(t)','Sustancia Y: y(t)','Sustancia B: B(t)','Location','Best')&lt;br /&gt;
xlabel('Tiempo (s)')&lt;br /&gt;
ylabel('Concentración (mol/l)')&lt;br /&gt;
grid on&lt;br /&gt;
hold off&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
== Interpretación de las gráficas == &lt;br /&gt;
 &lt;br /&gt;
El proceso comienza con el predominio absoluto del compuesto A en la concentración total, siendo la presencia de los otros tres compuestos despreciable. Durante los primeros segundos la situación apenas cambia, pero tras los diez primeros segundos la concentración de A cae bruscamente mientras que la concentración de X aumenta a la misma velocidad; antes de llegar a los veinte segundos transcurridos las concentraciones de ambos compuestos se igualan y otros quince segundos más tarde el compuesto A  prácticamente ha desaparecido y el X ha alcanzado su concentración máxima (5 mol/litro).&lt;br /&gt;
&lt;br /&gt;
Es entonces cuando concluye la primera reacción y comienzan las otras dos, al no haber más compuesto A que cree compuesto X. La velocidad de aparición de Y es inicialmente mayor que la de B, superando al poco tiempo en concentración a la sustancia X. Sin embargo, llega un momento en el que la concentración de X es tan baja que se ralentiza la creación de Y y pronto empieza a disminuir su concentración tras alcanzar un máximo en torno a los 56 segundos, perdiendo peso la segunda reacción en beneficio de la tercera.&lt;br /&gt;
&lt;br /&gt;
Tras los 60 segundos de reacción el compuesto X pasa a tener una concentración despreciable, por lo que la única reacción simple que se sigue desarrollando es la tercera, destruyéndose reactivo Y y creándose producto B. La concentración de Y va reduciéndose paulatinamente hasta que en torno a los 160 segundos de reacción alcanza niveles insignificantes mientras que la concentración de B alcanza su máximo de 5 mol/litro.&lt;br /&gt;
&lt;br /&gt;
Es interesante observar que en todo momento se cumple el Principio de Conservación de la masa: la suma en cualquier momento de las concentraciones de las sustancias es 5 mol /litro. Esto es fácilmente comprobable en los momentos en que las concentraciones de A, X y B alcanzan su máximo de 5 mol/litro y el resto de concentraciones son nulas o despreciables. &lt;br /&gt;
[[Categoría:Ecuaciones Diferenciales]]&lt;br /&gt;
[[Categoría:ED14/15]]&lt;br /&gt;
[[Categoría:Trabajos 2014-15]]&lt;/div&gt;</summary>
		<author><name>Javier Ruiz de Galarreta López</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Reacciones_con_autocat%C3%A1lisis._Grupo_D12&amp;diff=29224</id>
		<title>Reacciones con autocatálisis. Grupo D12</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Reacciones_con_autocat%C3%A1lisis._Grupo_D12&amp;diff=29224"/>
				<updated>2015-03-12T09:58:09Z</updated>
		
		<summary type="html">&lt;p&gt;Javier Ruiz de Galarreta López: /* Unicidad de la solución */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{ TrabajoED | Reacciones con autocatálisis. Grupo D12 | [[:Categoría:Ecuaciones Diferenciales|Ecuaciones Diferenciales]]|[[:Categoría:ED14/15|Curso 2014-15]] | Javier Ruiz de Galarreta López, Argimiro Martínez López, Eduardo Moyano García, Alberto Rodríguez Ruiz. }}&lt;br /&gt;
&lt;br /&gt;
= Introducción: objetivos y metodología =&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
El objetivo de este trabajo es estudiar las concentraciones de los reactivos y productos de una reacción química a lo largo de la evolución en el tiempo de dicha reacción. Para ello modelizaremos el proceso empleando ecuaciones diferenciales y teniendo en cuenta la Ley de Acción de Masas y el Principio de Conservación de la materia.&lt;br /&gt;
&lt;br /&gt;
Al ser las ecuaciones y sistemas que se nos presentan de difícil resolución analítica, utilizaremos el programa informático Matlab para resolverlos mediante métodos numéricos como el de Euler, el del Trapecio, el de Runge-Kutta y el de Heun. &lt;br /&gt;
&lt;br /&gt;
Plasmaremos las soluciones en gráficos que nos permitirán dar una interpretación físico química a los resultados.&lt;br /&gt;
&lt;br /&gt;
= Reacción I =&lt;br /&gt;
&lt;br /&gt;
En primer lugar consideramos una reacción química irreversible en una solución bien mezclada, que se desarrolla para un volumen y una temperatura constantes, y en la que uno de los componentes (B, en este caso), hace de efecto catalítico.&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt; A + B →_{k1} 2B  &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Para desarrollar nuestro análisis nos apoyaremos en dos leyes físico químicas:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''Ley de acción de masas''': Enunciada por Guldberg y Waage en 1864, establece, entre otras cosas, que  la velocidad de&lt;br /&gt;
reacción es proporcional al producto de las concentraciones de los reactivos.&lt;br /&gt;
&lt;br /&gt;
'''Principio de conservación de la masa''': Establece que en una reacción química ordinaria la masa permanece constante, siendo la masa consumida de los reactivos igual a la masa obtenida de los productos. Fue elaborada independientemente por Míjail Lomonósov en 1745 y Antoine Lavoisier en 1785.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Interpretación del problema y deducción de las ecuaciones diferenciales ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Para hallar las ecuaciones diferenciales que nos describan cómo se desarrolla la reacción en el tiempo nos basaremos en las dos leyes enunciadas anteriormente. En primer lugar, definimos nuestra variable independiente como el tiempo &amp;lt;math&amp;gt;t&amp;lt;/math&amp;gt; en segundos. Las dos variables dependientes serán las concentraciones de los compuestos A y B, que denominaremos &amp;lt;math&amp;gt;x(t)&amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt;y(t)&amp;lt;/math&amp;gt;, ambas expresadas en mol/l. &lt;br /&gt;
&lt;br /&gt;
El principio de conservación de la masa expone que la suma de las concentraciones de los reactivos y los productos es constante. Esto equivale, derivando la expresión &amp;lt;math&amp;gt;x(t)+y(t)=cte&amp;lt;/math&amp;gt;, a que  desaparece tanto reactivo como producto aparece, o lo que es lo mismo, que la velocidad de aparición del producto es igual a la velocidad de desaparición (velocidad de aparición negativa) del reactivo:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;x'(t)=-y'(t)&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
La otra ecuación que necesitamos la obtenemos directamente de aplicar la Ley de acción de masas, que establece que la velocidad de la reacción (la velocidad a la que aparece el producto o desaparece el reactivo) es igual al producto de las concentraciones por una constante.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;y'(t)=k_1x(t)y(t)&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Obtención del problema de valor inicial ==&lt;br /&gt;
Una vez demostrado el origen de las ecuaciones (1) y (2) en el apartado anterior, obtendremos el problema de valor inicial (PVI) mediante las operaciones detalladas a continuación:&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;x'(t)+y'(t)=0\quad\quad(1)&amp;lt;/math&amp;gt;&lt;br /&gt;
:&amp;lt;math&amp;gt;y'(t)=k_1x(t)y(t)\quad\quad(2)&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Integrando (1) obtenemos (3):&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
:&amp;lt;math&amp;gt;\int_\mathbb{D} (\frac{dx(t)}{dt} + \frac{dy(t)}{dt})\,dt =\int_\mathbb{D} 0\,dt \quad \Rightarrow \quad x(t)+y(t)=k_2\quad \Rightarrow \quad x(t)=k_2-y(t)\quad\quad(3)&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Sustituyendo (3) en (2), obtenemos (4):&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;y'(t)=k_1x(t)y(t)\quad \Rightarrow \quad y'(t)=k_1(k_2-y(t))y(t)\quad \Rightarrow \quad y'(t)=k_1k_2y(t)-k_1y^2(t)\quad\quad(4)&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Conocemos las concentraciones iniciales de A y de B, por lo que podemos obtener el valor de la constante k&amp;lt;sub&amp;gt;2&amp;lt;/sub&amp;gt;:&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;[A]:\quad x(0)=1 mol/l;\quad\quad [B]:\quad y(0)=0,01 mol/l&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;x(t)+y(t)=k_2\quad \Rightarrow \quad x(0)+y(0)=k_2\quad \Rightarrow \quad 1+0,01=k_2\quad \Rightarrow \quad k_2=1,01&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Por último, conocemos también el valor de k&amp;lt;sub&amp;gt;1&amp;lt;/sub&amp;gt;, por lo que podremos plantear a continuación el correspondiente PVI:&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;k_1=1&amp;lt;/math&amp;gt;&lt;br /&gt;
:&amp;lt;math&amp;gt;(PVI)\begin{cases}y'(t)=1,01y(t)-y^2(t) \\ \\&lt;br /&gt;
y(0) = 0,01 \end{cases}\quad (t,y)\in[0,10]\times\mathbb{R}&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Unicidad de la solución ==&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Existencia-y-unicidad.png|200px|miniaturadeimagen|derecha|Intersección B con dominio]]&lt;br /&gt;
&lt;br /&gt;
Aplicamos a continuación el Teorema de Existencia y Unicidad:&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Sea &amp;lt;math&amp;gt;f(t,y)=y'(t) \Rightarrow f(t,y)=1.01y(t)-y^2(t)\quad&amp;lt;/math&amp;gt;, y &amp;lt;math&amp;gt;\quad\frac{\partial }{\partial y} f(t,y) = 1.01-2y(t)&amp;lt;/math&amp;gt;.&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
Y sea &amp;lt;math&amp;gt;B[(t_0,y_0),r],\quad r&amp;gt;0,\quad en (t_0,y_0)=(0,0.01)&amp;lt;/math&amp;gt;.&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt; y &amp;lt;math&amp;gt;\mathbb{D} = \mathbb{R}^+&amp;lt;/math&amp;gt; &lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;f(t,y)&amp;lt;/math&amp;gt; es continua en &amp;lt;math&amp;gt; \mathbb{B}\cap \mathbb{D}\quad \Rightarrow \quad \exists  y(t)\quad /\quad y'(t)=1,01y(t)-y^2(t)&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;math&amp;gt;\frac{\partial }{\partial y} f(t,y)&amp;lt;/math&amp;gt; es continua en &amp;lt;math&amp;gt; \mathbb{B}\cap \mathbb{D}\quad \Rightarrow \quad \exists !  y(t)\quad /\quad y'(t)=1,01y(t)-y^2(t)&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Con lo que queda demostrado que el (PVI) tiene solución y además esta es única.&lt;br /&gt;
&lt;br /&gt;
== Resolución numérica del problema de valor inicial ==&lt;br /&gt;
&lt;br /&gt;
En este apartado resolveremos el problema de valor inicial planteado anteriormente con tres métodos de integración numérica: el método de Euler, el método del Trapecio y el método de Runge-Kutta de orden 4.&lt;br /&gt;
&lt;br /&gt;
=== Método de Euler ===&lt;br /&gt;
&lt;br /&gt;
El método de Euler, llamado así en honor al matemático Leonhard Euler, es un procedimiento de integración numérica. Su expresión matemática es: &lt;br /&gt;
&amp;lt;math&amp;gt;  PVI =   &lt;br /&gt;
\begin{cases}&lt;br /&gt;
 y_0 \\&lt;br /&gt;
 y_{n+1}  = y_n + h*f(t_n,y_n) \\&lt;br /&gt;
\end{cases}\quad&lt;br /&gt;
   &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
A continuación emplearemos esta expresión en un programa de Matlab para obtener una aproximación de las soluciones. El código de dicho programa es el siguiente.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Eulergrafica.png|400px|miniaturadeimagen|derecha|Representación gráfica y(t). Método de Euler]]&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
%Método de Euler&lt;br /&gt;
clc&lt;br /&gt;
&lt;br /&gt;
%Datos iniciales&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=4;&lt;br /&gt;
y0=0.01;&lt;br /&gt;
h=0.1;&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=10;&lt;br /&gt;
&lt;br /&gt;
%Cálculo de subintervalos&lt;br /&gt;
N=round((tN-t0)/h);&lt;br /&gt;
t=t0:h:tN;&lt;br /&gt;
&lt;br /&gt;
%Creamos el vector donde vamos a guardar las soluciones&lt;br /&gt;
y=zeros(1,N+1);&lt;br /&gt;
y(1)=y0;&lt;br /&gt;
&lt;br /&gt;
%Euler&lt;br /&gt;
for i=1:N;&lt;br /&gt;
    y(i+1)=y(i)+h*(1.01*y(i)-(y(i)).^2);&lt;br /&gt;
end&lt;br /&gt;
%Tabla de Resultados&lt;br /&gt;
[t',y']&lt;br /&gt;
x=1.01-y;&lt;br /&gt;
hold on &lt;br /&gt;
plot(t,y,'r')&lt;br /&gt;
plot(t,x,'b')&lt;br /&gt;
hold off&lt;br /&gt;
legend('Sustancia B: y(t)','Sustancia A: x(t)','Location','best');&lt;br /&gt;
xlabel('Tiempo (s)')&lt;br /&gt;
ylabel('Concentración (mol/l)')&lt;br /&gt;
grid on&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
=== Método del trapecio ===&lt;br /&gt;
&lt;br /&gt;
Vamos a aplicar un método de integración numérica conocido como el Método del Trapecio por aproximar el valor de la integral al del área de un trapecio. Su expresión matemática es:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;  PVI =   &lt;br /&gt;
\begin{cases}&lt;br /&gt;
 y_0 \\&lt;br /&gt;
 y_{n+1}  =  y_n + \frac{h}{2}*(f(t_n,y_n)+f(t_{n+1},y_{n+1}))\\&lt;br /&gt;
\end{cases}\quad&lt;br /&gt;
   &amp;lt;/math&amp;gt;&lt;br /&gt;
   &lt;br /&gt;
Introducimos esta expresión en el código y obtenemos la gráfica de la solución.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Trapeciografica.png|400px|miniaturadeimagen|derecha|Representación gráfica y(t). Método del Trapecio]]&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
%Método del Trapecio&lt;br /&gt;
clc&lt;br /&gt;
&lt;br /&gt;
%Datos iniciales&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=4;&lt;br /&gt;
y0=0.01;&lt;br /&gt;
h=0.1;&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=10;&lt;br /&gt;
&lt;br /&gt;
%Cálculo de subintervalos&lt;br /&gt;
N=round((tN-t0)/h);&lt;br /&gt;
t=t0:h:tN;&lt;br /&gt;
&lt;br /&gt;
%Creamos el vector donde vamos a guardar las soluciones&lt;br /&gt;
y=zeros(1,N+1);&lt;br /&gt;
y(1)=y0;&lt;br /&gt;
&lt;br /&gt;
for i=1:N&lt;br /&gt;
y(i+1)=(((1-(h/2)*1.01)-sqrt(((1-(h/2)*1.01)^2)+4*(h/2)*((1+(h/2)*1.01)*y(i)-(h/2)*(y(i))^2)))/-h);&lt;br /&gt;
end&lt;br /&gt;
%Sacamos la tabla de resultados&lt;br /&gt;
[t',y']&lt;br /&gt;
x=1.01-y;&lt;br /&gt;
%Gráfico&lt;br /&gt;
hold on&lt;br /&gt;
plot(t,y,'r')&lt;br /&gt;
plot(t,x,'b')&lt;br /&gt;
legend('Sustancia B: y(t)','Sustancia A: x(t)','Location','best');&lt;br /&gt;
xlabel('Tiempo (s)')&lt;br /&gt;
ylabel('Concentración (mol/l)')&lt;br /&gt;
grid on&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
=== Método de Runge-Kutta ===&lt;br /&gt;
&lt;br /&gt;
El método de resolución numérica de Runge-Kutta, involucra un gran número de parámetros. Para simplificar la implementación de este método en Matlab, utilizaremos la función ''inline'', con la que declararemos previamente la función algebraica necesaria para el cálculo de los parámetros &amp;lt;math&amp;gt;k_i&amp;lt;/math&amp;gt;, ahorrándonos tener que escribir innumerables veces la correspondiente expresión matemática.&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
A continuación, detallamos la función &amp;lt;math&amp;gt;f(y)&amp;lt;/math&amp;gt; de la que dependerán los valores de los parámetros &amp;lt;math&amp;gt;k_i&amp;lt;/math&amp;gt;:&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;f(y)=y'(t)=1.01y(t)-y(t)^2&lt;br /&gt;
&lt;br /&gt;
\quad \Rightarrow \quad&lt;br /&gt;
&lt;br /&gt;
\begin{cases}&lt;br /&gt;
 k_1 &amp;amp; =  f(y_i) \\&lt;br /&gt;
 k_2 &amp;amp; =  f(y_i + {1 \over 2}k_1h) \\&lt;br /&gt;
 k_3 &amp;amp; =  f(y_i + \frac{1}{2}k_2h) \\&lt;br /&gt;
 k_4 &amp;amp; =  f(y_i + k_3h) \\&lt;br /&gt;
\end{cases}\quad [h=0.1]&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Entonces el método RK4 para este problema está dado por la siguiente ecuación:&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;y_{i+1} = y_{i} + {1 \over 6}h(k_1+2k_2+2k_3+k_4)&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Mediante el siguiente programa en Matlab calculamos numéricamente la solución y la representamos en un gráfico:&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Archivo:RK4II.png|400px|miniaturadeimagen|derecha|Representación gráfica y(t). Método Runge-Kutta]]&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
%Método de Runge-Kutta&lt;br /&gt;
clc&lt;br /&gt;
&lt;br /&gt;
%Función f(t)=y'(t)&lt;br /&gt;
fy=inline('1.01*y-y^2','y');&lt;br /&gt;
&lt;br /&gt;
%Datos del problema&lt;br /&gt;
y0=0.01;&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=10;&lt;br /&gt;
h=0.1;&lt;br /&gt;
&lt;br /&gt;
%Variable independiente (t)&lt;br /&gt;
t=t0:h:tN;&lt;br /&gt;
&lt;br /&gt;
%Variable dependiente (y)&lt;br /&gt;
y=zeros(1,length(t));&lt;br /&gt;
y(1)=y0;&lt;br /&gt;
&lt;br /&gt;
for i=1:length(t)-1&lt;br /&gt;
    k1=fy(y(i));&lt;br /&gt;
    k2=fy(y(i)+k1/2*h);&lt;br /&gt;
    k3=fy(y(i)+k2/2*h);&lt;br /&gt;
    k4=fy(y(i)+k3*h);&lt;br /&gt;
    y(i+1)=y(i)+h/6*(k1+2*k2+2*k3+k4);&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
%Variable dependiente (x)&lt;br /&gt;
x=1.01-y;&lt;br /&gt;
&lt;br /&gt;
%Representación gráfica&lt;br /&gt;
hold on&lt;br /&gt;
plot(t,x,'b')&lt;br /&gt;
plot(t,y,'r')&lt;br /&gt;
legend('Sustancia A: x(t)','Sustancia B: y(t)')&lt;br /&gt;
xlabel('Tiempo (s)')&lt;br /&gt;
ylabel('Concentración (mol/l)')&lt;br /&gt;
grid on&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
=== Comparación de métodos===&lt;br /&gt;
&lt;br /&gt;
Podemos observar fácilmente que las gráficas obtenidas con los diferentes métodos son iguales a primera vista. Sin embargo, superponiéndolas queda patente que no son exactamente iguales debido a que los métodos no poseen la misma precisión y , al operar todos con la misma longitud de paso, unos aproximan la solución exacta mejor que otros. Así se observa en estas imágenes:&lt;br /&gt;
&lt;br /&gt;
[[Archivo:comparativa1.jpg|400px|miniaturadeimagen|izquierda|Comparación de métodos]]&lt;br /&gt;
[[Archivo:comparativa2.jpg|400px|miniaturadeimagen|derecha|Comparación de métodos]]&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
Como podemos comprobar en las imágenes, el método de Euler es menos preciso que el del trapecio o el de Runge-Kutta.&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Resolución en forma de sistema de ecuaciones ==&lt;br /&gt;
&lt;br /&gt;
A continuación vamos a plantear el problema de valor inicial con un sistema no lineal de dos ecuaciones equivalente al problema resuelto anteriormente.&lt;br /&gt;
&lt;br /&gt;
Estas ecuaciones serán:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;(PVI)&lt;br /&gt;
\begin{cases}&lt;br /&gt;
    y'(t)=k_1 x(t)y(t) \\&lt;br /&gt;
    x'(t)=-k_1 x(t)y(t) \\&lt;br /&gt;
    \\&lt;br /&gt;
    x(0)=1 \\&lt;br /&gt;
    y(0) = 0.01&lt;br /&gt;
\end{cases}&lt;br /&gt;
\quad t\in[0,10]&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Resolveremos el problema por el método de Euler y por el método de Runge-Kutta, plasmando las soluciones en gráficos.&lt;br /&gt;
&lt;br /&gt;
=== Método de Euler ===&lt;br /&gt;
&lt;br /&gt;
En este caso aplicaremos en el siguiente código la expresión para EDO a cada una de las ecuaciones que conforma el sistema, obteniendo la correspondiente gráfica.&lt;br /&gt;
 &lt;br /&gt;
[[Archivo:SistEuler.png|400px|miniaturadeimagen|derecha|Representación gráfica de las concentraciones de A y B. Resolución del sistema por Euler]]&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
&lt;br /&gt;
%Resolución del sistema por el método de Euler&lt;br /&gt;
&lt;br /&gt;
clear all&lt;br /&gt;
&lt;br /&gt;
%Definimos el vector de la variable independiente, el número de&lt;br /&gt;
%subintervalos y la longitud de paso&lt;br /&gt;
&lt;br /&gt;
t0 = 0;&lt;br /&gt;
tN = 10;&lt;br /&gt;
h = 0.1;&lt;br /&gt;
t = t0:h:tN&lt;br /&gt;
N = (tN-t0)/h;&lt;br /&gt;
&lt;br /&gt;
%Definimos los vectores de las variables dependientes&lt;br /&gt;
&lt;br /&gt;
x = zeros(1, N+1);&lt;br /&gt;
y = zeros(1, N+1);&lt;br /&gt;
&lt;br /&gt;
x(1) = 1;&lt;br /&gt;
y(1) = 0.01;&lt;br /&gt;
&lt;br /&gt;
for i = 1:N&lt;br /&gt;
    &lt;br /&gt;
    x(i+1)=x(i)+h*(-x(i).*y(i));&lt;br /&gt;
    y(i+1)=y(i)+h*(y(i).*x(i));&lt;br /&gt;
    &lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
%Representamos gráficamente las soluciones&lt;br /&gt;
&lt;br /&gt;
hold on&lt;br /&gt;
&lt;br /&gt;
plot(t,x,'b');&lt;br /&gt;
plot(t,y,'r');&lt;br /&gt;
grid on&lt;br /&gt;
&lt;br /&gt;
legend('Sustancia A: x(t)','Sustancia B: y(t)')&lt;br /&gt;
xlabel('Tiempo (s)')&lt;br /&gt;
ylabel('Concentración (mol/l)')&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
hold off&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
}}&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Método de Runge-Kutta===&lt;br /&gt;
&lt;br /&gt;
El método de resolución numérica de Runge-Kutta, involucra un gran número de parámetros. Para simplificar la implementación de este método en Matlab, el sistema se tratará como una matriz &amp;lt;math&amp;gt;z&amp;lt;/math&amp;gt;. Además, utilizaremos la función ''inline'', con la que declararemos previamente la función algebraica necesaria para el cálculo de los parámetros &amp;lt;math&amp;gt;k_i&amp;lt;/math&amp;gt;, ahorrándonos tener que escribir innumerables veces la correspondiente expresión matemática.&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Primero, expresamos el sistema en forma matricial:&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;(PVI)\begin{cases}&lt;br /&gt;
    x'(t)=-k_1 x(t)y(t) \\&lt;br /&gt;
    y'(t)=k_1 x(t)y(t) \\&lt;br /&gt;
    \\&lt;br /&gt;
    x(0)=1 \\&lt;br /&gt;
    y(0) = 0.01&lt;br /&gt;
\end{cases}\quad t\in[0,10]&lt;br /&gt;
&lt;br /&gt;
\quad \Rightarrow \quad k_1=1\quad \Rightarrow \quad&lt;br /&gt;
&lt;br /&gt;
(PVI)\begin{cases}\vec{z}'(t)=&lt;br /&gt;
   \begin{bmatrix}&lt;br /&gt;
      x'(t) \\&lt;br /&gt;
      y'(t) \\&lt;br /&gt;
   \end{bmatrix}&lt;br /&gt;
=&lt;br /&gt;
      \begin{bmatrix}&lt;br /&gt;
      -x(t)y(t) \\&lt;br /&gt;
      x(t)y(t) \\&lt;br /&gt;
   \end{bmatrix}&lt;br /&gt;
&lt;br /&gt;
 \\ \\ \vec{z}(0)=&lt;br /&gt;
   \begin{bmatrix}&lt;br /&gt;
      x(0) \\&lt;br /&gt;
      y(0) \\&lt;br /&gt;
   \end{bmatrix}&lt;br /&gt;
=&lt;br /&gt;
      \begin{bmatrix}&lt;br /&gt;
      1 \\&lt;br /&gt;
      0.01 \\&lt;br /&gt;
   \end{bmatrix}&lt;br /&gt;
\end{cases}\quad t\in[0,10]&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
A continuación, detallamos la función &amp;lt;math&amp;gt;\vec{F}&amp;lt;/math&amp;gt; de la que dependerán los valores de los parámetros &amp;lt;math&amp;gt;k_i&amp;lt;/math&amp;gt;:&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;\vec{F}(x,y)=\vec{F}(\vec{z})=&lt;br /&gt;
&lt;br /&gt;
\begin{bmatrix}&lt;br /&gt;
    f(\vec{z}) \\&lt;br /&gt;
    g(\vec{z}) \\&lt;br /&gt;
\end{bmatrix}=&lt;br /&gt;
&lt;br /&gt;
\begin{bmatrix}&lt;br /&gt;
    x'(t) \\&lt;br /&gt;
    y'(t) \\&lt;br /&gt;
\end{bmatrix}=&lt;br /&gt;
&lt;br /&gt;
\vec{z}'(t)=&lt;br /&gt;
&lt;br /&gt;
\begin{bmatrix}&lt;br /&gt;
    -x(t)y(t) \\&lt;br /&gt;
    x(t)y(t) \\&lt;br /&gt;
\end{bmatrix}&lt;br /&gt;
\quad \Rightarrow \quad&lt;br /&gt;
&lt;br /&gt;
\begin{cases}&lt;br /&gt;
 [\vec{k_1}] &amp;amp; =  F(\vec{z}_i) \\&lt;br /&gt;
 [\vec{k_2}] &amp;amp; =  F(\vec{z}_i + {1 \over 2}k_1h) \\&lt;br /&gt;
 [\vec{k_3}] &amp;amp; =  F(\vec{z}_i + \frac{1}{2}k_2h) \\&lt;br /&gt;
 [\vec{k_4}] &amp;amp; =  F(\vec{z}_i + k_3h) \\&lt;br /&gt;
\end{cases}\quad [h=0.1]&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Entonces el método RK4 para este problema está dado por la siguiente ecuación:&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;\vec{z}_{i+1} = \vec{z}_{i} + {1 \over 6}h(\vec{k_1}+2\vec{k_2}+2\vec{k_3}+\vec{k_4})&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Mediante el siguiente programa en Matlab calculamos numéricamente la solución y la representamos en un gráfico:&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Archivo:sistema_RK4.png|400px|miniaturadeimagen|derecha|Representación gráfica de las concentraciones de A y B. Resolución del sistema por Runge-Kutta]]&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
%Método de Runge-Kutta&lt;br /&gt;
clc&lt;br /&gt;
&lt;br /&gt;
%Función F=[x'(t); y'(t)]&lt;br /&gt;
F=inline('[-z(1)*z(2);z(1)*z(2)]','z');&lt;br /&gt;
&lt;br /&gt;
%Datos del problema &lt;br /&gt;
x0=1;&lt;br /&gt;
y0=0.01;&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=10;&lt;br /&gt;
h=0.1;&lt;br /&gt;
&lt;br /&gt;
%Vector de variable independiente (t)&lt;br /&gt;
t=t0:h:tN;&lt;br /&gt;
&lt;br /&gt;
%Matriz de variables dependientes z=[x;y]&lt;br /&gt;
z=zeros(2,length(t));&lt;br /&gt;
z(:,1)=[x0;y0];&lt;br /&gt;
&lt;br /&gt;
for i = 1:length(t)-1&lt;br /&gt;
    k1=F(z(:,i));&lt;br /&gt;
    k2=F(z(:,i)+k1.*h/2);&lt;br /&gt;
    k3=F(z(:,i)+k2.*h/2);&lt;br /&gt;
    k4=F(z(:,i)+k3.*h);&lt;br /&gt;
    z(:,i+1)=z(:,i)+h/6.*(k1+2.*k2+2.*k3+k4);&lt;br /&gt;
end&lt;br /&gt;
 &lt;br /&gt;
%Representación gráfica&lt;br /&gt;
hold on&lt;br /&gt;
plot(t,z(1,:))&lt;br /&gt;
plot(t,z(2,:),'r')&lt;br /&gt;
legend('Sustancia A: x(t)','Sustancia B: y(t)')&lt;br /&gt;
xlabel('Tiempo (s)')&lt;br /&gt;
ylabel('Concentración (mol/l)')&lt;br /&gt;
grid on&lt;br /&gt;
%hold off&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
== Interpretación de las gráficas ==&lt;br /&gt;
&lt;br /&gt;
Como cabía esperar, obtenemos la misma solución resolviendo el problema como sistema o como EDO. Podemos observar por los resultados obtenidos que la velocidad de aparición de B es igual a la velocidad de desaparición de A (como dicta el principio de conservación de la masa), que A acaba desapareciendo prácticamente por completo y que la concentración de B termina por estabilizarse alrededor de 1 mol/l. Ambos compuestos alcanzan sus los extremos de sus concentraciones en el mismo instante de tiempo&lt;br /&gt;
&lt;br /&gt;
También cabe destacar que cuando el tiempo transcurrido alcanza 4,5 segundos las concentraciones de ambos compuestos son las mismas.&lt;br /&gt;
&lt;br /&gt;
= Reacción II =&lt;br /&gt;
&lt;br /&gt;
En este apartado vamos a estudiar la reacción propuesta por Alfred J. Lotka en 1920, que es la siguiente:&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt; A + X →_{k1} 2X;&amp;lt;/math&amp;gt;     :&amp;lt;math&amp;gt; X + Y →_{k2} 2Y;&amp;lt;/math&amp;gt;     :&amp;lt;math&amp;gt;Y →_{k3} 2B  &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Como se puede observar, se trata de una reacción compleja integrada por 3 reacciones simples (las dos primeras autocatalíticas) en las que intervienen un total de 4 compuestos, A, B, X e Y. Siguiendo el desarrollo de la reacción, es lógico suponer que A se agotará al comienzo de la reacción, que los máximos de concentración de X e Y se darán en los estados intermedios y que al final el compuesto B será el único restante, siendo el producto final de la reacción.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Interpretación del problema y deducción de las ecuaciones diferenciales ==&lt;br /&gt;
&lt;br /&gt;
Para averiguar cómo evolucionan las concentraciones de los cuatro compuestos durante el desarrollo de la reacción necesitaremos obtener cuatro ecuaciones diferenciales. Para ello nos volveremos a basar en los principios físicos que ya empleamos en la anterior reacción. Definimos A(t), x(t), y(t), y B(t) (A, x, y, B; para ahorrar notación) a las concentraciones de A, X, Y, y B, respectivamente. &lt;br /&gt;
&lt;br /&gt;
En primer lugar aplicamos el Principio de Conservación de la masa, que establece que la suma de las concentraciones de los compuestos es constante (no desaparece masa en el proceso), lo que derivando nos indica que:&lt;br /&gt;
&lt;br /&gt;
: &amp;lt;math&amp;gt; A' + x' + y' + B' = 0 \quad\quad(I)&amp;lt;/math&amp;gt;       &lt;br /&gt;
&lt;br /&gt;
A continuación aplicaremos la Ley de Acción de Masas (velocidad de reacción proporcional al producto de la concentración de los reactivos).&lt;br /&gt;
&lt;br /&gt;
Aplicando esta ley a la última reacción simple obtenemos que: &lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;B'=k_3y \quad\quad(II)&amp;lt;/math&amp;gt;        &lt;br /&gt;
&lt;br /&gt;
En el caso de las concentraciones de X e Y las expresiones resultantes son algo más complicadas ya que estos dos compuestos actúan como reactivos y productos en más de una reacción simple, por lo que la variación de sus concentraciones será la suma de las variaciones de las reacciones en las que aparezcan:&lt;br /&gt;
&lt;br /&gt;
: &amp;lt;math&amp;gt; x' = x'_{1} + x'_{2} → x' = k_{1}Ax - k{2}xy \quad\quad(III)&amp;lt;/math&amp;gt;        &lt;br /&gt;
: &amp;lt;math&amp;gt; y' = y'_{2} + y'_{3} → y' = k_{2}xy − k_3{y} \quad\quad(IV)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Por último sustituimos (II), (III) y (IV) en (I) obteniendo: &lt;br /&gt;
&lt;br /&gt;
: &amp;lt;math&amp;gt; A' + k_{1}Ax - k{2}xy + k_{2}xy − k_3{y}+ k_3y= 0 : &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
De donde obtenemos que:&lt;br /&gt;
&lt;br /&gt;
: &amp;lt;math&amp;gt; A' = -k_{1}Ax &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Ahora que ya tenemos las variaciones de concentración de los compuestos en función de las concentraciones podemos aplicar métodos numéricos que nos lleven a una solución aproximada.&lt;br /&gt;
&lt;br /&gt;
== Resolución numérica del sistema de ecuaciones ==&lt;br /&gt;
&lt;br /&gt;
Una vez obtenidas las ecuaciones y conociendo las condiciones iniciales y los valores de las constantes podemos plantear el problema de valor inicial para luego resolverlo.&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;(PVI)&lt;br /&gt;
\begin{cases}&lt;br /&gt;
    A' = -k_{1}Ax\\&lt;br /&gt;
    x' = k_{1}Ax - k{2}xy\\&lt;br /&gt;
    y' = k_{2}xy − k_3{y}\\&lt;br /&gt;
    B'=k_3y \\&lt;br /&gt;
\\&lt;br /&gt;
    A(0)=5  \\&lt;br /&gt;
    x(0)=5*10^{-4} \\&lt;br /&gt;
    y(0)=10^{-5}\\&lt;br /&gt;
    B(0)=0 \\&lt;br /&gt;
\end{cases}&lt;br /&gt;
\quad t\in[0,200]&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Siendo &amp;lt;math&amp;gt; k_{1}=K_{2}=2k_{3}=0.1 &amp;lt;/math&amp;gt; y las unidades de la concentración mol/l.&lt;br /&gt;
&lt;br /&gt;
=== Método de Euler ===&lt;br /&gt;
&lt;br /&gt;
Aplicamos el método de Euler de forma análoga a como lo hicimos en [[Reacciones_con_autocatálisis._Grupo_D12#Método_de_Euler_2|apartado 2.5.1]]&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Euler lotka0.01.png|400px|miniaturadeimagen|derecha|Representación gráfica de las concentraciones de A, B, X, e Y a lo largo del tiempo. Resoluciónd delsistema por el método de Euler con longitud de paso h=0.01]] &lt;br /&gt;
[[Archivo:Euler lotka0.001.png|400px|miniaturadeimagen|derecha|Representación gráfica de las concentraciones de A, B, X, e Y a lo largo del tiempo. Resoluciónd delsistema por el método de Euler con longitud de paso h=0.001]]&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
&lt;br /&gt;
%Resolución del sistema de la reacción de Lotka por el método de Euler&lt;br /&gt;
&lt;br /&gt;
clear all&lt;br /&gt;
&lt;br /&gt;
%Definimos la variable independiente y establecemos los datos del problema&lt;br /&gt;
%de valor inicial. Para la longitud de paso h introducimos en primer lugar&lt;br /&gt;
%0.01 y luego 0.001&lt;br /&gt;
&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=200;&lt;br /&gt;
h= input('Introduzca una longitud de paso ');&lt;br /&gt;
t = t0:h:tN;&lt;br /&gt;
N=(tN-t0)/h;&lt;br /&gt;
k1 = 0.1;&lt;br /&gt;
k2 = 0.1;&lt;br /&gt;
k3 = 0.05;&lt;br /&gt;
A0 = 5;&lt;br /&gt;
B0 = 0;&lt;br /&gt;
X0 = 5*10^(-4);&lt;br /&gt;
Y0 = 10^(-5);&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
%Definimos las variables dependientes.&lt;br /&gt;
&lt;br /&gt;
A = zeros(1, N-1);&lt;br /&gt;
B = A;&lt;br /&gt;
X = A;&lt;br /&gt;
Y = A;&lt;br /&gt;
&lt;br /&gt;
A(1) = A0;&lt;br /&gt;
B(1) = B0;&lt;br /&gt;
X(1) = X0;&lt;br /&gt;
Y(1) = Y0;&lt;br /&gt;
&lt;br /&gt;
for i = 1:N&lt;br /&gt;
    &lt;br /&gt;
    X(i+1) = X(i) + h*(k1*A(i)*X(i)-k2*Y(i)*X(i));&lt;br /&gt;
    Y(i+1)=Y(i)+h.*(k2.*X(i).*Y(i)-k3.*Y(i));&lt;br /&gt;
    B(i+1) = B(i) + h*(k3*Y(i));&lt;br /&gt;
    A(i+1) = A(i) + h*(-k1*A(i)*X(i));&lt;br /&gt;
   &lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
%Representamos gráficamente la solución&lt;br /&gt;
&lt;br /&gt;
hold on&lt;br /&gt;
&lt;br /&gt;
plot (t,A,'b')&lt;br /&gt;
plot(t, X, 'r')&lt;br /&gt;
plot(t,Y, 'g')&lt;br /&gt;
plot(t, B, 'm')&lt;br /&gt;
legend('Sustancia A: A(t)','Sustancia X: x(t)','Sustancia Y: y(t)','Sustancia B: B(t)','Location','Best')&lt;br /&gt;
xlabel('Tiempo (s)')&lt;br /&gt;
ylabel('Concentración (mol/l)')&lt;br /&gt;
grid on&lt;br /&gt;
&lt;br /&gt;
hold off&lt;br /&gt;
&lt;br /&gt;
}}&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
A continuación tendremos que comprobar si el método es estable. &amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
Un método es estable cuando el error local es pequeño y además este error no se amplifica a lo largo del tiempo. Para calificar la estabilidad del método de Euler resolveremos el sistema anterior con este método, con pasos &amp;quot;h=0.01&amp;quot; y &amp;quot;h=0.001&amp;quot;, y lo compararemos con la resolución del sistema con el método de Heun, que se asemeja más a la solución exacta.&amp;lt;br /&amp;gt;&lt;br /&gt;
En la comparación representaremos en azul el método de Heun y en rojo el método de Euler.&amp;lt;br /&amp;gt;&lt;br /&gt;
Para &amp;quot;h=0.01&amp;quot; tenemos lo siguiente:&lt;br /&gt;
[[Archivo:1estabilidad123.jpg|400px|miniaturadeimagen|izquierda|Comparación entre Método de Heun (Azul) con el Método de Euler con paso h=0.01 (Rojo)]] &lt;br /&gt;
[[Archivo:1estabilidad321.jpg|400px|miniaturadeimagen|derecha|Comparación entre Método de Heun (Azul) con el Método de Euler con paso h=0.01 (Rojo)]] &lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
Para &amp;quot;h=0.001&amp;quot; tenemos lo siguiente:&lt;br /&gt;
[[Archivo:2estabilidad123.jpg|400px|miniaturadeimagen|izquierda|Comparación entre Método de Heun (Azul) con el Método de Euler con paso h=0.001 (Rojo)]] &lt;br /&gt;
[[Archivo:2estabilidad321.jpg|400px|miniaturadeimagen|derecha|Comparación entre Método de Heun (Azul) con el Método de Euler con paso h=0.001 (Rojo)]]&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
Como podemos ver en las imágenes de los dos procesos las gráficas se superponen y no se aprecian diferencias hasta que no ampliamos la imagen. Y esto sucede en todo momento con lo que podemos garantizar que en este caso el método de Euler es estable para los pasos que hemos usado.&lt;br /&gt;
&lt;br /&gt;
=== Método de Heun ===&lt;br /&gt;
&lt;br /&gt;
Si bien el método de resolución numérica de Heun no involucra un número de parámetros tan notable como el método de Runge-Kutta, en este caso tenemos un sistema de 4 ecuaciones diferenciales, por lo que, en aras de simplificar, utilizaremos el mismo criterio que en el [[Reacciones_con_autocatálisis._Grupo_D12#Método_de_Runge-Kutta_2|apartado 2.5.2]].: El sistema se tratará como una matriz &amp;lt;math&amp;gt;z&amp;lt;/math&amp;gt;, y para la obtención de los parámetros &amp;lt;math&amp;gt;k_i&amp;lt;/math&amp;gt; utilizaremos la función ''inline'', con la que declararemos previamente las expresiones necesarias para el cálculo de los parámetros &amp;lt;math&amp;gt;k_i&amp;lt;/math&amp;gt;.&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Primero, expresamos el sistema en forma matricial:&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;(PVI)\begin{cases}&lt;br /&gt;
A'(t)=-k_1 A(t)x(t) \\&lt;br /&gt;
x'(t)=k_1 A(t)x(t)-k_2 x(t)y(t) \\&lt;br /&gt;
y'(t)=k_2 x(t)y(t)-k_3 y(t) \\&lt;br /&gt;
B'(t)=k_3 x(t)y(t) \\ \\&lt;br /&gt;
A(0)=5 \\&lt;br /&gt;
x(0)=5·10^{-4} \\&lt;br /&gt;
y(0)=10^{-5} \\&lt;br /&gt;
B(0) = 0&lt;br /&gt;
\end{cases}\quad t\in[0,200]&lt;br /&gt;
&lt;br /&gt;
\quad \Rightarrow \quad&lt;br /&gt;
&lt;br /&gt;
\begin{cases}&lt;br /&gt;
k_1=0.1 \\&lt;br /&gt;
k_2=0.1 \\&lt;br /&gt;
k_3=0.05 \\&lt;br /&gt;
&lt;br /&gt;
\end{cases}&lt;br /&gt;
&lt;br /&gt;
\quad \Rightarrow \quad&lt;br /&gt;
&lt;br /&gt;
(PVI)\begin{cases}\vec{z}'(t)=&lt;br /&gt;
   \begin{bmatrix}&lt;br /&gt;
      A'(t) \\&lt;br /&gt;
      x'(t) \\&lt;br /&gt;
      y'(t) \\&lt;br /&gt;
      B'(t) \\&lt;br /&gt;
   \end{bmatrix}&lt;br /&gt;
=&lt;br /&gt;
      \begin{bmatrix}&lt;br /&gt;
      -0.1 A(t)x(t) \\&lt;br /&gt;
      0.1 A(t)x(t)-0.1 x(t)y(t) \\&lt;br /&gt;
      0.1 x(t)y(t)-0.05 y(t) \\&lt;br /&gt;
      0.05 y(t)x(t)\\&lt;br /&gt;
   \end{bmatrix}&lt;br /&gt;
&lt;br /&gt;
 \\ \\ \vec{z}(0)=&lt;br /&gt;
   \begin{bmatrix}&lt;br /&gt;
      A(0) \\&lt;br /&gt;
      x(0) \\&lt;br /&gt;
      y(0) \\&lt;br /&gt;
      B(0) \\&lt;br /&gt;
   \end{bmatrix}&lt;br /&gt;
=&lt;br /&gt;
      \begin{bmatrix}&lt;br /&gt;
      5 \\&lt;br /&gt;
      5·10^{-4} \\&lt;br /&gt;
      10^{-5} \\&lt;br /&gt;
      0&lt;br /&gt;
   \end{bmatrix}&lt;br /&gt;
\end{cases}\quad t\in[0,200]&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
A continuación, detallamos la función &amp;lt;math&amp;gt;\vec{F}&amp;lt;/math&amp;gt; de la que dependerán los valores de los parámetros &amp;lt;math&amp;gt;k_i&amp;lt;/math&amp;gt;:&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;\vec{F}(A,x,y,B)=\vec{F}(\vec{z})=&lt;br /&gt;
\begin{bmatrix}&lt;br /&gt;
    f(\vec{z}) \\ &lt;br /&gt;
    g(\vec{z}) \\ &lt;br /&gt;
    h(\vec{z}) \\ &lt;br /&gt;
    i(\vec{z}) \\ &lt;br /&gt;
\end{bmatrix}=&lt;br /&gt;
\begin{bmatrix}&lt;br /&gt;
    A'(t) \\&lt;br /&gt;
    x'(t) \\&lt;br /&gt;
    y'(t) \\&lt;br /&gt;
    B'(t) \\&lt;br /&gt;
\end{bmatrix}=&lt;br /&gt;
\vec{z}'(t)=&lt;br /&gt;
      \begin{bmatrix}&lt;br /&gt;
      -0.1 A(t)x(t) \\&lt;br /&gt;
      0.1 A(t)x(t)-0.1 x(t)y(t) \\&lt;br /&gt;
      0.1 x(t)y(t)-0.05 y(t) \\&lt;br /&gt;
      0.05 y(t)x(t)\\&lt;br /&gt;
   \end{bmatrix}&lt;br /&gt;
&lt;br /&gt;
\quad \Rightarrow \quad &lt;br /&gt;
&lt;br /&gt;
\begin{cases}&lt;br /&gt;
 [\vec{k_1}] &amp;amp; =  F(\vec{z}_i) \\&lt;br /&gt;
 [\vec{k_2}] &amp;amp; =  F(\vec{z}_i + {1 \over 2}k_1h) \\&lt;br /&gt;
\end{cases}\quad [h=0.01]&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Entonces el método de Heun para este problema está dado por la siguiente ecuación:&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;\vec{z}_{i+1} = \vec{z}_{i} + {1 \over 2}h(\vec{k_1}+\vec{k_2})&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Mediante el siguiente programa en Matlab calculamos numéricamente la solución y la representamos en un gráfico:&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Archivo:AXYBRK4.png|400px|miniaturadeimagen|derecha|Representación gráfica de las concentraciones de A,X,Y y B. Resolución del sistema por Heun]]&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
%Método de Heun&lt;br /&gt;
clc&lt;br /&gt;
&lt;br /&gt;
%Función F=[A'(t);x'(t); y'(t);B'(t)]&lt;br /&gt;
F=inline('0.1.*[-z(1)*z(2);z(1)*z(2)-z(2)*z(3);z(2)*z(3)-z(3)/2;z(3)/2]','z');&lt;br /&gt;
&lt;br /&gt;
%Datos del problema&lt;br /&gt;
A0=5;&lt;br /&gt;
x0=5*10^-4;&lt;br /&gt;
y0=10^(-5);&lt;br /&gt;
B0=0;&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=200;&lt;br /&gt;
h=0.1;&lt;br /&gt;
&lt;br /&gt;
%Vector de variable independiente (t)&lt;br /&gt;
t=t0:h:tN;&lt;br /&gt;
&lt;br /&gt;
%Matriz de variables dependientes z=[A;x;y;B]&lt;br /&gt;
z=zeros(4,length(t));&lt;br /&gt;
z(:,1)=[A0;x0;y0;B0];&lt;br /&gt;
&lt;br /&gt;
for i = 1:length(t)-1&lt;br /&gt;
    k1=F(z(:,i));&lt;br /&gt;
    k2=F(z(:,i)+k1.*h/2);&lt;br /&gt;
    z(:,i+1)=z(:,i)+h/2.*(k1+k2);&lt;br /&gt;
end&lt;br /&gt;
 &lt;br /&gt;
%Representación gráfica&lt;br /&gt;
hold on&lt;br /&gt;
plot(t,z(1,:),'b')&lt;br /&gt;
plot(t,z(2,:),'r')&lt;br /&gt;
plot(t,z(3,:),'g')&lt;br /&gt;
plot(t,z(4,:),'m')&lt;br /&gt;
legend('Sustancia A: A(t)','Sustancia X: x(t)','Sustancia Y: y(t)','Sustancia B: B(t)','Location','Best')&lt;br /&gt;
xlabel('Tiempo (s)')&lt;br /&gt;
ylabel('Concentración (mol/l)')&lt;br /&gt;
grid on&lt;br /&gt;
hold off&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
== Interpretación de las gráficas == &lt;br /&gt;
 &lt;br /&gt;
El proceso comienza con el predominio absoluto del compuesto A en la concentración total, siendo la presencia de los otros tres compuestos despreciable. Durante los primeros segundos la situación apenas cambia, pero tras los diez primeros segundos la concentración de A cae bruscamente mientras que la concentración de X aumenta a la misma velocidad; antes de llegar a los veinte segundos transcurridos las concentraciones de ambos compuestos se igualan y otros quince segundos más tarde el compuesto A  prácticamente ha desaparecido y el X ha alcanzado su concentración máxima (5 mol/litro).&lt;br /&gt;
&lt;br /&gt;
Es entonces cuando concluye la primera reacción y comienzan las otras dos, al no haber más compuesto A que cree compuesto X. La velocidad de aparición de Y es inicialmente mayor que la de B, superando al poco tiempo en concentración a la sustancia X. Sin embargo, llega un momento en el que la concentración de X es tan baja que se ralentiza la creación de Y y pronto empieza a disminuir su concentración tras alcanzar un máximo en torno a los 56 segundos, perdiendo peso la segunda reacción en beneficio de la tercera.&lt;br /&gt;
&lt;br /&gt;
Tras los 60 segundos de reacción el compuesto X pasa a tener una concentración despreciable, por lo que la única reacción simple que se sigue desarrollando es la tercera, destruyéndose reactivo Y y creándose producto B. La concentración de Y va reduciéndose paulatinamente hasta que en torno a los 160 segundos de reacción alcanza niveles insignificantes mientras que la concentración de B alcanza su máximo de 5 mol/litro.&lt;br /&gt;
&lt;br /&gt;
Es interesante observar que en todo momento se cumple el Principio de Conservación de la masa: la suma en cualquier momento de las concentraciones de las sustancias es 5 mol /litro. Esto es fácilmente comprobable en los momentos en que las concentraciones de A, X y B alcanzan su máximo de 5 mol/litro y el resto de concentraciones son nulas o despreciables. &lt;br /&gt;
[[Categoría:Ecuaciones Diferenciales]]&lt;br /&gt;
[[Categoría:ED14/15]]&lt;br /&gt;
[[Categoría:Trabajos 2014-15]]&lt;/div&gt;</summary>
		<author><name>Javier Ruiz de Galarreta López</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Reacciones_con_autocat%C3%A1lisis._Grupo_D12&amp;diff=29223</id>
		<title>Reacciones con autocatálisis. Grupo D12</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Reacciones_con_autocat%C3%A1lisis._Grupo_D12&amp;diff=29223"/>
				<updated>2015-03-12T09:57:38Z</updated>
		
		<summary type="html">&lt;p&gt;Javier Ruiz de Galarreta López: /* Unicidad de la solución */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{ TrabajoED | Reacciones con autocatálisis. Grupo D12 | [[:Categoría:Ecuaciones Diferenciales|Ecuaciones Diferenciales]]|[[:Categoría:ED14/15|Curso 2014-15]] | Javier Ruiz de Galarreta López, Argimiro Martínez López, Eduardo Moyano García, Alberto Rodríguez Ruiz. }}&lt;br /&gt;
&lt;br /&gt;
= Introducción: objetivos y metodología =&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
El objetivo de este trabajo es estudiar las concentraciones de los reactivos y productos de una reacción química a lo largo de la evolución en el tiempo de dicha reacción. Para ello modelizaremos el proceso empleando ecuaciones diferenciales y teniendo en cuenta la Ley de Acción de Masas y el Principio de Conservación de la materia.&lt;br /&gt;
&lt;br /&gt;
Al ser las ecuaciones y sistemas que se nos presentan de difícil resolución analítica, utilizaremos el programa informático Matlab para resolverlos mediante métodos numéricos como el de Euler, el del Trapecio, el de Runge-Kutta y el de Heun. &lt;br /&gt;
&lt;br /&gt;
Plasmaremos las soluciones en gráficos que nos permitirán dar una interpretación físico química a los resultados.&lt;br /&gt;
&lt;br /&gt;
= Reacción I =&lt;br /&gt;
&lt;br /&gt;
En primer lugar consideramos una reacción química irreversible en una solución bien mezclada, que se desarrolla para un volumen y una temperatura constantes, y en la que uno de los componentes (B, en este caso), hace de efecto catalítico.&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt; A + B →_{k1} 2B  &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Para desarrollar nuestro análisis nos apoyaremos en dos leyes físico químicas:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''Ley de acción de masas''': Enunciada por Guldberg y Waage en 1864, establece, entre otras cosas, que  la velocidad de&lt;br /&gt;
reacción es proporcional al producto de las concentraciones de los reactivos.&lt;br /&gt;
&lt;br /&gt;
'''Principio de conservación de la masa''': Establece que en una reacción química ordinaria la masa permanece constante, siendo la masa consumida de los reactivos igual a la masa obtenida de los productos. Fue elaborada independientemente por Míjail Lomonósov en 1745 y Antoine Lavoisier en 1785.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Interpretación del problema y deducción de las ecuaciones diferenciales ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Para hallar las ecuaciones diferenciales que nos describan cómo se desarrolla la reacción en el tiempo nos basaremos en las dos leyes enunciadas anteriormente. En primer lugar, definimos nuestra variable independiente como el tiempo &amp;lt;math&amp;gt;t&amp;lt;/math&amp;gt; en segundos. Las dos variables dependientes serán las concentraciones de los compuestos A y B, que denominaremos &amp;lt;math&amp;gt;x(t)&amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt;y(t)&amp;lt;/math&amp;gt;, ambas expresadas en mol/l. &lt;br /&gt;
&lt;br /&gt;
El principio de conservación de la masa expone que la suma de las concentraciones de los reactivos y los productos es constante. Esto equivale, derivando la expresión &amp;lt;math&amp;gt;x(t)+y(t)=cte&amp;lt;/math&amp;gt;, a que  desaparece tanto reactivo como producto aparece, o lo que es lo mismo, que la velocidad de aparición del producto es igual a la velocidad de desaparición (velocidad de aparición negativa) del reactivo:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;x'(t)=-y'(t)&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
La otra ecuación que necesitamos la obtenemos directamente de aplicar la Ley de acción de masas, que establece que la velocidad de la reacción (la velocidad a la que aparece el producto o desaparece el reactivo) es igual al producto de las concentraciones por una constante.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;y'(t)=k_1x(t)y(t)&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Obtención del problema de valor inicial ==&lt;br /&gt;
Una vez demostrado el origen de las ecuaciones (1) y (2) en el apartado anterior, obtendremos el problema de valor inicial (PVI) mediante las operaciones detalladas a continuación:&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;x'(t)+y'(t)=0\quad\quad(1)&amp;lt;/math&amp;gt;&lt;br /&gt;
:&amp;lt;math&amp;gt;y'(t)=k_1x(t)y(t)\quad\quad(2)&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Integrando (1) obtenemos (3):&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
:&amp;lt;math&amp;gt;\int_\mathbb{D} (\frac{dx(t)}{dt} + \frac{dy(t)}{dt})\,dt =\int_\mathbb{D} 0\,dt \quad \Rightarrow \quad x(t)+y(t)=k_2\quad \Rightarrow \quad x(t)=k_2-y(t)\quad\quad(3)&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Sustituyendo (3) en (2), obtenemos (4):&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;y'(t)=k_1x(t)y(t)\quad \Rightarrow \quad y'(t)=k_1(k_2-y(t))y(t)\quad \Rightarrow \quad y'(t)=k_1k_2y(t)-k_1y^2(t)\quad\quad(4)&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Conocemos las concentraciones iniciales de A y de B, por lo que podemos obtener el valor de la constante k&amp;lt;sub&amp;gt;2&amp;lt;/sub&amp;gt;:&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;[A]:\quad x(0)=1 mol/l;\quad\quad [B]:\quad y(0)=0,01 mol/l&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;x(t)+y(t)=k_2\quad \Rightarrow \quad x(0)+y(0)=k_2\quad \Rightarrow \quad 1+0,01=k_2\quad \Rightarrow \quad k_2=1,01&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Por último, conocemos también el valor de k&amp;lt;sub&amp;gt;1&amp;lt;/sub&amp;gt;, por lo que podremos plantear a continuación el correspondiente PVI:&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;k_1=1&amp;lt;/math&amp;gt;&lt;br /&gt;
:&amp;lt;math&amp;gt;(PVI)\begin{cases}y'(t)=1,01y(t)-y^2(t) \\ \\&lt;br /&gt;
y(0) = 0,01 \end{cases}\quad (t,y)\in[0,10]\times\mathbb{R}&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Unicidad de la solución ==&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Existencia-y-unicidad.png|200px|miniaturadeimagen|derecha|Intersección B con dominio]]&lt;br /&gt;
&lt;br /&gt;
Aplicamos a continuación el Teorema de Existencia y Unicidad:&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Sea &amp;lt;math&amp;gt;f(t,y)=y'(t) \Rightarrow f(t,y)=1.01y(t)-y^2(t)\quad&amp;lt;/math&amp;gt;, y &amp;lt;math&amp;gt;\quad\frac{\partial }{\partial y} f(t,y) = 1.01-2y(t)&amp;lt;/math&amp;gt;.&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
Y sea &amp;lt;math&amp;gt;B[(t_0,y_0),r],\quad r&amp;gt;0,\quad en (t_0,y_0)=(0,0.01)&amp;lt;/math&amp;gt;.&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt; y &amp;lt;math&amp;gt;mathbb{D} = mathbb{R}^+&amp;lt;/math&amp;gt; &lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;f(t,y)&amp;lt;/math&amp;gt; es continua en &amp;lt;math&amp;gt; \mathbb{B}\cap \mathbb{D}\quad \Rightarrow \quad \exists  y(t)\quad /\quad y'(t)=1,01y(t)-y^2(t)&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;math&amp;gt;\frac{\partial }{\partial y} f(t,y)&amp;lt;/math&amp;gt; es continua en &amp;lt;math&amp;gt; \mathbb{B}\cap \mathbb{D}\quad \Rightarrow \quad \exists !  y(t)\quad /\quad y'(t)=1,01y(t)-y^2(t)&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Con lo que queda demostrado que el (PVI) tiene solución y además esta es única.&lt;br /&gt;
&lt;br /&gt;
== Resolución numérica del problema de valor inicial ==&lt;br /&gt;
&lt;br /&gt;
En este apartado resolveremos el problema de valor inicial planteado anteriormente con tres métodos de integración numérica: el método de Euler, el método del Trapecio y el método de Runge-Kutta de orden 4.&lt;br /&gt;
&lt;br /&gt;
=== Método de Euler ===&lt;br /&gt;
&lt;br /&gt;
El método de Euler, llamado así en honor al matemático Leonhard Euler, es un procedimiento de integración numérica. Su expresión matemática es: &lt;br /&gt;
&amp;lt;math&amp;gt;  PVI =   &lt;br /&gt;
\begin{cases}&lt;br /&gt;
 y_0 \\&lt;br /&gt;
 y_{n+1}  = y_n + h*f(t_n,y_n) \\&lt;br /&gt;
\end{cases}\quad&lt;br /&gt;
   &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
A continuación emplearemos esta expresión en un programa de Matlab para obtener una aproximación de las soluciones. El código de dicho programa es el siguiente.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Eulergrafica.png|400px|miniaturadeimagen|derecha|Representación gráfica y(t). Método de Euler]]&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
%Método de Euler&lt;br /&gt;
clc&lt;br /&gt;
&lt;br /&gt;
%Datos iniciales&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=4;&lt;br /&gt;
y0=0.01;&lt;br /&gt;
h=0.1;&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=10;&lt;br /&gt;
&lt;br /&gt;
%Cálculo de subintervalos&lt;br /&gt;
N=round((tN-t0)/h);&lt;br /&gt;
t=t0:h:tN;&lt;br /&gt;
&lt;br /&gt;
%Creamos el vector donde vamos a guardar las soluciones&lt;br /&gt;
y=zeros(1,N+1);&lt;br /&gt;
y(1)=y0;&lt;br /&gt;
&lt;br /&gt;
%Euler&lt;br /&gt;
for i=1:N;&lt;br /&gt;
    y(i+1)=y(i)+h*(1.01*y(i)-(y(i)).^2);&lt;br /&gt;
end&lt;br /&gt;
%Tabla de Resultados&lt;br /&gt;
[t',y']&lt;br /&gt;
x=1.01-y;&lt;br /&gt;
hold on &lt;br /&gt;
plot(t,y,'r')&lt;br /&gt;
plot(t,x,'b')&lt;br /&gt;
hold off&lt;br /&gt;
legend('Sustancia B: y(t)','Sustancia A: x(t)','Location','best');&lt;br /&gt;
xlabel('Tiempo (s)')&lt;br /&gt;
ylabel('Concentración (mol/l)')&lt;br /&gt;
grid on&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
=== Método del trapecio ===&lt;br /&gt;
&lt;br /&gt;
Vamos a aplicar un método de integración numérica conocido como el Método del Trapecio por aproximar el valor de la integral al del área de un trapecio. Su expresión matemática es:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;  PVI =   &lt;br /&gt;
\begin{cases}&lt;br /&gt;
 y_0 \\&lt;br /&gt;
 y_{n+1}  =  y_n + \frac{h}{2}*(f(t_n,y_n)+f(t_{n+1},y_{n+1}))\\&lt;br /&gt;
\end{cases}\quad&lt;br /&gt;
   &amp;lt;/math&amp;gt;&lt;br /&gt;
   &lt;br /&gt;
Introducimos esta expresión en el código y obtenemos la gráfica de la solución.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Trapeciografica.png|400px|miniaturadeimagen|derecha|Representación gráfica y(t). Método del Trapecio]]&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
%Método del Trapecio&lt;br /&gt;
clc&lt;br /&gt;
&lt;br /&gt;
%Datos iniciales&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=4;&lt;br /&gt;
y0=0.01;&lt;br /&gt;
h=0.1;&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=10;&lt;br /&gt;
&lt;br /&gt;
%Cálculo de subintervalos&lt;br /&gt;
N=round((tN-t0)/h);&lt;br /&gt;
t=t0:h:tN;&lt;br /&gt;
&lt;br /&gt;
%Creamos el vector donde vamos a guardar las soluciones&lt;br /&gt;
y=zeros(1,N+1);&lt;br /&gt;
y(1)=y0;&lt;br /&gt;
&lt;br /&gt;
for i=1:N&lt;br /&gt;
y(i+1)=(((1-(h/2)*1.01)-sqrt(((1-(h/2)*1.01)^2)+4*(h/2)*((1+(h/2)*1.01)*y(i)-(h/2)*(y(i))^2)))/-h);&lt;br /&gt;
end&lt;br /&gt;
%Sacamos la tabla de resultados&lt;br /&gt;
[t',y']&lt;br /&gt;
x=1.01-y;&lt;br /&gt;
%Gráfico&lt;br /&gt;
hold on&lt;br /&gt;
plot(t,y,'r')&lt;br /&gt;
plot(t,x,'b')&lt;br /&gt;
legend('Sustancia B: y(t)','Sustancia A: x(t)','Location','best');&lt;br /&gt;
xlabel('Tiempo (s)')&lt;br /&gt;
ylabel('Concentración (mol/l)')&lt;br /&gt;
grid on&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
=== Método de Runge-Kutta ===&lt;br /&gt;
&lt;br /&gt;
El método de resolución numérica de Runge-Kutta, involucra un gran número de parámetros. Para simplificar la implementación de este método en Matlab, utilizaremos la función ''inline'', con la que declararemos previamente la función algebraica necesaria para el cálculo de los parámetros &amp;lt;math&amp;gt;k_i&amp;lt;/math&amp;gt;, ahorrándonos tener que escribir innumerables veces la correspondiente expresión matemática.&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
A continuación, detallamos la función &amp;lt;math&amp;gt;f(y)&amp;lt;/math&amp;gt; de la que dependerán los valores de los parámetros &amp;lt;math&amp;gt;k_i&amp;lt;/math&amp;gt;:&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;f(y)=y'(t)=1.01y(t)-y(t)^2&lt;br /&gt;
&lt;br /&gt;
\quad \Rightarrow \quad&lt;br /&gt;
&lt;br /&gt;
\begin{cases}&lt;br /&gt;
 k_1 &amp;amp; =  f(y_i) \\&lt;br /&gt;
 k_2 &amp;amp; =  f(y_i + {1 \over 2}k_1h) \\&lt;br /&gt;
 k_3 &amp;amp; =  f(y_i + \frac{1}{2}k_2h) \\&lt;br /&gt;
 k_4 &amp;amp; =  f(y_i + k_3h) \\&lt;br /&gt;
\end{cases}\quad [h=0.1]&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Entonces el método RK4 para este problema está dado por la siguiente ecuación:&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;y_{i+1} = y_{i} + {1 \over 6}h(k_1+2k_2+2k_3+k_4)&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Mediante el siguiente programa en Matlab calculamos numéricamente la solución y la representamos en un gráfico:&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Archivo:RK4II.png|400px|miniaturadeimagen|derecha|Representación gráfica y(t). Método Runge-Kutta]]&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
%Método de Runge-Kutta&lt;br /&gt;
clc&lt;br /&gt;
&lt;br /&gt;
%Función f(t)=y'(t)&lt;br /&gt;
fy=inline('1.01*y-y^2','y');&lt;br /&gt;
&lt;br /&gt;
%Datos del problema&lt;br /&gt;
y0=0.01;&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=10;&lt;br /&gt;
h=0.1;&lt;br /&gt;
&lt;br /&gt;
%Variable independiente (t)&lt;br /&gt;
t=t0:h:tN;&lt;br /&gt;
&lt;br /&gt;
%Variable dependiente (y)&lt;br /&gt;
y=zeros(1,length(t));&lt;br /&gt;
y(1)=y0;&lt;br /&gt;
&lt;br /&gt;
for i=1:length(t)-1&lt;br /&gt;
    k1=fy(y(i));&lt;br /&gt;
    k2=fy(y(i)+k1/2*h);&lt;br /&gt;
    k3=fy(y(i)+k2/2*h);&lt;br /&gt;
    k4=fy(y(i)+k3*h);&lt;br /&gt;
    y(i+1)=y(i)+h/6*(k1+2*k2+2*k3+k4);&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
%Variable dependiente (x)&lt;br /&gt;
x=1.01-y;&lt;br /&gt;
&lt;br /&gt;
%Representación gráfica&lt;br /&gt;
hold on&lt;br /&gt;
plot(t,x,'b')&lt;br /&gt;
plot(t,y,'r')&lt;br /&gt;
legend('Sustancia A: x(t)','Sustancia B: y(t)')&lt;br /&gt;
xlabel('Tiempo (s)')&lt;br /&gt;
ylabel('Concentración (mol/l)')&lt;br /&gt;
grid on&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
=== Comparación de métodos===&lt;br /&gt;
&lt;br /&gt;
Podemos observar fácilmente que las gráficas obtenidas con los diferentes métodos son iguales a primera vista. Sin embargo, superponiéndolas queda patente que no son exactamente iguales debido a que los métodos no poseen la misma precisión y , al operar todos con la misma longitud de paso, unos aproximan la solución exacta mejor que otros. Así se observa en estas imágenes:&lt;br /&gt;
&lt;br /&gt;
[[Archivo:comparativa1.jpg|400px|miniaturadeimagen|izquierda|Comparación de métodos]]&lt;br /&gt;
[[Archivo:comparativa2.jpg|400px|miniaturadeimagen|derecha|Comparación de métodos]]&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
Como podemos comprobar en las imágenes, el método de Euler es menos preciso que el del trapecio o el de Runge-Kutta.&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Resolución en forma de sistema de ecuaciones ==&lt;br /&gt;
&lt;br /&gt;
A continuación vamos a plantear el problema de valor inicial con un sistema no lineal de dos ecuaciones equivalente al problema resuelto anteriormente.&lt;br /&gt;
&lt;br /&gt;
Estas ecuaciones serán:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;(PVI)&lt;br /&gt;
\begin{cases}&lt;br /&gt;
    y'(t)=k_1 x(t)y(t) \\&lt;br /&gt;
    x'(t)=-k_1 x(t)y(t) \\&lt;br /&gt;
    \\&lt;br /&gt;
    x(0)=1 \\&lt;br /&gt;
    y(0) = 0.01&lt;br /&gt;
\end{cases}&lt;br /&gt;
\quad t\in[0,10]&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Resolveremos el problema por el método de Euler y por el método de Runge-Kutta, plasmando las soluciones en gráficos.&lt;br /&gt;
&lt;br /&gt;
=== Método de Euler ===&lt;br /&gt;
&lt;br /&gt;
En este caso aplicaremos en el siguiente código la expresión para EDO a cada una de las ecuaciones que conforma el sistema, obteniendo la correspondiente gráfica.&lt;br /&gt;
 &lt;br /&gt;
[[Archivo:SistEuler.png|400px|miniaturadeimagen|derecha|Representación gráfica de las concentraciones de A y B. Resolución del sistema por Euler]]&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
&lt;br /&gt;
%Resolución del sistema por el método de Euler&lt;br /&gt;
&lt;br /&gt;
clear all&lt;br /&gt;
&lt;br /&gt;
%Definimos el vector de la variable independiente, el número de&lt;br /&gt;
%subintervalos y la longitud de paso&lt;br /&gt;
&lt;br /&gt;
t0 = 0;&lt;br /&gt;
tN = 10;&lt;br /&gt;
h = 0.1;&lt;br /&gt;
t = t0:h:tN&lt;br /&gt;
N = (tN-t0)/h;&lt;br /&gt;
&lt;br /&gt;
%Definimos los vectores de las variables dependientes&lt;br /&gt;
&lt;br /&gt;
x = zeros(1, N+1);&lt;br /&gt;
y = zeros(1, N+1);&lt;br /&gt;
&lt;br /&gt;
x(1) = 1;&lt;br /&gt;
y(1) = 0.01;&lt;br /&gt;
&lt;br /&gt;
for i = 1:N&lt;br /&gt;
    &lt;br /&gt;
    x(i+1)=x(i)+h*(-x(i).*y(i));&lt;br /&gt;
    y(i+1)=y(i)+h*(y(i).*x(i));&lt;br /&gt;
    &lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
%Representamos gráficamente las soluciones&lt;br /&gt;
&lt;br /&gt;
hold on&lt;br /&gt;
&lt;br /&gt;
plot(t,x,'b');&lt;br /&gt;
plot(t,y,'r');&lt;br /&gt;
grid on&lt;br /&gt;
&lt;br /&gt;
legend('Sustancia A: x(t)','Sustancia B: y(t)')&lt;br /&gt;
xlabel('Tiempo (s)')&lt;br /&gt;
ylabel('Concentración (mol/l)')&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
hold off&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
}}&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Método de Runge-Kutta===&lt;br /&gt;
&lt;br /&gt;
El método de resolución numérica de Runge-Kutta, involucra un gran número de parámetros. Para simplificar la implementación de este método en Matlab, el sistema se tratará como una matriz &amp;lt;math&amp;gt;z&amp;lt;/math&amp;gt;. Además, utilizaremos la función ''inline'', con la que declararemos previamente la función algebraica necesaria para el cálculo de los parámetros &amp;lt;math&amp;gt;k_i&amp;lt;/math&amp;gt;, ahorrándonos tener que escribir innumerables veces la correspondiente expresión matemática.&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Primero, expresamos el sistema en forma matricial:&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;(PVI)\begin{cases}&lt;br /&gt;
    x'(t)=-k_1 x(t)y(t) \\&lt;br /&gt;
    y'(t)=k_1 x(t)y(t) \\&lt;br /&gt;
    \\&lt;br /&gt;
    x(0)=1 \\&lt;br /&gt;
    y(0) = 0.01&lt;br /&gt;
\end{cases}\quad t\in[0,10]&lt;br /&gt;
&lt;br /&gt;
\quad \Rightarrow \quad k_1=1\quad \Rightarrow \quad&lt;br /&gt;
&lt;br /&gt;
(PVI)\begin{cases}\vec{z}'(t)=&lt;br /&gt;
   \begin{bmatrix}&lt;br /&gt;
      x'(t) \\&lt;br /&gt;
      y'(t) \\&lt;br /&gt;
   \end{bmatrix}&lt;br /&gt;
=&lt;br /&gt;
      \begin{bmatrix}&lt;br /&gt;
      -x(t)y(t) \\&lt;br /&gt;
      x(t)y(t) \\&lt;br /&gt;
   \end{bmatrix}&lt;br /&gt;
&lt;br /&gt;
 \\ \\ \vec{z}(0)=&lt;br /&gt;
   \begin{bmatrix}&lt;br /&gt;
      x(0) \\&lt;br /&gt;
      y(0) \\&lt;br /&gt;
   \end{bmatrix}&lt;br /&gt;
=&lt;br /&gt;
      \begin{bmatrix}&lt;br /&gt;
      1 \\&lt;br /&gt;
      0.01 \\&lt;br /&gt;
   \end{bmatrix}&lt;br /&gt;
\end{cases}\quad t\in[0,10]&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
A continuación, detallamos la función &amp;lt;math&amp;gt;\vec{F}&amp;lt;/math&amp;gt; de la que dependerán los valores de los parámetros &amp;lt;math&amp;gt;k_i&amp;lt;/math&amp;gt;:&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;\vec{F}(x,y)=\vec{F}(\vec{z})=&lt;br /&gt;
&lt;br /&gt;
\begin{bmatrix}&lt;br /&gt;
    f(\vec{z}) \\&lt;br /&gt;
    g(\vec{z}) \\&lt;br /&gt;
\end{bmatrix}=&lt;br /&gt;
&lt;br /&gt;
\begin{bmatrix}&lt;br /&gt;
    x'(t) \\&lt;br /&gt;
    y'(t) \\&lt;br /&gt;
\end{bmatrix}=&lt;br /&gt;
&lt;br /&gt;
\vec{z}'(t)=&lt;br /&gt;
&lt;br /&gt;
\begin{bmatrix}&lt;br /&gt;
    -x(t)y(t) \\&lt;br /&gt;
    x(t)y(t) \\&lt;br /&gt;
\end{bmatrix}&lt;br /&gt;
\quad \Rightarrow \quad&lt;br /&gt;
&lt;br /&gt;
\begin{cases}&lt;br /&gt;
 [\vec{k_1}] &amp;amp; =  F(\vec{z}_i) \\&lt;br /&gt;
 [\vec{k_2}] &amp;amp; =  F(\vec{z}_i + {1 \over 2}k_1h) \\&lt;br /&gt;
 [\vec{k_3}] &amp;amp; =  F(\vec{z}_i + \frac{1}{2}k_2h) \\&lt;br /&gt;
 [\vec{k_4}] &amp;amp; =  F(\vec{z}_i + k_3h) \\&lt;br /&gt;
\end{cases}\quad [h=0.1]&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Entonces el método RK4 para este problema está dado por la siguiente ecuación:&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;\vec{z}_{i+1} = \vec{z}_{i} + {1 \over 6}h(\vec{k_1}+2\vec{k_2}+2\vec{k_3}+\vec{k_4})&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Mediante el siguiente programa en Matlab calculamos numéricamente la solución y la representamos en un gráfico:&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Archivo:sistema_RK4.png|400px|miniaturadeimagen|derecha|Representación gráfica de las concentraciones de A y B. Resolución del sistema por Runge-Kutta]]&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
%Método de Runge-Kutta&lt;br /&gt;
clc&lt;br /&gt;
&lt;br /&gt;
%Función F=[x'(t); y'(t)]&lt;br /&gt;
F=inline('[-z(1)*z(2);z(1)*z(2)]','z');&lt;br /&gt;
&lt;br /&gt;
%Datos del problema &lt;br /&gt;
x0=1;&lt;br /&gt;
y0=0.01;&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=10;&lt;br /&gt;
h=0.1;&lt;br /&gt;
&lt;br /&gt;
%Vector de variable independiente (t)&lt;br /&gt;
t=t0:h:tN;&lt;br /&gt;
&lt;br /&gt;
%Matriz de variables dependientes z=[x;y]&lt;br /&gt;
z=zeros(2,length(t));&lt;br /&gt;
z(:,1)=[x0;y0];&lt;br /&gt;
&lt;br /&gt;
for i = 1:length(t)-1&lt;br /&gt;
    k1=F(z(:,i));&lt;br /&gt;
    k2=F(z(:,i)+k1.*h/2);&lt;br /&gt;
    k3=F(z(:,i)+k2.*h/2);&lt;br /&gt;
    k4=F(z(:,i)+k3.*h);&lt;br /&gt;
    z(:,i+1)=z(:,i)+h/6.*(k1+2.*k2+2.*k3+k4);&lt;br /&gt;
end&lt;br /&gt;
 &lt;br /&gt;
%Representación gráfica&lt;br /&gt;
hold on&lt;br /&gt;
plot(t,z(1,:))&lt;br /&gt;
plot(t,z(2,:),'r')&lt;br /&gt;
legend('Sustancia A: x(t)','Sustancia B: y(t)')&lt;br /&gt;
xlabel('Tiempo (s)')&lt;br /&gt;
ylabel('Concentración (mol/l)')&lt;br /&gt;
grid on&lt;br /&gt;
%hold off&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
== Interpretación de las gráficas ==&lt;br /&gt;
&lt;br /&gt;
Como cabía esperar, obtenemos la misma solución resolviendo el problema como sistema o como EDO. Podemos observar por los resultados obtenidos que la velocidad de aparición de B es igual a la velocidad de desaparición de A (como dicta el principio de conservación de la masa), que A acaba desapareciendo prácticamente por completo y que la concentración de B termina por estabilizarse alrededor de 1 mol/l. Ambos compuestos alcanzan sus los extremos de sus concentraciones en el mismo instante de tiempo&lt;br /&gt;
&lt;br /&gt;
También cabe destacar que cuando el tiempo transcurrido alcanza 4,5 segundos las concentraciones de ambos compuestos son las mismas.&lt;br /&gt;
&lt;br /&gt;
= Reacción II =&lt;br /&gt;
&lt;br /&gt;
En este apartado vamos a estudiar la reacción propuesta por Alfred J. Lotka en 1920, que es la siguiente:&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt; A + X →_{k1} 2X;&amp;lt;/math&amp;gt;     :&amp;lt;math&amp;gt; X + Y →_{k2} 2Y;&amp;lt;/math&amp;gt;     :&amp;lt;math&amp;gt;Y →_{k3} 2B  &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Como se puede observar, se trata de una reacción compleja integrada por 3 reacciones simples (las dos primeras autocatalíticas) en las que intervienen un total de 4 compuestos, A, B, X e Y. Siguiendo el desarrollo de la reacción, es lógico suponer que A se agotará al comienzo de la reacción, que los máximos de concentración de X e Y se darán en los estados intermedios y que al final el compuesto B será el único restante, siendo el producto final de la reacción.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Interpretación del problema y deducción de las ecuaciones diferenciales ==&lt;br /&gt;
&lt;br /&gt;
Para averiguar cómo evolucionan las concentraciones de los cuatro compuestos durante el desarrollo de la reacción necesitaremos obtener cuatro ecuaciones diferenciales. Para ello nos volveremos a basar en los principios físicos que ya empleamos en la anterior reacción. Definimos A(t), x(t), y(t), y B(t) (A, x, y, B; para ahorrar notación) a las concentraciones de A, X, Y, y B, respectivamente. &lt;br /&gt;
&lt;br /&gt;
En primer lugar aplicamos el Principio de Conservación de la masa, que establece que la suma de las concentraciones de los compuestos es constante (no desaparece masa en el proceso), lo que derivando nos indica que:&lt;br /&gt;
&lt;br /&gt;
: &amp;lt;math&amp;gt; A' + x' + y' + B' = 0 \quad\quad(I)&amp;lt;/math&amp;gt;       &lt;br /&gt;
&lt;br /&gt;
A continuación aplicaremos la Ley de Acción de Masas (velocidad de reacción proporcional al producto de la concentración de los reactivos).&lt;br /&gt;
&lt;br /&gt;
Aplicando esta ley a la última reacción simple obtenemos que: &lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;B'=k_3y \quad\quad(II)&amp;lt;/math&amp;gt;        &lt;br /&gt;
&lt;br /&gt;
En el caso de las concentraciones de X e Y las expresiones resultantes son algo más complicadas ya que estos dos compuestos actúan como reactivos y productos en más de una reacción simple, por lo que la variación de sus concentraciones será la suma de las variaciones de las reacciones en las que aparezcan:&lt;br /&gt;
&lt;br /&gt;
: &amp;lt;math&amp;gt; x' = x'_{1} + x'_{2} → x' = k_{1}Ax - k{2}xy \quad\quad(III)&amp;lt;/math&amp;gt;        &lt;br /&gt;
: &amp;lt;math&amp;gt; y' = y'_{2} + y'_{3} → y' = k_{2}xy − k_3{y} \quad\quad(IV)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Por último sustituimos (II), (III) y (IV) en (I) obteniendo: &lt;br /&gt;
&lt;br /&gt;
: &amp;lt;math&amp;gt; A' + k_{1}Ax - k{2}xy + k_{2}xy − k_3{y}+ k_3y= 0 : &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
De donde obtenemos que:&lt;br /&gt;
&lt;br /&gt;
: &amp;lt;math&amp;gt; A' = -k_{1}Ax &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Ahora que ya tenemos las variaciones de concentración de los compuestos en función de las concentraciones podemos aplicar métodos numéricos que nos lleven a una solución aproximada.&lt;br /&gt;
&lt;br /&gt;
== Resolución numérica del sistema de ecuaciones ==&lt;br /&gt;
&lt;br /&gt;
Una vez obtenidas las ecuaciones y conociendo las condiciones iniciales y los valores de las constantes podemos plantear el problema de valor inicial para luego resolverlo.&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;(PVI)&lt;br /&gt;
\begin{cases}&lt;br /&gt;
    A' = -k_{1}Ax\\&lt;br /&gt;
    x' = k_{1}Ax - k{2}xy\\&lt;br /&gt;
    y' = k_{2}xy − k_3{y}\\&lt;br /&gt;
    B'=k_3y \\&lt;br /&gt;
\\&lt;br /&gt;
    A(0)=5  \\&lt;br /&gt;
    x(0)=5*10^{-4} \\&lt;br /&gt;
    y(0)=10^{-5}\\&lt;br /&gt;
    B(0)=0 \\&lt;br /&gt;
\end{cases}&lt;br /&gt;
\quad t\in[0,200]&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Siendo &amp;lt;math&amp;gt; k_{1}=K_{2}=2k_{3}=0.1 &amp;lt;/math&amp;gt; y las unidades de la concentración mol/l.&lt;br /&gt;
&lt;br /&gt;
=== Método de Euler ===&lt;br /&gt;
&lt;br /&gt;
Aplicamos el método de Euler de forma análoga a como lo hicimos en [[Reacciones_con_autocatálisis._Grupo_D12#Método_de_Euler_2|apartado 2.5.1]]&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Euler lotka0.01.png|400px|miniaturadeimagen|derecha|Representación gráfica de las concentraciones de A, B, X, e Y a lo largo del tiempo. Resoluciónd delsistema por el método de Euler con longitud de paso h=0.01]] &lt;br /&gt;
[[Archivo:Euler lotka0.001.png|400px|miniaturadeimagen|derecha|Representación gráfica de las concentraciones de A, B, X, e Y a lo largo del tiempo. Resoluciónd delsistema por el método de Euler con longitud de paso h=0.001]]&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
&lt;br /&gt;
%Resolución del sistema de la reacción de Lotka por el método de Euler&lt;br /&gt;
&lt;br /&gt;
clear all&lt;br /&gt;
&lt;br /&gt;
%Definimos la variable independiente y establecemos los datos del problema&lt;br /&gt;
%de valor inicial. Para la longitud de paso h introducimos en primer lugar&lt;br /&gt;
%0.01 y luego 0.001&lt;br /&gt;
&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=200;&lt;br /&gt;
h= input('Introduzca una longitud de paso ');&lt;br /&gt;
t = t0:h:tN;&lt;br /&gt;
N=(tN-t0)/h;&lt;br /&gt;
k1 = 0.1;&lt;br /&gt;
k2 = 0.1;&lt;br /&gt;
k3 = 0.05;&lt;br /&gt;
A0 = 5;&lt;br /&gt;
B0 = 0;&lt;br /&gt;
X0 = 5*10^(-4);&lt;br /&gt;
Y0 = 10^(-5);&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
%Definimos las variables dependientes.&lt;br /&gt;
&lt;br /&gt;
A = zeros(1, N-1);&lt;br /&gt;
B = A;&lt;br /&gt;
X = A;&lt;br /&gt;
Y = A;&lt;br /&gt;
&lt;br /&gt;
A(1) = A0;&lt;br /&gt;
B(1) = B0;&lt;br /&gt;
X(1) = X0;&lt;br /&gt;
Y(1) = Y0;&lt;br /&gt;
&lt;br /&gt;
for i = 1:N&lt;br /&gt;
    &lt;br /&gt;
    X(i+1) = X(i) + h*(k1*A(i)*X(i)-k2*Y(i)*X(i));&lt;br /&gt;
    Y(i+1)=Y(i)+h.*(k2.*X(i).*Y(i)-k3.*Y(i));&lt;br /&gt;
    B(i+1) = B(i) + h*(k3*Y(i));&lt;br /&gt;
    A(i+1) = A(i) + h*(-k1*A(i)*X(i));&lt;br /&gt;
   &lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
%Representamos gráficamente la solución&lt;br /&gt;
&lt;br /&gt;
hold on&lt;br /&gt;
&lt;br /&gt;
plot (t,A,'b')&lt;br /&gt;
plot(t, X, 'r')&lt;br /&gt;
plot(t,Y, 'g')&lt;br /&gt;
plot(t, B, 'm')&lt;br /&gt;
legend('Sustancia A: A(t)','Sustancia X: x(t)','Sustancia Y: y(t)','Sustancia B: B(t)','Location','Best')&lt;br /&gt;
xlabel('Tiempo (s)')&lt;br /&gt;
ylabel('Concentración (mol/l)')&lt;br /&gt;
grid on&lt;br /&gt;
&lt;br /&gt;
hold off&lt;br /&gt;
&lt;br /&gt;
}}&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
A continuación tendremos que comprobar si el método es estable. &amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
Un método es estable cuando el error local es pequeño y además este error no se amplifica a lo largo del tiempo. Para calificar la estabilidad del método de Euler resolveremos el sistema anterior con este método, con pasos &amp;quot;h=0.01&amp;quot; y &amp;quot;h=0.001&amp;quot;, y lo compararemos con la resolución del sistema con el método de Heun, que se asemeja más a la solución exacta.&amp;lt;br /&amp;gt;&lt;br /&gt;
En la comparación representaremos en azul el método de Heun y en rojo el método de Euler.&amp;lt;br /&amp;gt;&lt;br /&gt;
Para &amp;quot;h=0.01&amp;quot; tenemos lo siguiente:&lt;br /&gt;
[[Archivo:1estabilidad123.jpg|400px|miniaturadeimagen|izquierda|Comparación entre Método de Heun (Azul) con el Método de Euler con paso h=0.01 (Rojo)]] &lt;br /&gt;
[[Archivo:1estabilidad321.jpg|400px|miniaturadeimagen|derecha|Comparación entre Método de Heun (Azul) con el Método de Euler con paso h=0.01 (Rojo)]] &lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
Para &amp;quot;h=0.001&amp;quot; tenemos lo siguiente:&lt;br /&gt;
[[Archivo:2estabilidad123.jpg|400px|miniaturadeimagen|izquierda|Comparación entre Método de Heun (Azul) con el Método de Euler con paso h=0.001 (Rojo)]] &lt;br /&gt;
[[Archivo:2estabilidad321.jpg|400px|miniaturadeimagen|derecha|Comparación entre Método de Heun (Azul) con el Método de Euler con paso h=0.001 (Rojo)]]&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
Como podemos ver en las imágenes de los dos procesos las gráficas se superponen y no se aprecian diferencias hasta que no ampliamos la imagen. Y esto sucede en todo momento con lo que podemos garantizar que en este caso el método de Euler es estable para los pasos que hemos usado.&lt;br /&gt;
&lt;br /&gt;
=== Método de Heun ===&lt;br /&gt;
&lt;br /&gt;
Si bien el método de resolución numérica de Heun no involucra un número de parámetros tan notable como el método de Runge-Kutta, en este caso tenemos un sistema de 4 ecuaciones diferenciales, por lo que, en aras de simplificar, utilizaremos el mismo criterio que en el [[Reacciones_con_autocatálisis._Grupo_D12#Método_de_Runge-Kutta_2|apartado 2.5.2]].: El sistema se tratará como una matriz &amp;lt;math&amp;gt;z&amp;lt;/math&amp;gt;, y para la obtención de los parámetros &amp;lt;math&amp;gt;k_i&amp;lt;/math&amp;gt; utilizaremos la función ''inline'', con la que declararemos previamente las expresiones necesarias para el cálculo de los parámetros &amp;lt;math&amp;gt;k_i&amp;lt;/math&amp;gt;.&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Primero, expresamos el sistema en forma matricial:&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;(PVI)\begin{cases}&lt;br /&gt;
A'(t)=-k_1 A(t)x(t) \\&lt;br /&gt;
x'(t)=k_1 A(t)x(t)-k_2 x(t)y(t) \\&lt;br /&gt;
y'(t)=k_2 x(t)y(t)-k_3 y(t) \\&lt;br /&gt;
B'(t)=k_3 x(t)y(t) \\ \\&lt;br /&gt;
A(0)=5 \\&lt;br /&gt;
x(0)=5·10^{-4} \\&lt;br /&gt;
y(0)=10^{-5} \\&lt;br /&gt;
B(0) = 0&lt;br /&gt;
\end{cases}\quad t\in[0,200]&lt;br /&gt;
&lt;br /&gt;
\quad \Rightarrow \quad&lt;br /&gt;
&lt;br /&gt;
\begin{cases}&lt;br /&gt;
k_1=0.1 \\&lt;br /&gt;
k_2=0.1 \\&lt;br /&gt;
k_3=0.05 \\&lt;br /&gt;
&lt;br /&gt;
\end{cases}&lt;br /&gt;
&lt;br /&gt;
\quad \Rightarrow \quad&lt;br /&gt;
&lt;br /&gt;
(PVI)\begin{cases}\vec{z}'(t)=&lt;br /&gt;
   \begin{bmatrix}&lt;br /&gt;
      A'(t) \\&lt;br /&gt;
      x'(t) \\&lt;br /&gt;
      y'(t) \\&lt;br /&gt;
      B'(t) \\&lt;br /&gt;
   \end{bmatrix}&lt;br /&gt;
=&lt;br /&gt;
      \begin{bmatrix}&lt;br /&gt;
      -0.1 A(t)x(t) \\&lt;br /&gt;
      0.1 A(t)x(t)-0.1 x(t)y(t) \\&lt;br /&gt;
      0.1 x(t)y(t)-0.05 y(t) \\&lt;br /&gt;
      0.05 y(t)x(t)\\&lt;br /&gt;
   \end{bmatrix}&lt;br /&gt;
&lt;br /&gt;
 \\ \\ \vec{z}(0)=&lt;br /&gt;
   \begin{bmatrix}&lt;br /&gt;
      A(0) \\&lt;br /&gt;
      x(0) \\&lt;br /&gt;
      y(0) \\&lt;br /&gt;
      B(0) \\&lt;br /&gt;
   \end{bmatrix}&lt;br /&gt;
=&lt;br /&gt;
      \begin{bmatrix}&lt;br /&gt;
      5 \\&lt;br /&gt;
      5·10^{-4} \\&lt;br /&gt;
      10^{-5} \\&lt;br /&gt;
      0&lt;br /&gt;
   \end{bmatrix}&lt;br /&gt;
\end{cases}\quad t\in[0,200]&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
A continuación, detallamos la función &amp;lt;math&amp;gt;\vec{F}&amp;lt;/math&amp;gt; de la que dependerán los valores de los parámetros &amp;lt;math&amp;gt;k_i&amp;lt;/math&amp;gt;:&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;\vec{F}(A,x,y,B)=\vec{F}(\vec{z})=&lt;br /&gt;
\begin{bmatrix}&lt;br /&gt;
    f(\vec{z}) \\ &lt;br /&gt;
    g(\vec{z}) \\ &lt;br /&gt;
    h(\vec{z}) \\ &lt;br /&gt;
    i(\vec{z}) \\ &lt;br /&gt;
\end{bmatrix}=&lt;br /&gt;
\begin{bmatrix}&lt;br /&gt;
    A'(t) \\&lt;br /&gt;
    x'(t) \\&lt;br /&gt;
    y'(t) \\&lt;br /&gt;
    B'(t) \\&lt;br /&gt;
\end{bmatrix}=&lt;br /&gt;
\vec{z}'(t)=&lt;br /&gt;
      \begin{bmatrix}&lt;br /&gt;
      -0.1 A(t)x(t) \\&lt;br /&gt;
      0.1 A(t)x(t)-0.1 x(t)y(t) \\&lt;br /&gt;
      0.1 x(t)y(t)-0.05 y(t) \\&lt;br /&gt;
      0.05 y(t)x(t)\\&lt;br /&gt;
   \end{bmatrix}&lt;br /&gt;
&lt;br /&gt;
\quad \Rightarrow \quad &lt;br /&gt;
&lt;br /&gt;
\begin{cases}&lt;br /&gt;
 [\vec{k_1}] &amp;amp; =  F(\vec{z}_i) \\&lt;br /&gt;
 [\vec{k_2}] &amp;amp; =  F(\vec{z}_i + {1 \over 2}k_1h) \\&lt;br /&gt;
\end{cases}\quad [h=0.01]&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Entonces el método de Heun para este problema está dado por la siguiente ecuación:&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;\vec{z}_{i+1} = \vec{z}_{i} + {1 \over 2}h(\vec{k_1}+\vec{k_2})&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Mediante el siguiente programa en Matlab calculamos numéricamente la solución y la representamos en un gráfico:&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Archivo:AXYBRK4.png|400px|miniaturadeimagen|derecha|Representación gráfica de las concentraciones de A,X,Y y B. Resolución del sistema por Heun]]&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
%Método de Heun&lt;br /&gt;
clc&lt;br /&gt;
&lt;br /&gt;
%Función F=[A'(t);x'(t); y'(t);B'(t)]&lt;br /&gt;
F=inline('0.1.*[-z(1)*z(2);z(1)*z(2)-z(2)*z(3);z(2)*z(3)-z(3)/2;z(3)/2]','z');&lt;br /&gt;
&lt;br /&gt;
%Datos del problema&lt;br /&gt;
A0=5;&lt;br /&gt;
x0=5*10^-4;&lt;br /&gt;
y0=10^(-5);&lt;br /&gt;
B0=0;&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=200;&lt;br /&gt;
h=0.1;&lt;br /&gt;
&lt;br /&gt;
%Vector de variable independiente (t)&lt;br /&gt;
t=t0:h:tN;&lt;br /&gt;
&lt;br /&gt;
%Matriz de variables dependientes z=[A;x;y;B]&lt;br /&gt;
z=zeros(4,length(t));&lt;br /&gt;
z(:,1)=[A0;x0;y0;B0];&lt;br /&gt;
&lt;br /&gt;
for i = 1:length(t)-1&lt;br /&gt;
    k1=F(z(:,i));&lt;br /&gt;
    k2=F(z(:,i)+k1.*h/2);&lt;br /&gt;
    z(:,i+1)=z(:,i)+h/2.*(k1+k2);&lt;br /&gt;
end&lt;br /&gt;
 &lt;br /&gt;
%Representación gráfica&lt;br /&gt;
hold on&lt;br /&gt;
plot(t,z(1,:),'b')&lt;br /&gt;
plot(t,z(2,:),'r')&lt;br /&gt;
plot(t,z(3,:),'g')&lt;br /&gt;
plot(t,z(4,:),'m')&lt;br /&gt;
legend('Sustancia A: A(t)','Sustancia X: x(t)','Sustancia Y: y(t)','Sustancia B: B(t)','Location','Best')&lt;br /&gt;
xlabel('Tiempo (s)')&lt;br /&gt;
ylabel('Concentración (mol/l)')&lt;br /&gt;
grid on&lt;br /&gt;
hold off&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
== Interpretación de las gráficas == &lt;br /&gt;
 &lt;br /&gt;
El proceso comienza con el predominio absoluto del compuesto A en la concentración total, siendo la presencia de los otros tres compuestos despreciable. Durante los primeros segundos la situación apenas cambia, pero tras los diez primeros segundos la concentración de A cae bruscamente mientras que la concentración de X aumenta a la misma velocidad; antes de llegar a los veinte segundos transcurridos las concentraciones de ambos compuestos se igualan y otros quince segundos más tarde el compuesto A  prácticamente ha desaparecido y el X ha alcanzado su concentración máxima (5 mol/litro).&lt;br /&gt;
&lt;br /&gt;
Es entonces cuando concluye la primera reacción y comienzan las otras dos, al no haber más compuesto A que cree compuesto X. La velocidad de aparición de Y es inicialmente mayor que la de B, superando al poco tiempo en concentración a la sustancia X. Sin embargo, llega un momento en el que la concentración de X es tan baja que se ralentiza la creación de Y y pronto empieza a disminuir su concentración tras alcanzar un máximo en torno a los 56 segundos, perdiendo peso la segunda reacción en beneficio de la tercera.&lt;br /&gt;
&lt;br /&gt;
Tras los 60 segundos de reacción el compuesto X pasa a tener una concentración despreciable, por lo que la única reacción simple que se sigue desarrollando es la tercera, destruyéndose reactivo Y y creándose producto B. La concentración de Y va reduciéndose paulatinamente hasta que en torno a los 160 segundos de reacción alcanza niveles insignificantes mientras que la concentración de B alcanza su máximo de 5 mol/litro.&lt;br /&gt;
&lt;br /&gt;
Es interesante observar que en todo momento se cumple el Principio de Conservación de la masa: la suma en cualquier momento de las concentraciones de las sustancias es 5 mol /litro. Esto es fácilmente comprobable en los momentos en que las concentraciones de A, X y B alcanzan su máximo de 5 mol/litro y el resto de concentraciones son nulas o despreciables. &lt;br /&gt;
[[Categoría:Ecuaciones Diferenciales]]&lt;br /&gt;
[[Categoría:ED14/15]]&lt;br /&gt;
[[Categoría:Trabajos 2014-15]]&lt;/div&gt;</summary>
		<author><name>Javier Ruiz de Galarreta López</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Reacciones_con_autocat%C3%A1lisis._Grupo_D12&amp;diff=29218</id>
		<title>Reacciones con autocatálisis. Grupo D12</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Reacciones_con_autocat%C3%A1lisis._Grupo_D12&amp;diff=29218"/>
				<updated>2015-03-12T08:20:13Z</updated>
		
		<summary type="html">&lt;p&gt;Javier Ruiz de Galarreta López: /* Interpretación del problema y deducción de las ecuaciones diferenciales */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{ TrabajoED | Reacciones con autocatálisis. Grupo D12 | [[:Categoría:Ecuaciones Diferenciales|Ecuaciones Diferenciales]]|[[:Categoría:ED14/15|Curso 2014-15]] | Javier Ruiz de Galarreta López, Argimiro Martínez López, Eduardo Moyano García, Alberto Rodríguez Ruiz. }}&lt;br /&gt;
&lt;br /&gt;
= Introducción: objetivos y metodología =&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
El objetivo de este trabajo es estudiar las concentraciones de los reactivos y productos de una reacción química a lo largo de la evolución en el tiempo de dicha reacción. Para ello modelizaremos el proceso empleando ecuaciones diferenciales y teniendo en cuenta la Ley de Acción de Masas y el Principio de Conservación de la materia.&lt;br /&gt;
&lt;br /&gt;
Al ser las ecuaciones y sistemas que se nos presentan de difícil resolución analítica, utilizaremos el programa informático Matlab para resolverlos mediante métodos numéricos como el de Euler, el del Trapecio, el de Runge-Kutta y el de Heun. &lt;br /&gt;
&lt;br /&gt;
Plasmaremos las soluciones en gráficos que nos permitirán dar una interpretación físico química a los resultados.&lt;br /&gt;
&lt;br /&gt;
= Reacción I =&lt;br /&gt;
&lt;br /&gt;
En primer lugar consideramos una reacción química irreversible en una solución bien mezclada, que se desarrolla para un volumen y una temperatura constantes, y en la que uno de los componentes (B, en este caso), hace de efecto catalítico.&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt; A + B →_{k1} 2B  &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Para desarrollar nuestro análisis nos apoyaremos en dos leyes físico químicas:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''Ley de acción de masas''': Enunciada por Guldberg y Waage en 1864, establece, entre otras cosas, que  la velocidad de&lt;br /&gt;
reacción es proporcional al producto de las concentraciones de los reactivos.&lt;br /&gt;
&lt;br /&gt;
'''Principio de conservación de la masa''': Establece que en una reacción química ordinaria la masa permanece constante, siendo la masa consumida de los reactivos igual a la masa obtenida de los productos. Fue elaborada independientemente por Míjail Lomonósov en 1745 y Antoine Lavoisier en 1785.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Interpretación del problema y deducción de las ecuaciones diferenciales ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Para hallar las ecuaciones diferenciales que nos describan cómo se desarrolla la reacción en el tiempo nos basaremos en las dos leyes enunciadas anteriormente. En primer lugar, definimos nuestra variable independiente como el tiempo &amp;lt;math&amp;gt;t&amp;lt;/math&amp;gt; en segundos. Las dos variables dependientes serán las concentraciones de los compuestos A y B, que denominaremos &amp;lt;math&amp;gt;x(t)&amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt;y(t)&amp;lt;/math&amp;gt;, ambas expresadas en mol/l. &lt;br /&gt;
&lt;br /&gt;
El principio de conservación de la masa expone que la suma de las concentraciones de los reactivos y los productos es constante. Esto equivale, derivando la expresión &amp;lt;math&amp;gt;x(t)+y(t)=cte&amp;lt;/math&amp;gt;, a que  desaparece tanto reactivo como producto aparece, o lo que es lo mismo, que la velocidad de aparición del producto es igual a la velocidad de desaparición (velocidad de aparición negativa) del reactivo:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;x'(t)=-y'(t)&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
La otra ecuación que necesitamos la obtenemos directamente de aplicar la Ley de acción de masas, que establece que la velocidad de la reacción (la velocidad a la que aparece el producto o desaparece el reactivo) es igual al producto de las concentraciones por una constante.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;y'(t)=k_1x(t)y(t)&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Obtención del problema de valor inicial ==&lt;br /&gt;
Una vez demostrado el origen de las ecuaciones (1) y (2) en el apartado anterior, obtendremos el problema de valor inicial (PVI) mediante las operaciones detalladas a continuación:&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;x'(t)+y'(t)=0\quad\quad(1)&amp;lt;/math&amp;gt;&lt;br /&gt;
:&amp;lt;math&amp;gt;y'(t)=k_1x(t)y(t)\quad\quad(2)&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Integrando (1) obtenemos (3):&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
:&amp;lt;math&amp;gt;\int_\mathbb{D} (\frac{dx(t)}{dt} + \frac{dy(t)}{dt})\,dt =\int_\mathbb{D} 0\,dt \quad \Rightarrow \quad x(t)+y(t)=k_2\quad \Rightarrow \quad x(t)=k_2-y(t)\quad\quad(3)&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Sustituyendo (3) en (2), obtenemos (4):&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;y'(t)=k_1x(t)y(t)\quad \Rightarrow \quad y'(t)=k_1(k_2-y(t))y(t)\quad \Rightarrow \quad y'(t)=k_1k_2y(t)-k_1y^2(t)\quad\quad(4)&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Conocemos las concentraciones iniciales de A y de B, por lo que podemos obtener el valor de la constante k&amp;lt;sub&amp;gt;2&amp;lt;/sub&amp;gt;:&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;[A]:\quad x(0)=1 mol/l;\quad\quad [B]:\quad y(0)=0,01 mol/l&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;x(t)+y(t)=k_2\quad \Rightarrow \quad x(0)+y(0)=k_2\quad \Rightarrow \quad 1+0,01=k_2\quad \Rightarrow \quad k_2=1,01&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Por último, conocemos también el valor de k&amp;lt;sub&amp;gt;1&amp;lt;/sub&amp;gt;, por lo que podremos plantear a continuación el correspondiente PVI:&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;k_1=1&amp;lt;/math&amp;gt;&lt;br /&gt;
:&amp;lt;math&amp;gt;(PVI)\begin{cases}y'(t)=1,01y(t)-y^2(t) \\ \\&lt;br /&gt;
y(0) = 0,01 \end{cases}\quad (t,y)\in[0,10]\times\mathbb{R}&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Unicidad de la solución ==&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Existencia-y-unicidad.png|200px|miniaturadeimagen|derecha|Intersección B con dominio]]&lt;br /&gt;
&lt;br /&gt;
Aplicamos a continuación el Teorema de Existencia y Unicidad:&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Sea &amp;lt;math&amp;gt;f(t,y)=y'(t) \Rightarrow f(t,y)=1.01y(t)-y^2(t)\quad&amp;lt;/math&amp;gt;, y &amp;lt;math&amp;gt;\quad\frac{\partial }{\partial y} f(t,y) = 1.01-2y(t)&amp;lt;/math&amp;gt;.&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
Y sea &amp;lt;math&amp;gt;B[(t_0,y_0),r],\quad r&amp;gt;0,\quad en (t_0,y_0)=(0,0.01)&amp;lt;/math&amp;gt;.&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;f(t,y)&amp;lt;/math&amp;gt; es continua en &amp;lt;math&amp;gt; \mathbb{B}\cap \mathbb{D}\quad \Rightarrow \quad \exists  y(t)\quad /\quad y'(t)=1,01y(t)-y^2(t)&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;math&amp;gt;\frac{\partial }{\partial y} f(t,y)&amp;lt;/math&amp;gt; es continua en &amp;lt;math&amp;gt; \mathbb{B}\cap \mathbb{D}\quad \Rightarrow \quad \exists !  y(t)\quad /\quad y'(t)=1,01y(t)-y^2(t)&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Con lo que queda demostrado que el (PVI) tiene solución y además esta es única.&lt;br /&gt;
&lt;br /&gt;
== Resolución numérica del problema de valor inicial ==&lt;br /&gt;
&lt;br /&gt;
En este apartado resolveremos el problema de valor inicial planteado anteriormente con tres métodos de integración numérica: el método de Euler, el método del Trapecio y el método de Runge-Kutta de orden 4.&lt;br /&gt;
&lt;br /&gt;
=== Método de Euler ===&lt;br /&gt;
&lt;br /&gt;
El método de Euler, llamado así en honor al matemático Leonhard Euler, es un procedimiento de integración numérica. Su expresión matemática es: &lt;br /&gt;
&amp;lt;math&amp;gt;  PVI =   &lt;br /&gt;
\begin{cases}&lt;br /&gt;
 y_0 \\&lt;br /&gt;
 y_{n+1}  = y_n + h*f(t_n,y_n) \\&lt;br /&gt;
\end{cases}\quad&lt;br /&gt;
   &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
A continuación emplearemos esta expresión en un programa de Matlab para obtener una aproximación de las soluciones. El código de dicho programa es el siguiente.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Eulergrafica.png|400px|miniaturadeimagen|derecha|Representación gráfica y(t). Método de Euler]]&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
%Método de Euler&lt;br /&gt;
clc&lt;br /&gt;
&lt;br /&gt;
%Datos iniciales&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=4;&lt;br /&gt;
y0=0.01;&lt;br /&gt;
h=0.1;&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=10;&lt;br /&gt;
&lt;br /&gt;
%Cálculo de subintervalos&lt;br /&gt;
N=round((tN-t0)/h);&lt;br /&gt;
t=t0:h:tN;&lt;br /&gt;
&lt;br /&gt;
%Creamos el vector donde vamos a guardar las soluciones&lt;br /&gt;
y=zeros(1,N+1);&lt;br /&gt;
y(1)=y0;&lt;br /&gt;
&lt;br /&gt;
%Euler&lt;br /&gt;
for i=1:N;&lt;br /&gt;
    y(i+1)=y(i)+h*(1.01*y(i)-(y(i)).^2);&lt;br /&gt;
end&lt;br /&gt;
%Tabla de Resultados&lt;br /&gt;
[t',y']&lt;br /&gt;
x=1.01-y;&lt;br /&gt;
hold on &lt;br /&gt;
plot(t,y,'r')&lt;br /&gt;
plot(t,x,'b')&lt;br /&gt;
hold off&lt;br /&gt;
legend('Sustancia B: y(t)','Sustancia A: x(t)','Location','best');&lt;br /&gt;
xlabel('Tiempo (s)')&lt;br /&gt;
ylabel('Concentración (mol/l)')&lt;br /&gt;
grid on&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
=== Método del trapecio ===&lt;br /&gt;
&lt;br /&gt;
Vamos a aplicar un método de integración numérica conocido como el Método del Trapecio por aproximar el valor de la integral al del área de un trapecio. Su expresión matemática es:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;  PVI =   &lt;br /&gt;
\begin{cases}&lt;br /&gt;
 y_0 \\&lt;br /&gt;
 y_{n+1}  =  y_n + \frac{h}{2}*(f(t_n,y_n)+f(t_{n+1},y_{n+1}))\\&lt;br /&gt;
\end{cases}\quad&lt;br /&gt;
   &amp;lt;/math&amp;gt;&lt;br /&gt;
   &lt;br /&gt;
Introducimos esta expresión en el código y obtenemos la gráfica de la solución.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Trapeciografica.png|400px|miniaturadeimagen|derecha|Representación gráfica y(t). Método del Trapecio]]&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
%Método del Trapecio&lt;br /&gt;
clc&lt;br /&gt;
&lt;br /&gt;
%Datos iniciales&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=4;&lt;br /&gt;
y0=0.01;&lt;br /&gt;
h=0.1;&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=10;&lt;br /&gt;
&lt;br /&gt;
%Cálculo de subintervalos&lt;br /&gt;
N=round((tN-t0)/h);&lt;br /&gt;
t=t0:h:tN;&lt;br /&gt;
&lt;br /&gt;
%Creamos el vector donde vamos a guardar las soluciones&lt;br /&gt;
y=zeros(1,N+1);&lt;br /&gt;
y(1)=y0;&lt;br /&gt;
&lt;br /&gt;
for i=1:N&lt;br /&gt;
y(i+1)=(((1-(h/2)*1.01)-sqrt(((1-(h/2)*1.01)^2)+4*(h/2)*((1+(h/2)*1.01)*y(i)-(h/2)*(y(i))^2)))/-h);&lt;br /&gt;
end&lt;br /&gt;
%Sacamos la tabla de resultados&lt;br /&gt;
[t',y']&lt;br /&gt;
x=1.01-y;&lt;br /&gt;
%Gráfico&lt;br /&gt;
hold on&lt;br /&gt;
plot(t,y,'r')&lt;br /&gt;
plot(t,x,'b')&lt;br /&gt;
legend('Sustancia B: y(t)','Sustancia A: x(t)','Location','best');&lt;br /&gt;
xlabel('Tiempo (s)')&lt;br /&gt;
ylabel('Concentración (mol/l)')&lt;br /&gt;
grid on&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
=== Método de Runge-Kutta ===&lt;br /&gt;
&lt;br /&gt;
El método de resolución numérica de Runge-Kutta, involucra un gran número de parámetros. Para simplificar la implementación de este método en Matlab, utilizaremos la función ''inline'', con la que declararemos previamente la función algebraica necesaria para el cálculo de los parámetros &amp;lt;math&amp;gt;k_i&amp;lt;/math&amp;gt;, ahorrándonos tener que escribir innumerables veces la correspondiente expresión matemática.&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
A continuación, detallamos la función &amp;lt;math&amp;gt;f(y)&amp;lt;/math&amp;gt; de la que dependerán los valores de los parámetros &amp;lt;math&amp;gt;k_i&amp;lt;/math&amp;gt;:&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;f(y)=y'(t)=1.01y(t)-y(t)^2&lt;br /&gt;
&lt;br /&gt;
\quad \Rightarrow \quad&lt;br /&gt;
&lt;br /&gt;
\begin{cases}&lt;br /&gt;
 k_1 &amp;amp; =  f(y_i) \\&lt;br /&gt;
 k_2 &amp;amp; =  f(y_i + {1 \over 2}k_1h) \\&lt;br /&gt;
 k_3 &amp;amp; =  f(y_i + \frac{1}{2}k_2h) \\&lt;br /&gt;
 k_4 &amp;amp; =  f(y_i + k_3h) \\&lt;br /&gt;
\end{cases}\quad [h=0.1]&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Entonces el método RK4 para este problema está dado por la siguiente ecuación:&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;y_{i+1} = y_{i} + {1 \over 6}h(k_1+2k_2+2k_3+k_4)&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Mediante el siguiente programa en Matlab calculamos numéricamente la solución y la representamos en un gráfico:&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Archivo:RK4II.png|400px|miniaturadeimagen|derecha|Representación gráfica y(t). Método Runge-Kutta]]&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
%Método de Runge-Kutta&lt;br /&gt;
clc&lt;br /&gt;
&lt;br /&gt;
%Función f(t)=y'(t)&lt;br /&gt;
fy=inline('1.01*y-y^2','y');&lt;br /&gt;
&lt;br /&gt;
%Datos del problema&lt;br /&gt;
y0=0.01;&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=10;&lt;br /&gt;
h=0.1;&lt;br /&gt;
&lt;br /&gt;
%Variable independiente (t)&lt;br /&gt;
t=t0:h:tN;&lt;br /&gt;
&lt;br /&gt;
%Variable dependiente (y)&lt;br /&gt;
y=zeros(1,length(t));&lt;br /&gt;
y(1)=y0;&lt;br /&gt;
&lt;br /&gt;
for i=1:length(t)-1&lt;br /&gt;
    k1=fy(y(i));&lt;br /&gt;
    k2=fy(y(i)+k1/2*h);&lt;br /&gt;
    k3=fy(y(i)+k2/2*h);&lt;br /&gt;
    k4=fy(y(i)+k3*h);&lt;br /&gt;
    y(i+1)=y(i)+h/6*(k1+2*k2+2*k3+k4);&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
%Variable dependiente (x)&lt;br /&gt;
x=1.01-y;&lt;br /&gt;
&lt;br /&gt;
%Representación gráfica&lt;br /&gt;
hold on&lt;br /&gt;
plot(t,x,'b')&lt;br /&gt;
plot(t,y,'r')&lt;br /&gt;
legend('Sustancia A: x(t)','Sustancia B: y(t)')&lt;br /&gt;
xlabel('Tiempo (s)')&lt;br /&gt;
ylabel('Concentración (mol/l)')&lt;br /&gt;
grid on&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
=== Comparación de métodos===&lt;br /&gt;
&lt;br /&gt;
Podemos observar fácilmente que las gráficas obtenidas con los diferentes métodos son iguales a primera vista. Sin embargo, superponiéndolas queda patente que no son exactamente iguales debido a que los métodos no poseen la misma precisión y , al operar todos con la misma longitud de paso, unos aproximan la solución exacta mejor que otros. Así se observa en estas imágenes:&lt;br /&gt;
&lt;br /&gt;
[[Archivo:comparativa1.jpg|400px|miniaturadeimagen|izquierda|Comparación de métodos]]&lt;br /&gt;
[[Archivo:comparativa2.jpg|400px|miniaturadeimagen|derecha|Comparación de métodos]]&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
Como podemos comprobar en las imágenes, el método de Euler es menos preciso que el del trapecio o el de Runge-Kutta.&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Resolución en forma de sistema de ecuaciones ==&lt;br /&gt;
&lt;br /&gt;
A continuación vamos a plantear el problema de valor inicial con un sistema no lineal de dos ecuaciones equivalente al problema resuelto anteriormente.&lt;br /&gt;
&lt;br /&gt;
Estas ecuaciones serán:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;(PVI)&lt;br /&gt;
\begin{cases}&lt;br /&gt;
    y'(t)=k_1 x(t)y(t) \\&lt;br /&gt;
    x'(t)=-k_1 x(t)y(t) \\&lt;br /&gt;
    \\&lt;br /&gt;
    x(0)=1 \\&lt;br /&gt;
    y(0) = 0.01&lt;br /&gt;
\end{cases}&lt;br /&gt;
\quad t\in[0,10]&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Resolveremos el problema por el método de Euler y por el método de Runge-Kutta, plasmando las soluciones en gráficos.&lt;br /&gt;
&lt;br /&gt;
=== Método de Euler ===&lt;br /&gt;
&lt;br /&gt;
En este caso aplicaremos en el siguiente código la expresión para EDO a cada una de las ecuaciones que conforma el sistema, obteniendo la correspondiente gráfica.&lt;br /&gt;
 &lt;br /&gt;
[[Archivo:SistEuler.png|400px|miniaturadeimagen|derecha|Representación gráfica de las concentraciones de A y B. Resolución del sistema por Euler]]&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
&lt;br /&gt;
%Resolución del sistema por el método de Euler&lt;br /&gt;
&lt;br /&gt;
clear all&lt;br /&gt;
&lt;br /&gt;
%Definimos el vector de la variable independiente, el número de&lt;br /&gt;
%subintervalos y la longitud de paso&lt;br /&gt;
&lt;br /&gt;
t0 = 0;&lt;br /&gt;
tN = 10;&lt;br /&gt;
h = 0.1;&lt;br /&gt;
t = t0:h:tN&lt;br /&gt;
N = (tN-t0)/h;&lt;br /&gt;
&lt;br /&gt;
%Definimos los vectores de las variables dependientes&lt;br /&gt;
&lt;br /&gt;
x = zeros(1, N+1);&lt;br /&gt;
y = zeros(1, N+1);&lt;br /&gt;
&lt;br /&gt;
x(1) = 1;&lt;br /&gt;
y(1) = 0.01;&lt;br /&gt;
&lt;br /&gt;
for i = 1:N&lt;br /&gt;
    &lt;br /&gt;
    x(i+1)=x(i)+h*(-x(i).*y(i));&lt;br /&gt;
    y(i+1)=y(i)+h*(y(i).*x(i));&lt;br /&gt;
    &lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
%Representamos gráficamente las soluciones&lt;br /&gt;
&lt;br /&gt;
hold on&lt;br /&gt;
&lt;br /&gt;
plot(t,x,'b');&lt;br /&gt;
plot(t,y,'r');&lt;br /&gt;
grid on&lt;br /&gt;
&lt;br /&gt;
legend('Sustancia A: x(t)','Sustancia B: y(t)')&lt;br /&gt;
xlabel('Tiempo (s)')&lt;br /&gt;
ylabel('Concentración (mol/l)')&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
hold off&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
}}&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Método de Runge-Kutta===&lt;br /&gt;
&lt;br /&gt;
El método de resolución numérica de Runge-Kutta, involucra un gran número de parámetros. Para simplificar la implementación de este método en Matlab, el sistema se tratará como una matriz &amp;lt;math&amp;gt;z&amp;lt;/math&amp;gt;. Además, utilizaremos la función ''inline'', con la que declararemos previamente la función algebraica necesaria para el cálculo de los parámetros &amp;lt;math&amp;gt;k_i&amp;lt;/math&amp;gt;, ahorrándonos tener que escribir innumerables veces la correspondiente expresión matemática.&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Primero, expresamos el sistema en forma matricial:&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;(PVI)\begin{cases}&lt;br /&gt;
    x'(t)=-k_1 x(t)y(t) \\&lt;br /&gt;
    y'(t)=k_1 x(t)y(t) \\&lt;br /&gt;
    \\&lt;br /&gt;
    x(0)=1 \\&lt;br /&gt;
    y(0) = 0.01&lt;br /&gt;
\end{cases}\quad t\in[0,10]&lt;br /&gt;
&lt;br /&gt;
\quad \Rightarrow \quad k_1=1\quad \Rightarrow \quad&lt;br /&gt;
&lt;br /&gt;
(PVI)\begin{cases}\vec{z}'(t)=&lt;br /&gt;
   \begin{bmatrix}&lt;br /&gt;
      x'(t) \\&lt;br /&gt;
      y'(t) \\&lt;br /&gt;
   \end{bmatrix}&lt;br /&gt;
=&lt;br /&gt;
      \begin{bmatrix}&lt;br /&gt;
      -x(t)y(t) \\&lt;br /&gt;
      x(t)y(t) \\&lt;br /&gt;
   \end{bmatrix}&lt;br /&gt;
&lt;br /&gt;
 \\ \\ \vec{z}(0)=&lt;br /&gt;
   \begin{bmatrix}&lt;br /&gt;
      x(0) \\&lt;br /&gt;
      y(0) \\&lt;br /&gt;
   \end{bmatrix}&lt;br /&gt;
=&lt;br /&gt;
      \begin{bmatrix}&lt;br /&gt;
      1 \\&lt;br /&gt;
      0.01 \\&lt;br /&gt;
   \end{bmatrix}&lt;br /&gt;
\end{cases}\quad t\in[0,10]&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
A continuación, detallamos la función &amp;lt;math&amp;gt;\vec{F}&amp;lt;/math&amp;gt; de la que dependerán los valores de los parámetros &amp;lt;math&amp;gt;k_i&amp;lt;/math&amp;gt;:&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;\vec{F}(x,y)=\vec{F}(\vec{z})=&lt;br /&gt;
&lt;br /&gt;
\begin{bmatrix}&lt;br /&gt;
    f(\vec{z}) \\&lt;br /&gt;
    g(\vec{z}) \\&lt;br /&gt;
\end{bmatrix}=&lt;br /&gt;
&lt;br /&gt;
\begin{bmatrix}&lt;br /&gt;
    x'(t) \\&lt;br /&gt;
    y'(t) \\&lt;br /&gt;
\end{bmatrix}=&lt;br /&gt;
&lt;br /&gt;
\vec{z}'(t)=&lt;br /&gt;
&lt;br /&gt;
\begin{bmatrix}&lt;br /&gt;
    -x(t)y(t) \\&lt;br /&gt;
    x(t)y(t) \\&lt;br /&gt;
\end{bmatrix}&lt;br /&gt;
\quad \Rightarrow \quad&lt;br /&gt;
&lt;br /&gt;
\begin{cases}&lt;br /&gt;
 [\vec{k_1}] &amp;amp; =  F(\vec{z}_i) \\&lt;br /&gt;
 [\vec{k_2}] &amp;amp; =  F(\vec{z}_i + {1 \over 2}k_1h) \\&lt;br /&gt;
 [\vec{k_3}] &amp;amp; =  F(\vec{z}_i + \frac{1}{2}k_2h) \\&lt;br /&gt;
 [\vec{k_4}] &amp;amp; =  F(\vec{z}_i + k_3h) \\&lt;br /&gt;
\end{cases}\quad [h=0.1]&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Entonces el método RK4 para este problema está dado por la siguiente ecuación:&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;\vec{z}_{i+1} = \vec{z}_{i} + {1 \over 6}h(\vec{k_1}+2\vec{k_2}+2\vec{k_3}+\vec{k_4})&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Mediante el siguiente programa en Matlab calculamos numéricamente la solución y la representamos en un gráfico:&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Archivo:sistema_RK4.png|400px|miniaturadeimagen|derecha|Representación gráfica de las concentraciones de A y B. Resolución del sistema por Runge-Kutta]]&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
%Método de Runge-Kutta&lt;br /&gt;
clc&lt;br /&gt;
&lt;br /&gt;
%Función F=[x'(t); y'(t)]&lt;br /&gt;
F=inline('[-z(1)*z(2);z(1)*z(2)]','z');&lt;br /&gt;
&lt;br /&gt;
%Datos del problema &lt;br /&gt;
x0=1;&lt;br /&gt;
y0=0.01;&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=10;&lt;br /&gt;
h=0.1;&lt;br /&gt;
&lt;br /&gt;
%Vector de variable independiente (t)&lt;br /&gt;
t=t0:h:tN;&lt;br /&gt;
&lt;br /&gt;
%Matriz de variables dependientes z=[x;y]&lt;br /&gt;
z=zeros(2,length(t));&lt;br /&gt;
z(:,1)=[x0;y0];&lt;br /&gt;
&lt;br /&gt;
for i = 1:length(t)-1&lt;br /&gt;
    k1=F(z(:,i));&lt;br /&gt;
    k2=F(z(:,i)+k1.*h/2);&lt;br /&gt;
    k3=F(z(:,i)+k2.*h/2);&lt;br /&gt;
    k4=F(z(:,i)+k3.*h);&lt;br /&gt;
    z(:,i+1)=z(:,i)+h/6.*(k1+2.*k2+2.*k3+k4);&lt;br /&gt;
end&lt;br /&gt;
 &lt;br /&gt;
%Representación gráfica&lt;br /&gt;
hold on&lt;br /&gt;
plot(t,z(1,:))&lt;br /&gt;
plot(t,z(2,:),'r')&lt;br /&gt;
legend('Sustancia A: x(t)','Sustancia B: y(t)')&lt;br /&gt;
xlabel('Tiempo (s)')&lt;br /&gt;
ylabel('Concentración (mol/l)')&lt;br /&gt;
grid on&lt;br /&gt;
%hold off&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
== Interpretación de las gráficas ==&lt;br /&gt;
&lt;br /&gt;
Como cabía esperar, obtenemos la misma solución resolviendo el problema como sistema o como EDO. Podemos observar por los resultados obtenidos que la velocidad de aparición de B es igual a la velocidad de desaparición de A (como dicta el principio de conservación de la masa), que A acaba desapareciendo prácticamente por completo y que la concentración de B termina por estabilizarse alrededor de 1 mol/l. Ambos compuestos alcanzan sus los extremos de sus concentraciones en el mismo instante de tiempo&lt;br /&gt;
&lt;br /&gt;
También cabe destacar que cuando el tiempo transcurrido alcanza 4,5 segundos las concentraciones de ambos compuestos son las mismas.&lt;br /&gt;
&lt;br /&gt;
= Reacción II =&lt;br /&gt;
&lt;br /&gt;
En este apartado vamos a estudiar la reacción propuesta por Alfred J. Lotka en 1920, que es la siguiente:&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt; A + X →_{k1} 2X;&amp;lt;/math&amp;gt;     :&amp;lt;math&amp;gt; X + Y →_{k2} 2Y;&amp;lt;/math&amp;gt;     :&amp;lt;math&amp;gt;Y →_{k3} 2B  &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Como se puede observar, se trata de una reacción compleja integrada por 3 reacciones simples (las dos primeras autocatalíticas) en las que intervienen un total de 4 compuestos, A, B, X e Y. Siguiendo el desarrollo de la reacción, es lógico suponer que A se agotará al comienzo de la reacción, que los máximos de concentración de X e Y se darán en los estados intermedios y que al final el compuesto B será el único restante, siendo el producto final de la reacción.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Interpretación del problema y deducción de las ecuaciones diferenciales ==&lt;br /&gt;
&lt;br /&gt;
Para averiguar cómo evolucionan las concentraciones de los cuatro compuestos durante el desarrollo de la reacción necesitaremos obtener cuatro ecuaciones diferenciales. Para ello nos volveremos a basar en los principios físicos que ya empleamos en la anterior reacción. Definimos A(t), x(t), y(t), y B(t) (A, x, y, B; para ahorrar notación) a las concentraciones de A, X, Y, y B, respectivamente. &lt;br /&gt;
&lt;br /&gt;
En primer lugar aplicamos el Principio de Conservación de la masa, que establece que la suma de las concentraciones de los compuestos es constante (no desaparece masa en el proceso), lo que derivando nos indica que:&lt;br /&gt;
&lt;br /&gt;
: &amp;lt;math&amp;gt; A' + x' + y' + B' = 0 \quad\quad(I)&amp;lt;/math&amp;gt;       &lt;br /&gt;
&lt;br /&gt;
A continuación aplicaremos la Ley de Acción de Masas (velocidad de reacción proporcional al producto de la concentración de los reactivos).&lt;br /&gt;
&lt;br /&gt;
Aplicando esta ley a la última reacción simple obtenemos que: &lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;B'=k_3y \quad\quad(II)&amp;lt;/math&amp;gt;        &lt;br /&gt;
&lt;br /&gt;
En el caso de las concentraciones de X e Y las expresiones resultantes son algo más complicadas ya que estos dos compuestos actúan como reactivos y productos en más de una reacción simple, por lo que la variación de sus concentraciones será la suma de las variaciones de las reacciones en las que aparezcan:&lt;br /&gt;
&lt;br /&gt;
: &amp;lt;math&amp;gt; x' = x'_{1} + x'_{2} → x' = k_{1}Ax - k{2}xy \quad\quad(III)&amp;lt;/math&amp;gt;        &lt;br /&gt;
: &amp;lt;math&amp;gt; y' = y'_{2} + y'_{3} → y' = k_{2}xy − k_3{y} \quad\quad(IV)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Por último sustituimos (II), (III) y (IV) en (I) obteniendo: &lt;br /&gt;
&lt;br /&gt;
: &amp;lt;math&amp;gt; A' + k_{1}Ax - k{2}xy + k_{2}xy − k_3{y}+ k_3y= 0 : &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
De donde obtenemos que:&lt;br /&gt;
&lt;br /&gt;
: &amp;lt;math&amp;gt; A' = -k_{1}Ax &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Ahora que ya tenemos las variaciones de concentración de los compuestos en función de las concentraciones podemos aplicar métodos numéricos que nos lleven a una solución aproximada.&lt;br /&gt;
&lt;br /&gt;
== Resolución numérica del sistema de ecuaciones ==&lt;br /&gt;
&lt;br /&gt;
Una vez obtenidas las ecuaciones y conociendo las condiciones iniciales y los valores de las constantes podemos plantear el problema de valor inicial para luego resolverlo.&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;(PVI)&lt;br /&gt;
\begin{cases}&lt;br /&gt;
    A' = -k_{1}Ax\\&lt;br /&gt;
    x' = k_{1}Ax - k{2}xy\\&lt;br /&gt;
    y' = k_{2}xy − k_3{y}\\&lt;br /&gt;
    B'=k_3y \\&lt;br /&gt;
\\&lt;br /&gt;
    A(0)=5  \\&lt;br /&gt;
    x(0)=5*10^{-4} \\&lt;br /&gt;
    y(0)=10^{-5}\\&lt;br /&gt;
    B(0)=0 \\&lt;br /&gt;
\end{cases}&lt;br /&gt;
\quad t\in[0,200]&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Siendo &amp;lt;math&amp;gt; k_{1}=K_{2}=2k_{3}=0.1 &amp;lt;/math&amp;gt; y las unidades de la concentración mol/l.&lt;br /&gt;
&lt;br /&gt;
=== Método de Euler ===&lt;br /&gt;
&lt;br /&gt;
Aplicamos el método de Euler de forma análoga a como lo hicimos en [[Reacciones_con_autocatálisis._Grupo_D12#Método_de_Euler_2|apartado 2.5.1]]&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Euler lotka0.01.png|400px|miniaturadeimagen|derecha|Representación gráfica de las concentraciones de A, B, X, e Y a lo largo del tiempo. Resoluciónd delsistema por el método de Euler con longitud de paso h=0.01]] &lt;br /&gt;
[[Archivo:Euler lotka0.001.png|400px|miniaturadeimagen|derecha|Representación gráfica de las concentraciones de A, B, X, e Y a lo largo del tiempo. Resoluciónd delsistema por el método de Euler con longitud de paso h=0.001]]&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
&lt;br /&gt;
%Resolución del sistema de la reacción de Lotka por el método de Euler&lt;br /&gt;
&lt;br /&gt;
clear all&lt;br /&gt;
&lt;br /&gt;
%Definimos la variable independiente y establecemos los datos del problema&lt;br /&gt;
%de valor inicial. Para la longitud de paso h introducimos en primer lugar&lt;br /&gt;
%0.01 y luego 0.001&lt;br /&gt;
&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=200;&lt;br /&gt;
h= input('Introduzca una longitud de paso ');&lt;br /&gt;
t = t0:h:tN;&lt;br /&gt;
N=(tN-t0)/h;&lt;br /&gt;
k1 = 0.1;&lt;br /&gt;
k2 = 0.1;&lt;br /&gt;
k3 = 0.05;&lt;br /&gt;
A0 = 5;&lt;br /&gt;
B0 = 0;&lt;br /&gt;
X0 = 5*10^(-4);&lt;br /&gt;
Y0 = 10^(-5);&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
%Definimos las variables dependientes.&lt;br /&gt;
&lt;br /&gt;
A = zeros(1, N-1);&lt;br /&gt;
B = A;&lt;br /&gt;
X = A;&lt;br /&gt;
Y = A;&lt;br /&gt;
&lt;br /&gt;
A(1) = A0;&lt;br /&gt;
B(1) = B0;&lt;br /&gt;
X(1) = X0;&lt;br /&gt;
Y(1) = Y0;&lt;br /&gt;
&lt;br /&gt;
for i = 1:N&lt;br /&gt;
    &lt;br /&gt;
    X(i+1) = X(i) + h*(k1*A(i)*X(i)-k2*Y(i)*X(i));&lt;br /&gt;
    Y(i+1)=Y(i)+h.*(k2.*X(i).*Y(i)-k3.*Y(i));&lt;br /&gt;
    B(i+1) = B(i) + h*(k3*Y(i));&lt;br /&gt;
    A(i+1) = A(i) + h*(-k1*A(i)*X(i));&lt;br /&gt;
   &lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
%Representamos gráficamente la solución&lt;br /&gt;
&lt;br /&gt;
hold on&lt;br /&gt;
&lt;br /&gt;
plot (t,A,'b')&lt;br /&gt;
plot(t, X, 'r')&lt;br /&gt;
plot(t,Y, 'g')&lt;br /&gt;
plot(t, B, 'm')&lt;br /&gt;
legend('Sustancia A: A(t)','Sustancia X: x(t)','Sustancia Y: y(t)','Sustancia B: B(t)','Location','Best')&lt;br /&gt;
xlabel('Tiempo (s)')&lt;br /&gt;
ylabel('Concentración (mol/l)')&lt;br /&gt;
grid on&lt;br /&gt;
&lt;br /&gt;
hold off&lt;br /&gt;
&lt;br /&gt;
}}&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
A continuación tendremos que comprobar si el método es estable. &amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
Un método es estable cuando el error local es pequeño y además este error no se amplifica a lo largo del tiempo. Para calificar la estabilidad del método de Euler resolveremos el sistema anterior con este método, con pasos &amp;quot;h=0.01&amp;quot; y &amp;quot;h=0.001&amp;quot;, y lo compararemos con la resolución del sistema con el método de Heun, que se asemeja más a la solución exacta.&amp;lt;br /&amp;gt;&lt;br /&gt;
En la comparación representaremos en azul el método de Heun y en rojo el método de Euler.&amp;lt;br /&amp;gt;&lt;br /&gt;
Para &amp;quot;h=0.01&amp;quot; tenemos lo siguiente:&lt;br /&gt;
[[Archivo:1estabilidad123.jpg|400px|miniaturadeimagen|izquierda|Comparación entre Método de Heun (Azul) con el Método de Euler con paso h=0.01 (Rojo)]] &lt;br /&gt;
[[Archivo:1estabilidad321.jpg|400px|miniaturadeimagen|derecha|Comparación entre Método de Heun (Azul) con el Método de Euler con paso h=0.01 (Rojo)]] &lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
Para &amp;quot;h=0.001&amp;quot; tenemos lo siguiente:&lt;br /&gt;
[[Archivo:2estabilidad123.jpg|400px|miniaturadeimagen|izquierda|Comparación entre Método de Heun (Azul) con el Método de Euler con paso h=0.001 (Rojo)]] &lt;br /&gt;
[[Archivo:2estabilidad321.jpg|400px|miniaturadeimagen|derecha|Comparación entre Método de Heun (Azul) con el Método de Euler con paso h=0.001 (Rojo)]]&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
Como podemos ver en las imágenes de los dos procesos las gráficas se superponen y no se aprecian diferencias hasta que no ampliamos la imagen. Y esto sucede en todo momento con lo que podemos garantizar que en este caso el método de Euler es estable para los pasos que hemos usado.&lt;br /&gt;
&lt;br /&gt;
=== Método de Heun ===&lt;br /&gt;
&lt;br /&gt;
Si bien el método de resolución numérica de Heun no involucra un número de parámetros tan notable como el método de Runge-Kutta, en este caso tenemos un sistema de 4 ecuaciones diferenciales, por lo que, en aras de simplificar, utilizaremos el mismo criterio que en el [[Reacciones_con_autocatálisis._Grupo_D12#Método_de_Runge-Kutta_2|apartado 2.5.2]].: El sistema se tratará como una matriz &amp;lt;math&amp;gt;z&amp;lt;/math&amp;gt;, y para la obtención de los parámetros &amp;lt;math&amp;gt;k_i&amp;lt;/math&amp;gt; utilizaremos la función ''inline'', con la que declararemos previamente las expresiones necesarias para el cálculo de los parámetros &amp;lt;math&amp;gt;k_i&amp;lt;/math&amp;gt;.&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Primero, expresamos el sistema en forma matricial:&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;(PVI)\begin{cases}&lt;br /&gt;
A'(t)=-k_1 A(t)x(t) \\&lt;br /&gt;
x'(t)=k_1 A(t)x(t)-k_2 x(t)y(t) \\&lt;br /&gt;
y'(t)=k_2 x(t)y(t)-k_3 y(t) \\&lt;br /&gt;
B'(t)=k_3 x(t)y(t) \\ \\&lt;br /&gt;
A(0)=5 \\&lt;br /&gt;
x(0)=5·10^{-4} \\&lt;br /&gt;
y(0)=10^{-5} \\&lt;br /&gt;
B(0) = 0&lt;br /&gt;
\end{cases}\quad t\in[0,200]&lt;br /&gt;
&lt;br /&gt;
\quad \Rightarrow \quad&lt;br /&gt;
&lt;br /&gt;
\begin{cases}&lt;br /&gt;
k_1=0.1 \\&lt;br /&gt;
k_2=0.1 \\&lt;br /&gt;
k_3=0.05 \\&lt;br /&gt;
&lt;br /&gt;
\end{cases}&lt;br /&gt;
&lt;br /&gt;
\quad \Rightarrow \quad&lt;br /&gt;
&lt;br /&gt;
(PVI)\begin{cases}\vec{z}'(t)=&lt;br /&gt;
   \begin{bmatrix}&lt;br /&gt;
      A'(t) \\&lt;br /&gt;
      x'(t) \\&lt;br /&gt;
      y'(t) \\&lt;br /&gt;
      B'(t) \\&lt;br /&gt;
   \end{bmatrix}&lt;br /&gt;
=&lt;br /&gt;
      \begin{bmatrix}&lt;br /&gt;
      -0.1 A(t)x(t) \\&lt;br /&gt;
      0.1 A(t)x(t)-0.1 x(t)y(t) \\&lt;br /&gt;
      0.1 x(t)y(t)-0.05 y(t) \\&lt;br /&gt;
      0.05 y(t)x(t)\\&lt;br /&gt;
   \end{bmatrix}&lt;br /&gt;
&lt;br /&gt;
 \\ \\ \vec{z}(0)=&lt;br /&gt;
   \begin{bmatrix}&lt;br /&gt;
      A(0) \\&lt;br /&gt;
      x(0) \\&lt;br /&gt;
      y(0) \\&lt;br /&gt;
      B(0) \\&lt;br /&gt;
   \end{bmatrix}&lt;br /&gt;
=&lt;br /&gt;
      \begin{bmatrix}&lt;br /&gt;
      5 \\&lt;br /&gt;
      5·10^{-4} \\&lt;br /&gt;
      10^{-5} \\&lt;br /&gt;
      0&lt;br /&gt;
   \end{bmatrix}&lt;br /&gt;
\end{cases}\quad t\in[0,200]&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
A continuación, detallamos la función &amp;lt;math&amp;gt;\vec{F}&amp;lt;/math&amp;gt; de la que dependerán los valores de los parámetros &amp;lt;math&amp;gt;k_i&amp;lt;/math&amp;gt;:&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;\vec{F}(A,x,y,B)=\vec{F}(\vec{z})=&lt;br /&gt;
\begin{bmatrix}&lt;br /&gt;
    f(\vec{z}) \\ &lt;br /&gt;
    g(\vec{z}) \\ &lt;br /&gt;
    h(\vec{z}) \\ &lt;br /&gt;
    i(\vec{z}) \\ &lt;br /&gt;
\end{bmatrix}=&lt;br /&gt;
\begin{bmatrix}&lt;br /&gt;
    A'(t) \\&lt;br /&gt;
    x'(t) \\&lt;br /&gt;
    y'(t) \\&lt;br /&gt;
    B'(t) \\&lt;br /&gt;
\end{bmatrix}=&lt;br /&gt;
\vec{z}'(t)=&lt;br /&gt;
      \begin{bmatrix}&lt;br /&gt;
      -0.1 A(t)x(t) \\&lt;br /&gt;
      0.1 A(t)x(t)-0.1 x(t)y(t) \\&lt;br /&gt;
      0.1 x(t)y(t)-0.05 y(t) \\&lt;br /&gt;
      0.05 y(t)x(t)\\&lt;br /&gt;
   \end{bmatrix}&lt;br /&gt;
&lt;br /&gt;
\quad \Rightarrow \quad &lt;br /&gt;
&lt;br /&gt;
\begin{cases}&lt;br /&gt;
 [\vec{k_1}] &amp;amp; =  F(\vec{z}_i) \\&lt;br /&gt;
 [\vec{k_2}] &amp;amp; =  F(\vec{z}_i + {1 \over 2}k_1h) \\&lt;br /&gt;
\end{cases}\quad [h=0.01]&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Entonces el método de Heun para este problema está dado por la siguiente ecuación:&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;\vec{z}_{i+1} = \vec{z}_{i} + {1 \over 2}h(\vec{k_1}+\vec{k_2})&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Mediante el siguiente programa en Matlab calculamos numéricamente la solución y la representamos en un gráfico:&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Archivo:AXYBRK4.png|400px|miniaturadeimagen|derecha|Representación gráfica de las concentraciones de A,X,Y y B. Resolución del sistema por Heun]]&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
%Método de Heun&lt;br /&gt;
clc&lt;br /&gt;
&lt;br /&gt;
%Función F=[A'(t);x'(t); y'(t);B'(t)]&lt;br /&gt;
F=inline('0.1.*[-z(1)*z(2);z(1)*z(2)-z(2)*z(3);z(2)*z(3)-z(3)/2;z(3)/2]','z');&lt;br /&gt;
&lt;br /&gt;
%Datos del problema&lt;br /&gt;
A0=5;&lt;br /&gt;
x0=5*10^-4;&lt;br /&gt;
y0=10^(-5);&lt;br /&gt;
B0=0;&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=200;&lt;br /&gt;
h=0.1;&lt;br /&gt;
&lt;br /&gt;
%Vector de variable independiente (t)&lt;br /&gt;
t=t0:h:tN;&lt;br /&gt;
&lt;br /&gt;
%Matriz de variables dependientes z=[A;x;y;B]&lt;br /&gt;
z=zeros(4,length(t));&lt;br /&gt;
z(:,1)=[A0;x0;y0;B0];&lt;br /&gt;
&lt;br /&gt;
for i = 1:length(t)-1&lt;br /&gt;
    k1=F(z(:,i));&lt;br /&gt;
    k2=F(z(:,i)+k1.*h/2);&lt;br /&gt;
    z(:,i+1)=z(:,i)+h/2.*(k1+k2);&lt;br /&gt;
end&lt;br /&gt;
 &lt;br /&gt;
%Representación gráfica&lt;br /&gt;
hold on&lt;br /&gt;
plot(t,z(1,:),'b')&lt;br /&gt;
plot(t,z(2,:),'r')&lt;br /&gt;
plot(t,z(3,:),'g')&lt;br /&gt;
plot(t,z(4,:),'m')&lt;br /&gt;
legend('Sustancia A: A(t)','Sustancia X: x(t)','Sustancia Y: y(t)','Sustancia B: B(t)','Location','Best')&lt;br /&gt;
xlabel('Tiempo (s)')&lt;br /&gt;
ylabel('Concentración (mol/l)')&lt;br /&gt;
grid on&lt;br /&gt;
hold off&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
== Interpretación de las gráficas == &lt;br /&gt;
 &lt;br /&gt;
El proceso comienza con el predominio absoluto del compuesto A en la concentración total, siendo la presencia de los otros tres compuestos despreciable. Durante los primeros segundos la situación apenas cambia, pero tras los diez primeros segundos la concentración de A cae bruscamente mientras que la concentración de X aumenta a la misma velocidad; antes de llegar a los veinte segundos transcurridos las concentraciones de ambos compuestos se igualan y otros quince segundos más tarde el compuesto A  prácticamente ha desaparecido y el X ha alcanzado su concentración máxima (5 mol/litro).&lt;br /&gt;
&lt;br /&gt;
Es entonces cuando concluye la primera reacción y comienzan las otras dos, al no haber más compuesto A que cree compuesto X. La velocidad de aparición de Y es inicialmente mayor que la de B, superando al poco tiempo en concentración a la sustancia X. Sin embargo, llega un momento en el que la concentración de X es tan baja que se ralentiza la creación de Y y pronto empieza a disminuir su concentración tras alcanzar un máximo en torno a los 56 segundos, perdiendo peso la segunda reacción en beneficio de la tercera.&lt;br /&gt;
&lt;br /&gt;
Tras los 60 segundos de reacción el compuesto X pasa a tener una concentración despreciable, por lo que la única reacción simple que se sigue desarrollando es la tercera, destruyéndose reactivo Y y creándose producto B. La concentración de Y va reduciéndose paulatinamente hasta que en torno a los 160 segundos de reacción alcanza niveles insignificantes mientras que la concentración de B alcanza su máximo de 5 mol/litro.&lt;br /&gt;
&lt;br /&gt;
Es interesante observar que en todo momento se cumple el Principio de Conservación de la masa: la suma en cualquier momento de las concentraciones de las sustancias es 5 mol /litro. Esto es fácilmente comprobable en los momentos en que las concentraciones de A, X y B alcanzan su máximo de 5 mol/litro y el resto de concentraciones son nulas o despreciables. &lt;br /&gt;
[[Categoría:Ecuaciones Diferenciales]]&lt;br /&gt;
[[Categoría:ED14/15]]&lt;br /&gt;
[[Categoría:Trabajos 2014-15]]&lt;/div&gt;</summary>
		<author><name>Javier Ruiz de Galarreta López</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Reacciones_con_autocat%C3%A1lisis._Grupo_D12&amp;diff=29217</id>
		<title>Reacciones con autocatálisis. Grupo D12</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Reacciones_con_autocat%C3%A1lisis._Grupo_D12&amp;diff=29217"/>
				<updated>2015-03-12T08:19:00Z</updated>
		
		<summary type="html">&lt;p&gt;Javier Ruiz de Galarreta López: /* Método del trapecio */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{ TrabajoED | Reacciones con autocatálisis. Grupo D12 | [[:Categoría:Ecuaciones Diferenciales|Ecuaciones Diferenciales]]|[[:Categoría:ED14/15|Curso 2014-15]] | Javier Ruiz de Galarreta López, Argimiro Martínez López, Eduardo Moyano García, Alberto Rodríguez Ruiz. }}&lt;br /&gt;
&lt;br /&gt;
= Introducción: objetivos y metodología =&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
El objetivo de este trabajo es estudiar las concentraciones de los reactivos y productos de una reacción química a lo largo de la evolución en el tiempo de dicha reacción. Para ello modelizaremos el proceso empleando ecuaciones diferenciales y teniendo en cuenta la Ley de Acción de Masas y el Principio de Conservación de la materia.&lt;br /&gt;
&lt;br /&gt;
Al ser las ecuaciones y sistemas que se nos presentan de difícil resolución analítica, utilizaremos el programa informático Matlab para resolverlos mediante métodos numéricos como el de Euler, el del Trapecio, el de Runge-Kutta y el de Heun. &lt;br /&gt;
&lt;br /&gt;
Plasmaremos las soluciones en gráficos que nos permitirán dar una interpretación físico química a los resultados.&lt;br /&gt;
&lt;br /&gt;
= Reacción I =&lt;br /&gt;
&lt;br /&gt;
En primer lugar consideramos una reacción química irreversible en una solución bien mezclada, que se desarrolla para un volumen y una temperatura constantes, y en la que uno de los componentes (B, en este caso), hace de efecto catalítico.&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt; A + B →_{k1} 2B  &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Para desarrollar nuestro análisis nos apoyaremos en dos leyes físico químicas:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''Ley de acción de masas''': Enunciada por Guldberg y Waage en 1864, establece, entre otras cosas, que  la velocidad de&lt;br /&gt;
reacción es proporcional al producto de las concentraciones de los reactivos.&lt;br /&gt;
&lt;br /&gt;
'''Principio de conservación de la masa''': Establece que en una reacción química ordinaria la masa permanece constante, siendo la masa consumida de los reactivos igual a la masa obtenida de los productos. Fue elaborada independientemente por Míjail Lomonósov en 1745 y Antoine Lavoisier en 1785.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Interpretación del problema y deducción de las ecuaciones diferenciales ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Para hallar las ecuaciones diferenciales que nos describan cómo se desarrolla la reacción en el tiempo nos basaremos en las dos leyes enunciadas anteriormente. En primer lugar, definimos nuestra variable independiente como el tiempo &amp;lt;math&amp;gt;t&amp;lt;/math&amp;gt; en segundos. Las dos variables dependientes serán las concentraciones de los compuestos A y B, que denominaremos &amp;lt;math&amp;gt;x(t)&amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt;y(t)&amp;lt;/math&amp;gt;, ambas expresadas en mol/l. &lt;br /&gt;
&lt;br /&gt;
El principio de conservación de la masa expone que la suma de las concentraciones de los reactivos y los productos es constante. Esto equivale, derivando la expresión &amp;lt;math&amp;gt;x(t)+y(t)=cte&amp;lt;/math&amp;gt;, a que  desaparece tanto reactivo como producto aparece, o lo que es lo mismo, que la velocidad de aparición del producto es igual a la velocidad de desaparición (velocidad de aparición negativa) del reactivo:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;x'(t)=-y'(t)&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
La otra ecuación que necesitamos la obtenemos directamente de aplicar la Ley de acción de masas, que establece que la velocidad de la reacción (la velocidad a la que aparece el producto o desaparece el reactivo) es igual al producto de las concentraciones por una constante.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;y'(t)=k_1x(t)y(t)&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Obtención del problema de valor inicial ==&lt;br /&gt;
Una vez demostrado el origen de las ecuaciones (1) y (2) en el apartado anterior, obtendremos el problema de valor inicial (PVI) mediante las operaciones detalladas a continuación:&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;x'(t)+y'(t)=0\quad\quad(1)&amp;lt;/math&amp;gt;&lt;br /&gt;
:&amp;lt;math&amp;gt;y'(t)=k_1x(t)y(t)\quad\quad(2)&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Integrando (1) obtenemos (3):&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
:&amp;lt;math&amp;gt;\int_\mathbb{D} (\frac{dx(t)}{dt} + \frac{dy(t)}{dt})\,dt =\int_\mathbb{D} 0\,dt \quad \Rightarrow \quad x(t)+y(t)=k_2\quad \Rightarrow \quad x(t)=k_2-y(t)\quad\quad(3)&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Sustituyendo (3) en (2), obtenemos (4):&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;y'(t)=k_1x(t)y(t)\quad \Rightarrow \quad y'(t)=k_1(k_2-y(t))y(t)\quad \Rightarrow \quad y'(t)=k_1k_2y(t)-k_1y^2(t)\quad\quad(4)&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Conocemos las concentraciones iniciales de A y de B, por lo que podemos obtener el valor de la constante k&amp;lt;sub&amp;gt;2&amp;lt;/sub&amp;gt;:&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;[A]:\quad x(0)=1 mol/l;\quad\quad [B]:\quad y(0)=0,01 mol/l&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;x(t)+y(t)=k_2\quad \Rightarrow \quad x(0)+y(0)=k_2\quad \Rightarrow \quad 1+0,01=k_2\quad \Rightarrow \quad k_2=1,01&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Por último, conocemos también el valor de k&amp;lt;sub&amp;gt;1&amp;lt;/sub&amp;gt;, por lo que podremos plantear a continuación el correspondiente PVI:&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;k_1=1&amp;lt;/math&amp;gt;&lt;br /&gt;
:&amp;lt;math&amp;gt;(PVI)\begin{cases}y'(t)=1,01y(t)-y^2(t) \\ \\&lt;br /&gt;
y(0) = 0,01 \end{cases}\quad (t,y)\in[0,10]\times\mathbb{R}&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Unicidad de la solución ==&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Existencia-y-unicidad.png|200px|miniaturadeimagen|derecha|Intersección B con dominio]]&lt;br /&gt;
&lt;br /&gt;
Aplicamos a continuación el Teorema de Existencia y Unicidad:&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Sea &amp;lt;math&amp;gt;f(t,y)=y'(t) \Rightarrow f(t,y)=1.01y(t)-y^2(t)\quad&amp;lt;/math&amp;gt;, y &amp;lt;math&amp;gt;\quad\frac{\partial }{\partial y} f(t,y) = 1.01-2y(t)&amp;lt;/math&amp;gt;.&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
Y sea &amp;lt;math&amp;gt;B[(t_0,y_0),r],\quad r&amp;gt;0,\quad en (t_0,y_0)=(0,0.01)&amp;lt;/math&amp;gt;.&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;f(t,y)&amp;lt;/math&amp;gt; es continua en &amp;lt;math&amp;gt; \mathbb{B}\cap \mathbb{D}\quad \Rightarrow \quad \exists  y(t)\quad /\quad y'(t)=1,01y(t)-y^2(t)&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;math&amp;gt;\frac{\partial }{\partial y} f(t,y)&amp;lt;/math&amp;gt; es continua en &amp;lt;math&amp;gt; \mathbb{B}\cap \mathbb{D}\quad \Rightarrow \quad \exists !  y(t)\quad /\quad y'(t)=1,01y(t)-y^2(t)&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Con lo que queda demostrado que el (PVI) tiene solución y además esta es única.&lt;br /&gt;
&lt;br /&gt;
== Resolución numérica del problema de valor inicial ==&lt;br /&gt;
&lt;br /&gt;
En este apartado resolveremos el problema de valor inicial planteado anteriormente con tres métodos de integración numérica: el método de Euler, el método del Trapecio y el método de Runge-Kutta de orden 4.&lt;br /&gt;
&lt;br /&gt;
=== Método de Euler ===&lt;br /&gt;
&lt;br /&gt;
El método de Euler, llamado así en honor al matemático Leonhard Euler, es un procedimiento de integración numérica. Su expresión matemática es: &lt;br /&gt;
&amp;lt;math&amp;gt;  PVI =   &lt;br /&gt;
\begin{cases}&lt;br /&gt;
 y_0 \\&lt;br /&gt;
 y_{n+1}  = y_n + h*f(t_n,y_n) \\&lt;br /&gt;
\end{cases}\quad&lt;br /&gt;
   &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
A continuación emplearemos esta expresión en un programa de Matlab para obtener una aproximación de las soluciones. El código de dicho programa es el siguiente.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Eulergrafica.png|400px|miniaturadeimagen|derecha|Representación gráfica y(t). Método de Euler]]&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
%Método de Euler&lt;br /&gt;
clc&lt;br /&gt;
&lt;br /&gt;
%Datos iniciales&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=4;&lt;br /&gt;
y0=0.01;&lt;br /&gt;
h=0.1;&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=10;&lt;br /&gt;
&lt;br /&gt;
%Cálculo de subintervalos&lt;br /&gt;
N=round((tN-t0)/h);&lt;br /&gt;
t=t0:h:tN;&lt;br /&gt;
&lt;br /&gt;
%Creamos el vector donde vamos a guardar las soluciones&lt;br /&gt;
y=zeros(1,N+1);&lt;br /&gt;
y(1)=y0;&lt;br /&gt;
&lt;br /&gt;
%Euler&lt;br /&gt;
for i=1:N;&lt;br /&gt;
    y(i+1)=y(i)+h*(1.01*y(i)-(y(i)).^2);&lt;br /&gt;
end&lt;br /&gt;
%Tabla de Resultados&lt;br /&gt;
[t',y']&lt;br /&gt;
x=1.01-y;&lt;br /&gt;
hold on &lt;br /&gt;
plot(t,y,'r')&lt;br /&gt;
plot(t,x,'b')&lt;br /&gt;
hold off&lt;br /&gt;
legend('Sustancia B: y(t)','Sustancia A: x(t)','Location','best');&lt;br /&gt;
xlabel('Tiempo (s)')&lt;br /&gt;
ylabel('Concentración (mol/l)')&lt;br /&gt;
grid on&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
=== Método del trapecio ===&lt;br /&gt;
&lt;br /&gt;
Vamos a aplicar un método de integración numérica conocido como el Método del Trapecio por aproximar el valor de la integral al del área de un trapecio. Su expresión matemática es:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;  PVI =   &lt;br /&gt;
\begin{cases}&lt;br /&gt;
 y_0 \\&lt;br /&gt;
 y_{n+1}  =  y_n + \frac{h}{2}*(f(t_n,y_n)+f(t_{n+1},y_{n+1}))\\&lt;br /&gt;
\end{cases}\quad&lt;br /&gt;
   &amp;lt;/math&amp;gt;&lt;br /&gt;
   &lt;br /&gt;
Introducimos esta expresión en el código y obtenemos la gráfica de la solución.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Trapeciografica.png|400px|miniaturadeimagen|derecha|Representación gráfica y(t). Método del Trapecio]]&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
%Método del Trapecio&lt;br /&gt;
clc&lt;br /&gt;
&lt;br /&gt;
%Datos iniciales&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=4;&lt;br /&gt;
y0=0.01;&lt;br /&gt;
h=0.1;&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=10;&lt;br /&gt;
&lt;br /&gt;
%Cálculo de subintervalos&lt;br /&gt;
N=round((tN-t0)/h);&lt;br /&gt;
t=t0:h:tN;&lt;br /&gt;
&lt;br /&gt;
%Creamos el vector donde vamos a guardar las soluciones&lt;br /&gt;
y=zeros(1,N+1);&lt;br /&gt;
y(1)=y0;&lt;br /&gt;
&lt;br /&gt;
for i=1:N&lt;br /&gt;
y(i+1)=(((1-(h/2)*1.01)-sqrt(((1-(h/2)*1.01)^2)+4*(h/2)*((1+(h/2)*1.01)*y(i)-(h/2)*(y(i))^2)))/-h);&lt;br /&gt;
end&lt;br /&gt;
%Sacamos la tabla de resultados&lt;br /&gt;
[t',y']&lt;br /&gt;
x=1.01-y;&lt;br /&gt;
%Gráfico&lt;br /&gt;
hold on&lt;br /&gt;
plot(t,y,'r')&lt;br /&gt;
plot(t,x,'b')&lt;br /&gt;
legend('Sustancia B: y(t)','Sustancia A: x(t)','Location','best');&lt;br /&gt;
xlabel('Tiempo (s)')&lt;br /&gt;
ylabel('Concentración (mol/l)')&lt;br /&gt;
grid on&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
=== Método de Runge-Kutta ===&lt;br /&gt;
&lt;br /&gt;
El método de resolución numérica de Runge-Kutta, involucra un gran número de parámetros. Para simplificar la implementación de este método en Matlab, utilizaremos la función ''inline'', con la que declararemos previamente la función algebraica necesaria para el cálculo de los parámetros &amp;lt;math&amp;gt;k_i&amp;lt;/math&amp;gt;, ahorrándonos tener que escribir innumerables veces la correspondiente expresión matemática.&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
A continuación, detallamos la función &amp;lt;math&amp;gt;f(y)&amp;lt;/math&amp;gt; de la que dependerán los valores de los parámetros &amp;lt;math&amp;gt;k_i&amp;lt;/math&amp;gt;:&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;f(y)=y'(t)=1.01y(t)-y(t)^2&lt;br /&gt;
&lt;br /&gt;
\quad \Rightarrow \quad&lt;br /&gt;
&lt;br /&gt;
\begin{cases}&lt;br /&gt;
 k_1 &amp;amp; =  f(y_i) \\&lt;br /&gt;
 k_2 &amp;amp; =  f(y_i + {1 \over 2}k_1h) \\&lt;br /&gt;
 k_3 &amp;amp; =  f(y_i + \frac{1}{2}k_2h) \\&lt;br /&gt;
 k_4 &amp;amp; =  f(y_i + k_3h) \\&lt;br /&gt;
\end{cases}\quad [h=0.1]&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Entonces el método RK4 para este problema está dado por la siguiente ecuación:&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;y_{i+1} = y_{i} + {1 \over 6}h(k_1+2k_2+2k_3+k_4)&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Mediante el siguiente programa en Matlab calculamos numéricamente la solución y la representamos en un gráfico:&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Archivo:RK4II.png|400px|miniaturadeimagen|derecha|Representación gráfica y(t). Método Runge-Kutta]]&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
%Método de Runge-Kutta&lt;br /&gt;
clc&lt;br /&gt;
&lt;br /&gt;
%Función f(t)=y'(t)&lt;br /&gt;
fy=inline('1.01*y-y^2','y');&lt;br /&gt;
&lt;br /&gt;
%Datos del problema&lt;br /&gt;
y0=0.01;&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=10;&lt;br /&gt;
h=0.1;&lt;br /&gt;
&lt;br /&gt;
%Variable independiente (t)&lt;br /&gt;
t=t0:h:tN;&lt;br /&gt;
&lt;br /&gt;
%Variable dependiente (y)&lt;br /&gt;
y=zeros(1,length(t));&lt;br /&gt;
y(1)=y0;&lt;br /&gt;
&lt;br /&gt;
for i=1:length(t)-1&lt;br /&gt;
    k1=fy(y(i));&lt;br /&gt;
    k2=fy(y(i)+k1/2*h);&lt;br /&gt;
    k3=fy(y(i)+k2/2*h);&lt;br /&gt;
    k4=fy(y(i)+k3*h);&lt;br /&gt;
    y(i+1)=y(i)+h/6*(k1+2*k2+2*k3+k4);&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
%Variable dependiente (x)&lt;br /&gt;
x=1.01-y;&lt;br /&gt;
&lt;br /&gt;
%Representación gráfica&lt;br /&gt;
hold on&lt;br /&gt;
plot(t,x,'b')&lt;br /&gt;
plot(t,y,'r')&lt;br /&gt;
legend('Sustancia A: x(t)','Sustancia B: y(t)')&lt;br /&gt;
xlabel('Tiempo (s)')&lt;br /&gt;
ylabel('Concentración (mol/l)')&lt;br /&gt;
grid on&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
=== Comparación de métodos===&lt;br /&gt;
&lt;br /&gt;
Podemos observar fácilmente que las gráficas obtenidas con los diferentes métodos son iguales a primera vista. Sin embargo, superponiéndolas queda patente que no son exactamente iguales debido a que los métodos no poseen la misma precisión y , al operar todos con la misma longitud de paso, unos aproximan la solución exacta mejor que otros. Así se observa en estas imágenes:&lt;br /&gt;
&lt;br /&gt;
[[Archivo:comparativa1.jpg|400px|miniaturadeimagen|izquierda|Comparación de métodos]]&lt;br /&gt;
[[Archivo:comparativa2.jpg|400px|miniaturadeimagen|derecha|Comparación de métodos]]&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
Como podemos comprobar en las imágenes, el método de Euler es menos preciso que el del trapecio o el de Runge-Kutta.&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Resolución en forma de sistema de ecuaciones ==&lt;br /&gt;
&lt;br /&gt;
A continuación vamos a plantear el problema de valor inicial con un sistema no lineal de dos ecuaciones equivalente al problema resuelto anteriormente.&lt;br /&gt;
&lt;br /&gt;
Estas ecuaciones serán:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;(PVI)&lt;br /&gt;
\begin{cases}&lt;br /&gt;
    y'(t)=k_1 x(t)y(t) \\&lt;br /&gt;
    x'(t)=-k_1 x(t)y(t) \\&lt;br /&gt;
    \\&lt;br /&gt;
    x(0)=1 \\&lt;br /&gt;
    y(0) = 0.01&lt;br /&gt;
\end{cases}&lt;br /&gt;
\quad t\in[0,10]&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Resolveremos el problema por el método de Euler y por el método de Runge-Kutta, plasmando las soluciones en gráficos.&lt;br /&gt;
&lt;br /&gt;
=== Método de Euler ===&lt;br /&gt;
&lt;br /&gt;
En este caso aplicaremos en el siguiente código la expresión para EDO a cada una de las ecuaciones que conforma el sistema, obteniendo la correspondiente gráfica.&lt;br /&gt;
 &lt;br /&gt;
[[Archivo:SistEuler.png|400px|miniaturadeimagen|derecha|Representación gráfica de las concentraciones de A y B. Resolución del sistema por Euler]]&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
&lt;br /&gt;
%Resolución del sistema por el método de Euler&lt;br /&gt;
&lt;br /&gt;
clear all&lt;br /&gt;
&lt;br /&gt;
%Definimos el vector de la variable independiente, el número de&lt;br /&gt;
%subintervalos y la longitud de paso&lt;br /&gt;
&lt;br /&gt;
t0 = 0;&lt;br /&gt;
tN = 10;&lt;br /&gt;
h = 0.1;&lt;br /&gt;
t = t0:h:tN&lt;br /&gt;
N = (tN-t0)/h;&lt;br /&gt;
&lt;br /&gt;
%Definimos los vectores de las variables dependientes&lt;br /&gt;
&lt;br /&gt;
x = zeros(1, N+1);&lt;br /&gt;
y = zeros(1, N+1);&lt;br /&gt;
&lt;br /&gt;
x(1) = 1;&lt;br /&gt;
y(1) = 0.01;&lt;br /&gt;
&lt;br /&gt;
for i = 1:N&lt;br /&gt;
    &lt;br /&gt;
    x(i+1)=x(i)+h*(-x(i).*y(i));&lt;br /&gt;
    y(i+1)=y(i)+h*(y(i).*x(i));&lt;br /&gt;
    &lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
%Representamos gráficamente las soluciones&lt;br /&gt;
&lt;br /&gt;
hold on&lt;br /&gt;
&lt;br /&gt;
plot(t,x,'b');&lt;br /&gt;
plot(t,y,'r');&lt;br /&gt;
grid on&lt;br /&gt;
&lt;br /&gt;
legend('Sustancia A: x(t)','Sustancia B: y(t)')&lt;br /&gt;
xlabel('Tiempo (s)')&lt;br /&gt;
ylabel('Concentración (mol/l)')&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
hold off&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
}}&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Método de Runge-Kutta===&lt;br /&gt;
&lt;br /&gt;
El método de resolución numérica de Runge-Kutta, involucra un gran número de parámetros. Para simplificar la implementación de este método en Matlab, el sistema se tratará como una matriz &amp;lt;math&amp;gt;z&amp;lt;/math&amp;gt;. Además, utilizaremos la función ''inline'', con la que declararemos previamente la función algebraica necesaria para el cálculo de los parámetros &amp;lt;math&amp;gt;k_i&amp;lt;/math&amp;gt;, ahorrándonos tener que escribir innumerables veces la correspondiente expresión matemática.&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Primero, expresamos el sistema en forma matricial:&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;(PVI)\begin{cases}&lt;br /&gt;
    x'(t)=-k_1 x(t)y(t) \\&lt;br /&gt;
    y'(t)=k_1 x(t)y(t) \\&lt;br /&gt;
    \\&lt;br /&gt;
    x(0)=1 \\&lt;br /&gt;
    y(0) = 0.01&lt;br /&gt;
\end{cases}\quad t\in[0,10]&lt;br /&gt;
&lt;br /&gt;
\quad \Rightarrow \quad k_1=1\quad \Rightarrow \quad&lt;br /&gt;
&lt;br /&gt;
(PVI)\begin{cases}\vec{z}'(t)=&lt;br /&gt;
   \begin{bmatrix}&lt;br /&gt;
      x'(t) \\&lt;br /&gt;
      y'(t) \\&lt;br /&gt;
   \end{bmatrix}&lt;br /&gt;
=&lt;br /&gt;
      \begin{bmatrix}&lt;br /&gt;
      -x(t)y(t) \\&lt;br /&gt;
      x(t)y(t) \\&lt;br /&gt;
   \end{bmatrix}&lt;br /&gt;
&lt;br /&gt;
 \\ \\ \vec{z}(0)=&lt;br /&gt;
   \begin{bmatrix}&lt;br /&gt;
      x(0) \\&lt;br /&gt;
      y(0) \\&lt;br /&gt;
   \end{bmatrix}&lt;br /&gt;
=&lt;br /&gt;
      \begin{bmatrix}&lt;br /&gt;
      1 \\&lt;br /&gt;
      0.01 \\&lt;br /&gt;
   \end{bmatrix}&lt;br /&gt;
\end{cases}\quad t\in[0,10]&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
A continuación, detallamos la función &amp;lt;math&amp;gt;\vec{F}&amp;lt;/math&amp;gt; de la que dependerán los valores de los parámetros &amp;lt;math&amp;gt;k_i&amp;lt;/math&amp;gt;:&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;\vec{F}(x,y)=\vec{F}(\vec{z})=&lt;br /&gt;
&lt;br /&gt;
\begin{bmatrix}&lt;br /&gt;
    f(\vec{z}) \\&lt;br /&gt;
    g(\vec{z}) \\&lt;br /&gt;
\end{bmatrix}=&lt;br /&gt;
&lt;br /&gt;
\begin{bmatrix}&lt;br /&gt;
    x'(t) \\&lt;br /&gt;
    y'(t) \\&lt;br /&gt;
\end{bmatrix}=&lt;br /&gt;
&lt;br /&gt;
\vec{z}'(t)=&lt;br /&gt;
&lt;br /&gt;
\begin{bmatrix}&lt;br /&gt;
    -x(t)y(t) \\&lt;br /&gt;
    x(t)y(t) \\&lt;br /&gt;
\end{bmatrix}&lt;br /&gt;
\quad \Rightarrow \quad&lt;br /&gt;
&lt;br /&gt;
\begin{cases}&lt;br /&gt;
 [\vec{k_1}] &amp;amp; =  F(\vec{z}_i) \\&lt;br /&gt;
 [\vec{k_2}] &amp;amp; =  F(\vec{z}_i + {1 \over 2}k_1h) \\&lt;br /&gt;
 [\vec{k_3}] &amp;amp; =  F(\vec{z}_i + \frac{1}{2}k_2h) \\&lt;br /&gt;
 [\vec{k_4}] &amp;amp; =  F(\vec{z}_i + k_3h) \\&lt;br /&gt;
\end{cases}\quad [h=0.1]&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Entonces el método RK4 para este problema está dado por la siguiente ecuación:&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;\vec{z}_{i+1} = \vec{z}_{i} + {1 \over 6}h(\vec{k_1}+2\vec{k_2}+2\vec{k_3}+\vec{k_4})&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Mediante el siguiente programa en Matlab calculamos numéricamente la solución y la representamos en un gráfico:&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Archivo:sistema_RK4.png|400px|miniaturadeimagen|derecha|Representación gráfica de las concentraciones de A y B. Resolución del sistema por Runge-Kutta]]&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
%Método de Runge-Kutta&lt;br /&gt;
clc&lt;br /&gt;
&lt;br /&gt;
%Función F=[x'(t); y'(t)]&lt;br /&gt;
F=inline('[-z(1)*z(2);z(1)*z(2)]','z');&lt;br /&gt;
&lt;br /&gt;
%Datos del problema &lt;br /&gt;
x0=1;&lt;br /&gt;
y0=0.01;&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=10;&lt;br /&gt;
h=0.1;&lt;br /&gt;
&lt;br /&gt;
%Vector de variable independiente (t)&lt;br /&gt;
t=t0:h:tN;&lt;br /&gt;
&lt;br /&gt;
%Matriz de variables dependientes z=[x;y]&lt;br /&gt;
z=zeros(2,length(t));&lt;br /&gt;
z(:,1)=[x0;y0];&lt;br /&gt;
&lt;br /&gt;
for i = 1:length(t)-1&lt;br /&gt;
    k1=F(z(:,i));&lt;br /&gt;
    k2=F(z(:,i)+k1.*h/2);&lt;br /&gt;
    k3=F(z(:,i)+k2.*h/2);&lt;br /&gt;
    k4=F(z(:,i)+k3.*h);&lt;br /&gt;
    z(:,i+1)=z(:,i)+h/6.*(k1+2.*k2+2.*k3+k4);&lt;br /&gt;
end&lt;br /&gt;
 &lt;br /&gt;
%Representación gráfica&lt;br /&gt;
hold on&lt;br /&gt;
plot(t,z(1,:))&lt;br /&gt;
plot(t,z(2,:),'r')&lt;br /&gt;
legend('Sustancia A: x(t)','Sustancia B: y(t)')&lt;br /&gt;
xlabel('Tiempo (s)')&lt;br /&gt;
ylabel('Concentración (mol/l)')&lt;br /&gt;
grid on&lt;br /&gt;
%hold off&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
== Interpretación de las gráficas ==&lt;br /&gt;
&lt;br /&gt;
Como cabía esperar, obtenemos la misma solución resolviendo el problema como sistema o como EDO. Podemos observar por los resultados obtenidos que la velocidad de aparición de B es igual a la velocidad de desaparición de A (como dicta el principio de conservación de la masa), que A acaba desapareciendo prácticamente por completo y que la concentración de B termina por estabilizarse alrededor de 1 mol/l. Ambos compuestos alcanzan sus los extremos de sus concentraciones en el mismo instante de tiempo&lt;br /&gt;
&lt;br /&gt;
También cabe destacar que cuando el tiempo transcurrido alcanza 4,5 segundos las concentraciones de ambos compuestos son las mismas.&lt;br /&gt;
&lt;br /&gt;
= Reacción II =&lt;br /&gt;
&lt;br /&gt;
En este apartado vamos a estudiar la reacción propuesta por Alfred J. Lotka en 1920, que es la siguiente:&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt; A + X →_{k1} 2X;&amp;lt;/math&amp;gt;     :&amp;lt;math&amp;gt; X + Y →_{k2} 2Y;&amp;lt;/math&amp;gt;     :&amp;lt;math&amp;gt;Y →_{k3} 2B  &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Como se puede observar, se trata de una reacción compleja integrada por 3 reacciones simples (las dos primeras autocatalíticas) en las que intervienen un total de 4 compuestos, A, B, X e Y. Siguiendo el desarrollo de la reacción, es lógico suponer que A se agotará al comienzo de la reacción, que los máximos de concentración de X e Y se darán en los estados intermedios y que al final el compuesto B será el único restante, siendo el producto final de la reacción.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Interpretación del problema y deducción de las ecuaciones diferenciales ==&lt;br /&gt;
&lt;br /&gt;
Para averiguar cómo evolucionan las concentraciones de los cuatro compuestos durante el desarrollo de la reacción necesitaremos obtener cuatro ecuaciones diferenciales. Para ello nos volveremos a basar en los principios físicos que ya empleamos en la anterior reacción. Definimos A(t), x(t), y(t), y B(t) (A, x, y, B; para ahorrar notación) a las concentraciones de A, X, Y, y B, respectivamente. &lt;br /&gt;
&lt;br /&gt;
En primer lugar aplicamos el Principio de Conservación de la masa, que establece que la suma de las concentraciones de los compuestos es constante (no desaparece masa en el proceso), lo que derivando nos indica que:&lt;br /&gt;
&lt;br /&gt;
: &amp;lt;math&amp;gt; A' + y' + y' + B' = 0 \quad\quad(I)&amp;lt;/math&amp;gt;       &lt;br /&gt;
&lt;br /&gt;
A continuación aplicaremos la Ley de Acción de Masas (velocidad de reacción proporcional al producto de la concentración de los reactivos).&lt;br /&gt;
&lt;br /&gt;
Aplicando esta ley a la última reacción simple obtenemos que: &lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;B'=k_3y \quad\quad(II)&amp;lt;/math&amp;gt;        &lt;br /&gt;
&lt;br /&gt;
En el caso de las concentraciones de X e Y las expresiones resultantes son algo más complicadas ya que estos dos compuestos actúan como reactivos y productos en más de una reacción simple, por lo que la variación de sus concentraciones será la suma de las variaciones de las reacciones en las que aparezcan:&lt;br /&gt;
&lt;br /&gt;
: &amp;lt;math&amp;gt; x' = x'_{1} + x'_{2} → x' = k_{1}Ax - k{2}xy \quad\quad(III)&amp;lt;/math&amp;gt;        &lt;br /&gt;
: &amp;lt;math&amp;gt; y' = y'_{2} + y'_{3} → y' = k_{2}xy − k_3{y} \quad\quad(IV)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Por último sustituimos (II), (III) y (IV) en (I) obteniendo: &lt;br /&gt;
&lt;br /&gt;
: &amp;lt;math&amp;gt; A' + k_{1}Ax - k{2}xy + k_{2}xy − k_3{y}+ k_3y= 0 : &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
De donde obtenemos que:&lt;br /&gt;
&lt;br /&gt;
: &amp;lt;math&amp;gt; A' = -k_{1}Ax &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Ahora que ya tenemos las variaciones de concentración de los compuestos en función de las concentraciones podemos aplicar métodos numéricos que nos lleven a una solución aproximada.&lt;br /&gt;
&lt;br /&gt;
== Resolución numérica del sistema de ecuaciones ==&lt;br /&gt;
&lt;br /&gt;
Una vez obtenidas las ecuaciones y conociendo las condiciones iniciales y los valores de las constantes podemos plantear el problema de valor inicial para luego resolverlo.&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;(PVI)&lt;br /&gt;
\begin{cases}&lt;br /&gt;
    A' = -k_{1}Ax\\&lt;br /&gt;
    x' = k_{1}Ax - k{2}xy\\&lt;br /&gt;
    y' = k_{2}xy − k_3{y}\\&lt;br /&gt;
    B'=k_3y \\&lt;br /&gt;
\\&lt;br /&gt;
    A(0)=5  \\&lt;br /&gt;
    x(0)=5*10^{-4} \\&lt;br /&gt;
    y(0)=10^{-5}\\&lt;br /&gt;
    B(0)=0 \\&lt;br /&gt;
\end{cases}&lt;br /&gt;
\quad t\in[0,200]&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Siendo &amp;lt;math&amp;gt; k_{1}=K_{2}=2k_{3}=0.1 &amp;lt;/math&amp;gt; y las unidades de la concentración mol/l.&lt;br /&gt;
&lt;br /&gt;
=== Método de Euler ===&lt;br /&gt;
&lt;br /&gt;
Aplicamos el método de Euler de forma análoga a como lo hicimos en [[Reacciones_con_autocatálisis._Grupo_D12#Método_de_Euler_2|apartado 2.5.1]]&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Euler lotka0.01.png|400px|miniaturadeimagen|derecha|Representación gráfica de las concentraciones de A, B, X, e Y a lo largo del tiempo. Resoluciónd delsistema por el método de Euler con longitud de paso h=0.01]] &lt;br /&gt;
[[Archivo:Euler lotka0.001.png|400px|miniaturadeimagen|derecha|Representación gráfica de las concentraciones de A, B, X, e Y a lo largo del tiempo. Resoluciónd delsistema por el método de Euler con longitud de paso h=0.001]]&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
&lt;br /&gt;
%Resolución del sistema de la reacción de Lotka por el método de Euler&lt;br /&gt;
&lt;br /&gt;
clear all&lt;br /&gt;
&lt;br /&gt;
%Definimos la variable independiente y establecemos los datos del problema&lt;br /&gt;
%de valor inicial. Para la longitud de paso h introducimos en primer lugar&lt;br /&gt;
%0.01 y luego 0.001&lt;br /&gt;
&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=200;&lt;br /&gt;
h= input('Introduzca una longitud de paso ');&lt;br /&gt;
t = t0:h:tN;&lt;br /&gt;
N=(tN-t0)/h;&lt;br /&gt;
k1 = 0.1;&lt;br /&gt;
k2 = 0.1;&lt;br /&gt;
k3 = 0.05;&lt;br /&gt;
A0 = 5;&lt;br /&gt;
B0 = 0;&lt;br /&gt;
X0 = 5*10^(-4);&lt;br /&gt;
Y0 = 10^(-5);&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
%Definimos las variables dependientes.&lt;br /&gt;
&lt;br /&gt;
A = zeros(1, N-1);&lt;br /&gt;
B = A;&lt;br /&gt;
X = A;&lt;br /&gt;
Y = A;&lt;br /&gt;
&lt;br /&gt;
A(1) = A0;&lt;br /&gt;
B(1) = B0;&lt;br /&gt;
X(1) = X0;&lt;br /&gt;
Y(1) = Y0;&lt;br /&gt;
&lt;br /&gt;
for i = 1:N&lt;br /&gt;
    &lt;br /&gt;
    X(i+1) = X(i) + h*(k1*A(i)*X(i)-k2*Y(i)*X(i));&lt;br /&gt;
    Y(i+1)=Y(i)+h.*(k2.*X(i).*Y(i)-k3.*Y(i));&lt;br /&gt;
    B(i+1) = B(i) + h*(k3*Y(i));&lt;br /&gt;
    A(i+1) = A(i) + h*(-k1*A(i)*X(i));&lt;br /&gt;
   &lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
%Representamos gráficamente la solución&lt;br /&gt;
&lt;br /&gt;
hold on&lt;br /&gt;
&lt;br /&gt;
plot (t,A,'b')&lt;br /&gt;
plot(t, X, 'r')&lt;br /&gt;
plot(t,Y, 'g')&lt;br /&gt;
plot(t, B, 'm')&lt;br /&gt;
legend('Sustancia A: A(t)','Sustancia X: x(t)','Sustancia Y: y(t)','Sustancia B: B(t)','Location','Best')&lt;br /&gt;
xlabel('Tiempo (s)')&lt;br /&gt;
ylabel('Concentración (mol/l)')&lt;br /&gt;
grid on&lt;br /&gt;
&lt;br /&gt;
hold off&lt;br /&gt;
&lt;br /&gt;
}}&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
A continuación tendremos que comprobar si el método es estable. &amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
Un método es estable cuando el error local es pequeño y además este error no se amplifica a lo largo del tiempo. Para calificar la estabilidad del método de Euler resolveremos el sistema anterior con este método, con pasos &amp;quot;h=0.01&amp;quot; y &amp;quot;h=0.001&amp;quot;, y lo compararemos con la resolución del sistema con el método de Heun, que se asemeja más a la solución exacta.&amp;lt;br /&amp;gt;&lt;br /&gt;
En la comparación representaremos en azul el método de Heun y en rojo el método de Euler.&amp;lt;br /&amp;gt;&lt;br /&gt;
Para &amp;quot;h=0.01&amp;quot; tenemos lo siguiente:&lt;br /&gt;
[[Archivo:1estabilidad123.jpg|400px|miniaturadeimagen|izquierda|Comparación entre Método de Heun (Azul) con el Método de Euler con paso h=0.01 (Rojo)]] &lt;br /&gt;
[[Archivo:1estabilidad321.jpg|400px|miniaturadeimagen|derecha|Comparación entre Método de Heun (Azul) con el Método de Euler con paso h=0.01 (Rojo)]] &lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
Para &amp;quot;h=0.001&amp;quot; tenemos lo siguiente:&lt;br /&gt;
[[Archivo:2estabilidad123.jpg|400px|miniaturadeimagen|izquierda|Comparación entre Método de Heun (Azul) con el Método de Euler con paso h=0.001 (Rojo)]] &lt;br /&gt;
[[Archivo:2estabilidad321.jpg|400px|miniaturadeimagen|derecha|Comparación entre Método de Heun (Azul) con el Método de Euler con paso h=0.001 (Rojo)]]&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
Como podemos ver en las imágenes de los dos procesos las gráficas se superponen y no se aprecian diferencias hasta que no ampliamos la imagen. Y esto sucede en todo momento con lo que podemos garantizar que en este caso el método de Euler es estable para los pasos que hemos usado.&lt;br /&gt;
&lt;br /&gt;
=== Método de Heun ===&lt;br /&gt;
&lt;br /&gt;
Si bien el método de resolución numérica de Heun no involucra un número de parámetros tan notable como el método de Runge-Kutta, en este caso tenemos un sistema de 4 ecuaciones diferenciales, por lo que, en aras de simplificar, utilizaremos el mismo criterio que en el [[Reacciones_con_autocatálisis._Grupo_D12#Método_de_Runge-Kutta_2|apartado 2.5.2]].: El sistema se tratará como una matriz &amp;lt;math&amp;gt;z&amp;lt;/math&amp;gt;, y para la obtención de los parámetros &amp;lt;math&amp;gt;k_i&amp;lt;/math&amp;gt; utilizaremos la función ''inline'', con la que declararemos previamente las expresiones necesarias para el cálculo de los parámetros &amp;lt;math&amp;gt;k_i&amp;lt;/math&amp;gt;.&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Primero, expresamos el sistema en forma matricial:&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;(PVI)\begin{cases}&lt;br /&gt;
A'(t)=-k_1 A(t)x(t) \\&lt;br /&gt;
x'(t)=k_1 A(t)x(t)-k_2 x(t)y(t) \\&lt;br /&gt;
y'(t)=k_2 x(t)y(t)-k_3 y(t) \\&lt;br /&gt;
B'(t)=k_3 x(t)y(t) \\ \\&lt;br /&gt;
A(0)=5 \\&lt;br /&gt;
x(0)=5·10^{-4} \\&lt;br /&gt;
y(0)=10^{-5} \\&lt;br /&gt;
B(0) = 0&lt;br /&gt;
\end{cases}\quad t\in[0,200]&lt;br /&gt;
&lt;br /&gt;
\quad \Rightarrow \quad&lt;br /&gt;
&lt;br /&gt;
\begin{cases}&lt;br /&gt;
k_1=0.1 \\&lt;br /&gt;
k_2=0.1 \\&lt;br /&gt;
k_3=0.05 \\&lt;br /&gt;
&lt;br /&gt;
\end{cases}&lt;br /&gt;
&lt;br /&gt;
\quad \Rightarrow \quad&lt;br /&gt;
&lt;br /&gt;
(PVI)\begin{cases}\vec{z}'(t)=&lt;br /&gt;
   \begin{bmatrix}&lt;br /&gt;
      A'(t) \\&lt;br /&gt;
      x'(t) \\&lt;br /&gt;
      y'(t) \\&lt;br /&gt;
      B'(t) \\&lt;br /&gt;
   \end{bmatrix}&lt;br /&gt;
=&lt;br /&gt;
      \begin{bmatrix}&lt;br /&gt;
      -0.1 A(t)x(t) \\&lt;br /&gt;
      0.1 A(t)x(t)-0.1 x(t)y(t) \\&lt;br /&gt;
      0.1 x(t)y(t)-0.05 y(t) \\&lt;br /&gt;
      0.05 y(t)x(t)\\&lt;br /&gt;
   \end{bmatrix}&lt;br /&gt;
&lt;br /&gt;
 \\ \\ \vec{z}(0)=&lt;br /&gt;
   \begin{bmatrix}&lt;br /&gt;
      A(0) \\&lt;br /&gt;
      x(0) \\&lt;br /&gt;
      y(0) \\&lt;br /&gt;
      B(0) \\&lt;br /&gt;
   \end{bmatrix}&lt;br /&gt;
=&lt;br /&gt;
      \begin{bmatrix}&lt;br /&gt;
      5 \\&lt;br /&gt;
      5·10^{-4} \\&lt;br /&gt;
      10^{-5} \\&lt;br /&gt;
      0&lt;br /&gt;
   \end{bmatrix}&lt;br /&gt;
\end{cases}\quad t\in[0,200]&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
A continuación, detallamos la función &amp;lt;math&amp;gt;\vec{F}&amp;lt;/math&amp;gt; de la que dependerán los valores de los parámetros &amp;lt;math&amp;gt;k_i&amp;lt;/math&amp;gt;:&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;\vec{F}(A,x,y,B)=\vec{F}(\vec{z})=&lt;br /&gt;
\begin{bmatrix}&lt;br /&gt;
    f(\vec{z}) \\ &lt;br /&gt;
    g(\vec{z}) \\ &lt;br /&gt;
    h(\vec{z}) \\ &lt;br /&gt;
    i(\vec{z}) \\ &lt;br /&gt;
\end{bmatrix}=&lt;br /&gt;
\begin{bmatrix}&lt;br /&gt;
    A'(t) \\&lt;br /&gt;
    x'(t) \\&lt;br /&gt;
    y'(t) \\&lt;br /&gt;
    B'(t) \\&lt;br /&gt;
\end{bmatrix}=&lt;br /&gt;
\vec{z}'(t)=&lt;br /&gt;
      \begin{bmatrix}&lt;br /&gt;
      -0.1 A(t)x(t) \\&lt;br /&gt;
      0.1 A(t)x(t)-0.1 x(t)y(t) \\&lt;br /&gt;
      0.1 x(t)y(t)-0.05 y(t) \\&lt;br /&gt;
      0.05 y(t)x(t)\\&lt;br /&gt;
   \end{bmatrix}&lt;br /&gt;
&lt;br /&gt;
\quad \Rightarrow \quad &lt;br /&gt;
&lt;br /&gt;
\begin{cases}&lt;br /&gt;
 [\vec{k_1}] &amp;amp; =  F(\vec{z}_i) \\&lt;br /&gt;
 [\vec{k_2}] &amp;amp; =  F(\vec{z}_i + {1 \over 2}k_1h) \\&lt;br /&gt;
\end{cases}\quad [h=0.01]&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Entonces el método de Heun para este problema está dado por la siguiente ecuación:&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;\vec{z}_{i+1} = \vec{z}_{i} + {1 \over 2}h(\vec{k_1}+\vec{k_2})&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Mediante el siguiente programa en Matlab calculamos numéricamente la solución y la representamos en un gráfico:&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Archivo:AXYBRK4.png|400px|miniaturadeimagen|derecha|Representación gráfica de las concentraciones de A,X,Y y B. Resolución del sistema por Heun]]&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
%Método de Heun&lt;br /&gt;
clc&lt;br /&gt;
&lt;br /&gt;
%Función F=[A'(t);x'(t); y'(t);B'(t)]&lt;br /&gt;
F=inline('0.1.*[-z(1)*z(2);z(1)*z(2)-z(2)*z(3);z(2)*z(3)-z(3)/2;z(3)/2]','z');&lt;br /&gt;
&lt;br /&gt;
%Datos del problema&lt;br /&gt;
A0=5;&lt;br /&gt;
x0=5*10^-4;&lt;br /&gt;
y0=10^(-5);&lt;br /&gt;
B0=0;&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=200;&lt;br /&gt;
h=0.1;&lt;br /&gt;
&lt;br /&gt;
%Vector de variable independiente (t)&lt;br /&gt;
t=t0:h:tN;&lt;br /&gt;
&lt;br /&gt;
%Matriz de variables dependientes z=[A;x;y;B]&lt;br /&gt;
z=zeros(4,length(t));&lt;br /&gt;
z(:,1)=[A0;x0;y0;B0];&lt;br /&gt;
&lt;br /&gt;
for i = 1:length(t)-1&lt;br /&gt;
    k1=F(z(:,i));&lt;br /&gt;
    k2=F(z(:,i)+k1.*h/2);&lt;br /&gt;
    z(:,i+1)=z(:,i)+h/2.*(k1+k2);&lt;br /&gt;
end&lt;br /&gt;
 &lt;br /&gt;
%Representación gráfica&lt;br /&gt;
hold on&lt;br /&gt;
plot(t,z(1,:),'b')&lt;br /&gt;
plot(t,z(2,:),'r')&lt;br /&gt;
plot(t,z(3,:),'g')&lt;br /&gt;
plot(t,z(4,:),'m')&lt;br /&gt;
legend('Sustancia A: A(t)','Sustancia X: x(t)','Sustancia Y: y(t)','Sustancia B: B(t)','Location','Best')&lt;br /&gt;
xlabel('Tiempo (s)')&lt;br /&gt;
ylabel('Concentración (mol/l)')&lt;br /&gt;
grid on&lt;br /&gt;
hold off&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
== Interpretación de las gráficas == &lt;br /&gt;
 &lt;br /&gt;
El proceso comienza con el predominio absoluto del compuesto A en la concentración total, siendo la presencia de los otros tres compuestos despreciable. Durante los primeros segundos la situación apenas cambia, pero tras los diez primeros segundos la concentración de A cae bruscamente mientras que la concentración de X aumenta a la misma velocidad; antes de llegar a los veinte segundos transcurridos las concentraciones de ambos compuestos se igualan y otros quince segundos más tarde el compuesto A  prácticamente ha desaparecido y el X ha alcanzado su concentración máxima (5 mol/litro).&lt;br /&gt;
&lt;br /&gt;
Es entonces cuando concluye la primera reacción y comienzan las otras dos, al no haber más compuesto A que cree compuesto X. La velocidad de aparición de Y es inicialmente mayor que la de B, superando al poco tiempo en concentración a la sustancia X. Sin embargo, llega un momento en el que la concentración de X es tan baja que se ralentiza la creación de Y y pronto empieza a disminuir su concentración tras alcanzar un máximo en torno a los 56 segundos, perdiendo peso la segunda reacción en beneficio de la tercera.&lt;br /&gt;
&lt;br /&gt;
Tras los 60 segundos de reacción el compuesto X pasa a tener una concentración despreciable, por lo que la única reacción simple que se sigue desarrollando es la tercera, destruyéndose reactivo Y y creándose producto B. La concentración de Y va reduciéndose paulatinamente hasta que en torno a los 160 segundos de reacción alcanza niveles insignificantes mientras que la concentración de B alcanza su máximo de 5 mol/litro.&lt;br /&gt;
&lt;br /&gt;
Es interesante observar que en todo momento se cumple el Principio de Conservación de la masa: la suma en cualquier momento de las concentraciones de las sustancias es 5 mol /litro. Esto es fácilmente comprobable en los momentos en que las concentraciones de A, X y B alcanzan su máximo de 5 mol/litro y el resto de concentraciones son nulas o despreciables. &lt;br /&gt;
[[Categoría:Ecuaciones Diferenciales]]&lt;br /&gt;
[[Categoría:ED14/15]]&lt;br /&gt;
[[Categoría:Trabajos 2014-15]]&lt;/div&gt;</summary>
		<author><name>Javier Ruiz de Galarreta López</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Reacciones_con_autocat%C3%A1lisis._Grupo_D12&amp;diff=29216</id>
		<title>Reacciones con autocatálisis. Grupo D12</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Reacciones_con_autocat%C3%A1lisis._Grupo_D12&amp;diff=29216"/>
				<updated>2015-03-12T08:18:32Z</updated>
		
		<summary type="html">&lt;p&gt;Javier Ruiz de Galarreta López: /* Método del trapecio */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{ TrabajoED | Reacciones con autocatálisis. Grupo D12 | [[:Categoría:Ecuaciones Diferenciales|Ecuaciones Diferenciales]]|[[:Categoría:ED14/15|Curso 2014-15]] | Javier Ruiz de Galarreta López, Argimiro Martínez López, Eduardo Moyano García, Alberto Rodríguez Ruiz. }}&lt;br /&gt;
&lt;br /&gt;
= Introducción: objetivos y metodología =&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
El objetivo de este trabajo es estudiar las concentraciones de los reactivos y productos de una reacción química a lo largo de la evolución en el tiempo de dicha reacción. Para ello modelizaremos el proceso empleando ecuaciones diferenciales y teniendo en cuenta la Ley de Acción de Masas y el Principio de Conservación de la materia.&lt;br /&gt;
&lt;br /&gt;
Al ser las ecuaciones y sistemas que se nos presentan de difícil resolución analítica, utilizaremos el programa informático Matlab para resolverlos mediante métodos numéricos como el de Euler, el del Trapecio, el de Runge-Kutta y el de Heun. &lt;br /&gt;
&lt;br /&gt;
Plasmaremos las soluciones en gráficos que nos permitirán dar una interpretación físico química a los resultados.&lt;br /&gt;
&lt;br /&gt;
= Reacción I =&lt;br /&gt;
&lt;br /&gt;
En primer lugar consideramos una reacción química irreversible en una solución bien mezclada, que se desarrolla para un volumen y una temperatura constantes, y en la que uno de los componentes (B, en este caso), hace de efecto catalítico.&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt; A + B →_{k1} 2B  &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Para desarrollar nuestro análisis nos apoyaremos en dos leyes físico químicas:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''Ley de acción de masas''': Enunciada por Guldberg y Waage en 1864, establece, entre otras cosas, que  la velocidad de&lt;br /&gt;
reacción es proporcional al producto de las concentraciones de los reactivos.&lt;br /&gt;
&lt;br /&gt;
'''Principio de conservación de la masa''': Establece que en una reacción química ordinaria la masa permanece constante, siendo la masa consumida de los reactivos igual a la masa obtenida de los productos. Fue elaborada independientemente por Míjail Lomonósov en 1745 y Antoine Lavoisier en 1785.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Interpretación del problema y deducción de las ecuaciones diferenciales ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Para hallar las ecuaciones diferenciales que nos describan cómo se desarrolla la reacción en el tiempo nos basaremos en las dos leyes enunciadas anteriormente. En primer lugar, definimos nuestra variable independiente como el tiempo &amp;lt;math&amp;gt;t&amp;lt;/math&amp;gt; en segundos. Las dos variables dependientes serán las concentraciones de los compuestos A y B, que denominaremos &amp;lt;math&amp;gt;x(t)&amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt;y(t)&amp;lt;/math&amp;gt;, ambas expresadas en mol/l. &lt;br /&gt;
&lt;br /&gt;
El principio de conservación de la masa expone que la suma de las concentraciones de los reactivos y los productos es constante. Esto equivale, derivando la expresión &amp;lt;math&amp;gt;x(t)+y(t)=cte&amp;lt;/math&amp;gt;, a que  desaparece tanto reactivo como producto aparece, o lo que es lo mismo, que la velocidad de aparición del producto es igual a la velocidad de desaparición (velocidad de aparición negativa) del reactivo:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;x'(t)=-y'(t)&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
La otra ecuación que necesitamos la obtenemos directamente de aplicar la Ley de acción de masas, que establece que la velocidad de la reacción (la velocidad a la que aparece el producto o desaparece el reactivo) es igual al producto de las concentraciones por una constante.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;y'(t)=k_1x(t)y(t)&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Obtención del problema de valor inicial ==&lt;br /&gt;
Una vez demostrado el origen de las ecuaciones (1) y (2) en el apartado anterior, obtendremos el problema de valor inicial (PVI) mediante las operaciones detalladas a continuación:&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;x'(t)+y'(t)=0\quad\quad(1)&amp;lt;/math&amp;gt;&lt;br /&gt;
:&amp;lt;math&amp;gt;y'(t)=k_1x(t)y(t)\quad\quad(2)&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Integrando (1) obtenemos (3):&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
:&amp;lt;math&amp;gt;\int_\mathbb{D} (\frac{dx(t)}{dt} + \frac{dy(t)}{dt})\,dt =\int_\mathbb{D} 0\,dt \quad \Rightarrow \quad x(t)+y(t)=k_2\quad \Rightarrow \quad x(t)=k_2-y(t)\quad\quad(3)&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Sustituyendo (3) en (2), obtenemos (4):&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;y'(t)=k_1x(t)y(t)\quad \Rightarrow \quad y'(t)=k_1(k_2-y(t))y(t)\quad \Rightarrow \quad y'(t)=k_1k_2y(t)-k_1y^2(t)\quad\quad(4)&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Conocemos las concentraciones iniciales de A y de B, por lo que podemos obtener el valor de la constante k&amp;lt;sub&amp;gt;2&amp;lt;/sub&amp;gt;:&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;[A]:\quad x(0)=1 mol/l;\quad\quad [B]:\quad y(0)=0,01 mol/l&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;x(t)+y(t)=k_2\quad \Rightarrow \quad x(0)+y(0)=k_2\quad \Rightarrow \quad 1+0,01=k_2\quad \Rightarrow \quad k_2=1,01&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Por último, conocemos también el valor de k&amp;lt;sub&amp;gt;1&amp;lt;/sub&amp;gt;, por lo que podremos plantear a continuación el correspondiente PVI:&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;k_1=1&amp;lt;/math&amp;gt;&lt;br /&gt;
:&amp;lt;math&amp;gt;(PVI)\begin{cases}y'(t)=1,01y(t)-y^2(t) \\ \\&lt;br /&gt;
y(0) = 0,01 \end{cases}\quad (t,y)\in[0,10]\times\mathbb{R}&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Unicidad de la solución ==&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Existencia-y-unicidad.png|200px|miniaturadeimagen|derecha|Intersección B con dominio]]&lt;br /&gt;
&lt;br /&gt;
Aplicamos a continuación el Teorema de Existencia y Unicidad:&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Sea &amp;lt;math&amp;gt;f(t,y)=y'(t) \Rightarrow f(t,y)=1.01y(t)-y^2(t)\quad&amp;lt;/math&amp;gt;, y &amp;lt;math&amp;gt;\quad\frac{\partial }{\partial y} f(t,y) = 1.01-2y(t)&amp;lt;/math&amp;gt;.&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
Y sea &amp;lt;math&amp;gt;B[(t_0,y_0),r],\quad r&amp;gt;0,\quad en (t_0,y_0)=(0,0.01)&amp;lt;/math&amp;gt;.&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;f(t,y)&amp;lt;/math&amp;gt; es continua en &amp;lt;math&amp;gt; \mathbb{B}\cap \mathbb{D}\quad \Rightarrow \quad \exists  y(t)\quad /\quad y'(t)=1,01y(t)-y^2(t)&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;math&amp;gt;\frac{\partial }{\partial y} f(t,y)&amp;lt;/math&amp;gt; es continua en &amp;lt;math&amp;gt; \mathbb{B}\cap \mathbb{D}\quad \Rightarrow \quad \exists !  y(t)\quad /\quad y'(t)=1,01y(t)-y^2(t)&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Con lo que queda demostrado que el (PVI) tiene solución y además esta es única.&lt;br /&gt;
&lt;br /&gt;
== Resolución numérica del problema de valor inicial ==&lt;br /&gt;
&lt;br /&gt;
En este apartado resolveremos el problema de valor inicial planteado anteriormente con tres métodos de integración numérica: el método de Euler, el método del Trapecio y el método de Runge-Kutta de orden 4.&lt;br /&gt;
&lt;br /&gt;
=== Método de Euler ===&lt;br /&gt;
&lt;br /&gt;
El método de Euler, llamado así en honor al matemático Leonhard Euler, es un procedimiento de integración numérica. Su expresión matemática es: &lt;br /&gt;
&amp;lt;math&amp;gt;  PVI =   &lt;br /&gt;
\begin{cases}&lt;br /&gt;
 y_0 \\&lt;br /&gt;
 y_{n+1}  = y_n + h*f(t_n,y_n) \\&lt;br /&gt;
\end{cases}\quad&lt;br /&gt;
   &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
A continuación emplearemos esta expresión en un programa de Matlab para obtener una aproximación de las soluciones. El código de dicho programa es el siguiente.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Eulergrafica.png|400px|miniaturadeimagen|derecha|Representación gráfica y(t). Método de Euler]]&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
%Método de Euler&lt;br /&gt;
clc&lt;br /&gt;
&lt;br /&gt;
%Datos iniciales&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=4;&lt;br /&gt;
y0=0.01;&lt;br /&gt;
h=0.1;&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=10;&lt;br /&gt;
&lt;br /&gt;
%Cálculo de subintervalos&lt;br /&gt;
N=round((tN-t0)/h);&lt;br /&gt;
t=t0:h:tN;&lt;br /&gt;
&lt;br /&gt;
%Creamos el vector donde vamos a guardar las soluciones&lt;br /&gt;
y=zeros(1,N+1);&lt;br /&gt;
y(1)=y0;&lt;br /&gt;
&lt;br /&gt;
%Euler&lt;br /&gt;
for i=1:N;&lt;br /&gt;
    y(i+1)=y(i)+h*(1.01*y(i)-(y(i)).^2);&lt;br /&gt;
end&lt;br /&gt;
%Tabla de Resultados&lt;br /&gt;
[t',y']&lt;br /&gt;
x=1.01-y;&lt;br /&gt;
hold on &lt;br /&gt;
plot(t,y,'r')&lt;br /&gt;
plot(t,x,'b')&lt;br /&gt;
hold off&lt;br /&gt;
legend('Sustancia B: y(t)','Sustancia A: x(t)','Location','best');&lt;br /&gt;
xlabel('Tiempo (s)')&lt;br /&gt;
ylabel('Concentración (mol/l)')&lt;br /&gt;
grid on&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
=== Método del trapecio ===&lt;br /&gt;
&lt;br /&gt;
Vamos a aplicar un método de integración numérica conocido como el Método del Trapecio por aproximar el valor de la integral al del área de un trapecio. Su expresión matemática es:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;  PVI =   &lt;br /&gt;
\begin{cases}&lt;br /&gt;
 y_0 \\&lt;br /&gt;
 y_{n+1}  =  y_n + \frac{h}{2}*(f(t_n,y_n)+f(t_{n+1},y_{n+1})\\&lt;br /&gt;
\end{cases}\quad&lt;br /&gt;
   &amp;lt;/math&amp;gt;&lt;br /&gt;
   &lt;br /&gt;
Introducimos esta expresión en el código y obtenemos la gráfica de la solución.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Trapeciografica.png|400px|miniaturadeimagen|derecha|Representación gráfica y(t). Método del Trapecio]]&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
%Método del Trapecio&lt;br /&gt;
clc&lt;br /&gt;
&lt;br /&gt;
%Datos iniciales&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=4;&lt;br /&gt;
y0=0.01;&lt;br /&gt;
h=0.1;&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=10;&lt;br /&gt;
&lt;br /&gt;
%Cálculo de subintervalos&lt;br /&gt;
N=round((tN-t0)/h);&lt;br /&gt;
t=t0:h:tN;&lt;br /&gt;
&lt;br /&gt;
%Creamos el vector donde vamos a guardar las soluciones&lt;br /&gt;
y=zeros(1,N+1);&lt;br /&gt;
y(1)=y0;&lt;br /&gt;
&lt;br /&gt;
for i=1:N&lt;br /&gt;
y(i+1)=(((1-(h/2)*1.01)-sqrt(((1-(h/2)*1.01)^2)+4*(h/2)*((1+(h/2)*1.01)*y(i)-(h/2)*(y(i))^2)))/-h);&lt;br /&gt;
end&lt;br /&gt;
%Sacamos la tabla de resultados&lt;br /&gt;
[t',y']&lt;br /&gt;
x=1.01-y;&lt;br /&gt;
%Gráfico&lt;br /&gt;
hold on&lt;br /&gt;
plot(t,y,'r')&lt;br /&gt;
plot(t,x,'b')&lt;br /&gt;
legend('Sustancia B: y(t)','Sustancia A: x(t)','Location','best');&lt;br /&gt;
xlabel('Tiempo (s)')&lt;br /&gt;
ylabel('Concentración (mol/l)')&lt;br /&gt;
grid on&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
=== Método de Runge-Kutta ===&lt;br /&gt;
&lt;br /&gt;
El método de resolución numérica de Runge-Kutta, involucra un gran número de parámetros. Para simplificar la implementación de este método en Matlab, utilizaremos la función ''inline'', con la que declararemos previamente la función algebraica necesaria para el cálculo de los parámetros &amp;lt;math&amp;gt;k_i&amp;lt;/math&amp;gt;, ahorrándonos tener que escribir innumerables veces la correspondiente expresión matemática.&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
A continuación, detallamos la función &amp;lt;math&amp;gt;f(y)&amp;lt;/math&amp;gt; de la que dependerán los valores de los parámetros &amp;lt;math&amp;gt;k_i&amp;lt;/math&amp;gt;:&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;f(y)=y'(t)=1.01y(t)-y(t)^2&lt;br /&gt;
&lt;br /&gt;
\quad \Rightarrow \quad&lt;br /&gt;
&lt;br /&gt;
\begin{cases}&lt;br /&gt;
 k_1 &amp;amp; =  f(y_i) \\&lt;br /&gt;
 k_2 &amp;amp; =  f(y_i + {1 \over 2}k_1h) \\&lt;br /&gt;
 k_3 &amp;amp; =  f(y_i + \frac{1}{2}k_2h) \\&lt;br /&gt;
 k_4 &amp;amp; =  f(y_i + k_3h) \\&lt;br /&gt;
\end{cases}\quad [h=0.1]&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Entonces el método RK4 para este problema está dado por la siguiente ecuación:&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;y_{i+1} = y_{i} + {1 \over 6}h(k_1+2k_2+2k_3+k_4)&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Mediante el siguiente programa en Matlab calculamos numéricamente la solución y la representamos en un gráfico:&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Archivo:RK4II.png|400px|miniaturadeimagen|derecha|Representación gráfica y(t). Método Runge-Kutta]]&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
%Método de Runge-Kutta&lt;br /&gt;
clc&lt;br /&gt;
&lt;br /&gt;
%Función f(t)=y'(t)&lt;br /&gt;
fy=inline('1.01*y-y^2','y');&lt;br /&gt;
&lt;br /&gt;
%Datos del problema&lt;br /&gt;
y0=0.01;&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=10;&lt;br /&gt;
h=0.1;&lt;br /&gt;
&lt;br /&gt;
%Variable independiente (t)&lt;br /&gt;
t=t0:h:tN;&lt;br /&gt;
&lt;br /&gt;
%Variable dependiente (y)&lt;br /&gt;
y=zeros(1,length(t));&lt;br /&gt;
y(1)=y0;&lt;br /&gt;
&lt;br /&gt;
for i=1:length(t)-1&lt;br /&gt;
    k1=fy(y(i));&lt;br /&gt;
    k2=fy(y(i)+k1/2*h);&lt;br /&gt;
    k3=fy(y(i)+k2/2*h);&lt;br /&gt;
    k4=fy(y(i)+k3*h);&lt;br /&gt;
    y(i+1)=y(i)+h/6*(k1+2*k2+2*k3+k4);&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
%Variable dependiente (x)&lt;br /&gt;
x=1.01-y;&lt;br /&gt;
&lt;br /&gt;
%Representación gráfica&lt;br /&gt;
hold on&lt;br /&gt;
plot(t,x,'b')&lt;br /&gt;
plot(t,y,'r')&lt;br /&gt;
legend('Sustancia A: x(t)','Sustancia B: y(t)')&lt;br /&gt;
xlabel('Tiempo (s)')&lt;br /&gt;
ylabel('Concentración (mol/l)')&lt;br /&gt;
grid on&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
=== Comparación de métodos===&lt;br /&gt;
&lt;br /&gt;
Podemos observar fácilmente que las gráficas obtenidas con los diferentes métodos son iguales a primera vista. Sin embargo, superponiéndolas queda patente que no son exactamente iguales debido a que los métodos no poseen la misma precisión y , al operar todos con la misma longitud de paso, unos aproximan la solución exacta mejor que otros. Así se observa en estas imágenes:&lt;br /&gt;
&lt;br /&gt;
[[Archivo:comparativa1.jpg|400px|miniaturadeimagen|izquierda|Comparación de métodos]]&lt;br /&gt;
[[Archivo:comparativa2.jpg|400px|miniaturadeimagen|derecha|Comparación de métodos]]&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
Como podemos comprobar en las imágenes, el método de Euler es menos preciso que el del trapecio o el de Runge-Kutta.&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Resolución en forma de sistema de ecuaciones ==&lt;br /&gt;
&lt;br /&gt;
A continuación vamos a plantear el problema de valor inicial con un sistema no lineal de dos ecuaciones equivalente al problema resuelto anteriormente.&lt;br /&gt;
&lt;br /&gt;
Estas ecuaciones serán:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;(PVI)&lt;br /&gt;
\begin{cases}&lt;br /&gt;
    y'(t)=k_1 x(t)y(t) \\&lt;br /&gt;
    x'(t)=-k_1 x(t)y(t) \\&lt;br /&gt;
    \\&lt;br /&gt;
    x(0)=1 \\&lt;br /&gt;
    y(0) = 0.01&lt;br /&gt;
\end{cases}&lt;br /&gt;
\quad t\in[0,10]&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Resolveremos el problema por el método de Euler y por el método de Runge-Kutta, plasmando las soluciones en gráficos.&lt;br /&gt;
&lt;br /&gt;
=== Método de Euler ===&lt;br /&gt;
&lt;br /&gt;
En este caso aplicaremos en el siguiente código la expresión para EDO a cada una de las ecuaciones que conforma el sistema, obteniendo la correspondiente gráfica.&lt;br /&gt;
 &lt;br /&gt;
[[Archivo:SistEuler.png|400px|miniaturadeimagen|derecha|Representación gráfica de las concentraciones de A y B. Resolución del sistema por Euler]]&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
&lt;br /&gt;
%Resolución del sistema por el método de Euler&lt;br /&gt;
&lt;br /&gt;
clear all&lt;br /&gt;
&lt;br /&gt;
%Definimos el vector de la variable independiente, el número de&lt;br /&gt;
%subintervalos y la longitud de paso&lt;br /&gt;
&lt;br /&gt;
t0 = 0;&lt;br /&gt;
tN = 10;&lt;br /&gt;
h = 0.1;&lt;br /&gt;
t = t0:h:tN&lt;br /&gt;
N = (tN-t0)/h;&lt;br /&gt;
&lt;br /&gt;
%Definimos los vectores de las variables dependientes&lt;br /&gt;
&lt;br /&gt;
x = zeros(1, N+1);&lt;br /&gt;
y = zeros(1, N+1);&lt;br /&gt;
&lt;br /&gt;
x(1) = 1;&lt;br /&gt;
y(1) = 0.01;&lt;br /&gt;
&lt;br /&gt;
for i = 1:N&lt;br /&gt;
    &lt;br /&gt;
    x(i+1)=x(i)+h*(-x(i).*y(i));&lt;br /&gt;
    y(i+1)=y(i)+h*(y(i).*x(i));&lt;br /&gt;
    &lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
%Representamos gráficamente las soluciones&lt;br /&gt;
&lt;br /&gt;
hold on&lt;br /&gt;
&lt;br /&gt;
plot(t,x,'b');&lt;br /&gt;
plot(t,y,'r');&lt;br /&gt;
grid on&lt;br /&gt;
&lt;br /&gt;
legend('Sustancia A: x(t)','Sustancia B: y(t)')&lt;br /&gt;
xlabel('Tiempo (s)')&lt;br /&gt;
ylabel('Concentración (mol/l)')&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
hold off&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
}}&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Método de Runge-Kutta===&lt;br /&gt;
&lt;br /&gt;
El método de resolución numérica de Runge-Kutta, involucra un gran número de parámetros. Para simplificar la implementación de este método en Matlab, el sistema se tratará como una matriz &amp;lt;math&amp;gt;z&amp;lt;/math&amp;gt;. Además, utilizaremos la función ''inline'', con la que declararemos previamente la función algebraica necesaria para el cálculo de los parámetros &amp;lt;math&amp;gt;k_i&amp;lt;/math&amp;gt;, ahorrándonos tener que escribir innumerables veces la correspondiente expresión matemática.&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Primero, expresamos el sistema en forma matricial:&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;(PVI)\begin{cases}&lt;br /&gt;
    x'(t)=-k_1 x(t)y(t) \\&lt;br /&gt;
    y'(t)=k_1 x(t)y(t) \\&lt;br /&gt;
    \\&lt;br /&gt;
    x(0)=1 \\&lt;br /&gt;
    y(0) = 0.01&lt;br /&gt;
\end{cases}\quad t\in[0,10]&lt;br /&gt;
&lt;br /&gt;
\quad \Rightarrow \quad k_1=1\quad \Rightarrow \quad&lt;br /&gt;
&lt;br /&gt;
(PVI)\begin{cases}\vec{z}'(t)=&lt;br /&gt;
   \begin{bmatrix}&lt;br /&gt;
      x'(t) \\&lt;br /&gt;
      y'(t) \\&lt;br /&gt;
   \end{bmatrix}&lt;br /&gt;
=&lt;br /&gt;
      \begin{bmatrix}&lt;br /&gt;
      -x(t)y(t) \\&lt;br /&gt;
      x(t)y(t) \\&lt;br /&gt;
   \end{bmatrix}&lt;br /&gt;
&lt;br /&gt;
 \\ \\ \vec{z}(0)=&lt;br /&gt;
   \begin{bmatrix}&lt;br /&gt;
      x(0) \\&lt;br /&gt;
      y(0) \\&lt;br /&gt;
   \end{bmatrix}&lt;br /&gt;
=&lt;br /&gt;
      \begin{bmatrix}&lt;br /&gt;
      1 \\&lt;br /&gt;
      0.01 \\&lt;br /&gt;
   \end{bmatrix}&lt;br /&gt;
\end{cases}\quad t\in[0,10]&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
A continuación, detallamos la función &amp;lt;math&amp;gt;\vec{F}&amp;lt;/math&amp;gt; de la que dependerán los valores de los parámetros &amp;lt;math&amp;gt;k_i&amp;lt;/math&amp;gt;:&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;\vec{F}(x,y)=\vec{F}(\vec{z})=&lt;br /&gt;
&lt;br /&gt;
\begin{bmatrix}&lt;br /&gt;
    f(\vec{z}) \\&lt;br /&gt;
    g(\vec{z}) \\&lt;br /&gt;
\end{bmatrix}=&lt;br /&gt;
&lt;br /&gt;
\begin{bmatrix}&lt;br /&gt;
    x'(t) \\&lt;br /&gt;
    y'(t) \\&lt;br /&gt;
\end{bmatrix}=&lt;br /&gt;
&lt;br /&gt;
\vec{z}'(t)=&lt;br /&gt;
&lt;br /&gt;
\begin{bmatrix}&lt;br /&gt;
    -x(t)y(t) \\&lt;br /&gt;
    x(t)y(t) \\&lt;br /&gt;
\end{bmatrix}&lt;br /&gt;
\quad \Rightarrow \quad&lt;br /&gt;
&lt;br /&gt;
\begin{cases}&lt;br /&gt;
 [\vec{k_1}] &amp;amp; =  F(\vec{z}_i) \\&lt;br /&gt;
 [\vec{k_2}] &amp;amp; =  F(\vec{z}_i + {1 \over 2}k_1h) \\&lt;br /&gt;
 [\vec{k_3}] &amp;amp; =  F(\vec{z}_i + \frac{1}{2}k_2h) \\&lt;br /&gt;
 [\vec{k_4}] &amp;amp; =  F(\vec{z}_i + k_3h) \\&lt;br /&gt;
\end{cases}\quad [h=0.1]&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Entonces el método RK4 para este problema está dado por la siguiente ecuación:&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;\vec{z}_{i+1} = \vec{z}_{i} + {1 \over 6}h(\vec{k_1}+2\vec{k_2}+2\vec{k_3}+\vec{k_4})&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Mediante el siguiente programa en Matlab calculamos numéricamente la solución y la representamos en un gráfico:&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Archivo:sistema_RK4.png|400px|miniaturadeimagen|derecha|Representación gráfica de las concentraciones de A y B. Resolución del sistema por Runge-Kutta]]&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
%Método de Runge-Kutta&lt;br /&gt;
clc&lt;br /&gt;
&lt;br /&gt;
%Función F=[x'(t); y'(t)]&lt;br /&gt;
F=inline('[-z(1)*z(2);z(1)*z(2)]','z');&lt;br /&gt;
&lt;br /&gt;
%Datos del problema &lt;br /&gt;
x0=1;&lt;br /&gt;
y0=0.01;&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=10;&lt;br /&gt;
h=0.1;&lt;br /&gt;
&lt;br /&gt;
%Vector de variable independiente (t)&lt;br /&gt;
t=t0:h:tN;&lt;br /&gt;
&lt;br /&gt;
%Matriz de variables dependientes z=[x;y]&lt;br /&gt;
z=zeros(2,length(t));&lt;br /&gt;
z(:,1)=[x0;y0];&lt;br /&gt;
&lt;br /&gt;
for i = 1:length(t)-1&lt;br /&gt;
    k1=F(z(:,i));&lt;br /&gt;
    k2=F(z(:,i)+k1.*h/2);&lt;br /&gt;
    k3=F(z(:,i)+k2.*h/2);&lt;br /&gt;
    k4=F(z(:,i)+k3.*h);&lt;br /&gt;
    z(:,i+1)=z(:,i)+h/6.*(k1+2.*k2+2.*k3+k4);&lt;br /&gt;
end&lt;br /&gt;
 &lt;br /&gt;
%Representación gráfica&lt;br /&gt;
hold on&lt;br /&gt;
plot(t,z(1,:))&lt;br /&gt;
plot(t,z(2,:),'r')&lt;br /&gt;
legend('Sustancia A: x(t)','Sustancia B: y(t)')&lt;br /&gt;
xlabel('Tiempo (s)')&lt;br /&gt;
ylabel('Concentración (mol/l)')&lt;br /&gt;
grid on&lt;br /&gt;
%hold off&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
== Interpretación de las gráficas ==&lt;br /&gt;
&lt;br /&gt;
Como cabía esperar, obtenemos la misma solución resolviendo el problema como sistema o como EDO. Podemos observar por los resultados obtenidos que la velocidad de aparición de B es igual a la velocidad de desaparición de A (como dicta el principio de conservación de la masa), que A acaba desapareciendo prácticamente por completo y que la concentración de B termina por estabilizarse alrededor de 1 mol/l. Ambos compuestos alcanzan sus los extremos de sus concentraciones en el mismo instante de tiempo&lt;br /&gt;
&lt;br /&gt;
También cabe destacar que cuando el tiempo transcurrido alcanza 4,5 segundos las concentraciones de ambos compuestos son las mismas.&lt;br /&gt;
&lt;br /&gt;
= Reacción II =&lt;br /&gt;
&lt;br /&gt;
En este apartado vamos a estudiar la reacción propuesta por Alfred J. Lotka en 1920, que es la siguiente:&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt; A + X →_{k1} 2X;&amp;lt;/math&amp;gt;     :&amp;lt;math&amp;gt; X + Y →_{k2} 2Y;&amp;lt;/math&amp;gt;     :&amp;lt;math&amp;gt;Y →_{k3} 2B  &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Como se puede observar, se trata de una reacción compleja integrada por 3 reacciones simples (las dos primeras autocatalíticas) en las que intervienen un total de 4 compuestos, A, B, X e Y. Siguiendo el desarrollo de la reacción, es lógico suponer que A se agotará al comienzo de la reacción, que los máximos de concentración de X e Y se darán en los estados intermedios y que al final el compuesto B será el único restante, siendo el producto final de la reacción.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Interpretación del problema y deducción de las ecuaciones diferenciales ==&lt;br /&gt;
&lt;br /&gt;
Para averiguar cómo evolucionan las concentraciones de los cuatro compuestos durante el desarrollo de la reacción necesitaremos obtener cuatro ecuaciones diferenciales. Para ello nos volveremos a basar en los principios físicos que ya empleamos en la anterior reacción. Definimos A(t), x(t), y(t), y B(t) (A, x, y, B; para ahorrar notación) a las concentraciones de A, X, Y, y B, respectivamente. &lt;br /&gt;
&lt;br /&gt;
En primer lugar aplicamos el Principio de Conservación de la masa, que establece que la suma de las concentraciones de los compuestos es constante (no desaparece masa en el proceso), lo que derivando nos indica que:&lt;br /&gt;
&lt;br /&gt;
: &amp;lt;math&amp;gt; A' + y' + y' + B' = 0 \quad\quad(I)&amp;lt;/math&amp;gt;       &lt;br /&gt;
&lt;br /&gt;
A continuación aplicaremos la Ley de Acción de Masas (velocidad de reacción proporcional al producto de la concentración de los reactivos).&lt;br /&gt;
&lt;br /&gt;
Aplicando esta ley a la última reacción simple obtenemos que: &lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;B'=k_3y \quad\quad(II)&amp;lt;/math&amp;gt;        &lt;br /&gt;
&lt;br /&gt;
En el caso de las concentraciones de X e Y las expresiones resultantes son algo más complicadas ya que estos dos compuestos actúan como reactivos y productos en más de una reacción simple, por lo que la variación de sus concentraciones será la suma de las variaciones de las reacciones en las que aparezcan:&lt;br /&gt;
&lt;br /&gt;
: &amp;lt;math&amp;gt; x' = x'_{1} + x'_{2} → x' = k_{1}Ax - k{2}xy \quad\quad(III)&amp;lt;/math&amp;gt;        &lt;br /&gt;
: &amp;lt;math&amp;gt; y' = y'_{2} + y'_{3} → y' = k_{2}xy − k_3{y} \quad\quad(IV)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Por último sustituimos (II), (III) y (IV) en (I) obteniendo: &lt;br /&gt;
&lt;br /&gt;
: &amp;lt;math&amp;gt; A' + k_{1}Ax - k{2}xy + k_{2}xy − k_3{y}+ k_3y= 0 : &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
De donde obtenemos que:&lt;br /&gt;
&lt;br /&gt;
: &amp;lt;math&amp;gt; A' = -k_{1}Ax &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Ahora que ya tenemos las variaciones de concentración de los compuestos en función de las concentraciones podemos aplicar métodos numéricos que nos lleven a una solución aproximada.&lt;br /&gt;
&lt;br /&gt;
== Resolución numérica del sistema de ecuaciones ==&lt;br /&gt;
&lt;br /&gt;
Una vez obtenidas las ecuaciones y conociendo las condiciones iniciales y los valores de las constantes podemos plantear el problema de valor inicial para luego resolverlo.&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;(PVI)&lt;br /&gt;
\begin{cases}&lt;br /&gt;
    A' = -k_{1}Ax\\&lt;br /&gt;
    x' = k_{1}Ax - k{2}xy\\&lt;br /&gt;
    y' = k_{2}xy − k_3{y}\\&lt;br /&gt;
    B'=k_3y \\&lt;br /&gt;
\\&lt;br /&gt;
    A(0)=5  \\&lt;br /&gt;
    x(0)=5*10^{-4} \\&lt;br /&gt;
    y(0)=10^{-5}\\&lt;br /&gt;
    B(0)=0 \\&lt;br /&gt;
\end{cases}&lt;br /&gt;
\quad t\in[0,200]&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Siendo &amp;lt;math&amp;gt; k_{1}=K_{2}=2k_{3}=0.1 &amp;lt;/math&amp;gt; y las unidades de la concentración mol/l.&lt;br /&gt;
&lt;br /&gt;
=== Método de Euler ===&lt;br /&gt;
&lt;br /&gt;
Aplicamos el método de Euler de forma análoga a como lo hicimos en [[Reacciones_con_autocatálisis._Grupo_D12#Método_de_Euler_2|apartado 2.5.1]]&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Euler lotka0.01.png|400px|miniaturadeimagen|derecha|Representación gráfica de las concentraciones de A, B, X, e Y a lo largo del tiempo. Resoluciónd delsistema por el método de Euler con longitud de paso h=0.01]] &lt;br /&gt;
[[Archivo:Euler lotka0.001.png|400px|miniaturadeimagen|derecha|Representación gráfica de las concentraciones de A, B, X, e Y a lo largo del tiempo. Resoluciónd delsistema por el método de Euler con longitud de paso h=0.001]]&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
&lt;br /&gt;
%Resolución del sistema de la reacción de Lotka por el método de Euler&lt;br /&gt;
&lt;br /&gt;
clear all&lt;br /&gt;
&lt;br /&gt;
%Definimos la variable independiente y establecemos los datos del problema&lt;br /&gt;
%de valor inicial. Para la longitud de paso h introducimos en primer lugar&lt;br /&gt;
%0.01 y luego 0.001&lt;br /&gt;
&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=200;&lt;br /&gt;
h= input('Introduzca una longitud de paso ');&lt;br /&gt;
t = t0:h:tN;&lt;br /&gt;
N=(tN-t0)/h;&lt;br /&gt;
k1 = 0.1;&lt;br /&gt;
k2 = 0.1;&lt;br /&gt;
k3 = 0.05;&lt;br /&gt;
A0 = 5;&lt;br /&gt;
B0 = 0;&lt;br /&gt;
X0 = 5*10^(-4);&lt;br /&gt;
Y0 = 10^(-5);&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
%Definimos las variables dependientes.&lt;br /&gt;
&lt;br /&gt;
A = zeros(1, N-1);&lt;br /&gt;
B = A;&lt;br /&gt;
X = A;&lt;br /&gt;
Y = A;&lt;br /&gt;
&lt;br /&gt;
A(1) = A0;&lt;br /&gt;
B(1) = B0;&lt;br /&gt;
X(1) = X0;&lt;br /&gt;
Y(1) = Y0;&lt;br /&gt;
&lt;br /&gt;
for i = 1:N&lt;br /&gt;
    &lt;br /&gt;
    X(i+1) = X(i) + h*(k1*A(i)*X(i)-k2*Y(i)*X(i));&lt;br /&gt;
    Y(i+1)=Y(i)+h.*(k2.*X(i).*Y(i)-k3.*Y(i));&lt;br /&gt;
    B(i+1) = B(i) + h*(k3*Y(i));&lt;br /&gt;
    A(i+1) = A(i) + h*(-k1*A(i)*X(i));&lt;br /&gt;
   &lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
%Representamos gráficamente la solución&lt;br /&gt;
&lt;br /&gt;
hold on&lt;br /&gt;
&lt;br /&gt;
plot (t,A,'b')&lt;br /&gt;
plot(t, X, 'r')&lt;br /&gt;
plot(t,Y, 'g')&lt;br /&gt;
plot(t, B, 'm')&lt;br /&gt;
legend('Sustancia A: A(t)','Sustancia X: x(t)','Sustancia Y: y(t)','Sustancia B: B(t)','Location','Best')&lt;br /&gt;
xlabel('Tiempo (s)')&lt;br /&gt;
ylabel('Concentración (mol/l)')&lt;br /&gt;
grid on&lt;br /&gt;
&lt;br /&gt;
hold off&lt;br /&gt;
&lt;br /&gt;
}}&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
A continuación tendremos que comprobar si el método es estable. &amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
Un método es estable cuando el error local es pequeño y además este error no se amplifica a lo largo del tiempo. Para calificar la estabilidad del método de Euler resolveremos el sistema anterior con este método, con pasos &amp;quot;h=0.01&amp;quot; y &amp;quot;h=0.001&amp;quot;, y lo compararemos con la resolución del sistema con el método de Heun, que se asemeja más a la solución exacta.&amp;lt;br /&amp;gt;&lt;br /&gt;
En la comparación representaremos en azul el método de Heun y en rojo el método de Euler.&amp;lt;br /&amp;gt;&lt;br /&gt;
Para &amp;quot;h=0.01&amp;quot; tenemos lo siguiente:&lt;br /&gt;
[[Archivo:1estabilidad123.jpg|400px|miniaturadeimagen|izquierda|Comparación entre Método de Heun (Azul) con el Método de Euler con paso h=0.01 (Rojo)]] &lt;br /&gt;
[[Archivo:1estabilidad321.jpg|400px|miniaturadeimagen|derecha|Comparación entre Método de Heun (Azul) con el Método de Euler con paso h=0.01 (Rojo)]] &lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
Para &amp;quot;h=0.001&amp;quot; tenemos lo siguiente:&lt;br /&gt;
[[Archivo:2estabilidad123.jpg|400px|miniaturadeimagen|izquierda|Comparación entre Método de Heun (Azul) con el Método de Euler con paso h=0.001 (Rojo)]] &lt;br /&gt;
[[Archivo:2estabilidad321.jpg|400px|miniaturadeimagen|derecha|Comparación entre Método de Heun (Azul) con el Método de Euler con paso h=0.001 (Rojo)]]&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
Como podemos ver en las imágenes de los dos procesos las gráficas se superponen y no se aprecian diferencias hasta que no ampliamos la imagen. Y esto sucede en todo momento con lo que podemos garantizar que en este caso el método de Euler es estable para los pasos que hemos usado.&lt;br /&gt;
&lt;br /&gt;
=== Método de Heun ===&lt;br /&gt;
&lt;br /&gt;
Si bien el método de resolución numérica de Heun no involucra un número de parámetros tan notable como el método de Runge-Kutta, en este caso tenemos un sistema de 4 ecuaciones diferenciales, por lo que, en aras de simplificar, utilizaremos el mismo criterio que en el [[Reacciones_con_autocatálisis._Grupo_D12#Método_de_Runge-Kutta_2|apartado 2.5.2]].: El sistema se tratará como una matriz &amp;lt;math&amp;gt;z&amp;lt;/math&amp;gt;, y para la obtención de los parámetros &amp;lt;math&amp;gt;k_i&amp;lt;/math&amp;gt; utilizaremos la función ''inline'', con la que declararemos previamente las expresiones necesarias para el cálculo de los parámetros &amp;lt;math&amp;gt;k_i&amp;lt;/math&amp;gt;.&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Primero, expresamos el sistema en forma matricial:&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;(PVI)\begin{cases}&lt;br /&gt;
A'(t)=-k_1 A(t)x(t) \\&lt;br /&gt;
x'(t)=k_1 A(t)x(t)-k_2 x(t)y(t) \\&lt;br /&gt;
y'(t)=k_2 x(t)y(t)-k_3 y(t) \\&lt;br /&gt;
B'(t)=k_3 x(t)y(t) \\ \\&lt;br /&gt;
A(0)=5 \\&lt;br /&gt;
x(0)=5·10^{-4} \\&lt;br /&gt;
y(0)=10^{-5} \\&lt;br /&gt;
B(0) = 0&lt;br /&gt;
\end{cases}\quad t\in[0,200]&lt;br /&gt;
&lt;br /&gt;
\quad \Rightarrow \quad&lt;br /&gt;
&lt;br /&gt;
\begin{cases}&lt;br /&gt;
k_1=0.1 \\&lt;br /&gt;
k_2=0.1 \\&lt;br /&gt;
k_3=0.05 \\&lt;br /&gt;
&lt;br /&gt;
\end{cases}&lt;br /&gt;
&lt;br /&gt;
\quad \Rightarrow \quad&lt;br /&gt;
&lt;br /&gt;
(PVI)\begin{cases}\vec{z}'(t)=&lt;br /&gt;
   \begin{bmatrix}&lt;br /&gt;
      A'(t) \\&lt;br /&gt;
      x'(t) \\&lt;br /&gt;
      y'(t) \\&lt;br /&gt;
      B'(t) \\&lt;br /&gt;
   \end{bmatrix}&lt;br /&gt;
=&lt;br /&gt;
      \begin{bmatrix}&lt;br /&gt;
      -0.1 A(t)x(t) \\&lt;br /&gt;
      0.1 A(t)x(t)-0.1 x(t)y(t) \\&lt;br /&gt;
      0.1 x(t)y(t)-0.05 y(t) \\&lt;br /&gt;
      0.05 y(t)x(t)\\&lt;br /&gt;
   \end{bmatrix}&lt;br /&gt;
&lt;br /&gt;
 \\ \\ \vec{z}(0)=&lt;br /&gt;
   \begin{bmatrix}&lt;br /&gt;
      A(0) \\&lt;br /&gt;
      x(0) \\&lt;br /&gt;
      y(0) \\&lt;br /&gt;
      B(0) \\&lt;br /&gt;
   \end{bmatrix}&lt;br /&gt;
=&lt;br /&gt;
      \begin{bmatrix}&lt;br /&gt;
      5 \\&lt;br /&gt;
      5·10^{-4} \\&lt;br /&gt;
      10^{-5} \\&lt;br /&gt;
      0&lt;br /&gt;
   \end{bmatrix}&lt;br /&gt;
\end{cases}\quad t\in[0,200]&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
A continuación, detallamos la función &amp;lt;math&amp;gt;\vec{F}&amp;lt;/math&amp;gt; de la que dependerán los valores de los parámetros &amp;lt;math&amp;gt;k_i&amp;lt;/math&amp;gt;:&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;\vec{F}(A,x,y,B)=\vec{F}(\vec{z})=&lt;br /&gt;
\begin{bmatrix}&lt;br /&gt;
    f(\vec{z}) \\ &lt;br /&gt;
    g(\vec{z}) \\ &lt;br /&gt;
    h(\vec{z}) \\ &lt;br /&gt;
    i(\vec{z}) \\ &lt;br /&gt;
\end{bmatrix}=&lt;br /&gt;
\begin{bmatrix}&lt;br /&gt;
    A'(t) \\&lt;br /&gt;
    x'(t) \\&lt;br /&gt;
    y'(t) \\&lt;br /&gt;
    B'(t) \\&lt;br /&gt;
\end{bmatrix}=&lt;br /&gt;
\vec{z}'(t)=&lt;br /&gt;
      \begin{bmatrix}&lt;br /&gt;
      -0.1 A(t)x(t) \\&lt;br /&gt;
      0.1 A(t)x(t)-0.1 x(t)y(t) \\&lt;br /&gt;
      0.1 x(t)y(t)-0.05 y(t) \\&lt;br /&gt;
      0.05 y(t)x(t)\\&lt;br /&gt;
   \end{bmatrix}&lt;br /&gt;
&lt;br /&gt;
\quad \Rightarrow \quad &lt;br /&gt;
&lt;br /&gt;
\begin{cases}&lt;br /&gt;
 [\vec{k_1}] &amp;amp; =  F(\vec{z}_i) \\&lt;br /&gt;
 [\vec{k_2}] &amp;amp; =  F(\vec{z}_i + {1 \over 2}k_1h) \\&lt;br /&gt;
\end{cases}\quad [h=0.01]&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Entonces el método de Heun para este problema está dado por la siguiente ecuación:&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;\vec{z}_{i+1} = \vec{z}_{i} + {1 \over 2}h(\vec{k_1}+\vec{k_2})&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Mediante el siguiente programa en Matlab calculamos numéricamente la solución y la representamos en un gráfico:&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Archivo:AXYBRK4.png|400px|miniaturadeimagen|derecha|Representación gráfica de las concentraciones de A,X,Y y B. Resolución del sistema por Heun]]&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
%Método de Heun&lt;br /&gt;
clc&lt;br /&gt;
&lt;br /&gt;
%Función F=[A'(t);x'(t); y'(t);B'(t)]&lt;br /&gt;
F=inline('0.1.*[-z(1)*z(2);z(1)*z(2)-z(2)*z(3);z(2)*z(3)-z(3)/2;z(3)/2]','z');&lt;br /&gt;
&lt;br /&gt;
%Datos del problema&lt;br /&gt;
A0=5;&lt;br /&gt;
x0=5*10^-4;&lt;br /&gt;
y0=10^(-5);&lt;br /&gt;
B0=0;&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=200;&lt;br /&gt;
h=0.1;&lt;br /&gt;
&lt;br /&gt;
%Vector de variable independiente (t)&lt;br /&gt;
t=t0:h:tN;&lt;br /&gt;
&lt;br /&gt;
%Matriz de variables dependientes z=[A;x;y;B]&lt;br /&gt;
z=zeros(4,length(t));&lt;br /&gt;
z(:,1)=[A0;x0;y0;B0];&lt;br /&gt;
&lt;br /&gt;
for i = 1:length(t)-1&lt;br /&gt;
    k1=F(z(:,i));&lt;br /&gt;
    k2=F(z(:,i)+k1.*h/2);&lt;br /&gt;
    z(:,i+1)=z(:,i)+h/2.*(k1+k2);&lt;br /&gt;
end&lt;br /&gt;
 &lt;br /&gt;
%Representación gráfica&lt;br /&gt;
hold on&lt;br /&gt;
plot(t,z(1,:),'b')&lt;br /&gt;
plot(t,z(2,:),'r')&lt;br /&gt;
plot(t,z(3,:),'g')&lt;br /&gt;
plot(t,z(4,:),'m')&lt;br /&gt;
legend('Sustancia A: A(t)','Sustancia X: x(t)','Sustancia Y: y(t)','Sustancia B: B(t)','Location','Best')&lt;br /&gt;
xlabel('Tiempo (s)')&lt;br /&gt;
ylabel('Concentración (mol/l)')&lt;br /&gt;
grid on&lt;br /&gt;
hold off&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
== Interpretación de las gráficas == &lt;br /&gt;
 &lt;br /&gt;
El proceso comienza con el predominio absoluto del compuesto A en la concentración total, siendo la presencia de los otros tres compuestos despreciable. Durante los primeros segundos la situación apenas cambia, pero tras los diez primeros segundos la concentración de A cae bruscamente mientras que la concentración de X aumenta a la misma velocidad; antes de llegar a los veinte segundos transcurridos las concentraciones de ambos compuestos se igualan y otros quince segundos más tarde el compuesto A  prácticamente ha desaparecido y el X ha alcanzado su concentración máxima (5 mol/litro).&lt;br /&gt;
&lt;br /&gt;
Es entonces cuando concluye la primera reacción y comienzan las otras dos, al no haber más compuesto A que cree compuesto X. La velocidad de aparición de Y es inicialmente mayor que la de B, superando al poco tiempo en concentración a la sustancia X. Sin embargo, llega un momento en el que la concentración de X es tan baja que se ralentiza la creación de Y y pronto empieza a disminuir su concentración tras alcanzar un máximo en torno a los 56 segundos, perdiendo peso la segunda reacción en beneficio de la tercera.&lt;br /&gt;
&lt;br /&gt;
Tras los 60 segundos de reacción el compuesto X pasa a tener una concentración despreciable, por lo que la única reacción simple que se sigue desarrollando es la tercera, destruyéndose reactivo Y y creándose producto B. La concentración de Y va reduciéndose paulatinamente hasta que en torno a los 160 segundos de reacción alcanza niveles insignificantes mientras que la concentración de B alcanza su máximo de 5 mol/litro.&lt;br /&gt;
&lt;br /&gt;
Es interesante observar que en todo momento se cumple el Principio de Conservación de la masa: la suma en cualquier momento de las concentraciones de las sustancias es 5 mol /litro. Esto es fácilmente comprobable en los momentos en que las concentraciones de A, X y B alcanzan su máximo de 5 mol/litro y el resto de concentraciones son nulas o despreciables. &lt;br /&gt;
[[Categoría:Ecuaciones Diferenciales]]&lt;br /&gt;
[[Categoría:ED14/15]]&lt;br /&gt;
[[Categoría:Trabajos 2014-15]]&lt;/div&gt;</summary>
		<author><name>Javier Ruiz de Galarreta López</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Reacciones_con_autocat%C3%A1lisis._Grupo_D12&amp;diff=29215</id>
		<title>Reacciones con autocatálisis. Grupo D12</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Reacciones_con_autocat%C3%A1lisis._Grupo_D12&amp;diff=29215"/>
				<updated>2015-03-12T08:18:04Z</updated>
		
		<summary type="html">&lt;p&gt;Javier Ruiz de Galarreta López: /* Método del trapecio */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{ TrabajoED | Reacciones con autocatálisis. Grupo D12 | [[:Categoría:Ecuaciones Diferenciales|Ecuaciones Diferenciales]]|[[:Categoría:ED14/15|Curso 2014-15]] | Javier Ruiz de Galarreta López, Argimiro Martínez López, Eduardo Moyano García, Alberto Rodríguez Ruiz. }}&lt;br /&gt;
&lt;br /&gt;
= Introducción: objetivos y metodología =&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
El objetivo de este trabajo es estudiar las concentraciones de los reactivos y productos de una reacción química a lo largo de la evolución en el tiempo de dicha reacción. Para ello modelizaremos el proceso empleando ecuaciones diferenciales y teniendo en cuenta la Ley de Acción de Masas y el Principio de Conservación de la materia.&lt;br /&gt;
&lt;br /&gt;
Al ser las ecuaciones y sistemas que se nos presentan de difícil resolución analítica, utilizaremos el programa informático Matlab para resolverlos mediante métodos numéricos como el de Euler, el del Trapecio, el de Runge-Kutta y el de Heun. &lt;br /&gt;
&lt;br /&gt;
Plasmaremos las soluciones en gráficos que nos permitirán dar una interpretación físico química a los resultados.&lt;br /&gt;
&lt;br /&gt;
= Reacción I =&lt;br /&gt;
&lt;br /&gt;
En primer lugar consideramos una reacción química irreversible en una solución bien mezclada, que se desarrolla para un volumen y una temperatura constantes, y en la que uno de los componentes (B, en este caso), hace de efecto catalítico.&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt; A + B →_{k1} 2B  &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Para desarrollar nuestro análisis nos apoyaremos en dos leyes físico químicas:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''Ley de acción de masas''': Enunciada por Guldberg y Waage en 1864, establece, entre otras cosas, que  la velocidad de&lt;br /&gt;
reacción es proporcional al producto de las concentraciones de los reactivos.&lt;br /&gt;
&lt;br /&gt;
'''Principio de conservación de la masa''': Establece que en una reacción química ordinaria la masa permanece constante, siendo la masa consumida de los reactivos igual a la masa obtenida de los productos. Fue elaborada independientemente por Míjail Lomonósov en 1745 y Antoine Lavoisier en 1785.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Interpretación del problema y deducción de las ecuaciones diferenciales ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Para hallar las ecuaciones diferenciales que nos describan cómo se desarrolla la reacción en el tiempo nos basaremos en las dos leyes enunciadas anteriormente. En primer lugar, definimos nuestra variable independiente como el tiempo &amp;lt;math&amp;gt;t&amp;lt;/math&amp;gt; en segundos. Las dos variables dependientes serán las concentraciones de los compuestos A y B, que denominaremos &amp;lt;math&amp;gt;x(t)&amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt;y(t)&amp;lt;/math&amp;gt;, ambas expresadas en mol/l. &lt;br /&gt;
&lt;br /&gt;
El principio de conservación de la masa expone que la suma de las concentraciones de los reactivos y los productos es constante. Esto equivale, derivando la expresión &amp;lt;math&amp;gt;x(t)+y(t)=cte&amp;lt;/math&amp;gt;, a que  desaparece tanto reactivo como producto aparece, o lo que es lo mismo, que la velocidad de aparición del producto es igual a la velocidad de desaparición (velocidad de aparición negativa) del reactivo:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;x'(t)=-y'(t)&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
La otra ecuación que necesitamos la obtenemos directamente de aplicar la Ley de acción de masas, que establece que la velocidad de la reacción (la velocidad a la que aparece el producto o desaparece el reactivo) es igual al producto de las concentraciones por una constante.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;y'(t)=k_1x(t)y(t)&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Obtención del problema de valor inicial ==&lt;br /&gt;
Una vez demostrado el origen de las ecuaciones (1) y (2) en el apartado anterior, obtendremos el problema de valor inicial (PVI) mediante las operaciones detalladas a continuación:&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;x'(t)+y'(t)=0\quad\quad(1)&amp;lt;/math&amp;gt;&lt;br /&gt;
:&amp;lt;math&amp;gt;y'(t)=k_1x(t)y(t)\quad\quad(2)&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Integrando (1) obtenemos (3):&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
:&amp;lt;math&amp;gt;\int_\mathbb{D} (\frac{dx(t)}{dt} + \frac{dy(t)}{dt})\,dt =\int_\mathbb{D} 0\,dt \quad \Rightarrow \quad x(t)+y(t)=k_2\quad \Rightarrow \quad x(t)=k_2-y(t)\quad\quad(3)&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Sustituyendo (3) en (2), obtenemos (4):&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;y'(t)=k_1x(t)y(t)\quad \Rightarrow \quad y'(t)=k_1(k_2-y(t))y(t)\quad \Rightarrow \quad y'(t)=k_1k_2y(t)-k_1y^2(t)\quad\quad(4)&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Conocemos las concentraciones iniciales de A y de B, por lo que podemos obtener el valor de la constante k&amp;lt;sub&amp;gt;2&amp;lt;/sub&amp;gt;:&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;[A]:\quad x(0)=1 mol/l;\quad\quad [B]:\quad y(0)=0,01 mol/l&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;x(t)+y(t)=k_2\quad \Rightarrow \quad x(0)+y(0)=k_2\quad \Rightarrow \quad 1+0,01=k_2\quad \Rightarrow \quad k_2=1,01&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Por último, conocemos también el valor de k&amp;lt;sub&amp;gt;1&amp;lt;/sub&amp;gt;, por lo que podremos plantear a continuación el correspondiente PVI:&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;k_1=1&amp;lt;/math&amp;gt;&lt;br /&gt;
:&amp;lt;math&amp;gt;(PVI)\begin{cases}y'(t)=1,01y(t)-y^2(t) \\ \\&lt;br /&gt;
y(0) = 0,01 \end{cases}\quad (t,y)\in[0,10]\times\mathbb{R}&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Unicidad de la solución ==&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Existencia-y-unicidad.png|200px|miniaturadeimagen|derecha|Intersección B con dominio]]&lt;br /&gt;
&lt;br /&gt;
Aplicamos a continuación el Teorema de Existencia y Unicidad:&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Sea &amp;lt;math&amp;gt;f(t,y)=y'(t) \Rightarrow f(t,y)=1.01y(t)-y^2(t)\quad&amp;lt;/math&amp;gt;, y &amp;lt;math&amp;gt;\quad\frac{\partial }{\partial y} f(t,y) = 1.01-2y(t)&amp;lt;/math&amp;gt;.&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
Y sea &amp;lt;math&amp;gt;B[(t_0,y_0),r],\quad r&amp;gt;0,\quad en (t_0,y_0)=(0,0.01)&amp;lt;/math&amp;gt;.&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;f(t,y)&amp;lt;/math&amp;gt; es continua en &amp;lt;math&amp;gt; \mathbb{B}\cap \mathbb{D}\quad \Rightarrow \quad \exists  y(t)\quad /\quad y'(t)=1,01y(t)-y^2(t)&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;math&amp;gt;\frac{\partial }{\partial y} f(t,y)&amp;lt;/math&amp;gt; es continua en &amp;lt;math&amp;gt; \mathbb{B}\cap \mathbb{D}\quad \Rightarrow \quad \exists !  y(t)\quad /\quad y'(t)=1,01y(t)-y^2(t)&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Con lo que queda demostrado que el (PVI) tiene solución y además esta es única.&lt;br /&gt;
&lt;br /&gt;
== Resolución numérica del problema de valor inicial ==&lt;br /&gt;
&lt;br /&gt;
En este apartado resolveremos el problema de valor inicial planteado anteriormente con tres métodos de integración numérica: el método de Euler, el método del Trapecio y el método de Runge-Kutta de orden 4.&lt;br /&gt;
&lt;br /&gt;
=== Método de Euler ===&lt;br /&gt;
&lt;br /&gt;
El método de Euler, llamado así en honor al matemático Leonhard Euler, es un procedimiento de integración numérica. Su expresión matemática es: &lt;br /&gt;
&amp;lt;math&amp;gt;  PVI =   &lt;br /&gt;
\begin{cases}&lt;br /&gt;
 y_0 \\&lt;br /&gt;
 y_{n+1}  = y_n + h*f(t_n,y_n) \\&lt;br /&gt;
\end{cases}\quad&lt;br /&gt;
   &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
A continuación emplearemos esta expresión en un programa de Matlab para obtener una aproximación de las soluciones. El código de dicho programa es el siguiente.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Eulergrafica.png|400px|miniaturadeimagen|derecha|Representación gráfica y(t). Método de Euler]]&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
%Método de Euler&lt;br /&gt;
clc&lt;br /&gt;
&lt;br /&gt;
%Datos iniciales&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=4;&lt;br /&gt;
y0=0.01;&lt;br /&gt;
h=0.1;&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=10;&lt;br /&gt;
&lt;br /&gt;
%Cálculo de subintervalos&lt;br /&gt;
N=round((tN-t0)/h);&lt;br /&gt;
t=t0:h:tN;&lt;br /&gt;
&lt;br /&gt;
%Creamos el vector donde vamos a guardar las soluciones&lt;br /&gt;
y=zeros(1,N+1);&lt;br /&gt;
y(1)=y0;&lt;br /&gt;
&lt;br /&gt;
%Euler&lt;br /&gt;
for i=1:N;&lt;br /&gt;
    y(i+1)=y(i)+h*(1.01*y(i)-(y(i)).^2);&lt;br /&gt;
end&lt;br /&gt;
%Tabla de Resultados&lt;br /&gt;
[t',y']&lt;br /&gt;
x=1.01-y;&lt;br /&gt;
hold on &lt;br /&gt;
plot(t,y,'r')&lt;br /&gt;
plot(t,x,'b')&lt;br /&gt;
hold off&lt;br /&gt;
legend('Sustancia B: y(t)','Sustancia A: x(t)','Location','best');&lt;br /&gt;
xlabel('Tiempo (s)')&lt;br /&gt;
ylabel('Concentración (mol/l)')&lt;br /&gt;
grid on&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
=== Método del trapecio ===&lt;br /&gt;
&lt;br /&gt;
Vamos a aplicar un método de integración numérica conocido como el Método del Trapecio por aproximar el valor de la integral al del área de un trapecio. Su expresión matemática es:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;  PVI =   &lt;br /&gt;
\begin{cases}&lt;br /&gt;
 y_0 \\&lt;br /&gt;
 y_{n+1}  =  y_n + \frac{h}{2}*(f(t_n,y_n)+f(t_n+1,y_n+1)\\&lt;br /&gt;
\end{cases}\quad&lt;br /&gt;
   &amp;lt;/math&amp;gt;&lt;br /&gt;
   &lt;br /&gt;
Introducimos esta expresión en el código y obtenemos la gráfica de la solución.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Trapeciografica.png|400px|miniaturadeimagen|derecha|Representación gráfica y(t). Método del Trapecio]]&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
%Método del Trapecio&lt;br /&gt;
clc&lt;br /&gt;
&lt;br /&gt;
%Datos iniciales&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=4;&lt;br /&gt;
y0=0.01;&lt;br /&gt;
h=0.1;&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=10;&lt;br /&gt;
&lt;br /&gt;
%Cálculo de subintervalos&lt;br /&gt;
N=round((tN-t0)/h);&lt;br /&gt;
t=t0:h:tN;&lt;br /&gt;
&lt;br /&gt;
%Creamos el vector donde vamos a guardar las soluciones&lt;br /&gt;
y=zeros(1,N+1);&lt;br /&gt;
y(1)=y0;&lt;br /&gt;
&lt;br /&gt;
for i=1:N&lt;br /&gt;
y(i+1)=(((1-(h/2)*1.01)-sqrt(((1-(h/2)*1.01)^2)+4*(h/2)*((1+(h/2)*1.01)*y(i)-(h/2)*(y(i))^2)))/-h);&lt;br /&gt;
end&lt;br /&gt;
%Sacamos la tabla de resultados&lt;br /&gt;
[t',y']&lt;br /&gt;
x=1.01-y;&lt;br /&gt;
%Gráfico&lt;br /&gt;
hold on&lt;br /&gt;
plot(t,y,'r')&lt;br /&gt;
plot(t,x,'b')&lt;br /&gt;
legend('Sustancia B: y(t)','Sustancia A: x(t)','Location','best');&lt;br /&gt;
xlabel('Tiempo (s)')&lt;br /&gt;
ylabel('Concentración (mol/l)')&lt;br /&gt;
grid on&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
=== Método de Runge-Kutta ===&lt;br /&gt;
&lt;br /&gt;
El método de resolución numérica de Runge-Kutta, involucra un gran número de parámetros. Para simplificar la implementación de este método en Matlab, utilizaremos la función ''inline'', con la que declararemos previamente la función algebraica necesaria para el cálculo de los parámetros &amp;lt;math&amp;gt;k_i&amp;lt;/math&amp;gt;, ahorrándonos tener que escribir innumerables veces la correspondiente expresión matemática.&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
A continuación, detallamos la función &amp;lt;math&amp;gt;f(y)&amp;lt;/math&amp;gt; de la que dependerán los valores de los parámetros &amp;lt;math&amp;gt;k_i&amp;lt;/math&amp;gt;:&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;f(y)=y'(t)=1.01y(t)-y(t)^2&lt;br /&gt;
&lt;br /&gt;
\quad \Rightarrow \quad&lt;br /&gt;
&lt;br /&gt;
\begin{cases}&lt;br /&gt;
 k_1 &amp;amp; =  f(y_i) \\&lt;br /&gt;
 k_2 &amp;amp; =  f(y_i + {1 \over 2}k_1h) \\&lt;br /&gt;
 k_3 &amp;amp; =  f(y_i + \frac{1}{2}k_2h) \\&lt;br /&gt;
 k_4 &amp;amp; =  f(y_i + k_3h) \\&lt;br /&gt;
\end{cases}\quad [h=0.1]&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Entonces el método RK4 para este problema está dado por la siguiente ecuación:&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;y_{i+1} = y_{i} + {1 \over 6}h(k_1+2k_2+2k_3+k_4)&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Mediante el siguiente programa en Matlab calculamos numéricamente la solución y la representamos en un gráfico:&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Archivo:RK4II.png|400px|miniaturadeimagen|derecha|Representación gráfica y(t). Método Runge-Kutta]]&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
%Método de Runge-Kutta&lt;br /&gt;
clc&lt;br /&gt;
&lt;br /&gt;
%Función f(t)=y'(t)&lt;br /&gt;
fy=inline('1.01*y-y^2','y');&lt;br /&gt;
&lt;br /&gt;
%Datos del problema&lt;br /&gt;
y0=0.01;&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=10;&lt;br /&gt;
h=0.1;&lt;br /&gt;
&lt;br /&gt;
%Variable independiente (t)&lt;br /&gt;
t=t0:h:tN;&lt;br /&gt;
&lt;br /&gt;
%Variable dependiente (y)&lt;br /&gt;
y=zeros(1,length(t));&lt;br /&gt;
y(1)=y0;&lt;br /&gt;
&lt;br /&gt;
for i=1:length(t)-1&lt;br /&gt;
    k1=fy(y(i));&lt;br /&gt;
    k2=fy(y(i)+k1/2*h);&lt;br /&gt;
    k3=fy(y(i)+k2/2*h);&lt;br /&gt;
    k4=fy(y(i)+k3*h);&lt;br /&gt;
    y(i+1)=y(i)+h/6*(k1+2*k2+2*k3+k4);&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
%Variable dependiente (x)&lt;br /&gt;
x=1.01-y;&lt;br /&gt;
&lt;br /&gt;
%Representación gráfica&lt;br /&gt;
hold on&lt;br /&gt;
plot(t,x,'b')&lt;br /&gt;
plot(t,y,'r')&lt;br /&gt;
legend('Sustancia A: x(t)','Sustancia B: y(t)')&lt;br /&gt;
xlabel('Tiempo (s)')&lt;br /&gt;
ylabel('Concentración (mol/l)')&lt;br /&gt;
grid on&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
=== Comparación de métodos===&lt;br /&gt;
&lt;br /&gt;
Podemos observar fácilmente que las gráficas obtenidas con los diferentes métodos son iguales a primera vista. Sin embargo, superponiéndolas queda patente que no son exactamente iguales debido a que los métodos no poseen la misma precisión y , al operar todos con la misma longitud de paso, unos aproximan la solución exacta mejor que otros. Así se observa en estas imágenes:&lt;br /&gt;
&lt;br /&gt;
[[Archivo:comparativa1.jpg|400px|miniaturadeimagen|izquierda|Comparación de métodos]]&lt;br /&gt;
[[Archivo:comparativa2.jpg|400px|miniaturadeimagen|derecha|Comparación de métodos]]&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
Como podemos comprobar en las imágenes, el método de Euler es menos preciso que el del trapecio o el de Runge-Kutta.&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Resolución en forma de sistema de ecuaciones ==&lt;br /&gt;
&lt;br /&gt;
A continuación vamos a plantear el problema de valor inicial con un sistema no lineal de dos ecuaciones equivalente al problema resuelto anteriormente.&lt;br /&gt;
&lt;br /&gt;
Estas ecuaciones serán:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;(PVI)&lt;br /&gt;
\begin{cases}&lt;br /&gt;
    y'(t)=k_1 x(t)y(t) \\&lt;br /&gt;
    x'(t)=-k_1 x(t)y(t) \\&lt;br /&gt;
    \\&lt;br /&gt;
    x(0)=1 \\&lt;br /&gt;
    y(0) = 0.01&lt;br /&gt;
\end{cases}&lt;br /&gt;
\quad t\in[0,10]&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Resolveremos el problema por el método de Euler y por el método de Runge-Kutta, plasmando las soluciones en gráficos.&lt;br /&gt;
&lt;br /&gt;
=== Método de Euler ===&lt;br /&gt;
&lt;br /&gt;
En este caso aplicaremos en el siguiente código la expresión para EDO a cada una de las ecuaciones que conforma el sistema, obteniendo la correspondiente gráfica.&lt;br /&gt;
 &lt;br /&gt;
[[Archivo:SistEuler.png|400px|miniaturadeimagen|derecha|Representación gráfica de las concentraciones de A y B. Resolución del sistema por Euler]]&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
&lt;br /&gt;
%Resolución del sistema por el método de Euler&lt;br /&gt;
&lt;br /&gt;
clear all&lt;br /&gt;
&lt;br /&gt;
%Definimos el vector de la variable independiente, el número de&lt;br /&gt;
%subintervalos y la longitud de paso&lt;br /&gt;
&lt;br /&gt;
t0 = 0;&lt;br /&gt;
tN = 10;&lt;br /&gt;
h = 0.1;&lt;br /&gt;
t = t0:h:tN&lt;br /&gt;
N = (tN-t0)/h;&lt;br /&gt;
&lt;br /&gt;
%Definimos los vectores de las variables dependientes&lt;br /&gt;
&lt;br /&gt;
x = zeros(1, N+1);&lt;br /&gt;
y = zeros(1, N+1);&lt;br /&gt;
&lt;br /&gt;
x(1) = 1;&lt;br /&gt;
y(1) = 0.01;&lt;br /&gt;
&lt;br /&gt;
for i = 1:N&lt;br /&gt;
    &lt;br /&gt;
    x(i+1)=x(i)+h*(-x(i).*y(i));&lt;br /&gt;
    y(i+1)=y(i)+h*(y(i).*x(i));&lt;br /&gt;
    &lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
%Representamos gráficamente las soluciones&lt;br /&gt;
&lt;br /&gt;
hold on&lt;br /&gt;
&lt;br /&gt;
plot(t,x,'b');&lt;br /&gt;
plot(t,y,'r');&lt;br /&gt;
grid on&lt;br /&gt;
&lt;br /&gt;
legend('Sustancia A: x(t)','Sustancia B: y(t)')&lt;br /&gt;
xlabel('Tiempo (s)')&lt;br /&gt;
ylabel('Concentración (mol/l)')&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
hold off&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
}}&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Método de Runge-Kutta===&lt;br /&gt;
&lt;br /&gt;
El método de resolución numérica de Runge-Kutta, involucra un gran número de parámetros. Para simplificar la implementación de este método en Matlab, el sistema se tratará como una matriz &amp;lt;math&amp;gt;z&amp;lt;/math&amp;gt;. Además, utilizaremos la función ''inline'', con la que declararemos previamente la función algebraica necesaria para el cálculo de los parámetros &amp;lt;math&amp;gt;k_i&amp;lt;/math&amp;gt;, ahorrándonos tener que escribir innumerables veces la correspondiente expresión matemática.&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Primero, expresamos el sistema en forma matricial:&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;(PVI)\begin{cases}&lt;br /&gt;
    x'(t)=-k_1 x(t)y(t) \\&lt;br /&gt;
    y'(t)=k_1 x(t)y(t) \\&lt;br /&gt;
    \\&lt;br /&gt;
    x(0)=1 \\&lt;br /&gt;
    y(0) = 0.01&lt;br /&gt;
\end{cases}\quad t\in[0,10]&lt;br /&gt;
&lt;br /&gt;
\quad \Rightarrow \quad k_1=1\quad \Rightarrow \quad&lt;br /&gt;
&lt;br /&gt;
(PVI)\begin{cases}\vec{z}'(t)=&lt;br /&gt;
   \begin{bmatrix}&lt;br /&gt;
      x'(t) \\&lt;br /&gt;
      y'(t) \\&lt;br /&gt;
   \end{bmatrix}&lt;br /&gt;
=&lt;br /&gt;
      \begin{bmatrix}&lt;br /&gt;
      -x(t)y(t) \\&lt;br /&gt;
      x(t)y(t) \\&lt;br /&gt;
   \end{bmatrix}&lt;br /&gt;
&lt;br /&gt;
 \\ \\ \vec{z}(0)=&lt;br /&gt;
   \begin{bmatrix}&lt;br /&gt;
      x(0) \\&lt;br /&gt;
      y(0) \\&lt;br /&gt;
   \end{bmatrix}&lt;br /&gt;
=&lt;br /&gt;
      \begin{bmatrix}&lt;br /&gt;
      1 \\&lt;br /&gt;
      0.01 \\&lt;br /&gt;
   \end{bmatrix}&lt;br /&gt;
\end{cases}\quad t\in[0,10]&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
A continuación, detallamos la función &amp;lt;math&amp;gt;\vec{F}&amp;lt;/math&amp;gt; de la que dependerán los valores de los parámetros &amp;lt;math&amp;gt;k_i&amp;lt;/math&amp;gt;:&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;\vec{F}(x,y)=\vec{F}(\vec{z})=&lt;br /&gt;
&lt;br /&gt;
\begin{bmatrix}&lt;br /&gt;
    f(\vec{z}) \\&lt;br /&gt;
    g(\vec{z}) \\&lt;br /&gt;
\end{bmatrix}=&lt;br /&gt;
&lt;br /&gt;
\begin{bmatrix}&lt;br /&gt;
    x'(t) \\&lt;br /&gt;
    y'(t) \\&lt;br /&gt;
\end{bmatrix}=&lt;br /&gt;
&lt;br /&gt;
\vec{z}'(t)=&lt;br /&gt;
&lt;br /&gt;
\begin{bmatrix}&lt;br /&gt;
    -x(t)y(t) \\&lt;br /&gt;
    x(t)y(t) \\&lt;br /&gt;
\end{bmatrix}&lt;br /&gt;
\quad \Rightarrow \quad&lt;br /&gt;
&lt;br /&gt;
\begin{cases}&lt;br /&gt;
 [\vec{k_1}] &amp;amp; =  F(\vec{z}_i) \\&lt;br /&gt;
 [\vec{k_2}] &amp;amp; =  F(\vec{z}_i + {1 \over 2}k_1h) \\&lt;br /&gt;
 [\vec{k_3}] &amp;amp; =  F(\vec{z}_i + \frac{1}{2}k_2h) \\&lt;br /&gt;
 [\vec{k_4}] &amp;amp; =  F(\vec{z}_i + k_3h) \\&lt;br /&gt;
\end{cases}\quad [h=0.1]&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Entonces el método RK4 para este problema está dado por la siguiente ecuación:&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;\vec{z}_{i+1} = \vec{z}_{i} + {1 \over 6}h(\vec{k_1}+2\vec{k_2}+2\vec{k_3}+\vec{k_4})&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Mediante el siguiente programa en Matlab calculamos numéricamente la solución y la representamos en un gráfico:&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Archivo:sistema_RK4.png|400px|miniaturadeimagen|derecha|Representación gráfica de las concentraciones de A y B. Resolución del sistema por Runge-Kutta]]&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
%Método de Runge-Kutta&lt;br /&gt;
clc&lt;br /&gt;
&lt;br /&gt;
%Función F=[x'(t); y'(t)]&lt;br /&gt;
F=inline('[-z(1)*z(2);z(1)*z(2)]','z');&lt;br /&gt;
&lt;br /&gt;
%Datos del problema &lt;br /&gt;
x0=1;&lt;br /&gt;
y0=0.01;&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=10;&lt;br /&gt;
h=0.1;&lt;br /&gt;
&lt;br /&gt;
%Vector de variable independiente (t)&lt;br /&gt;
t=t0:h:tN;&lt;br /&gt;
&lt;br /&gt;
%Matriz de variables dependientes z=[x;y]&lt;br /&gt;
z=zeros(2,length(t));&lt;br /&gt;
z(:,1)=[x0;y0];&lt;br /&gt;
&lt;br /&gt;
for i = 1:length(t)-1&lt;br /&gt;
    k1=F(z(:,i));&lt;br /&gt;
    k2=F(z(:,i)+k1.*h/2);&lt;br /&gt;
    k3=F(z(:,i)+k2.*h/2);&lt;br /&gt;
    k4=F(z(:,i)+k3.*h);&lt;br /&gt;
    z(:,i+1)=z(:,i)+h/6.*(k1+2.*k2+2.*k3+k4);&lt;br /&gt;
end&lt;br /&gt;
 &lt;br /&gt;
%Representación gráfica&lt;br /&gt;
hold on&lt;br /&gt;
plot(t,z(1,:))&lt;br /&gt;
plot(t,z(2,:),'r')&lt;br /&gt;
legend('Sustancia A: x(t)','Sustancia B: y(t)')&lt;br /&gt;
xlabel('Tiempo (s)')&lt;br /&gt;
ylabel('Concentración (mol/l)')&lt;br /&gt;
grid on&lt;br /&gt;
%hold off&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
== Interpretación de las gráficas ==&lt;br /&gt;
&lt;br /&gt;
Como cabía esperar, obtenemos la misma solución resolviendo el problema como sistema o como EDO. Podemos observar por los resultados obtenidos que la velocidad de aparición de B es igual a la velocidad de desaparición de A (como dicta el principio de conservación de la masa), que A acaba desapareciendo prácticamente por completo y que la concentración de B termina por estabilizarse alrededor de 1 mol/l. Ambos compuestos alcanzan sus los extremos de sus concentraciones en el mismo instante de tiempo&lt;br /&gt;
&lt;br /&gt;
También cabe destacar que cuando el tiempo transcurrido alcanza 4,5 segundos las concentraciones de ambos compuestos son las mismas.&lt;br /&gt;
&lt;br /&gt;
= Reacción II =&lt;br /&gt;
&lt;br /&gt;
En este apartado vamos a estudiar la reacción propuesta por Alfred J. Lotka en 1920, que es la siguiente:&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt; A + X →_{k1} 2X;&amp;lt;/math&amp;gt;     :&amp;lt;math&amp;gt; X + Y →_{k2} 2Y;&amp;lt;/math&amp;gt;     :&amp;lt;math&amp;gt;Y →_{k3} 2B  &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Como se puede observar, se trata de una reacción compleja integrada por 3 reacciones simples (las dos primeras autocatalíticas) en las que intervienen un total de 4 compuestos, A, B, X e Y. Siguiendo el desarrollo de la reacción, es lógico suponer que A se agotará al comienzo de la reacción, que los máximos de concentración de X e Y se darán en los estados intermedios y que al final el compuesto B será el único restante, siendo el producto final de la reacción.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Interpretación del problema y deducción de las ecuaciones diferenciales ==&lt;br /&gt;
&lt;br /&gt;
Para averiguar cómo evolucionan las concentraciones de los cuatro compuestos durante el desarrollo de la reacción necesitaremos obtener cuatro ecuaciones diferenciales. Para ello nos volveremos a basar en los principios físicos que ya empleamos en la anterior reacción. Definimos A(t), x(t), y(t), y B(t) (A, x, y, B; para ahorrar notación) a las concentraciones de A, X, Y, y B, respectivamente. &lt;br /&gt;
&lt;br /&gt;
En primer lugar aplicamos el Principio de Conservación de la masa, que establece que la suma de las concentraciones de los compuestos es constante (no desaparece masa en el proceso), lo que derivando nos indica que:&lt;br /&gt;
&lt;br /&gt;
: &amp;lt;math&amp;gt; A' + y' + y' + B' = 0 \quad\quad(I)&amp;lt;/math&amp;gt;       &lt;br /&gt;
&lt;br /&gt;
A continuación aplicaremos la Ley de Acción de Masas (velocidad de reacción proporcional al producto de la concentración de los reactivos).&lt;br /&gt;
&lt;br /&gt;
Aplicando esta ley a la última reacción simple obtenemos que: &lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;B'=k_3y \quad\quad(II)&amp;lt;/math&amp;gt;        &lt;br /&gt;
&lt;br /&gt;
En el caso de las concentraciones de X e Y las expresiones resultantes son algo más complicadas ya que estos dos compuestos actúan como reactivos y productos en más de una reacción simple, por lo que la variación de sus concentraciones será la suma de las variaciones de las reacciones en las que aparezcan:&lt;br /&gt;
&lt;br /&gt;
: &amp;lt;math&amp;gt; x' = x'_{1} + x'_{2} → x' = k_{1}Ax - k{2}xy \quad\quad(III)&amp;lt;/math&amp;gt;        &lt;br /&gt;
: &amp;lt;math&amp;gt; y' = y'_{2} + y'_{3} → y' = k_{2}xy − k_3{y} \quad\quad(IV)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Por último sustituimos (II), (III) y (IV) en (I) obteniendo: &lt;br /&gt;
&lt;br /&gt;
: &amp;lt;math&amp;gt; A' + k_{1}Ax - k{2}xy + k_{2}xy − k_3{y}+ k_3y= 0 : &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
De donde obtenemos que:&lt;br /&gt;
&lt;br /&gt;
: &amp;lt;math&amp;gt; A' = -k_{1}Ax &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Ahora que ya tenemos las variaciones de concentración de los compuestos en función de las concentraciones podemos aplicar métodos numéricos que nos lleven a una solución aproximada.&lt;br /&gt;
&lt;br /&gt;
== Resolución numérica del sistema de ecuaciones ==&lt;br /&gt;
&lt;br /&gt;
Una vez obtenidas las ecuaciones y conociendo las condiciones iniciales y los valores de las constantes podemos plantear el problema de valor inicial para luego resolverlo.&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;(PVI)&lt;br /&gt;
\begin{cases}&lt;br /&gt;
    A' = -k_{1}Ax\\&lt;br /&gt;
    x' = k_{1}Ax - k{2}xy\\&lt;br /&gt;
    y' = k_{2}xy − k_3{y}\\&lt;br /&gt;
    B'=k_3y \\&lt;br /&gt;
\\&lt;br /&gt;
    A(0)=5  \\&lt;br /&gt;
    x(0)=5*10^{-4} \\&lt;br /&gt;
    y(0)=10^{-5}\\&lt;br /&gt;
    B(0)=0 \\&lt;br /&gt;
\end{cases}&lt;br /&gt;
\quad t\in[0,200]&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Siendo &amp;lt;math&amp;gt; k_{1}=K_{2}=2k_{3}=0.1 &amp;lt;/math&amp;gt; y las unidades de la concentración mol/l.&lt;br /&gt;
&lt;br /&gt;
=== Método de Euler ===&lt;br /&gt;
&lt;br /&gt;
Aplicamos el método de Euler de forma análoga a como lo hicimos en [[Reacciones_con_autocatálisis._Grupo_D12#Método_de_Euler_2|apartado 2.5.1]]&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Euler lotka0.01.png|400px|miniaturadeimagen|derecha|Representación gráfica de las concentraciones de A, B, X, e Y a lo largo del tiempo. Resoluciónd delsistema por el método de Euler con longitud de paso h=0.01]] &lt;br /&gt;
[[Archivo:Euler lotka0.001.png|400px|miniaturadeimagen|derecha|Representación gráfica de las concentraciones de A, B, X, e Y a lo largo del tiempo. Resoluciónd delsistema por el método de Euler con longitud de paso h=0.001]]&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
&lt;br /&gt;
%Resolución del sistema de la reacción de Lotka por el método de Euler&lt;br /&gt;
&lt;br /&gt;
clear all&lt;br /&gt;
&lt;br /&gt;
%Definimos la variable independiente y establecemos los datos del problema&lt;br /&gt;
%de valor inicial. Para la longitud de paso h introducimos en primer lugar&lt;br /&gt;
%0.01 y luego 0.001&lt;br /&gt;
&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=200;&lt;br /&gt;
h= input('Introduzca una longitud de paso ');&lt;br /&gt;
t = t0:h:tN;&lt;br /&gt;
N=(tN-t0)/h;&lt;br /&gt;
k1 = 0.1;&lt;br /&gt;
k2 = 0.1;&lt;br /&gt;
k3 = 0.05;&lt;br /&gt;
A0 = 5;&lt;br /&gt;
B0 = 0;&lt;br /&gt;
X0 = 5*10^(-4);&lt;br /&gt;
Y0 = 10^(-5);&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
%Definimos las variables dependientes.&lt;br /&gt;
&lt;br /&gt;
A = zeros(1, N-1);&lt;br /&gt;
B = A;&lt;br /&gt;
X = A;&lt;br /&gt;
Y = A;&lt;br /&gt;
&lt;br /&gt;
A(1) = A0;&lt;br /&gt;
B(1) = B0;&lt;br /&gt;
X(1) = X0;&lt;br /&gt;
Y(1) = Y0;&lt;br /&gt;
&lt;br /&gt;
for i = 1:N&lt;br /&gt;
    &lt;br /&gt;
    X(i+1) = X(i) + h*(k1*A(i)*X(i)-k2*Y(i)*X(i));&lt;br /&gt;
    Y(i+1)=Y(i)+h.*(k2.*X(i).*Y(i)-k3.*Y(i));&lt;br /&gt;
    B(i+1) = B(i) + h*(k3*Y(i));&lt;br /&gt;
    A(i+1) = A(i) + h*(-k1*A(i)*X(i));&lt;br /&gt;
   &lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
%Representamos gráficamente la solución&lt;br /&gt;
&lt;br /&gt;
hold on&lt;br /&gt;
&lt;br /&gt;
plot (t,A,'b')&lt;br /&gt;
plot(t, X, 'r')&lt;br /&gt;
plot(t,Y, 'g')&lt;br /&gt;
plot(t, B, 'm')&lt;br /&gt;
legend('Sustancia A: A(t)','Sustancia X: x(t)','Sustancia Y: y(t)','Sustancia B: B(t)','Location','Best')&lt;br /&gt;
xlabel('Tiempo (s)')&lt;br /&gt;
ylabel('Concentración (mol/l)')&lt;br /&gt;
grid on&lt;br /&gt;
&lt;br /&gt;
hold off&lt;br /&gt;
&lt;br /&gt;
}}&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
A continuación tendremos que comprobar si el método es estable. &amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
Un método es estable cuando el error local es pequeño y además este error no se amplifica a lo largo del tiempo. Para calificar la estabilidad del método de Euler resolveremos el sistema anterior con este método, con pasos &amp;quot;h=0.01&amp;quot; y &amp;quot;h=0.001&amp;quot;, y lo compararemos con la resolución del sistema con el método de Heun, que se asemeja más a la solución exacta.&amp;lt;br /&amp;gt;&lt;br /&gt;
En la comparación representaremos en azul el método de Heun y en rojo el método de Euler.&amp;lt;br /&amp;gt;&lt;br /&gt;
Para &amp;quot;h=0.01&amp;quot; tenemos lo siguiente:&lt;br /&gt;
[[Archivo:1estabilidad123.jpg|400px|miniaturadeimagen|izquierda|Comparación entre Método de Heun (Azul) con el Método de Euler con paso h=0.01 (Rojo)]] &lt;br /&gt;
[[Archivo:1estabilidad321.jpg|400px|miniaturadeimagen|derecha|Comparación entre Método de Heun (Azul) con el Método de Euler con paso h=0.01 (Rojo)]] &lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
Para &amp;quot;h=0.001&amp;quot; tenemos lo siguiente:&lt;br /&gt;
[[Archivo:2estabilidad123.jpg|400px|miniaturadeimagen|izquierda|Comparación entre Método de Heun (Azul) con el Método de Euler con paso h=0.001 (Rojo)]] &lt;br /&gt;
[[Archivo:2estabilidad321.jpg|400px|miniaturadeimagen|derecha|Comparación entre Método de Heun (Azul) con el Método de Euler con paso h=0.001 (Rojo)]]&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
Como podemos ver en las imágenes de los dos procesos las gráficas se superponen y no se aprecian diferencias hasta que no ampliamos la imagen. Y esto sucede en todo momento con lo que podemos garantizar que en este caso el método de Euler es estable para los pasos que hemos usado.&lt;br /&gt;
&lt;br /&gt;
=== Método de Heun ===&lt;br /&gt;
&lt;br /&gt;
Si bien el método de resolución numérica de Heun no involucra un número de parámetros tan notable como el método de Runge-Kutta, en este caso tenemos un sistema de 4 ecuaciones diferenciales, por lo que, en aras de simplificar, utilizaremos el mismo criterio que en el [[Reacciones_con_autocatálisis._Grupo_D12#Método_de_Runge-Kutta_2|apartado 2.5.2]].: El sistema se tratará como una matriz &amp;lt;math&amp;gt;z&amp;lt;/math&amp;gt;, y para la obtención de los parámetros &amp;lt;math&amp;gt;k_i&amp;lt;/math&amp;gt; utilizaremos la función ''inline'', con la que declararemos previamente las expresiones necesarias para el cálculo de los parámetros &amp;lt;math&amp;gt;k_i&amp;lt;/math&amp;gt;.&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Primero, expresamos el sistema en forma matricial:&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;(PVI)\begin{cases}&lt;br /&gt;
A'(t)=-k_1 A(t)x(t) \\&lt;br /&gt;
x'(t)=k_1 A(t)x(t)-k_2 x(t)y(t) \\&lt;br /&gt;
y'(t)=k_2 x(t)y(t)-k_3 y(t) \\&lt;br /&gt;
B'(t)=k_3 x(t)y(t) \\ \\&lt;br /&gt;
A(0)=5 \\&lt;br /&gt;
x(0)=5·10^{-4} \\&lt;br /&gt;
y(0)=10^{-5} \\&lt;br /&gt;
B(0) = 0&lt;br /&gt;
\end{cases}\quad t\in[0,200]&lt;br /&gt;
&lt;br /&gt;
\quad \Rightarrow \quad&lt;br /&gt;
&lt;br /&gt;
\begin{cases}&lt;br /&gt;
k_1=0.1 \\&lt;br /&gt;
k_2=0.1 \\&lt;br /&gt;
k_3=0.05 \\&lt;br /&gt;
&lt;br /&gt;
\end{cases}&lt;br /&gt;
&lt;br /&gt;
\quad \Rightarrow \quad&lt;br /&gt;
&lt;br /&gt;
(PVI)\begin{cases}\vec{z}'(t)=&lt;br /&gt;
   \begin{bmatrix}&lt;br /&gt;
      A'(t) \\&lt;br /&gt;
      x'(t) \\&lt;br /&gt;
      y'(t) \\&lt;br /&gt;
      B'(t) \\&lt;br /&gt;
   \end{bmatrix}&lt;br /&gt;
=&lt;br /&gt;
      \begin{bmatrix}&lt;br /&gt;
      -0.1 A(t)x(t) \\&lt;br /&gt;
      0.1 A(t)x(t)-0.1 x(t)y(t) \\&lt;br /&gt;
      0.1 x(t)y(t)-0.05 y(t) \\&lt;br /&gt;
      0.05 y(t)x(t)\\&lt;br /&gt;
   \end{bmatrix}&lt;br /&gt;
&lt;br /&gt;
 \\ \\ \vec{z}(0)=&lt;br /&gt;
   \begin{bmatrix}&lt;br /&gt;
      A(0) \\&lt;br /&gt;
      x(0) \\&lt;br /&gt;
      y(0) \\&lt;br /&gt;
      B(0) \\&lt;br /&gt;
   \end{bmatrix}&lt;br /&gt;
=&lt;br /&gt;
      \begin{bmatrix}&lt;br /&gt;
      5 \\&lt;br /&gt;
      5·10^{-4} \\&lt;br /&gt;
      10^{-5} \\&lt;br /&gt;
      0&lt;br /&gt;
   \end{bmatrix}&lt;br /&gt;
\end{cases}\quad t\in[0,200]&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
A continuación, detallamos la función &amp;lt;math&amp;gt;\vec{F}&amp;lt;/math&amp;gt; de la que dependerán los valores de los parámetros &amp;lt;math&amp;gt;k_i&amp;lt;/math&amp;gt;:&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;\vec{F}(A,x,y,B)=\vec{F}(\vec{z})=&lt;br /&gt;
\begin{bmatrix}&lt;br /&gt;
    f(\vec{z}) \\ &lt;br /&gt;
    g(\vec{z}) \\ &lt;br /&gt;
    h(\vec{z}) \\ &lt;br /&gt;
    i(\vec{z}) \\ &lt;br /&gt;
\end{bmatrix}=&lt;br /&gt;
\begin{bmatrix}&lt;br /&gt;
    A'(t) \\&lt;br /&gt;
    x'(t) \\&lt;br /&gt;
    y'(t) \\&lt;br /&gt;
    B'(t) \\&lt;br /&gt;
\end{bmatrix}=&lt;br /&gt;
\vec{z}'(t)=&lt;br /&gt;
      \begin{bmatrix}&lt;br /&gt;
      -0.1 A(t)x(t) \\&lt;br /&gt;
      0.1 A(t)x(t)-0.1 x(t)y(t) \\&lt;br /&gt;
      0.1 x(t)y(t)-0.05 y(t) \\&lt;br /&gt;
      0.05 y(t)x(t)\\&lt;br /&gt;
   \end{bmatrix}&lt;br /&gt;
&lt;br /&gt;
\quad \Rightarrow \quad &lt;br /&gt;
&lt;br /&gt;
\begin{cases}&lt;br /&gt;
 [\vec{k_1}] &amp;amp; =  F(\vec{z}_i) \\&lt;br /&gt;
 [\vec{k_2}] &amp;amp; =  F(\vec{z}_i + {1 \over 2}k_1h) \\&lt;br /&gt;
\end{cases}\quad [h=0.01]&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Entonces el método de Heun para este problema está dado por la siguiente ecuación:&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;\vec{z}_{i+1} = \vec{z}_{i} + {1 \over 2}h(\vec{k_1}+\vec{k_2})&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Mediante el siguiente programa en Matlab calculamos numéricamente la solución y la representamos en un gráfico:&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Archivo:AXYBRK4.png|400px|miniaturadeimagen|derecha|Representación gráfica de las concentraciones de A,X,Y y B. Resolución del sistema por Heun]]&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
%Método de Heun&lt;br /&gt;
clc&lt;br /&gt;
&lt;br /&gt;
%Función F=[A'(t);x'(t); y'(t);B'(t)]&lt;br /&gt;
F=inline('0.1.*[-z(1)*z(2);z(1)*z(2)-z(2)*z(3);z(2)*z(3)-z(3)/2;z(3)/2]','z');&lt;br /&gt;
&lt;br /&gt;
%Datos del problema&lt;br /&gt;
A0=5;&lt;br /&gt;
x0=5*10^-4;&lt;br /&gt;
y0=10^(-5);&lt;br /&gt;
B0=0;&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=200;&lt;br /&gt;
h=0.1;&lt;br /&gt;
&lt;br /&gt;
%Vector de variable independiente (t)&lt;br /&gt;
t=t0:h:tN;&lt;br /&gt;
&lt;br /&gt;
%Matriz de variables dependientes z=[A;x;y;B]&lt;br /&gt;
z=zeros(4,length(t));&lt;br /&gt;
z(:,1)=[A0;x0;y0;B0];&lt;br /&gt;
&lt;br /&gt;
for i = 1:length(t)-1&lt;br /&gt;
    k1=F(z(:,i));&lt;br /&gt;
    k2=F(z(:,i)+k1.*h/2);&lt;br /&gt;
    z(:,i+1)=z(:,i)+h/2.*(k1+k2);&lt;br /&gt;
end&lt;br /&gt;
 &lt;br /&gt;
%Representación gráfica&lt;br /&gt;
hold on&lt;br /&gt;
plot(t,z(1,:),'b')&lt;br /&gt;
plot(t,z(2,:),'r')&lt;br /&gt;
plot(t,z(3,:),'g')&lt;br /&gt;
plot(t,z(4,:),'m')&lt;br /&gt;
legend('Sustancia A: A(t)','Sustancia X: x(t)','Sustancia Y: y(t)','Sustancia B: B(t)','Location','Best')&lt;br /&gt;
xlabel('Tiempo (s)')&lt;br /&gt;
ylabel('Concentración (mol/l)')&lt;br /&gt;
grid on&lt;br /&gt;
hold off&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
== Interpretación de las gráficas == &lt;br /&gt;
 &lt;br /&gt;
El proceso comienza con el predominio absoluto del compuesto A en la concentración total, siendo la presencia de los otros tres compuestos despreciable. Durante los primeros segundos la situación apenas cambia, pero tras los diez primeros segundos la concentración de A cae bruscamente mientras que la concentración de X aumenta a la misma velocidad; antes de llegar a los veinte segundos transcurridos las concentraciones de ambos compuestos se igualan y otros quince segundos más tarde el compuesto A  prácticamente ha desaparecido y el X ha alcanzado su concentración máxima (5 mol/litro).&lt;br /&gt;
&lt;br /&gt;
Es entonces cuando concluye la primera reacción y comienzan las otras dos, al no haber más compuesto A que cree compuesto X. La velocidad de aparición de Y es inicialmente mayor que la de B, superando al poco tiempo en concentración a la sustancia X. Sin embargo, llega un momento en el que la concentración de X es tan baja que se ralentiza la creación de Y y pronto empieza a disminuir su concentración tras alcanzar un máximo en torno a los 56 segundos, perdiendo peso la segunda reacción en beneficio de la tercera.&lt;br /&gt;
&lt;br /&gt;
Tras los 60 segundos de reacción el compuesto X pasa a tener una concentración despreciable, por lo que la única reacción simple que se sigue desarrollando es la tercera, destruyéndose reactivo Y y creándose producto B. La concentración de Y va reduciéndose paulatinamente hasta que en torno a los 160 segundos de reacción alcanza niveles insignificantes mientras que la concentración de B alcanza su máximo de 5 mol/litro.&lt;br /&gt;
&lt;br /&gt;
Es interesante observar que en todo momento se cumple el Principio de Conservación de la masa: la suma en cualquier momento de las concentraciones de las sustancias es 5 mol /litro. Esto es fácilmente comprobable en los momentos en que las concentraciones de A, X y B alcanzan su máximo de 5 mol/litro y el resto de concentraciones son nulas o despreciables. &lt;br /&gt;
[[Categoría:Ecuaciones Diferenciales]]&lt;br /&gt;
[[Categoría:ED14/15]]&lt;br /&gt;
[[Categoría:Trabajos 2014-15]]&lt;/div&gt;</summary>
		<author><name>Javier Ruiz de Galarreta López</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Reacciones_con_autocat%C3%A1lisis._Grupo_D12&amp;diff=27515</id>
		<title>Reacciones con autocatálisis. Grupo D12</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Reacciones_con_autocat%C3%A1lisis._Grupo_D12&amp;diff=27515"/>
				<updated>2015-03-06T10:11:48Z</updated>
		
		<summary type="html">&lt;p&gt;Javier Ruiz de Galarreta López: /* Método de Euler */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{ TrabajoED | Reacciones con autocatálisis. Grupo D12 | [[:Categoría:Ecuaciones Diferenciales|Ecuaciones Diferenciales]]|[[:Categoría:ED14/15|Curso 2014-15]] | Javier Ruiz de Galarreta López, Argimiro Martínez López, Eduardo Moyano García, Alberto Rodríguez Ruiz. }}&lt;br /&gt;
&lt;br /&gt;
= Introducción: objetivos y metodología =&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
El objetivo de este trabajo es estudiar las concentraciones de los reactivos y productos de una reacción química a lo largo de la evolución en el tiempo de dicha reacción. Para ello modelizaremos el proceso empleando ecuaciones diferenciales y teniendo en cuenta la Ley de Acción de Masas y el Principio de Conservación de la materia.&lt;br /&gt;
&lt;br /&gt;
Al ser las ecuaciones y sistemas que se nos presentan de difícil resolución analítica, utilizaremos el programa informático Matlab para resolverlos mediante métodos numéricos como el de Euler, el del Trapecio, el de Runge-Kutta y el de Heun. &lt;br /&gt;
&lt;br /&gt;
Plasmaremos las soluciones en gráficos que nos permitirán dar una interpretación físico química a los resultados.&lt;br /&gt;
&lt;br /&gt;
= Reacción I =&lt;br /&gt;
&lt;br /&gt;
En primer lugar consideramos una reacción química irreversible en una solución bien mezclada, que se desarrolla para un volumen y una temperatura constantes, y en la que uno de los componentes (B, en este caso), hace de efecto catalítico.&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt; A + B →_{k1} 2B  &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Para desarrollar nuestro análisis nos apoyaremos en dos leyes físico químicas:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''Ley de acción de masas''': Enunciada por Guldberg y Waage en 1864, establece, entre otras cosas, que  la velocidad de&lt;br /&gt;
reacción es proporcional al producto de las concentraciones de los reactivos.&lt;br /&gt;
&lt;br /&gt;
'''Principio de conservación de la masa''': Establece que en una reacción química ordinaria la masa permanece constante, siendo la masa consumida de los reactivos igual a la masa obtenida de los productos. Fue elaborada independientemente por Míjail Lomonósov en 1745 y Antoine Lavoisier en 1785.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Interpretación del problema y deducción de las ecuaciones diferenciales ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Para hallar las ecuaciones diferenciales que nos describan cómo se desarrolla la reacción en el tiempo nos basaremos en las dos leyes enunciadas anteriormente. En primer lugar, definimos nuestra variable independiente como el tiempo &amp;lt;math&amp;gt;t&amp;lt;/math&amp;gt; en segundos. Las dos variables dependientes serán las concentraciones de los compuestos A y B, que denominaremos &amp;lt;math&amp;gt;x(t)&amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt;y(t)&amp;lt;/math&amp;gt;, ambas expresadas en mol/l. &lt;br /&gt;
&lt;br /&gt;
El principio de conservación de la masa expone que la suma de las concentraciones de los reactivos y los productos es constante. Esto equivale, derivando la expresión &amp;lt;math&amp;gt;x(t)+y(t)=cte&amp;lt;/math&amp;gt;, a que  desaparece tanto reactivo como producto aparece, o lo que es lo mismo, que la velocidad de aparición del producto es igual a la velocidad de desaparición (velocidad de aparición negativa) del reactivo:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;x'(t)=-y'(t)&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
La otra ecuación que necesitamos la obtenemos directamente de aplicar la Ley de acción de masas, que establece que la velocidad de la reacción (la velocidad a la que aparece el producto o desaparece el reactivo) es igual al producto de las concentraciones por una constante.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;y'(t)=k_1x(t)y(t)&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Obtención del problema de valor inicial ==&lt;br /&gt;
Una vez demostrado el origen de las ecuaciones (1) y (2) en el apartado anterior, obtendremos el problema de valor inicial (PVI) mediante las operaciones detalladas a continuación:&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;x'(t)+y'(t)=0\quad\quad(1)&amp;lt;/math&amp;gt;&lt;br /&gt;
:&amp;lt;math&amp;gt;y'(t)=k_1x(t)y(t)\quad\quad(2)&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Integrando (1) obtenemos (3):&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
:&amp;lt;math&amp;gt;\int_\mathbb{D} (\frac{dx(t)}{dt} + \frac{dy(t)}{dt})\,dt =\int_\mathbb{D} 0\,dt \quad \Rightarrow \quad x(t)+y(t)=k_2\quad \Rightarrow \quad x(t)=k_2-y(t)\quad\quad(3)&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Sustituyendo (3) en (2), obtenemos (4):&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;y'(t)=k_1x(t)y(t)\quad \Rightarrow \quad y'(t)=k_1(k_2-y(t))y(t)\quad \Rightarrow \quad y'(t)=k_1k_2y(t)-k_1y^2(t)\quad\quad(4)&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Conocemos las concentraciones iniciales de A y de B, por lo que podemos obtener el valor de la constante k&amp;lt;sub&amp;gt;2&amp;lt;/sub&amp;gt;:&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;[A]:\quad x(0)=1 mol/l;\quad\quad [B]:\quad y(0)=0,01 mol/l&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;x(t)+y(t)=k_2\quad \Rightarrow \quad x(0)+y(0)=k_2\quad \Rightarrow \quad 1+0,01=k_2\quad \Rightarrow \quad k_2=1,01&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Por último, conocemos también el valor de k&amp;lt;sub&amp;gt;1&amp;lt;/sub&amp;gt;, por lo que podremos plantear a continuación el correspondiente PVI:&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;k_1=1&amp;lt;/math&amp;gt;&lt;br /&gt;
:&amp;lt;math&amp;gt;(PVI)\begin{cases}y'(t)=1,01y(t)-y^2(t) \\ \\&lt;br /&gt;
y(0) = 0,01 \end{cases}\quad (t,y)\in[0,10]\times\mathbb{R}&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Unicidad de la solución ==&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Existencia-y-unicidad.png|200px|miniaturadeimagen|derecha|Intersección B con dominio]]&lt;br /&gt;
&lt;br /&gt;
Aplicamos a continuación el Teorema de Existencia y Unicidad:&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Sea &amp;lt;math&amp;gt;f(t,y)=y'(t) \Rightarrow f(t,y)=1.01y(t)-y^2(t)\quad&amp;lt;/math&amp;gt;, y &amp;lt;math&amp;gt;\quad\frac{\partial }{\partial y} f(t,y) = 1.01-2y(t)&amp;lt;/math&amp;gt;.&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
Y sea &amp;lt;math&amp;gt;B[(t_0,y_0),r],\quad r&amp;gt;0,\quad en (t_0,y_0)=(0,0.01)&amp;lt;/math&amp;gt;.&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;f(t,y)&amp;lt;/math&amp;gt; es continua en &amp;lt;math&amp;gt; \mathbb{B}\cap \mathbb{D}\quad \Rightarrow \quad \exists  y(t)\quad /\quad y'(t)=1,01y(t)-y^2(t)&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;math&amp;gt;\frac{\partial }{\partial y} f(t,y)&amp;lt;/math&amp;gt; es continua en &amp;lt;math&amp;gt; \mathbb{B}\cap \mathbb{D}\quad \Rightarrow \quad \exists !  y(t)\quad /\quad y'(t)=1,01y(t)-y^2(t)&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Con lo que queda demostrado que el (PVI) tiene solución y además esta es única.&lt;br /&gt;
&lt;br /&gt;
== Resolución numérica del problema de valor inicial ==&lt;br /&gt;
&lt;br /&gt;
En este apartado resolveremos el problema de valor inicial planteado anteriormente con tres métodos de integración numérica: el método de Euler, el método del Trapecio y el método de Runge-Kutta de orden 4.&lt;br /&gt;
&lt;br /&gt;
=== Método de Euler ===&lt;br /&gt;
&lt;br /&gt;
El método de Euler, llamado así en honor al matemático Leonhard Euler, es un procedimiento de integración numérica. Su expresión matemática es: &lt;br /&gt;
&amp;lt;math&amp;gt;  PVI = &lt;br /&gt;
   \left \{&lt;br /&gt;
      \begin{array}{rcl}y_0\\&lt;br /&gt;
           y_{n+1} = y_n + h*f(t_n,y_n)\\ &lt;br /&gt;
      \end{array}&lt;br /&gt;
   \right .&lt;br /&gt;
   &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
A continuación emplearemos esta expresión en un programa de Matlab para obtener una aproximación de las soluciones. El código de dicho programa es el siguiente.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Eulergrafica.png|400px|miniaturadeimagen|derecha|Representación gráfica y(t). Método de Euler]]&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
%Método de Euler&lt;br /&gt;
clc&lt;br /&gt;
&lt;br /&gt;
%Datos iniciales&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=4;&lt;br /&gt;
y0=0.01;&lt;br /&gt;
h=0.1;&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=10;&lt;br /&gt;
&lt;br /&gt;
%Cálculo de subintervalos&lt;br /&gt;
N=round((tN-t0)/h);&lt;br /&gt;
t=t0:h:tN;&lt;br /&gt;
&lt;br /&gt;
%Creamos el vector donde vamos a guardar las soluciones&lt;br /&gt;
y=zeros(1,N+1);&lt;br /&gt;
y(1)=y0;&lt;br /&gt;
&lt;br /&gt;
%Euler&lt;br /&gt;
for i=1:N;&lt;br /&gt;
    y(i+1)=y(i)+h*(1.01*y(i)-(y(i)).^2);&lt;br /&gt;
end&lt;br /&gt;
%Tabla de Resultados&lt;br /&gt;
[t',y']&lt;br /&gt;
x=1.01-y;&lt;br /&gt;
hold on &lt;br /&gt;
plot(t,y,'r')&lt;br /&gt;
plot(t,x,'b')&lt;br /&gt;
hold off&lt;br /&gt;
legend('Sustancia B: y(t)','Sustancia A: x(t)','Location','best');&lt;br /&gt;
xlabel('Tiempo (s)')&lt;br /&gt;
ylabel('Concentración (mol/l)')&lt;br /&gt;
grid on&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
=== Método del trapecio ===&lt;br /&gt;
&lt;br /&gt;
Vamos a aplicar un método de integración numérica conocido como el Método del Trapecio por aproximar el valor de la integral al del área de un trapecio. Su expresión matemática es:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;  PVI = &lt;br /&gt;
   \left \{&lt;br /&gt;
      \begin{array}{rcl}&lt;br /&gt;
          y_0\\&lt;br /&gt;
           y_{n+1} = y_n + \frac{h}{2}*f(t_n,y_n)\\ &lt;br /&gt;
      \end{array}&lt;br /&gt;
   \right .&lt;br /&gt;
   &amp;lt;/math&amp;gt;&lt;br /&gt;
Introducimos esta expresión en el código y obtenemos la gráfica de la solución.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Trapeciografica.png|400px|miniaturadeimagen|derecha|Representación gráfica y(t). Método del Trapecio]]&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
%Método del Trapecio&lt;br /&gt;
clc&lt;br /&gt;
&lt;br /&gt;
%Datos iniciales&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=4;&lt;br /&gt;
y0=0.01;&lt;br /&gt;
h=0.1;&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=10;&lt;br /&gt;
&lt;br /&gt;
%Cálculo de subintervalos&lt;br /&gt;
N=round((tN-t0)/h);&lt;br /&gt;
t=t0:h:tN;&lt;br /&gt;
&lt;br /&gt;
%Creamos el vector donde vamos a guardar las soluciones&lt;br /&gt;
y=zeros(1,N+1);&lt;br /&gt;
y(1)=y0;&lt;br /&gt;
&lt;br /&gt;
for i=1:N&lt;br /&gt;
y(i+1)=(((1-(h/2)*1.01)-sqrt(((1-(h/2)*1.01)^2)+4*(h/2)*((1+(h/2)*1.01)*y(i)-(h/2)*(y(i))^2)))/-h);&lt;br /&gt;
end&lt;br /&gt;
%Sacamos la tabla de resultados&lt;br /&gt;
[t',y']&lt;br /&gt;
x=1.01-y;&lt;br /&gt;
%Gráfico&lt;br /&gt;
hold on&lt;br /&gt;
plot(t,y,'r')&lt;br /&gt;
plot(t,x,'b')&lt;br /&gt;
legend('Sustancia B: y(t)','Sustancia A: x(t)','Location','best');&lt;br /&gt;
xlabel('Tiempo (s)')&lt;br /&gt;
ylabel('Concentración (mol/l)')&lt;br /&gt;
grid on&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
=== Método de Runge-Kutta ===&lt;br /&gt;
&lt;br /&gt;
El método de resolución numérica de Runge-Kutta, involucra un gran número de parámetros. Para simplificar la implementación de este método en Matlab, utilizaremos la función ''inline'', con la que declararemos previamente la función algebraica necesaria para el cálculo de los parámetros &amp;lt;math&amp;gt;k_i&amp;lt;/math&amp;gt;, ahorrándonos tener que escribir innumerables veces la correspondiente expresión matemática.&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
A continuación, detallamos la función &amp;lt;math&amp;gt;f(y)&amp;lt;/math&amp;gt; de la que dependerán los valores de los parámetros &amp;lt;math&amp;gt;k_i&amp;lt;/math&amp;gt;:&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;f(y)=y'(t)=1.01y(t)-y(t)^2&lt;br /&gt;
&lt;br /&gt;
\quad \Rightarrow \quad&lt;br /&gt;
&lt;br /&gt;
\begin{cases}&lt;br /&gt;
 k_1 &amp;amp; =  f(y_i) \\&lt;br /&gt;
 k_2 &amp;amp; =  f(y_i + {1 \over 2}k_1h) \\&lt;br /&gt;
 k_3 &amp;amp; =  f(y_i + \frac{1}{2}k_2h) \\&lt;br /&gt;
 k_4 &amp;amp; =  f(y_i + k_3h) \\&lt;br /&gt;
\end{cases}\quad [h=0.1]&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Entonces el método RK4 para este problema está dado por la siguiente ecuación:&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;y_{i+1} = y_{i} + {1 \over 6}h(k_1+2k_2+2k_3+k_4)&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Mediante el siguiente programa en Matlab calculamos numéricamente la solución y la representamos en un gráfico:&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Archivo:RK4II.png|400px|miniaturadeimagen|derecha|Representación gráfica y(t). Método Runge-Kutta]]&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
%Método de Runge-Kutta&lt;br /&gt;
clc&lt;br /&gt;
&lt;br /&gt;
%Función f(t)=y'(t)&lt;br /&gt;
fy=inline('1.01*y-y^2','y');&lt;br /&gt;
&lt;br /&gt;
%Datos del problema&lt;br /&gt;
y0=0.01;&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=10;&lt;br /&gt;
h=0.1;&lt;br /&gt;
&lt;br /&gt;
%Variable independiente (t)&lt;br /&gt;
t=t0:h:tN;&lt;br /&gt;
&lt;br /&gt;
%Variable dependiente (y)&lt;br /&gt;
y=zeros(1,length(t));&lt;br /&gt;
y(1)=y0;&lt;br /&gt;
&lt;br /&gt;
for i=1:length(t)-1&lt;br /&gt;
    k1=fy(y(i));&lt;br /&gt;
    k2=fy(y(i)+k1/2*h);&lt;br /&gt;
    k3=fy(y(i)+k2/2*h);&lt;br /&gt;
    k4=fy(y(i)+k3*h);&lt;br /&gt;
    y(i+1)=y(i)+h/6*(k1+2*k2+2*k3+k4);&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
%Variable dependiente (x)&lt;br /&gt;
x=1.01-y;&lt;br /&gt;
&lt;br /&gt;
%Representación gráfica&lt;br /&gt;
hold on&lt;br /&gt;
plot(t,x,'b')&lt;br /&gt;
plot(t,y,'r')&lt;br /&gt;
legend('Sustancia A: x(t)','Sustancia B: y(t)')&lt;br /&gt;
xlabel('Tiempo (s)')&lt;br /&gt;
ylabel('Concentración (mol/l)')&lt;br /&gt;
grid on&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
=== Comparación de métodos===&lt;br /&gt;
&lt;br /&gt;
Podemos observar fácilmente que las gráficas obtenidas con los diferentes métodos son iguales a primera vista. Sin embargo, superponiéndolas queda patente que no son exactamente iguales debido a que los métodos no poseen la misma precisión y , al operar todos con la misma longitud de paso, unos aproximan la solución exacta mejor que otros. Así se observa en estas imágenes:&lt;br /&gt;
&lt;br /&gt;
[[Archivo:comparativa1.jpg|400px|miniaturadeimagen|izquierda|Comparación de métodos]]&lt;br /&gt;
[[Archivo:comparativa2.jpg|400px|miniaturadeimagen|derecha|Comparación de métodos]]&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
Como podemos comprobar en las imágenes, el método de Euler es menos preciso que el del trapecio o el de Runge-Kutta.&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Resolución en forma de sistema de ecuaciones ==&lt;br /&gt;
&lt;br /&gt;
A continuación vamos a plantear el problema de valor inicial con un sistema no lineal de dos ecuaciones equivalente al problema resuelto anteriormente.&lt;br /&gt;
&lt;br /&gt;
Estas ecuaciones serán:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;(PVI)&lt;br /&gt;
\begin{cases}&lt;br /&gt;
    y'(t)=k_1 x(t)y(t) \\&lt;br /&gt;
    x'(t)=-k_1 x(t)y(t) \\&lt;br /&gt;
    \\&lt;br /&gt;
    x(0)=1 \\&lt;br /&gt;
    y(0) = 0.01&lt;br /&gt;
\end{cases}&lt;br /&gt;
\quad t\in[0,10]&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Resolveremos el problema por el método de Euler y por el método de Runge-Kutta, plasmando las soluciones en gráficos.&lt;br /&gt;
&lt;br /&gt;
=== Método de Euler ===&lt;br /&gt;
&lt;br /&gt;
En este caso aplicaremos en el siguiente código la expresión para EDO a cada una de las ecuaciones que conforma el sistema, obteniendo la correspondiente gráfica.&lt;br /&gt;
 &lt;br /&gt;
[[Archivo:SistEuler.png|400px|miniaturadeimagen|derecha|Representación gráfica de las concentraciones de A y B. Resolución del sistema por Euler]]&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
&lt;br /&gt;
%Resolución del sistema por el método de Euler&lt;br /&gt;
&lt;br /&gt;
clear all&lt;br /&gt;
&lt;br /&gt;
%Definimos el vector de la variable independiente, el número de&lt;br /&gt;
%subintervalos y la longitud de paso&lt;br /&gt;
&lt;br /&gt;
t0 = 0;&lt;br /&gt;
tN = 10;&lt;br /&gt;
h = 0.1;&lt;br /&gt;
t = t0:h:tN&lt;br /&gt;
N = (tN-t0)/h;&lt;br /&gt;
&lt;br /&gt;
%Definimos los vectores de las variables dependientes&lt;br /&gt;
&lt;br /&gt;
x = zeros(1, N+1);&lt;br /&gt;
y = zeros(1, N+1);&lt;br /&gt;
&lt;br /&gt;
x(1) = 1;&lt;br /&gt;
y(1) = 0.01;&lt;br /&gt;
&lt;br /&gt;
for i = 1:N&lt;br /&gt;
    &lt;br /&gt;
    x(i+1)=x(i)+h*(-x(i).*y(i));&lt;br /&gt;
    y(i+1)=y(i)+h*(y(i).*x(i));&lt;br /&gt;
    &lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
%Representamos gráficamente las soluciones&lt;br /&gt;
&lt;br /&gt;
hold on&lt;br /&gt;
&lt;br /&gt;
plot(t,x,'b');&lt;br /&gt;
plot(t,y,'r');&lt;br /&gt;
grid on&lt;br /&gt;
&lt;br /&gt;
legend('Sustancia A: x(t)','Sustancia B: y(t)')&lt;br /&gt;
xlabel('Tiempo (s)')&lt;br /&gt;
ylabel('Concentración (mol/l)')&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
hold off&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
}}&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
A continuación tendremos que comprobar si el método es estable.&lt;br /&gt;
Un método es estable cuando el error local es pequeño y además este error no se amplifica a lo largo del tiempo. Para calificar la estabilidad del método de Euler resolveremos el sistema usando &amp;quot;h=0.01&amp;quot; y &amp;quot;h=0.001&amp;quot;. Para ello usaremos el mismo programa anterior simplemente variando h. La línea azul representa el programa que usa &amp;quot;h=0.01&amp;quot; y la línea roja representa el programa que usa &amp;quot;h=0.001&amp;quot;&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Comparacioneulers123.jpg|400px|miniaturadeimagen|izquierda|Representación gráfica y(t). Método de Euler]]&lt;br /&gt;
[[Archivo:Comparacioneulers321.jpg|400px|miniaturadeimagen|derecha|Representación gráfica y(t). Método de Euler]]&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
Como podemos ver en la primera imágen las gráficas se superponen y no se aprecian diferencias hasta que no ampliamos la imagen. Y esto sucede en todo momento con lo que podemos garantizar que en este caso es estable.&lt;br /&gt;
&lt;br /&gt;
=== Método de Runge-Kutta===&lt;br /&gt;
&lt;br /&gt;
El método de resolución numérica de Runge-Kutta, involucra un gran número de parámetros. Para simplificar la implementación de este método en Matlab, el sistema se tratará como una matriz &amp;lt;math&amp;gt;z&amp;lt;/math&amp;gt;. Además, utilizaremos la función ''inline'', con la que declararemos previamente la función algebraica necesaria para el cálculo de los parámetros &amp;lt;math&amp;gt;k_i&amp;lt;/math&amp;gt;, ahorrándonos tener que escribir innumerables veces la correspondiente expresión matemática.&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Primero, expresamos el sistema en forma matricial:&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;(PVI)\begin{cases}&lt;br /&gt;
    x'(t)=-k_1 x(t)y(t) \\&lt;br /&gt;
    y'(t)=k_1 x(t)y(t) \\&lt;br /&gt;
    \\&lt;br /&gt;
    x(0)=1 \\&lt;br /&gt;
    y(0) = 0.01&lt;br /&gt;
\end{cases}\quad t\in[0,10]&lt;br /&gt;
&lt;br /&gt;
\quad \Rightarrow \quad k_1=1\quad \Rightarrow \quad&lt;br /&gt;
&lt;br /&gt;
(PVI)\begin{cases}\vec{z}'(t)=&lt;br /&gt;
   \begin{bmatrix}&lt;br /&gt;
      x'(t) \\&lt;br /&gt;
      y'(t) \\&lt;br /&gt;
   \end{bmatrix}&lt;br /&gt;
=&lt;br /&gt;
      \begin{bmatrix}&lt;br /&gt;
      -x(t)y(t) \\&lt;br /&gt;
      x(t)y(t) \\&lt;br /&gt;
   \end{bmatrix}&lt;br /&gt;
&lt;br /&gt;
 \\ \\ \vec{z}(0)=&lt;br /&gt;
   \begin{bmatrix}&lt;br /&gt;
      x(0) \\&lt;br /&gt;
      y(0) \\&lt;br /&gt;
   \end{bmatrix}&lt;br /&gt;
=&lt;br /&gt;
      \begin{bmatrix}&lt;br /&gt;
      1 \\&lt;br /&gt;
      0.01 \\&lt;br /&gt;
   \end{bmatrix}&lt;br /&gt;
\end{cases}\quad t\in[0,10]&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
A continuación, detallamos la función &amp;lt;math&amp;gt;\vec{F}&amp;lt;/math&amp;gt; de la que dependerán los valores de los parámetros &amp;lt;math&amp;gt;k_i&amp;lt;/math&amp;gt;:&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;\vec{F}(x,y)=\vec{F}(\vec{z})=&lt;br /&gt;
&lt;br /&gt;
\begin{bmatrix}&lt;br /&gt;
    f(\vec{z}) \\&lt;br /&gt;
    g(\vec{z}) \\&lt;br /&gt;
\end{bmatrix}=&lt;br /&gt;
&lt;br /&gt;
\begin{bmatrix}&lt;br /&gt;
    x'(t) \\&lt;br /&gt;
    y'(t) \\&lt;br /&gt;
\end{bmatrix}=&lt;br /&gt;
&lt;br /&gt;
\vec{z}'(t)=&lt;br /&gt;
&lt;br /&gt;
\begin{bmatrix}&lt;br /&gt;
    -x(t)y(t) \\&lt;br /&gt;
    x(t)y(t) \\&lt;br /&gt;
\end{bmatrix}&lt;br /&gt;
\quad \Rightarrow \quad&lt;br /&gt;
&lt;br /&gt;
\begin{cases}&lt;br /&gt;
 [\vec{k_1}] &amp;amp; =  F(\vec{z}_i) \\&lt;br /&gt;
 [\vec{k_2}] &amp;amp; =  F(\vec{z}_i + {1 \over 2}k_1h) \\&lt;br /&gt;
 [\vec{k_3}] &amp;amp; =  F(\vec{z}_i + \frac{1}{2}k_2h) \\&lt;br /&gt;
 [\vec{k_4}] &amp;amp; =  F(\vec{z}_i + k_3h) \\&lt;br /&gt;
\end{cases}\quad [h=0.1]&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Entonces el método RK4 para este problema está dado por la siguiente ecuación:&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;\vec{z}_{i+1} = \vec{z}_{i} + {1 \over 6}h(\vec{k_1}+2\vec{k_2}+2\vec{k_3}+\vec{k_4})&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Mediante el siguiente programa en Matlab calculamos numéricamente la solución y la representamos en un gráfico:&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Archivo:sistema_RK4.png|400px|miniaturadeimagen|derecha|Representación gráfica de las concentraciones de A y B. Resolución del sistema por Runge-Kutta]]&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
%Método de Runge-Kutta&lt;br /&gt;
clc&lt;br /&gt;
&lt;br /&gt;
%Función F=[x'(t); y'(t)]&lt;br /&gt;
F=inline('[-z(1)*z(2);z(1)*z(2)]','z');&lt;br /&gt;
&lt;br /&gt;
%Datos del problema &lt;br /&gt;
x0=1;&lt;br /&gt;
y0=0.01;&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=10;&lt;br /&gt;
h=0.1;&lt;br /&gt;
&lt;br /&gt;
%Vector de variable independiente (t)&lt;br /&gt;
t=t0:h:tN;&lt;br /&gt;
&lt;br /&gt;
%Matriz de variables dependientes z=[x;y]&lt;br /&gt;
z=zeros(2,length(t));&lt;br /&gt;
z(:,1)=[x0;y0];&lt;br /&gt;
&lt;br /&gt;
for i = 1:length(t)-1&lt;br /&gt;
    k1=F(z(:,i));&lt;br /&gt;
    k2=F(z(:,i)+k1.*h/2);&lt;br /&gt;
    k3=F(z(:,i)+k2.*h/2);&lt;br /&gt;
    k4=F(z(:,i)+k3.*h);&lt;br /&gt;
    z(:,i+1)=z(:,i)+h/6.*(k1+2.*k2+2.*k3+k4);&lt;br /&gt;
end&lt;br /&gt;
 &lt;br /&gt;
%Representación gráfica&lt;br /&gt;
hold on&lt;br /&gt;
plot(t,z(1,:))&lt;br /&gt;
plot(t,z(2,:),'r')&lt;br /&gt;
legend('Sustancia A: x(t)','Sustancia B: y(t)')&lt;br /&gt;
xlabel('Tiempo (s)')&lt;br /&gt;
ylabel('Concentración (mol/l)')&lt;br /&gt;
grid on&lt;br /&gt;
%hold off&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
== Interpretación de las gráficas ==&lt;br /&gt;
&lt;br /&gt;
Como cabía esperar, obtenemos la misma solución resolviendo el problema como sistema o como EDO. Podemos observar por los resultados obtenidos que la velocidad de aparición de B es igual a la velocidad de desaparición de A (como dicta el principio de conservación de la masa), que A acaba desapareciendo prácticamente por completo y que la concentración de B termina por estabilizarse alrededor de 1 mol/l. Ambos compuestos alcanzan sus los extremos de sus concentraciones en el mismo instante de tiempo&lt;br /&gt;
&lt;br /&gt;
También cabe destacar que cuando el tiempo transcurrido alcanza 4,5 segundos las concentraciones de ambos compuestos son las mismas.&lt;br /&gt;
&lt;br /&gt;
= Reacción II =&lt;br /&gt;
&lt;br /&gt;
En este apartado vamos a estudiar la reacción propuesta por Alfred J. Lotka en 1920, que es la siguiente:&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt; A + X →_{k1} 2X;&amp;lt;/math&amp;gt;     :&amp;lt;math&amp;gt; X + Y →_{k2} 2Y;&amp;lt;/math&amp;gt;     :&amp;lt;math&amp;gt;Y →_{k3} 2B  &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Como se puede observar, se trata de una reacción compleja integrada por 3 reacciones simples (las dos primeras autocatalíticas) en las que intervienen un total de 4 compuestos, A, B, X e Y. Siguiendo el desarrollo de la reacción, es lógico suponer que A se agotará al comienzo de la reacción, que los máximos de concentración de X e Y se darán en los estados intermedios y que al final el compuesto B será el único restante, siendo el producto final de la reacción.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Interpretación del problema y deducción de las ecuaciones diferenciales ==&lt;br /&gt;
&lt;br /&gt;
Para averiguar cómo evolucionan las concentraciones de los cuatro compuestos durante el desarrollo de la reacción necesitaremos obtener cuatro ecuaciones diferenciales. Para ello nos volveremos a basar en los principios físicos que ya empleamos en la anterior reacción. Definimos A(t), x(t), y(t), y B(t) (A, x, y, B; para ahorrar notación) a las concentraciones de A, X, Y, y B, respectivamente. &lt;br /&gt;
&lt;br /&gt;
En primer lugar aplicamos el Principio de Conservación de la masa, que establece que la suma de las concentraciones de los compuestos es constante (no desaparece masa en el proceso), lo que derivando nos indica que:&lt;br /&gt;
&lt;br /&gt;
: &amp;lt;math&amp;gt; A' + y' + y' + B' = 0 \quad\quad(I)&amp;lt;/math&amp;gt;       &lt;br /&gt;
&lt;br /&gt;
A continuación aplicaremos la Ley de Acción de Masas (velocidad de reacción proporcional al producto de la concentración de los reactivos).&lt;br /&gt;
&lt;br /&gt;
Aplicando esta ley a la última reacción simple obtenemos que: &lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;B'=k_3y \quad\quad(II)&amp;lt;/math&amp;gt;        &lt;br /&gt;
&lt;br /&gt;
En el caso de las concentraciones de X e Y las expresiones resultantes son algo más complicadas ya que estos dos compuestos actúan como reactivos y productos en más de una reacción simple, por lo que la variación de sus concentraciones será la suma de las variaciones de las reacciones en las que aparezcan:&lt;br /&gt;
&lt;br /&gt;
: &amp;lt;math&amp;gt; x' = x'_{1} + x'_{2} → x' = k_{1}Ax - k{2}xy \quad\quad(III)&amp;lt;/math&amp;gt;        &lt;br /&gt;
: &amp;lt;math&amp;gt; y' = y'_{2} + y'_{3} → y' = k_{2}xy − k_3{y} \quad\quad(IV)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Por último sustituimos (II), (III) y (IV) en (I) obteniendo: &lt;br /&gt;
&lt;br /&gt;
: &amp;lt;math&amp;gt; A' + k_{1}Ax - k{2}xy + k_{2}xy − k_3{y}+ k_3y= 0 : &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
De donde obtenemos que:&lt;br /&gt;
&lt;br /&gt;
: &amp;lt;math&amp;gt; A' = -k_{1}Ax &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Ahora que ya tenemos las variaciones de concentración de los compuestos en función de las concentraciones podemos aplicar métodos numéricos que nos lleven a una solución aproximada.&lt;br /&gt;
&lt;br /&gt;
== Resolución numérica del sistema de ecuaciones ==&lt;br /&gt;
&lt;br /&gt;
Una vez obtenidas las ecuaciones y conociendo las condiciones iniciales y los valores de las constantes podemos plantear el problema de valor inicial para luego resolverlo.&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;(PVI)&lt;br /&gt;
\begin{cases}&lt;br /&gt;
    A' = -k_{1}Ax\\&lt;br /&gt;
    x' = k_{1}Ax - k{2}xy\\&lt;br /&gt;
    y' = k_{2}xy − k_3{y}\\&lt;br /&gt;
    B'=k_3y \\&lt;br /&gt;
\\&lt;br /&gt;
    A(0)=5  \\&lt;br /&gt;
    x(0)=5*10^{-4} \\&lt;br /&gt;
    y(0)=10^{-5}\\&lt;br /&gt;
    B(0)=0 \\&lt;br /&gt;
\end{cases}&lt;br /&gt;
\quad t\in[0,200]&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Siendo &amp;lt;math&amp;gt; k_{1}=K_{2}=2k_{3}=0.1 &amp;lt;/math&amp;gt; y las unidades de la concentración mol/l.&lt;br /&gt;
&lt;br /&gt;
=== Método de Euler ===&lt;br /&gt;
&lt;br /&gt;
Aplicamos el método de Euler de forma análoga a como lo hicimos en [[Reacciones_con_autocatálisis._Grupo_D12#Método_de_Euler_2|apartado 2.5.1]]&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Euler lotka0.01.png|400px|miniaturadeimagen|derecha|Representación gráfica de las concentraciones de A, B, X, e Y a lo largo del tiempo. Resoluciónd delsistema por el método de Euler con longitud de paso h=0.01]] &lt;br /&gt;
[[Archivo:Euler lotka0.001.png|400px|miniaturadeimagen|derecha|Representación gráfica de las concentraciones de A, B, X, e Y a lo largo del tiempo. Resoluciónd delsistema por el método de Euler con longitud de paso h=0.001]]&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
&lt;br /&gt;
%Resolución del sistema de la reacción de Lotka por el método de Euler&lt;br /&gt;
&lt;br /&gt;
clear all&lt;br /&gt;
&lt;br /&gt;
%Definimos la variable independiente y establecemos los datos del problema&lt;br /&gt;
%de valor inicial. Para la longitud de paso h introducimos en primer lugar&lt;br /&gt;
%0.01 y luego 0.001&lt;br /&gt;
&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=200;&lt;br /&gt;
h= input('Introduzca una longitud de paso ');&lt;br /&gt;
t = t0:h:tN;&lt;br /&gt;
N=(tN-t0)/h;&lt;br /&gt;
k1 = 0.1;&lt;br /&gt;
k2 = 0.1;&lt;br /&gt;
k3 = 0.05;&lt;br /&gt;
A0 = 5;&lt;br /&gt;
B0 = 0;&lt;br /&gt;
X0 = 5*10^(-4);&lt;br /&gt;
Y0 = 10^(-5);&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
%Definimos las variables dependientes.&lt;br /&gt;
&lt;br /&gt;
A = zeros(1, N-1);&lt;br /&gt;
B = A;&lt;br /&gt;
X = A;&lt;br /&gt;
Y = A;&lt;br /&gt;
&lt;br /&gt;
A(1) = A0;&lt;br /&gt;
B(1) = B0;&lt;br /&gt;
X(1) = X0;&lt;br /&gt;
Y(1) = Y0;&lt;br /&gt;
&lt;br /&gt;
for i = 1:N&lt;br /&gt;
    &lt;br /&gt;
    X(i+1) = X(i) + h*(k1*A(i)*X(i)-k2*Y(i)*X(i));&lt;br /&gt;
    Y(i+1)=Y(i)+h.*(k2.*X(i).*Y(i)-k3.*Y(i));&lt;br /&gt;
    B(i+1) = B(i) + h*(k3*Y(i));&lt;br /&gt;
    A(i+1) = A(i) + h*(-k1*A(i)*X(i));&lt;br /&gt;
   &lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
%Representamos gráficamente la solución&lt;br /&gt;
&lt;br /&gt;
hold on&lt;br /&gt;
&lt;br /&gt;
plot (t,A,'b')&lt;br /&gt;
plot(t, X, 'r')&lt;br /&gt;
plot(t,Y, 'g')&lt;br /&gt;
plot(t, B, 'm')&lt;br /&gt;
legend('Sustancia A: A(t)','Sustancia X: x(t)','Sustancia Y: y(t)','Sustancia B: B(t)','Location','Best')&lt;br /&gt;
xlabel('Tiempo (s)')&lt;br /&gt;
ylabel('Concentración (mol/l)')&lt;br /&gt;
grid on&lt;br /&gt;
&lt;br /&gt;
hold off&lt;br /&gt;
&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
=== Método de Heun ===&lt;br /&gt;
&lt;br /&gt;
Si bien el método de resolución numérica de Heun no involucra un número de parámetros tan notable como el método de Runge-Kutta, en este caso tenemos un sistema de 4 ecuaciones diferenciales, por lo que, en aras de simplificar, utilizaremos el mismo criterio que en el [[Reacciones_con_autocatálisis._Grupo_D12#Método_de_Runge-Kutta_2|apartado 2.5.2]].: El sistema se tratará como una matriz &amp;lt;math&amp;gt;z&amp;lt;/math&amp;gt;, y para la obtención de los parámetros &amp;lt;math&amp;gt;k_i&amp;lt;/math&amp;gt; utilizaremos la función ''inline'', con la que declararemos previamente las expresiones necesarias para el cálculo de los parámetros &amp;lt;math&amp;gt;k_i&amp;lt;/math&amp;gt;.&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Primero, expresamos el sistema en forma matricial:&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;(PVI)\begin{cases}&lt;br /&gt;
A'(t)=-k_1 A(t)x(t) \\&lt;br /&gt;
x'(t)=k_1 A(t)x(t)-k_2 x(t)y(t) \\&lt;br /&gt;
y'(t)=k_2 x(t)y(t)-k_3 y(t) \\&lt;br /&gt;
B'(t)=k_3 x(t)y(t) \\ \\&lt;br /&gt;
A(0)=5 \\&lt;br /&gt;
x(0)=5·10^{-4} \\&lt;br /&gt;
y(0)=10^{-5} \\&lt;br /&gt;
B(0) = 0&lt;br /&gt;
\end{cases}\quad t\in[0,200]&lt;br /&gt;
&lt;br /&gt;
\quad \Rightarrow \quad&lt;br /&gt;
&lt;br /&gt;
\begin{cases}&lt;br /&gt;
k_1=0.1 \\&lt;br /&gt;
k_2=0.1 \\&lt;br /&gt;
k_3=0.05 \\&lt;br /&gt;
&lt;br /&gt;
\end{cases}&lt;br /&gt;
&lt;br /&gt;
\quad \Rightarrow \quad&lt;br /&gt;
&lt;br /&gt;
(PVI)\begin{cases}\vec{z}'(t)=&lt;br /&gt;
   \begin{bmatrix}&lt;br /&gt;
      A'(t) \\&lt;br /&gt;
      x'(t) \\&lt;br /&gt;
      y'(t) \\&lt;br /&gt;
      B'(t) \\&lt;br /&gt;
   \end{bmatrix}&lt;br /&gt;
=&lt;br /&gt;
      \begin{bmatrix}&lt;br /&gt;
      -0.1 A(t)x(t) \\&lt;br /&gt;
      0.1 A(t)x(t)-0.1 x(t)y(t) \\&lt;br /&gt;
      0.1 x(t)y(t)-0.05 y(t) \\&lt;br /&gt;
      0.05 y(t)x(t)\\&lt;br /&gt;
   \end{bmatrix}&lt;br /&gt;
&lt;br /&gt;
 \\ \\ \vec{z}(0)=&lt;br /&gt;
   \begin{bmatrix}&lt;br /&gt;
      A(0) \\&lt;br /&gt;
      x(0) \\&lt;br /&gt;
      y(0) \\&lt;br /&gt;
      B(0) \\&lt;br /&gt;
   \end{bmatrix}&lt;br /&gt;
=&lt;br /&gt;
      \begin{bmatrix}&lt;br /&gt;
      5 \\&lt;br /&gt;
      5·10^{-4} \\&lt;br /&gt;
      10^{-5} \\&lt;br /&gt;
      0&lt;br /&gt;
   \end{bmatrix}&lt;br /&gt;
\end{cases}\quad t\in[0,200]&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
A continuación, detallamos la función &amp;lt;math&amp;gt;\vec{F}&amp;lt;/math&amp;gt; de la que dependerán los valores de los parámetros &amp;lt;math&amp;gt;k_i&amp;lt;/math&amp;gt;:&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;\vec{F}(A,x,y,B)=\vec{F}(\vec{z})=&lt;br /&gt;
\begin{bmatrix}&lt;br /&gt;
    f(\vec{z}) \\ &lt;br /&gt;
    g(\vec{z}) \\ &lt;br /&gt;
    h(\vec{z}) \\ &lt;br /&gt;
    i(\vec{z}) \\ &lt;br /&gt;
\end{bmatrix}=&lt;br /&gt;
\begin{bmatrix}&lt;br /&gt;
    A'(t) \\&lt;br /&gt;
    x'(t) \\&lt;br /&gt;
    y'(t) \\&lt;br /&gt;
    B'(t) \\&lt;br /&gt;
\end{bmatrix}=&lt;br /&gt;
\vec{z}'(t)=&lt;br /&gt;
      \begin{bmatrix}&lt;br /&gt;
      -0.1 A(t)x(t) \\&lt;br /&gt;
      0.1 A(t)x(t)-0.1 x(t)y(t) \\&lt;br /&gt;
      0.1 x(t)y(t)-0.05 y(t) \\&lt;br /&gt;
      0.05 y(t)x(t)\\&lt;br /&gt;
   \end{bmatrix}&lt;br /&gt;
&lt;br /&gt;
\quad \Rightarrow \quad &lt;br /&gt;
&lt;br /&gt;
\begin{cases}&lt;br /&gt;
 [\vec{k_1}] &amp;amp; =  F(\vec{z}_i) \\&lt;br /&gt;
 [\vec{k_2}] &amp;amp; =  F(\vec{z}_i + {1 \over 2}k_1h) \\&lt;br /&gt;
\end{cases}\quad [h=0.01]&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Entonces el método de Heun para este problema está dado por la siguiente ecuación:&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;\vec{z}_{i+1} = \vec{z}_{i} + {1 \over 2}h(\vec{k_1}+\vec{k_2})&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Mediante el siguiente programa en Matlab calculamos numéricamente la solución y la representamos en un gráfico:&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Archivo:AXYBRK4.png|400px|miniaturadeimagen|derecha|Representación gráfica de las concentraciones de A,X,Y y B. Resolución del sistema por Heun]]&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
%Método de Heun&lt;br /&gt;
clc&lt;br /&gt;
&lt;br /&gt;
%Función F=[A'(t);x'(t); y'(t);B'(t)]&lt;br /&gt;
F=inline('0.1.*[-z(1)*z(2);z(1)*z(2)-z(2)*z(3);z(2)*z(3)-z(3)/2;z(3)/2]','z');&lt;br /&gt;
&lt;br /&gt;
%Datos del problema&lt;br /&gt;
A0=5;&lt;br /&gt;
x0=5*10^-4;&lt;br /&gt;
y0=10^(-5);&lt;br /&gt;
B0=0;&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=200;&lt;br /&gt;
h=0.1;&lt;br /&gt;
&lt;br /&gt;
%Vector de variable independiente (t)&lt;br /&gt;
t=t0:h:tN;&lt;br /&gt;
&lt;br /&gt;
%Matriz de variables dependientes z=[A;x;y;B]&lt;br /&gt;
z=zeros(4,length(t));&lt;br /&gt;
z(:,1)=[A0;x0;y0;B0];&lt;br /&gt;
&lt;br /&gt;
for i = 1:length(t)-1&lt;br /&gt;
    k1=F(z(:,i));&lt;br /&gt;
    k2=F(z(:,i)+k1.*h/2);&lt;br /&gt;
    z(:,i+1)=z(:,i)+h/2.*(k1+k2);&lt;br /&gt;
end&lt;br /&gt;
 &lt;br /&gt;
%Representación gráfica&lt;br /&gt;
hold on&lt;br /&gt;
plot(t,z(1,:),'b')&lt;br /&gt;
plot(t,z(2,:),'r')&lt;br /&gt;
plot(t,z(3,:),'g')&lt;br /&gt;
plot(t,z(4,:),'m')&lt;br /&gt;
legend('Sustancia A: A(t)','Sustancia X: x(t)','Sustancia Y: y(t)','Sustancia B: B(t)','Location','Best')&lt;br /&gt;
xlabel('Tiempo (s)')&lt;br /&gt;
ylabel('Concentración (mol/l)')&lt;br /&gt;
grid on&lt;br /&gt;
hold off&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
== Interpretación de las gráficas == &lt;br /&gt;
 &lt;br /&gt;
El proceso comienza con el predominio absoluto del compuesto A en la concentración total, siendo la presencia de los otros tres compuestos despreciable. Durante los primeros segundos la situación apenas cambia, pero tras los diez primeros segundos la concentración de A cae bruscamente mientras que la concentración de X aumenta a la misma velocidad; antes de llegar a los veinte segundos transcurridos las concentraciones de ambos compuestos se igualan y otros quince segundos más tarde el compuesto A  prácticamente ha desaparecido y el X ha alcanzado su concentración máxima (5 mol/litro).&lt;br /&gt;
&lt;br /&gt;
Es entonces cuando concluye la primera reacción y comienzan las otras dos, al no haber más compuesto A que cree compuesto X. La velocidad de aparición de Y es inicialmente mayor que la de B, superando al poco tiempo en concentración a la sustancia X. Sin embargo, llega un momento en el que la concentración de X es tan baja que se ralentiza la creación de Y y pronto empieza a disminuir su concentración tras alcanzar un máximo en torno a los 56 segundos, perdiendo peso la segunda reacción en beneficio de la tercera.&lt;br /&gt;
&lt;br /&gt;
Tras los 60 segundos de reacción el compuesto X pasa a tener una concentración despreciable, por lo que la única reacción simple que se sigue desarrollando es la tercera, destruyéndose reactivo Y y creándose producto B. La concentración de Y va reduciéndose paulatinamente hasta que en torno a los 160 segundos de reacción alcanza niveles insignificantes mientras que la concentración de B alcanza su máximo de 5 mol/litro.&lt;br /&gt;
&lt;br /&gt;
Es interesante observar que en todo momento se cumple el Principio de Conservación de la masa: la suma en cualquier momento de las concentraciones de las sustancias es 5 mol /litro. Esto es fácilmente comprobable en los momentos en que las concentraciones de A, X y B alcanzan su máximo de 5 mol/litro y el resto de concentraciones son nulas o despreciables. &lt;br /&gt;
[[Categoría:Ecuaciones Diferenciales]]&lt;br /&gt;
[[Categoría:ED14/15]]&lt;br /&gt;
[[Categoría:Trabajos 2014-15]]&lt;/div&gt;</summary>
		<author><name>Javier Ruiz de Galarreta López</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Reacciones_con_autocat%C3%A1lisis._Grupo_D12&amp;diff=27511</id>
		<title>Reacciones con autocatálisis. Grupo D12</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Reacciones_con_autocat%C3%A1lisis._Grupo_D12&amp;diff=27511"/>
				<updated>2015-03-06T10:10:08Z</updated>
		
		<summary type="html">&lt;p&gt;Javier Ruiz de Galarreta López: /* Método de Euler */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{ TrabajoED | Reacciones con autocatálisis. Grupo D12 | [[:Categoría:Ecuaciones Diferenciales|Ecuaciones Diferenciales]]|[[:Categoría:ED14/15|Curso 2014-15]] | Javier Ruiz de Galarreta López, Argimiro Martínez López, Eduardo Moyano García, Alberto Rodríguez Ruiz. }}&lt;br /&gt;
&lt;br /&gt;
= Introducción: objetivos y metodología =&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
El objetivo de este trabajo es estudiar las concentraciones de los reactivos y productos de una reacción química a lo largo de la evolución en el tiempo de dicha reacción. Para ello modelizaremos el proceso empleando ecuaciones diferenciales y teniendo en cuenta la Ley de Acción de Masas y el Principio de Conservación de la materia.&lt;br /&gt;
&lt;br /&gt;
Al ser las ecuaciones y sistemas que se nos presentan de difícil resolución analítica, utilizaremos el programa informático Matlab para resolverlos mediante métodos numéricos como el de Euler, el del Trapecio, el de Runge-Kutta y el de Heun. &lt;br /&gt;
&lt;br /&gt;
Plasmaremos las soluciones en gráficos que nos permitirán dar una interpretación físico química a los resultados.&lt;br /&gt;
&lt;br /&gt;
= Reacción I =&lt;br /&gt;
&lt;br /&gt;
En primer lugar consideramos una reacción química irreversible en una solución bien mezclada, que se desarrolla para un volumen y una temperatura constantes, y en la que uno de los componentes (B, en este caso), hace de efecto catalítico.&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt; A + B →_{k1} 2B  &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Para desarrollar nuestro análisis nos apoyaremos en dos leyes físico químicas:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''Ley de acción de masas''': Enunciada por Guldberg y Waage en 1864, establece, entre otras cosas, que  la velocidad de&lt;br /&gt;
reacción es proporcional al producto de las concentraciones de los reactivos.&lt;br /&gt;
&lt;br /&gt;
'''Principio de conservación de la masa''': Establece que en una reacción química ordinaria la masa permanece constante, siendo la masa consumida de los reactivos igual a la masa obtenida de los productos. Fue elaborada independientemente por Míjail Lomonósov en 1745 y Antoine Lavoisier en 1785.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Interpretación del problema y deducción de las ecuaciones diferenciales ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Para hallar las ecuaciones diferenciales que nos describan cómo se desarrolla la reacción en el tiempo nos basaremos en las dos leyes enunciadas anteriormente. En primer lugar, definimos nuestra variable independiente como el tiempo &amp;lt;math&amp;gt;t&amp;lt;/math&amp;gt; en segundos. Las dos variables dependientes serán las concentraciones de los compuestos A y B, que denominaremos &amp;lt;math&amp;gt;x(t)&amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt;y(t)&amp;lt;/math&amp;gt;, ambas expresadas en mol/l. &lt;br /&gt;
&lt;br /&gt;
El principio de conservación de la masa expone que la suma de las concentraciones de los reactivos y los productos es constante. Esto equivale, derivando la expresión &amp;lt;math&amp;gt;x(t)+y(t)=cte&amp;lt;/math&amp;gt;, a que  desaparece tanto reactivo como producto aparece, o lo que es lo mismo, que la velocidad de aparición del producto es igual a la velocidad de desaparición (velocidad de aparición negativa) del reactivo:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;x'(t)=-y'(t)&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
La otra ecuación que necesitamos la obtenemos directamente de aplicar la Ley de acción de masas, que establece que la velocidad de la reacción (la velocidad a la que aparece el producto o desaparece el reactivo) es igual al producto de las concentraciones por una constante.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;y'(t)=k_1x(t)y(t)&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Obtención del problema de valor inicial ==&lt;br /&gt;
Una vez demostrado el origen de las ecuaciones (1) y (2) en el apartado anterior, obtendremos el problema de valor inicial (PVI) mediante las operaciones detalladas a continuación:&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;x'(t)+y'(t)=0\quad\quad(1)&amp;lt;/math&amp;gt;&lt;br /&gt;
:&amp;lt;math&amp;gt;y'(t)=k_1x(t)y(t)\quad\quad(2)&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Integrando (1) obtenemos (3):&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
:&amp;lt;math&amp;gt;\int_\mathbb{D} (\frac{dx(t)}{dt} + \frac{dy(t)}{dt})\,dt =\int_\mathbb{D} 0\,dt \quad \Rightarrow \quad x(t)+y(t)=k_2\quad \Rightarrow \quad x(t)=k_2-y(t)\quad\quad(3)&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Sustituyendo (3) en (2), obtenemos (4):&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;y'(t)=k_1x(t)y(t)\quad \Rightarrow \quad y'(t)=k_1(k_2-y(t))y(t)\quad \Rightarrow \quad y'(t)=k_1k_2y(t)-k_1y^2(t)\quad\quad(4)&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Conocemos las concentraciones iniciales de A y de B, por lo que podemos obtener el valor de la constante k&amp;lt;sub&amp;gt;2&amp;lt;/sub&amp;gt;:&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;[A]:\quad x(0)=1 mol/l;\quad\quad [B]:\quad y(0)=0,01 mol/l&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;x(t)+y(t)=k_2\quad \Rightarrow \quad x(0)+y(0)=k_2\quad \Rightarrow \quad 1+0,01=k_2\quad \Rightarrow \quad k_2=1,01&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Por último, conocemos también el valor de k&amp;lt;sub&amp;gt;1&amp;lt;/sub&amp;gt;, por lo que podremos plantear a continuación el correspondiente PVI:&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;k_1=1&amp;lt;/math&amp;gt;&lt;br /&gt;
:&amp;lt;math&amp;gt;(PVI)\begin{cases}y'(t)=1,01y(t)-y^2(t) \\ \\&lt;br /&gt;
y(0) = 0,01 \end{cases}\quad (t,y)\in[0,10]\times\mathbb{R}&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Unicidad de la solución ==&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Existencia-y-unicidad.png|200px|miniaturadeimagen|derecha|Intersección B con dominio]]&lt;br /&gt;
&lt;br /&gt;
Aplicamos a continuación el Teorema de Existencia y Unicidad:&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Sea &amp;lt;math&amp;gt;f(t,y)=y'(t) \Rightarrow f(t,y)=1.01y(t)-y^2(t)\quad&amp;lt;/math&amp;gt;, y &amp;lt;math&amp;gt;\quad\frac{\partial }{\partial y} f(t,y) = 1.01-2y(t)&amp;lt;/math&amp;gt;.&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
Y sea &amp;lt;math&amp;gt;B[(t_0,y_0),r],\quad r&amp;gt;0,\quad en (t_0,y_0)=(0,0.01)&amp;lt;/math&amp;gt;.&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;f(t,y)&amp;lt;/math&amp;gt; es continua en &amp;lt;math&amp;gt; \mathbb{B}\cap \mathbb{D}\quad \Rightarrow \quad \exists  y(t)\quad /\quad y'(t)=1,01y(t)-y^2(t)&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;math&amp;gt;\frac{\partial }{\partial y} f(t,y)&amp;lt;/math&amp;gt; es continua en &amp;lt;math&amp;gt; \mathbb{B}\cap \mathbb{D}\quad \Rightarrow \quad \exists !  y(t)\quad /\quad y'(t)=1,01y(t)-y^2(t)&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Con lo que queda demostrado que el (PVI) tiene solución y además esta es única.&lt;br /&gt;
&lt;br /&gt;
== Resolución numérica del problema de valor inicial ==&lt;br /&gt;
&lt;br /&gt;
En este apartado resolveremos el problema de valor inicial planteado anteriormente con tres métodos de integración numérica: el método de Euler, el método del Trapecio y el método de Runge-Kutta de orden 4.&lt;br /&gt;
&lt;br /&gt;
=== Método de Euler ===&lt;br /&gt;
&lt;br /&gt;
El método de Euler, llamado así en honor al matemático Leonhard Euler, es un procedimiento de integración numérica. Su expresión matemática es: &lt;br /&gt;
&amp;lt;math&amp;gt;  PVI = &lt;br /&gt;
   \left \{&lt;br /&gt;
      \begin{array}{rcl}y_0\\&lt;br /&gt;
           y_{n+1} = y_n + h*f(t_n,y_n)\\ &lt;br /&gt;
      \end{array}&lt;br /&gt;
   \right .&lt;br /&gt;
   &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
A continuación emplearemos esta expresión en un programa de Matlab para obtener una aproximación de las soluciones. El código de dicho programa es el siguiente.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Eulergrafica.png|400px|miniaturadeimagen|derecha|Representación gráfica y(t). Método de Euler]]&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
%Método de Euler&lt;br /&gt;
clc&lt;br /&gt;
&lt;br /&gt;
%Datos iniciales&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=4;&lt;br /&gt;
y0=0.01;&lt;br /&gt;
h=0.1;&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=10;&lt;br /&gt;
&lt;br /&gt;
%Cálculo de subintervalos&lt;br /&gt;
N=round((tN-t0)/h);&lt;br /&gt;
t=t0:h:tN;&lt;br /&gt;
&lt;br /&gt;
%Creamos el vector donde vamos a guardar las soluciones&lt;br /&gt;
y=zeros(1,N+1);&lt;br /&gt;
y(1)=y0;&lt;br /&gt;
&lt;br /&gt;
%Euler&lt;br /&gt;
for i=1:N;&lt;br /&gt;
    y(i+1)=y(i)+h*(1.01*y(i)-(y(i)).^2);&lt;br /&gt;
end&lt;br /&gt;
%Tabla de Resultados&lt;br /&gt;
[t',y']&lt;br /&gt;
x=1.01-y;&lt;br /&gt;
hold on &lt;br /&gt;
plot(t,y,'r')&lt;br /&gt;
plot(t,x,'b')&lt;br /&gt;
hold off&lt;br /&gt;
legend('Sustancia B: y(t)','Sustancia A: x(t)','Location','best');&lt;br /&gt;
xlabel('Tiempo (s)')&lt;br /&gt;
ylabel('Concentración (mol/l)')&lt;br /&gt;
grid on&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
=== Método del trapecio ===&lt;br /&gt;
&lt;br /&gt;
Vamos a aplicar un método de integración numérica conocido como el Método del Trapecio por aproximar el valor de la integral al del área de un trapecio. Su expresión matemática es:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;  PVI = &lt;br /&gt;
   \left \{&lt;br /&gt;
      \begin{array}{rcl}&lt;br /&gt;
          y_0\\&lt;br /&gt;
           y_{n+1} = y_n + \frac{h}{2}*f(t_n,y_n)\\ &lt;br /&gt;
      \end{array}&lt;br /&gt;
   \right .&lt;br /&gt;
   &amp;lt;/math&amp;gt;&lt;br /&gt;
Introducimos esta expresión en el código y obtenemos la gráfica de la solución.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Trapeciografica.png|400px|miniaturadeimagen|derecha|Representación gráfica y(t). Método del Trapecio]]&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
%Método del Trapecio&lt;br /&gt;
clc&lt;br /&gt;
&lt;br /&gt;
%Datos iniciales&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=4;&lt;br /&gt;
y0=0.01;&lt;br /&gt;
h=0.1;&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=10;&lt;br /&gt;
&lt;br /&gt;
%Cálculo de subintervalos&lt;br /&gt;
N=round((tN-t0)/h);&lt;br /&gt;
t=t0:h:tN;&lt;br /&gt;
&lt;br /&gt;
%Creamos el vector donde vamos a guardar las soluciones&lt;br /&gt;
y=zeros(1,N+1);&lt;br /&gt;
y(1)=y0;&lt;br /&gt;
&lt;br /&gt;
for i=1:N&lt;br /&gt;
y(i+1)=(((1-(h/2)*1.01)-sqrt(((1-(h/2)*1.01)^2)+4*(h/2)*((1+(h/2)*1.01)*y(i)-(h/2)*(y(i))^2)))/-h);&lt;br /&gt;
end&lt;br /&gt;
%Sacamos la tabla de resultados&lt;br /&gt;
[t',y']&lt;br /&gt;
x=1.01-y;&lt;br /&gt;
%Gráfico&lt;br /&gt;
hold on&lt;br /&gt;
plot(t,y,'r')&lt;br /&gt;
plot(t,x,'b')&lt;br /&gt;
legend('Sustancia B: y(t)','Sustancia A: x(t)','Location','best');&lt;br /&gt;
xlabel('Tiempo (s)')&lt;br /&gt;
ylabel('Concentración (mol/l)')&lt;br /&gt;
grid on&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
=== Método de Runge-Kutta ===&lt;br /&gt;
&lt;br /&gt;
El método de resolución numérica de Runge-Kutta, involucra un gran número de parámetros. Para simplificar la implementación de este método en Matlab, utilizaremos la función ''inline'', con la que declararemos previamente la función algebraica necesaria para el cálculo de los parámetros &amp;lt;math&amp;gt;k_i&amp;lt;/math&amp;gt;, ahorrándonos tener que escribir innumerables veces la correspondiente expresión matemática.&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
A continuación, detallamos la función &amp;lt;math&amp;gt;f(y)&amp;lt;/math&amp;gt; de la que dependerán los valores de los parámetros &amp;lt;math&amp;gt;k_i&amp;lt;/math&amp;gt;:&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;f(y)=y'(t)=1.01y(t)-y(t)^2&lt;br /&gt;
&lt;br /&gt;
\quad \Rightarrow \quad&lt;br /&gt;
&lt;br /&gt;
\begin{cases}&lt;br /&gt;
 k_1 &amp;amp; =  f(y_i) \\&lt;br /&gt;
 k_2 &amp;amp; =  f(y_i + {1 \over 2}k_1h) \\&lt;br /&gt;
 k_3 &amp;amp; =  f(y_i + \frac{1}{2}k_2h) \\&lt;br /&gt;
 k_4 &amp;amp; =  f(y_i + k_3h) \\&lt;br /&gt;
\end{cases}\quad [h=0.1]&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Entonces el método RK4 para este problema está dado por la siguiente ecuación:&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;y_{i+1} = y_{i} + {1 \over 6}h(k_1+2k_2+2k_3+k_4)&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Mediante el siguiente programa en Matlab calculamos numéricamente la solución y la representamos en un gráfico:&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Archivo:RK4II.png|400px|miniaturadeimagen|derecha|Representación gráfica y(t). Método Runge-Kutta]]&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
%Método de Runge-Kutta&lt;br /&gt;
clc&lt;br /&gt;
&lt;br /&gt;
%Función f(t)=y'(t)&lt;br /&gt;
fy=inline('1.01*y-y^2','y');&lt;br /&gt;
&lt;br /&gt;
%Datos del problema&lt;br /&gt;
y0=0.01;&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=10;&lt;br /&gt;
h=0.1;&lt;br /&gt;
&lt;br /&gt;
%Variable independiente (t)&lt;br /&gt;
t=t0:h:tN;&lt;br /&gt;
&lt;br /&gt;
%Variable dependiente (y)&lt;br /&gt;
y=zeros(1,length(t));&lt;br /&gt;
y(1)=y0;&lt;br /&gt;
&lt;br /&gt;
for i=1:length(t)-1&lt;br /&gt;
    k1=fy(y(i));&lt;br /&gt;
    k2=fy(y(i)+k1/2*h);&lt;br /&gt;
    k3=fy(y(i)+k2/2*h);&lt;br /&gt;
    k4=fy(y(i)+k3*h);&lt;br /&gt;
    y(i+1)=y(i)+h/6*(k1+2*k2+2*k3+k4);&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
%Variable dependiente (x)&lt;br /&gt;
x=1.01-y;&lt;br /&gt;
&lt;br /&gt;
%Representación gráfica&lt;br /&gt;
hold on&lt;br /&gt;
plot(t,x,'b')&lt;br /&gt;
plot(t,y,'r')&lt;br /&gt;
legend('Sustancia A: x(t)','Sustancia B: y(t)')&lt;br /&gt;
xlabel('Tiempo (s)')&lt;br /&gt;
ylabel('Concentración (mol/l)')&lt;br /&gt;
grid on&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
=== Comparación de métodos===&lt;br /&gt;
&lt;br /&gt;
Podemos observar fácilmente que las gráficas obtenidas con los diferentes métodos son iguales a primera vista. Sin embargo, superponiéndolas queda patente que no son exactamente iguales debido a que los métodos no poseen la misma precisión y , al operar todos con la misma longitud de paso, unos aproximan la solución exacta mejor que otros. Así se observa en estas imágenes:&lt;br /&gt;
&lt;br /&gt;
[[Archivo:comparativa1.jpg|400px|miniaturadeimagen|izquierda|Comparación de métodos]]&lt;br /&gt;
[[Archivo:comparativa2.jpg|400px|miniaturadeimagen|derecha|Comparación de métodos]]&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
Como podemos comprobar en las imágenes, el método de Euler es menos preciso que el del trapecio o el de Runge-Kutta.&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Resolución en forma de sistema de ecuaciones ==&lt;br /&gt;
&lt;br /&gt;
A continuación vamos a plantear el problema de valor inicial con un sistema no lineal de dos ecuaciones equivalente al problema resuelto anteriormente.&lt;br /&gt;
&lt;br /&gt;
Estas ecuaciones serán:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;(PVI)&lt;br /&gt;
\begin{cases}&lt;br /&gt;
    y'(t)=k_1 x(t)y(t) \\&lt;br /&gt;
    x'(t)=-k_1 x(t)y(t) \\&lt;br /&gt;
    \\&lt;br /&gt;
    x(0)=1 \\&lt;br /&gt;
    y(0) = 0.01&lt;br /&gt;
\end{cases}&lt;br /&gt;
\quad t\in[0,10]&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Resolveremos el problema por el método de Euler y por el método de Runge-Kutta, plasmando las soluciones en gráficos.&lt;br /&gt;
&lt;br /&gt;
=== Método de Euler ===&lt;br /&gt;
&lt;br /&gt;
En este caso aplicaremos en el siguiente código la expresión para EDO a cada una de las ecuaciones que conforma el sistema, obteniendo la correspondiente gráfica.&lt;br /&gt;
 &lt;br /&gt;
[[Archivo:SistEuler.png|400px|miniaturadeimagen|derecha|Representación gráfica de las concentraciones de A y B. Resolución del sistema por Euler]]&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
&lt;br /&gt;
%Resolución del sistema por el método de Euler&lt;br /&gt;
&lt;br /&gt;
clear all&lt;br /&gt;
&lt;br /&gt;
%Definimos el vector de la variable independiente, el número de&lt;br /&gt;
%subintervalos y la longitud de paso&lt;br /&gt;
&lt;br /&gt;
t0 = 0;&lt;br /&gt;
tN = 10;&lt;br /&gt;
h = 0.01;&lt;br /&gt;
t = t0:h:tN&lt;br /&gt;
N = (tN-t0)/h;&lt;br /&gt;
&lt;br /&gt;
%Definimos los vectores de las variables dependientes&lt;br /&gt;
&lt;br /&gt;
x = zeros(1, N+1);&lt;br /&gt;
y = zeros(1, N+1);&lt;br /&gt;
&lt;br /&gt;
x(1) = 1;&lt;br /&gt;
y(1) = 0.01;&lt;br /&gt;
&lt;br /&gt;
for i = 1:N&lt;br /&gt;
    &lt;br /&gt;
    x(i+1)=x(i)+h*(-x(i).*y(i));&lt;br /&gt;
    y(i+1)=y(i)+h*(y(i).*x(i));&lt;br /&gt;
    &lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
%Representamos gráficamente las soluciones&lt;br /&gt;
&lt;br /&gt;
hold on&lt;br /&gt;
&lt;br /&gt;
plot(t,x,'b');&lt;br /&gt;
plot(t,y,'r');&lt;br /&gt;
grid on&lt;br /&gt;
&lt;br /&gt;
legend('Sustancia A: x(t)','Sustancia B: y(t)')&lt;br /&gt;
xlabel('Tiempo (s)')&lt;br /&gt;
ylabel('Concentración (mol/l)')&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
hold off&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
}}&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
A continuación tendremos que comprobar si el método es estable.&lt;br /&gt;
Un método es estable cuando el error local es pequeño y además este error no se amplifica a lo largo del tiempo. Para calificar la estabilidad del método de Euler resolveremos el sistema usando &amp;quot;h=0.01&amp;quot; y &amp;quot;h=0.001&amp;quot;. Para ello usaremos el mismo programa anterior simplemente variando h. La línea azul representa el programa que usa &amp;quot;h=0.01&amp;quot; y la línea roja representa el programa que usa &amp;quot;h=0.001&amp;quot;&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Comparacioneulers123.jpg|400px|miniaturadeimagen|izquierda|Representación gráfica y(t). Método de Euler]]&lt;br /&gt;
[[Archivo:Comparacioneulers321.jpg|400px|miniaturadeimagen|derecha|Representación gráfica y(t). Método de Euler]]&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
Como podemos ver en la primera imágen las gráficas se superponen y no se aprecian diferencias hasta que no ampliamos la imagen. Y esto sucede en todo momento con lo que podemos garantizar que en este caso es estable.&lt;br /&gt;
&lt;br /&gt;
=== Método de Runge-Kutta===&lt;br /&gt;
&lt;br /&gt;
El método de resolución numérica de Runge-Kutta, involucra un gran número de parámetros. Para simplificar la implementación de este método en Matlab, el sistema se tratará como una matriz &amp;lt;math&amp;gt;z&amp;lt;/math&amp;gt;. Además, utilizaremos la función ''inline'', con la que declararemos previamente la función algebraica necesaria para el cálculo de los parámetros &amp;lt;math&amp;gt;k_i&amp;lt;/math&amp;gt;, ahorrándonos tener que escribir innumerables veces la correspondiente expresión matemática.&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Primero, expresamos el sistema en forma matricial:&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;(PVI)\begin{cases}&lt;br /&gt;
    x'(t)=-k_1 x(t)y(t) \\&lt;br /&gt;
    y'(t)=k_1 x(t)y(t) \\&lt;br /&gt;
    \\&lt;br /&gt;
    x(0)=1 \\&lt;br /&gt;
    y(0) = 0.01&lt;br /&gt;
\end{cases}\quad t\in[0,10]&lt;br /&gt;
&lt;br /&gt;
\quad \Rightarrow \quad k_1=1\quad \Rightarrow \quad&lt;br /&gt;
&lt;br /&gt;
(PVI)\begin{cases}\vec{z}'(t)=&lt;br /&gt;
   \begin{bmatrix}&lt;br /&gt;
      x'(t) \\&lt;br /&gt;
      y'(t) \\&lt;br /&gt;
   \end{bmatrix}&lt;br /&gt;
=&lt;br /&gt;
      \begin{bmatrix}&lt;br /&gt;
      -x(t)y(t) \\&lt;br /&gt;
      x(t)y(t) \\&lt;br /&gt;
   \end{bmatrix}&lt;br /&gt;
&lt;br /&gt;
 \\ \\ \vec{z}(0)=&lt;br /&gt;
   \begin{bmatrix}&lt;br /&gt;
      x(0) \\&lt;br /&gt;
      y(0) \\&lt;br /&gt;
   \end{bmatrix}&lt;br /&gt;
=&lt;br /&gt;
      \begin{bmatrix}&lt;br /&gt;
      1 \\&lt;br /&gt;
      0.01 \\&lt;br /&gt;
   \end{bmatrix}&lt;br /&gt;
\end{cases}\quad t\in[0,10]&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
A continuación, detallamos la función &amp;lt;math&amp;gt;\vec{F}&amp;lt;/math&amp;gt; de la que dependerán los valores de los parámetros &amp;lt;math&amp;gt;k_i&amp;lt;/math&amp;gt;:&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;\vec{F}(x,y)=\vec{F}(\vec{z})=&lt;br /&gt;
&lt;br /&gt;
\begin{bmatrix}&lt;br /&gt;
    f(\vec{z}) \\&lt;br /&gt;
    g(\vec{z}) \\&lt;br /&gt;
\end{bmatrix}=&lt;br /&gt;
&lt;br /&gt;
\begin{bmatrix}&lt;br /&gt;
    x'(t) \\&lt;br /&gt;
    y'(t) \\&lt;br /&gt;
\end{bmatrix}=&lt;br /&gt;
&lt;br /&gt;
\vec{z}'(t)=&lt;br /&gt;
&lt;br /&gt;
\begin{bmatrix}&lt;br /&gt;
    -x(t)y(t) \\&lt;br /&gt;
    x(t)y(t) \\&lt;br /&gt;
\end{bmatrix}&lt;br /&gt;
\quad \Rightarrow \quad&lt;br /&gt;
&lt;br /&gt;
\begin{cases}&lt;br /&gt;
 [\vec{k_1}] &amp;amp; =  F(\vec{z}_i) \\&lt;br /&gt;
 [\vec{k_2}] &amp;amp; =  F(\vec{z}_i + {1 \over 2}k_1h) \\&lt;br /&gt;
 [\vec{k_3}] &amp;amp; =  F(\vec{z}_i + \frac{1}{2}k_2h) \\&lt;br /&gt;
 [\vec{k_4}] &amp;amp; =  F(\vec{z}_i + k_3h) \\&lt;br /&gt;
\end{cases}\quad [h=0.1]&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Entonces el método RK4 para este problema está dado por la siguiente ecuación:&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;\vec{z}_{i+1} = \vec{z}_{i} + {1 \over 6}h(\vec{k_1}+2\vec{k_2}+2\vec{k_3}+\vec{k_4})&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Mediante el siguiente programa en Matlab calculamos numéricamente la solución y la representamos en un gráfico:&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Archivo:sistema_RK4.png|400px|miniaturadeimagen|derecha|Representación gráfica de las concentraciones de A y B. Resolución del sistema por Runge-Kutta]]&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
%Método de Runge-Kutta&lt;br /&gt;
clc&lt;br /&gt;
&lt;br /&gt;
%Función F=[x'(t); y'(t)]&lt;br /&gt;
F=inline('[-z(1)*z(2);z(1)*z(2)]','z');&lt;br /&gt;
&lt;br /&gt;
%Datos del problema &lt;br /&gt;
x0=1;&lt;br /&gt;
y0=0.01;&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=10;&lt;br /&gt;
h=0.1;&lt;br /&gt;
&lt;br /&gt;
%Vector de variable independiente (t)&lt;br /&gt;
t=t0:h:tN;&lt;br /&gt;
&lt;br /&gt;
%Matriz de variables dependientes z=[x;y]&lt;br /&gt;
z=zeros(2,length(t));&lt;br /&gt;
z(:,1)=[x0;y0];&lt;br /&gt;
&lt;br /&gt;
for i = 1:length(t)-1&lt;br /&gt;
    k1=F(z(:,i));&lt;br /&gt;
    k2=F(z(:,i)+k1.*h/2);&lt;br /&gt;
    k3=F(z(:,i)+k2.*h/2);&lt;br /&gt;
    k4=F(z(:,i)+k3.*h);&lt;br /&gt;
    z(:,i+1)=z(:,i)+h/6.*(k1+2.*k2+2.*k3+k4);&lt;br /&gt;
end&lt;br /&gt;
 &lt;br /&gt;
%Representación gráfica&lt;br /&gt;
hold on&lt;br /&gt;
plot(t,z(1,:))&lt;br /&gt;
plot(t,z(2,:),'r')&lt;br /&gt;
legend('Sustancia A: x(t)','Sustancia B: y(t)')&lt;br /&gt;
xlabel('Tiempo (s)')&lt;br /&gt;
ylabel('Concentración (mol/l)')&lt;br /&gt;
grid on&lt;br /&gt;
%hold off&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
== Interpretación de las gráficas ==&lt;br /&gt;
&lt;br /&gt;
Como cabía esperar, obtenemos la misma solución resolviendo el problema como sistema o como EDO. Podemos observar por los resultados obtenidos que la velocidad de aparición de B es igual a la velocidad de desaparición de A (como dicta el principio de conservación de la masa), que A acaba desapareciendo prácticamente por completo y que la concentración de B termina por estabilizarse alrededor de 1 mol/l. Ambos compuestos alcanzan sus los extremos de sus concentraciones en el mismo instante de tiempo&lt;br /&gt;
&lt;br /&gt;
También cabe destacar que cuando el tiempo transcurrido alcanza 4,5 segundos las concentraciones de ambos compuestos son las mismas.&lt;br /&gt;
&lt;br /&gt;
= Reacción II =&lt;br /&gt;
&lt;br /&gt;
En este apartado vamos a estudiar la reacción propuesta por Alfred J. Lotka en 1920, que es la siguiente:&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt; A + X →_{k1} 2X;&amp;lt;/math&amp;gt;     :&amp;lt;math&amp;gt; X + Y →_{k2} 2Y;&amp;lt;/math&amp;gt;     :&amp;lt;math&amp;gt;Y →_{k3} 2B  &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Como se puede observar, se trata de una reacción compleja integrada por 3 reacciones simples (las dos primeras autocatalíticas) en las que intervienen un total de 4 compuestos, A, B, X e Y. Siguiendo el desarrollo de la reacción, es lógico suponer que A se agotará al comienzo de la reacción, que los máximos de concentración de X e Y se darán en los estados intermedios y que al final el compuesto B será el único restante, siendo el producto final de la reacción.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Interpretación del problema y deducción de las ecuaciones diferenciales ==&lt;br /&gt;
&lt;br /&gt;
Para averiguar cómo evolucionan las concentraciones de los cuatro compuestos durante el desarrollo de la reacción necesitaremos obtener cuatro ecuaciones diferenciales. Para ello nos volveremos a basar en los principios físicos que ya empleamos en la anterior reacción. Definimos A(t), x(t), y(t), y B(t) (A, x, y, B; para ahorrar notación) a las concentraciones de A, X, Y, y B, respectivamente. &lt;br /&gt;
&lt;br /&gt;
En primer lugar aplicamos el Principio de Conservación de la masa, que establece que la suma de las concentraciones de los compuestos es constante (no desaparece masa en el proceso), lo que derivando nos indica que:&lt;br /&gt;
&lt;br /&gt;
: &amp;lt;math&amp;gt; A' + y' + y' + B' = 0 \quad\quad(I)&amp;lt;/math&amp;gt;       &lt;br /&gt;
&lt;br /&gt;
A continuación aplicaremos la Ley de Acción de Masas (velocidad de reacción proporcional al producto de la concentración de los reactivos).&lt;br /&gt;
&lt;br /&gt;
Aplicando esta ley a la última reacción simple obtenemos que: &lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;B'=k_3y \quad\quad(II)&amp;lt;/math&amp;gt;        &lt;br /&gt;
&lt;br /&gt;
En el caso de las concentraciones de X e Y las expresiones resultantes son algo más complicadas ya que estos dos compuestos actúan como reactivos y productos en más de una reacción simple, por lo que la variación de sus concentraciones será la suma de las variaciones de las reacciones en las que aparezcan:&lt;br /&gt;
&lt;br /&gt;
: &amp;lt;math&amp;gt; x' = x'_{1} + x'_{2} → x' = k_{1}Ax - k{2}xy \quad\quad(III)&amp;lt;/math&amp;gt;        &lt;br /&gt;
: &amp;lt;math&amp;gt; y' = y'_{2} + y'_{3} → y' = k_{2}xy − k_3{y} \quad\quad(IV)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Por último sustituimos (II), (III) y (IV) en (I) obteniendo: &lt;br /&gt;
&lt;br /&gt;
: &amp;lt;math&amp;gt; A' + k_{1}Ax - k{2}xy + k_{2}xy − k_3{y}+ k_3y= 0 : &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
De donde obtenemos que:&lt;br /&gt;
&lt;br /&gt;
: &amp;lt;math&amp;gt; A' = -k_{1}Ax &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Ahora que ya tenemos las variaciones de concentración de los compuestos en función de las concentraciones podemos aplicar métodos numéricos que nos lleven a una solución aproximada.&lt;br /&gt;
&lt;br /&gt;
== Resolución numérica del sistema de ecuaciones ==&lt;br /&gt;
&lt;br /&gt;
Una vez obtenidas las ecuaciones y conociendo las condiciones iniciales y los valores de las constantes podemos plantear el problema de valor inicial para luego resolverlo.&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;(PVI)&lt;br /&gt;
\begin{cases}&lt;br /&gt;
    A' = -k_{1}Ax\\&lt;br /&gt;
    x' = k_{1}Ax - k{2}xy\\&lt;br /&gt;
    y' = k_{2}xy − k_3{y}\\&lt;br /&gt;
    B'=k_3y \\&lt;br /&gt;
\\&lt;br /&gt;
    A(0)=5  \\&lt;br /&gt;
    x(0)=5*10^{-4} \\&lt;br /&gt;
    y(0)=10^{-5}\\&lt;br /&gt;
    B(0)=0 \\&lt;br /&gt;
\end{cases}&lt;br /&gt;
\quad t\in[0,200]&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Siendo &amp;lt;math&amp;gt; k_{1}=K_{2}=2k_{3}=0.1 &amp;lt;/math&amp;gt; y las unidades de la concentración mol/l.&lt;br /&gt;
&lt;br /&gt;
=== Método de Euler ===&lt;br /&gt;
&lt;br /&gt;
Aplicamos el método de Euler de forma análoga a como lo hicimos en [[Reacciones_con_autocatálisis._Grupo_D12#Método_de_Euler_2|apartado 2.5.1]]&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Euler lotka0.01.png|400px|miniaturadeimagen|derecha|Representación gráfica de las concentraciones de A, B, X, e Y a lo largo del tiempo. Resoluciónd delsistema por el método de Euler con longitud de paso h=0.01]] &lt;br /&gt;
[[Archivo:Euler lotka0.001.png|400px|miniaturadeimagen|derecha|Representación gráfica de las concentraciones de A, B, X, e Y a lo largo del tiempo. Resoluciónd delsistema por el método de Euler con longitud de paso h=0.001]]&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
&lt;br /&gt;
%Resolución del sistema de la reacción de Lotka por el método de Euler&lt;br /&gt;
&lt;br /&gt;
clear all&lt;br /&gt;
&lt;br /&gt;
%Definimos la variable independiente y establecemos los datos del problema&lt;br /&gt;
%de valor inicial. Para la longitud de paso h introducimos en primer lugar&lt;br /&gt;
%0.01 y luego 0.001&lt;br /&gt;
&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=200;&lt;br /&gt;
h= input('Introduzca una longitud de paso ');&lt;br /&gt;
t = t0:h:tN;&lt;br /&gt;
N=(tN-t0)/h;&lt;br /&gt;
k1 = 0.1;&lt;br /&gt;
k2 = 0.1;&lt;br /&gt;
k3 = 0.05;&lt;br /&gt;
A0 = 5;&lt;br /&gt;
B0 = 0;&lt;br /&gt;
X0 = 5*10^(-4);&lt;br /&gt;
Y0 = 10^(-5);&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
%Definimos las variables dependientes.&lt;br /&gt;
&lt;br /&gt;
A = zeros(1, N-1);&lt;br /&gt;
B = A;&lt;br /&gt;
X = A;&lt;br /&gt;
Y = A;&lt;br /&gt;
&lt;br /&gt;
A(1) = A0;&lt;br /&gt;
B(1) = B0;&lt;br /&gt;
X(1) = X0;&lt;br /&gt;
Y(1) = Y0;&lt;br /&gt;
&lt;br /&gt;
for i = 1:N&lt;br /&gt;
    &lt;br /&gt;
    X(i+1) = X(i) + h*(k1*A(i)*X(i)-k2*Y(i)*X(i));&lt;br /&gt;
    Y(i+1)=Y(i)+h.*(k2.*X(i).*Y(i)-k3.*Y(i));&lt;br /&gt;
    B(i+1) = B(i) + h*(k3*Y(i));&lt;br /&gt;
    A(i+1) = A(i) + h*(-k1*A(i)*X(i));&lt;br /&gt;
   &lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
%Representamos gráficamente la solución&lt;br /&gt;
&lt;br /&gt;
hold on&lt;br /&gt;
&lt;br /&gt;
plot (t,A,'b')&lt;br /&gt;
plot(t, X, 'r')&lt;br /&gt;
plot(t,Y, 'g')&lt;br /&gt;
plot(t, B, 'm')&lt;br /&gt;
legend('Sustancia A: A(t)','Sustancia X: x(t)','Sustancia Y: y(t)','Sustancia B: B(t)','Location','Best')&lt;br /&gt;
xlabel('Tiempo (s)')&lt;br /&gt;
ylabel('Concentración (mol/l)')&lt;br /&gt;
grid on&lt;br /&gt;
&lt;br /&gt;
hold off&lt;br /&gt;
&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
=== Método de Heun ===&lt;br /&gt;
&lt;br /&gt;
Si bien el método de resolución numérica de Heun no involucra un número de parámetros tan notable como el método de Runge-Kutta, en este caso tenemos un sistema de 4 ecuaciones diferenciales, por lo que, en aras de simplificar, utilizaremos el mismo criterio que en el [[Reacciones_con_autocatálisis._Grupo_D12#Método_de_Runge-Kutta_2|apartado 2.5.2]].: El sistema se tratará como una matriz &amp;lt;math&amp;gt;z&amp;lt;/math&amp;gt;, y para la obtención de los parámetros &amp;lt;math&amp;gt;k_i&amp;lt;/math&amp;gt; utilizaremos la función ''inline'', con la que declararemos previamente las expresiones necesarias para el cálculo de los parámetros &amp;lt;math&amp;gt;k_i&amp;lt;/math&amp;gt;.&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Primero, expresamos el sistema en forma matricial:&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;(PVI)\begin{cases}&lt;br /&gt;
A'(t)=-k_1 A(t)x(t) \\&lt;br /&gt;
x'(t)=k_1 A(t)x(t)-k_2 x(t)y(t) \\&lt;br /&gt;
y'(t)=k_2 x(t)y(t)-k_3 y(t) \\&lt;br /&gt;
B'(t)=k_3 x(t)y(t) \\ \\&lt;br /&gt;
A(0)=5 \\&lt;br /&gt;
x(0)=5·10^{-4} \\&lt;br /&gt;
y(0)=10^{-5} \\&lt;br /&gt;
B(0) = 0&lt;br /&gt;
\end{cases}\quad t\in[0,200]&lt;br /&gt;
&lt;br /&gt;
\quad \Rightarrow \quad&lt;br /&gt;
&lt;br /&gt;
\begin{cases}&lt;br /&gt;
k_1=0.1 \\&lt;br /&gt;
k_2=0.1 \\&lt;br /&gt;
k_3=0.05 \\&lt;br /&gt;
&lt;br /&gt;
\end{cases}&lt;br /&gt;
&lt;br /&gt;
\quad \Rightarrow \quad&lt;br /&gt;
&lt;br /&gt;
(PVI)\begin{cases}\vec{z}'(t)=&lt;br /&gt;
   \begin{bmatrix}&lt;br /&gt;
      A'(t) \\&lt;br /&gt;
      x'(t) \\&lt;br /&gt;
      y'(t) \\&lt;br /&gt;
      B'(t) \\&lt;br /&gt;
   \end{bmatrix}&lt;br /&gt;
=&lt;br /&gt;
      \begin{bmatrix}&lt;br /&gt;
      -0.1 A(t)x(t) \\&lt;br /&gt;
      0.1 A(t)x(t)-0.1 x(t)y(t) \\&lt;br /&gt;
      0.1 x(t)y(t)-0.05 y(t) \\&lt;br /&gt;
      0.05 y(t)x(t)\\&lt;br /&gt;
   \end{bmatrix}&lt;br /&gt;
&lt;br /&gt;
 \\ \\ \vec{z}(0)=&lt;br /&gt;
   \begin{bmatrix}&lt;br /&gt;
      A(0) \\&lt;br /&gt;
      x(0) \\&lt;br /&gt;
      y(0) \\&lt;br /&gt;
      B(0) \\&lt;br /&gt;
   \end{bmatrix}&lt;br /&gt;
=&lt;br /&gt;
      \begin{bmatrix}&lt;br /&gt;
      5 \\&lt;br /&gt;
      5·10^{-4} \\&lt;br /&gt;
      10^{-5} \\&lt;br /&gt;
      0&lt;br /&gt;
   \end{bmatrix}&lt;br /&gt;
\end{cases}\quad t\in[0,200]&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
A continuación, detallamos la función &amp;lt;math&amp;gt;\vec{F}&amp;lt;/math&amp;gt; de la que dependerán los valores de los parámetros &amp;lt;math&amp;gt;k_i&amp;lt;/math&amp;gt;:&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;\vec{F}(A,x,y,B)=\vec{F}(\vec{z})=&lt;br /&gt;
\begin{bmatrix}&lt;br /&gt;
    f(\vec{z}) \\ &lt;br /&gt;
    g(\vec{z}) \\ &lt;br /&gt;
    h(\vec{z}) \\ &lt;br /&gt;
    i(\vec{z}) \\ &lt;br /&gt;
\end{bmatrix}=&lt;br /&gt;
\begin{bmatrix}&lt;br /&gt;
    A'(t) \\&lt;br /&gt;
    x'(t) \\&lt;br /&gt;
    y'(t) \\&lt;br /&gt;
    B'(t) \\&lt;br /&gt;
\end{bmatrix}=&lt;br /&gt;
\vec{z}'(t)=&lt;br /&gt;
      \begin{bmatrix}&lt;br /&gt;
      -0.1 A(t)x(t) \\&lt;br /&gt;
      0.1 A(t)x(t)-0.1 x(t)y(t) \\&lt;br /&gt;
      0.1 x(t)y(t)-0.05 y(t) \\&lt;br /&gt;
      0.05 y(t)x(t)\\&lt;br /&gt;
   \end{bmatrix}&lt;br /&gt;
&lt;br /&gt;
\quad \Rightarrow \quad &lt;br /&gt;
&lt;br /&gt;
\begin{cases}&lt;br /&gt;
 [\vec{k_1}] &amp;amp; =  F(\vec{z}_i) \\&lt;br /&gt;
 [\vec{k_2}] &amp;amp; =  F(\vec{z}_i + {1 \over 2}k_1h) \\&lt;br /&gt;
\end{cases}\quad [h=0.01]&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Entonces el método de Heun para este problema está dado por la siguiente ecuación:&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;\vec{z}_{i+1} = \vec{z}_{i} + {1 \over 2}h(\vec{k_1}+\vec{k_2})&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Mediante el siguiente programa en Matlab calculamos numéricamente la solución y la representamos en un gráfico:&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Archivo:AXYBRK4.png|400px|miniaturadeimagen|derecha|Representación gráfica de las concentraciones de A,X,Y y B. Resolución del sistema por Heun]]&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
%Método de Heun&lt;br /&gt;
clc&lt;br /&gt;
&lt;br /&gt;
%Función F=[A'(t);x'(t); y'(t);B'(t)]&lt;br /&gt;
F=inline('0.1.*[-z(1)*z(2);z(1)*z(2)-z(2)*z(3);z(2)*z(3)-z(3)/2;z(3)/2]','z');&lt;br /&gt;
&lt;br /&gt;
%Datos del problema&lt;br /&gt;
A0=5;&lt;br /&gt;
x0=5*10^-4;&lt;br /&gt;
y0=10^(-5);&lt;br /&gt;
B0=0;&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=200;&lt;br /&gt;
h=0.1;&lt;br /&gt;
&lt;br /&gt;
%Vector de variable independiente (t)&lt;br /&gt;
t=t0:h:tN;&lt;br /&gt;
&lt;br /&gt;
%Matriz de variables dependientes z=[A;x;y;B]&lt;br /&gt;
z=zeros(4,length(t));&lt;br /&gt;
z(:,1)=[A0;x0;y0;B0];&lt;br /&gt;
&lt;br /&gt;
for i = 1:length(t)-1&lt;br /&gt;
    k1=F(z(:,i));&lt;br /&gt;
    k2=F(z(:,i)+k1.*h/2);&lt;br /&gt;
    z(:,i+1)=z(:,i)+h/2.*(k1+k2);&lt;br /&gt;
end&lt;br /&gt;
 &lt;br /&gt;
%Representación gráfica&lt;br /&gt;
hold on&lt;br /&gt;
plot(t,z(1,:),'b')&lt;br /&gt;
plot(t,z(2,:),'r')&lt;br /&gt;
plot(t,z(3,:),'g')&lt;br /&gt;
plot(t,z(4,:),'m')&lt;br /&gt;
legend('Sustancia A: A(t)','Sustancia X: x(t)','Sustancia Y: y(t)','Sustancia B: B(t)','Location','Best')&lt;br /&gt;
xlabel('Tiempo (s)')&lt;br /&gt;
ylabel('Concentración (mol/l)')&lt;br /&gt;
grid on&lt;br /&gt;
hold off&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
== Interpretación de las gráficas == &lt;br /&gt;
 &lt;br /&gt;
El proceso comienza con el predominio absoluto del compuesto A en la concentración total, siendo la presencia de los otros tres compuestos despreciable. Durante los primeros segundos la situación apenas cambia, pero tras los diez primeros segundos la concentración de A cae bruscamente mientras que la concentración de X aumenta a la misma velocidad; antes de llegar a los veinte segundos transcurridos las concentraciones de ambos compuestos se igualan y otros quince segundos más tarde el compuesto A  prácticamente ha desaparecido y el X ha alcanzado su concentración máxima (5 mol/litro).&lt;br /&gt;
&lt;br /&gt;
Es entonces cuando concluye la primera reacción y comienzan las otras dos, al no haber más compuesto A que cree compuesto X. La velocidad de aparición de Y es inicialmente mayor que la de B, superando al poco tiempo en concentración a la sustancia X. Sin embargo, llega un momento en el que la concentración de X es tan baja que se ralentiza la creación de Y y pronto empieza a disminuir su concentración tras alcanzar un máximo en torno a los 56 segundos, perdiendo peso la segunda reacción en beneficio de la tercera.&lt;br /&gt;
&lt;br /&gt;
Tras los 60 segundos de reacción el compuesto X pasa a tener una concentración despreciable, por lo que la única reacción simple que se sigue desarrollando es la tercera, destruyéndose reactivo Y y creándose producto B. La concentración de Y va reduciéndose paulatinamente hasta que en torno a los 160 segundos de reacción alcanza niveles insignificantes mientras que la concentración de B alcanza su máximo de 5 mol/litro.&lt;br /&gt;
&lt;br /&gt;
Es interesante observar que en todo momento se cumple el Principio de Conservación de la masa: la suma en cualquier momento de las concentraciones de las sustancias es 5 mol /litro. Esto es fácilmente comprobable en los momentos en que las concentraciones de A, X y B alcanzan su máximo de 5 mol/litro y el resto de concentraciones son nulas o despreciables. &lt;br /&gt;
[[Categoría:Ecuaciones Diferenciales]]&lt;br /&gt;
[[Categoría:ED14/15]]&lt;br /&gt;
[[Categoría:Trabajos 2014-15]]&lt;/div&gt;</summary>
		<author><name>Javier Ruiz de Galarreta López</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Reacciones_con_autocat%C3%A1lisis._Grupo_D12&amp;diff=27491</id>
		<title>Reacciones con autocatálisis. Grupo D12</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Reacciones_con_autocat%C3%A1lisis._Grupo_D12&amp;diff=27491"/>
				<updated>2015-03-06T10:02:37Z</updated>
		
		<summary type="html">&lt;p&gt;Javier Ruiz de Galarreta López: /* Método de Euler */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{ TrabajoED | Reacciones con autocatálisis. Grupo D12 | [[:Categoría:Ecuaciones Diferenciales|Ecuaciones Diferenciales]]|[[:Categoría:ED14/15|Curso 2014-15]] | Javier Ruiz de Galarreta López, Argimiro Martínez López, Eduardo Moyano García, Alberto Rodríguez Ruiz. }}&lt;br /&gt;
&lt;br /&gt;
= Introducción: objetivos y metodología =&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
El objetivo de este trabajo es estudiar las concentraciones de los reactivos y productos de una reacción química a lo largo de la evolución en el tiempo de dicha reacción. Para ello modelizaremos el proceso empleando ecuaciones diferenciales y teniendo en cuenta la Ley de Acción de Masas y el Principio de Conservación de la materia.&lt;br /&gt;
&lt;br /&gt;
Al ser las ecuaciones y sistemas que se nos presentan de difícil resolución analítica, utilizaremos el programa informático Matlab para resolverlos mediante métodos numéricos como el de Euler, el del Trapecio, el de Runge-Kutta y el de Heun. &lt;br /&gt;
&lt;br /&gt;
Plasmaremos las soluciones en gráficos que nos permitirán dar una interpretación físico química a los resultados.&lt;br /&gt;
&lt;br /&gt;
= Reacción I =&lt;br /&gt;
&lt;br /&gt;
En primer lugar consideramos una reacción química irreversible en una solución bien mezclada, que se desarrolla para un volumen y una temperatura constantes, y en la que uno de los componentes (B, en este caso), hace de efecto catalítico.&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt; A + B →_{k1} 2B  &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Para desarrollar nuestro análisis nos apoyaremos en dos leyes físico químicas:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''Ley de acción de masas''': Enunciada por Guldberg y Waage en 1864, establece, entre otras cosas, que  la velocidad de&lt;br /&gt;
reacción es proporcional al producto de las concentraciones de los reactivos.&lt;br /&gt;
&lt;br /&gt;
'''Principio de conservación de la masa''': Establece que en una reacción química ordinaria la masa permanece constante, siendo la masa consumida de los reactivos igual a la masa obtenida de los productos. Fue elaborada independientemente por Míjail Lomonósov en 1745 y Antoine Lavoisier en 1785.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Interpretación del problema y deducción de las ecuaciones diferenciales ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Para hallar las ecuaciones diferenciales que nos describan cómo se desarrolla la reacción en el tiempo nos basaremos en las dos leyes enunciadas anteriormente. En primer lugar, definimos nuestra variable independiente como el tiempo &amp;lt;math&amp;gt;t&amp;lt;/math&amp;gt; en segundos. Las dos variables dependientes serán las concentraciones de los compuestos A y B, que denominaremos &amp;lt;math&amp;gt;x(t)&amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt;y(t)&amp;lt;/math&amp;gt;, ambas expresadas en mol/l. &lt;br /&gt;
&lt;br /&gt;
El principio de conservación de la masa expone que la suma de las concentraciones de los reactivos y los productos es constante. Esto equivale, derivando la expresión &amp;lt;math&amp;gt;x(t)+y(t)=cte&amp;lt;/math&amp;gt;, a que  desaparece tanto reactivo como producto aparece, o lo que es lo mismo, que la velocidad de aparición del producto es igual a la velocidad de desaparición (velocidad de aparición negativa) del reactivo:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;x'(t)=-y'(t)&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
La otra ecuación que necesitamos la obtenemos directamente de aplicar la Ley de acción de masas, que establece que la velocidad de la reacción (la velocidad a la que aparece el producto o desaparece el reactivo) es igual al producto de las concentraciones por una constante.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;y'(t)=k_1x(t)y(t)&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Obtención del problema de valor inicial ==&lt;br /&gt;
Una vez demostrado el origen de las ecuaciones (1) y (2) en el apartado anterior, obtendremos el problema de valor inicial (PVI) mediante las operaciones detalladas a continuación:&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;x'(t)+y'(t)=0\quad\quad(1)&amp;lt;/math&amp;gt;&lt;br /&gt;
:&amp;lt;math&amp;gt;y'(t)=k_1x(t)y(t)\quad\quad(2)&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Integrando (1) obtenemos (3):&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
:&amp;lt;math&amp;gt;\int_\mathbb{D} (\frac{dx(t)}{dt} + \frac{dy(t)}{dt})\,dt =\int_\mathbb{D} 0\,dt \quad \Rightarrow \quad x(t)+y(t)=k_2\quad \Rightarrow \quad x(t)=k_2-y(t)\quad\quad(3)&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Sustituyendo (3) en (2), obtenemos (4):&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;y'(t)=k_1x(t)y(t)\quad \Rightarrow \quad y'(t)=k_1(k_2-y(t))y(t)\quad \Rightarrow \quad y'(t)=k_1k_2y(t)-k_1y^2(t)\quad\quad(4)&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Conocemos las concentraciones iniciales de A y de B, por lo que podemos obtener el valor de la constante k&amp;lt;sub&amp;gt;2&amp;lt;/sub&amp;gt;:&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;[A]:\quad x(0)=1 mol/l;\quad\quad [B]:\quad y(0)=0,01 mol/l&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;x(t)+y(t)=k_2\quad \Rightarrow \quad x(0)+y(0)=k_2\quad \Rightarrow \quad 1+0,01=k_2\quad \Rightarrow \quad k_2=1,01&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Por último, conocemos también el valor de k&amp;lt;sub&amp;gt;1&amp;lt;/sub&amp;gt;, por lo que podremos plantear a continuación el correspondiente PVI:&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;k_1=1&amp;lt;/math&amp;gt;&lt;br /&gt;
:&amp;lt;math&amp;gt;(PVI)\begin{cases}y'(t)=1,01y(t)-y^2(t) \\ \\&lt;br /&gt;
y(0) = 0,01 \end{cases}\quad (t,y)\in[0,10]\times\mathbb{R}&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Unicidad de la solución ==&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Existencia-y-unicidad.png|200px|miniaturadeimagen|derecha|Intersección B con dominio]]&lt;br /&gt;
&lt;br /&gt;
Aplicamos a continuación el Teorema de Existencia y Unicidad:&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Sea &amp;lt;math&amp;gt;f(t,y)=y'(t) \Rightarrow f(t,y)=1.01y(t)-y^2(t)\quad&amp;lt;/math&amp;gt;, y &amp;lt;math&amp;gt;\quad\frac{\partial }{\partial y} f(t,y) = 1.01-2y(t)&amp;lt;/math&amp;gt;.&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
Y sea &amp;lt;math&amp;gt;B[(t_0,y_0),r],\quad r&amp;gt;0,\quad en (t_0,y_0)=(0,0.01)&amp;lt;/math&amp;gt;.&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;f(t,y)&amp;lt;/math&amp;gt; es continua en &amp;lt;math&amp;gt; \mathbb{B}\cap \mathbb{D}\quad \Rightarrow \quad \exists  y(t)\quad /\quad y'(t)=1,01y(t)-y^2(t)&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;math&amp;gt;\frac{\partial }{\partial y} f(t,y)&amp;lt;/math&amp;gt; es continua en &amp;lt;math&amp;gt; \mathbb{B}\cap \mathbb{D}\quad \Rightarrow \quad \exists !  y(t)\quad /\quad y'(t)=1,01y(t)-y^2(t)&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Con lo que queda demostrado que el (PVI) tiene solución y además esta es única.&lt;br /&gt;
&lt;br /&gt;
== Resolución numérica del problema de valor inicial ==&lt;br /&gt;
&lt;br /&gt;
En este apartado resolveremos el problema de valor inicial planteado anteriormente con tres métodos de integración numérica: el método de Euler, el método del Trapecio y el método de Runge-Kutta de orden 4.&lt;br /&gt;
&lt;br /&gt;
=== Método de Euler ===&lt;br /&gt;
&lt;br /&gt;
El método de Euler, llamado así en honor al matemático Leonhard Euler, es un procedimiento de integración numérica. Su expresión matemática es: &lt;br /&gt;
&amp;lt;math&amp;gt;  PVI = &lt;br /&gt;
   \left \{&lt;br /&gt;
      \begin{array}{rcl}y_0\\&lt;br /&gt;
           y_{n+1} = y_n + h*f(t_n,y_n)\\ &lt;br /&gt;
      \end{array}&lt;br /&gt;
   \right .&lt;br /&gt;
   &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
A continuación emplearemos esta expresión en un programa de Matlab para obtener una aproximación de las soluciones. El código de dicho programa es el siguiente.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Eulergrafica.png|400px|miniaturadeimagen|derecha|Representación gráfica y(t). Método de Euler]]&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
%Método de Euler&lt;br /&gt;
clc&lt;br /&gt;
&lt;br /&gt;
%Datos iniciales&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=4;&lt;br /&gt;
y0=0.01;&lt;br /&gt;
h=0.1;&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=10;&lt;br /&gt;
&lt;br /&gt;
%Cálculo de subintervalos&lt;br /&gt;
N=round((tN-t0)/h);&lt;br /&gt;
t=t0:h:tN;&lt;br /&gt;
&lt;br /&gt;
%Creamos el vector donde vamos a guardar las soluciones&lt;br /&gt;
y=zeros(1,N+1);&lt;br /&gt;
y(1)=y0;&lt;br /&gt;
&lt;br /&gt;
%Euler&lt;br /&gt;
for i=1:N;&lt;br /&gt;
    y(i+1)=y(i)+h*(1.01*y(i)-(y(i)).^2);&lt;br /&gt;
end&lt;br /&gt;
%Tabla de Resultados&lt;br /&gt;
[t',y']&lt;br /&gt;
x=1.01-y;&lt;br /&gt;
hold on &lt;br /&gt;
plot(t,y,'r')&lt;br /&gt;
plot(t,x,'b')&lt;br /&gt;
hold off&lt;br /&gt;
legend('Sustancia B: y(t)','Sustancia A: x(t)','Location','best');&lt;br /&gt;
xlabel('Tiempo (s)')&lt;br /&gt;
ylabel('Concentración (mol/l)')&lt;br /&gt;
grid on&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
=== Método del trapecio ===&lt;br /&gt;
&lt;br /&gt;
Vamos a aplicar un método de integración numérica conocido como el Método del Trapecio por aproximar el valor de la integral al del área de un trapecio. Su expresión matemática es:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;  PVI = &lt;br /&gt;
   \left \{&lt;br /&gt;
      \begin{array}{rcl}&lt;br /&gt;
          y_0\\&lt;br /&gt;
           y_{n+1} = y_n + \frac{h}{2}*f(t_n,y_n)\\ &lt;br /&gt;
      \end{array}&lt;br /&gt;
   \right .&lt;br /&gt;
   &amp;lt;/math&amp;gt;&lt;br /&gt;
Introducimos esta expresión en el código y obtenemos la gráfica de la solución.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Trapeciografica.png|400px|miniaturadeimagen|derecha|Representación gráfica y(t). Método del Trapecio]]&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
%Método del Trapecio&lt;br /&gt;
clc&lt;br /&gt;
&lt;br /&gt;
%Datos iniciales&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=4;&lt;br /&gt;
y0=0.01;&lt;br /&gt;
h=0.1;&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=10;&lt;br /&gt;
&lt;br /&gt;
%Cálculo de subintervalos&lt;br /&gt;
N=round((tN-t0)/h);&lt;br /&gt;
t=t0:h:tN;&lt;br /&gt;
&lt;br /&gt;
%Creamos el vector donde vamos a guardar las soluciones&lt;br /&gt;
y=zeros(1,N+1);&lt;br /&gt;
y(1)=y0;&lt;br /&gt;
&lt;br /&gt;
for i=1:N&lt;br /&gt;
y(i+1)=(((1-(h/2)*1.01)-sqrt(((1-(h/2)*1.01)^2)+4*(h/2)*((1+(h/2)*1.01)*y(i)-(h/2)*(y(i))^2)))/-h);&lt;br /&gt;
end&lt;br /&gt;
%Sacamos la tabla de resultados&lt;br /&gt;
[t',y']&lt;br /&gt;
x=1.01-y;&lt;br /&gt;
%Gráfico&lt;br /&gt;
hold on&lt;br /&gt;
plot(t,y,'r')&lt;br /&gt;
plot(t,x,'b')&lt;br /&gt;
legend('Sustancia B: y(t)','Sustancia A: x(t)','Location','best');&lt;br /&gt;
xlabel('Tiempo (s)')&lt;br /&gt;
ylabel('Concentración (mol/l)')&lt;br /&gt;
grid on&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
=== Método de Runge-Kutta ===&lt;br /&gt;
&lt;br /&gt;
El método de resolución numérica de Runge-Kutta, involucra un gran número de parámetros. Para simplificar la implementación de este método en Matlab, utilizaremos la función ''inline'', con la que declararemos previamente la función algebraica necesaria para el cálculo de los parámetros &amp;lt;math&amp;gt;k_i&amp;lt;/math&amp;gt;, ahorrándonos tener que escribir innumerables veces la correspondiente expresión matemática.&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
A continuación, detallamos la función &amp;lt;math&amp;gt;f(y)&amp;lt;/math&amp;gt; de la que dependerán los valores de los parámetros &amp;lt;math&amp;gt;k_i&amp;lt;/math&amp;gt;:&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;f(y)=y'(t)=1.01y(t)-y(t)^2&lt;br /&gt;
&lt;br /&gt;
\quad \Rightarrow \quad&lt;br /&gt;
&lt;br /&gt;
\begin{cases}&lt;br /&gt;
 k_1 &amp;amp; =  f(y_i) \\&lt;br /&gt;
 k_2 &amp;amp; =  f(y_i + {1 \over 2}k_1h) \\&lt;br /&gt;
 k_3 &amp;amp; =  f(y_i + \frac{1}{2}k_2h) \\&lt;br /&gt;
 k_4 &amp;amp; =  f(y_i + k_3h) \\&lt;br /&gt;
\end{cases}\quad [h=0.1]&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Entonces el método RK4 para este problema está dado por la siguiente ecuación:&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;y_{i+1} = y_{i} + {1 \over 6}h(k_1+2k_2+2k_3+k_4)&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Mediante el siguiente programa en Matlab calculamos numéricamente la solución y la representamos en un gráfico:&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Archivo:RK4II.png|400px|miniaturadeimagen|derecha|Representación gráfica y(t). Método Runge-Kutta]]&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
%Método de Runge-Kutta&lt;br /&gt;
clc&lt;br /&gt;
&lt;br /&gt;
%Función f(t)=y'(t)&lt;br /&gt;
fy=inline('1.01*y-y^2','y');&lt;br /&gt;
&lt;br /&gt;
%Datos del problema&lt;br /&gt;
y0=0.01;&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=10;&lt;br /&gt;
h=0.1;&lt;br /&gt;
&lt;br /&gt;
%Variable independiente (t)&lt;br /&gt;
t=t0:h:tN;&lt;br /&gt;
&lt;br /&gt;
%Variable dependiente (y)&lt;br /&gt;
y=zeros(1,length(t));&lt;br /&gt;
y(1)=y0;&lt;br /&gt;
&lt;br /&gt;
for i=1:length(t)-1&lt;br /&gt;
    k1=fy(y(i));&lt;br /&gt;
    k2=fy(y(i)+k1/2*h);&lt;br /&gt;
    k3=fy(y(i)+k2/2*h);&lt;br /&gt;
    k4=fy(y(i)+k3*h);&lt;br /&gt;
    y(i+1)=y(i)+h/6*(k1+2*k2+2*k3+k4);&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
%Variable dependiente (x)&lt;br /&gt;
x=1.01-y;&lt;br /&gt;
&lt;br /&gt;
%Representación gráfica&lt;br /&gt;
hold on&lt;br /&gt;
plot(t,x,'b')&lt;br /&gt;
plot(t,y,'r')&lt;br /&gt;
legend('Sustancia A: x(t)','Sustancia B: y(t)')&lt;br /&gt;
xlabel('Tiempo (s)')&lt;br /&gt;
ylabel('Concentración (mol/l)')&lt;br /&gt;
grid on&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
=== Comparación de métodos===&lt;br /&gt;
&lt;br /&gt;
Podemos observar fácilmente que las gráficas obtenidas con los diferentes métodos son iguales a primera vista. Sin embargo, superponiéndolas queda patente que no son exactamente iguales debido a que los métodos no poseen la misma precisión y , al operar todos con la misma longitud de paso, unos aproximan la solución exacta mejor que otros. Así se observa en estas imágenes:&lt;br /&gt;
&lt;br /&gt;
[[Archivo:comparativa1.jpg|400px|miniaturadeimagen|izquierda|Comparación de métodos]]&lt;br /&gt;
[[Archivo:comparativa2.jpg|400px|miniaturadeimagen|derecha|Comparación de métodos]]&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
Como podemos comprobar en las imágenes, el método de Euler es menos preciso que el del trapecio o el de Runge-Kutta.&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Resolución en forma de sistema de ecuaciones ==&lt;br /&gt;
&lt;br /&gt;
A continuación vamos a plantear el problema de valor inicial con un sistema no lineal de dos ecuaciones equivalente al problema resuelto anteriormente.&lt;br /&gt;
&lt;br /&gt;
Estas ecuaciones serán:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;(PVI)&lt;br /&gt;
\begin{cases}&lt;br /&gt;
    y'(t)=k_1 x(t)y(t) \\&lt;br /&gt;
    x'(t)=-k_1 x(t)y(t) \\&lt;br /&gt;
    \\&lt;br /&gt;
    x(0)=1 \\&lt;br /&gt;
    y(0) = 0.01&lt;br /&gt;
\end{cases}&lt;br /&gt;
\quad t\in[0,10]&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Resolveremos el problema por el método de Euler y por el método de Runge-Kutta, plasmando las soluciones en gráficos.&lt;br /&gt;
&lt;br /&gt;
=== Método de Euler ===&lt;br /&gt;
&lt;br /&gt;
En este caso aplicaremos en el siguiente código la expresión para EDO a cada una de las ecuaciones que conforma el sistema, obteniendo la correspondiente gráfica.&lt;br /&gt;
 &lt;br /&gt;
[[Archivo:SistEuler.png|400px|miniaturadeimagen|derecha|Representación gráfica de las concentraciones de A y B. Resolución del sistema por Euler]]&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
&lt;br /&gt;
%Resolución del sistema por el método de Euler&lt;br /&gt;
&lt;br /&gt;
clear all&lt;br /&gt;
&lt;br /&gt;
%Definimos el vector de la variable independiente, el número de&lt;br /&gt;
%subintervalos y la longitud de paso&lt;br /&gt;
&lt;br /&gt;
t0 = 0;&lt;br /&gt;
tN = 10;&lt;br /&gt;
h = 0.1;&lt;br /&gt;
t = t0:h:tN&lt;br /&gt;
N = (tN-t0)/h;&lt;br /&gt;
&lt;br /&gt;
%Definimos los vectores de las variables dependientes&lt;br /&gt;
&lt;br /&gt;
x = zeros(1, N+1);&lt;br /&gt;
y = zeros(1, N+1);&lt;br /&gt;
&lt;br /&gt;
x(1) = 1;&lt;br /&gt;
y(1) = 0.01;&lt;br /&gt;
&lt;br /&gt;
for i = 1:N&lt;br /&gt;
    &lt;br /&gt;
    x(i+1)=x(i)+h*(-x(i).*y(i));&lt;br /&gt;
    y(i+1)=y(i)+h*(y(i).*x(i));&lt;br /&gt;
    &lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
%Representamos gráficamente las soluciones&lt;br /&gt;
&lt;br /&gt;
hold on&lt;br /&gt;
&lt;br /&gt;
plot(t,x,'b');&lt;br /&gt;
plot(t,y,'r');&lt;br /&gt;
grid on&lt;br /&gt;
&lt;br /&gt;
legend('Sustancia A: x(t)','Sustancia B: y(t)')&lt;br /&gt;
xlabel('Tiempo (s)')&lt;br /&gt;
ylabel('Concentración (mol/l)')&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
hold off&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
}}&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
A continuación tendremos que comprobar si el método es estable.&lt;br /&gt;
Un método es estable cuando el error local es pequeño y además este error no se amplifica a lo largo del tiempo. Para calificar la estabilidad del método de Euler resolveremos el sistema usando &amp;quot;h=0.01&amp;quot; y &amp;quot;h=0.001&amp;quot;. Para ello usaremos el mismo programa anterior simplemente variando h. La línea azul representa el programa que usa &amp;quot;h=0.01&amp;quot; y la línea roja representa el programa que usa &amp;quot;h=0.001&amp;quot;&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Comparacioneulers123.jpg|400px|miniaturadeimagen|izquierda|Representación gráfica y(t). Método de Euler]]&lt;br /&gt;
[[Archivo:Comparacioneulers321.jpg|400px|miniaturadeimagen|derecha|Representación gráfica y(t). Método de Euler]]&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
Como podemos ver en la primera imágen las gráficas se superponen y no se aprecian diferencias hasta que no ampliamos la imagen. Y esto sucede en todo momento con lo que podemos garantizar que en este caso es estable.&lt;br /&gt;
&lt;br /&gt;
=== Método de Runge-Kutta===&lt;br /&gt;
&lt;br /&gt;
El método de resolución numérica de Runge-Kutta, involucra un gran número de parámetros. Para simplificar la implementación de este método en Matlab, el sistema se tratará como una matriz &amp;lt;math&amp;gt;z&amp;lt;/math&amp;gt;. Además, utilizaremos la función ''inline'', con la que declararemos previamente la función algebraica necesaria para el cálculo de los parámetros &amp;lt;math&amp;gt;k_i&amp;lt;/math&amp;gt;, ahorrándonos tener que escribir innumerables veces la correspondiente expresión matemática.&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Primero, expresamos el sistema en forma matricial:&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;(PVI)\begin{cases}&lt;br /&gt;
    x'(t)=-k_1 x(t)y(t) \\&lt;br /&gt;
    y'(t)=k_1 x(t)y(t) \\&lt;br /&gt;
    \\&lt;br /&gt;
    x(0)=1 \\&lt;br /&gt;
    y(0) = 0.01&lt;br /&gt;
\end{cases}\quad t\in[0,10]&lt;br /&gt;
&lt;br /&gt;
\quad \Rightarrow \quad k_1=1\quad \Rightarrow \quad&lt;br /&gt;
&lt;br /&gt;
(PVI)\begin{cases}\vec{z}'(t)=&lt;br /&gt;
   \begin{bmatrix}&lt;br /&gt;
      x'(t) \\&lt;br /&gt;
      y'(t) \\&lt;br /&gt;
   \end{bmatrix}&lt;br /&gt;
=&lt;br /&gt;
      \begin{bmatrix}&lt;br /&gt;
      -x(t)y(t) \\&lt;br /&gt;
      x(t)y(t) \\&lt;br /&gt;
   \end{bmatrix}&lt;br /&gt;
&lt;br /&gt;
 \\ \\ \vec{z}(0)=&lt;br /&gt;
   \begin{bmatrix}&lt;br /&gt;
      x(0) \\&lt;br /&gt;
      y(0) \\&lt;br /&gt;
   \end{bmatrix}&lt;br /&gt;
=&lt;br /&gt;
      \begin{bmatrix}&lt;br /&gt;
      1 \\&lt;br /&gt;
      0.01 \\&lt;br /&gt;
   \end{bmatrix}&lt;br /&gt;
\end{cases}\quad t\in[0,10]&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
A continuación, detallamos la función &amp;lt;math&amp;gt;\vec{F}&amp;lt;/math&amp;gt; de la que dependerán los valores de los parámetros &amp;lt;math&amp;gt;k_i&amp;lt;/math&amp;gt;:&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;\vec{F}(x,y)=\vec{F}(\vec{z})=&lt;br /&gt;
&lt;br /&gt;
\begin{bmatrix}&lt;br /&gt;
    f(\vec{z}) \\&lt;br /&gt;
    g(\vec{z}) \\&lt;br /&gt;
\end{bmatrix}=&lt;br /&gt;
&lt;br /&gt;
\begin{bmatrix}&lt;br /&gt;
    x'(t) \\&lt;br /&gt;
    y'(t) \\&lt;br /&gt;
\end{bmatrix}=&lt;br /&gt;
&lt;br /&gt;
\vec{z}'(t)=&lt;br /&gt;
&lt;br /&gt;
\begin{bmatrix}&lt;br /&gt;
    -x(t)y(t) \\&lt;br /&gt;
    x(t)y(t) \\&lt;br /&gt;
\end{bmatrix}&lt;br /&gt;
\quad \Rightarrow \quad&lt;br /&gt;
&lt;br /&gt;
\begin{cases}&lt;br /&gt;
 [\vec{k_1}] &amp;amp; =  F(\vec{z}_i) \\&lt;br /&gt;
 [\vec{k_2}] &amp;amp; =  F(\vec{z}_i + {1 \over 2}k_1h) \\&lt;br /&gt;
 [\vec{k_3}] &amp;amp; =  F(\vec{z}_i + \frac{1}{2}k_2h) \\&lt;br /&gt;
 [\vec{k_4}] &amp;amp; =  F(\vec{z}_i + k_3h) \\&lt;br /&gt;
\end{cases}\quad [h=0.1]&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Entonces el método RK4 para este problema está dado por la siguiente ecuación:&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;\vec{z}_{i+1} = \vec{z}_{i} + {1 \over 6}h(\vec{k_1}+2\vec{k_2}+2\vec{k_3}+\vec{k_4})&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Mediante el siguiente programa en Matlab calculamos numéricamente la solución y la representamos en un gráfico:&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Archivo:sistema_RK4.png|400px|miniaturadeimagen|derecha|Representación gráfica de las concentraciones de A y B. Resolución del sistema por Runge-Kutta]]&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
%Método de Runge-Kutta&lt;br /&gt;
clc&lt;br /&gt;
&lt;br /&gt;
%Función F=[x'(t); y'(t)]&lt;br /&gt;
F=inline('[-z(1)*z(2);z(1)*z(2)]','z');&lt;br /&gt;
&lt;br /&gt;
%Datos del problema &lt;br /&gt;
x0=1;&lt;br /&gt;
y0=0.01;&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=10;&lt;br /&gt;
h=0.1;&lt;br /&gt;
&lt;br /&gt;
%Vector de variable independiente (t)&lt;br /&gt;
t=t0:h:tN;&lt;br /&gt;
&lt;br /&gt;
%Matriz de variables dependientes z=[x;y]&lt;br /&gt;
z=zeros(2,length(t));&lt;br /&gt;
z(:,1)=[x0;y0];&lt;br /&gt;
&lt;br /&gt;
for i = 1:length(t)-1&lt;br /&gt;
    k1=F(z(:,i));&lt;br /&gt;
    k2=F(z(:,i)+k1.*h/2);&lt;br /&gt;
    k3=F(z(:,i)+k2.*h/2);&lt;br /&gt;
    k4=F(z(:,i)+k3.*h);&lt;br /&gt;
    z(:,i+1)=z(:,i)+h/6.*(k1+2.*k2+2.*k3+k4);&lt;br /&gt;
end&lt;br /&gt;
 &lt;br /&gt;
%Representación gráfica&lt;br /&gt;
hold on&lt;br /&gt;
plot(t,z(1,:))&lt;br /&gt;
plot(t,z(2,:),'r')&lt;br /&gt;
legend('Sustancia A: x(t)','Sustancia B: y(t)')&lt;br /&gt;
xlabel('Tiempo (s)')&lt;br /&gt;
ylabel('Concentración (mol/l)')&lt;br /&gt;
grid on&lt;br /&gt;
%hold off&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
== Interpretación de las gráficas ==&lt;br /&gt;
&lt;br /&gt;
Como cabía esperar, obtenemos la misma solución resolviendo el problema como sistema o como EDO. Podemos observar por los resultados obtenidos que la velocidad de aparición de B es igual a la velocidad de desaparición de A (como dicta el principio de conservación de la masa), que A acaba desapareciendo prácticamente por completo y que la concentración de B termina por estabilizarse alrededor de 1 mol/l. Ambos compuestos alcanzan sus los extremos de sus concentraciones en el mismo instante de tiempo&lt;br /&gt;
&lt;br /&gt;
También cabe destacar que cuando el tiempo transcurrido alcanza 4,5 segundos las concentraciones de ambos compuestos son las mismas.&lt;br /&gt;
&lt;br /&gt;
= Reacción II =&lt;br /&gt;
&lt;br /&gt;
En este apartado vamos a estudiar la reacción propuesta por Alfred J. Lotka en 1920, que es la siguiente:&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt; A + X →_{k1} 2X;&amp;lt;/math&amp;gt;     :&amp;lt;math&amp;gt; X + Y →_{k2} 2Y;&amp;lt;/math&amp;gt;     :&amp;lt;math&amp;gt;Y →_{k3} 2B  &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Como se puede observar, se trata de una reacción compleja integrada por 3 reacciones simples (las dos primeras autocatalíticas) en las que intervienen un total de 4 compuestos, A, B, X e Y. Siguiendo el desarrollo de la reacción, es lógico suponer que A se agotará al comienzo de la reacción, que los máximos de concentración de X e Y se darán en los estados intermedios y que al final el compuesto B será el único restante, siendo el producto final de la reacción.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Interpretación del problema y deducción de las ecuaciones diferenciales ==&lt;br /&gt;
&lt;br /&gt;
Para averiguar cómo evolucionan las concentraciones de los cuatro compuestos durante el desarrollo de la reacción necesitaremos obtener cuatro ecuaciones diferenciales. Para ello nos volveremos a basar en los principios físicos que ya empleamos en la anterior reacción. Definimos A(t), x(t), y(t), y B(t) (A, x, y, B; para ahorrar notación) a las concentraciones de A, X, Y, y B, respectivamente. &lt;br /&gt;
&lt;br /&gt;
En primer lugar aplicamos el Principio de Conservación de la masa, que establece que la suma de las concentraciones de los compuestos es constante (no desaparece masa en el proceso), lo que derivando nos indica que:&lt;br /&gt;
&lt;br /&gt;
: &amp;lt;math&amp;gt; A' + y' + y' + B' = 0 \quad\quad(I)&amp;lt;/math&amp;gt;       &lt;br /&gt;
&lt;br /&gt;
A continuación aplicaremos la Ley de Acción de Masas (velocidad de reacción proporcional al producto de la concentración de los reactivos).&lt;br /&gt;
&lt;br /&gt;
Aplicando esta ley a la última reacción simple obtenemos que: &lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;B'=k_3y \quad\quad(II)&amp;lt;/math&amp;gt;        &lt;br /&gt;
&lt;br /&gt;
En el caso de las concentraciones de X e Y las expresiones resultantes son algo más complicadas ya que estos dos compuestos actúan como reactivos y productos en más de una reacción simple, por lo que la variación de sus concentraciones será la suma de las variaciones de las reacciones en las que aparezcan:&lt;br /&gt;
&lt;br /&gt;
: &amp;lt;math&amp;gt; x' = x'_{1} + x'_{2} → x' = k_{1}Ax - k{2}xy \quad\quad(III)&amp;lt;/math&amp;gt;        &lt;br /&gt;
: &amp;lt;math&amp;gt; y' = y'_{2} + y'_{3} → y' = k_{2}xy − k_3{y} \quad\quad(IV)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Por último sustituimos (II), (III) y (IV) en (I) obteniendo: &lt;br /&gt;
&lt;br /&gt;
: &amp;lt;math&amp;gt; A' + k_{1}Ax - k{2}xy + k_{2}xy − k_3{y}+ k_3y= 0 : &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
De donde obtenemos que:&lt;br /&gt;
&lt;br /&gt;
: &amp;lt;math&amp;gt; A' = -k_{1}Ax &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Ahora que ya tenemos las variaciones de concentración de los compuestos en función de las concentraciones podemos aplicar métodos numéricos que nos lleven a una solución aproximada.&lt;br /&gt;
&lt;br /&gt;
== Resolución numérica del sistema de ecuaciones ==&lt;br /&gt;
&lt;br /&gt;
Una vez obtenidas las ecuaciones y conociendo las condiciones iniciales y los valores de las constantes podemos plantear el problema de valor inicial para luego resolverlo.&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;(PVI)&lt;br /&gt;
\begin{cases}&lt;br /&gt;
    A' = -k_{1}Ax\\&lt;br /&gt;
    x' = k_{1}Ax - k{2}xy\\&lt;br /&gt;
    y' = k_{2}xy − k_3{y}\\&lt;br /&gt;
    B'=k_3y \\&lt;br /&gt;
\\&lt;br /&gt;
    A(0)=5  \\&lt;br /&gt;
    x(0)=5*10^{-4} \\&lt;br /&gt;
    y(0)=10^{-5}\\&lt;br /&gt;
    B(0)=0 \\&lt;br /&gt;
\end{cases}&lt;br /&gt;
\quad t\in[0,200]&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Siendo &amp;lt;math&amp;gt; k_{1}=K_{2}=2k_{3}=0.1 &amp;lt;/math&amp;gt; y las unidades de la concentración mol/l.&lt;br /&gt;
&lt;br /&gt;
=== Método de Euler ===&lt;br /&gt;
&lt;br /&gt;
Aplicamos el método de Euler de forma análoga a como lo hicimos en [[Reacciones_con_autocatálisis._Grupo_D12#Método_de_Euler_2|apartado 2.5.1]]&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Euler lotka0.01.png|400px|miniaturadeimagen|derecha|Representación gráfica de las concentraciones de A, B, X, e Y a lo largo del tiempo. Resoluciónd delsistema por el método de Euler con longitud de paso h=0.01]] &lt;br /&gt;
[[Archivo:Euler lotka0.001.png|400px|miniaturadeimagen|derecha|Representación gráfica de las concentraciones de A, B, X, e Y a lo largo del tiempo. Resoluciónd delsistema por el método de Euler con longitud de paso h=0.001]]&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
&lt;br /&gt;
%Resolución del sistema de la reacción de Lotka por el método de Euler&lt;br /&gt;
&lt;br /&gt;
clear all&lt;br /&gt;
&lt;br /&gt;
%Definimos la variable independiente y establecemos los datos del problema&lt;br /&gt;
%de valor inicial. Para la longitud de paso h introducimos en primer lugar&lt;br /&gt;
%0.01 y luego 0.001&lt;br /&gt;
&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=200;&lt;br /&gt;
h= input('Introduzca una longitud de paso ');&lt;br /&gt;
t = t0:h:tN;&lt;br /&gt;
N=(tN-t0)/h;&lt;br /&gt;
k1 = 0.1;&lt;br /&gt;
k2 = 0.1;&lt;br /&gt;
k3 = 0.05;&lt;br /&gt;
A0 = 5;&lt;br /&gt;
B0 = 0;&lt;br /&gt;
X0 = 5*10^(-4);&lt;br /&gt;
Y0 = 10^(-5);&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
%Definimos las variables dependientes.&lt;br /&gt;
&lt;br /&gt;
A = zeros(1, N-1);&lt;br /&gt;
B = A;&lt;br /&gt;
X = A;&lt;br /&gt;
Y = A;&lt;br /&gt;
&lt;br /&gt;
A(1) = A0;&lt;br /&gt;
B(1) = B0;&lt;br /&gt;
X(1) = X0;&lt;br /&gt;
Y(1) = Y0;&lt;br /&gt;
&lt;br /&gt;
for i = 1:N&lt;br /&gt;
    &lt;br /&gt;
    X(i+1) = X(i) + h*(k1*A(i)*X(i)-k2*Y(i)*X(i));&lt;br /&gt;
    Y(i+1)=Y(i)+h.*(k2.*X(i).*Y(i)-k3.*Y(i));&lt;br /&gt;
    B(i+1) = B(i) + h*(k3*Y(i));&lt;br /&gt;
    A(i+1) = A(i) + h*(-k1*A(i)*X(i));&lt;br /&gt;
   &lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
%Representamos gráficamente la solución&lt;br /&gt;
&lt;br /&gt;
hold on&lt;br /&gt;
&lt;br /&gt;
plot (t,A,'b')&lt;br /&gt;
plot(t, X, 'r')&lt;br /&gt;
plot(t,Y, 'g')&lt;br /&gt;
plot(t, B, 'm')&lt;br /&gt;
legend('Sustancia A: A(t)','Sustancia X: x(t)','Sustancia Y: y(t)','Sustancia B: B(t)','Location','Best')&lt;br /&gt;
xlabel('Tiempo (s)')&lt;br /&gt;
ylabel('Concentración (mol/l)')&lt;br /&gt;
grid on&lt;br /&gt;
&lt;br /&gt;
hold off&lt;br /&gt;
&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
=== Método de Heun ===&lt;br /&gt;
&lt;br /&gt;
Si bien el método de resolución numérica de Heun no involucra un número de parámetros tan notable como el método de Runge-Kutta, en este caso tenemos un sistema de 4 ecuaciones diferenciales, por lo que, en aras de simplificar, utilizaremos el mismo criterio que en el [[Reacciones_con_autocatálisis._Grupo_D12#Método_de_Runge-Kutta_2|apartado 2.5.2]].: El sistema se tratará como una matriz &amp;lt;math&amp;gt;z&amp;lt;/math&amp;gt;, y para la obtención de los parámetros &amp;lt;math&amp;gt;k_i&amp;lt;/math&amp;gt; utilizaremos la función ''inline'', con la que declararemos previamente las expresiones necesarias para el cálculo de los parámetros &amp;lt;math&amp;gt;k_i&amp;lt;/math&amp;gt;.&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Primero, expresamos el sistema en forma matricial:&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;(PVI)\begin{cases}&lt;br /&gt;
A'(t)=-k_1 A(t)x(t) \\&lt;br /&gt;
x'(t)=k_1 A(t)x(t)-k_2 x(t)y(t) \\&lt;br /&gt;
y'(t)=k_2 x(t)y(t)-k_3 y(t) \\&lt;br /&gt;
B'(t)=k_3 x(t)y(t) \\ \\&lt;br /&gt;
A(0)=5 \\&lt;br /&gt;
x(0)=5·10^{-4} \\&lt;br /&gt;
y(0)=10^{-5} \\&lt;br /&gt;
B(0) = 0&lt;br /&gt;
\end{cases}\quad t\in[0,200]&lt;br /&gt;
&lt;br /&gt;
\quad \Rightarrow \quad&lt;br /&gt;
&lt;br /&gt;
\begin{cases}&lt;br /&gt;
k_1=0.1 \\&lt;br /&gt;
k_2=0.1 \\&lt;br /&gt;
k_3=0.05 \\&lt;br /&gt;
&lt;br /&gt;
\end{cases}&lt;br /&gt;
&lt;br /&gt;
\quad \Rightarrow \quad&lt;br /&gt;
&lt;br /&gt;
(PVI)\begin{cases}\vec{z}'(t)=&lt;br /&gt;
   \begin{bmatrix}&lt;br /&gt;
      A'(t) \\&lt;br /&gt;
      x'(t) \\&lt;br /&gt;
      y'(t) \\&lt;br /&gt;
      B'(t) \\&lt;br /&gt;
   \end{bmatrix}&lt;br /&gt;
=&lt;br /&gt;
      \begin{bmatrix}&lt;br /&gt;
      -0.1 A(t)x(t) \\&lt;br /&gt;
      0.1 A(t)x(t)-0.1 x(t)y(t) \\&lt;br /&gt;
      0.1 x(t)y(t)-0.05 y(t) \\&lt;br /&gt;
      0.05 y(t)x(t)\\&lt;br /&gt;
   \end{bmatrix}&lt;br /&gt;
&lt;br /&gt;
 \\ \\ \vec{z}(0)=&lt;br /&gt;
   \begin{bmatrix}&lt;br /&gt;
      A(0) \\&lt;br /&gt;
      x(0) \\&lt;br /&gt;
      y(0) \\&lt;br /&gt;
      B(0) \\&lt;br /&gt;
   \end{bmatrix}&lt;br /&gt;
=&lt;br /&gt;
      \begin{bmatrix}&lt;br /&gt;
      5 \\&lt;br /&gt;
      5·10^{-4} \\&lt;br /&gt;
      10^{-5} \\&lt;br /&gt;
      0&lt;br /&gt;
   \end{bmatrix}&lt;br /&gt;
\end{cases}\quad t\in[0,200]&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
A continuación, detallamos la función &amp;lt;math&amp;gt;\vec{F}&amp;lt;/math&amp;gt; de la que dependerán los valores de los parámetros &amp;lt;math&amp;gt;k_i&amp;lt;/math&amp;gt;:&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;\vec{F}(A,x,y,B)=\vec{F}(\vec{z})=&lt;br /&gt;
\begin{bmatrix}&lt;br /&gt;
    f(\vec{z}) \\ &lt;br /&gt;
    g(\vec{z}) \\ &lt;br /&gt;
    h(\vec{z}) \\ &lt;br /&gt;
    i(\vec{z}) \\ &lt;br /&gt;
\end{bmatrix}=&lt;br /&gt;
\begin{bmatrix}&lt;br /&gt;
    A'(t) \\&lt;br /&gt;
    x'(t) \\&lt;br /&gt;
    y'(t) \\&lt;br /&gt;
    B'(t) \\&lt;br /&gt;
\end{bmatrix}=&lt;br /&gt;
\vec{z}'(t)=&lt;br /&gt;
      \begin{bmatrix}&lt;br /&gt;
      -0.1 A(t)x(t) \\&lt;br /&gt;
      0.1 A(t)x(t)-0.1 x(t)y(t) \\&lt;br /&gt;
      0.1 x(t)y(t)-0.05 y(t) \\&lt;br /&gt;
      0.05 y(t)x(t)\\&lt;br /&gt;
   \end{bmatrix}&lt;br /&gt;
&lt;br /&gt;
\quad \Rightarrow \quad &lt;br /&gt;
&lt;br /&gt;
\begin{cases}&lt;br /&gt;
 [\vec{k_1}] &amp;amp; =  F(\vec{z}_i) \\&lt;br /&gt;
 [\vec{k_2}] &amp;amp; =  F(\vec{z}_i + {1 \over 2}k_1h) \\&lt;br /&gt;
\end{cases}\quad [h=0.01]&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Entonces el método de Heun para este problema está dado por la siguiente ecuación:&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;\vec{z}_{i+1} = \vec{z}_{i} + {1 \over 2}h(\vec{k_1}+\vec{k_2})&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Mediante el siguiente programa en Matlab calculamos numéricamente la solución y la representamos en un gráfico:&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Archivo:AXYBRK4.png|400px|miniaturadeimagen|derecha|Representación gráfica de las concentraciones de A,X,Y y B. Resolución del sistema por Heun]]&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
%Método de Heun&lt;br /&gt;
clc&lt;br /&gt;
&lt;br /&gt;
%Función F=[A'(t);x'(t); y'(t);B'(t)]&lt;br /&gt;
F=inline('0.1.*[-z(1)*z(2);z(1)*z(2)-z(2)*z(3);z(2)*z(3)-z(3)/2;z(3)/2]','z');&lt;br /&gt;
&lt;br /&gt;
%Datos del problema&lt;br /&gt;
A0=5;&lt;br /&gt;
x0=5*10^-4;&lt;br /&gt;
y0=10^(-5);&lt;br /&gt;
B0=0;&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=200;&lt;br /&gt;
h=0.1;&lt;br /&gt;
&lt;br /&gt;
%Vector de variable independiente (t)&lt;br /&gt;
t=t0:h:tN;&lt;br /&gt;
&lt;br /&gt;
%Matriz de variables dependientes z=[A;x;y;B]&lt;br /&gt;
z=zeros(4,length(t));&lt;br /&gt;
z(:,1)=[A0;x0;y0;B0];&lt;br /&gt;
&lt;br /&gt;
for i = 1:length(t)-1&lt;br /&gt;
    k1=F(z(:,i));&lt;br /&gt;
    k2=F(z(:,i)+k1.*h/2);&lt;br /&gt;
    z(:,i+1)=z(:,i)+h/2.*(k1+k2);&lt;br /&gt;
end&lt;br /&gt;
 &lt;br /&gt;
%Representación gráfica&lt;br /&gt;
hold on&lt;br /&gt;
plot(t,z(1,:),'b')&lt;br /&gt;
plot(t,z(2,:),'r')&lt;br /&gt;
plot(t,z(3,:),'g')&lt;br /&gt;
plot(t,z(4,:),'m')&lt;br /&gt;
legend('Sustancia A: A(t)','Sustancia X: x(t)','Sustancia Y: y(t)','Sustancia B: B(t)','Location','Best')&lt;br /&gt;
xlabel('Tiempo (s)')&lt;br /&gt;
ylabel('Concentración (mol/l)')&lt;br /&gt;
grid on&lt;br /&gt;
hold off&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
== Interpretación de las gráficas == &lt;br /&gt;
 &lt;br /&gt;
El proceso comienza con el predominio absoluto del compuesto A en la concentración total, siendo la presencia de los otros tres compuestos despreciable. Durante los primeros segundos la situación apenas cambia, pero tras los diez primeros segundos la concentración de A cae bruscamente mientras que la concentración de X aumenta a la misma velocidad; antes de llegar a los veinte segundos transcurridos las concentraciones de ambos compuestos se igualan y otros quince segundos más tarde el compuesto A  prácticamente ha desaparecido y el X ha alcanzado su concentración máxima (5 mol/litro).&lt;br /&gt;
&lt;br /&gt;
Es entonces cuando concluye la primera reacción y comienzan las otras dos, al no haber más compuesto A que cree compuesto X. La velocidad de aparición de Y es inicialmente mayor que la de B, superando al poco tiempo en concentración a la sustancia X. Sin embargo, llega un momento en el que la concentración de X es tan baja que se ralentiza la creación de Y y pronto empieza a disminuir su concentración tras alcanzar un máximo en torno a los 56 segundos, perdiendo peso la segunda reacción en beneficio de la tercera.&lt;br /&gt;
&lt;br /&gt;
Tras los 60 segundos de reacción el compuesto X pasa a tener una concentración despreciable, por lo que la única reacción simple que se sigue desarrollando es la tercera, destruyéndose reactivo Y y creándose producto B. La concentración de Y va reduciéndose paulatinamente hasta que en torno a los 160 segundos de reacción alcanza niveles insignificantes mientras que la concentración de B alcanza su máximo de 5 mol/litro.&lt;br /&gt;
&lt;br /&gt;
Es interesante observar que en todo momento se cumple el Principio de Conservación de la masa: la suma en cualquier momento de las concentraciones de las sustancias es 5 mol /litro. Esto es fácilmente comprobable en los momentos en que las concentraciones de A, X y B alcanzan su máximo de 5 mol/litro y el resto de concentraciones son nulas o despreciables. &lt;br /&gt;
[[Categoría:Ecuaciones Diferenciales]]&lt;br /&gt;
[[Categoría:ED14/15]]&lt;br /&gt;
[[Categoría:Trabajos 2014-15]]&lt;/div&gt;</summary>
		<author><name>Javier Ruiz de Galarreta López</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Reacciones_con_autocat%C3%A1lisis._Grupo_D12&amp;diff=27486</id>
		<title>Reacciones con autocatálisis. Grupo D12</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Reacciones_con_autocat%C3%A1lisis._Grupo_D12&amp;diff=27486"/>
				<updated>2015-03-06T09:59:59Z</updated>
		
		<summary type="html">&lt;p&gt;Javier Ruiz de Galarreta López: /* Método del trapecio */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{ TrabajoED | Reacciones con autocatálisis. Grupo D12 | [[:Categoría:Ecuaciones Diferenciales|Ecuaciones Diferenciales]]|[[:Categoría:ED14/15|Curso 2014-15]] | Javier Ruiz de Galarreta López, Argimiro Martínez López, Eduardo Moyano García, Alberto Rodríguez Ruiz. }}&lt;br /&gt;
&lt;br /&gt;
= Introducción: objetivos y metodología =&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
El objetivo de este trabajo es estudiar las concentraciones de los reactivos y productos de una reacción química a lo largo de la evolución en el tiempo de dicha reacción. Para ello modelizaremos el proceso empleando ecuaciones diferenciales y teniendo en cuenta la Ley de Acción de Masas y el Principio de Conservación de la materia.&lt;br /&gt;
&lt;br /&gt;
Al ser las ecuaciones y sistemas que se nos presentan de difícil resolución analítica, utilizaremos el programa informático Matlab para resolverlos mediante métodos numéricos como el de Euler, el del Trapecio, el de Runge-Kutta y el de Heun. &lt;br /&gt;
&lt;br /&gt;
Plasmaremos las soluciones en gráficos que nos permitirán dar una interpretación físico química a los resultados.&lt;br /&gt;
&lt;br /&gt;
= Reacción I =&lt;br /&gt;
&lt;br /&gt;
En primer lugar consideramos una reacción química irreversible en una solución bien mezclada, que se desarrolla para un volumen y una temperatura constantes, y en la que uno de los componentes (B, en este caso), hace de efecto catalítico.&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt; A + B →_{k1} 2B  &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Para desarrollar nuestro análisis nos apoyaremos en dos leyes físico químicas:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''Ley de acción de masas''': Enunciada por Guldberg y Waage en 1864, establece, entre otras cosas, que  la velocidad de&lt;br /&gt;
reacción es proporcional al producto de las concentraciones de los reactivos.&lt;br /&gt;
&lt;br /&gt;
'''Principio de conservación de la masa''': Establece que en una reacción química ordinaria la masa permanece constante, siendo la masa consumida de los reactivos igual a la masa obtenida de los productos. Fue elaborada independientemente por Míjail Lomonósov en 1745 y Antoine Lavoisier en 1785.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Interpretación del problema y deducción de las ecuaciones diferenciales ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Para hallar las ecuaciones diferenciales que nos describan cómo se desarrolla la reacción en el tiempo nos basaremos en las dos leyes enunciadas anteriormente. En primer lugar, definimos nuestra variable independiente como el tiempo &amp;lt;math&amp;gt;t&amp;lt;/math&amp;gt; en segundos. Las dos variables dependientes serán las concentraciones de los compuestos A y B, que denominaremos &amp;lt;math&amp;gt;x(t)&amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt;y(t)&amp;lt;/math&amp;gt;, ambas expresadas en mol/l. &lt;br /&gt;
&lt;br /&gt;
El principio de conservación de la masa expone que la suma de las concentraciones de los reactivos y los productos es constante. Esto equivale, derivando la expresión &amp;lt;math&amp;gt;x(t)+y(t)=cte&amp;lt;/math&amp;gt;, a que  desaparece tanto reactivo como producto aparece, o lo que es lo mismo, que la velocidad de aparición del producto es igual a la velocidad de desaparición (velocidad de aparición negativa) del reactivo:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;x'(t)=-y'(t)&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
La otra ecuación que necesitamos la obtenemos directamente de aplicar la Ley de acción de masas, que establece que la velocidad de la reacción (la velocidad a la que aparece el producto o desaparece el reactivo) es igual al producto de las concentraciones por una constante.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;y'(t)=k_1x(t)y(t)&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Obtención del problema de valor inicial ==&lt;br /&gt;
Una vez demostrado el origen de las ecuaciones (1) y (2) en el apartado anterior, obtendremos el problema de valor inicial (PVI) mediante las operaciones detalladas a continuación:&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;x'(t)+y'(t)=0\quad\quad(1)&amp;lt;/math&amp;gt;&lt;br /&gt;
:&amp;lt;math&amp;gt;y'(t)=k_1x(t)y(t)\quad\quad(2)&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Integrando (1) obtenemos (3):&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
:&amp;lt;math&amp;gt;\int_\mathbb{D} (\frac{dx(t)}{dt} + \frac{dy(t)}{dt})\,dt =\int_\mathbb{D} 0\,dt \quad \Rightarrow \quad x(t)+y(t)=k_2\quad \Rightarrow \quad x(t)=k_2-y(t)\quad\quad(3)&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Sustituyendo (3) en (2), obtenemos (4):&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;y'(t)=k_1x(t)y(t)\quad \Rightarrow \quad y'(t)=k_1(k_2-y(t))y(t)\quad \Rightarrow \quad y'(t)=k_1k_2y(t)-k_1y^2(t)\quad\quad(4)&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Conocemos las concentraciones iniciales de A y de B, por lo que podemos obtener el valor de la constante k&amp;lt;sub&amp;gt;2&amp;lt;/sub&amp;gt;:&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;[A]:\quad x(0)=1 mol/l;\quad\quad [B]:\quad y(0)=0,01 mol/l&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;x(t)+y(t)=k_2\quad \Rightarrow \quad x(0)+y(0)=k_2\quad \Rightarrow \quad 1+0,01=k_2\quad \Rightarrow \quad k_2=1,01&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Por último, conocemos también el valor de k&amp;lt;sub&amp;gt;1&amp;lt;/sub&amp;gt;, por lo que podremos plantear a continuación el correspondiente PVI:&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;k_1=1&amp;lt;/math&amp;gt;&lt;br /&gt;
:&amp;lt;math&amp;gt;(PVI)\begin{cases}y'(t)=1,01y(t)-y^2(t) \\ \\&lt;br /&gt;
y(0) = 0,01 \end{cases}\quad (t,y)\in[0,10]\times\mathbb{R}&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Unicidad de la solución ==&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Existencia-y-unicidad.png|200px|miniaturadeimagen|derecha|Intersección B con dominio]]&lt;br /&gt;
&lt;br /&gt;
Aplicamos a continuación el Teorema de Existencia y Unicidad:&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Sea &amp;lt;math&amp;gt;f(t,y)=y'(t) \Rightarrow f(t,y)=1.01y(t)-y^2(t)\quad&amp;lt;/math&amp;gt;, y &amp;lt;math&amp;gt;\quad\frac{\partial }{\partial y} f(t,y) = 1.01-2y(t)&amp;lt;/math&amp;gt;.&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
Y sea &amp;lt;math&amp;gt;B[(t_0,y_0),r],\quad r&amp;gt;0,\quad en (t_0,y_0)=(0,0.01)&amp;lt;/math&amp;gt;.&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;f(t,y)&amp;lt;/math&amp;gt; es continua en &amp;lt;math&amp;gt; \mathbb{B}\cap \mathbb{D}\quad \Rightarrow \quad \exists  y(t)\quad /\quad y'(t)=1,01y(t)-y^2(t)&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;math&amp;gt;\frac{\partial }{\partial y} f(t,y)&amp;lt;/math&amp;gt; es continua en &amp;lt;math&amp;gt; \mathbb{B}\cap \mathbb{D}\quad \Rightarrow \quad \exists !  y(t)\quad /\quad y'(t)=1,01y(t)-y^2(t)&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Con lo que queda demostrado que el (PVI) tiene solución y además esta es única.&lt;br /&gt;
&lt;br /&gt;
== Resolución numérica del problema de valor inicial ==&lt;br /&gt;
&lt;br /&gt;
En este apartado resolveremos el problema de valor inicial planteado anteriormente con tres métodos de integración numérica: el método de Euler, el método del Trapecio y el método de Runge-Kutta de orden 4.&lt;br /&gt;
&lt;br /&gt;
=== Método de Euler ===&lt;br /&gt;
&lt;br /&gt;
El método de Euler, llamado así en honor al matemático Leonhard Euler, es un procedimiento de integración numérica. Su expresión matemática es: &lt;br /&gt;
&amp;lt;math&amp;gt;  PVI = &lt;br /&gt;
   \left \{&lt;br /&gt;
      \begin{array}{rcl}y_0\\&lt;br /&gt;
           y_{n+1} = y_n + h*f(t_n,y_n)\\ &lt;br /&gt;
      \end{array}&lt;br /&gt;
   \right .&lt;br /&gt;
   &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
A continuación emplearemos esta expresión en un programa de Matlab para obtener una aproximación de las soluciones. El código de dicho programa es el siguiente.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Eulergrafica.png|400px|miniaturadeimagen|derecha|Representación gráfica y(t). Método de Euler]]&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
%Método de Euler&lt;br /&gt;
clc&lt;br /&gt;
&lt;br /&gt;
%Datos iniciales&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=4;&lt;br /&gt;
y0=0.01;&lt;br /&gt;
h=0.1;&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=10;&lt;br /&gt;
&lt;br /&gt;
%Cálculo de subintervalos&lt;br /&gt;
N=round((tN-t0)/h);&lt;br /&gt;
t=t0:h:tN;&lt;br /&gt;
&lt;br /&gt;
%Creamos el vector donde vamos a guardar las soluciones&lt;br /&gt;
y=zeros(1,N+1);&lt;br /&gt;
y(1)=y0;&lt;br /&gt;
&lt;br /&gt;
%Euler&lt;br /&gt;
for i=1:N;&lt;br /&gt;
    y(i+1)=y(i)+h*(1.01*y(i)-(y(i)).^2);&lt;br /&gt;
end&lt;br /&gt;
%Tabla de Resultados&lt;br /&gt;
[t',y']&lt;br /&gt;
x=1.01-y;&lt;br /&gt;
hold on &lt;br /&gt;
plot(t,y,'r')&lt;br /&gt;
plot(t,x,'b')&lt;br /&gt;
hold off&lt;br /&gt;
legend('Sustancia B: y(t)','Sustancia A: x(t)','Location','best');&lt;br /&gt;
xlabel('Tiempo (s)')&lt;br /&gt;
ylabel('Concentración (mol/l)')&lt;br /&gt;
grid on&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
=== Método del trapecio ===&lt;br /&gt;
&lt;br /&gt;
Vamos a aplicar un método de integración numérica conocido como el Método del Trapecio por aproximar el valor de la integral al del área de un trapecio. Su expresión matemática es:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;  PVI = &lt;br /&gt;
   \left \{&lt;br /&gt;
      \begin{array}{rcl}&lt;br /&gt;
          y_0\\&lt;br /&gt;
           y_{n+1} = y_n + \frac{h}{2}*f(t_n,y_n)\\ &lt;br /&gt;
      \end{array}&lt;br /&gt;
   \right .&lt;br /&gt;
   &amp;lt;/math&amp;gt;&lt;br /&gt;
Introducimos esta expresión en el código y obtenemos la gráfica de la solución.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Trapeciografica.png|400px|miniaturadeimagen|derecha|Representación gráfica y(t). Método del Trapecio]]&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
%Método del Trapecio&lt;br /&gt;
clc&lt;br /&gt;
&lt;br /&gt;
%Datos iniciales&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=4;&lt;br /&gt;
y0=0.01;&lt;br /&gt;
h=0.1;&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=10;&lt;br /&gt;
&lt;br /&gt;
%Cálculo de subintervalos&lt;br /&gt;
N=round((tN-t0)/h);&lt;br /&gt;
t=t0:h:tN;&lt;br /&gt;
&lt;br /&gt;
%Creamos el vector donde vamos a guardar las soluciones&lt;br /&gt;
y=zeros(1,N+1);&lt;br /&gt;
y(1)=y0;&lt;br /&gt;
&lt;br /&gt;
for i=1:N&lt;br /&gt;
y(i+1)=(((1-(h/2)*1.01)-sqrt(((1-(h/2)*1.01)^2)+4*(h/2)*((1+(h/2)*1.01)*y(i)-(h/2)*(y(i))^2)))/-h);&lt;br /&gt;
end&lt;br /&gt;
%Sacamos la tabla de resultados&lt;br /&gt;
[t',y']&lt;br /&gt;
x=1.01-y;&lt;br /&gt;
%Gráfico&lt;br /&gt;
hold on&lt;br /&gt;
plot(t,y,'r')&lt;br /&gt;
plot(t,x,'b')&lt;br /&gt;
legend('Sustancia B: y(t)','Sustancia A: x(t)','Location','best');&lt;br /&gt;
xlabel('Tiempo (s)')&lt;br /&gt;
ylabel('Concentración (mol/l)')&lt;br /&gt;
grid on&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
=== Método de Runge-Kutta ===&lt;br /&gt;
&lt;br /&gt;
El método de resolución numérica de Runge-Kutta, involucra un gran número de parámetros. Para simplificar la implementación de este método en Matlab, utilizaremos la función ''inline'', con la que declararemos previamente la función algebraica necesaria para el cálculo de los parámetros &amp;lt;math&amp;gt;k_i&amp;lt;/math&amp;gt;, ahorrándonos tener que escribir innumerables veces la correspondiente expresión matemática.&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
A continuación, detallamos la función &amp;lt;math&amp;gt;f(y)&amp;lt;/math&amp;gt; de la que dependerán los valores de los parámetros &amp;lt;math&amp;gt;k_i&amp;lt;/math&amp;gt;:&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;f(y)=y'(t)=1.01y(t)-y(t)^2&lt;br /&gt;
&lt;br /&gt;
\quad \Rightarrow \quad&lt;br /&gt;
&lt;br /&gt;
\begin{cases}&lt;br /&gt;
 k_1 &amp;amp; =  f(y_i) \\&lt;br /&gt;
 k_2 &amp;amp; =  f(y_i + {1 \over 2}k_1h) \\&lt;br /&gt;
 k_3 &amp;amp; =  f(y_i + \frac{1}{2}k_2h) \\&lt;br /&gt;
 k_4 &amp;amp; =  f(y_i + k_3h) \\&lt;br /&gt;
\end{cases}\quad [h=0.1]&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Entonces el método RK4 para este problema está dado por la siguiente ecuación:&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;y_{i+1} = y_{i} + {1 \over 6}h(k_1+2k_2+2k_3+k_4)&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Mediante el siguiente programa en Matlab calculamos numéricamente la solución y la representamos en un gráfico:&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Archivo:RK4II.png|400px|miniaturadeimagen|derecha|Representación gráfica y(t). Método Runge-Kutta]]&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
%Método de Runge-Kutta&lt;br /&gt;
clc&lt;br /&gt;
&lt;br /&gt;
%Función f(t)=y'(t)&lt;br /&gt;
fy=inline('1.01*y-y^2','y');&lt;br /&gt;
&lt;br /&gt;
%Datos del problema&lt;br /&gt;
y0=0.01;&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=10;&lt;br /&gt;
h=0.1;&lt;br /&gt;
&lt;br /&gt;
%Variable independiente (t)&lt;br /&gt;
t=t0:h:tN;&lt;br /&gt;
&lt;br /&gt;
%Variable dependiente (y)&lt;br /&gt;
y=zeros(1,length(t));&lt;br /&gt;
y(1)=y0;&lt;br /&gt;
&lt;br /&gt;
for i=1:length(t)-1&lt;br /&gt;
    k1=fy(y(i));&lt;br /&gt;
    k2=fy(y(i)+k1/2*h);&lt;br /&gt;
    k3=fy(y(i)+k2/2*h);&lt;br /&gt;
    k4=fy(y(i)+k3*h);&lt;br /&gt;
    y(i+1)=y(i)+h/6*(k1+2*k2+2*k3+k4);&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
%Variable dependiente (x)&lt;br /&gt;
x=1.01-y;&lt;br /&gt;
&lt;br /&gt;
%Representación gráfica&lt;br /&gt;
hold on&lt;br /&gt;
plot(t,x,'b')&lt;br /&gt;
plot(t,y,'r')&lt;br /&gt;
legend('Sustancia A: x(t)','Sustancia B: y(t)')&lt;br /&gt;
xlabel('Tiempo (s)')&lt;br /&gt;
ylabel('Concentración (mol/l)')&lt;br /&gt;
grid on&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
=== Comparación de métodos===&lt;br /&gt;
&lt;br /&gt;
Podemos observar fácilmente que las gráficas obtenidas con los diferentes métodos son iguales a primera vista. Sin embargo, superponiéndolas queda patente que no son exactamente iguales debido a que los métodos no poseen la misma precisión y , al operar todos con la misma longitud de paso, unos aproximan la solución exacta mejor que otros. Así se observa en estas imágenes:&lt;br /&gt;
&lt;br /&gt;
[[Archivo:comparativa1.jpg|400px|miniaturadeimagen|izquierda|Comparación de métodos]]&lt;br /&gt;
[[Archivo:comparativa2.jpg|400px|miniaturadeimagen|derecha|Comparación de métodos]]&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
Como podemos comprobar en las imágenes, el método de Euler es menos preciso que el del trapecio o el de Runge-Kutta.&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Resolución en forma de sistema de ecuaciones ==&lt;br /&gt;
&lt;br /&gt;
A continuación vamos a plantear el problema de valor inicial con un sistema no lineal de dos ecuaciones equivalente al problema resuelto anteriormente.&lt;br /&gt;
&lt;br /&gt;
Estas ecuaciones serán:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;(PVI)&lt;br /&gt;
\begin{cases}&lt;br /&gt;
    y'(t)=k_1 x(t)y(t) \\&lt;br /&gt;
    x'(t)=-k_1 x(t)y(t) \\&lt;br /&gt;
    \\&lt;br /&gt;
    x(0)=1 \\&lt;br /&gt;
    y(0) = 0.01&lt;br /&gt;
\end{cases}&lt;br /&gt;
\quad t\in[0,10]&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Resolveremos el problema por el método de Euler y por el método de Runge-Kutta, plasmando las soluciones en gráficos.&lt;br /&gt;
&lt;br /&gt;
=== Método de Euler ===&lt;br /&gt;
&lt;br /&gt;
En este caso aplicaremos en el siguiente código la expresión para EDO a cada una de las ecuaciones que conforma el sistema, obteniendo la correspondiente gráfica.&lt;br /&gt;
 &lt;br /&gt;
[[Archivo:SistEuler.png|400px|miniaturadeimagen|derecha|Representación gráfica de las concentraciones de A y B. Resolución del sistema por Euler]]&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
&lt;br /&gt;
%Resolución del sistema por el método de Euler&lt;br /&gt;
&lt;br /&gt;
clear all&lt;br /&gt;
&lt;br /&gt;
%Definimos el vector de la variable independiente, el número de&lt;br /&gt;
%subintervalos y la longitud de paso&lt;br /&gt;
&lt;br /&gt;
t0 = 0;&lt;br /&gt;
tN = 10;&lt;br /&gt;
h = 0.1;&lt;br /&gt;
t = t0:h:tN&lt;br /&gt;
N = (tN-t0)/h;&lt;br /&gt;
&lt;br /&gt;
%Definimos los vectores de las variables dependientes&lt;br /&gt;
&lt;br /&gt;
x = zeros(1, N+1);&lt;br /&gt;
y = zeros(1, N+1);&lt;br /&gt;
&lt;br /&gt;
x(1) = 1;&lt;br /&gt;
y(1) = 0.01;&lt;br /&gt;
&lt;br /&gt;
for i = 1:N&lt;br /&gt;
    &lt;br /&gt;
    x(i+1)=x(i)+h*(-x(i).*y(i));&lt;br /&gt;
    y(i+1)=y(i)+h*(y(i).*x(i));&lt;br /&gt;
    &lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
%Representamos gráficamente las soluciones&lt;br /&gt;
&lt;br /&gt;
hold on&lt;br /&gt;
&lt;br /&gt;
plot(t,x,'b');&lt;br /&gt;
plot(t,y,'r');&lt;br /&gt;
grid on&lt;br /&gt;
&lt;br /&gt;
legend('Sustancia A: x(t)','Sustancia B: y(t)')&lt;br /&gt;
xlabel('Tiempo (s)')&lt;br /&gt;
ylabel('Concentración (mol/l)')&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
hold off&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
}}&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
A continuación tendremos que comprobar si el método es estable.&lt;br /&gt;
Un método es estable cuando el error local es pequeño y además este error no se amplifica a lo largo del tiempo. Para mirar la estabilidad del método de Euler resolveremos el sistema usando &amp;quot;h=0.01&amp;quot; y &amp;quot;h=0.001&amp;quot;. Para ello usaremos el mismo programa anterior simplemente variando h. La línea azul representa el programa que usa &amp;quot;h=0.01&amp;quot; y la línea roja representa el programa que usa &amp;quot;h=0.001&amp;quot;&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Comparacioneulers123.jpg|400px|miniaturadeimagen|izquierda|Representación gráfica y(t). Método de Euler]]&lt;br /&gt;
[[Archivo:Comparacioneulers321.jpg|400px|miniaturadeimagen|derecha|Representación gráfica y(t). Método de Euler]]&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
Como podemos ver en la primera imágen las gráficas se superponen y no se aprecian diferencias hasta que no ampliamos la imagen. Y esto sucede en todo momento con lo que podemos garantizar que en este caso es estable.&lt;br /&gt;
&lt;br /&gt;
=== Método de Runge-Kutta===&lt;br /&gt;
&lt;br /&gt;
El método de resolución numérica de Runge-Kutta, involucra un gran número de parámetros. Para simplificar la implementación de este método en Matlab, el sistema se tratará como una matriz &amp;lt;math&amp;gt;z&amp;lt;/math&amp;gt;. Además, utilizaremos la función ''inline'', con la que declararemos previamente la función algebraica necesaria para el cálculo de los parámetros &amp;lt;math&amp;gt;k_i&amp;lt;/math&amp;gt;, ahorrándonos tener que escribir innumerables veces la correspondiente expresión matemática.&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Primero, expresamos el sistema en forma matricial:&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;(PVI)\begin{cases}&lt;br /&gt;
    x'(t)=-k_1 x(t)y(t) \\&lt;br /&gt;
    y'(t)=k_1 x(t)y(t) \\&lt;br /&gt;
    \\&lt;br /&gt;
    x(0)=1 \\&lt;br /&gt;
    y(0) = 0.01&lt;br /&gt;
\end{cases}\quad t\in[0,10]&lt;br /&gt;
&lt;br /&gt;
\quad \Rightarrow \quad k_1=1\quad \Rightarrow \quad&lt;br /&gt;
&lt;br /&gt;
(PVI)\begin{cases}\vec{z}'(t)=&lt;br /&gt;
   \begin{bmatrix}&lt;br /&gt;
      x'(t) \\&lt;br /&gt;
      y'(t) \\&lt;br /&gt;
   \end{bmatrix}&lt;br /&gt;
=&lt;br /&gt;
      \begin{bmatrix}&lt;br /&gt;
      -x(t)y(t) \\&lt;br /&gt;
      x(t)y(t) \\&lt;br /&gt;
   \end{bmatrix}&lt;br /&gt;
&lt;br /&gt;
 \\ \\ \vec{z}(0)=&lt;br /&gt;
   \begin{bmatrix}&lt;br /&gt;
      x(0) \\&lt;br /&gt;
      y(0) \\&lt;br /&gt;
   \end{bmatrix}&lt;br /&gt;
=&lt;br /&gt;
      \begin{bmatrix}&lt;br /&gt;
      1 \\&lt;br /&gt;
      0.01 \\&lt;br /&gt;
   \end{bmatrix}&lt;br /&gt;
\end{cases}\quad t\in[0,10]&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
A continuación, detallamos la función &amp;lt;math&amp;gt;\vec{F}&amp;lt;/math&amp;gt; de la que dependerán los valores de los parámetros &amp;lt;math&amp;gt;k_i&amp;lt;/math&amp;gt;:&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;\vec{F}(x,y)=\vec{F}(\vec{z})=&lt;br /&gt;
&lt;br /&gt;
\begin{bmatrix}&lt;br /&gt;
    f(\vec{z}) \\&lt;br /&gt;
    g(\vec{z}) \\&lt;br /&gt;
\end{bmatrix}=&lt;br /&gt;
&lt;br /&gt;
\begin{bmatrix}&lt;br /&gt;
    x'(t) \\&lt;br /&gt;
    y'(t) \\&lt;br /&gt;
\end{bmatrix}=&lt;br /&gt;
&lt;br /&gt;
\vec{z}'(t)=&lt;br /&gt;
&lt;br /&gt;
\begin{bmatrix}&lt;br /&gt;
    -x(t)y(t) \\&lt;br /&gt;
    x(t)y(t) \\&lt;br /&gt;
\end{bmatrix}&lt;br /&gt;
\quad \Rightarrow \quad&lt;br /&gt;
&lt;br /&gt;
\begin{cases}&lt;br /&gt;
 [\vec{k_1}] &amp;amp; =  F(\vec{z}_i) \\&lt;br /&gt;
 [\vec{k_2}] &amp;amp; =  F(\vec{z}_i + {1 \over 2}k_1h) \\&lt;br /&gt;
 [\vec{k_3}] &amp;amp; =  F(\vec{z}_i + \frac{1}{2}k_2h) \\&lt;br /&gt;
 [\vec{k_4}] &amp;amp; =  F(\vec{z}_i + k_3h) \\&lt;br /&gt;
\end{cases}\quad [h=0.1]&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Entonces el método RK4 para este problema está dado por la siguiente ecuación:&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;\vec{z}_{i+1} = \vec{z}_{i} + {1 \over 6}h(\vec{k_1}+2\vec{k_2}+2\vec{k_3}+\vec{k_4})&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Mediante el siguiente programa en Matlab calculamos numéricamente la solución y la representamos en un gráfico:&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Archivo:sistema_RK4.png|400px|miniaturadeimagen|derecha|Representación gráfica de las concentraciones de A y B. Resolución del sistema por Runge-Kutta]]&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
%Método de Runge-Kutta&lt;br /&gt;
clc&lt;br /&gt;
&lt;br /&gt;
%Función F=[x'(t); y'(t)]&lt;br /&gt;
F=inline('[-z(1)*z(2);z(1)*z(2)]','z');&lt;br /&gt;
&lt;br /&gt;
%Datos del problema &lt;br /&gt;
x0=1;&lt;br /&gt;
y0=0.01;&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=10;&lt;br /&gt;
h=0.1;&lt;br /&gt;
&lt;br /&gt;
%Vector de variable independiente (t)&lt;br /&gt;
t=t0:h:tN;&lt;br /&gt;
&lt;br /&gt;
%Matriz de variables dependientes z=[x;y]&lt;br /&gt;
z=zeros(2,length(t));&lt;br /&gt;
z(:,1)=[x0;y0];&lt;br /&gt;
&lt;br /&gt;
for i = 1:length(t)-1&lt;br /&gt;
    k1=F(z(:,i));&lt;br /&gt;
    k2=F(z(:,i)+k1.*h/2);&lt;br /&gt;
    k3=F(z(:,i)+k2.*h/2);&lt;br /&gt;
    k4=F(z(:,i)+k3.*h);&lt;br /&gt;
    z(:,i+1)=z(:,i)+h/6.*(k1+2.*k2+2.*k3+k4);&lt;br /&gt;
end&lt;br /&gt;
 &lt;br /&gt;
%Representación gráfica&lt;br /&gt;
hold on&lt;br /&gt;
plot(t,z(1,:))&lt;br /&gt;
plot(t,z(2,:),'r')&lt;br /&gt;
legend('Sustancia A: x(t)','Sustancia B: y(t)')&lt;br /&gt;
xlabel('Tiempo (s)')&lt;br /&gt;
ylabel('Concentración (mol/l)')&lt;br /&gt;
grid on&lt;br /&gt;
%hold off&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
== Interpretación de las gráficas ==&lt;br /&gt;
&lt;br /&gt;
Como cabía esperar, obtenemos la misma solución resolviendo el problema como sistema o como EDO. Podemos observar por los resultados obtenidos que la velocidad de aparición de B es igual a la velocidad de desaparición de A (como dicta el principio de conservación de la masa), que A acaba desapareciendo prácticamente por completo y que la concentración de B termina por estabilizarse alrededor de 1 mol/l. Ambos compuestos alcanzan sus los extremos de sus concentraciones en el mismo instante de tiempo&lt;br /&gt;
&lt;br /&gt;
También cabe destacar que cuando el tiempo transcurrido alcanza 4,5 segundos las concentraciones de ambos compuestos son las mismas.&lt;br /&gt;
&lt;br /&gt;
= Reacción II =&lt;br /&gt;
&lt;br /&gt;
En este apartado vamos a estudiar la reacción propuesta por Alfred J. Lotka en 1920, que es la siguiente:&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt; A + X →_{k1} 2X;&amp;lt;/math&amp;gt;     :&amp;lt;math&amp;gt; X + Y →_{k2} 2Y;&amp;lt;/math&amp;gt;     :&amp;lt;math&amp;gt;Y →_{k3} 2B  &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Como se puede observar, se trata de una reacción compleja integrada por 3 reacciones simples (las dos primeras autocatalíticas) en las que intervienen un total de 4 compuestos, A, B, X e Y. Siguiendo el desarrollo de la reacción, es lógico suponer que A se agotará al comienzo de la reacción, que los máximos de concentración de X e Y se darán en los estados intermedios y que al final el compuesto B será el único restante, siendo el producto final de la reacción.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Interpretación del problema y deducción de las ecuaciones diferenciales ==&lt;br /&gt;
&lt;br /&gt;
Para averiguar cómo evolucionan las concentraciones de los cuatro compuestos durante el desarrollo de la reacción necesitaremos obtener cuatro ecuaciones diferenciales. Para ello nos volveremos a basar en los principios físicos que ya empleamos en la anterior reacción. Definimos A(t), x(t), y(t), y B(t) (A, x, y, B; para ahorrar notación) a las concentraciones de A, X, Y, y B, respectivamente. &lt;br /&gt;
&lt;br /&gt;
En primer lugar aplicamos el Principio de Conservación de la masa, que establece que la suma de las concentraciones de los compuestos es constante (no desaparece masa en el proceso), lo que derivando nos indica que:&lt;br /&gt;
&lt;br /&gt;
: &amp;lt;math&amp;gt; A' + y' + y' + B' = 0 \quad\quad(I)&amp;lt;/math&amp;gt;       &lt;br /&gt;
&lt;br /&gt;
A continuación aplicaremos la Ley de Acción de Masas (velocidad de reacción proporcional al producto de la concentración de los reactivos).&lt;br /&gt;
&lt;br /&gt;
Aplicando esta ley a la última reacción simple obtenemos que: &lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;B'=k_3y \quad\quad(II)&amp;lt;/math&amp;gt;        &lt;br /&gt;
&lt;br /&gt;
En el caso de las concentraciones de X e Y las expresiones resultantes son algo más complicadas ya que estos dos compuestos actúan como reactivos y productos en más de una reacción simple, por lo que la variación de sus concentraciones será la suma de las variaciones de las reacciones en las que aparezcan:&lt;br /&gt;
&lt;br /&gt;
: &amp;lt;math&amp;gt; x' = x'_{1} + x'_{2} → x' = k_{1}Ax - k{2}xy \quad\quad(III)&amp;lt;/math&amp;gt;        &lt;br /&gt;
: &amp;lt;math&amp;gt; y' = y'_{2} + y'_{3} → y' = k_{2}xy − k_3{y} \quad\quad(IV)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Por último sustituimos (II), (III) y (IV) en (I) obteniendo: &lt;br /&gt;
&lt;br /&gt;
: &amp;lt;math&amp;gt; A' + k_{1}Ax - k{2}xy + k_{2}xy − k_3{y}+ k_3y= 0 : &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
De donde obtenemos que:&lt;br /&gt;
&lt;br /&gt;
: &amp;lt;math&amp;gt; A' = -k_{1}Ax &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Ahora que ya tenemos las variaciones de concentración de los compuestos en función de las concentraciones podemos aplicar métodos numéricos que nos lleven a una solución aproximada.&lt;br /&gt;
&lt;br /&gt;
== Resolución numérica del sistema de ecuaciones ==&lt;br /&gt;
&lt;br /&gt;
Una vez obtenidas las ecuaciones y conociendo las condiciones iniciales y los valores de las constantes podemos plantear el problema de valor inicial para luego resolverlo.&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;(PVI)&lt;br /&gt;
\begin{cases}&lt;br /&gt;
    A' = -k_{1}Ax\\&lt;br /&gt;
    x' = k_{1}Ax - k{2}xy\\&lt;br /&gt;
    y' = k_{2}xy − k_3{y}\\&lt;br /&gt;
    B'=k_3y \\&lt;br /&gt;
\\&lt;br /&gt;
    A(0)=5  \\&lt;br /&gt;
    x(0)=5*10^{-4} \\&lt;br /&gt;
    y(0)=10^{-5}\\&lt;br /&gt;
    B(0)=0 \\&lt;br /&gt;
\end{cases}&lt;br /&gt;
\quad t\in[0,200]&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Siendo &amp;lt;math&amp;gt; k_{1}=K_{2}=2k_{3}=0.1 &amp;lt;/math&amp;gt; y las unidades de la concentración mol/l.&lt;br /&gt;
&lt;br /&gt;
=== Método de Euler ===&lt;br /&gt;
&lt;br /&gt;
Aplicamos el método de Euler de forma análoga a como lo hicimos en [[Reacciones_con_autocatálisis._Grupo_D12#Método_de_Euler_2|apartado 2.5.1]]&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Euler lotka0.01.png|400px|miniaturadeimagen|derecha|Representación gráfica de las concentraciones de A, B, X, e Y a lo largo del tiempo. Resoluciónd delsistema por el método de Euler con longitud de paso h=0.01]] &lt;br /&gt;
[[Archivo:Euler lotka0.001.png|400px|miniaturadeimagen|derecha|Representación gráfica de las concentraciones de A, B, X, e Y a lo largo del tiempo. Resoluciónd delsistema por el método de Euler con longitud de paso h=0.001]]&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
&lt;br /&gt;
%Resolución del sistema de la reacción de Lotka por el método de Euler&lt;br /&gt;
&lt;br /&gt;
clear all&lt;br /&gt;
&lt;br /&gt;
%Definimos la variable independiente y establecemos los datos del problema&lt;br /&gt;
%de valor inicial. Para la longitud de paso h introducimos en primer lugar&lt;br /&gt;
%0.01 y luego 0.001&lt;br /&gt;
&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=200;&lt;br /&gt;
h= input('Introduzca una longitud de paso ');&lt;br /&gt;
t = t0:h:tN;&lt;br /&gt;
N=(tN-t0)/h;&lt;br /&gt;
k1 = 0.1;&lt;br /&gt;
k2 = 0.1;&lt;br /&gt;
k3 = 0.05;&lt;br /&gt;
A0 = 5;&lt;br /&gt;
B0 = 0;&lt;br /&gt;
X0 = 5*10^(-4);&lt;br /&gt;
Y0 = 10^(-5);&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
%Definimos las variables dependientes.&lt;br /&gt;
&lt;br /&gt;
A = zeros(1, N-1);&lt;br /&gt;
B = A;&lt;br /&gt;
X = A;&lt;br /&gt;
Y = A;&lt;br /&gt;
&lt;br /&gt;
A(1) = A0;&lt;br /&gt;
B(1) = B0;&lt;br /&gt;
X(1) = X0;&lt;br /&gt;
Y(1) = Y0;&lt;br /&gt;
&lt;br /&gt;
for i = 1:N&lt;br /&gt;
    &lt;br /&gt;
    X(i+1) = X(i) + h*(k1*A(i)*X(i)-k2*Y(i)*X(i));&lt;br /&gt;
    Y(i+1)=Y(i)+h.*(k2.*X(i).*Y(i)-k3.*Y(i));&lt;br /&gt;
    B(i+1) = B(i) + h*(k3*Y(i));&lt;br /&gt;
    A(i+1) = A(i) + h*(-k1*A(i)*X(i));&lt;br /&gt;
   &lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
%Representamos gráficamente la solución&lt;br /&gt;
&lt;br /&gt;
hold on&lt;br /&gt;
&lt;br /&gt;
plot (t,A,'b')&lt;br /&gt;
plot(t, X, 'r')&lt;br /&gt;
plot(t,Y, 'g')&lt;br /&gt;
plot(t, B, 'm')&lt;br /&gt;
legend('Sustancia A: A(t)','Sustancia X: x(t)','Sustancia Y: y(t)','Sustancia B: B(t)','Location','Best')&lt;br /&gt;
xlabel('Tiempo (s)')&lt;br /&gt;
ylabel('Concentración (mol/l)')&lt;br /&gt;
grid on&lt;br /&gt;
&lt;br /&gt;
hold off&lt;br /&gt;
&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
=== Método de Heun ===&lt;br /&gt;
&lt;br /&gt;
Si bien el método de resolución numérica de Heun no involucra un número de parámetros tan notable como el método de Runge-Kutta, en este caso tenemos un sistema de 4 ecuaciones diferenciales, por lo que, en aras de simplificar, utilizaremos el mismo criterio que en el [[Reacciones_con_autocatálisis._Grupo_D12#Método_de_Runge-Kutta_2|apartado 2.5.2]].: El sistema se tratará como una matriz &amp;lt;math&amp;gt;z&amp;lt;/math&amp;gt;, y para la obtención de los parámetros &amp;lt;math&amp;gt;k_i&amp;lt;/math&amp;gt; utilizaremos la función ''inline'', con la que declararemos previamente las expresiones necesarias para el cálculo de los parámetros &amp;lt;math&amp;gt;k_i&amp;lt;/math&amp;gt;.&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Primero, expresamos el sistema en forma matricial:&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;(PVI)\begin{cases}&lt;br /&gt;
A'(t)=-k_1 A(t)x(t) \\&lt;br /&gt;
x'(t)=k_1 A(t)x(t)-k_2 x(t)y(t) \\&lt;br /&gt;
y'(t)=k_2 x(t)y(t)-k_3 y(t) \\&lt;br /&gt;
B'(t)=k_3 x(t)y(t) \\ \\&lt;br /&gt;
A(0)=5 \\&lt;br /&gt;
x(0)=5·10^{-4} \\&lt;br /&gt;
y(0)=10^{-5} \\&lt;br /&gt;
B(0) = 0&lt;br /&gt;
\end{cases}\quad t\in[0,200]&lt;br /&gt;
&lt;br /&gt;
\quad \Rightarrow \quad&lt;br /&gt;
&lt;br /&gt;
\begin{cases}&lt;br /&gt;
k_1=0.1 \\&lt;br /&gt;
k_2=0.1 \\&lt;br /&gt;
k_3=0.05 \\&lt;br /&gt;
&lt;br /&gt;
\end{cases}&lt;br /&gt;
&lt;br /&gt;
\quad \Rightarrow \quad&lt;br /&gt;
&lt;br /&gt;
(PVI)\begin{cases}\vec{z}'(t)=&lt;br /&gt;
   \begin{bmatrix}&lt;br /&gt;
      A'(t) \\&lt;br /&gt;
      x'(t) \\&lt;br /&gt;
      y'(t) \\&lt;br /&gt;
      B'(t) \\&lt;br /&gt;
   \end{bmatrix}&lt;br /&gt;
=&lt;br /&gt;
      \begin{bmatrix}&lt;br /&gt;
      -0.1 A(t)x(t) \\&lt;br /&gt;
      0.1 A(t)x(t)-0.1 x(t)y(t) \\&lt;br /&gt;
      0.1 x(t)y(t)-0.05 y(t) \\&lt;br /&gt;
      0.05 y(t)x(t)\\&lt;br /&gt;
   \end{bmatrix}&lt;br /&gt;
&lt;br /&gt;
 \\ \\ \vec{z}(0)=&lt;br /&gt;
   \begin{bmatrix}&lt;br /&gt;
      A(0) \\&lt;br /&gt;
      x(0) \\&lt;br /&gt;
      y(0) \\&lt;br /&gt;
      B(0) \\&lt;br /&gt;
   \end{bmatrix}&lt;br /&gt;
=&lt;br /&gt;
      \begin{bmatrix}&lt;br /&gt;
      5 \\&lt;br /&gt;
      5·10^{-4} \\&lt;br /&gt;
      10^{-5} \\&lt;br /&gt;
      0&lt;br /&gt;
   \end{bmatrix}&lt;br /&gt;
\end{cases}\quad t\in[0,200]&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
A continuación, detallamos la función &amp;lt;math&amp;gt;\vec{F}&amp;lt;/math&amp;gt; de la que dependerán los valores de los parámetros &amp;lt;math&amp;gt;k_i&amp;lt;/math&amp;gt;:&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;\vec{F}(A,x,y,B)=\vec{F}(\vec{z})=&lt;br /&gt;
\begin{bmatrix}&lt;br /&gt;
    f(\vec{z}) \\ &lt;br /&gt;
    g(\vec{z}) \\ &lt;br /&gt;
    h(\vec{z}) \\ &lt;br /&gt;
    i(\vec{z}) \\ &lt;br /&gt;
\end{bmatrix}=&lt;br /&gt;
\begin{bmatrix}&lt;br /&gt;
    A'(t) \\&lt;br /&gt;
    x'(t) \\&lt;br /&gt;
    y'(t) \\&lt;br /&gt;
    B'(t) \\&lt;br /&gt;
\end{bmatrix}=&lt;br /&gt;
\vec{z}'(t)=&lt;br /&gt;
      \begin{bmatrix}&lt;br /&gt;
      -0.1 A(t)x(t) \\&lt;br /&gt;
      0.1 A(t)x(t)-0.1 x(t)y(t) \\&lt;br /&gt;
      0.1 x(t)y(t)-0.05 y(t) \\&lt;br /&gt;
      0.05 y(t)x(t)\\&lt;br /&gt;
   \end{bmatrix}&lt;br /&gt;
&lt;br /&gt;
\quad \Rightarrow \quad &lt;br /&gt;
&lt;br /&gt;
\begin{cases}&lt;br /&gt;
 [\vec{k_1}] &amp;amp; =  F(\vec{z}_i) \\&lt;br /&gt;
 [\vec{k_2}] &amp;amp; =  F(\vec{z}_i + {1 \over 2}k_1h) \\&lt;br /&gt;
\end{cases}\quad [h=0.01]&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Entonces el método de Heun para este problema está dado por la siguiente ecuación:&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;\vec{z}_{i+1} = \vec{z}_{i} + {1 \over 2}h(\vec{k_1}+\vec{k_2})&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Mediante el siguiente programa en Matlab calculamos numéricamente la solución y la representamos en un gráfico:&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Archivo:AXYBRK4.png|400px|miniaturadeimagen|derecha|Representación gráfica de las concentraciones de A,X,Y y B. Resolución del sistema por Heun]]&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
%Método de Heun&lt;br /&gt;
clc&lt;br /&gt;
&lt;br /&gt;
%Función F=[A'(t);x'(t); y'(t);B'(t)]&lt;br /&gt;
F=inline('0.1.*[-z(1)*z(2);z(1)*z(2)-z(2)*z(3);z(2)*z(3)-z(3)/2;z(3)/2]','z');&lt;br /&gt;
&lt;br /&gt;
%Datos del problema&lt;br /&gt;
A0=5;&lt;br /&gt;
x0=5*10^-4;&lt;br /&gt;
y0=10^(-5);&lt;br /&gt;
B0=0;&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=200;&lt;br /&gt;
h=0.1;&lt;br /&gt;
&lt;br /&gt;
%Vector de variable independiente (t)&lt;br /&gt;
t=t0:h:tN;&lt;br /&gt;
&lt;br /&gt;
%Matriz de variables dependientes z=[A;x;y;B]&lt;br /&gt;
z=zeros(4,length(t));&lt;br /&gt;
z(:,1)=[A0;x0;y0;B0];&lt;br /&gt;
&lt;br /&gt;
for i = 1:length(t)-1&lt;br /&gt;
    k1=F(z(:,i));&lt;br /&gt;
    k2=F(z(:,i)+k1.*h/2);&lt;br /&gt;
    z(:,i+1)=z(:,i)+h/2.*(k1+k2);&lt;br /&gt;
end&lt;br /&gt;
 &lt;br /&gt;
%Representación gráfica&lt;br /&gt;
hold on&lt;br /&gt;
plot(t,z(1,:),'b')&lt;br /&gt;
plot(t,z(2,:),'r')&lt;br /&gt;
plot(t,z(3,:),'g')&lt;br /&gt;
plot(t,z(4,:),'m')&lt;br /&gt;
legend('Sustancia A: A(t)','Sustancia X: x(t)','Sustancia Y: y(t)','Sustancia B: B(t)','Location','Best')&lt;br /&gt;
xlabel('Tiempo (s)')&lt;br /&gt;
ylabel('Concentración (mol/l)')&lt;br /&gt;
grid on&lt;br /&gt;
hold off&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
== Interpretación de las gráficas == &lt;br /&gt;
 &lt;br /&gt;
El proceso comienza con el predominio absoluto del compuesto A en la concentración total, siendo la presencia de los otros tres compuestos despreciable. Durante los primeros segundos la situación apenas cambia, pero tras los diez primeros segundos la concentración de A cae bruscamente mientras que la concentración de X aumenta a la misma velocidad; antes de llegar a los veinte segundos transcurridos las concentraciones de ambos compuestos se igualan y otros quince segundos más tarde el compuesto A  prácticamente ha desaparecido y el X ha alcanzado su concentración máxima (5 mol/litro).&lt;br /&gt;
&lt;br /&gt;
Es entonces cuando concluye la primera reacción y comienzan las otras dos, al no haber más compuesto A que cree compuesto X. La velocidad de aparición de Y es inicialmente mayor que la de B, superando al poco tiempo en concentración a la sustancia X. Sin embargo, llega un momento en el que la concentración de X es tan baja que se ralentiza la creación de Y y pronto empieza a disminuir su concentración tras alcanzar un máximo en torno a los 56 segundos, perdiendo peso la segunda reacción en beneficio de la tercera.&lt;br /&gt;
&lt;br /&gt;
Tras los 60 segundos de reacción el compuesto X pasa a tener una concentración despreciable, por lo que la única reacción simple que se sigue desarrollando es la tercera, destruyéndose reactivo Y y creándose producto B. La concentración de Y va reduciéndose paulatinamente hasta que en torno a los 160 segundos de reacción alcanza niveles insignificantes mientras que la concentración de B alcanza su máximo de 5 mol/litro.&lt;br /&gt;
&lt;br /&gt;
Es interesante observar que en todo momento se cumple el Principio de Conservación de la masa: la suma en cualquier momento de las concentraciones de las sustancias es 5 mol /litro. Esto es fácilmente comprobable en los momentos en que las concentraciones de A, X y B alcanzan su máximo de 5 mol/litro y el resto de concentraciones son nulas o despreciables. &lt;br /&gt;
[[Categoría:Ecuaciones Diferenciales]]&lt;br /&gt;
[[Categoría:ED14/15]]&lt;br /&gt;
[[Categoría:Trabajos 2014-15]]&lt;/div&gt;</summary>
		<author><name>Javier Ruiz de Galarreta López</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Reacciones_con_autocat%C3%A1lisis._Grupo_D12&amp;diff=27479</id>
		<title>Reacciones con autocatálisis. Grupo D12</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Reacciones_con_autocat%C3%A1lisis._Grupo_D12&amp;diff=27479"/>
				<updated>2015-03-06T09:57:03Z</updated>
		
		<summary type="html">&lt;p&gt;Javier Ruiz de Galarreta López: /* Interpretación de las gráficas */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{ TrabajoED | Reacciones con autocatálisis. Grupo D12 | [[:Categoría:Ecuaciones Diferenciales|Ecuaciones Diferenciales]]|[[:Categoría:ED14/15|Curso 2014-15]] | Javier Ruiz de Galarreta López, Argimiro Martínez López, Eduardo Moyano García, Alberto Rodríguez Ruiz. }}&lt;br /&gt;
&lt;br /&gt;
= Introducción: objetivos y metodología =&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
El objetivo de este trabajo es estudiar las concentraciones de los reactivos y productos de una reacción química a lo largo de la evolución en el tiempo de dicha reacción. Para ello modelizaremos el proceso empleando ecuaciones diferenciales y teniendo en cuenta la Ley de Acción de Masas y el Principio de Conservación de la materia.&lt;br /&gt;
&lt;br /&gt;
Al ser las ecuaciones y sistemas que se nos presentan de difícil resolución analítica, utilizaremos el programa informático Matlab para resolverlos mediante métodos numéricos como el de Euler, el del Trapecio, el de Runge-Kutta y el de Heun. &lt;br /&gt;
&lt;br /&gt;
Plasmaremos las soluciones en gráficos que nos permitirán dar una interpretación físico química a los resultados.&lt;br /&gt;
&lt;br /&gt;
= Reacción I =&lt;br /&gt;
&lt;br /&gt;
En primer lugar consideramos una reacción química irreversible en una solución bien mezclada, que se desarrolla para un volumen y una temperatura constantes, y en la que uno de los componentes (B, en este caso), hace de efecto catalítico.&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt; A + B →_{k1} 2B  &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Para desarrollar nuestro análisis nos apoyaremos en dos leyes físico químicas:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''Ley de acción de masas''': Enunciada por Guldberg y Waage en 1864, establece, entre otras cosas, que  la velocidad de&lt;br /&gt;
reacción es proporcional al producto de las concentraciones de los reactivos.&lt;br /&gt;
&lt;br /&gt;
'''Principio de conservación de la masa''': Establece que en una reacción química ordinaria la masa permanece constante, siendo la masa consumida de los reactivos igual a la masa obtenida de los productos. Fue elaborada independientemente por Míjail Lomonósov en 1745 y Antoine Lavoisier en 1785.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Interpretación del problema y deducción de las ecuaciones diferenciales ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Para hallar las ecuaciones diferenciales que nos describan cómo se desarrolla la reacción en el tiempo nos basaremos en las dos leyes enunciadas anteriormente. En primer lugar, definimos nuestra variable independiente como el tiempo &amp;lt;math&amp;gt;t&amp;lt;/math&amp;gt; en segundos. Las dos variables dependientes serán las concentraciones de los compuestos A y B, que denominaremos &amp;lt;math&amp;gt;x(t)&amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt;y(t)&amp;lt;/math&amp;gt;, ambas expresadas en mol/l. &lt;br /&gt;
&lt;br /&gt;
El principio de conservación de la masa expone que la suma de las concentraciones de los reactivos y los productos es constante. Esto equivale, derivando la expresión &amp;lt;math&amp;gt;x(t)+y(t)=cte&amp;lt;/math&amp;gt;, a que  desaparece tanto reactivo como producto aparece, o lo que es lo mismo, que la velocidad de aparición del producto es igual a la velocidad de desaparición (velocidad de aparición negativa) del reactivo:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;x'(t)=-y'(t)&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
La otra ecuación que necesitamos la obtenemos directamente de aplicar la Ley de acción de masas, que establece que la velocidad de la reacción (la velocidad a la que aparece el producto o desaparece el reactivo) es igual al producto de las concentraciones por una constante.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;y'(t)=k_1x(t)y(t)&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Obtención del problema de valor inicial ==&lt;br /&gt;
Una vez demostrado el origen de las ecuaciones (1) y (2) en el apartado anterior, obtendremos el problema de valor inicial (PVI) mediante las operaciones detalladas a continuación:&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;x'(t)+y'(t)=0\quad\quad(1)&amp;lt;/math&amp;gt;&lt;br /&gt;
:&amp;lt;math&amp;gt;y'(t)=k_1x(t)y(t)\quad\quad(2)&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Integrando (1) obtenemos (3):&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
:&amp;lt;math&amp;gt;\int_\mathbb{D} (\frac{dx(t)}{dt} + \frac{dy(t)}{dt})\,dt =\int_\mathbb{D} 0\,dt \quad \Rightarrow \quad x(t)+y(t)=k_2\quad \Rightarrow \quad x(t)=k_2-y(t)\quad\quad(3)&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Sustituyendo (3) en (2), obtenemos (4):&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;y'(t)=k_1x(t)y(t)\quad \Rightarrow \quad y'(t)=k_1(k_2-y(t))y(t)\quad \Rightarrow \quad y'(t)=k_1k_2y(t)-k_1y^2(t)\quad\quad(4)&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Conocemos las concentraciones iniciales de A y de B, por lo que podemos obtener el valor de la constante k&amp;lt;sub&amp;gt;2&amp;lt;/sub&amp;gt;:&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;[A]:\quad x(0)=1 mol/l;\quad\quad [B]:\quad y(0)=0,01 mol/l&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;x(t)+y(t)=k_2\quad \Rightarrow \quad x(0)+y(0)=k_2\quad \Rightarrow \quad 1+0,01=k_2\quad \Rightarrow \quad k_2=1,01&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Por último, conocemos también el valor de k&amp;lt;sub&amp;gt;1&amp;lt;/sub&amp;gt;, por lo que podremos plantear a continuación el correspondiente PVI:&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;k_1=1&amp;lt;/math&amp;gt;&lt;br /&gt;
:&amp;lt;math&amp;gt;(PVI)\begin{cases}y'(t)=1,01y(t)-y^2(t) \\ \\&lt;br /&gt;
y(0) = 0,01 \end{cases}\quad (t,y)\in[0,10]\times\mathbb{R}&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Unicidad de la solución ==&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Existencia-y-unicidad.png|200px|miniaturadeimagen|derecha|Intersección B con dominio]]&lt;br /&gt;
&lt;br /&gt;
Aplicamos a continuación el Teorema de Existencia y Unicidad:&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Sea &amp;lt;math&amp;gt;f(t,y)=y'(t) \Rightarrow f(t,y)=1.01y(t)-y^2(t)\quad&amp;lt;/math&amp;gt;, y &amp;lt;math&amp;gt;\quad\frac{\partial }{\partial y} f(t,y) = 1.01-2y(t)&amp;lt;/math&amp;gt;.&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
Y sea &amp;lt;math&amp;gt;B[(t_0,y_0),r],\quad r&amp;gt;0,\quad en (t_0,y_0)=(0,0.01)&amp;lt;/math&amp;gt;.&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;f(t,y)&amp;lt;/math&amp;gt; es continua en &amp;lt;math&amp;gt; \mathbb{B}\cap \mathbb{D}\quad \Rightarrow \quad \exists  y(t)\quad /\quad y'(t)=1,01y(t)-y^2(t)&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;math&amp;gt;\frac{\partial }{\partial y} f(t,y)&amp;lt;/math&amp;gt; es continua en &amp;lt;math&amp;gt; \mathbb{B}\cap \mathbb{D}\quad \Rightarrow \quad \exists !  y(t)\quad /\quad y'(t)=1,01y(t)-y^2(t)&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Con lo que queda demostrado que el (PVI) tiene solución y además esta es única.&lt;br /&gt;
&lt;br /&gt;
== Resolución numérica del problema de valor inicial ==&lt;br /&gt;
&lt;br /&gt;
En este apartado resolveremos el problema de valor inicial planteado anteriormente con tres métodos de integración numérica: el método de Euler, el método del Trapecio y el método de Runge-Kutta de orden 4.&lt;br /&gt;
&lt;br /&gt;
=== Método de Euler ===&lt;br /&gt;
&lt;br /&gt;
El método de Euler, llamado así en honor al matemático Leonhard Euler, es un procedimiento de integración numérica. Su expresión matemática es: &lt;br /&gt;
&amp;lt;math&amp;gt;  PVI = &lt;br /&gt;
   \left \{&lt;br /&gt;
      \begin{array}{rcl}y_0\\&lt;br /&gt;
           y_{n+1} = y_n + h*f(t_n,y_n)\\ &lt;br /&gt;
      \end{array}&lt;br /&gt;
   \right .&lt;br /&gt;
   &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
A continuación emplearemos esta expresión en un programa de Matlab para obtener una aproximación de las soluciones. El código de dicho programa es el siguiente.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Eulergrafica.png|400px|miniaturadeimagen|derecha|Representación gráfica y(t). Método de Euler]]&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
%Método de Euler&lt;br /&gt;
clc&lt;br /&gt;
&lt;br /&gt;
%Datos iniciales&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=4;&lt;br /&gt;
y0=0.01;&lt;br /&gt;
h=0.1;&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=10;&lt;br /&gt;
&lt;br /&gt;
%Cálculo de subintervalos&lt;br /&gt;
N=round((tN-t0)/h);&lt;br /&gt;
t=t0:h:tN;&lt;br /&gt;
&lt;br /&gt;
%Creamos el vector donde vamos a guardar las soluciones&lt;br /&gt;
y=zeros(1,N+1);&lt;br /&gt;
y(1)=y0;&lt;br /&gt;
&lt;br /&gt;
%Euler&lt;br /&gt;
for i=1:N;&lt;br /&gt;
    y(i+1)=y(i)+h*(1.01*y(i)-(y(i)).^2);&lt;br /&gt;
end&lt;br /&gt;
%Tabla de Resultados&lt;br /&gt;
[t',y']&lt;br /&gt;
x=1.01-y;&lt;br /&gt;
hold on &lt;br /&gt;
plot(t,y,'r')&lt;br /&gt;
plot(t,x,'b')&lt;br /&gt;
hold off&lt;br /&gt;
legend('Sustancia B: y(t)','Sustancia A: x(t)','Location','best');&lt;br /&gt;
xlabel('Tiempo (s)')&lt;br /&gt;
ylabel('Concentración (mol/l)')&lt;br /&gt;
grid on&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
=== Método del trapecio ===&lt;br /&gt;
&amp;lt;math&amp;gt;  PVI = &lt;br /&gt;
   \left \{&lt;br /&gt;
      \begin{array}{rcl}&lt;br /&gt;
          y_0\\&lt;br /&gt;
           y_{n+1} = y_n + \frac{h}{2}*f(t_n,y_n)\\ &lt;br /&gt;
      \end{array}&lt;br /&gt;
   \right .&lt;br /&gt;
   &amp;lt;/math&amp;gt;&lt;br /&gt;
[[Archivo:Trapeciografica.png|400px|miniaturadeimagen|derecha|Representación gráfica y(t). Método del Trapecio]]&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
%Método del Trapecio&lt;br /&gt;
clc&lt;br /&gt;
&lt;br /&gt;
%Datos iniciales&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=4;&lt;br /&gt;
y0=0.01;&lt;br /&gt;
h=0.1;&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=10;&lt;br /&gt;
&lt;br /&gt;
%Cálculo de subintervalos&lt;br /&gt;
N=round((tN-t0)/h);&lt;br /&gt;
t=t0:h:tN;&lt;br /&gt;
&lt;br /&gt;
%Creamos el vector donde vamos a guardar las soluciones&lt;br /&gt;
y=zeros(1,N+1);&lt;br /&gt;
y(1)=y0;&lt;br /&gt;
&lt;br /&gt;
for i=1:N&lt;br /&gt;
y(i+1)=(((1-(h/2)*1.01)-sqrt(((1-(h/2)*1.01)^2)+4*(h/2)*((1+(h/2)*1.01)*y(i)-(h/2)*(y(i))^2)))/-h);&lt;br /&gt;
end&lt;br /&gt;
%Sacamos la tabla de resultados&lt;br /&gt;
[t',y']&lt;br /&gt;
x=1.01-y;&lt;br /&gt;
%Gráfico&lt;br /&gt;
hold on&lt;br /&gt;
plot(t,y,'r')&lt;br /&gt;
plot(t,x,'b')&lt;br /&gt;
legend('Sustancia B: y(t)','Sustancia A: x(t)','Location','best');&lt;br /&gt;
xlabel('Tiempo (s)')&lt;br /&gt;
ylabel('Concentración (mol/l)')&lt;br /&gt;
grid on&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
=== Método de Runge-Kutta ===&lt;br /&gt;
&lt;br /&gt;
El método de resolución numérica de Runge-Kutta, involucra un gran número de parámetros. Para simplificar la implementación de este método en Matlab, utilizaremos la función ''inline'', con la que declararemos previamente la función algebraica necesaria para el cálculo de los parámetros &amp;lt;math&amp;gt;k_i&amp;lt;/math&amp;gt;, ahorrándonos tener que escribir innumerables veces la correspondiente expresión matemática.&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
A continuación, detallamos la función &amp;lt;math&amp;gt;f(y)&amp;lt;/math&amp;gt; de la que dependerán los valores de los parámetros &amp;lt;math&amp;gt;k_i&amp;lt;/math&amp;gt;:&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;f(y)=y'(t)=1.01y(t)-y(t)^2&lt;br /&gt;
&lt;br /&gt;
\quad \Rightarrow \quad&lt;br /&gt;
&lt;br /&gt;
\begin{cases}&lt;br /&gt;
 k_1 &amp;amp; =  f(y_i) \\&lt;br /&gt;
 k_2 &amp;amp; =  f(y_i + {1 \over 2}k_1h) \\&lt;br /&gt;
 k_3 &amp;amp; =  f(y_i + \frac{1}{2}k_2h) \\&lt;br /&gt;
 k_4 &amp;amp; =  f(y_i + k_3h) \\&lt;br /&gt;
\end{cases}\quad [h=0.1]&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Entonces el método RK4 para este problema está dado por la siguiente ecuación:&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;y_{i+1} = y_{i} + {1 \over 6}h(k_1+2k_2+2k_3+k_4)&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Mediante el siguiente programa en Matlab calculamos numéricamente la solución y la representamos en un gráfico:&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Archivo:RK4II.png|400px|miniaturadeimagen|derecha|Representación gráfica y(t). Método Runge-Kutta]]&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
%Método de Runge-Kutta&lt;br /&gt;
clc&lt;br /&gt;
&lt;br /&gt;
%Función f(t)=y'(t)&lt;br /&gt;
fy=inline('1.01*y-y^2','y');&lt;br /&gt;
&lt;br /&gt;
%Datos del problema&lt;br /&gt;
y0=0.01;&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=10;&lt;br /&gt;
h=0.1;&lt;br /&gt;
&lt;br /&gt;
%Variable independiente (t)&lt;br /&gt;
t=t0:h:tN;&lt;br /&gt;
&lt;br /&gt;
%Variable dependiente (y)&lt;br /&gt;
y=zeros(1,length(t));&lt;br /&gt;
y(1)=y0;&lt;br /&gt;
&lt;br /&gt;
for i=1:length(t)-1&lt;br /&gt;
    k1=fy(y(i));&lt;br /&gt;
    k2=fy(y(i)+k1/2*h);&lt;br /&gt;
    k3=fy(y(i)+k2/2*h);&lt;br /&gt;
    k4=fy(y(i)+k3*h);&lt;br /&gt;
    y(i+1)=y(i)+h/6*(k1+2*k2+2*k3+k4);&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
%Variable dependiente (x)&lt;br /&gt;
x=1.01-y;&lt;br /&gt;
&lt;br /&gt;
%Representación gráfica&lt;br /&gt;
hold on&lt;br /&gt;
plot(t,x,'b')&lt;br /&gt;
plot(t,y,'r')&lt;br /&gt;
legend('Sustancia A: x(t)','Sustancia B: y(t)')&lt;br /&gt;
xlabel('Tiempo (s)')&lt;br /&gt;
ylabel('Concentración (mol/l)')&lt;br /&gt;
grid on&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
=== Comparación de métodos===&lt;br /&gt;
&lt;br /&gt;
Podemos observar fácilmente que las gráficas obtenidas con los diferentes métodos son iguales a primera vista. Sin embargo, superponiéndolas queda patente que no son exactamente iguales debido a que los métodos no poseen la misma precisión y , al operar todos con la misma longitud de paso, unos aproximan la solución exacta mejor que otros. Así se observa en estas imágenes:&lt;br /&gt;
&lt;br /&gt;
[[Archivo:comparativa1.jpg|400px|miniaturadeimagen|izquierda|Comparación de métodos]]&lt;br /&gt;
[[Archivo:comparativa2.jpg|400px|miniaturadeimagen|derecha|Comparación de métodos]]&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
Como podemos comprobar en las imágenes, el método de Euler es menos preciso que el del trapecio o el de Runge-Kutta.&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Resolución en forma de sistema de ecuaciones ==&lt;br /&gt;
&lt;br /&gt;
A continuación vamos a plantear el problema de valor inicial con un sistema no lineal de dos ecuaciones equivalente al problema resuelto anteriormente.&lt;br /&gt;
&lt;br /&gt;
Estas ecuaciones serán:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;(PVI)&lt;br /&gt;
\begin{cases}&lt;br /&gt;
    y'(t)=k_1 x(t)y(t) \\&lt;br /&gt;
    x'(t)=-k_1 x(t)y(t) \\&lt;br /&gt;
    \\&lt;br /&gt;
    x(0)=1 \\&lt;br /&gt;
    y(0) = 0.01&lt;br /&gt;
\end{cases}&lt;br /&gt;
\quad t\in[0,10]&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Resolveremos el problema por el método de Euler y por el método de Runge-Kutta, plasmando las soluciones en gráficos.&lt;br /&gt;
&lt;br /&gt;
=== Método de Euler ===&lt;br /&gt;
&lt;br /&gt;
En este caso aplicaremos en el siguiente código la expresión para EDO a cada una de las ecuaciones que conforma el sistema, obteniendo la correspondiente gráfica.&lt;br /&gt;
 &lt;br /&gt;
[[Archivo:SistEuler.png|400px|miniaturadeimagen|derecha|Representación gráfica de las concentraciones de A y B. Resolución del sistema por Euler]]&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
&lt;br /&gt;
%Resolución del sistema por el método de Euler&lt;br /&gt;
&lt;br /&gt;
clear all&lt;br /&gt;
&lt;br /&gt;
%Definimos el vector de la variable independiente, el número de&lt;br /&gt;
%subintervalos y la longitud de paso&lt;br /&gt;
&lt;br /&gt;
t0 = 0;&lt;br /&gt;
tN = 10;&lt;br /&gt;
h = 0.1;&lt;br /&gt;
t = t0:h:tN&lt;br /&gt;
N = (tN-t0)/h;&lt;br /&gt;
&lt;br /&gt;
%Definimos los vectores de las variables dependientes&lt;br /&gt;
&lt;br /&gt;
x = zeros(1, N+1);&lt;br /&gt;
y = zeros(1, N+1);&lt;br /&gt;
&lt;br /&gt;
x(1) = 1;&lt;br /&gt;
y(1) = 0.01;&lt;br /&gt;
&lt;br /&gt;
for i = 1:N&lt;br /&gt;
    &lt;br /&gt;
    x(i+1)=x(i)+h*(-x(i).*y(i));&lt;br /&gt;
    y(i+1)=y(i)+h*(y(i).*x(i));&lt;br /&gt;
    &lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
%Representamos gráficamente las soluciones&lt;br /&gt;
&lt;br /&gt;
hold on&lt;br /&gt;
&lt;br /&gt;
plot(t,x,'b');&lt;br /&gt;
plot(t,y,'r');&lt;br /&gt;
grid on&lt;br /&gt;
&lt;br /&gt;
legend('Sustancia A: x(t)','Sustancia B: y(t)')&lt;br /&gt;
xlabel('Tiempo (s)')&lt;br /&gt;
ylabel('Concentración (mol/l)')&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
hold off&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
}}&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
A continuación tendremos que comprobar si el método es estable.&lt;br /&gt;
Un método es estable cuando el error local es pequeño y además este error no se amplifica a lo largo del tiempo. Para mirar la estabilidad del método de Euler resolveremos el sistema usando &amp;quot;h=0.01&amp;quot; y &amp;quot;h=0.001&amp;quot;. Para ello usaremos el mismo programa anterior simplemente variando h. La línea azul representa el programa que usa &amp;quot;h=0.01&amp;quot; y la línea roja representa el programa que usa &amp;quot;h=0.001&amp;quot;&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Comparacioneulers123.jpg|400px|miniaturadeimagen|izquierda|Representación gráfica y(t). Método de Euler]]&lt;br /&gt;
[[Archivo:Comparacioneulers321.jpg|400px|miniaturadeimagen|derecha|Representación gráfica y(t). Método de Euler]]&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
Como podemos ver en la primera imágen las gráficas se superponen y no se aprecian diferencias hasta que no ampliamos la imagen. Y esto sucede en todo momento con lo que podemos garantizar que en este caso es estable.&lt;br /&gt;
&lt;br /&gt;
=== Método de Runge-Kutta===&lt;br /&gt;
&lt;br /&gt;
El método de resolución numérica de Runge-Kutta, involucra un gran número de parámetros. Para simplificar la implementación de este método en Matlab, el sistema se tratará como una matriz &amp;lt;math&amp;gt;z&amp;lt;/math&amp;gt;. Además, utilizaremos la función ''inline'', con la que declararemos previamente la función algebraica necesaria para el cálculo de los parámetros &amp;lt;math&amp;gt;k_i&amp;lt;/math&amp;gt;, ahorrándonos tener que escribir innumerables veces la correspondiente expresión matemática.&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Primero, expresamos el sistema en forma matricial:&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;(PVI)\begin{cases}&lt;br /&gt;
    x'(t)=-k_1 x(t)y(t) \\&lt;br /&gt;
    y'(t)=k_1 x(t)y(t) \\&lt;br /&gt;
    \\&lt;br /&gt;
    x(0)=1 \\&lt;br /&gt;
    y(0) = 0.01&lt;br /&gt;
\end{cases}\quad t\in[0,10]&lt;br /&gt;
&lt;br /&gt;
\quad \Rightarrow \quad k_1=1\quad \Rightarrow \quad&lt;br /&gt;
&lt;br /&gt;
(PVI)\begin{cases}\vec{z}'(t)=&lt;br /&gt;
   \begin{bmatrix}&lt;br /&gt;
      x'(t) \\&lt;br /&gt;
      y'(t) \\&lt;br /&gt;
   \end{bmatrix}&lt;br /&gt;
=&lt;br /&gt;
      \begin{bmatrix}&lt;br /&gt;
      -x(t)y(t) \\&lt;br /&gt;
      x(t)y(t) \\&lt;br /&gt;
   \end{bmatrix}&lt;br /&gt;
&lt;br /&gt;
 \\ \\ \vec{z}(0)=&lt;br /&gt;
   \begin{bmatrix}&lt;br /&gt;
      x(0) \\&lt;br /&gt;
      y(0) \\&lt;br /&gt;
   \end{bmatrix}&lt;br /&gt;
=&lt;br /&gt;
      \begin{bmatrix}&lt;br /&gt;
      1 \\&lt;br /&gt;
      0.01 \\&lt;br /&gt;
   \end{bmatrix}&lt;br /&gt;
\end{cases}\quad t\in[0,10]&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
A continuación, detallamos la función &amp;lt;math&amp;gt;\vec{F}&amp;lt;/math&amp;gt; de la que dependerán los valores de los parámetros &amp;lt;math&amp;gt;k_i&amp;lt;/math&amp;gt;:&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;\vec{F}(x,y)=\vec{F}(\vec{z})=&lt;br /&gt;
&lt;br /&gt;
\begin{bmatrix}&lt;br /&gt;
    f(\vec{z}) \\&lt;br /&gt;
    g(\vec{z}) \\&lt;br /&gt;
\end{bmatrix}=&lt;br /&gt;
&lt;br /&gt;
\begin{bmatrix}&lt;br /&gt;
    x'(t) \\&lt;br /&gt;
    y'(t) \\&lt;br /&gt;
\end{bmatrix}=&lt;br /&gt;
&lt;br /&gt;
\vec{z}'(t)=&lt;br /&gt;
&lt;br /&gt;
\begin{bmatrix}&lt;br /&gt;
    -x(t)y(t) \\&lt;br /&gt;
    x(t)y(t) \\&lt;br /&gt;
\end{bmatrix}&lt;br /&gt;
\quad \Rightarrow \quad&lt;br /&gt;
&lt;br /&gt;
\begin{cases}&lt;br /&gt;
 [\vec{k_1}] &amp;amp; =  F(\vec{z}_i) \\&lt;br /&gt;
 [\vec{k_2}] &amp;amp; =  F(\vec{z}_i + {1 \over 2}k_1h) \\&lt;br /&gt;
 [\vec{k_3}] &amp;amp; =  F(\vec{z}_i + \frac{1}{2}k_2h) \\&lt;br /&gt;
 [\vec{k_4}] &amp;amp; =  F(\vec{z}_i + k_3h) \\&lt;br /&gt;
\end{cases}\quad [h=0.1]&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Entonces el método RK4 para este problema está dado por la siguiente ecuación:&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;\vec{z}_{i+1} = \vec{z}_{i} + {1 \over 6}h(\vec{k_1}+2\vec{k_2}+2\vec{k_3}+\vec{k_4})&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Mediante el siguiente programa en Matlab calculamos numéricamente la solución y la representamos en un gráfico:&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Archivo:sistema_RK4.png|400px|miniaturadeimagen|derecha|Representación gráfica de las concentraciones de A y B. Resolución del sistema por Runge-Kutta]]&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
%Método de Runge-Kutta&lt;br /&gt;
clc&lt;br /&gt;
&lt;br /&gt;
%Función F=[x'(t); y'(t)]&lt;br /&gt;
F=inline('[-z(1)*z(2);z(1)*z(2)]','z');&lt;br /&gt;
&lt;br /&gt;
%Datos del problema &lt;br /&gt;
x0=1;&lt;br /&gt;
y0=0.01;&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=10;&lt;br /&gt;
h=0.1;&lt;br /&gt;
&lt;br /&gt;
%Vector de variable independiente (t)&lt;br /&gt;
t=t0:h:tN;&lt;br /&gt;
&lt;br /&gt;
%Matriz de variables dependientes z=[x;y]&lt;br /&gt;
z=zeros(2,length(t));&lt;br /&gt;
z(:,1)=[x0;y0];&lt;br /&gt;
&lt;br /&gt;
for i = 1:length(t)-1&lt;br /&gt;
    k1=F(z(:,i));&lt;br /&gt;
    k2=F(z(:,i)+k1.*h/2);&lt;br /&gt;
    k3=F(z(:,i)+k2.*h/2);&lt;br /&gt;
    k4=F(z(:,i)+k3.*h);&lt;br /&gt;
    z(:,i+1)=z(:,i)+h/6.*(k1+2.*k2+2.*k3+k4);&lt;br /&gt;
end&lt;br /&gt;
 &lt;br /&gt;
%Representación gráfica&lt;br /&gt;
hold on&lt;br /&gt;
plot(t,z(1,:))&lt;br /&gt;
plot(t,z(2,:),'r')&lt;br /&gt;
legend('Sustancia A: x(t)','Sustancia B: y(t)')&lt;br /&gt;
xlabel('Tiempo (s)')&lt;br /&gt;
ylabel('Concentración (mol/l)')&lt;br /&gt;
grid on&lt;br /&gt;
%hold off&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
== Interpretación de las gráficas ==&lt;br /&gt;
&lt;br /&gt;
Como cabía esperar, obtenemos la misma solución resolviendo el problema como sistema o como EDO. Podemos observar por los resultados obtenidos que la velocidad de aparición de B es igual a la velocidad de desaparición de A (como dicta el principio de conservación de la masa), que A acaba desapareciendo prácticamente por completo y que la concentración de B termina por estabilizarse alrededor de 1 mol/l. Ambos compuestos alcanzan sus los extremos de sus concentraciones en el mismo instante de tiempo&lt;br /&gt;
&lt;br /&gt;
También cabe destacar que cuando el tiempo transcurrido alcanza 4,5 segundos las concentraciones de ambos compuestos son las mismas.&lt;br /&gt;
&lt;br /&gt;
= Reacción II =&lt;br /&gt;
&lt;br /&gt;
En este apartado vamos a estudiar la reacción propuesta por Alfred J. Lotka en 1920, que es la siguiente:&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt; A + X →_{k1} 2X;&amp;lt;/math&amp;gt;     :&amp;lt;math&amp;gt; X + Y →_{k2} 2Y;&amp;lt;/math&amp;gt;     :&amp;lt;math&amp;gt;Y →_{k3} 2B  &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Como se puede observar, se trata de una reacción compleja integrada por 3 reacciones simples (las dos primeras autocatalíticas) en las que intervienen un total de 4 compuestos, A, B, X e Y. Siguiendo el desarrollo de la reacción, es lógico suponer que A se agotará al comienzo de la reacción, que los máximos de concentración de X e Y se darán en los estados intermedios y que al final el compuesto B será el único restante, siendo el producto final de la reacción.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Interpretación del problema y deducción de las ecuaciones diferenciales ==&lt;br /&gt;
&lt;br /&gt;
Para averiguar cómo evolucionan las concentraciones de los cuatro compuestos durante el desarrollo de la reacción necesitaremos obtener cuatro ecuaciones diferenciales. Para ello nos volveremos a basar en los principios físicos que ya empleamos en la anterior reacción. Definimos A(t), x(t), y(t), y B(t) (A, x, y, B; para ahorrar notación) a las concentraciones de A, X, Y, y B, respectivamente. &lt;br /&gt;
&lt;br /&gt;
En primer lugar aplicamos el Principio de Conservación de la masa, que establece que la suma de las concentraciones de los compuestos es constante (no desaparece masa en el proceso), lo que derivando nos indica que:&lt;br /&gt;
&lt;br /&gt;
: &amp;lt;math&amp;gt; A' + y' + y' + B' = 0 \quad\quad(I)&amp;lt;/math&amp;gt;       &lt;br /&gt;
&lt;br /&gt;
A continuación aplicaremos la Ley de Acción de Masas (velocidad de reacción proporcional al producto de la concentración de los reactivos).&lt;br /&gt;
&lt;br /&gt;
Aplicando esta ley a la última reacción simple obtenemos que: &lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;B'=k_3y \quad\quad(II)&amp;lt;/math&amp;gt;        &lt;br /&gt;
&lt;br /&gt;
En el caso de las concentraciones de X e Y las expresiones resultantes son algo más complicadas ya que estos dos compuestos actúan como reactivos y productos en más de una reacción simple, por lo que la variación de sus concentraciones será la suma de las variaciones de las reacciones en las que aparezcan:&lt;br /&gt;
&lt;br /&gt;
: &amp;lt;math&amp;gt; x' = x'_{1} + x'_{2} → x' = k_{1}Ax - k{2}xy \quad\quad(III)&amp;lt;/math&amp;gt;        &lt;br /&gt;
: &amp;lt;math&amp;gt; y' = y'_{2} + y'_{3} → y' = k_{2}xy − k_3{y} \quad\quad(IV)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Por último sustituimos (II), (III) y (IV) en (I) obteniendo: &lt;br /&gt;
&lt;br /&gt;
: &amp;lt;math&amp;gt; A' + k_{1}Ax - k{2}xy + k_{2}xy − k_3{y}+ k_3y= 0 : &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
De donde obtenemos que:&lt;br /&gt;
&lt;br /&gt;
: &amp;lt;math&amp;gt; A' = -k_{1}Ax &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Ahora que ya tenemos las variaciones de concentración de los compuestos en función de las concentraciones podemos aplicar métodos numéricos que nos lleven a una solución aproximada.&lt;br /&gt;
&lt;br /&gt;
== Resolución numérica del sistema de ecuaciones ==&lt;br /&gt;
&lt;br /&gt;
Una vez obtenidas las ecuaciones y conociendo las condiciones iniciales y los valores de las constantes podemos plantear el problema de valor inicial para luego resolverlo.&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;(PVI)&lt;br /&gt;
\begin{cases}&lt;br /&gt;
    A' = -k_{1}Ax\\&lt;br /&gt;
    x' = k_{1}Ax - k{2}xy\\&lt;br /&gt;
    y' = k_{2}xy − k_3{y}\\&lt;br /&gt;
    B'=k_3y \\&lt;br /&gt;
\\&lt;br /&gt;
    A(0)=5  \\&lt;br /&gt;
    x(0)=5*10^{-4} \\&lt;br /&gt;
    y(0)=10^{-5}\\&lt;br /&gt;
    B(0)=0 \\&lt;br /&gt;
\end{cases}&lt;br /&gt;
\quad t\in[0,200]&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Siendo &amp;lt;math&amp;gt; k_{1}=K_{2}=2k_{3}=0.1 &amp;lt;/math&amp;gt; y las unidades de la concentración mol/l.&lt;br /&gt;
&lt;br /&gt;
=== Método de Euler ===&lt;br /&gt;
&lt;br /&gt;
Aplicamos el método de Euler de forma análoga a como lo hicimos en [[Reacciones_con_autocatálisis._Grupo_D12#Método_de_Euler_2|apartado 2.5.1]]&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Euler lotka0.01.png|400px|miniaturadeimagen|derecha|Representación gráfica de las concentraciones de A, B, X, e Y a lo largo del tiempo. Resoluciónd delsistema por el método de Euler con longitud de paso h=0.01]] &lt;br /&gt;
[[Archivo:Euler lotka0.001.png|400px|miniaturadeimagen|derecha|Representación gráfica de las concentraciones de A, B, X, e Y a lo largo del tiempo. Resoluciónd delsistema por el método de Euler con longitud de paso h=0.001]]&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
&lt;br /&gt;
%Resolución del sistema de la reacción de Lotka por el método de Euler&lt;br /&gt;
&lt;br /&gt;
clear all&lt;br /&gt;
&lt;br /&gt;
%Definimos la variable independiente y establecemos los datos del problema&lt;br /&gt;
%de valor inicial. Para la longitud de paso h introducimos en primer lugar&lt;br /&gt;
%0.01 y luego 0.001&lt;br /&gt;
&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=200;&lt;br /&gt;
h= input('Introduzca una longitud de paso ');&lt;br /&gt;
t = t0:h:tN;&lt;br /&gt;
N=(tN-t0)/h;&lt;br /&gt;
k1 = 0.1;&lt;br /&gt;
k2 = 0.1;&lt;br /&gt;
k3 = 0.05;&lt;br /&gt;
A0 = 5;&lt;br /&gt;
B0 = 0;&lt;br /&gt;
X0 = 5*10^(-4);&lt;br /&gt;
Y0 = 10^(-5);&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
%Definimos las variables dependientes.&lt;br /&gt;
&lt;br /&gt;
A = zeros(1, N-1);&lt;br /&gt;
B = A;&lt;br /&gt;
X = A;&lt;br /&gt;
Y = A;&lt;br /&gt;
&lt;br /&gt;
A(1) = A0;&lt;br /&gt;
B(1) = B0;&lt;br /&gt;
X(1) = X0;&lt;br /&gt;
Y(1) = Y0;&lt;br /&gt;
&lt;br /&gt;
for i = 1:N&lt;br /&gt;
    &lt;br /&gt;
    X(i+1) = X(i) + h*(k1*A(i)*X(i)-k2*Y(i)*X(i));&lt;br /&gt;
    Y(i+1)=Y(i)+h.*(k2.*X(i).*Y(i)-k3.*Y(i));&lt;br /&gt;
    B(i+1) = B(i) + h*(k3*Y(i));&lt;br /&gt;
    A(i+1) = A(i) + h*(-k1*A(i)*X(i));&lt;br /&gt;
   &lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
%Representamos gráficamente la solución&lt;br /&gt;
&lt;br /&gt;
hold on&lt;br /&gt;
&lt;br /&gt;
plot (t,A,'b')&lt;br /&gt;
plot(t, X, 'r')&lt;br /&gt;
plot(t,Y, 'g')&lt;br /&gt;
plot(t, B, 'm')&lt;br /&gt;
legend('Sustancia A: A(t)','Sustancia X: x(t)','Sustancia Y: y(t)','Sustancia B: B(t)','Location','Best')&lt;br /&gt;
xlabel('Tiempo (s)')&lt;br /&gt;
ylabel('Concentración (mol/l)')&lt;br /&gt;
grid on&lt;br /&gt;
&lt;br /&gt;
hold off&lt;br /&gt;
&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
=== Método de Heun ===&lt;br /&gt;
&lt;br /&gt;
Si bien el método de resolución numérica de Heun no involucra un número de parámetros tan notable como el método de Runge-Kutta, en este caso tenemos un sistema de 4 ecuaciones diferenciales, por lo que, en aras de simplificar, utilizaremos el mismo criterio que en el [[Reacciones_con_autocatálisis._Grupo_D12#Método_de_Runge-Kutta_2|apartado 2.5.2]].: El sistema se tratará como una matriz &amp;lt;math&amp;gt;z&amp;lt;/math&amp;gt;, y para la obtención de los parámetros &amp;lt;math&amp;gt;k_i&amp;lt;/math&amp;gt; utilizaremos la función ''inline'', con la que declararemos previamente las expresiones necesarias para el cálculo de los parámetros &amp;lt;math&amp;gt;k_i&amp;lt;/math&amp;gt;.&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Primero, expresamos el sistema en forma matricial:&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;(PVI)\begin{cases}&lt;br /&gt;
A'(t)=-k_1 A(t)x(t) \\&lt;br /&gt;
x'(t)=k_1 A(t)x(t)-k_2 x(t)y(t) \\&lt;br /&gt;
y'(t)=k_2 x(t)y(t)-k_3 y(t) \\&lt;br /&gt;
B'(t)=k_3 x(t)y(t) \\ \\&lt;br /&gt;
A(0)=5 \\&lt;br /&gt;
x(0)=5·10^{-4} \\&lt;br /&gt;
y(0)=10^{-5} \\&lt;br /&gt;
B(0) = 0&lt;br /&gt;
\end{cases}\quad t\in[0,200]&lt;br /&gt;
&lt;br /&gt;
\quad \Rightarrow \quad&lt;br /&gt;
&lt;br /&gt;
\begin{cases}&lt;br /&gt;
k_1=0.1 \\&lt;br /&gt;
k_2=0.1 \\&lt;br /&gt;
k_3=0.05 \\&lt;br /&gt;
&lt;br /&gt;
\end{cases}&lt;br /&gt;
&lt;br /&gt;
\quad \Rightarrow \quad&lt;br /&gt;
&lt;br /&gt;
(PVI)\begin{cases}\vec{z}'(t)=&lt;br /&gt;
   \begin{bmatrix}&lt;br /&gt;
      A'(t) \\&lt;br /&gt;
      x'(t) \\&lt;br /&gt;
      y'(t) \\&lt;br /&gt;
      B'(t) \\&lt;br /&gt;
   \end{bmatrix}&lt;br /&gt;
=&lt;br /&gt;
      \begin{bmatrix}&lt;br /&gt;
      -0.1 A(t)x(t) \\&lt;br /&gt;
      0.1 A(t)x(t)-0.1 x(t)y(t) \\&lt;br /&gt;
      0.1 x(t)y(t)-0.05 y(t) \\&lt;br /&gt;
      0.05 y(t)x(t)\\&lt;br /&gt;
   \end{bmatrix}&lt;br /&gt;
&lt;br /&gt;
 \\ \\ \vec{z}(0)=&lt;br /&gt;
   \begin{bmatrix}&lt;br /&gt;
      A(0) \\&lt;br /&gt;
      x(0) \\&lt;br /&gt;
      y(0) \\&lt;br /&gt;
      B(0) \\&lt;br /&gt;
   \end{bmatrix}&lt;br /&gt;
=&lt;br /&gt;
      \begin{bmatrix}&lt;br /&gt;
      5 \\&lt;br /&gt;
      5·10^{-4} \\&lt;br /&gt;
      10^{-5} \\&lt;br /&gt;
      0&lt;br /&gt;
   \end{bmatrix}&lt;br /&gt;
\end{cases}\quad t\in[0,200]&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
A continuación, detallamos la función &amp;lt;math&amp;gt;\vec{F}&amp;lt;/math&amp;gt; de la que dependerán los valores de los parámetros &amp;lt;math&amp;gt;k_i&amp;lt;/math&amp;gt;:&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;\vec{F}(A,x,y,B)=\vec{F}(\vec{z})=&lt;br /&gt;
\begin{bmatrix}&lt;br /&gt;
    f(\vec{z}) \\ &lt;br /&gt;
    g(\vec{z}) \\ &lt;br /&gt;
    h(\vec{z}) \\ &lt;br /&gt;
    i(\vec{z}) \\ &lt;br /&gt;
\end{bmatrix}=&lt;br /&gt;
\begin{bmatrix}&lt;br /&gt;
    A'(t) \\&lt;br /&gt;
    x'(t) \\&lt;br /&gt;
    y'(t) \\&lt;br /&gt;
    B'(t) \\&lt;br /&gt;
\end{bmatrix}=&lt;br /&gt;
\vec{z}'(t)=&lt;br /&gt;
      \begin{bmatrix}&lt;br /&gt;
      -0.1 A(t)x(t) \\&lt;br /&gt;
      0.1 A(t)x(t)-0.1 x(t)y(t) \\&lt;br /&gt;
      0.1 x(t)y(t)-0.05 y(t) \\&lt;br /&gt;
      0.05 y(t)x(t)\\&lt;br /&gt;
   \end{bmatrix}&lt;br /&gt;
&lt;br /&gt;
\quad \Rightarrow \quad &lt;br /&gt;
&lt;br /&gt;
\begin{cases}&lt;br /&gt;
 [\vec{k_1}] &amp;amp; =  F(\vec{z}_i) \\&lt;br /&gt;
 [\vec{k_2}] &amp;amp; =  F(\vec{z}_i + {1 \over 2}k_1h) \\&lt;br /&gt;
\end{cases}\quad [h=0.01]&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Entonces el método de Heun para este problema está dado por la siguiente ecuación:&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;\vec{z}_{i+1} = \vec{z}_{i} + {1 \over 2}h(\vec{k_1}+\vec{k_2})&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Mediante el siguiente programa en Matlab calculamos numéricamente la solución y la representamos en un gráfico:&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Archivo:AXYBRK4.png|400px|miniaturadeimagen|derecha|Representación gráfica de las concentraciones de A,X,Y y B. Resolución del sistema por Heun]]&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
%Método de Heun&lt;br /&gt;
clc&lt;br /&gt;
&lt;br /&gt;
%Función F=[A'(t);x'(t); y'(t);B'(t)]&lt;br /&gt;
F=inline('0.1.*[-z(1)*z(2);z(1)*z(2)-z(2)*z(3);z(2)*z(3)-z(3)/2;z(3)/2]','z');&lt;br /&gt;
&lt;br /&gt;
%Datos del problema&lt;br /&gt;
A0=5;&lt;br /&gt;
x0=5*10^-4;&lt;br /&gt;
y0=10^(-5);&lt;br /&gt;
B0=0;&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=200;&lt;br /&gt;
h=0.1;&lt;br /&gt;
&lt;br /&gt;
%Vector de variable independiente (t)&lt;br /&gt;
t=t0:h:tN;&lt;br /&gt;
&lt;br /&gt;
%Matriz de variables dependientes z=[A;x;y;B]&lt;br /&gt;
z=zeros(4,length(t));&lt;br /&gt;
z(:,1)=[A0;x0;y0;B0];&lt;br /&gt;
&lt;br /&gt;
for i = 1:length(t)-1&lt;br /&gt;
    k1=F(z(:,i));&lt;br /&gt;
    k2=F(z(:,i)+k1.*h/2);&lt;br /&gt;
    z(:,i+1)=z(:,i)+h/2.*(k1+k2);&lt;br /&gt;
end&lt;br /&gt;
 &lt;br /&gt;
%Representación gráfica&lt;br /&gt;
hold on&lt;br /&gt;
plot(t,z(1,:),'b')&lt;br /&gt;
plot(t,z(2,:),'r')&lt;br /&gt;
plot(t,z(3,:),'g')&lt;br /&gt;
plot(t,z(4,:),'m')&lt;br /&gt;
legend('Sustancia A: A(t)','Sustancia X: x(t)','Sustancia Y: y(t)','Sustancia B: B(t)','Location','Best')&lt;br /&gt;
xlabel('Tiempo (s)')&lt;br /&gt;
ylabel('Concentración (mol/l)')&lt;br /&gt;
grid on&lt;br /&gt;
hold off&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
== Interpretación de las gráficas == &lt;br /&gt;
 &lt;br /&gt;
El proceso comienza con el predominio absoluto del compuesto A en la concentración total, siendo la presencia de los otros tres compuestos despreciable. Durante los primeros segundos la situación apenas cambia, pero tras los diez primeros segundos la concentración de A cae bruscamente mientras que la concentración de X aumenta a la misma velocidad; antes de llegar a los veinte segundos transcurridos las concentraciones de ambos compuestos se igualan y otros quince segundos más tarde el compuesto A  prácticamente ha desaparecido y el X ha alcanzado su concentración máxima (5 mol/litro).&lt;br /&gt;
&lt;br /&gt;
Es entonces cuando concluye la primera reacción y comienzan las otras dos, al no haber más compuesto A que cree compuesto X. La velocidad de aparición de Y es inicialmente mayor que la de B, superando al poco tiempo en concentración a la sustancia X. Sin embargo, llega un momento en el que la concentración de X es tan baja que se ralentiza la creación de Y y pronto empieza a disminuir su concentración tras alcanzar un máximo en torno a los 56 segundos, perdiendo peso la segunda reacción en beneficio de la tercera.&lt;br /&gt;
&lt;br /&gt;
Tras los 60 segundos de reacción el compuesto X pasa a tener una concentración despreciable, por lo que la única reacción simple que se sigue desarrollando es la tercera, destruyéndose reactivo Y y creándose producto B. La concentración de Y va reduciéndose paulatinamente hasta que en torno a los 160 segundos de reacción alcanza niveles insignificantes mientras que la concentración de B alcanza su máximo de 5 mol/litro.&lt;br /&gt;
&lt;br /&gt;
Es interesante observar que en todo momento se cumple el Principio de Conservación de la masa: la suma en cualquier momento de las concentraciones de las sustancias es 5 mol /litro. Esto es fácilmente comprobable en los momentos en que las concentraciones de A, X y B alcanzan su máximo de 5 mol/litro y el resto de concentraciones son nulas o despreciables. &lt;br /&gt;
[[Categoría:Ecuaciones Diferenciales]]&lt;br /&gt;
[[Categoría:ED14/15]]&lt;br /&gt;
[[Categoría:Trabajos 2014-15]]&lt;/div&gt;</summary>
		<author><name>Javier Ruiz de Galarreta López</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Reacciones_con_autocat%C3%A1lisis._Grupo_D12&amp;diff=27472</id>
		<title>Reacciones con autocatálisis. Grupo D12</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Reacciones_con_autocat%C3%A1lisis._Grupo_D12&amp;diff=27472"/>
				<updated>2015-03-06T09:55:41Z</updated>
		
		<summary type="html">&lt;p&gt;Javier Ruiz de Galarreta López: /* Método de Euler */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{ TrabajoED | Reacciones con autocatálisis. Grupo D12 | [[:Categoría:Ecuaciones Diferenciales|Ecuaciones Diferenciales]]|[[:Categoría:ED14/15|Curso 2014-15]] | Javier Ruiz de Galarreta López, Argimiro Martínez López, Eduardo Moyano García, Alberto Rodríguez Ruiz. }}&lt;br /&gt;
&lt;br /&gt;
= Introducción: objetivos y metodología =&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
El objetivo de este trabajo es estudiar las concentraciones de los reactivos y productos de una reacción química a lo largo de la evolución en el tiempo de dicha reacción. Para ello modelizaremos el proceso empleando ecuaciones diferenciales y teniendo en cuenta la Ley de Acción de Masas y el Principio de Conservación de la materia.&lt;br /&gt;
&lt;br /&gt;
Al ser las ecuaciones y sistemas que se nos presentan de difícil resolución analítica, utilizaremos el programa informático Matlab para resolverlos mediante métodos numéricos como el de Euler, el del Trapecio, el de Runge-Kutta y el de Heun. &lt;br /&gt;
&lt;br /&gt;
Plasmaremos las soluciones en gráficos que nos permitirán dar una interpretación físico química a los resultados.&lt;br /&gt;
&lt;br /&gt;
= Reacción I =&lt;br /&gt;
&lt;br /&gt;
En primer lugar consideramos una reacción química irreversible en una solución bien mezclada, que se desarrolla para un volumen y una temperatura constantes, y en la que uno de los componentes (B, en este caso), hace de efecto catalítico.&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt; A + B →_{k1} 2B  &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Para desarrollar nuestro análisis nos apoyaremos en dos leyes físico químicas:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''Ley de acción de masas''': Enunciada por Guldberg y Waage en 1864, establece, entre otras cosas, que  la velocidad de&lt;br /&gt;
reacción es proporcional al producto de las concentraciones de los reactivos.&lt;br /&gt;
&lt;br /&gt;
'''Principio de conservación de la masa''': Establece que en una reacción química ordinaria la masa permanece constante, siendo la masa consumida de los reactivos igual a la masa obtenida de los productos. Fue elaborada independientemente por Míjail Lomonósov en 1745 y Antoine Lavoisier en 1785.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Interpretación del problema y deducción de las ecuaciones diferenciales ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Para hallar las ecuaciones diferenciales que nos describan cómo se desarrolla la reacción en el tiempo nos basaremos en las dos leyes enunciadas anteriormente. En primer lugar, definimos nuestra variable independiente como el tiempo &amp;lt;math&amp;gt;t&amp;lt;/math&amp;gt; en segundos. Las dos variables dependientes serán las concentraciones de los compuestos A y B, que denominaremos &amp;lt;math&amp;gt;x(t)&amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt;y(t)&amp;lt;/math&amp;gt;, ambas expresadas en mol/l. &lt;br /&gt;
&lt;br /&gt;
El principio de conservación de la masa expone que la suma de las concentraciones de los reactivos y los productos es constante. Esto equivale, derivando la expresión &amp;lt;math&amp;gt;x(t)+y(t)=cte&amp;lt;/math&amp;gt;, a que  desaparece tanto reactivo como producto aparece, o lo que es lo mismo, que la velocidad de aparición del producto es igual a la velocidad de desaparición (velocidad de aparición negativa) del reactivo:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;x'(t)=-y'(t)&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
La otra ecuación que necesitamos la obtenemos directamente de aplicar la Ley de acción de masas, que establece que la velocidad de la reacción (la velocidad a la que aparece el producto o desaparece el reactivo) es igual al producto de las concentraciones por una constante.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;y'(t)=k_1x(t)y(t)&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Obtención del problema de valor inicial ==&lt;br /&gt;
Una vez demostrado el origen de las ecuaciones (1) y (2) en el apartado anterior, obtendremos el problema de valor inicial (PVI) mediante las operaciones detalladas a continuación:&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;x'(t)+y'(t)=0\quad\quad(1)&amp;lt;/math&amp;gt;&lt;br /&gt;
:&amp;lt;math&amp;gt;y'(t)=k_1x(t)y(t)\quad\quad(2)&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Integrando (1) obtenemos (3):&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
:&amp;lt;math&amp;gt;\int_\mathbb{D} (\frac{dx(t)}{dt} + \frac{dy(t)}{dt})\,dt =\int_\mathbb{D} 0\,dt \quad \Rightarrow \quad x(t)+y(t)=k_2\quad \Rightarrow \quad x(t)=k_2-y(t)\quad\quad(3)&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Sustituyendo (3) en (2), obtenemos (4):&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;y'(t)=k_1x(t)y(t)\quad \Rightarrow \quad y'(t)=k_1(k_2-y(t))y(t)\quad \Rightarrow \quad y'(t)=k_1k_2y(t)-k_1y^2(t)\quad\quad(4)&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Conocemos las concentraciones iniciales de A y de B, por lo que podemos obtener el valor de la constante k&amp;lt;sub&amp;gt;2&amp;lt;/sub&amp;gt;:&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;[A]:\quad x(0)=1 mol/l;\quad\quad [B]:\quad y(0)=0,01 mol/l&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;x(t)+y(t)=k_2\quad \Rightarrow \quad x(0)+y(0)=k_2\quad \Rightarrow \quad 1+0,01=k_2\quad \Rightarrow \quad k_2=1,01&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Por último, conocemos también el valor de k&amp;lt;sub&amp;gt;1&amp;lt;/sub&amp;gt;, por lo que podremos plantear a continuación el correspondiente PVI:&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;k_1=1&amp;lt;/math&amp;gt;&lt;br /&gt;
:&amp;lt;math&amp;gt;(PVI)\begin{cases}y'(t)=1,01y(t)-y^2(t) \\ \\&lt;br /&gt;
y(0) = 0,01 \end{cases}\quad (t,y)\in[0,10]\times\mathbb{R}&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Unicidad de la solución ==&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Existencia-y-unicidad.png|200px|miniaturadeimagen|derecha|Intersección B con dominio]]&lt;br /&gt;
&lt;br /&gt;
Aplicamos a continuación el Teorema de Existencia y Unicidad:&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Sea &amp;lt;math&amp;gt;f(t,y)=y'(t) \Rightarrow f(t,y)=1.01y(t)-y^2(t)\quad&amp;lt;/math&amp;gt;, y &amp;lt;math&amp;gt;\quad\frac{\partial }{\partial y} f(t,y) = 1.01-2y(t)&amp;lt;/math&amp;gt;.&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
Y sea &amp;lt;math&amp;gt;B[(t_0,y_0),r],\quad r&amp;gt;0,\quad en (t_0,y_0)=(0,0.01)&amp;lt;/math&amp;gt;.&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;f(t,y)&amp;lt;/math&amp;gt; es continua en &amp;lt;math&amp;gt; \mathbb{B}\cap \mathbb{D}\quad \Rightarrow \quad \exists  y(t)\quad /\quad y'(t)=1,01y(t)-y^2(t)&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;math&amp;gt;\frac{\partial }{\partial y} f(t,y)&amp;lt;/math&amp;gt; es continua en &amp;lt;math&amp;gt; \mathbb{B}\cap \mathbb{D}\quad \Rightarrow \quad \exists !  y(t)\quad /\quad y'(t)=1,01y(t)-y^2(t)&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Con lo que queda demostrado que el (PVI) tiene solución y además esta es única.&lt;br /&gt;
&lt;br /&gt;
== Resolución numérica del problema de valor inicial ==&lt;br /&gt;
&lt;br /&gt;
En este apartado resolveremos el problema de valor inicial planteado anteriormente con tres métodos de integración numérica: el método de Euler, el método del Trapecio y el método de Runge-Kutta de orden 4.&lt;br /&gt;
&lt;br /&gt;
=== Método de Euler ===&lt;br /&gt;
&lt;br /&gt;
El método de Euler, llamado así en honor al matemático Leonhard Euler, es un procedimiento de integración numérica. Su expresión matemática es: &lt;br /&gt;
&amp;lt;math&amp;gt;  PVI = &lt;br /&gt;
   \left \{&lt;br /&gt;
      \begin{array}{rcl}y_0\\&lt;br /&gt;
           y_{n+1} = y_n + h*f(t_n,y_n)\\ &lt;br /&gt;
      \end{array}&lt;br /&gt;
   \right .&lt;br /&gt;
   &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
A continuación emplearemos esta expresión en un programa de Matlab para obtener una aproximación de las soluciones. El código de dicho programa es el siguiente.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Eulergrafica.png|400px|miniaturadeimagen|derecha|Representación gráfica y(t). Método de Euler]]&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
%Método de Euler&lt;br /&gt;
clc&lt;br /&gt;
&lt;br /&gt;
%Datos iniciales&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=4;&lt;br /&gt;
y0=0.01;&lt;br /&gt;
h=0.1;&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=10;&lt;br /&gt;
&lt;br /&gt;
%Cálculo de subintervalos&lt;br /&gt;
N=round((tN-t0)/h);&lt;br /&gt;
t=t0:h:tN;&lt;br /&gt;
&lt;br /&gt;
%Creamos el vector donde vamos a guardar las soluciones&lt;br /&gt;
y=zeros(1,N+1);&lt;br /&gt;
y(1)=y0;&lt;br /&gt;
&lt;br /&gt;
%Euler&lt;br /&gt;
for i=1:N;&lt;br /&gt;
    y(i+1)=y(i)+h*(1.01*y(i)-(y(i)).^2);&lt;br /&gt;
end&lt;br /&gt;
%Tabla de Resultados&lt;br /&gt;
[t',y']&lt;br /&gt;
x=1.01-y;&lt;br /&gt;
hold on &lt;br /&gt;
plot(t,y,'r')&lt;br /&gt;
plot(t,x,'b')&lt;br /&gt;
hold off&lt;br /&gt;
legend('Sustancia B: y(t)','Sustancia A: x(t)','Location','best');&lt;br /&gt;
xlabel('Tiempo (s)')&lt;br /&gt;
ylabel('Concentración (mol/l)')&lt;br /&gt;
grid on&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
=== Método del trapecio ===&lt;br /&gt;
&amp;lt;math&amp;gt;  PVI = &lt;br /&gt;
   \left \{&lt;br /&gt;
      \begin{array}{rcl}&lt;br /&gt;
          y_0\\&lt;br /&gt;
           y_{n+1} = y_n + \frac{h}{2}*f(t_n,y_n)\\ &lt;br /&gt;
      \end{array}&lt;br /&gt;
   \right .&lt;br /&gt;
   &amp;lt;/math&amp;gt;&lt;br /&gt;
[[Archivo:Trapeciografica.png|400px|miniaturadeimagen|derecha|Representación gráfica y(t). Método del Trapecio]]&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
%Método del Trapecio&lt;br /&gt;
clc&lt;br /&gt;
&lt;br /&gt;
%Datos iniciales&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=4;&lt;br /&gt;
y0=0.01;&lt;br /&gt;
h=0.1;&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=10;&lt;br /&gt;
&lt;br /&gt;
%Cálculo de subintervalos&lt;br /&gt;
N=round((tN-t0)/h);&lt;br /&gt;
t=t0:h:tN;&lt;br /&gt;
&lt;br /&gt;
%Creamos el vector donde vamos a guardar las soluciones&lt;br /&gt;
y=zeros(1,N+1);&lt;br /&gt;
y(1)=y0;&lt;br /&gt;
&lt;br /&gt;
for i=1:N&lt;br /&gt;
y(i+1)=(((1-(h/2)*1.01)-sqrt(((1-(h/2)*1.01)^2)+4*(h/2)*((1+(h/2)*1.01)*y(i)-(h/2)*(y(i))^2)))/-h);&lt;br /&gt;
end&lt;br /&gt;
%Sacamos la tabla de resultados&lt;br /&gt;
[t',y']&lt;br /&gt;
x=1.01-y;&lt;br /&gt;
%Gráfico&lt;br /&gt;
hold on&lt;br /&gt;
plot(t,y,'r')&lt;br /&gt;
plot(t,x,'b')&lt;br /&gt;
legend('Sustancia B: y(t)','Sustancia A: x(t)','Location','best');&lt;br /&gt;
xlabel('Tiempo (s)')&lt;br /&gt;
ylabel('Concentración (mol/l)')&lt;br /&gt;
grid on&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
=== Método de Runge-Kutta ===&lt;br /&gt;
&lt;br /&gt;
El método de resolución numérica de Runge-Kutta, involucra un gran número de parámetros. Para simplificar la implementación de este método en Matlab, utilizaremos la función ''inline'', con la que declararemos previamente la función algebraica necesaria para el cálculo de los parámetros &amp;lt;math&amp;gt;k_i&amp;lt;/math&amp;gt;, ahorrándonos tener que escribir innumerables veces la correspondiente expresión matemática.&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
A continuación, detallamos la función &amp;lt;math&amp;gt;f(y)&amp;lt;/math&amp;gt; de la que dependerán los valores de los parámetros &amp;lt;math&amp;gt;k_i&amp;lt;/math&amp;gt;:&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;f(y)=y'(t)=1.01y(t)-y(t)^2&lt;br /&gt;
&lt;br /&gt;
\quad \Rightarrow \quad&lt;br /&gt;
&lt;br /&gt;
\begin{cases}&lt;br /&gt;
 k_1 &amp;amp; =  f(y_i) \\&lt;br /&gt;
 k_2 &amp;amp; =  f(y_i + {1 \over 2}k_1h) \\&lt;br /&gt;
 k_3 &amp;amp; =  f(y_i + \frac{1}{2}k_2h) \\&lt;br /&gt;
 k_4 &amp;amp; =  f(y_i + k_3h) \\&lt;br /&gt;
\end{cases}\quad [h=0.1]&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Entonces el método RK4 para este problema está dado por la siguiente ecuación:&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;y_{i+1} = y_{i} + {1 \over 6}h(k_1+2k_2+2k_3+k_4)&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Mediante el siguiente programa en Matlab calculamos numéricamente la solución y la representamos en un gráfico:&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Archivo:RK4II.png|400px|miniaturadeimagen|derecha|Representación gráfica y(t). Método Runge-Kutta]]&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
%Método de Runge-Kutta&lt;br /&gt;
clc&lt;br /&gt;
&lt;br /&gt;
%Función f(t)=y'(t)&lt;br /&gt;
fy=inline('1.01*y-y^2','y');&lt;br /&gt;
&lt;br /&gt;
%Datos del problema&lt;br /&gt;
y0=0.01;&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=10;&lt;br /&gt;
h=0.1;&lt;br /&gt;
&lt;br /&gt;
%Variable independiente (t)&lt;br /&gt;
t=t0:h:tN;&lt;br /&gt;
&lt;br /&gt;
%Variable dependiente (y)&lt;br /&gt;
y=zeros(1,length(t));&lt;br /&gt;
y(1)=y0;&lt;br /&gt;
&lt;br /&gt;
for i=1:length(t)-1&lt;br /&gt;
    k1=fy(y(i));&lt;br /&gt;
    k2=fy(y(i)+k1/2*h);&lt;br /&gt;
    k3=fy(y(i)+k2/2*h);&lt;br /&gt;
    k4=fy(y(i)+k3*h);&lt;br /&gt;
    y(i+1)=y(i)+h/6*(k1+2*k2+2*k3+k4);&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
%Variable dependiente (x)&lt;br /&gt;
x=1.01-y;&lt;br /&gt;
&lt;br /&gt;
%Representación gráfica&lt;br /&gt;
hold on&lt;br /&gt;
plot(t,x,'b')&lt;br /&gt;
plot(t,y,'r')&lt;br /&gt;
legend('Sustancia A: x(t)','Sustancia B: y(t)')&lt;br /&gt;
xlabel('Tiempo (s)')&lt;br /&gt;
ylabel('Concentración (mol/l)')&lt;br /&gt;
grid on&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
=== Comparación de métodos===&lt;br /&gt;
&lt;br /&gt;
Podemos observar fácilmente que las gráficas obtenidas con los diferentes métodos son iguales a primera vista. Sin embargo, superponiéndolas queda patente que no son exactamente iguales debido a que los métodos no poseen la misma precisión y , al operar todos con la misma longitud de paso, unos aproximan la solución exacta mejor que otros. Así se observa en estas imágenes:&lt;br /&gt;
&lt;br /&gt;
[[Archivo:comparativa1.jpg|400px|miniaturadeimagen|izquierda|Comparación de métodos]]&lt;br /&gt;
[[Archivo:comparativa2.jpg|400px|miniaturadeimagen|derecha|Comparación de métodos]]&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
Como podemos comprobar en las imágenes, el método de Euler es menos preciso que el del trapecio o el de Runge-Kutta.&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Resolución en forma de sistema de ecuaciones ==&lt;br /&gt;
&lt;br /&gt;
A continuación vamos a plantear el problema de valor inicial con un sistema no lineal de dos ecuaciones equivalente al problema resuelto anteriormente.&lt;br /&gt;
&lt;br /&gt;
Estas ecuaciones serán:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;(PVI)&lt;br /&gt;
\begin{cases}&lt;br /&gt;
    y'(t)=k_1 x(t)y(t) \\&lt;br /&gt;
    x'(t)=-k_1 x(t)y(t) \\&lt;br /&gt;
    \\&lt;br /&gt;
    x(0)=1 \\&lt;br /&gt;
    y(0) = 0.01&lt;br /&gt;
\end{cases}&lt;br /&gt;
\quad t\in[0,10]&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Resolveremos el problema por el método de Euler y por el método de Runge-Kutta, plasmando las soluciones en gráficos.&lt;br /&gt;
&lt;br /&gt;
=== Método de Euler ===&lt;br /&gt;
&lt;br /&gt;
En este caso aplicaremos en el siguiente código la expresión para EDO a cada una de las ecuaciones que conforma el sistema, obteniendo la correspondiente gráfica.&lt;br /&gt;
 &lt;br /&gt;
[[Archivo:SistEuler.png|400px|miniaturadeimagen|derecha|Representación gráfica de las concentraciones de A y B. Resolución del sistema por Euler]]&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
&lt;br /&gt;
%Resolución del sistema por el método de Euler&lt;br /&gt;
&lt;br /&gt;
clear all&lt;br /&gt;
&lt;br /&gt;
%Definimos el vector de la variable independiente, el número de&lt;br /&gt;
%subintervalos y la longitud de paso&lt;br /&gt;
&lt;br /&gt;
t0 = 0;&lt;br /&gt;
tN = 10;&lt;br /&gt;
h = 0.1;&lt;br /&gt;
t = t0:h:tN&lt;br /&gt;
N = (tN-t0)/h;&lt;br /&gt;
&lt;br /&gt;
%Definimos los vectores de las variables dependientes&lt;br /&gt;
&lt;br /&gt;
x = zeros(1, N+1);&lt;br /&gt;
y = zeros(1, N+1);&lt;br /&gt;
&lt;br /&gt;
x(1) = 1;&lt;br /&gt;
y(1) = 0.01;&lt;br /&gt;
&lt;br /&gt;
for i = 1:N&lt;br /&gt;
    &lt;br /&gt;
    x(i+1)=x(i)+h*(-x(i).*y(i));&lt;br /&gt;
    y(i+1)=y(i)+h*(y(i).*x(i));&lt;br /&gt;
    &lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
%Representamos gráficamente las soluciones&lt;br /&gt;
&lt;br /&gt;
hold on&lt;br /&gt;
&lt;br /&gt;
plot(t,x,'b');&lt;br /&gt;
plot(t,y,'r');&lt;br /&gt;
grid on&lt;br /&gt;
&lt;br /&gt;
legend('Sustancia A: x(t)','Sustancia B: y(t)')&lt;br /&gt;
xlabel('Tiempo (s)')&lt;br /&gt;
ylabel('Concentración (mol/l)')&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
hold off&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
}}&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
A continuación tendremos que comprobar si el método es estable.&lt;br /&gt;
Un método es estable cuando el error local es pequeño y además este error no se amplifica a lo largo del tiempo. Para mirar la estabilidad del método de Euler resolveremos el sistema usando &amp;quot;h=0.01&amp;quot; y &amp;quot;h=0.001&amp;quot;. Para ello usaremos el mismo programa anterior simplemente variando h. La línea azul representa el programa que usa &amp;quot;h=0.01&amp;quot; y la línea roja representa el programa que usa &amp;quot;h=0.001&amp;quot;&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Comparacioneulers123.jpg|400px|miniaturadeimagen|izquierda|Representación gráfica y(t). Método de Euler]]&lt;br /&gt;
[[Archivo:Comparacioneulers321.jpg|400px|miniaturadeimagen|derecha|Representación gráfica y(t). Método de Euler]]&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
Como podemos ver en la primera imágen las gráficas se superponen y no se aprecian diferencias hasta que no ampliamos la imagen. Y esto sucede en todo momento con lo que podemos garantizar que en este caso es estable.&lt;br /&gt;
&lt;br /&gt;
=== Método de Runge-Kutta===&lt;br /&gt;
&lt;br /&gt;
El método de resolución numérica de Runge-Kutta, involucra un gran número de parámetros. Para simplificar la implementación de este método en Matlab, el sistema se tratará como una matriz &amp;lt;math&amp;gt;z&amp;lt;/math&amp;gt;. Además, utilizaremos la función ''inline'', con la que declararemos previamente la función algebraica necesaria para el cálculo de los parámetros &amp;lt;math&amp;gt;k_i&amp;lt;/math&amp;gt;, ahorrándonos tener que escribir innumerables veces la correspondiente expresión matemática.&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Primero, expresamos el sistema en forma matricial:&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;(PVI)\begin{cases}&lt;br /&gt;
    x'(t)=-k_1 x(t)y(t) \\&lt;br /&gt;
    y'(t)=k_1 x(t)y(t) \\&lt;br /&gt;
    \\&lt;br /&gt;
    x(0)=1 \\&lt;br /&gt;
    y(0) = 0.01&lt;br /&gt;
\end{cases}\quad t\in[0,10]&lt;br /&gt;
&lt;br /&gt;
\quad \Rightarrow \quad k_1=1\quad \Rightarrow \quad&lt;br /&gt;
&lt;br /&gt;
(PVI)\begin{cases}\vec{z}'(t)=&lt;br /&gt;
   \begin{bmatrix}&lt;br /&gt;
      x'(t) \\&lt;br /&gt;
      y'(t) \\&lt;br /&gt;
   \end{bmatrix}&lt;br /&gt;
=&lt;br /&gt;
      \begin{bmatrix}&lt;br /&gt;
      -x(t)y(t) \\&lt;br /&gt;
      x(t)y(t) \\&lt;br /&gt;
   \end{bmatrix}&lt;br /&gt;
&lt;br /&gt;
 \\ \\ \vec{z}(0)=&lt;br /&gt;
   \begin{bmatrix}&lt;br /&gt;
      x(0) \\&lt;br /&gt;
      y(0) \\&lt;br /&gt;
   \end{bmatrix}&lt;br /&gt;
=&lt;br /&gt;
      \begin{bmatrix}&lt;br /&gt;
      1 \\&lt;br /&gt;
      0.01 \\&lt;br /&gt;
   \end{bmatrix}&lt;br /&gt;
\end{cases}\quad t\in[0,10]&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
A continuación, detallamos la función &amp;lt;math&amp;gt;\vec{F}&amp;lt;/math&amp;gt; de la que dependerán los valores de los parámetros &amp;lt;math&amp;gt;k_i&amp;lt;/math&amp;gt;:&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;\vec{F}(x,y)=\vec{F}(\vec{z})=&lt;br /&gt;
&lt;br /&gt;
\begin{bmatrix}&lt;br /&gt;
    f(\vec{z}) \\&lt;br /&gt;
    g(\vec{z}) \\&lt;br /&gt;
\end{bmatrix}=&lt;br /&gt;
&lt;br /&gt;
\begin{bmatrix}&lt;br /&gt;
    x'(t) \\&lt;br /&gt;
    y'(t) \\&lt;br /&gt;
\end{bmatrix}=&lt;br /&gt;
&lt;br /&gt;
\vec{z}'(t)=&lt;br /&gt;
&lt;br /&gt;
\begin{bmatrix}&lt;br /&gt;
    -x(t)y(t) \\&lt;br /&gt;
    x(t)y(t) \\&lt;br /&gt;
\end{bmatrix}&lt;br /&gt;
\quad \Rightarrow \quad&lt;br /&gt;
&lt;br /&gt;
\begin{cases}&lt;br /&gt;
 [\vec{k_1}] &amp;amp; =  F(\vec{z}_i) \\&lt;br /&gt;
 [\vec{k_2}] &amp;amp; =  F(\vec{z}_i + {1 \over 2}k_1h) \\&lt;br /&gt;
 [\vec{k_3}] &amp;amp; =  F(\vec{z}_i + \frac{1}{2}k_2h) \\&lt;br /&gt;
 [\vec{k_4}] &amp;amp; =  F(\vec{z}_i + k_3h) \\&lt;br /&gt;
\end{cases}\quad [h=0.1]&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Entonces el método RK4 para este problema está dado por la siguiente ecuación:&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;\vec{z}_{i+1} = \vec{z}_{i} + {1 \over 6}h(\vec{k_1}+2\vec{k_2}+2\vec{k_3}+\vec{k_4})&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Mediante el siguiente programa en Matlab calculamos numéricamente la solución y la representamos en un gráfico:&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Archivo:sistema_RK4.png|400px|miniaturadeimagen|derecha|Representación gráfica de las concentraciones de A y B. Resolución del sistema por Runge-Kutta]]&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
%Método de Runge-Kutta&lt;br /&gt;
clc&lt;br /&gt;
&lt;br /&gt;
%Función F=[x'(t); y'(t)]&lt;br /&gt;
F=inline('[-z(1)*z(2);z(1)*z(2)]','z');&lt;br /&gt;
&lt;br /&gt;
%Datos del problema &lt;br /&gt;
x0=1;&lt;br /&gt;
y0=0.01;&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=10;&lt;br /&gt;
h=0.1;&lt;br /&gt;
&lt;br /&gt;
%Vector de variable independiente (t)&lt;br /&gt;
t=t0:h:tN;&lt;br /&gt;
&lt;br /&gt;
%Matriz de variables dependientes z=[x;y]&lt;br /&gt;
z=zeros(2,length(t));&lt;br /&gt;
z(:,1)=[x0;y0];&lt;br /&gt;
&lt;br /&gt;
for i = 1:length(t)-1&lt;br /&gt;
    k1=F(z(:,i));&lt;br /&gt;
    k2=F(z(:,i)+k1.*h/2);&lt;br /&gt;
    k3=F(z(:,i)+k2.*h/2);&lt;br /&gt;
    k4=F(z(:,i)+k3.*h);&lt;br /&gt;
    z(:,i+1)=z(:,i)+h/6.*(k1+2.*k2+2.*k3+k4);&lt;br /&gt;
end&lt;br /&gt;
 &lt;br /&gt;
%Representación gráfica&lt;br /&gt;
hold on&lt;br /&gt;
plot(t,z(1,:))&lt;br /&gt;
plot(t,z(2,:),'r')&lt;br /&gt;
legend('Sustancia A: x(t)','Sustancia B: y(t)')&lt;br /&gt;
xlabel('Tiempo (s)')&lt;br /&gt;
ylabel('Concentración (mol/l)')&lt;br /&gt;
grid on&lt;br /&gt;
%hold off&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
== Interpretación de las gráficas ==&lt;br /&gt;
&lt;br /&gt;
Podemos observar por los resultados obtenidos que la velocidad de aparición de B es igual a la velocidad de desaparición de A (como dicta el principio de conservación de la masa), que A acaba desapareciendo prácticamente por completo y que la concentración de B termina por estabilizarse alrededor de 1 mol/l. Ambos compuestos alcanzan sus los extremos de sus concentraciones en el mismo instante de tiempo&lt;br /&gt;
&lt;br /&gt;
También cabe destacar que cuando el tiempo transcurrido alcanza 4,5 segundos las concentraciones de ambos compuestos son las mismas.&lt;br /&gt;
&lt;br /&gt;
= Reacción II =&lt;br /&gt;
&lt;br /&gt;
En este apartado vamos a estudiar la reacción propuesta por Alfred J. Lotka en 1920, que es la siguiente:&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt; A + X →_{k1} 2X;&amp;lt;/math&amp;gt;     :&amp;lt;math&amp;gt; X + Y →_{k2} 2Y;&amp;lt;/math&amp;gt;     :&amp;lt;math&amp;gt;Y →_{k3} 2B  &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Como se puede observar, se trata de una reacción compleja integrada por 3 reacciones simples (las dos primeras autocatalíticas) en las que intervienen un total de 4 compuestos, A, B, X e Y. Siguiendo el desarrollo de la reacción, es lógico suponer que A se agotará al comienzo de la reacción, que los máximos de concentración de X e Y se darán en los estados intermedios y que al final el compuesto B será el único restante, siendo el producto final de la reacción.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Interpretación del problema y deducción de las ecuaciones diferenciales ==&lt;br /&gt;
&lt;br /&gt;
Para averiguar cómo evolucionan las concentraciones de los cuatro compuestos durante el desarrollo de la reacción necesitaremos obtener cuatro ecuaciones diferenciales. Para ello nos volveremos a basar en los principios físicos que ya empleamos en la anterior reacción. Definimos A(t), x(t), y(t), y B(t) (A, x, y, B; para ahorrar notación) a las concentraciones de A, X, Y, y B, respectivamente. &lt;br /&gt;
&lt;br /&gt;
En primer lugar aplicamos el Principio de Conservación de la masa, que establece que la suma de las concentraciones de los compuestos es constante (no desaparece masa en el proceso), lo que derivando nos indica que:&lt;br /&gt;
&lt;br /&gt;
: &amp;lt;math&amp;gt; A' + y' + y' + B' = 0 \quad\quad(I)&amp;lt;/math&amp;gt;       &lt;br /&gt;
&lt;br /&gt;
A continuación aplicaremos la Ley de Acción de Masas (velocidad de reacción proporcional al producto de la concentración de los reactivos).&lt;br /&gt;
&lt;br /&gt;
Aplicando esta ley a la última reacción simple obtenemos que: &lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;B'=k_3y \quad\quad(II)&amp;lt;/math&amp;gt;        &lt;br /&gt;
&lt;br /&gt;
En el caso de las concentraciones de X e Y las expresiones resultantes son algo más complicadas ya que estos dos compuestos actúan como reactivos y productos en más de una reacción simple, por lo que la variación de sus concentraciones será la suma de las variaciones de las reacciones en las que aparezcan:&lt;br /&gt;
&lt;br /&gt;
: &amp;lt;math&amp;gt; x' = x'_{1} + x'_{2} → x' = k_{1}Ax - k{2}xy \quad\quad(III)&amp;lt;/math&amp;gt;        &lt;br /&gt;
: &amp;lt;math&amp;gt; y' = y'_{2} + y'_{3} → y' = k_{2}xy − k_3{y} \quad\quad(IV)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Por último sustituimos (II), (III) y (IV) en (I) obteniendo: &lt;br /&gt;
&lt;br /&gt;
: &amp;lt;math&amp;gt; A' + k_{1}Ax - k{2}xy + k_{2}xy − k_3{y}+ k_3y= 0 : &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
De donde obtenemos que:&lt;br /&gt;
&lt;br /&gt;
: &amp;lt;math&amp;gt; A' = -k_{1}Ax &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Ahora que ya tenemos las variaciones de concentración de los compuestos en función de las concentraciones podemos aplicar métodos numéricos que nos lleven a una solución aproximada.&lt;br /&gt;
&lt;br /&gt;
== Resolución numérica del sistema de ecuaciones ==&lt;br /&gt;
&lt;br /&gt;
Una vez obtenidas las ecuaciones y conociendo las condiciones iniciales y los valores de las constantes podemos plantear el problema de valor inicial para luego resolverlo.&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;(PVI)&lt;br /&gt;
\begin{cases}&lt;br /&gt;
    A' = -k_{1}Ax\\&lt;br /&gt;
    x' = k_{1}Ax - k{2}xy\\&lt;br /&gt;
    y' = k_{2}xy − k_3{y}\\&lt;br /&gt;
    B'=k_3y \\&lt;br /&gt;
\\&lt;br /&gt;
    A(0)=5  \\&lt;br /&gt;
    x(0)=5*10^{-4} \\&lt;br /&gt;
    y(0)=10^{-5}\\&lt;br /&gt;
    B(0)=0 \\&lt;br /&gt;
\end{cases}&lt;br /&gt;
\quad t\in[0,200]&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Siendo &amp;lt;math&amp;gt; k_{1}=K_{2}=2k_{3}=0.1 &amp;lt;/math&amp;gt; y las unidades de la concentración mol/l.&lt;br /&gt;
&lt;br /&gt;
=== Método de Euler ===&lt;br /&gt;
&lt;br /&gt;
Aplicamos el método de Euler de forma análoga a como lo hicimos en [[Reacciones_con_autocatálisis._Grupo_D12#Método_de_Euler_2|apartado 2.5.1]]&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Euler lotka0.01.png|400px|miniaturadeimagen|derecha|Representación gráfica de las concentraciones de A, B, X, e Y a lo largo del tiempo. Resoluciónd delsistema por el método de Euler con longitud de paso h=0.01]] &lt;br /&gt;
[[Archivo:Euler lotka0.001.png|400px|miniaturadeimagen|derecha|Representación gráfica de las concentraciones de A, B, X, e Y a lo largo del tiempo. Resoluciónd delsistema por el método de Euler con longitud de paso h=0.001]]&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
&lt;br /&gt;
%Resolución del sistema de la reacción de Lotka por el método de Euler&lt;br /&gt;
&lt;br /&gt;
clear all&lt;br /&gt;
&lt;br /&gt;
%Definimos la variable independiente y establecemos los datos del problema&lt;br /&gt;
%de valor inicial. Para la longitud de paso h introducimos en primer lugar&lt;br /&gt;
%0.01 y luego 0.001&lt;br /&gt;
&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=200;&lt;br /&gt;
h= input('Introduzca una longitud de paso ');&lt;br /&gt;
t = t0:h:tN;&lt;br /&gt;
N=(tN-t0)/h;&lt;br /&gt;
k1 = 0.1;&lt;br /&gt;
k2 = 0.1;&lt;br /&gt;
k3 = 0.05;&lt;br /&gt;
A0 = 5;&lt;br /&gt;
B0 = 0;&lt;br /&gt;
X0 = 5*10^(-4);&lt;br /&gt;
Y0 = 10^(-5);&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
%Definimos las variables dependientes.&lt;br /&gt;
&lt;br /&gt;
A = zeros(1, N-1);&lt;br /&gt;
B = A;&lt;br /&gt;
X = A;&lt;br /&gt;
Y = A;&lt;br /&gt;
&lt;br /&gt;
A(1) = A0;&lt;br /&gt;
B(1) = B0;&lt;br /&gt;
X(1) = X0;&lt;br /&gt;
Y(1) = Y0;&lt;br /&gt;
&lt;br /&gt;
for i = 1:N&lt;br /&gt;
    &lt;br /&gt;
    X(i+1) = X(i) + h*(k1*A(i)*X(i)-k2*Y(i)*X(i));&lt;br /&gt;
    Y(i+1)=Y(i)+h.*(k2.*X(i).*Y(i)-k3.*Y(i));&lt;br /&gt;
    B(i+1) = B(i) + h*(k3*Y(i));&lt;br /&gt;
    A(i+1) = A(i) + h*(-k1*A(i)*X(i));&lt;br /&gt;
   &lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
%Representamos gráficamente la solución&lt;br /&gt;
&lt;br /&gt;
hold on&lt;br /&gt;
&lt;br /&gt;
plot (t,A,'b')&lt;br /&gt;
plot(t, X, 'r')&lt;br /&gt;
plot(t,Y, 'g')&lt;br /&gt;
plot(t, B, 'm')&lt;br /&gt;
legend('Sustancia A: A(t)','Sustancia X: x(t)','Sustancia Y: y(t)','Sustancia B: B(t)','Location','Best')&lt;br /&gt;
xlabel('Tiempo (s)')&lt;br /&gt;
ylabel('Concentración (mol/l)')&lt;br /&gt;
grid on&lt;br /&gt;
&lt;br /&gt;
hold off&lt;br /&gt;
&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
=== Método de Heun ===&lt;br /&gt;
&lt;br /&gt;
Si bien el método de resolución numérica de Heun no involucra un número de parámetros tan notable como el método de Runge-Kutta, en este caso tenemos un sistema de 4 ecuaciones diferenciales, por lo que, en aras de simplificar, utilizaremos el mismo criterio que en el [[Reacciones_con_autocatálisis._Grupo_D12#Método_de_Runge-Kutta_2|apartado 2.5.2]].: El sistema se tratará como una matriz &amp;lt;math&amp;gt;z&amp;lt;/math&amp;gt;, y para la obtención de los parámetros &amp;lt;math&amp;gt;k_i&amp;lt;/math&amp;gt; utilizaremos la función ''inline'', con la que declararemos previamente las expresiones necesarias para el cálculo de los parámetros &amp;lt;math&amp;gt;k_i&amp;lt;/math&amp;gt;.&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Primero, expresamos el sistema en forma matricial:&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;(PVI)\begin{cases}&lt;br /&gt;
A'(t)=-k_1 A(t)x(t) \\&lt;br /&gt;
x'(t)=k_1 A(t)x(t)-k_2 x(t)y(t) \\&lt;br /&gt;
y'(t)=k_2 x(t)y(t)-k_3 y(t) \\&lt;br /&gt;
B'(t)=k_3 x(t)y(t) \\ \\&lt;br /&gt;
A(0)=5 \\&lt;br /&gt;
x(0)=5·10^{-4} \\&lt;br /&gt;
y(0)=10^{-5} \\&lt;br /&gt;
B(0) = 0&lt;br /&gt;
\end{cases}\quad t\in[0,200]&lt;br /&gt;
&lt;br /&gt;
\quad \Rightarrow \quad&lt;br /&gt;
&lt;br /&gt;
\begin{cases}&lt;br /&gt;
k_1=0.1 \\&lt;br /&gt;
k_2=0.1 \\&lt;br /&gt;
k_3=0.05 \\&lt;br /&gt;
&lt;br /&gt;
\end{cases}&lt;br /&gt;
&lt;br /&gt;
\quad \Rightarrow \quad&lt;br /&gt;
&lt;br /&gt;
(PVI)\begin{cases}\vec{z}'(t)=&lt;br /&gt;
   \begin{bmatrix}&lt;br /&gt;
      A'(t) \\&lt;br /&gt;
      x'(t) \\&lt;br /&gt;
      y'(t) \\&lt;br /&gt;
      B'(t) \\&lt;br /&gt;
   \end{bmatrix}&lt;br /&gt;
=&lt;br /&gt;
      \begin{bmatrix}&lt;br /&gt;
      -0.1 A(t)x(t) \\&lt;br /&gt;
      0.1 A(t)x(t)-0.1 x(t)y(t) \\&lt;br /&gt;
      0.1 x(t)y(t)-0.05 y(t) \\&lt;br /&gt;
      0.05 y(t)x(t)\\&lt;br /&gt;
   \end{bmatrix}&lt;br /&gt;
&lt;br /&gt;
 \\ \\ \vec{z}(0)=&lt;br /&gt;
   \begin{bmatrix}&lt;br /&gt;
      A(0) \\&lt;br /&gt;
      x(0) \\&lt;br /&gt;
      y(0) \\&lt;br /&gt;
      B(0) \\&lt;br /&gt;
   \end{bmatrix}&lt;br /&gt;
=&lt;br /&gt;
      \begin{bmatrix}&lt;br /&gt;
      5 \\&lt;br /&gt;
      5·10^{-4} \\&lt;br /&gt;
      10^{-5} \\&lt;br /&gt;
      0&lt;br /&gt;
   \end{bmatrix}&lt;br /&gt;
\end{cases}\quad t\in[0,200]&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
A continuación, detallamos la función &amp;lt;math&amp;gt;\vec{F}&amp;lt;/math&amp;gt; de la que dependerán los valores de los parámetros &amp;lt;math&amp;gt;k_i&amp;lt;/math&amp;gt;:&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;\vec{F}(A,x,y,B)=\vec{F}(\vec{z})=&lt;br /&gt;
\begin{bmatrix}&lt;br /&gt;
    f(\vec{z}) \\ &lt;br /&gt;
    g(\vec{z}) \\ &lt;br /&gt;
    h(\vec{z}) \\ &lt;br /&gt;
    i(\vec{z}) \\ &lt;br /&gt;
\end{bmatrix}=&lt;br /&gt;
\begin{bmatrix}&lt;br /&gt;
    A'(t) \\&lt;br /&gt;
    x'(t) \\&lt;br /&gt;
    y'(t) \\&lt;br /&gt;
    B'(t) \\&lt;br /&gt;
\end{bmatrix}=&lt;br /&gt;
\vec{z}'(t)=&lt;br /&gt;
      \begin{bmatrix}&lt;br /&gt;
      -0.1 A(t)x(t) \\&lt;br /&gt;
      0.1 A(t)x(t)-0.1 x(t)y(t) \\&lt;br /&gt;
      0.1 x(t)y(t)-0.05 y(t) \\&lt;br /&gt;
      0.05 y(t)x(t)\\&lt;br /&gt;
   \end{bmatrix}&lt;br /&gt;
&lt;br /&gt;
\quad \Rightarrow \quad &lt;br /&gt;
&lt;br /&gt;
\begin{cases}&lt;br /&gt;
 [\vec{k_1}] &amp;amp; =  F(\vec{z}_i) \\&lt;br /&gt;
 [\vec{k_2}] &amp;amp; =  F(\vec{z}_i + {1 \over 2}k_1h) \\&lt;br /&gt;
\end{cases}\quad [h=0.01]&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Entonces el método de Heun para este problema está dado por la siguiente ecuación:&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;\vec{z}_{i+1} = \vec{z}_{i} + {1 \over 2}h(\vec{k_1}+\vec{k_2})&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Mediante el siguiente programa en Matlab calculamos numéricamente la solución y la representamos en un gráfico:&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Archivo:AXYBRK4.png|400px|miniaturadeimagen|derecha|Representación gráfica de las concentraciones de A,X,Y y B. Resolución del sistema por Heun]]&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
%Método de Heun&lt;br /&gt;
clc&lt;br /&gt;
&lt;br /&gt;
%Función F=[A'(t);x'(t); y'(t);B'(t)]&lt;br /&gt;
F=inline('0.1.*[-z(1)*z(2);z(1)*z(2)-z(2)*z(3);z(2)*z(3)-z(3)/2;z(3)/2]','z');&lt;br /&gt;
&lt;br /&gt;
%Datos del problema&lt;br /&gt;
A0=5;&lt;br /&gt;
x0=5*10^-4;&lt;br /&gt;
y0=10^(-5);&lt;br /&gt;
B0=0;&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=200;&lt;br /&gt;
h=0.1;&lt;br /&gt;
&lt;br /&gt;
%Vector de variable independiente (t)&lt;br /&gt;
t=t0:h:tN;&lt;br /&gt;
&lt;br /&gt;
%Matriz de variables dependientes z=[A;x;y;B]&lt;br /&gt;
z=zeros(4,length(t));&lt;br /&gt;
z(:,1)=[A0;x0;y0;B0];&lt;br /&gt;
&lt;br /&gt;
for i = 1:length(t)-1&lt;br /&gt;
    k1=F(z(:,i));&lt;br /&gt;
    k2=F(z(:,i)+k1.*h/2);&lt;br /&gt;
    z(:,i+1)=z(:,i)+h/2.*(k1+k2);&lt;br /&gt;
end&lt;br /&gt;
 &lt;br /&gt;
%Representación gráfica&lt;br /&gt;
hold on&lt;br /&gt;
plot(t,z(1,:),'b')&lt;br /&gt;
plot(t,z(2,:),'r')&lt;br /&gt;
plot(t,z(3,:),'g')&lt;br /&gt;
plot(t,z(4,:),'m')&lt;br /&gt;
legend('Sustancia A: A(t)','Sustancia X: x(t)','Sustancia Y: y(t)','Sustancia B: B(t)','Location','Best')&lt;br /&gt;
xlabel('Tiempo (s)')&lt;br /&gt;
ylabel('Concentración (mol/l)')&lt;br /&gt;
grid on&lt;br /&gt;
hold off&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
== Interpretación de las gráficas == &lt;br /&gt;
 &lt;br /&gt;
El proceso comienza con el predominio absoluto del compuesto A en la concentración total, siendo la presencia de los otros tres compuestos despreciable. Durante los primeros segundos la situación apenas cambia, pero tras los diez primeros segundos la concentración de A cae bruscamente mientras que la concentración de X aumenta a la misma velocidad; antes de llegar a los veinte segundos transcurridos las concentraciones de ambos compuestos se igualan y otros quince segundos más tarde el compuesto A  prácticamente ha desaparecido y el X ha alcanzado su concentración máxima (5 mol/litro).&lt;br /&gt;
&lt;br /&gt;
Es entonces cuando concluye la primera reacción y comienzan las otras dos, al no haber más compuesto A que cree compuesto X. La velocidad de aparición de Y es inicialmente mayor que la de B, superando al poco tiempo en concentración a la sustancia X. Sin embargo, llega un momento en el que la concentración de X es tan baja que se ralentiza la creación de Y y pronto empieza a disminuir su concentración tras alcanzar un máximo en torno a los 56 segundos, perdiendo peso la segunda reacción en beneficio de la tercera.&lt;br /&gt;
&lt;br /&gt;
Tras los 60 segundos de reacción el compuesto X pasa a tener una concentración despreciable, por lo que la única reacción simple que se sigue desarrollando es la tercera, destruyéndose reactivo Y y creándose producto B. La concentración de Y va reduciéndose paulatinamente hasta que en torno a los 160 segundos de reacción alcanza niveles insignificantes mientras que la concentración de B alcanza su máximo de 5 mol/litro.&lt;br /&gt;
&lt;br /&gt;
Es interesante observar que en todo momento se cumple el Principio de Conservación de la masa: la suma en cualquier momento de las concentraciones de las sustancias es 5 mol /litro. Esto es fácilmente comprobable en los momentos en que las concentraciones de A, X y B alcanzan su máximo de 5 mol/litro y el resto de concentraciones son nulas o despreciables. &lt;br /&gt;
[[Categoría:Ecuaciones Diferenciales]]&lt;br /&gt;
[[Categoría:ED14/15]]&lt;br /&gt;
[[Categoría:Trabajos 2014-15]]&lt;/div&gt;</summary>
		<author><name>Javier Ruiz de Galarreta López</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Reacciones_con_autocat%C3%A1lisis._Grupo_D12&amp;diff=27469</id>
		<title>Reacciones con autocatálisis. Grupo D12</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Reacciones_con_autocat%C3%A1lisis._Grupo_D12&amp;diff=27469"/>
				<updated>2015-03-06T09:54:13Z</updated>
		
		<summary type="html">&lt;p&gt;Javier Ruiz de Galarreta López: /* Resolución en forma de sistema de ecuaciones */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{ TrabajoED | Reacciones con autocatálisis. Grupo D12 | [[:Categoría:Ecuaciones Diferenciales|Ecuaciones Diferenciales]]|[[:Categoría:ED14/15|Curso 2014-15]] | Javier Ruiz de Galarreta López, Argimiro Martínez López, Eduardo Moyano García, Alberto Rodríguez Ruiz. }}&lt;br /&gt;
&lt;br /&gt;
= Introducción: objetivos y metodología =&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
El objetivo de este trabajo es estudiar las concentraciones de los reactivos y productos de una reacción química a lo largo de la evolución en el tiempo de dicha reacción. Para ello modelizaremos el proceso empleando ecuaciones diferenciales y teniendo en cuenta la Ley de Acción de Masas y el Principio de Conservación de la materia.&lt;br /&gt;
&lt;br /&gt;
Al ser las ecuaciones y sistemas que se nos presentan de difícil resolución analítica, utilizaremos el programa informático Matlab para resolverlos mediante métodos numéricos como el de Euler, el del Trapecio, el de Runge-Kutta y el de Heun. &lt;br /&gt;
&lt;br /&gt;
Plasmaremos las soluciones en gráficos que nos permitirán dar una interpretación físico química a los resultados.&lt;br /&gt;
&lt;br /&gt;
= Reacción I =&lt;br /&gt;
&lt;br /&gt;
En primer lugar consideramos una reacción química irreversible en una solución bien mezclada, que se desarrolla para un volumen y una temperatura constantes, y en la que uno de los componentes (B, en este caso), hace de efecto catalítico.&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt; A + B →_{k1} 2B  &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Para desarrollar nuestro análisis nos apoyaremos en dos leyes físico químicas:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''Ley de acción de masas''': Enunciada por Guldberg y Waage en 1864, establece, entre otras cosas, que  la velocidad de&lt;br /&gt;
reacción es proporcional al producto de las concentraciones de los reactivos.&lt;br /&gt;
&lt;br /&gt;
'''Principio de conservación de la masa''': Establece que en una reacción química ordinaria la masa permanece constante, siendo la masa consumida de los reactivos igual a la masa obtenida de los productos. Fue elaborada independientemente por Míjail Lomonósov en 1745 y Antoine Lavoisier en 1785.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Interpretación del problema y deducción de las ecuaciones diferenciales ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Para hallar las ecuaciones diferenciales que nos describan cómo se desarrolla la reacción en el tiempo nos basaremos en las dos leyes enunciadas anteriormente. En primer lugar, definimos nuestra variable independiente como el tiempo &amp;lt;math&amp;gt;t&amp;lt;/math&amp;gt; en segundos. Las dos variables dependientes serán las concentraciones de los compuestos A y B, que denominaremos &amp;lt;math&amp;gt;x(t)&amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt;y(t)&amp;lt;/math&amp;gt;, ambas expresadas en mol/l. &lt;br /&gt;
&lt;br /&gt;
El principio de conservación de la masa expone que la suma de las concentraciones de los reactivos y los productos es constante. Esto equivale, derivando la expresión &amp;lt;math&amp;gt;x(t)+y(t)=cte&amp;lt;/math&amp;gt;, a que  desaparece tanto reactivo como producto aparece, o lo que es lo mismo, que la velocidad de aparición del producto es igual a la velocidad de desaparición (velocidad de aparición negativa) del reactivo:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;x'(t)=-y'(t)&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
La otra ecuación que necesitamos la obtenemos directamente de aplicar la Ley de acción de masas, que establece que la velocidad de la reacción (la velocidad a la que aparece el producto o desaparece el reactivo) es igual al producto de las concentraciones por una constante.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;y'(t)=k_1x(t)y(t)&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Obtención del problema de valor inicial ==&lt;br /&gt;
Una vez demostrado el origen de las ecuaciones (1) y (2) en el apartado anterior, obtendremos el problema de valor inicial (PVI) mediante las operaciones detalladas a continuación:&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;x'(t)+y'(t)=0\quad\quad(1)&amp;lt;/math&amp;gt;&lt;br /&gt;
:&amp;lt;math&amp;gt;y'(t)=k_1x(t)y(t)\quad\quad(2)&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Integrando (1) obtenemos (3):&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
:&amp;lt;math&amp;gt;\int_\mathbb{D} (\frac{dx(t)}{dt} + \frac{dy(t)}{dt})\,dt =\int_\mathbb{D} 0\,dt \quad \Rightarrow \quad x(t)+y(t)=k_2\quad \Rightarrow \quad x(t)=k_2-y(t)\quad\quad(3)&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Sustituyendo (3) en (2), obtenemos (4):&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;y'(t)=k_1x(t)y(t)\quad \Rightarrow \quad y'(t)=k_1(k_2-y(t))y(t)\quad \Rightarrow \quad y'(t)=k_1k_2y(t)-k_1y^2(t)\quad\quad(4)&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Conocemos las concentraciones iniciales de A y de B, por lo que podemos obtener el valor de la constante k&amp;lt;sub&amp;gt;2&amp;lt;/sub&amp;gt;:&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;[A]:\quad x(0)=1 mol/l;\quad\quad [B]:\quad y(0)=0,01 mol/l&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;x(t)+y(t)=k_2\quad \Rightarrow \quad x(0)+y(0)=k_2\quad \Rightarrow \quad 1+0,01=k_2\quad \Rightarrow \quad k_2=1,01&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Por último, conocemos también el valor de k&amp;lt;sub&amp;gt;1&amp;lt;/sub&amp;gt;, por lo que podremos plantear a continuación el correspondiente PVI:&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;k_1=1&amp;lt;/math&amp;gt;&lt;br /&gt;
:&amp;lt;math&amp;gt;(PVI)\begin{cases}y'(t)=1,01y(t)-y^2(t) \\ \\&lt;br /&gt;
y(0) = 0,01 \end{cases}\quad (t,y)\in[0,10]\times\mathbb{R}&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Unicidad de la solución ==&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Existencia-y-unicidad.png|200px|miniaturadeimagen|derecha|Intersección B con dominio]]&lt;br /&gt;
&lt;br /&gt;
Aplicamos a continuación el Teorema de Existencia y Unicidad:&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Sea &amp;lt;math&amp;gt;f(t,y)=y'(t) \Rightarrow f(t,y)=1.01y(t)-y^2(t)\quad&amp;lt;/math&amp;gt;, y &amp;lt;math&amp;gt;\quad\frac{\partial }{\partial y} f(t,y) = 1.01-2y(t)&amp;lt;/math&amp;gt;.&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
Y sea &amp;lt;math&amp;gt;B[(t_0,y_0),r],\quad r&amp;gt;0,\quad en (t_0,y_0)=(0,0.01)&amp;lt;/math&amp;gt;.&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;f(t,y)&amp;lt;/math&amp;gt; es continua en &amp;lt;math&amp;gt; \mathbb{B}\cap \mathbb{D}\quad \Rightarrow \quad \exists  y(t)\quad /\quad y'(t)=1,01y(t)-y^2(t)&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;math&amp;gt;\frac{\partial }{\partial y} f(t,y)&amp;lt;/math&amp;gt; es continua en &amp;lt;math&amp;gt; \mathbb{B}\cap \mathbb{D}\quad \Rightarrow \quad \exists !  y(t)\quad /\quad y'(t)=1,01y(t)-y^2(t)&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Con lo que queda demostrado que el (PVI) tiene solución y además esta es única.&lt;br /&gt;
&lt;br /&gt;
== Resolución numérica del problema de valor inicial ==&lt;br /&gt;
&lt;br /&gt;
En este apartado resolveremos el problema de valor inicial planteado anteriormente con tres métodos de integración numérica: el método de Euler, el método del Trapecio y el método de Runge-Kutta de orden 4.&lt;br /&gt;
&lt;br /&gt;
=== Método de Euler ===&lt;br /&gt;
&lt;br /&gt;
El método de Euler, llamado así en honor al matemático Leonhard Euler, es un procedimiento de integración numérica. Su expresión matemática es: &lt;br /&gt;
&amp;lt;math&amp;gt;  PVI = &lt;br /&gt;
   \left \{&lt;br /&gt;
      \begin{array}{rcl}y_0\\&lt;br /&gt;
           y_{n+1} = y_n + h*f(t_n,y_n)\\ &lt;br /&gt;
      \end{array}&lt;br /&gt;
   \right .&lt;br /&gt;
   &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
A continuación emplearemos esta expresión en un programa de Matlab para obtener una aproximación de las soluciones. El código de dicho programa es el siguiente.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Eulergrafica.png|400px|miniaturadeimagen|derecha|Representación gráfica y(t). Método de Euler]]&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
%Método de Euler&lt;br /&gt;
clc&lt;br /&gt;
&lt;br /&gt;
%Datos iniciales&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=4;&lt;br /&gt;
y0=0.01;&lt;br /&gt;
h=0.1;&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=10;&lt;br /&gt;
&lt;br /&gt;
%Cálculo de subintervalos&lt;br /&gt;
N=round((tN-t0)/h);&lt;br /&gt;
t=t0:h:tN;&lt;br /&gt;
&lt;br /&gt;
%Creamos el vector donde vamos a guardar las soluciones&lt;br /&gt;
y=zeros(1,N+1);&lt;br /&gt;
y(1)=y0;&lt;br /&gt;
&lt;br /&gt;
%Euler&lt;br /&gt;
for i=1:N;&lt;br /&gt;
    y(i+1)=y(i)+h*(1.01*y(i)-(y(i)).^2);&lt;br /&gt;
end&lt;br /&gt;
%Tabla de Resultados&lt;br /&gt;
[t',y']&lt;br /&gt;
x=1.01-y;&lt;br /&gt;
hold on &lt;br /&gt;
plot(t,y,'r')&lt;br /&gt;
plot(t,x,'b')&lt;br /&gt;
hold off&lt;br /&gt;
legend('Sustancia B: y(t)','Sustancia A: x(t)','Location','best');&lt;br /&gt;
xlabel('Tiempo (s)')&lt;br /&gt;
ylabel('Concentración (mol/l)')&lt;br /&gt;
grid on&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
=== Método del trapecio ===&lt;br /&gt;
&amp;lt;math&amp;gt;  PVI = &lt;br /&gt;
   \left \{&lt;br /&gt;
      \begin{array}{rcl}&lt;br /&gt;
          y_0\\&lt;br /&gt;
           y_{n+1} = y_n + \frac{h}{2}*f(t_n,y_n)\\ &lt;br /&gt;
      \end{array}&lt;br /&gt;
   \right .&lt;br /&gt;
   &amp;lt;/math&amp;gt;&lt;br /&gt;
[[Archivo:Trapeciografica.png|400px|miniaturadeimagen|derecha|Representación gráfica y(t). Método del Trapecio]]&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
%Método del Trapecio&lt;br /&gt;
clc&lt;br /&gt;
&lt;br /&gt;
%Datos iniciales&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=4;&lt;br /&gt;
y0=0.01;&lt;br /&gt;
h=0.1;&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=10;&lt;br /&gt;
&lt;br /&gt;
%Cálculo de subintervalos&lt;br /&gt;
N=round((tN-t0)/h);&lt;br /&gt;
t=t0:h:tN;&lt;br /&gt;
&lt;br /&gt;
%Creamos el vector donde vamos a guardar las soluciones&lt;br /&gt;
y=zeros(1,N+1);&lt;br /&gt;
y(1)=y0;&lt;br /&gt;
&lt;br /&gt;
for i=1:N&lt;br /&gt;
y(i+1)=(((1-(h/2)*1.01)-sqrt(((1-(h/2)*1.01)^2)+4*(h/2)*((1+(h/2)*1.01)*y(i)-(h/2)*(y(i))^2)))/-h);&lt;br /&gt;
end&lt;br /&gt;
%Sacamos la tabla de resultados&lt;br /&gt;
[t',y']&lt;br /&gt;
x=1.01-y;&lt;br /&gt;
%Gráfico&lt;br /&gt;
hold on&lt;br /&gt;
plot(t,y,'r')&lt;br /&gt;
plot(t,x,'b')&lt;br /&gt;
legend('Sustancia B: y(t)','Sustancia A: x(t)','Location','best');&lt;br /&gt;
xlabel('Tiempo (s)')&lt;br /&gt;
ylabel('Concentración (mol/l)')&lt;br /&gt;
grid on&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
=== Método de Runge-Kutta ===&lt;br /&gt;
&lt;br /&gt;
El método de resolución numérica de Runge-Kutta, involucra un gran número de parámetros. Para simplificar la implementación de este método en Matlab, utilizaremos la función ''inline'', con la que declararemos previamente la función algebraica necesaria para el cálculo de los parámetros &amp;lt;math&amp;gt;k_i&amp;lt;/math&amp;gt;, ahorrándonos tener que escribir innumerables veces la correspondiente expresión matemática.&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
A continuación, detallamos la función &amp;lt;math&amp;gt;f(y)&amp;lt;/math&amp;gt; de la que dependerán los valores de los parámetros &amp;lt;math&amp;gt;k_i&amp;lt;/math&amp;gt;:&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;f(y)=y'(t)=1.01y(t)-y(t)^2&lt;br /&gt;
&lt;br /&gt;
\quad \Rightarrow \quad&lt;br /&gt;
&lt;br /&gt;
\begin{cases}&lt;br /&gt;
 k_1 &amp;amp; =  f(y_i) \\&lt;br /&gt;
 k_2 &amp;amp; =  f(y_i + {1 \over 2}k_1h) \\&lt;br /&gt;
 k_3 &amp;amp; =  f(y_i + \frac{1}{2}k_2h) \\&lt;br /&gt;
 k_4 &amp;amp; =  f(y_i + k_3h) \\&lt;br /&gt;
\end{cases}\quad [h=0.1]&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Entonces el método RK4 para este problema está dado por la siguiente ecuación:&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;y_{i+1} = y_{i} + {1 \over 6}h(k_1+2k_2+2k_3+k_4)&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Mediante el siguiente programa en Matlab calculamos numéricamente la solución y la representamos en un gráfico:&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Archivo:RK4II.png|400px|miniaturadeimagen|derecha|Representación gráfica y(t). Método Runge-Kutta]]&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
%Método de Runge-Kutta&lt;br /&gt;
clc&lt;br /&gt;
&lt;br /&gt;
%Función f(t)=y'(t)&lt;br /&gt;
fy=inline('1.01*y-y^2','y');&lt;br /&gt;
&lt;br /&gt;
%Datos del problema&lt;br /&gt;
y0=0.01;&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=10;&lt;br /&gt;
h=0.1;&lt;br /&gt;
&lt;br /&gt;
%Variable independiente (t)&lt;br /&gt;
t=t0:h:tN;&lt;br /&gt;
&lt;br /&gt;
%Variable dependiente (y)&lt;br /&gt;
y=zeros(1,length(t));&lt;br /&gt;
y(1)=y0;&lt;br /&gt;
&lt;br /&gt;
for i=1:length(t)-1&lt;br /&gt;
    k1=fy(y(i));&lt;br /&gt;
    k2=fy(y(i)+k1/2*h);&lt;br /&gt;
    k3=fy(y(i)+k2/2*h);&lt;br /&gt;
    k4=fy(y(i)+k3*h);&lt;br /&gt;
    y(i+1)=y(i)+h/6*(k1+2*k2+2*k3+k4);&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
%Variable dependiente (x)&lt;br /&gt;
x=1.01-y;&lt;br /&gt;
&lt;br /&gt;
%Representación gráfica&lt;br /&gt;
hold on&lt;br /&gt;
plot(t,x,'b')&lt;br /&gt;
plot(t,y,'r')&lt;br /&gt;
legend('Sustancia A: x(t)','Sustancia B: y(t)')&lt;br /&gt;
xlabel('Tiempo (s)')&lt;br /&gt;
ylabel('Concentración (mol/l)')&lt;br /&gt;
grid on&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
=== Comparación de métodos===&lt;br /&gt;
&lt;br /&gt;
Podemos observar fácilmente que las gráficas obtenidas con los diferentes métodos son iguales a primera vista. Sin embargo, superponiéndolas queda patente que no son exactamente iguales debido a que los métodos no poseen la misma precisión y , al operar todos con la misma longitud de paso, unos aproximan la solución exacta mejor que otros. Así se observa en estas imágenes:&lt;br /&gt;
&lt;br /&gt;
[[Archivo:comparativa1.jpg|400px|miniaturadeimagen|izquierda|Comparación de métodos]]&lt;br /&gt;
[[Archivo:comparativa2.jpg|400px|miniaturadeimagen|derecha|Comparación de métodos]]&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
Como podemos comprobar en las imágenes, el método de Euler es menos preciso que el del trapecio o el de Runge-Kutta.&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Resolución en forma de sistema de ecuaciones ==&lt;br /&gt;
&lt;br /&gt;
A continuación vamos a plantear el problema de valor inicial con un sistema no lineal de dos ecuaciones equivalente al problema resuelto anteriormente.&lt;br /&gt;
&lt;br /&gt;
Estas ecuaciones serán:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;(PVI)&lt;br /&gt;
\begin{cases}&lt;br /&gt;
    y'(t)=k_1 x(t)y(t) \\&lt;br /&gt;
    x'(t)=-k_1 x(t)y(t) \\&lt;br /&gt;
    \\&lt;br /&gt;
    x(0)=1 \\&lt;br /&gt;
    y(0) = 0.01&lt;br /&gt;
\end{cases}&lt;br /&gt;
\quad t\in[0,10]&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Resolveremos el problema por el método de Euler y por el método de Runge-Kutta, plasmando las soluciones en gráficos.&lt;br /&gt;
&lt;br /&gt;
=== Método de Euler ===&lt;br /&gt;
[[Archivo:SistEuler.png|400px|miniaturadeimagen|derecha|Representación gráfica de las concentraciones de A y B. Resolución del sistema por Euler]]&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
&lt;br /&gt;
%Resolución del sistema por el método de Euler&lt;br /&gt;
&lt;br /&gt;
clear all&lt;br /&gt;
&lt;br /&gt;
%Definimos el vector de la variable independiente, el número de&lt;br /&gt;
%subintervalos y la longitud de paso&lt;br /&gt;
&lt;br /&gt;
t0 = 0;&lt;br /&gt;
tN = 10;&lt;br /&gt;
h = 0.1;&lt;br /&gt;
t = t0:h:tN&lt;br /&gt;
N = (tN-t0)/h;&lt;br /&gt;
&lt;br /&gt;
%Definimos los vectores de las variables dependientes&lt;br /&gt;
&lt;br /&gt;
x = zeros(1, N+1);&lt;br /&gt;
y = zeros(1, N+1);&lt;br /&gt;
&lt;br /&gt;
x(1) = 1;&lt;br /&gt;
y(1) = 0.01;&lt;br /&gt;
&lt;br /&gt;
for i = 1:N&lt;br /&gt;
    &lt;br /&gt;
    x(i+1)=x(i)+h*(-x(i).*y(i));&lt;br /&gt;
    y(i+1)=y(i)+h*(y(i).*x(i));&lt;br /&gt;
    &lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
%Representamos gráficamente las soluciones&lt;br /&gt;
&lt;br /&gt;
hold on&lt;br /&gt;
&lt;br /&gt;
plot(t,x,'b');&lt;br /&gt;
plot(t,y,'r');&lt;br /&gt;
grid on&lt;br /&gt;
&lt;br /&gt;
legend('Sustancia A: x(t)','Sustancia B: y(t)')&lt;br /&gt;
xlabel('Tiempo (s)')&lt;br /&gt;
ylabel('Concentración (mol/l)')&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
hold off&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
}}&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
A continuación tendremos que comprobar si el método es estable.&lt;br /&gt;
Un método es estable cuando el error local es pequeño y además este error no se amplifica a lo largo del tiempo. Para mirar la estabilidad del método de Euler resolveremos el sistema usando &amp;quot;h=0.01&amp;quot; y &amp;quot;h=0.001&amp;quot;. Para ello usaremos el mismo programa anterior simplemente variando h. La línea azul representa el programa que usa &amp;quot;h=0.01&amp;quot; y la línea roja representa el programa que usa &amp;quot;h=0.001&amp;quot;&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Comparacioneulers123.jpg|400px|miniaturadeimagen|izquierda|Representación gráfica y(t). Método de Euler]]&lt;br /&gt;
[[Archivo:Comparacioneulers321.jpg|400px|miniaturadeimagen|derecha|Representación gráfica y(t). Método de Euler]]&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
Como podemos ver en la primera imágen las gráficas se superponen y no se aprecian diferencias hasta que no ampliamos la imagen. Y esto sucede en todo momento con lo que podemos garantizar que en este caso es estable.&lt;br /&gt;
&lt;br /&gt;
=== Método de Runge-Kutta===&lt;br /&gt;
&lt;br /&gt;
El método de resolución numérica de Runge-Kutta, involucra un gran número de parámetros. Para simplificar la implementación de este método en Matlab, el sistema se tratará como una matriz &amp;lt;math&amp;gt;z&amp;lt;/math&amp;gt;. Además, utilizaremos la función ''inline'', con la que declararemos previamente la función algebraica necesaria para el cálculo de los parámetros &amp;lt;math&amp;gt;k_i&amp;lt;/math&amp;gt;, ahorrándonos tener que escribir innumerables veces la correspondiente expresión matemática.&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Primero, expresamos el sistema en forma matricial:&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;(PVI)\begin{cases}&lt;br /&gt;
    x'(t)=-k_1 x(t)y(t) \\&lt;br /&gt;
    y'(t)=k_1 x(t)y(t) \\&lt;br /&gt;
    \\&lt;br /&gt;
    x(0)=1 \\&lt;br /&gt;
    y(0) = 0.01&lt;br /&gt;
\end{cases}\quad t\in[0,10]&lt;br /&gt;
&lt;br /&gt;
\quad \Rightarrow \quad k_1=1\quad \Rightarrow \quad&lt;br /&gt;
&lt;br /&gt;
(PVI)\begin{cases}\vec{z}'(t)=&lt;br /&gt;
   \begin{bmatrix}&lt;br /&gt;
      x'(t) \\&lt;br /&gt;
      y'(t) \\&lt;br /&gt;
   \end{bmatrix}&lt;br /&gt;
=&lt;br /&gt;
      \begin{bmatrix}&lt;br /&gt;
      -x(t)y(t) \\&lt;br /&gt;
      x(t)y(t) \\&lt;br /&gt;
   \end{bmatrix}&lt;br /&gt;
&lt;br /&gt;
 \\ \\ \vec{z}(0)=&lt;br /&gt;
   \begin{bmatrix}&lt;br /&gt;
      x(0) \\&lt;br /&gt;
      y(0) \\&lt;br /&gt;
   \end{bmatrix}&lt;br /&gt;
=&lt;br /&gt;
      \begin{bmatrix}&lt;br /&gt;
      1 \\&lt;br /&gt;
      0.01 \\&lt;br /&gt;
   \end{bmatrix}&lt;br /&gt;
\end{cases}\quad t\in[0,10]&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
A continuación, detallamos la función &amp;lt;math&amp;gt;\vec{F}&amp;lt;/math&amp;gt; de la que dependerán los valores de los parámetros &amp;lt;math&amp;gt;k_i&amp;lt;/math&amp;gt;:&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;\vec{F}(x,y)=\vec{F}(\vec{z})=&lt;br /&gt;
&lt;br /&gt;
\begin{bmatrix}&lt;br /&gt;
    f(\vec{z}) \\&lt;br /&gt;
    g(\vec{z}) \\&lt;br /&gt;
\end{bmatrix}=&lt;br /&gt;
&lt;br /&gt;
\begin{bmatrix}&lt;br /&gt;
    x'(t) \\&lt;br /&gt;
    y'(t) \\&lt;br /&gt;
\end{bmatrix}=&lt;br /&gt;
&lt;br /&gt;
\vec{z}'(t)=&lt;br /&gt;
&lt;br /&gt;
\begin{bmatrix}&lt;br /&gt;
    -x(t)y(t) \\&lt;br /&gt;
    x(t)y(t) \\&lt;br /&gt;
\end{bmatrix}&lt;br /&gt;
\quad \Rightarrow \quad&lt;br /&gt;
&lt;br /&gt;
\begin{cases}&lt;br /&gt;
 [\vec{k_1}] &amp;amp; =  F(\vec{z}_i) \\&lt;br /&gt;
 [\vec{k_2}] &amp;amp; =  F(\vec{z}_i + {1 \over 2}k_1h) \\&lt;br /&gt;
 [\vec{k_3}] &amp;amp; =  F(\vec{z}_i + \frac{1}{2}k_2h) \\&lt;br /&gt;
 [\vec{k_4}] &amp;amp; =  F(\vec{z}_i + k_3h) \\&lt;br /&gt;
\end{cases}\quad [h=0.1]&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Entonces el método RK4 para este problema está dado por la siguiente ecuación:&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;\vec{z}_{i+1} = \vec{z}_{i} + {1 \over 6}h(\vec{k_1}+2\vec{k_2}+2\vec{k_3}+\vec{k_4})&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Mediante el siguiente programa en Matlab calculamos numéricamente la solución y la representamos en un gráfico:&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Archivo:sistema_RK4.png|400px|miniaturadeimagen|derecha|Representación gráfica de las concentraciones de A y B. Resolución del sistema por Runge-Kutta]]&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
%Método de Runge-Kutta&lt;br /&gt;
clc&lt;br /&gt;
&lt;br /&gt;
%Función F=[x'(t); y'(t)]&lt;br /&gt;
F=inline('[-z(1)*z(2);z(1)*z(2)]','z');&lt;br /&gt;
&lt;br /&gt;
%Datos del problema &lt;br /&gt;
x0=1;&lt;br /&gt;
y0=0.01;&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=10;&lt;br /&gt;
h=0.1;&lt;br /&gt;
&lt;br /&gt;
%Vector de variable independiente (t)&lt;br /&gt;
t=t0:h:tN;&lt;br /&gt;
&lt;br /&gt;
%Matriz de variables dependientes z=[x;y]&lt;br /&gt;
z=zeros(2,length(t));&lt;br /&gt;
z(:,1)=[x0;y0];&lt;br /&gt;
&lt;br /&gt;
for i = 1:length(t)-1&lt;br /&gt;
    k1=F(z(:,i));&lt;br /&gt;
    k2=F(z(:,i)+k1.*h/2);&lt;br /&gt;
    k3=F(z(:,i)+k2.*h/2);&lt;br /&gt;
    k4=F(z(:,i)+k3.*h);&lt;br /&gt;
    z(:,i+1)=z(:,i)+h/6.*(k1+2.*k2+2.*k3+k4);&lt;br /&gt;
end&lt;br /&gt;
 &lt;br /&gt;
%Representación gráfica&lt;br /&gt;
hold on&lt;br /&gt;
plot(t,z(1,:))&lt;br /&gt;
plot(t,z(2,:),'r')&lt;br /&gt;
legend('Sustancia A: x(t)','Sustancia B: y(t)')&lt;br /&gt;
xlabel('Tiempo (s)')&lt;br /&gt;
ylabel('Concentración (mol/l)')&lt;br /&gt;
grid on&lt;br /&gt;
%hold off&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
== Interpretación de las gráficas ==&lt;br /&gt;
&lt;br /&gt;
Podemos observar por los resultados obtenidos que la velocidad de aparición de B es igual a la velocidad de desaparición de A (como dicta el principio de conservación de la masa), que A acaba desapareciendo prácticamente por completo y que la concentración de B termina por estabilizarse alrededor de 1 mol/l. Ambos compuestos alcanzan sus los extremos de sus concentraciones en el mismo instante de tiempo&lt;br /&gt;
&lt;br /&gt;
También cabe destacar que cuando el tiempo transcurrido alcanza 4,5 segundos las concentraciones de ambos compuestos son las mismas.&lt;br /&gt;
&lt;br /&gt;
= Reacción II =&lt;br /&gt;
&lt;br /&gt;
En este apartado vamos a estudiar la reacción propuesta por Alfred J. Lotka en 1920, que es la siguiente:&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt; A + X →_{k1} 2X;&amp;lt;/math&amp;gt;     :&amp;lt;math&amp;gt; X + Y →_{k2} 2Y;&amp;lt;/math&amp;gt;     :&amp;lt;math&amp;gt;Y →_{k3} 2B  &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Como se puede observar, se trata de una reacción compleja integrada por 3 reacciones simples (las dos primeras autocatalíticas) en las que intervienen un total de 4 compuestos, A, B, X e Y. Siguiendo el desarrollo de la reacción, es lógico suponer que A se agotará al comienzo de la reacción, que los máximos de concentración de X e Y se darán en los estados intermedios y que al final el compuesto B será el único restante, siendo el producto final de la reacción.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Interpretación del problema y deducción de las ecuaciones diferenciales ==&lt;br /&gt;
&lt;br /&gt;
Para averiguar cómo evolucionan las concentraciones de los cuatro compuestos durante el desarrollo de la reacción necesitaremos obtener cuatro ecuaciones diferenciales. Para ello nos volveremos a basar en los principios físicos que ya empleamos en la anterior reacción. Definimos A(t), x(t), y(t), y B(t) (A, x, y, B; para ahorrar notación) a las concentraciones de A, X, Y, y B, respectivamente. &lt;br /&gt;
&lt;br /&gt;
En primer lugar aplicamos el Principio de Conservación de la masa, que establece que la suma de las concentraciones de los compuestos es constante (no desaparece masa en el proceso), lo que derivando nos indica que:&lt;br /&gt;
&lt;br /&gt;
: &amp;lt;math&amp;gt; A' + y' + y' + B' = 0 \quad\quad(I)&amp;lt;/math&amp;gt;       &lt;br /&gt;
&lt;br /&gt;
A continuación aplicaremos la Ley de Acción de Masas (velocidad de reacción proporcional al producto de la concentración de los reactivos).&lt;br /&gt;
&lt;br /&gt;
Aplicando esta ley a la última reacción simple obtenemos que: &lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;B'=k_3y \quad\quad(II)&amp;lt;/math&amp;gt;        &lt;br /&gt;
&lt;br /&gt;
En el caso de las concentraciones de X e Y las expresiones resultantes son algo más complicadas ya que estos dos compuestos actúan como reactivos y productos en más de una reacción simple, por lo que la variación de sus concentraciones será la suma de las variaciones de las reacciones en las que aparezcan:&lt;br /&gt;
&lt;br /&gt;
: &amp;lt;math&amp;gt; x' = x'_{1} + x'_{2} → x' = k_{1}Ax - k{2}xy \quad\quad(III)&amp;lt;/math&amp;gt;        &lt;br /&gt;
: &amp;lt;math&amp;gt; y' = y'_{2} + y'_{3} → y' = k_{2}xy − k_3{y} \quad\quad(IV)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Por último sustituimos (II), (III) y (IV) en (I) obteniendo: &lt;br /&gt;
&lt;br /&gt;
: &amp;lt;math&amp;gt; A' + k_{1}Ax - k{2}xy + k_{2}xy − k_3{y}+ k_3y= 0 : &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
De donde obtenemos que:&lt;br /&gt;
&lt;br /&gt;
: &amp;lt;math&amp;gt; A' = -k_{1}Ax &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Ahora que ya tenemos las variaciones de concentración de los compuestos en función de las concentraciones podemos aplicar métodos numéricos que nos lleven a una solución aproximada.&lt;br /&gt;
&lt;br /&gt;
== Resolución numérica del sistema de ecuaciones ==&lt;br /&gt;
&lt;br /&gt;
Una vez obtenidas las ecuaciones y conociendo las condiciones iniciales y los valores de las constantes podemos plantear el problema de valor inicial para luego resolverlo.&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;(PVI)&lt;br /&gt;
\begin{cases}&lt;br /&gt;
    A' = -k_{1}Ax\\&lt;br /&gt;
    x' = k_{1}Ax - k{2}xy\\&lt;br /&gt;
    y' = k_{2}xy − k_3{y}\\&lt;br /&gt;
    B'=k_3y \\&lt;br /&gt;
\\&lt;br /&gt;
    A(0)=5  \\&lt;br /&gt;
    x(0)=5*10^{-4} \\&lt;br /&gt;
    y(0)=10^{-5}\\&lt;br /&gt;
    B(0)=0 \\&lt;br /&gt;
\end{cases}&lt;br /&gt;
\quad t\in[0,200]&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Siendo &amp;lt;math&amp;gt; k_{1}=K_{2}=2k_{3}=0.1 &amp;lt;/math&amp;gt; y las unidades de la concentración mol/l.&lt;br /&gt;
&lt;br /&gt;
=== Método de Euler ===&lt;br /&gt;
&lt;br /&gt;
Aplicamos el método de Euler de forma análoga a como lo hicimos en [[Reacciones_con_autocatálisis._Grupo_D12#Método_de_Euler_2|apartado 2.5.1]]&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Euler lotka0.01.png|400px|miniaturadeimagen|derecha|Representación gráfica de las concentraciones de A, B, X, e Y a lo largo del tiempo. Resoluciónd delsistema por el método de Euler con longitud de paso h=0.01]] &lt;br /&gt;
[[Archivo:Euler lotka0.001.png|400px|miniaturadeimagen|derecha|Representación gráfica de las concentraciones de A, B, X, e Y a lo largo del tiempo. Resoluciónd delsistema por el método de Euler con longitud de paso h=0.001]]&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
&lt;br /&gt;
%Resolución del sistema de la reacción de Lotka por el método de Euler&lt;br /&gt;
&lt;br /&gt;
clear all&lt;br /&gt;
&lt;br /&gt;
%Definimos la variable independiente y establecemos los datos del problema&lt;br /&gt;
%de valor inicial. Para la longitud de paso h introducimos en primer lugar&lt;br /&gt;
%0.01 y luego 0.001&lt;br /&gt;
&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=200;&lt;br /&gt;
h= input('Introduzca una longitud de paso ');&lt;br /&gt;
t = t0:h:tN;&lt;br /&gt;
N=(tN-t0)/h;&lt;br /&gt;
k1 = 0.1;&lt;br /&gt;
k2 = 0.1;&lt;br /&gt;
k3 = 0.05;&lt;br /&gt;
A0 = 5;&lt;br /&gt;
B0 = 0;&lt;br /&gt;
X0 = 5*10^(-4);&lt;br /&gt;
Y0 = 10^(-5);&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
%Definimos las variables dependientes.&lt;br /&gt;
&lt;br /&gt;
A = zeros(1, N-1);&lt;br /&gt;
B = A;&lt;br /&gt;
X = A;&lt;br /&gt;
Y = A;&lt;br /&gt;
&lt;br /&gt;
A(1) = A0;&lt;br /&gt;
B(1) = B0;&lt;br /&gt;
X(1) = X0;&lt;br /&gt;
Y(1) = Y0;&lt;br /&gt;
&lt;br /&gt;
for i = 1:N&lt;br /&gt;
    &lt;br /&gt;
    X(i+1) = X(i) + h*(k1*A(i)*X(i)-k2*Y(i)*X(i));&lt;br /&gt;
    Y(i+1)=Y(i)+h.*(k2.*X(i).*Y(i)-k3.*Y(i));&lt;br /&gt;
    B(i+1) = B(i) + h*(k3*Y(i));&lt;br /&gt;
    A(i+1) = A(i) + h*(-k1*A(i)*X(i));&lt;br /&gt;
   &lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
%Representamos gráficamente la solución&lt;br /&gt;
&lt;br /&gt;
hold on&lt;br /&gt;
&lt;br /&gt;
plot (t,A,'b')&lt;br /&gt;
plot(t, X, 'r')&lt;br /&gt;
plot(t,Y, 'g')&lt;br /&gt;
plot(t, B, 'm')&lt;br /&gt;
legend('Sustancia A: A(t)','Sustancia X: x(t)','Sustancia Y: y(t)','Sustancia B: B(t)','Location','Best')&lt;br /&gt;
xlabel('Tiempo (s)')&lt;br /&gt;
ylabel('Concentración (mol/l)')&lt;br /&gt;
grid on&lt;br /&gt;
&lt;br /&gt;
hold off&lt;br /&gt;
&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
=== Método de Heun ===&lt;br /&gt;
&lt;br /&gt;
Si bien el método de resolución numérica de Heun no involucra un número de parámetros tan notable como el método de Runge-Kutta, en este caso tenemos un sistema de 4 ecuaciones diferenciales, por lo que, en aras de simplificar, utilizaremos el mismo criterio que en el [[Reacciones_con_autocatálisis._Grupo_D12#Método_de_Runge-Kutta_2|apartado 2.5.2]].: El sistema se tratará como una matriz &amp;lt;math&amp;gt;z&amp;lt;/math&amp;gt;, y para la obtención de los parámetros &amp;lt;math&amp;gt;k_i&amp;lt;/math&amp;gt; utilizaremos la función ''inline'', con la que declararemos previamente las expresiones necesarias para el cálculo de los parámetros &amp;lt;math&amp;gt;k_i&amp;lt;/math&amp;gt;.&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Primero, expresamos el sistema en forma matricial:&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;(PVI)\begin{cases}&lt;br /&gt;
A'(t)=-k_1 A(t)x(t) \\&lt;br /&gt;
x'(t)=k_1 A(t)x(t)-k_2 x(t)y(t) \\&lt;br /&gt;
y'(t)=k_2 x(t)y(t)-k_3 y(t) \\&lt;br /&gt;
B'(t)=k_3 x(t)y(t) \\ \\&lt;br /&gt;
A(0)=5 \\&lt;br /&gt;
x(0)=5·10^{-4} \\&lt;br /&gt;
y(0)=10^{-5} \\&lt;br /&gt;
B(0) = 0&lt;br /&gt;
\end{cases}\quad t\in[0,200]&lt;br /&gt;
&lt;br /&gt;
\quad \Rightarrow \quad&lt;br /&gt;
&lt;br /&gt;
\begin{cases}&lt;br /&gt;
k_1=0.1 \\&lt;br /&gt;
k_2=0.1 \\&lt;br /&gt;
k_3=0.05 \\&lt;br /&gt;
&lt;br /&gt;
\end{cases}&lt;br /&gt;
&lt;br /&gt;
\quad \Rightarrow \quad&lt;br /&gt;
&lt;br /&gt;
(PVI)\begin{cases}\vec{z}'(t)=&lt;br /&gt;
   \begin{bmatrix}&lt;br /&gt;
      A'(t) \\&lt;br /&gt;
      x'(t) \\&lt;br /&gt;
      y'(t) \\&lt;br /&gt;
      B'(t) \\&lt;br /&gt;
   \end{bmatrix}&lt;br /&gt;
=&lt;br /&gt;
      \begin{bmatrix}&lt;br /&gt;
      -0.1 A(t)x(t) \\&lt;br /&gt;
      0.1 A(t)x(t)-0.1 x(t)y(t) \\&lt;br /&gt;
      0.1 x(t)y(t)-0.05 y(t) \\&lt;br /&gt;
      0.05 y(t)x(t)\\&lt;br /&gt;
   \end{bmatrix}&lt;br /&gt;
&lt;br /&gt;
 \\ \\ \vec{z}(0)=&lt;br /&gt;
   \begin{bmatrix}&lt;br /&gt;
      A(0) \\&lt;br /&gt;
      x(0) \\&lt;br /&gt;
      y(0) \\&lt;br /&gt;
      B(0) \\&lt;br /&gt;
   \end{bmatrix}&lt;br /&gt;
=&lt;br /&gt;
      \begin{bmatrix}&lt;br /&gt;
      5 \\&lt;br /&gt;
      5·10^{-4} \\&lt;br /&gt;
      10^{-5} \\&lt;br /&gt;
      0&lt;br /&gt;
   \end{bmatrix}&lt;br /&gt;
\end{cases}\quad t\in[0,200]&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
A continuación, detallamos la función &amp;lt;math&amp;gt;\vec{F}&amp;lt;/math&amp;gt; de la que dependerán los valores de los parámetros &amp;lt;math&amp;gt;k_i&amp;lt;/math&amp;gt;:&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;\vec{F}(A,x,y,B)=\vec{F}(\vec{z})=&lt;br /&gt;
\begin{bmatrix}&lt;br /&gt;
    f(\vec{z}) \\ &lt;br /&gt;
    g(\vec{z}) \\ &lt;br /&gt;
    h(\vec{z}) \\ &lt;br /&gt;
    i(\vec{z}) \\ &lt;br /&gt;
\end{bmatrix}=&lt;br /&gt;
\begin{bmatrix}&lt;br /&gt;
    A'(t) \\&lt;br /&gt;
    x'(t) \\&lt;br /&gt;
    y'(t) \\&lt;br /&gt;
    B'(t) \\&lt;br /&gt;
\end{bmatrix}=&lt;br /&gt;
\vec{z}'(t)=&lt;br /&gt;
      \begin{bmatrix}&lt;br /&gt;
      -0.1 A(t)x(t) \\&lt;br /&gt;
      0.1 A(t)x(t)-0.1 x(t)y(t) \\&lt;br /&gt;
      0.1 x(t)y(t)-0.05 y(t) \\&lt;br /&gt;
      0.05 y(t)x(t)\\&lt;br /&gt;
   \end{bmatrix}&lt;br /&gt;
&lt;br /&gt;
\quad \Rightarrow \quad &lt;br /&gt;
&lt;br /&gt;
\begin{cases}&lt;br /&gt;
 [\vec{k_1}] &amp;amp; =  F(\vec{z}_i) \\&lt;br /&gt;
 [\vec{k_2}] &amp;amp; =  F(\vec{z}_i + {1 \over 2}k_1h) \\&lt;br /&gt;
\end{cases}\quad [h=0.01]&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Entonces el método de Heun para este problema está dado por la siguiente ecuación:&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;\vec{z}_{i+1} = \vec{z}_{i} + {1 \over 2}h(\vec{k_1}+\vec{k_2})&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Mediante el siguiente programa en Matlab calculamos numéricamente la solución y la representamos en un gráfico:&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Archivo:AXYBRK4.png|400px|miniaturadeimagen|derecha|Representación gráfica de las concentraciones de A,X,Y y B. Resolución del sistema por Heun]]&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
%Método de Heun&lt;br /&gt;
clc&lt;br /&gt;
&lt;br /&gt;
%Función F=[A'(t);x'(t); y'(t);B'(t)]&lt;br /&gt;
F=inline('0.1.*[-z(1)*z(2);z(1)*z(2)-z(2)*z(3);z(2)*z(3)-z(3)/2;z(3)/2]','z');&lt;br /&gt;
&lt;br /&gt;
%Datos del problema&lt;br /&gt;
A0=5;&lt;br /&gt;
x0=5*10^-4;&lt;br /&gt;
y0=10^(-5);&lt;br /&gt;
B0=0;&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=200;&lt;br /&gt;
h=0.1;&lt;br /&gt;
&lt;br /&gt;
%Vector de variable independiente (t)&lt;br /&gt;
t=t0:h:tN;&lt;br /&gt;
&lt;br /&gt;
%Matriz de variables dependientes z=[A;x;y;B]&lt;br /&gt;
z=zeros(4,length(t));&lt;br /&gt;
z(:,1)=[A0;x0;y0;B0];&lt;br /&gt;
&lt;br /&gt;
for i = 1:length(t)-1&lt;br /&gt;
    k1=F(z(:,i));&lt;br /&gt;
    k2=F(z(:,i)+k1.*h/2);&lt;br /&gt;
    z(:,i+1)=z(:,i)+h/2.*(k1+k2);&lt;br /&gt;
end&lt;br /&gt;
 &lt;br /&gt;
%Representación gráfica&lt;br /&gt;
hold on&lt;br /&gt;
plot(t,z(1,:),'b')&lt;br /&gt;
plot(t,z(2,:),'r')&lt;br /&gt;
plot(t,z(3,:),'g')&lt;br /&gt;
plot(t,z(4,:),'m')&lt;br /&gt;
legend('Sustancia A: A(t)','Sustancia X: x(t)','Sustancia Y: y(t)','Sustancia B: B(t)','Location','Best')&lt;br /&gt;
xlabel('Tiempo (s)')&lt;br /&gt;
ylabel('Concentración (mol/l)')&lt;br /&gt;
grid on&lt;br /&gt;
hold off&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
== Interpretación de las gráficas == &lt;br /&gt;
 &lt;br /&gt;
El proceso comienza con el predominio absoluto del compuesto A en la concentración total, siendo la presencia de los otros tres compuestos despreciable. Durante los primeros segundos la situación apenas cambia, pero tras los diez primeros segundos la concentración de A cae bruscamente mientras que la concentración de X aumenta a la misma velocidad; antes de llegar a los veinte segundos transcurridos las concentraciones de ambos compuestos se igualan y otros quince segundos más tarde el compuesto A  prácticamente ha desaparecido y el X ha alcanzado su concentración máxima (5 mol/litro).&lt;br /&gt;
&lt;br /&gt;
Es entonces cuando concluye la primera reacción y comienzan las otras dos, al no haber más compuesto A que cree compuesto X. La velocidad de aparición de Y es inicialmente mayor que la de B, superando al poco tiempo en concentración a la sustancia X. Sin embargo, llega un momento en el que la concentración de X es tan baja que se ralentiza la creación de Y y pronto empieza a disminuir su concentración tras alcanzar un máximo en torno a los 56 segundos, perdiendo peso la segunda reacción en beneficio de la tercera.&lt;br /&gt;
&lt;br /&gt;
Tras los 60 segundos de reacción el compuesto X pasa a tener una concentración despreciable, por lo que la única reacción simple que se sigue desarrollando es la tercera, destruyéndose reactivo Y y creándose producto B. La concentración de Y va reduciéndose paulatinamente hasta que en torno a los 160 segundos de reacción alcanza niveles insignificantes mientras que la concentración de B alcanza su máximo de 5 mol/litro.&lt;br /&gt;
&lt;br /&gt;
Es interesante observar que en todo momento se cumple el Principio de Conservación de la masa: la suma en cualquier momento de las concentraciones de las sustancias es 5 mol /litro. Esto es fácilmente comprobable en los momentos en que las concentraciones de A, X y B alcanzan su máximo de 5 mol/litro y el resto de concentraciones son nulas o despreciables. &lt;br /&gt;
[[Categoría:Ecuaciones Diferenciales]]&lt;br /&gt;
[[Categoría:ED14/15]]&lt;br /&gt;
[[Categoría:Trabajos 2014-15]]&lt;/div&gt;</summary>
		<author><name>Javier Ruiz de Galarreta López</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Reacciones_con_autocat%C3%A1lisis._Grupo_D12&amp;diff=27451</id>
		<title>Reacciones con autocatálisis. Grupo D12</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Reacciones_con_autocat%C3%A1lisis._Grupo_D12&amp;diff=27451"/>
				<updated>2015-03-06T09:44:19Z</updated>
		
		<summary type="html">&lt;p&gt;Javier Ruiz de Galarreta López: /* Método de Euler */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{ TrabajoED | Reacciones con autocatálisis. Grupo D12 | [[:Categoría:Ecuaciones Diferenciales|Ecuaciones Diferenciales]]|[[:Categoría:ED14/15|Curso 2014-15]] | Javier Ruiz de Galarreta López, Argimiro Martínez López, Eduardo Moyano García, Alberto Rodríguez Ruiz. }}&lt;br /&gt;
&lt;br /&gt;
= Introducción: objetivos y metodología =&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
El objetivo de este trabajo es estudiar las concentraciones de los reactivos y productos de una reacción química a lo largo de la evolución en el tiempo de dicha reacción. Para ello modelizaremos el proceso empleando ecuaciones diferenciales y teniendo en cuenta la Ley de Acción de Masas y el Principio de Conservación de la materia.&lt;br /&gt;
&lt;br /&gt;
Al ser las ecuaciones y sistemas que se nos presentan de difícil resolución analítica, utilizaremos el programa informático Matlab para resolverlos mediante métodos numéricos como el de Euler, el del Trapecio, el de Runge-Kutta y el de Heun. &lt;br /&gt;
&lt;br /&gt;
Plasmaremos las soluciones en gráficos que nos permitirán dar una interpretación físico química a los resultados.&lt;br /&gt;
&lt;br /&gt;
= Reacción I =&lt;br /&gt;
&lt;br /&gt;
En primer lugar consideramos una reacción química irreversible en una solución bien mezclada, que se desarrolla para un volumen y una temperatura constantes, y en la que uno de los componentes (B, en este caso), hace de efecto catalítico.&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt; A + B →_{k1} 2B  &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Para desarrollar nuestro análisis nos apoyaremos en dos leyes físico químicas:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''Ley de acción de masas''': Enunciada por Guldberg y Waage en 1864, establece, entre otras cosas, que  la velocidad de&lt;br /&gt;
reacción es proporcional al producto de las concentraciones de los reactivos.&lt;br /&gt;
&lt;br /&gt;
'''Principio de conservación de la masa''': Establece que en una reacción química ordinaria la masa permanece constante, siendo la masa consumida de los reactivos igual a la masa obtenida de los productos. Fue elaborada independientemente por Míjail Lomonósov en 1745 y Antoine Lavoisier en 1785.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Interpretación del problema y deducción de las ecuaciones diferenciales ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Para hallar las ecuaciones diferenciales que nos describan cómo se desarrolla la reacción en el tiempo nos basaremos en las dos leyes enunciadas anteriormente. En primer lugar, definimos nuestra variable independiente como el tiempo &amp;lt;math&amp;gt;t&amp;lt;/math&amp;gt; en segundos. Las dos variables dependientes serán las concentraciones de los compuestos A y B, que denominaremos &amp;lt;math&amp;gt;x(t)&amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt;y(t)&amp;lt;/math&amp;gt;, ambas expresadas en mol/l. &lt;br /&gt;
&lt;br /&gt;
El principio de conservación de la masa expone que la suma de las concentraciones de los reactivos y los productos es constante. Esto equivale, derivando la expresión &amp;lt;math&amp;gt;x(t)+y(t)=cte&amp;lt;/math&amp;gt;, a que  desaparece tanto reactivo como producto aparece, o lo que es lo mismo, que la velocidad de aparición del producto es igual a la velocidad de desaparición (velocidad de aparición negativa) del reactivo:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;x'(t)=-y'(t)&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
La otra ecuación que necesitamos la obtenemos directamente de aplicar la Ley de acción de masas, que establece que la velocidad de la reacción (la velocidad a la que aparece el producto o desaparece el reactivo) es igual al producto de las concentraciones por una constante.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;y'(t)=k_1x(t)y(t)&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Obtención del problema de valor inicial ==&lt;br /&gt;
Una vez demostrado el origen de las ecuaciones (1) y (2) en el apartado anterior, obtendremos el problema de valor inicial (PVI) mediante las operaciones detalladas a continuación:&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;x'(t)+y'(t)=0\quad\quad(1)&amp;lt;/math&amp;gt;&lt;br /&gt;
:&amp;lt;math&amp;gt;y'(t)=k_1x(t)y(t)\quad\quad(2)&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Integrando (1) obtenemos (3):&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
:&amp;lt;math&amp;gt;\int_\mathbb{D} (\frac{dx(t)}{dt} + \frac{dy(t)}{dt})\,dt =\int_\mathbb{D} 0\,dt \quad \Rightarrow \quad x(t)+y(t)=k_2\quad \Rightarrow \quad x(t)=k_2-y(t)\quad\quad(3)&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Sustituyendo (3) en (2), obtenemos (4):&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;y'(t)=k_1x(t)y(t)\quad \Rightarrow \quad y'(t)=k_1(k_2-y(t))y(t)\quad \Rightarrow \quad y'(t)=k_1k_2y(t)-k_1y^2(t)\quad\quad(4)&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Conocemos las concentraciones iniciales de A y de B, por lo que podemos obtener el valor de la constante k&amp;lt;sub&amp;gt;2&amp;lt;/sub&amp;gt;:&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;[A]:\quad x(0)=1 mol/l;\quad\quad [B]:\quad y(0)=0,01 mol/l&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;x(t)+y(t)=k_2\quad \Rightarrow \quad x(0)+y(0)=k_2\quad \Rightarrow \quad 1+0,01=k_2\quad \Rightarrow \quad k_2=1,01&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Por último, conocemos también el valor de k&amp;lt;sub&amp;gt;1&amp;lt;/sub&amp;gt;, por lo que podremos plantear a continuación el correspondiente PVI:&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;k_1=1&amp;lt;/math&amp;gt;&lt;br /&gt;
:&amp;lt;math&amp;gt;(PVI)\begin{cases}y'(t)=1,01y(t)-y^2(t) \\ \\&lt;br /&gt;
y(0) = 0,01 \end{cases}\quad (t,y)\in[0,10]\times\mathbb{R}&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Unicidad de la solución ==&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Existencia-y-unicidad.png|200px|miniaturadeimagen|derecha|Intersección B con dominio]]&lt;br /&gt;
&lt;br /&gt;
Aplicamos a continuación el Teorema de Existencia y Unicidad:&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Sea &amp;lt;math&amp;gt;f(t,y)=y'(t) \Rightarrow f(t,y)=1.01y(t)-y^2(t)\quad&amp;lt;/math&amp;gt;, y &amp;lt;math&amp;gt;\quad\frac{\partial }{\partial y} f(t,y) = 1.01-2y(t)&amp;lt;/math&amp;gt;.&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
Y sea &amp;lt;math&amp;gt;B[(t_0,y_0),r],\quad r&amp;gt;0,\quad en (t_0,y_0)=(0,0.01)&amp;lt;/math&amp;gt;.&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;f(t,y)&amp;lt;/math&amp;gt; es continua en &amp;lt;math&amp;gt; \mathbb{B}\cap \mathbb{D}\quad \Rightarrow \quad \exists  y(t)\quad /\quad y'(t)=1,01y(t)-y^2(t)&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;math&amp;gt;\frac{\partial }{\partial y} f(t,y)&amp;lt;/math&amp;gt; es continua en &amp;lt;math&amp;gt; \mathbb{B}\cap \mathbb{D}\quad \Rightarrow \quad \exists !  y(t)\quad /\quad y'(t)=1,01y(t)-y^2(t)&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Con lo que queda demostrado que el (PVI) tiene solución y además esta es única.&lt;br /&gt;
&lt;br /&gt;
== Resolución numérica del problema de valor inicial ==&lt;br /&gt;
&lt;br /&gt;
En este apartado resolveremos el problema de valor inicial planteado anteriormente con tres métodos de integración numérica: el método de Euler, el método del Trapecio y el método de Runge-Kutta de orden 4.&lt;br /&gt;
&lt;br /&gt;
=== Método de Euler ===&lt;br /&gt;
&lt;br /&gt;
El método de Euler, llamado así en honor al matemático Leonhard Euler, es un procedimiento de integración numérica. Su expresión matemática es: &lt;br /&gt;
&amp;lt;math&amp;gt;  PVI = &lt;br /&gt;
   \left \{&lt;br /&gt;
      \begin{array}{rcl}y_0\\&lt;br /&gt;
           y_{n+1} = y_n + h*f(t_n,y_n)\\ &lt;br /&gt;
      \end{array}&lt;br /&gt;
   \right .&lt;br /&gt;
   &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
A continuación emplearemos esta expresión en un programa de Matlab para obtener una aproximación de las soluciones. El código de dicho programa es el siguiente.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Eulergrafica.png|400px|miniaturadeimagen|derecha|Representación gráfica y(t). Método de Euler]]&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
%Método de Euler&lt;br /&gt;
clc&lt;br /&gt;
&lt;br /&gt;
%Datos iniciales&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=4;&lt;br /&gt;
y0=0.01;&lt;br /&gt;
h=0.1;&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=10;&lt;br /&gt;
&lt;br /&gt;
%Cálculo de subintervalos&lt;br /&gt;
N=round((tN-t0)/h);&lt;br /&gt;
t=t0:h:tN;&lt;br /&gt;
&lt;br /&gt;
%Creamos el vector donde vamos a guardar las soluciones&lt;br /&gt;
y=zeros(1,N+1);&lt;br /&gt;
y(1)=y0;&lt;br /&gt;
&lt;br /&gt;
%Euler&lt;br /&gt;
for i=1:N;&lt;br /&gt;
    y(i+1)=y(i)+h*(1.01*y(i)-(y(i)).^2);&lt;br /&gt;
end&lt;br /&gt;
%Tabla de Resultados&lt;br /&gt;
[t',y']&lt;br /&gt;
x=1.01-y;&lt;br /&gt;
hold on &lt;br /&gt;
plot(t,y,'r')&lt;br /&gt;
plot(t,x,'b')&lt;br /&gt;
hold off&lt;br /&gt;
legend('Sustancia B: y(t)','Sustancia A: x(t)','Location','best');&lt;br /&gt;
xlabel('Tiempo (s)')&lt;br /&gt;
ylabel('Concentración (mol/l)')&lt;br /&gt;
grid on&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
=== Método del trapecio ===&lt;br /&gt;
&amp;lt;math&amp;gt;  PVI = &lt;br /&gt;
   \left \{&lt;br /&gt;
      \begin{array}{rcl}&lt;br /&gt;
          y_0\\&lt;br /&gt;
           y_{n+1} = y_n + \frac{h}{2}*f(t_n,y_n)\\ &lt;br /&gt;
      \end{array}&lt;br /&gt;
   \right .&lt;br /&gt;
   &amp;lt;/math&amp;gt;&lt;br /&gt;
[[Archivo:Trapeciografica.png|400px|miniaturadeimagen|derecha|Representación gráfica y(t). Método del Trapecio]]&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
%Método del Trapecio&lt;br /&gt;
clc&lt;br /&gt;
&lt;br /&gt;
%Datos iniciales&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=4;&lt;br /&gt;
y0=0.01;&lt;br /&gt;
h=0.1;&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=10;&lt;br /&gt;
&lt;br /&gt;
%Cálculo de subintervalos&lt;br /&gt;
N=round((tN-t0)/h);&lt;br /&gt;
t=t0:h:tN;&lt;br /&gt;
&lt;br /&gt;
%Creamos el vector donde vamos a guardar las soluciones&lt;br /&gt;
y=zeros(1,N+1);&lt;br /&gt;
y(1)=y0;&lt;br /&gt;
&lt;br /&gt;
for i=1:N&lt;br /&gt;
y(i+1)=(((1-(h/2)*1.01)-sqrt(((1-(h/2)*1.01)^2)+4*(h/2)*((1+(h/2)*1.01)*y(i)-(h/2)*(y(i))^2)))/-h);&lt;br /&gt;
end&lt;br /&gt;
%Sacamos la tabla de resultados&lt;br /&gt;
[t',y']&lt;br /&gt;
x=1.01-y;&lt;br /&gt;
%Gráfico&lt;br /&gt;
hold on&lt;br /&gt;
plot(t,y,'r')&lt;br /&gt;
plot(t,x,'b')&lt;br /&gt;
legend('Sustancia B: y(t)','Sustancia A: x(t)','Location','best');&lt;br /&gt;
xlabel('Tiempo (s)')&lt;br /&gt;
ylabel('Concentración (mol/l)')&lt;br /&gt;
grid on&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
=== Método de Runge-Kutta ===&lt;br /&gt;
&lt;br /&gt;
El método de resolución numérica de Runge-Kutta, involucra un gran número de parámetros. Para simplificar la implementación de este método en Matlab, utilizaremos la función ''inline'', con la que declararemos previamente la función algebraica necesaria para el cálculo de los parámetros &amp;lt;math&amp;gt;k_i&amp;lt;/math&amp;gt;, ahorrándonos tener que escribir innumerables veces la correspondiente expresión matemática.&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
A continuación, detallamos la función &amp;lt;math&amp;gt;f(y)&amp;lt;/math&amp;gt; de la que dependerán los valores de los parámetros &amp;lt;math&amp;gt;k_i&amp;lt;/math&amp;gt;:&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;f(y)=y'(t)=1.01y(t)-y(t)^2&lt;br /&gt;
&lt;br /&gt;
\quad \Rightarrow \quad&lt;br /&gt;
&lt;br /&gt;
\begin{cases}&lt;br /&gt;
 k_1 &amp;amp; =  f(y_i) \\&lt;br /&gt;
 k_2 &amp;amp; =  f(y_i + {1 \over 2}k_1h) \\&lt;br /&gt;
 k_3 &amp;amp; =  f(y_i + \frac{1}{2}k_2h) \\&lt;br /&gt;
 k_4 &amp;amp; =  f(y_i + k_3h) \\&lt;br /&gt;
\end{cases}\quad [h=0.1]&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Entonces el método RK4 para este problema está dado por la siguiente ecuación:&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;y_{i+1} = y_{i} + {1 \over 6}h(k_1+2k_2+2k_3+k_4)&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Mediante el siguiente programa en Matlab calculamos numéricamente la solución y la representamos en un gráfico:&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Archivo:RK4II.png|400px|miniaturadeimagen|derecha|Representación gráfica y(t). Método Runge-Kutta]]&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
%Método de Runge-Kutta&lt;br /&gt;
clc&lt;br /&gt;
&lt;br /&gt;
%Función f(t)=y'(t)&lt;br /&gt;
fy=inline('1.01*y-y^2','y');&lt;br /&gt;
&lt;br /&gt;
%Datos del problema&lt;br /&gt;
y0=0.01;&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=10;&lt;br /&gt;
h=0.1;&lt;br /&gt;
&lt;br /&gt;
%Variable independiente (t)&lt;br /&gt;
t=t0:h:tN;&lt;br /&gt;
&lt;br /&gt;
%Variable dependiente (y)&lt;br /&gt;
y=zeros(1,length(t));&lt;br /&gt;
y(1)=y0;&lt;br /&gt;
&lt;br /&gt;
for i=1:length(t)-1&lt;br /&gt;
    k1=fy(y(i));&lt;br /&gt;
    k2=fy(y(i)+k1/2*h);&lt;br /&gt;
    k3=fy(y(i)+k2/2*h);&lt;br /&gt;
    k4=fy(y(i)+k3*h);&lt;br /&gt;
    y(i+1)=y(i)+h/6*(k1+2*k2+2*k3+k4);&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
%Variable dependiente (x)&lt;br /&gt;
x=1.01-y;&lt;br /&gt;
&lt;br /&gt;
%Representación gráfica&lt;br /&gt;
hold on&lt;br /&gt;
plot(t,x,'b')&lt;br /&gt;
plot(t,y,'r')&lt;br /&gt;
legend('Sustancia A: x(t)','Sustancia B: y(t)')&lt;br /&gt;
xlabel('Tiempo (s)')&lt;br /&gt;
ylabel('Concentración (mol/l)')&lt;br /&gt;
grid on&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
=== Comparación de métodos===&lt;br /&gt;
&lt;br /&gt;
Podemos observar fácilmente que las gráficas obtenidas con los diferentes métodos son iguales a primera vista. Sin embargo, superponiéndolas queda patente que no son exactamente iguales debido a que los métodos no poseen la misma precisión y , al operar todos con la misma longitud de paso, unos aproximan la solución exacta mejor que otros. Así se observa en estas imágenes:&lt;br /&gt;
&lt;br /&gt;
[[Archivo:comparativa1.jpg|400px|miniaturadeimagen|izquierda|Comparación de métodos]]&lt;br /&gt;
[[Archivo:comparativa2.jpg|400px|miniaturadeimagen|derecha|Comparación de métodos]]&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
Como podemos comprobar en las imágenes, el método de Euler es menos preciso que el del trapecio o el de Runge-Kutta.&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Resolución en forma de sistema de ecuaciones ==&lt;br /&gt;
&lt;br /&gt;
A continuación vamos a plantear el problema de valor inicial con un sistema de dos ecuaciones equivalente al problema resuelto anteriormente.&lt;br /&gt;
&lt;br /&gt;
Estas ecuaciones serán:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;(PVI)&lt;br /&gt;
\begin{cases}&lt;br /&gt;
    y'(t)=k_1 x(t)y(t) \\&lt;br /&gt;
    x'(t)=-k_1 x(t)y(t) \\&lt;br /&gt;
    \\&lt;br /&gt;
    x(0)=1 \\&lt;br /&gt;
    y(0) = 0.01&lt;br /&gt;
\end{cases}&lt;br /&gt;
\quad t\in[0,10]&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Resolveremos el problema por el método de Euler y por el método de Runge-Kutta, plasmando las soluciones en gráficos.&lt;br /&gt;
&lt;br /&gt;
=== Método de Euler ===&lt;br /&gt;
[[Archivo:SistEuler.png|400px|miniaturadeimagen|derecha|Representación gráfica de las concentraciones de A y B. Resolución del sistema por Euler]]&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
&lt;br /&gt;
%Resolución del sistema por el método de Euler&lt;br /&gt;
&lt;br /&gt;
clear all&lt;br /&gt;
&lt;br /&gt;
%Definimos el vector de la variable independiente, el número de&lt;br /&gt;
%subintervalos y la longitud de paso&lt;br /&gt;
&lt;br /&gt;
t0 = 0;&lt;br /&gt;
tN = 10;&lt;br /&gt;
h = 0.1;&lt;br /&gt;
t = t0:h:tN&lt;br /&gt;
N = (tN-t0)/h;&lt;br /&gt;
&lt;br /&gt;
%Definimos los vectores de las variables dependientes&lt;br /&gt;
&lt;br /&gt;
x = zeros(1, N+1);&lt;br /&gt;
y = zeros(1, N+1);&lt;br /&gt;
&lt;br /&gt;
x(1) = 1;&lt;br /&gt;
y(1) = 0.01;&lt;br /&gt;
&lt;br /&gt;
for i = 1:N&lt;br /&gt;
    &lt;br /&gt;
    x(i+1)=x(i)+h*(-x(i).*y(i));&lt;br /&gt;
    y(i+1)=y(i)+h*(y(i).*x(i));&lt;br /&gt;
    &lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
%Representamos gráficamente las soluciones&lt;br /&gt;
&lt;br /&gt;
hold on&lt;br /&gt;
&lt;br /&gt;
plot(t,x,'b');&lt;br /&gt;
plot(t,y,'r');&lt;br /&gt;
grid on&lt;br /&gt;
&lt;br /&gt;
legend('Sustancia A: x(t)','Sustancia B: y(t)')&lt;br /&gt;
xlabel('Tiempo (s)')&lt;br /&gt;
ylabel('Concentración (mol/l)')&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
hold off&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
}}&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
A continuación tendremos que comprobar si el método es estable.&lt;br /&gt;
Un método es estable cuando el error local es pequeño y además este error no se amplifica a lo largo del tiempo. Para mirar la estabilidad del método de Euler resolveremos el sistema usando &amp;quot;h=0.01&amp;quot; y &amp;quot;h=0.001&amp;quot;. Para ello usaremos el mismo programa anterior simplemente variando h:&lt;br /&gt;
&lt;br /&gt;
=== Método de Runge-Kutta===&lt;br /&gt;
&lt;br /&gt;
El método de resolución numérica de Runge-Kutta, involucra un gran número de parámetros. Para simplificar la implementación de este método en Matlab, el sistema se tratará como una matriz &amp;lt;math&amp;gt;z&amp;lt;/math&amp;gt;. Además, utilizaremos la función ''inline'', con la que declararemos previamente la función algebraica necesaria para el cálculo de los parámetros &amp;lt;math&amp;gt;k_i&amp;lt;/math&amp;gt;, ahorrándonos tener que escribir innumerables veces la correspondiente expresión matemática.&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Primero, expresamos el sistema en forma matricial:&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;(PVI)\begin{cases}&lt;br /&gt;
    x'(t)=-k_1 x(t)y(t) \\&lt;br /&gt;
    y'(t)=k_1 x(t)y(t) \\&lt;br /&gt;
    \\&lt;br /&gt;
    x(0)=1 \\&lt;br /&gt;
    y(0) = 0.01&lt;br /&gt;
\end{cases}\quad t\in[0,10]&lt;br /&gt;
&lt;br /&gt;
\quad \Rightarrow \quad k_1=1\quad \Rightarrow \quad&lt;br /&gt;
&lt;br /&gt;
(PVI)\begin{cases}\vec{z}'(t)=&lt;br /&gt;
   \begin{bmatrix}&lt;br /&gt;
      x'(t) \\&lt;br /&gt;
      y'(t) \\&lt;br /&gt;
   \end{bmatrix}&lt;br /&gt;
=&lt;br /&gt;
      \begin{bmatrix}&lt;br /&gt;
      -x(t)y(t) \\&lt;br /&gt;
      x(t)y(t) \\&lt;br /&gt;
   \end{bmatrix}&lt;br /&gt;
&lt;br /&gt;
 \\ \\ \vec{z}(0)=&lt;br /&gt;
   \begin{bmatrix}&lt;br /&gt;
      x(0) \\&lt;br /&gt;
      y(0) \\&lt;br /&gt;
   \end{bmatrix}&lt;br /&gt;
=&lt;br /&gt;
      \begin{bmatrix}&lt;br /&gt;
      1 \\&lt;br /&gt;
      0.01 \\&lt;br /&gt;
   \end{bmatrix}&lt;br /&gt;
\end{cases}\quad t\in[0,10]&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
A continuación, detallamos la función &amp;lt;math&amp;gt;\vec{F}&amp;lt;/math&amp;gt; de la que dependerán los valores de los parámetros &amp;lt;math&amp;gt;k_i&amp;lt;/math&amp;gt;:&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;\vec{F}(x,y)=\vec{F}(\vec{z})=&lt;br /&gt;
&lt;br /&gt;
\begin{bmatrix}&lt;br /&gt;
    f(\vec{z}) \\&lt;br /&gt;
    g(\vec{z}) \\&lt;br /&gt;
\end{bmatrix}=&lt;br /&gt;
&lt;br /&gt;
\begin{bmatrix}&lt;br /&gt;
    x'(t) \\&lt;br /&gt;
    y'(t) \\&lt;br /&gt;
\end{bmatrix}=&lt;br /&gt;
&lt;br /&gt;
\vec{z}'(t)=&lt;br /&gt;
&lt;br /&gt;
\begin{bmatrix}&lt;br /&gt;
    -x(t)y(t) \\&lt;br /&gt;
    x(t)y(t) \\&lt;br /&gt;
\end{bmatrix}&lt;br /&gt;
\quad \Rightarrow \quad&lt;br /&gt;
&lt;br /&gt;
\begin{cases}&lt;br /&gt;
 [\vec{k_1}] &amp;amp; =  F(\vec{z}_i) \\&lt;br /&gt;
 [\vec{k_2}] &amp;amp; =  F(\vec{z}_i + {1 \over 2}k_1h) \\&lt;br /&gt;
 [\vec{k_3}] &amp;amp; =  F(\vec{z}_i + \frac{1}{2}k_2h) \\&lt;br /&gt;
 [\vec{k_4}] &amp;amp; =  F(\vec{z}_i + k_3h) \\&lt;br /&gt;
\end{cases}\quad [h=0.1]&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Entonces el método RK4 para este problema está dado por la siguiente ecuación:&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;\vec{z}_{i+1} = \vec{z}_{i} + {1 \over 6}h(\vec{k_1}+2\vec{k_2}+2\vec{k_3}+\vec{k_4})&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Mediante el siguiente programa en Matlab calculamos numéricamente la solución y la representamos en un gráfico:&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Archivo:sistema_RK4.png|400px|miniaturadeimagen|derecha|Representación gráfica de las concentraciones de A y B. Resolución del sistema por Runge-Kutta]]&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
%Método de Runge-Kutta&lt;br /&gt;
clc&lt;br /&gt;
&lt;br /&gt;
%Función F=[x'(t); y'(t)]&lt;br /&gt;
F=inline('[-z(1)*z(2);z(1)*z(2)]','z');&lt;br /&gt;
&lt;br /&gt;
%Datos del problema &lt;br /&gt;
x0=1;&lt;br /&gt;
y0=0.01;&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=10;&lt;br /&gt;
h=0.1;&lt;br /&gt;
&lt;br /&gt;
%Vector de variable independiente (t)&lt;br /&gt;
t=t0:h:tN;&lt;br /&gt;
&lt;br /&gt;
%Matriz de variables dependientes z=[x;y]&lt;br /&gt;
z=zeros(2,length(t));&lt;br /&gt;
z(:,1)=[x0;y0];&lt;br /&gt;
&lt;br /&gt;
for i = 1:length(t)-1&lt;br /&gt;
    k1=F(z(:,i));&lt;br /&gt;
    k2=F(z(:,i)+k1.*h/2);&lt;br /&gt;
    k3=F(z(:,i)+k2.*h/2);&lt;br /&gt;
    k4=F(z(:,i)+k3.*h);&lt;br /&gt;
    z(:,i+1)=z(:,i)+h/6.*(k1+2.*k2+2.*k3+k4);&lt;br /&gt;
end&lt;br /&gt;
 &lt;br /&gt;
%Representación gráfica&lt;br /&gt;
hold on&lt;br /&gt;
plot(t,z(1,:))&lt;br /&gt;
plot(t,z(2,:),'r')&lt;br /&gt;
legend('Sustancia A: x(t)','Sustancia B: y(t)')&lt;br /&gt;
xlabel('Tiempo (s)')&lt;br /&gt;
ylabel('Concentración (mol/l)')&lt;br /&gt;
grid on&lt;br /&gt;
%hold off&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
== Interpretación de las gráficas ==&lt;br /&gt;
&lt;br /&gt;
Podemos observar por los resultados obtenidos que la velocidad de aparición de B es igual a la velocidad de desaparición de A (como dicta el principio de conservación de la masa), que A acaba desapareciendo prácticamente por completo y que la concentración de B termina por estabilizarse alrededor de 1 mol/l. Ambos compuestos alcanzan sus los extremos de sus concentraciones en el mismo instante de tiempo&lt;br /&gt;
&lt;br /&gt;
También cabe destacar que cuando el tiempo transcurrido alcanza 4,5 segundos las concentraciones de ambos compuestos son las mismas.&lt;br /&gt;
&lt;br /&gt;
= Reacción II =&lt;br /&gt;
&lt;br /&gt;
En este apartado vamos a estudiar la reacción propuesta por Alfred J. Lotka en 1920, que es la siguiente:&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt; A + X →_{k1} 2X;&amp;lt;/math&amp;gt;     :&amp;lt;math&amp;gt; X + Y →_{k2} 2Y;&amp;lt;/math&amp;gt;     :&amp;lt;math&amp;gt;Y →_{k3} 2B  &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Como se puede observar, se trata de una reacción compleja integrada por 3 reacciones simples (las dos primeras autocatalíticas) en las que intervienen un total de 4 compuestos, A, B, X e Y. Siguiendo el desarrollo de la reacción, es lógico suponer que A se agotará al comienzo de la reacción, que los máximos de concentración de X e Y se darán en los estados intermedios y que al final el compuesto B será el único restante, siendo el producto final de la reacción.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Interpretación del problema y deducción de las ecuaciones diferenciales ==&lt;br /&gt;
&lt;br /&gt;
Para averiguar cómo evolucionan las concentraciones de los cuatro compuestos durante el desarrollo de la reacción necesitaremos obtener cuatro ecuaciones diferenciales. Para ello nos volveremos a basar en los principios físicos que ya empleamos en la anterior reacción. Definimos A(t), x(t), y(t), y B(t) (A, x, y, B; para ahorrar notación) a las concentraciones de A, X, Y, y B, respectivamente. &lt;br /&gt;
&lt;br /&gt;
En primer lugar aplicamos el Principio de Conservación de la masa, que establece que la suma de las concentraciones de los compuestos es constante (no desaparece masa en el proceso), lo que derivando nos indica que:&lt;br /&gt;
&lt;br /&gt;
: &amp;lt;math&amp;gt; A' + y' + y' + B' = 0 \quad\quad(I)&amp;lt;/math&amp;gt;       &lt;br /&gt;
&lt;br /&gt;
A continuación aplicaremos la Ley de Acción de Masas (velocidad de reacción proporcional al producto de la concentración de los reactivos).&lt;br /&gt;
&lt;br /&gt;
Aplicando esta ley a la última reacción simple obtenemos que: &lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;B'=k_3y \quad\quad(II)&amp;lt;/math&amp;gt;        &lt;br /&gt;
&lt;br /&gt;
En el caso de las concentraciones de X e Y las expresiones resultantes son algo más complicadas ya que estos dos compuestos actúan como reactivos y productos en más de una reacción simple, por lo que la variación de sus concentraciones será la suma de las variaciones de las reacciones en las que aparezcan:&lt;br /&gt;
&lt;br /&gt;
: &amp;lt;math&amp;gt; x' = x'_{1} + x'_{2} → x' = k_{1}Ax - k{2}xy \quad\quad(III)&amp;lt;/math&amp;gt;        &lt;br /&gt;
: &amp;lt;math&amp;gt; y' = y'_{2} + y'_{3} → y' = k_{2}xy − k_3{y} \quad\quad(IV)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Por último sustituimos (II), (III) y (IV) en (I) obteniendo: &lt;br /&gt;
&lt;br /&gt;
: &amp;lt;math&amp;gt; A' + k_{1}Ax - k{2}xy + k_{2}xy − k_3{y}+ k_3y= 0 : &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
De donde obtenemos que:&lt;br /&gt;
&lt;br /&gt;
: &amp;lt;math&amp;gt; A' = -k_{1}Ax &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Ahora que ya tenemos las variaciones de concentración de los compuestos en función de las concentraciones podemos aplicar métodos numéricos que nos lleven a una solución aproximada.&lt;br /&gt;
&lt;br /&gt;
== Resolución numérica del sistema de ecuaciones ==&lt;br /&gt;
&lt;br /&gt;
Una vez obtenidas las ecuaciones y conociendo las condiciones iniciales y los valores de las constantes podemos plantear el problema de valor inicial para luego resolverlo.&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;(PVI)&lt;br /&gt;
\begin{cases}&lt;br /&gt;
    A' = -k_{1}Ax\\&lt;br /&gt;
    x' = k_{1}Ax - k{2}xy\\&lt;br /&gt;
    y' = k_{2}xy − k_3{y}\\&lt;br /&gt;
    B'=k_3y \\&lt;br /&gt;
\\&lt;br /&gt;
    A(0)=5  \\&lt;br /&gt;
    x(0)=5*10^{-4} \\&lt;br /&gt;
    y(0)=10^{-5}\\&lt;br /&gt;
    B(0)=0 \\&lt;br /&gt;
\end{cases}&lt;br /&gt;
\quad t\in[0,200]&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Siendo &amp;lt;math&amp;gt; k_{1}=K_{2}=2k_{3}=0.1 &amp;lt;/math&amp;gt; y las unidades de la concentración mol/l.&lt;br /&gt;
&lt;br /&gt;
=== Método de Euler ===&lt;br /&gt;
&lt;br /&gt;
Aplicamos el método de Euler de forma análoga a como lo hicimos en [[Reacciones_con_autocatálisis._Grupo_D12#Método_de_Euler_2|apartado 2.5.1]]&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Euler lotka0.01.png|400px|miniaturadeimagen|derecha|Representación gráfica de las concentraciones de A, B, X, e Y a lo largo del tiempo. Resoluciónd delsistema por el método de Euler con longitud de paso h=0.01]] &lt;br /&gt;
[[Archivo:Euler lotka0.001.png|400px|miniaturadeimagen|derecha|Representación gráfica de las concentraciones de A, B, X, e Y a lo largo del tiempo. Resoluciónd delsistema por el método de Euler con longitud de paso h=0.001]]&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
&lt;br /&gt;
%Resolución del sistema de la reacción de Lotka por el método de Euler&lt;br /&gt;
&lt;br /&gt;
clear all&lt;br /&gt;
&lt;br /&gt;
%Definimos la variable independiente y establecemos los datos del problema&lt;br /&gt;
%de valor inicial. Para la longitud de paso h introducimos en primer lugar&lt;br /&gt;
%0.01 y luego 0.001&lt;br /&gt;
&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=200;&lt;br /&gt;
h= input('Introduzca una longitud de paso ');&lt;br /&gt;
t = t0:h:tN;&lt;br /&gt;
N=(tN-t0)/h;&lt;br /&gt;
k1 = 0.1;&lt;br /&gt;
k2 = 0.1;&lt;br /&gt;
k3 = 0.05;&lt;br /&gt;
A0 = 5;&lt;br /&gt;
B0 = 0;&lt;br /&gt;
X0 = 5*10^(-4);&lt;br /&gt;
Y0 = 10^(-5);&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
%Definimos las variables dependientes.&lt;br /&gt;
&lt;br /&gt;
A = zeros(1, N-1);&lt;br /&gt;
B = A;&lt;br /&gt;
X = A;&lt;br /&gt;
Y = A;&lt;br /&gt;
&lt;br /&gt;
A(1) = A0;&lt;br /&gt;
B(1) = B0;&lt;br /&gt;
X(1) = X0;&lt;br /&gt;
Y(1) = Y0;&lt;br /&gt;
&lt;br /&gt;
for i = 1:N&lt;br /&gt;
    &lt;br /&gt;
    X(i+1) = X(i) + h*(k1*A(i)*X(i)-k2*Y(i)*X(i));&lt;br /&gt;
    Y(i+1)=Y(i)+h.*(k2.*X(i).*Y(i)-k3.*Y(i));&lt;br /&gt;
    B(i+1) = B(i) + h*(k3*Y(i));&lt;br /&gt;
    A(i+1) = A(i) + h*(-k1*A(i)*X(i));&lt;br /&gt;
   &lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
%Representamos gráficamente la solución&lt;br /&gt;
&lt;br /&gt;
hold on&lt;br /&gt;
&lt;br /&gt;
plot (t,A,'b')&lt;br /&gt;
plot(t, X, 'r')&lt;br /&gt;
plot(t,Y, 'g')&lt;br /&gt;
plot(t, B, 'm')&lt;br /&gt;
legend('Sustancia A: A(t)','Sustancia X: x(t)','Sustancia Y: y(t)','Sustancia B: B(t)','Location','Best')&lt;br /&gt;
xlabel('Tiempo (s)')&lt;br /&gt;
ylabel('Concentración (mol/l)')&lt;br /&gt;
grid on&lt;br /&gt;
&lt;br /&gt;
hold off&lt;br /&gt;
&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
=== Método de Heun ===&lt;br /&gt;
&lt;br /&gt;
Si bien el método de resolución numérica de Heun no involucra un número de parámetros tan notable como el método de Runge-Kutta, en este caso tenemos un sistema de 4 ecuaciones diferenciales, por lo que, en aras de simplificar, utilizaremos el mismo criterio que en el [[Reacciones_con_autocatálisis._Grupo_D12#Método_de_Runge-Kutta_2|apartado 2.5.2]].: El sistema se tratará como una matriz &amp;lt;math&amp;gt;z&amp;lt;/math&amp;gt;, y para la obtención de los parámetros &amp;lt;math&amp;gt;k_i&amp;lt;/math&amp;gt; utilizaremos la función ''inline'', con la que declararemos previamente las expresiones necesarias para el cálculo de los parámetros &amp;lt;math&amp;gt;k_i&amp;lt;/math&amp;gt;.&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Primero, expresamos el sistema en forma matricial:&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;(PVI)\begin{cases}&lt;br /&gt;
A'(t)=-k_1 A(t)x(t) \\&lt;br /&gt;
x'(t)=k_1 A(t)x(t)-k_2 x(t)y(t) \\&lt;br /&gt;
y'(t)=k_2 x(t)y(t)-k_3 y(t) \\&lt;br /&gt;
B'(t)=k_3 x(t)y(t) \\ \\&lt;br /&gt;
A(0)=5 \\&lt;br /&gt;
x(0)=5·10^{-4} \\&lt;br /&gt;
y(0)=10^{-5} \\&lt;br /&gt;
B(0) = 0&lt;br /&gt;
\end{cases}\quad t\in[0,200]&lt;br /&gt;
&lt;br /&gt;
\quad \Rightarrow \quad&lt;br /&gt;
&lt;br /&gt;
\begin{cases}&lt;br /&gt;
k_1=0.1 \\&lt;br /&gt;
k_2=0.1 \\&lt;br /&gt;
k_3=0.05 \\&lt;br /&gt;
&lt;br /&gt;
\end{cases}&lt;br /&gt;
&lt;br /&gt;
\quad \Rightarrow \quad&lt;br /&gt;
&lt;br /&gt;
(PVI)\begin{cases}\vec{z}'(t)=&lt;br /&gt;
   \begin{bmatrix}&lt;br /&gt;
      A'(t) \\&lt;br /&gt;
      x'(t) \\&lt;br /&gt;
      y'(t) \\&lt;br /&gt;
      B'(t) \\&lt;br /&gt;
   \end{bmatrix}&lt;br /&gt;
=&lt;br /&gt;
      \begin{bmatrix}&lt;br /&gt;
      -0.1 A(t)x(t) \\&lt;br /&gt;
      0.1 A(t)x(t)-0.1 x(t)y(t) \\&lt;br /&gt;
      0.1 x(t)y(t)-0.05 y(t) \\&lt;br /&gt;
      0.05 y(t)x(t)\\&lt;br /&gt;
   \end{bmatrix}&lt;br /&gt;
&lt;br /&gt;
 \\ \\ \vec{z}(0)=&lt;br /&gt;
   \begin{bmatrix}&lt;br /&gt;
      A(0) \\&lt;br /&gt;
      x(0) \\&lt;br /&gt;
      y(0) \\&lt;br /&gt;
      B(0) \\&lt;br /&gt;
   \end{bmatrix}&lt;br /&gt;
=&lt;br /&gt;
      \begin{bmatrix}&lt;br /&gt;
      5 \\&lt;br /&gt;
      5·10^{-4} \\&lt;br /&gt;
      10^{-5} \\&lt;br /&gt;
      0&lt;br /&gt;
   \end{bmatrix}&lt;br /&gt;
\end{cases}\quad t\in[0,200]&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
A continuación, detallamos la función &amp;lt;math&amp;gt;\vec{F}&amp;lt;/math&amp;gt; de la que dependerán los valores de los parámetros &amp;lt;math&amp;gt;k_i&amp;lt;/math&amp;gt;:&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;\vec{F}(A,x,y,B)=\vec{F}(\vec{z})=&lt;br /&gt;
\begin{bmatrix}&lt;br /&gt;
    f(\vec{z}) \\ &lt;br /&gt;
    g(\vec{z}) \\ &lt;br /&gt;
    h(\vec{z}) \\ &lt;br /&gt;
    i(\vec{z}) \\ &lt;br /&gt;
\end{bmatrix}=&lt;br /&gt;
\begin{bmatrix}&lt;br /&gt;
    A'(t) \\&lt;br /&gt;
    x'(t) \\&lt;br /&gt;
    y'(t) \\&lt;br /&gt;
    B'(t) \\&lt;br /&gt;
\end{bmatrix}=&lt;br /&gt;
\vec{z}'(t)=&lt;br /&gt;
      \begin{bmatrix}&lt;br /&gt;
      -0.1 A(t)x(t) \\&lt;br /&gt;
      0.1 A(t)x(t)-0.1 x(t)y(t) \\&lt;br /&gt;
      0.1 x(t)y(t)-0.05 y(t) \\&lt;br /&gt;
      0.05 y(t)x(t)\\&lt;br /&gt;
   \end{bmatrix}&lt;br /&gt;
&lt;br /&gt;
\quad \Rightarrow \quad &lt;br /&gt;
&lt;br /&gt;
\begin{cases}&lt;br /&gt;
 [\vec{k_1}] &amp;amp; =  F(\vec{z}_i) \\&lt;br /&gt;
 [\vec{k_2}] &amp;amp; =  F(\vec{z}_i + {1 \over 2}k_1h) \\&lt;br /&gt;
\end{cases}\quad [h=0.01]&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Entonces el método de Heun para este problema está dado por la siguiente ecuación:&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;\vec{z}_{i+1} = \vec{z}_{i} + {1 \over 2}h(\vec{k_1}+\vec{k_2})&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Mediante el siguiente programa en Matlab calculamos numéricamente la solución y la representamos en un gráfico:&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Archivo:AXYBRK4.png|400px|miniaturadeimagen|derecha|Representación gráfica de las concentraciones de A,X,Y y B. Resolución del sistema por Heun]]&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
%Método de Heun&lt;br /&gt;
clc&lt;br /&gt;
&lt;br /&gt;
%Función F=[A'(t);x'(t); y'(t);B'(t)]&lt;br /&gt;
F=inline('0.1.*[-z(1)*z(2);z(1)*z(2)-z(2)*z(3);z(2)*z(3)-z(3)/2;z(3)/2]','z');&lt;br /&gt;
&lt;br /&gt;
%Datos del problema&lt;br /&gt;
A0=5;&lt;br /&gt;
x0=5*10^-4;&lt;br /&gt;
y0=10^(-5);&lt;br /&gt;
B0=0;&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=200;&lt;br /&gt;
h=0.1;&lt;br /&gt;
&lt;br /&gt;
%Vector de variable independiente (t)&lt;br /&gt;
t=t0:h:tN;&lt;br /&gt;
&lt;br /&gt;
%Matriz de variables dependientes z=[A;x;y;B]&lt;br /&gt;
z=zeros(4,length(t));&lt;br /&gt;
z(:,1)=[A0;x0;y0;B0];&lt;br /&gt;
&lt;br /&gt;
for i = 1:length(t)-1&lt;br /&gt;
    k1=F(z(:,i));&lt;br /&gt;
    k2=F(z(:,i)+k1.*h/2);&lt;br /&gt;
    z(:,i+1)=z(:,i)+h/2.*(k1+k2);&lt;br /&gt;
end&lt;br /&gt;
 &lt;br /&gt;
%Representación gráfica&lt;br /&gt;
hold on&lt;br /&gt;
plot(t,z(1,:),'b')&lt;br /&gt;
plot(t,z(2,:),'r')&lt;br /&gt;
plot(t,z(3,:),'g')&lt;br /&gt;
plot(t,z(4,:),'m')&lt;br /&gt;
legend('Sustancia A: A(t)','Sustancia X: x(t)','Sustancia Y: y(t)','Sustancia B: B(t)','Location','Best')&lt;br /&gt;
xlabel('Tiempo (s)')&lt;br /&gt;
ylabel('Concentración (mol/l)')&lt;br /&gt;
grid on&lt;br /&gt;
hold off&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
== Interpretación de las gráficas == &lt;br /&gt;
 &lt;br /&gt;
El proceso comienza con el predominio absoluto del compuesto A en la concentración total, siendo la presencia de los otros tres compuestos despreciable. Durante los primeros segundos la situación apenas cambia, pero tras los diez primeros segundos la concentración de A cae bruscamente mientras que la concentración de X aumenta a la misma velocidad; antes de llegar a los veinte segundos transcurridos las concentraciones de ambos compuestos se igualan y otros quince segundos más tarde el compuesto A  prácticamente ha desaparecido y el X ha alcanzado su concentración máxima (5 mol/litro).&lt;br /&gt;
&lt;br /&gt;
Es entonces cuando concluye la primera reacción y comienzan las otras dos, al no haber más compuesto A que cree compuesto X. La velocidad de aparición de Y es inicialmente mayor que la de B, superando al poco tiempo en concentración a la sustancia X. Sin embargo, llega un momento en el que la concentración de X es tan baja que se ralentiza la creación de Y y pronto empieza a disminuir su concentración tras alcanzar un máximo en torno a los 56 segundos, perdiendo peso la segunda reacción en beneficio de la tercera.&lt;br /&gt;
&lt;br /&gt;
Tras los 60 segundos de reacción el compuesto X pasa a tener una concentración despreciable, por lo que la única reacción simple que se sigue desarrollando es la tercera, destruyéndose reactivo Y y creándose producto B. La concentración de Y va reduciéndose paulatinamente hasta que en torno a los 160 segundos de reacción alcanza niveles insignificantes mientras que la concentración de B alcanza su máximo de 5 mol/litro.&lt;br /&gt;
&lt;br /&gt;
Es interesante observar que en todo momento se cumple el Principio de Conservación de la masa: la suma en cualquier momento de las concentraciones de las sustancias es 5 mol /litro. Esto es fácilmente comprobable en los momentos en que las concentraciones de A, X y B alcanzan su máximo de 5 mol/litro y el resto de concentraciones son nulas o despreciables. &lt;br /&gt;
[[Categoría:Ecuaciones Diferenciales]]&lt;br /&gt;
[[Categoría:ED14/15]]&lt;br /&gt;
[[Categoría:Trabajos 2014-15]]&lt;/div&gt;</summary>
		<author><name>Javier Ruiz de Galarreta López</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Reacciones_con_autocat%C3%A1lisis._Grupo_D12&amp;diff=27443</id>
		<title>Reacciones con autocatálisis. Grupo D12</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Reacciones_con_autocat%C3%A1lisis._Grupo_D12&amp;diff=27443"/>
				<updated>2015-03-06T09:42:54Z</updated>
		
		<summary type="html">&lt;p&gt;Javier Ruiz de Galarreta López: /* Resolución numérica del sistema de ecuaciones */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{ TrabajoED | Reacciones con autocatálisis. Grupo D12 | [[:Categoría:Ecuaciones Diferenciales|Ecuaciones Diferenciales]]|[[:Categoría:ED14/15|Curso 2014-15]] | Javier Ruiz de Galarreta López, Argimiro Martínez López, Eduardo Moyano García, Alberto Rodríguez Ruiz. }}&lt;br /&gt;
&lt;br /&gt;
= Introducción: objetivos y metodología =&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
El objetivo de este trabajo es estudiar las concentraciones de los reactivos y productos de una reacción química a lo largo de la evolución en el tiempo de dicha reacción. Para ello modelizaremos el proceso empleando ecuaciones diferenciales y teniendo en cuenta la Ley de Acción de Masas y el Principio de Conservación de la materia.&lt;br /&gt;
&lt;br /&gt;
Al ser las ecuaciones y sistemas que se nos presentan de difícil resolución analítica, utilizaremos el programa informático Matlab para resolverlos mediante métodos numéricos como el de Euler, el del Trapecio, el de Runge-Kutta y el de Heun. &lt;br /&gt;
&lt;br /&gt;
Plasmaremos las soluciones en gráficos que nos permitirán dar una interpretación físico química a los resultados.&lt;br /&gt;
&lt;br /&gt;
= Reacción I =&lt;br /&gt;
&lt;br /&gt;
En primer lugar consideramos una reacción química irreversible en una solución bien mezclada, que se desarrolla para un volumen y una temperatura constantes, y en la que uno de los componentes (B, en este caso), hace de efecto catalítico.&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt; A + B →_{k1} 2B  &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Para desarrollar nuestro análisis nos apoyaremos en dos leyes físico químicas:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''Ley de acción de masas''': Enunciada por Guldberg y Waage en 1864, establece, entre otras cosas, que  la velocidad de&lt;br /&gt;
reacción es proporcional al producto de las concentraciones de los reactivos.&lt;br /&gt;
&lt;br /&gt;
'''Principio de conservación de la masa''': Establece que en una reacción química ordinaria la masa permanece constante, siendo la masa consumida de los reactivos igual a la masa obtenida de los productos. Fue elaborada independientemente por Míjail Lomonósov en 1745 y Antoine Lavoisier en 1785.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Interpretación del problema y deducción de las ecuaciones diferenciales ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Para hallar las ecuaciones diferenciales que nos describan cómo se desarrolla la reacción en el tiempo nos basaremos en las dos leyes enunciadas anteriormente. En primer lugar, definimos nuestra variable independiente como el tiempo &amp;lt;math&amp;gt;t&amp;lt;/math&amp;gt; en segundos. Las dos variables dependientes serán las concentraciones de los compuestos A y B, que denominaremos &amp;lt;math&amp;gt;x(t)&amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt;y(t)&amp;lt;/math&amp;gt;, ambas expresadas en mol/l. &lt;br /&gt;
&lt;br /&gt;
El principio de conservación de la masa expone que la suma de las concentraciones de los reactivos y los productos es constante. Esto equivale, derivando la expresión &amp;lt;math&amp;gt;x(t)+y(t)=cte&amp;lt;/math&amp;gt;, a que  desaparece tanto reactivo como producto aparece, o lo que es lo mismo, que la velocidad de aparición del producto es igual a la velocidad de desaparición (velocidad de aparición negativa) del reactivo:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;x'(t)=-y'(t)&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
La otra ecuación que necesitamos la obtenemos directamente de aplicar la Ley de acción de masas, que establece que la velocidad de la reacción (la velocidad a la que aparece el producto o desaparece el reactivo) es igual al producto de las concentraciones por una constante.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;y'(t)=k_1x(t)y(t)&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Obtención del problema de valor inicial ==&lt;br /&gt;
Una vez demostrado el origen de las ecuaciones (1) y (2) en el apartado anterior, obtendremos el problema de valor inicial (PVI) mediante las operaciones detalladas a continuación:&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;x'(t)+y'(t)=0\quad\quad(1)&amp;lt;/math&amp;gt;&lt;br /&gt;
:&amp;lt;math&amp;gt;y'(t)=k_1x(t)y(t)\quad\quad(2)&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Integrando (1) obtenemos (3):&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
:&amp;lt;math&amp;gt;\int_\mathbb{D} (\frac{dx(t)}{dt} + \frac{dy(t)}{dt})\,dt =\int_\mathbb{D} 0\,dt \quad \Rightarrow \quad x(t)+y(t)=k_2\quad \Rightarrow \quad x(t)=k_2-y(t)\quad\quad(3)&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Sustituyendo (3) en (2), obtenemos (4):&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;y'(t)=k_1x(t)y(t)\quad \Rightarrow \quad y'(t)=k_1(k_2-y(t))y(t)\quad \Rightarrow \quad y'(t)=k_1k_2y(t)-k_1y^2(t)\quad\quad(4)&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Conocemos las concentraciones iniciales de A y de B, por lo que podemos obtener el valor de la constante k&amp;lt;sub&amp;gt;2&amp;lt;/sub&amp;gt;:&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;[A]:\quad x(0)=1 mol/l;\quad\quad [B]:\quad y(0)=0,01 mol/l&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;x(t)+y(t)=k_2\quad \Rightarrow \quad x(0)+y(0)=k_2\quad \Rightarrow \quad 1+0,01=k_2\quad \Rightarrow \quad k_2=1,01&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Por último, conocemos también el valor de k&amp;lt;sub&amp;gt;1&amp;lt;/sub&amp;gt;, por lo que podremos plantear a continuación el correspondiente PVI:&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;k_1=1&amp;lt;/math&amp;gt;&lt;br /&gt;
:&amp;lt;math&amp;gt;(PVI)\begin{cases}y'(t)=1,01y(t)-y^2(t) \\ \\&lt;br /&gt;
y(0) = 0,01 \end{cases}\quad (t,y)\in[0,10]\times\mathbb{R}&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Unicidad de la solución ==&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Existencia-y-unicidad.png|200px|miniaturadeimagen|derecha|Intersección B con dominio]]&lt;br /&gt;
&lt;br /&gt;
Aplicamos a continuación el Teorema de Existencia y Unicidad:&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Sea &amp;lt;math&amp;gt;f(t,y)=y'(t) \Rightarrow f(t,y)=1.01y(t)-y^2(t)\quad&amp;lt;/math&amp;gt;, y &amp;lt;math&amp;gt;\quad\frac{\partial }{\partial y} f(t,y) = 1.01-2y(t)&amp;lt;/math&amp;gt;.&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
Y sea &amp;lt;math&amp;gt;B[(t_0,y_0),r],\quad r&amp;gt;0,\quad en (t_0,y_0)=(0,0.01)&amp;lt;/math&amp;gt;.&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;f(t,y)&amp;lt;/math&amp;gt; es continua en &amp;lt;math&amp;gt; \mathbb{B}\cap \mathbb{D}\quad \Rightarrow \quad \exists  y(t)\quad /\quad y'(t)=1,01y(t)-y^2(t)&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;math&amp;gt;\frac{\partial }{\partial y} f(t,y)&amp;lt;/math&amp;gt; es continua en &amp;lt;math&amp;gt; \mathbb{B}\cap \mathbb{D}\quad \Rightarrow \quad \exists !  y(t)\quad /\quad y'(t)=1,01y(t)-y^2(t)&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Con lo que queda demostrado que el (PVI) tiene solución y además esta es única.&lt;br /&gt;
&lt;br /&gt;
== Resolución numérica del problema de valor inicial ==&lt;br /&gt;
&lt;br /&gt;
En este apartado resolveremos el problema de valor inicial planteado anteriormente con tres métodos de integración numérica: el método de Euler, el método del Trapecio y el método de Runge-Kutta de orden 4.&lt;br /&gt;
&lt;br /&gt;
=== Método de Euler ===&lt;br /&gt;
&lt;br /&gt;
El método de Euler, llamado así en honor al matemático Leonhard Euler, es un procedimiento de integración numérica. Su expresión matemática es: &lt;br /&gt;
&amp;lt;math&amp;gt;  PVI = &lt;br /&gt;
   \left \{&lt;br /&gt;
      \begin{array}{rcl}y_0\\&lt;br /&gt;
           y_{n+1} = y_n + h*f(t_n,y_n)\\ &lt;br /&gt;
      \end{array}&lt;br /&gt;
   \right .&lt;br /&gt;
   &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
A continuación emplearemos esta expresión en un programa de Matlab para obtener una aproximación de las soluciones. El código de dicho programa es el siguiente.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Eulergrafica.png|400px|miniaturadeimagen|derecha|Representación gráfica y(t). Método de Euler]]&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
%Método de Euler&lt;br /&gt;
clc&lt;br /&gt;
&lt;br /&gt;
%Datos iniciales&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=4;&lt;br /&gt;
y0=0.01;&lt;br /&gt;
h=0.1;&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=10;&lt;br /&gt;
&lt;br /&gt;
%Cálculo de subintervalos&lt;br /&gt;
N=round((tN-t0)/h);&lt;br /&gt;
t=t0:h:tN;&lt;br /&gt;
&lt;br /&gt;
%Creamos el vector donde vamos a guardar las soluciones&lt;br /&gt;
y=zeros(1,N+1);&lt;br /&gt;
y(1)=y0;&lt;br /&gt;
&lt;br /&gt;
%Euler&lt;br /&gt;
for i=1:N;&lt;br /&gt;
    y(i+1)=y(i)+h*(1.01*y(i)-(y(i)).^2);&lt;br /&gt;
end&lt;br /&gt;
%Tabla de Resultados&lt;br /&gt;
[t',y']&lt;br /&gt;
x=1.01-y;&lt;br /&gt;
hold on &lt;br /&gt;
plot(t,y,'r')&lt;br /&gt;
plot(t,x,'b')&lt;br /&gt;
hold off&lt;br /&gt;
legend('Sustancia B: y(t)','Sustancia A: x(t)','Location','best');&lt;br /&gt;
xlabel('Tiempo (s)')&lt;br /&gt;
ylabel('Concentración (mol/l)')&lt;br /&gt;
grid on&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
=== Método del trapecio ===&lt;br /&gt;
&amp;lt;math&amp;gt;  PVI = &lt;br /&gt;
   \left \{&lt;br /&gt;
      \begin{array}{rcl}&lt;br /&gt;
          y_0\\&lt;br /&gt;
           y_{n+1} = y_n + \frac{h}{2}*f(t_n,y_n)\\ &lt;br /&gt;
      \end{array}&lt;br /&gt;
   \right .&lt;br /&gt;
   &amp;lt;/math&amp;gt;&lt;br /&gt;
[[Archivo:Trapeciografica.png|400px|miniaturadeimagen|derecha|Representación gráfica y(t). Método del Trapecio]]&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
%Método del Trapecio&lt;br /&gt;
clc&lt;br /&gt;
&lt;br /&gt;
%Datos iniciales&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=4;&lt;br /&gt;
y0=0.01;&lt;br /&gt;
h=0.1;&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=10;&lt;br /&gt;
&lt;br /&gt;
%Cálculo de subintervalos&lt;br /&gt;
N=round((tN-t0)/h);&lt;br /&gt;
t=t0:h:tN;&lt;br /&gt;
&lt;br /&gt;
%Creamos el vector donde vamos a guardar las soluciones&lt;br /&gt;
y=zeros(1,N+1);&lt;br /&gt;
y(1)=y0;&lt;br /&gt;
&lt;br /&gt;
for i=1:N&lt;br /&gt;
y(i+1)=(((1-(h/2)*1.01)-sqrt(((1-(h/2)*1.01)^2)+4*(h/2)*((1+(h/2)*1.01)*y(i)-(h/2)*(y(i))^2)))/-h);&lt;br /&gt;
end&lt;br /&gt;
%Sacamos la tabla de resultados&lt;br /&gt;
[t',y']&lt;br /&gt;
x=1.01-y;&lt;br /&gt;
%Gráfico&lt;br /&gt;
hold on&lt;br /&gt;
plot(t,y,'r')&lt;br /&gt;
plot(t,x,'b')&lt;br /&gt;
legend('Sustancia B: y(t)','Sustancia A: x(t)','Location','best');&lt;br /&gt;
xlabel('Tiempo (s)')&lt;br /&gt;
ylabel('Concentración (mol/l)')&lt;br /&gt;
grid on&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
=== Método de Runge-Kutta ===&lt;br /&gt;
&lt;br /&gt;
El método de resolución numérica de Runge-Kutta, involucra un gran número de parámetros. Para simplificar la implementación de este método en Matlab, utilizaremos la función ''inline'', con la que declararemos previamente la función algebraica necesaria para el cálculo de los parámetros &amp;lt;math&amp;gt;k_i&amp;lt;/math&amp;gt;, ahorrándonos tener que escribir innumerables veces la correspondiente expresión matemática.&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
A continuación, detallamos la función &amp;lt;math&amp;gt;f(y)&amp;lt;/math&amp;gt; de la que dependerán los valores de los parámetros &amp;lt;math&amp;gt;k_i&amp;lt;/math&amp;gt;:&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;f(y)=y'(t)=1.01y(t)-y(t)^2&lt;br /&gt;
&lt;br /&gt;
\quad \Rightarrow \quad&lt;br /&gt;
&lt;br /&gt;
\begin{cases}&lt;br /&gt;
 k_1 &amp;amp; =  f(y_i) \\&lt;br /&gt;
 k_2 &amp;amp; =  f(y_i + {1 \over 2}k_1h) \\&lt;br /&gt;
 k_3 &amp;amp; =  f(y_i + \frac{1}{2}k_2h) \\&lt;br /&gt;
 k_4 &amp;amp; =  f(y_i + k_3h) \\&lt;br /&gt;
\end{cases}\quad [h=0.1]&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Entonces el método RK4 para este problema está dado por la siguiente ecuación:&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;y_{i+1} = y_{i} + {1 \over 6}h(k_1+2k_2+2k_3+k_4)&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Mediante el siguiente programa en Matlab calculamos numéricamente la solución y la representamos en un gráfico:&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Archivo:RK4II.png|400px|miniaturadeimagen|derecha|Representación gráfica y(t). Método Runge-Kutta]]&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
%Método de Runge-Kutta&lt;br /&gt;
clc&lt;br /&gt;
&lt;br /&gt;
%Función f(t)=y'(t)&lt;br /&gt;
fy=inline('1.01*y-y^2','y');&lt;br /&gt;
&lt;br /&gt;
%Datos del problema&lt;br /&gt;
y0=0.01;&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=10;&lt;br /&gt;
h=0.1;&lt;br /&gt;
&lt;br /&gt;
%Variable independiente (t)&lt;br /&gt;
t=t0:h:tN;&lt;br /&gt;
&lt;br /&gt;
%Variable dependiente (y)&lt;br /&gt;
y=zeros(1,length(t));&lt;br /&gt;
y(1)=y0;&lt;br /&gt;
&lt;br /&gt;
for i=1:length(t)-1&lt;br /&gt;
    k1=fy(y(i));&lt;br /&gt;
    k2=fy(y(i)+k1/2*h);&lt;br /&gt;
    k3=fy(y(i)+k2/2*h);&lt;br /&gt;
    k4=fy(y(i)+k3*h);&lt;br /&gt;
    y(i+1)=y(i)+h/6*(k1+2*k2+2*k3+k4);&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
%Variable dependiente (x)&lt;br /&gt;
x=1.01-y;&lt;br /&gt;
&lt;br /&gt;
%Representación gráfica&lt;br /&gt;
hold on&lt;br /&gt;
plot(t,x,'b')&lt;br /&gt;
plot(t,y,'r')&lt;br /&gt;
legend('Sustancia A: x(t)','Sustancia B: y(t)')&lt;br /&gt;
xlabel('Tiempo (s)')&lt;br /&gt;
ylabel('Concentración (mol/l)')&lt;br /&gt;
grid on&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
=== Comparación de métodos===&lt;br /&gt;
&lt;br /&gt;
Podemos observar fácilmente que las gráficas obtenidas con los diferentes métodos son iguales a primera vista. Sin embargo, superponiéndolas queda patente que no son exactamente iguales debido a que los métodos no poseen la misma precisión y , al operar todos con la misma longitud de paso, unos aproximan la solución exacta mejor que otros. Así se observa en estas imágenes:&lt;br /&gt;
&lt;br /&gt;
[[Archivo:comparativa1.jpg|400px|miniaturadeimagen|izquierda|Comparación de métodos]]&lt;br /&gt;
[[Archivo:comparativa2.jpg|400px|miniaturadeimagen|derecha|Comparación de métodos]]&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
Como podemos comprobar en las imágenes, el método de Euler es menos preciso que el del trapecio o el de Runge-Kutta.&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Resolución en forma de sistema de ecuaciones ==&lt;br /&gt;
&lt;br /&gt;
A continuación vamos a plantear el problema de valor inicial con un sistema de dos ecuaciones equivalente al problema resuelto anteriormente.&lt;br /&gt;
&lt;br /&gt;
Estas ecuaciones serán:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;(PVI)&lt;br /&gt;
\begin{cases}&lt;br /&gt;
    y'(t)=k_1 x(t)y(t) \\&lt;br /&gt;
    x'(t)=-k_1 x(t)y(t) \\&lt;br /&gt;
    \\&lt;br /&gt;
    x(0)=1 \\&lt;br /&gt;
    y(0) = 0.01&lt;br /&gt;
\end{cases}&lt;br /&gt;
\quad t\in[0,10]&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Resolveremos el problema por el método de Euler y por el método de Runge-Kutta, plasmando las soluciones en gráficos.&lt;br /&gt;
&lt;br /&gt;
=== Método de Euler ===&lt;br /&gt;
[[Archivo:SistEuler.png|400px|miniaturadeimagen|derecha|Representación gráfica de las concentraciones de A y B. Resolución del sistema por Euler]]&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
&lt;br /&gt;
%Resolución del sistema por el método de Euler&lt;br /&gt;
&lt;br /&gt;
clear all&lt;br /&gt;
&lt;br /&gt;
%Definimos el vector de la variable independiente, el número de&lt;br /&gt;
%subintervalos y la longitud de paso&lt;br /&gt;
&lt;br /&gt;
t0 = 0;&lt;br /&gt;
tN = 10;&lt;br /&gt;
h = 0.1;&lt;br /&gt;
t = t0:h:tN&lt;br /&gt;
N = (tN-t0)/h;&lt;br /&gt;
&lt;br /&gt;
%Definimos los vectores de las variables dependientes&lt;br /&gt;
&lt;br /&gt;
x = zeros(1, N+1);&lt;br /&gt;
y = zeros(1, N+1);&lt;br /&gt;
&lt;br /&gt;
x(1) = 1;&lt;br /&gt;
y(1) = 0.01;&lt;br /&gt;
&lt;br /&gt;
for i = 1:N&lt;br /&gt;
    &lt;br /&gt;
    x(i+1)=x(i)+h*(-x(i).*y(i));&lt;br /&gt;
    y(i+1)=y(i)+h*(y(i).*x(i));&lt;br /&gt;
    &lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
%Representamos gráficamente las soluciones&lt;br /&gt;
&lt;br /&gt;
hold on&lt;br /&gt;
&lt;br /&gt;
plot(t,x,'b');&lt;br /&gt;
plot(t,y,'r');&lt;br /&gt;
grid on&lt;br /&gt;
&lt;br /&gt;
legend('Sustancia A: x(t)','Sustancia B: y(t)')&lt;br /&gt;
xlabel('Tiempo (s)')&lt;br /&gt;
ylabel('Concentración (mol/l)')&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
hold off&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
}}&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
A continuación tendremos que comprobar si el método es estable.&lt;br /&gt;
Un método es estable cuando el error local es pequeño y además este error no se amplifica a lo largo del tiempo. Para mirar la estabilidad del método de Euler resolveremos el sistema usando &amp;quot;h=0.01&amp;quot; y &amp;quot;h=0.001&amp;quot;. Para ello usaremos el mismo programa anterior simplemente variando h:&lt;br /&gt;
&lt;br /&gt;
=== Método de Runge-Kutta===&lt;br /&gt;
&lt;br /&gt;
El método de resolución numérica de Runge-Kutta, involucra un gran número de parámetros. Para simplificar la implementación de este método en Matlab, el sistema se tratará como una matriz &amp;lt;math&amp;gt;z&amp;lt;/math&amp;gt;. Además, utilizaremos la función ''inline'', con la que declararemos previamente la función algebraica necesaria para el cálculo de los parámetros &amp;lt;math&amp;gt;k_i&amp;lt;/math&amp;gt;, ahorrándonos tener que escribir innumerables veces la correspondiente expresión matemática.&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Primero, expresamos el sistema en forma matricial:&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;(PVI)\begin{cases}&lt;br /&gt;
    x'(t)=-k_1 x(t)y(t) \\&lt;br /&gt;
    y'(t)=k_1 x(t)y(t) \\&lt;br /&gt;
    \\&lt;br /&gt;
    x(0)=1 \\&lt;br /&gt;
    y(0) = 0.01&lt;br /&gt;
\end{cases}\quad t\in[0,10]&lt;br /&gt;
&lt;br /&gt;
\quad \Rightarrow \quad k_1=1\quad \Rightarrow \quad&lt;br /&gt;
&lt;br /&gt;
(PVI)\begin{cases}\vec{z}'(t)=&lt;br /&gt;
   \begin{bmatrix}&lt;br /&gt;
      x'(t) \\&lt;br /&gt;
      y'(t) \\&lt;br /&gt;
   \end{bmatrix}&lt;br /&gt;
=&lt;br /&gt;
      \begin{bmatrix}&lt;br /&gt;
      -x(t)y(t) \\&lt;br /&gt;
      x(t)y(t) \\&lt;br /&gt;
   \end{bmatrix}&lt;br /&gt;
&lt;br /&gt;
 \\ \\ \vec{z}(0)=&lt;br /&gt;
   \begin{bmatrix}&lt;br /&gt;
      x(0) \\&lt;br /&gt;
      y(0) \\&lt;br /&gt;
   \end{bmatrix}&lt;br /&gt;
=&lt;br /&gt;
      \begin{bmatrix}&lt;br /&gt;
      1 \\&lt;br /&gt;
      0.01 \\&lt;br /&gt;
   \end{bmatrix}&lt;br /&gt;
\end{cases}\quad t\in[0,10]&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
A continuación, detallamos la función &amp;lt;math&amp;gt;\vec{F}&amp;lt;/math&amp;gt; de la que dependerán los valores de los parámetros &amp;lt;math&amp;gt;k_i&amp;lt;/math&amp;gt;:&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;\vec{F}(x,y)=\vec{F}(\vec{z})=&lt;br /&gt;
&lt;br /&gt;
\begin{bmatrix}&lt;br /&gt;
    f(\vec{z}) \\&lt;br /&gt;
    g(\vec{z}) \\&lt;br /&gt;
\end{bmatrix}=&lt;br /&gt;
&lt;br /&gt;
\begin{bmatrix}&lt;br /&gt;
    x'(t) \\&lt;br /&gt;
    y'(t) \\&lt;br /&gt;
\end{bmatrix}=&lt;br /&gt;
&lt;br /&gt;
\vec{z}'(t)=&lt;br /&gt;
&lt;br /&gt;
\begin{bmatrix}&lt;br /&gt;
    -x(t)y(t) \\&lt;br /&gt;
    x(t)y(t) \\&lt;br /&gt;
\end{bmatrix}&lt;br /&gt;
\quad \Rightarrow \quad&lt;br /&gt;
&lt;br /&gt;
\begin{cases}&lt;br /&gt;
 [\vec{k_1}] &amp;amp; =  F(\vec{z}_i) \\&lt;br /&gt;
 [\vec{k_2}] &amp;amp; =  F(\vec{z}_i + {1 \over 2}k_1h) \\&lt;br /&gt;
 [\vec{k_3}] &amp;amp; =  F(\vec{z}_i + \frac{1}{2}k_2h) \\&lt;br /&gt;
 [\vec{k_4}] &amp;amp; =  F(\vec{z}_i + k_3h) \\&lt;br /&gt;
\end{cases}\quad [h=0.1]&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Entonces el método RK4 para este problema está dado por la siguiente ecuación:&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;\vec{z}_{i+1} = \vec{z}_{i} + {1 \over 6}h(\vec{k_1}+2\vec{k_2}+2\vec{k_3}+\vec{k_4})&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Mediante el siguiente programa en Matlab calculamos numéricamente la solución y la representamos en un gráfico:&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Archivo:sistema_RK4.png|400px|miniaturadeimagen|derecha|Representación gráfica de las concentraciones de A y B. Resolución del sistema por Runge-Kutta]]&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
%Método de Runge-Kutta&lt;br /&gt;
clc&lt;br /&gt;
&lt;br /&gt;
%Función F=[x'(t); y'(t)]&lt;br /&gt;
F=inline('[-z(1)*z(2);z(1)*z(2)]','z');&lt;br /&gt;
&lt;br /&gt;
%Datos del problema &lt;br /&gt;
x0=1;&lt;br /&gt;
y0=0.01;&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=10;&lt;br /&gt;
h=0.1;&lt;br /&gt;
&lt;br /&gt;
%Vector de variable independiente (t)&lt;br /&gt;
t=t0:h:tN;&lt;br /&gt;
&lt;br /&gt;
%Matriz de variables dependientes z=[x;y]&lt;br /&gt;
z=zeros(2,length(t));&lt;br /&gt;
z(:,1)=[x0;y0];&lt;br /&gt;
&lt;br /&gt;
for i = 1:length(t)-1&lt;br /&gt;
    k1=F(z(:,i));&lt;br /&gt;
    k2=F(z(:,i)+k1.*h/2);&lt;br /&gt;
    k3=F(z(:,i)+k2.*h/2);&lt;br /&gt;
    k4=F(z(:,i)+k3.*h);&lt;br /&gt;
    z(:,i+1)=z(:,i)+h/6.*(k1+2.*k2+2.*k3+k4);&lt;br /&gt;
end&lt;br /&gt;
 &lt;br /&gt;
%Representación gráfica&lt;br /&gt;
hold on&lt;br /&gt;
plot(t,z(1,:))&lt;br /&gt;
plot(t,z(2,:),'r')&lt;br /&gt;
legend('Sustancia A: x(t)','Sustancia B: y(t)')&lt;br /&gt;
xlabel('Tiempo (s)')&lt;br /&gt;
ylabel('Concentración (mol/l)')&lt;br /&gt;
grid on&lt;br /&gt;
%hold off&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
== Interpretación de las gráficas ==&lt;br /&gt;
&lt;br /&gt;
Podemos observar por los resultados obtenidos que la velocidad de aparición de B es igual a la velocidad de desaparición de A (como dicta el principio de conservación de la masa), que A acaba desapareciendo prácticamente por completo y que la concentración de B termina por estabilizarse alrededor de 1 mol/l. Ambos compuestos alcanzan sus los extremos de sus concentraciones en el mismo instante de tiempo&lt;br /&gt;
&lt;br /&gt;
También cabe destacar que cuando el tiempo transcurrido alcanza 4,5 segundos las concentraciones de ambos compuestos son las mismas.&lt;br /&gt;
&lt;br /&gt;
= Reacción II =&lt;br /&gt;
&lt;br /&gt;
En este apartado vamos a estudiar la reacción propuesta por Alfred J. Lotka en 1920, que es la siguiente:&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt; A + X →_{k1} 2X;&amp;lt;/math&amp;gt;     :&amp;lt;math&amp;gt; X + Y →_{k2} 2Y;&amp;lt;/math&amp;gt;     :&amp;lt;math&amp;gt;Y →_{k3} 2B  &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Como se puede observar, se trata de una reacción compleja integrada por 3 reacciones simples (las dos primeras autocatalíticas) en las que intervienen un total de 4 compuestos, A, B, X e Y. Siguiendo el desarrollo de la reacción, es lógico suponer que A se agotará al comienzo de la reacción, que los máximos de concentración de X e Y se darán en los estados intermedios y que al final el compuesto B será el único restante, siendo el producto final de la reacción.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Interpretación del problema y deducción de las ecuaciones diferenciales ==&lt;br /&gt;
&lt;br /&gt;
Para averiguar cómo evolucionan las concentraciones de los cuatro compuestos durante el desarrollo de la reacción necesitaremos obtener cuatro ecuaciones diferenciales. Para ello nos volveremos a basar en los principios físicos que ya empleamos en la anterior reacción. Definimos A(t), x(t), y(t), y B(t) (A, x, y, B; para ahorrar notación) a las concentraciones de A, X, Y, y B, respectivamente. &lt;br /&gt;
&lt;br /&gt;
En primer lugar aplicamos el Principio de Conservación de la masa, que establece que la suma de las concentraciones de los compuestos es constante (no desaparece masa en el proceso), lo que derivando nos indica que:&lt;br /&gt;
&lt;br /&gt;
: &amp;lt;math&amp;gt; A' + y' + y' + B' = 0 \quad\quad(I)&amp;lt;/math&amp;gt;       &lt;br /&gt;
&lt;br /&gt;
A continuación aplicaremos la Ley de Acción de Masas (velocidad de reacción proporcional al producto de la concentración de los reactivos).&lt;br /&gt;
&lt;br /&gt;
Aplicando esta ley a la última reacción simple obtenemos que: &lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;B'=k_3y \quad\quad(II)&amp;lt;/math&amp;gt;        &lt;br /&gt;
&lt;br /&gt;
En el caso de las concentraciones de X e Y las expresiones resultantes son algo más complicadas ya que estos dos compuestos actúan como reactivos y productos en más de una reacción simple, por lo que la variación de sus concentraciones será la suma de las variaciones de las reacciones en las que aparezcan:&lt;br /&gt;
&lt;br /&gt;
: &amp;lt;math&amp;gt; x' = x'_{1} + x'_{2} → x' = k_{1}Ax - k{2}xy \quad\quad(III)&amp;lt;/math&amp;gt;        &lt;br /&gt;
: &amp;lt;math&amp;gt; y' = y'_{2} + y'_{3} → y' = k_{2}xy − k_3{y} \quad\quad(IV)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Por último sustituimos (II), (III) y (IV) en (I) obteniendo: &lt;br /&gt;
&lt;br /&gt;
: &amp;lt;math&amp;gt; A' + k_{1}Ax - k{2}xy + k_{2}xy − k_3{y}+ k_3y= 0 : &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
De donde obtenemos que:&lt;br /&gt;
&lt;br /&gt;
: &amp;lt;math&amp;gt; A' = -k_{1}Ax &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Ahora que ya tenemos las variaciones de concentración de los compuestos en función de las concentraciones podemos aplicar métodos numéricos que nos lleven a una solución aproximada.&lt;br /&gt;
&lt;br /&gt;
== Resolución numérica del sistema de ecuaciones ==&lt;br /&gt;
&lt;br /&gt;
Una vez obtenidas las ecuaciones y conociendo las condiciones iniciales y los valores de las constantes podemos plantear el problema de valor inicial para luego resolverlo.&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;(PVI)&lt;br /&gt;
\begin{cases}&lt;br /&gt;
    A' = -k_{1}Ax\\&lt;br /&gt;
    x' = k_{1}Ax - k{2}xy\\&lt;br /&gt;
    y' = k_{2}xy − k_3{y}\\&lt;br /&gt;
    B'=k_3y \\&lt;br /&gt;
\\&lt;br /&gt;
    A(0)=5  \\&lt;br /&gt;
    x(0)=5*10^{-4} \\&lt;br /&gt;
    y(0)=10^{-5}\\&lt;br /&gt;
    B(0)=0 \\&lt;br /&gt;
\end{cases}&lt;br /&gt;
\quad t\in[0,200]&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Siendo &amp;lt;math&amp;gt; k_{1}=K_{2}=2k_{3}=0.1 &amp;lt;/math&amp;gt; y las unidades de la concentración mol/l.&lt;br /&gt;
&lt;br /&gt;
=== Método de Euler ===&lt;br /&gt;
&lt;br /&gt;
Aplicamos el método de Euler de forma análoga a como lo hicimos en [[Reacciones_con_autocatálisis._Grupo_D12#Método_de_Runge-Kutta_2|apartado 2.5.1]]&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Euler lotka0.01.png|400px|miniaturadeimagen|derecha|Representación gráfica de las concentraciones de A, B, X, e Y a lo largo del tiempo. Resoluciónd delsistema por el método de Euler con longitud de paso h=0.01]] &lt;br /&gt;
[[Archivo:Euler lotka0.001.png|400px|miniaturadeimagen|derecha|Representación gráfica de las concentraciones de A, B, X, e Y a lo largo del tiempo. Resoluciónd delsistema por el método de Euler con longitud de paso h=0.001]]&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
&lt;br /&gt;
%Resolución del sistema de la reacción de Lotka por el método de Euler&lt;br /&gt;
&lt;br /&gt;
clear all&lt;br /&gt;
&lt;br /&gt;
%Definimos la variable independiente y establecemos los datos del problema&lt;br /&gt;
%de valor inicial. Para la longitud de paso h introducimos en primer lugar&lt;br /&gt;
%0.01 y luego 0.001&lt;br /&gt;
&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=200;&lt;br /&gt;
h= input('Introduzca una longitud de paso ');&lt;br /&gt;
t = t0:h:tN;&lt;br /&gt;
N=(tN-t0)/h;&lt;br /&gt;
k1 = 0.1;&lt;br /&gt;
k2 = 0.1;&lt;br /&gt;
k3 = 0.05;&lt;br /&gt;
A0 = 5;&lt;br /&gt;
B0 = 0;&lt;br /&gt;
X0 = 5*10^(-4);&lt;br /&gt;
Y0 = 10^(-5);&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
%Definimos las variables dependientes.&lt;br /&gt;
&lt;br /&gt;
A = zeros(1, N-1);&lt;br /&gt;
B = A;&lt;br /&gt;
X = A;&lt;br /&gt;
Y = A;&lt;br /&gt;
&lt;br /&gt;
A(1) = A0;&lt;br /&gt;
B(1) = B0;&lt;br /&gt;
X(1) = X0;&lt;br /&gt;
Y(1) = Y0;&lt;br /&gt;
&lt;br /&gt;
for i = 1:N&lt;br /&gt;
    &lt;br /&gt;
    X(i+1) = X(i) + h*(k1*A(i)*X(i)-k2*Y(i)*X(i));&lt;br /&gt;
    Y(i+1)=Y(i)+h.*(k2.*X(i).*Y(i)-k3.*Y(i));&lt;br /&gt;
    B(i+1) = B(i) + h*(k3*Y(i));&lt;br /&gt;
    A(i+1) = A(i) + h*(-k1*A(i)*X(i));&lt;br /&gt;
   &lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
%Representamos gráficamente la solución&lt;br /&gt;
&lt;br /&gt;
hold on&lt;br /&gt;
&lt;br /&gt;
plot (t,A,'b')&lt;br /&gt;
plot(t, X, 'r')&lt;br /&gt;
plot(t,Y, 'g')&lt;br /&gt;
plot(t, B, 'm')&lt;br /&gt;
legend('Sustancia A: A(t)','Sustancia X: x(t)','Sustancia Y: y(t)','Sustancia B: B(t)','Location','Best')&lt;br /&gt;
xlabel('Tiempo (s)')&lt;br /&gt;
ylabel('Concentración (mol/l)')&lt;br /&gt;
grid on&lt;br /&gt;
&lt;br /&gt;
hold off&lt;br /&gt;
&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
=== Método de Heun ===&lt;br /&gt;
&lt;br /&gt;
Si bien el método de resolución numérica de Heun no involucra un número de parámetros tan notable como el método de Runge-Kutta, en este caso tenemos un sistema de 4 ecuaciones diferenciales, por lo que, en aras de simplificar, utilizaremos el mismo criterio que en el [[Reacciones_con_autocatálisis._Grupo_D12#Método_de_Runge-Kutta_2|apartado 2.5.2]].: El sistema se tratará como una matriz &amp;lt;math&amp;gt;z&amp;lt;/math&amp;gt;, y para la obtención de los parámetros &amp;lt;math&amp;gt;k_i&amp;lt;/math&amp;gt; utilizaremos la función ''inline'', con la que declararemos previamente las expresiones necesarias para el cálculo de los parámetros &amp;lt;math&amp;gt;k_i&amp;lt;/math&amp;gt;.&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Primero, expresamos el sistema en forma matricial:&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;(PVI)\begin{cases}&lt;br /&gt;
A'(t)=-k_1 A(t)x(t) \\&lt;br /&gt;
x'(t)=k_1 A(t)x(t)-k_2 x(t)y(t) \\&lt;br /&gt;
y'(t)=k_2 x(t)y(t)-k_3 y(t) \\&lt;br /&gt;
B'(t)=k_3 x(t)y(t) \\ \\&lt;br /&gt;
A(0)=5 \\&lt;br /&gt;
x(0)=5·10^{-4} \\&lt;br /&gt;
y(0)=10^{-5} \\&lt;br /&gt;
B(0) = 0&lt;br /&gt;
\end{cases}\quad t\in[0,200]&lt;br /&gt;
&lt;br /&gt;
\quad \Rightarrow \quad&lt;br /&gt;
&lt;br /&gt;
\begin{cases}&lt;br /&gt;
k_1=0.1 \\&lt;br /&gt;
k_2=0.1 \\&lt;br /&gt;
k_3=0.05 \\&lt;br /&gt;
&lt;br /&gt;
\end{cases}&lt;br /&gt;
&lt;br /&gt;
\quad \Rightarrow \quad&lt;br /&gt;
&lt;br /&gt;
(PVI)\begin{cases}\vec{z}'(t)=&lt;br /&gt;
   \begin{bmatrix}&lt;br /&gt;
      A'(t) \\&lt;br /&gt;
      x'(t) \\&lt;br /&gt;
      y'(t) \\&lt;br /&gt;
      B'(t) \\&lt;br /&gt;
   \end{bmatrix}&lt;br /&gt;
=&lt;br /&gt;
      \begin{bmatrix}&lt;br /&gt;
      -0.1 A(t)x(t) \\&lt;br /&gt;
      0.1 A(t)x(t)-0.1 x(t)y(t) \\&lt;br /&gt;
      0.1 x(t)y(t)-0.05 y(t) \\&lt;br /&gt;
      0.05 y(t)x(t)\\&lt;br /&gt;
   \end{bmatrix}&lt;br /&gt;
&lt;br /&gt;
 \\ \\ \vec{z}(0)=&lt;br /&gt;
   \begin{bmatrix}&lt;br /&gt;
      A(0) \\&lt;br /&gt;
      x(0) \\&lt;br /&gt;
      y(0) \\&lt;br /&gt;
      B(0) \\&lt;br /&gt;
   \end{bmatrix}&lt;br /&gt;
=&lt;br /&gt;
      \begin{bmatrix}&lt;br /&gt;
      5 \\&lt;br /&gt;
      5·10^{-4} \\&lt;br /&gt;
      10^{-5} \\&lt;br /&gt;
      0&lt;br /&gt;
   \end{bmatrix}&lt;br /&gt;
\end{cases}\quad t\in[0,200]&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
A continuación, detallamos la función &amp;lt;math&amp;gt;\vec{F}&amp;lt;/math&amp;gt; de la que dependerán los valores de los parámetros &amp;lt;math&amp;gt;k_i&amp;lt;/math&amp;gt;:&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;\vec{F}(A,x,y,B)=\vec{F}(\vec{z})=&lt;br /&gt;
\begin{bmatrix}&lt;br /&gt;
    f(\vec{z}) \\ &lt;br /&gt;
    g(\vec{z}) \\ &lt;br /&gt;
    h(\vec{z}) \\ &lt;br /&gt;
    i(\vec{z}) \\ &lt;br /&gt;
\end{bmatrix}=&lt;br /&gt;
\begin{bmatrix}&lt;br /&gt;
    A'(t) \\&lt;br /&gt;
    x'(t) \\&lt;br /&gt;
    y'(t) \\&lt;br /&gt;
    B'(t) \\&lt;br /&gt;
\end{bmatrix}=&lt;br /&gt;
\vec{z}'(t)=&lt;br /&gt;
      \begin{bmatrix}&lt;br /&gt;
      -0.1 A(t)x(t) \\&lt;br /&gt;
      0.1 A(t)x(t)-0.1 x(t)y(t) \\&lt;br /&gt;
      0.1 x(t)y(t)-0.05 y(t) \\&lt;br /&gt;
      0.05 y(t)x(t)\\&lt;br /&gt;
   \end{bmatrix}&lt;br /&gt;
&lt;br /&gt;
\quad \Rightarrow \quad &lt;br /&gt;
&lt;br /&gt;
\begin{cases}&lt;br /&gt;
 [\vec{k_1}] &amp;amp; =  F(\vec{z}_i) \\&lt;br /&gt;
 [\vec{k_2}] &amp;amp; =  F(\vec{z}_i + {1 \over 2}k_1h) \\&lt;br /&gt;
\end{cases}\quad [h=0.01]&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Entonces el método de Heun para este problema está dado por la siguiente ecuación:&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;\vec{z}_{i+1} = \vec{z}_{i} + {1 \over 2}h(\vec{k_1}+\vec{k_2})&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Mediante el siguiente programa en Matlab calculamos numéricamente la solución y la representamos en un gráfico:&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Archivo:AXYBRK4.png|400px|miniaturadeimagen|derecha|Representación gráfica de las concentraciones de A,X,Y y B. Resolución del sistema por Heun]]&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
%Método de Heun&lt;br /&gt;
clc&lt;br /&gt;
&lt;br /&gt;
%Función F=[A'(t);x'(t); y'(t);B'(t)]&lt;br /&gt;
F=inline('0.1.*[-z(1)*z(2);z(1)*z(2)-z(2)*z(3);z(2)*z(3)-z(3)/2;z(3)/2]','z');&lt;br /&gt;
&lt;br /&gt;
%Datos del problema&lt;br /&gt;
A0=5;&lt;br /&gt;
x0=5*10^-4;&lt;br /&gt;
y0=10^(-5);&lt;br /&gt;
B0=0;&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=200;&lt;br /&gt;
h=0.1;&lt;br /&gt;
&lt;br /&gt;
%Vector de variable independiente (t)&lt;br /&gt;
t=t0:h:tN;&lt;br /&gt;
&lt;br /&gt;
%Matriz de variables dependientes z=[A;x;y;B]&lt;br /&gt;
z=zeros(4,length(t));&lt;br /&gt;
z(:,1)=[A0;x0;y0;B0];&lt;br /&gt;
&lt;br /&gt;
for i = 1:length(t)-1&lt;br /&gt;
    k1=F(z(:,i));&lt;br /&gt;
    k2=F(z(:,i)+k1.*h/2);&lt;br /&gt;
    z(:,i+1)=z(:,i)+h/2.*(k1+k2);&lt;br /&gt;
end&lt;br /&gt;
 &lt;br /&gt;
%Representación gráfica&lt;br /&gt;
hold on&lt;br /&gt;
plot(t,z(1,:),'b')&lt;br /&gt;
plot(t,z(2,:),'r')&lt;br /&gt;
plot(t,z(3,:),'g')&lt;br /&gt;
plot(t,z(4,:),'m')&lt;br /&gt;
legend('Sustancia A: A(t)','Sustancia X: x(t)','Sustancia Y: y(t)','Sustancia B: B(t)','Location','Best')&lt;br /&gt;
xlabel('Tiempo (s)')&lt;br /&gt;
ylabel('Concentración (mol/l)')&lt;br /&gt;
grid on&lt;br /&gt;
hold off&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
== Interpretación de las gráficas == &lt;br /&gt;
 &lt;br /&gt;
El proceso comienza con el predominio absoluto del compuesto A en la concentración total, siendo la presencia de los otros tres compuestos despreciable. Durante los primeros segundos la situación apenas cambia, pero tras los diez primeros segundos la concentración de A cae bruscamente mientras que la concentración de X aumenta a la misma velocidad; antes de llegar a los veinte segundos transcurridos las concentraciones de ambos compuestos se igualan y otros quince segundos más tarde el compuesto A  prácticamente ha desaparecido y el X ha alcanzado su concentración máxima (5 mol/litro).&lt;br /&gt;
&lt;br /&gt;
Es entonces cuando concluye la primera reacción y comienzan las otras dos, al no haber más compuesto A que cree compuesto X. La velocidad de aparición de Y es inicialmente mayor que la de B, superando al poco tiempo en concentración a la sustancia X. Sin embargo, llega un momento en el que la concentración de X es tan baja que se ralentiza la creación de Y y pronto empieza a disminuir su concentración tras alcanzar un máximo en torno a los 56 segundos, perdiendo peso la segunda reacción en beneficio de la tercera.&lt;br /&gt;
&lt;br /&gt;
Tras los 60 segundos de reacción el compuesto X pasa a tener una concentración despreciable, por lo que la única reacción simple que se sigue desarrollando es la tercera, destruyéndose reactivo Y y creándose producto B. La concentración de Y va reduciéndose paulatinamente hasta que en torno a los 160 segundos de reacción alcanza niveles insignificantes mientras que la concentración de B alcanza su máximo de 5 mol/litro.&lt;br /&gt;
&lt;br /&gt;
Es interesante observar que en todo momento se cumple el Principio de Conservación de la masa: la suma en cualquier momento de las concentraciones de las sustancias es 5 mol /litro. Esto es fácilmente comprobable en los momentos en que las concentraciones de A, X y B alcanzan su máximo de 5 mol/litro y el resto de concentraciones son nulas o despreciables. &lt;br /&gt;
[[Categoría:Ecuaciones Diferenciales]]&lt;br /&gt;
[[Categoría:ED14/15]]&lt;br /&gt;
[[Categoría:Trabajos 2014-15]]&lt;/div&gt;</summary>
		<author><name>Javier Ruiz de Galarreta López</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Reacciones_con_autocat%C3%A1lisis._Grupo_D12&amp;diff=27398</id>
		<title>Reacciones con autocatálisis. Grupo D12</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Reacciones_con_autocat%C3%A1lisis._Grupo_D12&amp;diff=27398"/>
				<updated>2015-03-06T09:09:35Z</updated>
		
		<summary type="html">&lt;p&gt;Javier Ruiz de Galarreta López: /* Resolución numérica del problema de valor inicial */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{ TrabajoED | Reacciones con autocatálisis. Grupo D12 | [[:Categoría:Ecuaciones Diferenciales|Ecuaciones Diferenciales]]|[[:Categoría:ED14/15|Curso 2014-15]] | Javier Ruiz de Galarreta López, Argimiro Martínez López, Eduardo Moyano García, Alberto Rodríguez Ruiz. }}&lt;br /&gt;
&lt;br /&gt;
= Introducción: objetivos y metodología =&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
El objetivo de este trabajo es estudiar las concentraciones de los reactivos y productos de una reacción química a lo largo de la evolución en el tiempo de dicha reacción. Para ello modelizaremos el proceso empleando ecuaciones diferenciales y teniendo en cuenta la Ley de Acción de Masas y el Principio de Conservación de la materia.&lt;br /&gt;
&lt;br /&gt;
Al ser las ecuaciones y sistemas que se nos presentan de difícil resolución analítica, utilizaremos el programa informático Matlab para resolverlos mediante métodos numéricos como el de Euler, el del Trapecio, el de Runge-Kutta y el de Heun. &lt;br /&gt;
&lt;br /&gt;
Plasmaremos las soluciones en gráficos que nos permitirán dar una interpretación físico química a los resultados.&lt;br /&gt;
&lt;br /&gt;
= Reacción I =&lt;br /&gt;
&lt;br /&gt;
En primer lugar consideramos una reacción química irreversible en una solución bien mezclada, que se desarrolla para un volumen y una temperatura constantes, y en la que uno de los componentes (B, en este caso), hace de efecto catalítico.&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt; A + B →_{k1} 2B  &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Para desarrollar nuestro análisis nos apoyaremos en dos leyes físico químicas:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''Ley de acción de masas''': Enunciada por Guldberg y Waage en 1864, establece, entre otras cosas, que  la velocidad de&lt;br /&gt;
reacción es proporcional al producto de las concentraciones de los reactivos.&lt;br /&gt;
&lt;br /&gt;
'''Principio de conservación de la masa''': Establece que en una reacción química ordinaria la masa permanece constante, siendo la masa consumida de los reactivos igual a la masa obtenida de los productos. Fue elaborada independientemente por Míjail Lomonósov en 1745 y Antoine Lavoisier en 1785.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Interpretación del problema y deducción de las ecuaciones diferenciales ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Para hallar las ecuaciones diferenciales que nos describan cómo se desarrolla la reacción en el tiempo nos basaremos en las dos leyes enunciadas anteriormente. En primer lugar, definimos nuestra variable independiente como el tiempo &amp;lt;math&amp;gt;t&amp;lt;/math&amp;gt; en segundos. Las dos variables dependientes serán las concentraciones de los compuestos A y B, que denominaremos &amp;lt;math&amp;gt;x(t)&amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt;y(t)&amp;lt;/math&amp;gt;, ambas expresadas en mol/l. &lt;br /&gt;
&lt;br /&gt;
El principio de conservación de la masa expone que la suma de las concentraciones de los reactivos y los productos es constante. Esto equivale, derivando la expresión &amp;lt;math&amp;gt;x(t)+y(t)=cte&amp;lt;/math&amp;gt;, a que  desaparece tanto reactivo como producto aparece, o lo que es lo mismo, que la velocidad de aparición del producto es igual a la velocidad de desaparición (velocidad de aparición negativa) del reactivo:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;x'(t)=-y'(t)&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
La otra ecuación que necesitamos la obtenemos directamente de aplicar la Ley de acción de masas, que establece que la velocidad de la reacción (la velocidad a la que aparece el producto o desaparece el reactivo) es igual al producto de las concentraciones por una constante.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;y'(t)=k_1x(t)y(t)&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Obtención del problema de valor inicial ==&lt;br /&gt;
Una vez demostrado el origen de las ecuaciones (1) y (2) en el apartado anterior, obtendremos el problema de valor inicial (PVI) mediante las operaciones detalladas a continuación:&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;x'(t)+y'(t)=0\quad\quad(1)&amp;lt;/math&amp;gt;&lt;br /&gt;
:&amp;lt;math&amp;gt;y'(t)=k_1x(t)y(t)\quad\quad(2)&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Integrando (1) obtenemos (3):&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
:&amp;lt;math&amp;gt;\int_\mathbb{D} (\frac{dx(t)}{dt} + \frac{dy(t)}{dt})\,dt =\int_\mathbb{D} 0\,dt \quad \Rightarrow \quad x(t)+y(t)=k_2\quad \Rightarrow \quad x(t)=k_2-y(t)\quad\quad(3)&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Sustituyendo (3) en (2), obtenemos (4):&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;y'(t)=k_1x(t)y(t)\quad \Rightarrow \quad y'(t)=k_1(k_2-y(t))y(t)\quad \Rightarrow \quad y'(t)=k_1k_2y(t)-k_1y^2(t)\quad\quad(4)&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Conocemos las concentraciones iniciales de A y de B, por lo que podemos obtener el valor de la constante k&amp;lt;sub&amp;gt;2&amp;lt;/sub&amp;gt;:&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;[A]:\quad x(0)=1 mol/l;\quad\quad [B]:\quad y(0)=0,01 mol/l&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;x(t)+y(t)=k_2\quad \Rightarrow \quad x(0)+y(0)=k_2\quad \Rightarrow \quad 1+0,01=k_2\quad \Rightarrow \quad k_2=1,01&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Por último, conocemos también el valor de k&amp;lt;sub&amp;gt;1&amp;lt;/sub&amp;gt;, por lo que podremos plantear a continuación el correspondiente PVI:&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;k_1=1&amp;lt;/math&amp;gt;&lt;br /&gt;
:&amp;lt;math&amp;gt;(PVI)\begin{cases}y'(t)=1,01y(t)-y^2(t) \\ \\&lt;br /&gt;
y(0) = 0,01 \end{cases}\quad (t,y)\in[0,10]\times\mathbb{R}&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Unicidad de la solución ==&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Existencia-y-unicidad.png|200px|miniaturadeimagen|derecha|Intersección B con dominio]]&lt;br /&gt;
&lt;br /&gt;
Aplicamos a continuación el Teorema de Existencia y Unicidad:&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Sea &amp;lt;math&amp;gt;f(t,y)=y'(t) \Rightarrow f(t,y)=1.01y(t)-y^2(t)\quad&amp;lt;/math&amp;gt;, y &amp;lt;math&amp;gt;\quad\frac{\partial }{\partial y} f(t,y) = 1.01-2y(t)&amp;lt;/math&amp;gt;.&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
Y sea &amp;lt;math&amp;gt;B[(t_0,y_0),r],\quad r&amp;gt;0,\quad en (t_0,y_0)=(0,0.01)&amp;lt;/math&amp;gt;.&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;f(t,y)&amp;lt;/math&amp;gt; es continua en &amp;lt;math&amp;gt; \mathbb{B}\cap \mathbb{D}\quad \Rightarrow \quad \exists  y(t)\quad /\quad y'(t)=1,01y(t)-y^2(t)&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;math&amp;gt;\frac{\partial }{\partial y} f(t,y)&amp;lt;/math&amp;gt; es continua en &amp;lt;math&amp;gt; \mathbb{B}\cap \mathbb{D}\quad \Rightarrow \quad \exists !  y(t)\quad /\quad y'(t)=1,01y(t)-y^2(t)&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Con lo que queda demostrado que el (PVI) tiene solución y además esta es única.&lt;br /&gt;
&lt;br /&gt;
== Resolución numérica del problema de valor inicial ==&lt;br /&gt;
&lt;br /&gt;
En este apartado resolveremos el problema de valor inicial planteado anteriormente con tres métodos de integración numérica: el método de Euler, el método del Trapecio y el método de Runge-Kutta de orden 4.&lt;br /&gt;
&lt;br /&gt;
=== Método de Euler ===&lt;br /&gt;
&lt;br /&gt;
El método de Euler, llamado así en honor al matemático Leonhard Euler, es un procedimiento de integración numérica. Su expresión matemática es: &lt;br /&gt;
&amp;lt;math&amp;gt;  PVI = &lt;br /&gt;
   \left \{&lt;br /&gt;
      \begin{array}{rcl}y_0\\&lt;br /&gt;
           y_{n+1} = y_n + h*f(t_n,y_n)\\ &lt;br /&gt;
      \end{array}&lt;br /&gt;
   \right .&lt;br /&gt;
   &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
A continuación emplearemos esta expresión en un programa de Matlab para obtener una aproximación de las soluciones. El código de dicho programa es el siguiente.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Eulergrafica.png|400px|miniaturadeimagen|derecha|Representación gráfica y(t). Método de Euler]]&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
%Método de Euler&lt;br /&gt;
clc&lt;br /&gt;
&lt;br /&gt;
%Datos iniciales&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=4;&lt;br /&gt;
y0=0.01;&lt;br /&gt;
h=0.1;&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=10;&lt;br /&gt;
&lt;br /&gt;
%Cálculo de subintervalos&lt;br /&gt;
N=round((tN-t0)/h);&lt;br /&gt;
t=t0:h:tN;&lt;br /&gt;
&lt;br /&gt;
%Creamos el vector donde vamos a guardar las soluciones&lt;br /&gt;
y=zeros(1,N+1);&lt;br /&gt;
y(1)=y0;&lt;br /&gt;
&lt;br /&gt;
%Euler&lt;br /&gt;
for i=1:N;&lt;br /&gt;
    y(i+1)=y(i)+h*(1.01*y(i)-(y(i)).^2);&lt;br /&gt;
end&lt;br /&gt;
%Tabla de Resultados&lt;br /&gt;
[t',y']&lt;br /&gt;
x=1.01-y;&lt;br /&gt;
hold on &lt;br /&gt;
plot(t,y,'r')&lt;br /&gt;
plot(t,x,'b')&lt;br /&gt;
hold off&lt;br /&gt;
legend('Sustancia B: y(t)','Sustancia A: x(t)','Location','best');&lt;br /&gt;
xlabel('Tiempo (s)')&lt;br /&gt;
ylabel('Concentración (mol/l)')&lt;br /&gt;
grid on&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
=== Método del trapecio ===&lt;br /&gt;
&amp;lt;math&amp;gt;  PVI = &lt;br /&gt;
   \left \{&lt;br /&gt;
      \begin{array}{rcl}&lt;br /&gt;
          y_0\\&lt;br /&gt;
           y_{n+1} = y_n + \frac{h}{2}*f(t_n,y_n)\\ &lt;br /&gt;
      \end{array}&lt;br /&gt;
   \right .&lt;br /&gt;
   &amp;lt;/math&amp;gt;&lt;br /&gt;
[[Archivo:Trapeciografica.png|400px|miniaturadeimagen|derecha|Representación gráfica y(t). Método del Trapecio]]&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
%Método del Trapecio&lt;br /&gt;
clc&lt;br /&gt;
&lt;br /&gt;
%Datos iniciales&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=4;&lt;br /&gt;
y0=0.01;&lt;br /&gt;
h=0.1;&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=10;&lt;br /&gt;
&lt;br /&gt;
%Cálculo de subintervalos&lt;br /&gt;
N=round((tN-t0)/h);&lt;br /&gt;
t=t0:h:tN;&lt;br /&gt;
&lt;br /&gt;
%Creamos el vector donde vamos a guardar las soluciones&lt;br /&gt;
y=zeros(1,N+1);&lt;br /&gt;
y(1)=y0;&lt;br /&gt;
&lt;br /&gt;
for i=1:N&lt;br /&gt;
y(i+1)=(((1-(h/2)*1.01)-sqrt(((1-(h/2)*1.01)^2)+4*(h/2)*((1+(h/2)*1.01)*y(i)-(h/2)*(y(i))^2)))/-h);&lt;br /&gt;
end&lt;br /&gt;
%Sacamos la tabla de resultados&lt;br /&gt;
[t',y']&lt;br /&gt;
x=1.01-y;&lt;br /&gt;
%Gráfico&lt;br /&gt;
hold on&lt;br /&gt;
plot(t,y,'r')&lt;br /&gt;
plot(t,x,'b')&lt;br /&gt;
legend('Sustancia B: y(t)','Sustancia A: x(t)','Location','best');&lt;br /&gt;
xlabel('Tiempo (s)')&lt;br /&gt;
ylabel('Concentración (mol/l)')&lt;br /&gt;
grid on&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
=== Método de Runge-Kutta ===&lt;br /&gt;
&lt;br /&gt;
El método de resolución numérica de Runge-Kutta, involucra un gran número de parámetros. Para simplificar la implementación de este método en Matlab, utilizaremos la función ''inline'', con la que declararemos previamente la función algebraica necesaria para el cálculo de los parámetros &amp;lt;math&amp;gt;k_i&amp;lt;/math&amp;gt;, ahorrándonos tener que escribir innumerables veces la correspondiente expresión matemática.&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
A continuación, detallamos la función &amp;lt;math&amp;gt;f(y)&amp;lt;/math&amp;gt; de la que dependerán los valores de los parámetros &amp;lt;math&amp;gt;k_i&amp;lt;/math&amp;gt;:&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;f(y)=y'(t)=1.01y(t)-y(t)^2&lt;br /&gt;
&lt;br /&gt;
\quad \Rightarrow \quad&lt;br /&gt;
&lt;br /&gt;
\begin{cases}&lt;br /&gt;
 k_1 &amp;amp; =  f(y_i) \\&lt;br /&gt;
 k_2 &amp;amp; =  f(y_i + {1 \over 2}k_1h) \\&lt;br /&gt;
 k_3 &amp;amp; =  f(y_i + \frac{1}{2}k_2h) \\&lt;br /&gt;
 k_4 &amp;amp; =  f(y_i + k_3h) \\&lt;br /&gt;
\end{cases}\quad [h=0.1]&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Entonces el método RK4 para este problema está dado por la siguiente ecuación:&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;y_{i+1} = y_{i} + {1 \over 6}h(k_1+2k_2+2k_3+k_4)&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Mediante el siguiente programa en Matlab calculamos numéricamente la solución y la representamos en un gráfico:&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Archivo:RK4II.png|400px|miniaturadeimagen|derecha|Representación gráfica y(t). Método Runge-Kutta]]&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
%Método de Runge-Kutta&lt;br /&gt;
clc&lt;br /&gt;
&lt;br /&gt;
%Función f(t)=y'(t)&lt;br /&gt;
fy=inline('1.01*y-y^2','y');&lt;br /&gt;
&lt;br /&gt;
%Datos del problema&lt;br /&gt;
y0=0.01;&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=10;&lt;br /&gt;
h=0.1;&lt;br /&gt;
&lt;br /&gt;
%Variable independiente (t)&lt;br /&gt;
t=t0:h:tN;&lt;br /&gt;
&lt;br /&gt;
%Variable dependiente (y)&lt;br /&gt;
y=zeros(1,length(t));&lt;br /&gt;
y(1)=y0;&lt;br /&gt;
&lt;br /&gt;
for i=1:length(t)-1&lt;br /&gt;
    k1=fy(y(i));&lt;br /&gt;
    k2=fy(y(i)+k1/2*h);&lt;br /&gt;
    k3=fy(y(i)+k2/2*h);&lt;br /&gt;
    k4=fy(y(i)+k3*h);&lt;br /&gt;
    y(i+1)=y(i)+h/6*(k1+2*k2+2*k3+k4);&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
%Variable dependiente (x)&lt;br /&gt;
x=1.01-y;&lt;br /&gt;
&lt;br /&gt;
%Representación gráfica&lt;br /&gt;
hold on&lt;br /&gt;
plot(t,x,'b')&lt;br /&gt;
plot(t,y,'r')&lt;br /&gt;
legend('Sustancia A: x(t)','Sustancia B: y(t)')&lt;br /&gt;
xlabel('Tiempo (s)')&lt;br /&gt;
ylabel('Concentración (mol/l)')&lt;br /&gt;
grid on&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
=== Comparación de métodos===&lt;br /&gt;
&lt;br /&gt;
Podemos observar fácilmente que las gráficas obtenidas con los diferentes métodos son iguales a primera vista. Sin embargo, superponiéndolas queda patente que no son exactamente iguales debido a que los métodos no poseen la misma precisión y , al operar todos con la misma longitud de paso, unos aproximan la solución exacta mejor que otros. Así se observa en estas imágenes:&lt;br /&gt;
&lt;br /&gt;
[[Archivo:comparativa1.jpg|400px|miniaturadeimagen|izquierda|Comparación de métodos]]&lt;br /&gt;
[[Archivo:comparativa2.jpg|400px|miniaturadeimagen|derecha|Comparación de métodos]]&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
Como podemos comprobar en las imágenes, el método de Euler es menos preciso que el del trapecio o el de Runge-Kutta.&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Resolución en forma de sistema de ecuaciones ==&lt;br /&gt;
&lt;br /&gt;
A continuación vamos a plantear el problema de valor inicial con un sistema de dos ecuaciones equivalente al problema resuelto anteriormente.&lt;br /&gt;
&lt;br /&gt;
Estas ecuaciones serán:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;(PVI)&lt;br /&gt;
\begin{cases}&lt;br /&gt;
    y'(t)=k_1 x(t)y(t) \\&lt;br /&gt;
    x'(t)=-k_1 x(t)y(t) \\&lt;br /&gt;
    \\&lt;br /&gt;
    x(0)=1 \\&lt;br /&gt;
    y(0) = 0.01&lt;br /&gt;
\end{cases}&lt;br /&gt;
\quad t\in[0,10]&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Resolveremos el problema por el método de Euler y por el método de Runge-Kutta, plasmando las soluciones en gráficos.&lt;br /&gt;
&lt;br /&gt;
=== Método de Euler ===&lt;br /&gt;
[[Archivo:SistEuler.png|400px|miniaturadeimagen|derecha|Representación gráfica de las concentraciones de A y B. Resolución del sistema por Euler]]&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
&lt;br /&gt;
%Resolución del sistema por el método de Euler&lt;br /&gt;
&lt;br /&gt;
clear all&lt;br /&gt;
&lt;br /&gt;
%Definimos el vector de la variable independiente, el número de&lt;br /&gt;
%subintervalos y la longitud de paso&lt;br /&gt;
&lt;br /&gt;
t0 = 0;&lt;br /&gt;
tN = 10;&lt;br /&gt;
h = 0.1;&lt;br /&gt;
t = t0:h:tN&lt;br /&gt;
N = (tN-t0)/h;&lt;br /&gt;
&lt;br /&gt;
%Definimos los vectores de las variables dependientes&lt;br /&gt;
&lt;br /&gt;
x = zeros(1, N+1);&lt;br /&gt;
y = zeros(1, N+1);&lt;br /&gt;
&lt;br /&gt;
x(1) = 1;&lt;br /&gt;
y(1) = 0.01;&lt;br /&gt;
&lt;br /&gt;
for i = 1:N&lt;br /&gt;
    &lt;br /&gt;
    x(i+1)=x(i)+h*(-x(i).*y(i));&lt;br /&gt;
    y(i+1)=y(i)+h*(y(i).*x(i));&lt;br /&gt;
    &lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
%Representamos gráficamente las soluciones&lt;br /&gt;
&lt;br /&gt;
hold on&lt;br /&gt;
&lt;br /&gt;
plot(t,x,'b');&lt;br /&gt;
plot(t,y,'r');&lt;br /&gt;
grid on&lt;br /&gt;
&lt;br /&gt;
legend('Sustancia A: x(t)','Sustancia B: y(t)')&lt;br /&gt;
xlabel('Tiempo (s)')&lt;br /&gt;
ylabel('Concentración (mol/l)')&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
hold off&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
=== Método de Runge-Kutta===&lt;br /&gt;
&lt;br /&gt;
El método de resolución numérica de Runge-Kutta, involucra un gran número de parámetros. Para simplificar la implementación de este método en Matlab, el sistema se tratará como una matriz &amp;lt;math&amp;gt;z&amp;lt;/math&amp;gt;. Además, utilizaremos la función ''inline'', con la que declararemos previamente la función algebraica necesaria para el cálculo de los parámetros &amp;lt;math&amp;gt;k_i&amp;lt;/math&amp;gt;, ahorrándonos tener que escribir innumerables veces la correspondiente expresión matemática.&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Primero, expresamos el sistema en forma matricial:&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;(PVI)\begin{cases}&lt;br /&gt;
    x'(t)=-k_1 x(t)y(t) \\&lt;br /&gt;
    y'(t)=k_1 x(t)y(t) \\&lt;br /&gt;
    \\&lt;br /&gt;
    x(0)=1 \\&lt;br /&gt;
    y(0) = 0.01&lt;br /&gt;
\end{cases}\quad t\in[0,10]&lt;br /&gt;
&lt;br /&gt;
\quad \Rightarrow \quad k_1=1\quad \Rightarrow \quad&lt;br /&gt;
&lt;br /&gt;
(PVI)\begin{cases}\vec{z}'(t)=&lt;br /&gt;
   \begin{bmatrix}&lt;br /&gt;
      x'(t) \\&lt;br /&gt;
      y'(t) \\&lt;br /&gt;
   \end{bmatrix}&lt;br /&gt;
=&lt;br /&gt;
      \begin{bmatrix}&lt;br /&gt;
      -x(t)y(t) \\&lt;br /&gt;
      x(t)y(t) \\&lt;br /&gt;
   \end{bmatrix}&lt;br /&gt;
&lt;br /&gt;
 \\ \\ \vec{z}(0)=&lt;br /&gt;
   \begin{bmatrix}&lt;br /&gt;
      x(0) \\&lt;br /&gt;
      y(0) \\&lt;br /&gt;
   \end{bmatrix}&lt;br /&gt;
=&lt;br /&gt;
      \begin{bmatrix}&lt;br /&gt;
      1 \\&lt;br /&gt;
      0.01 \\&lt;br /&gt;
   \end{bmatrix}&lt;br /&gt;
\end{cases}\quad t\in[0,10]&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
A continuación, detallamos la función &amp;lt;math&amp;gt;\vec{F}&amp;lt;/math&amp;gt; de la que dependerán los valores de los parámetros &amp;lt;math&amp;gt;k_i&amp;lt;/math&amp;gt;:&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;\vec{F}(x,y)=\vec{F}(\vec{z})=&lt;br /&gt;
&lt;br /&gt;
\begin{bmatrix}&lt;br /&gt;
    f(\vec{z}) \\&lt;br /&gt;
    g(\vec{z}) \\&lt;br /&gt;
\end{bmatrix}=&lt;br /&gt;
&lt;br /&gt;
\begin{bmatrix}&lt;br /&gt;
    x'(t) \\&lt;br /&gt;
    y'(t) \\&lt;br /&gt;
\end{bmatrix}=&lt;br /&gt;
&lt;br /&gt;
\vec{z}'(t)=&lt;br /&gt;
&lt;br /&gt;
\begin{bmatrix}&lt;br /&gt;
    -x(t)y(t) \\&lt;br /&gt;
    x(t)y(t) \\&lt;br /&gt;
\end{bmatrix}&lt;br /&gt;
\quad \Rightarrow \quad&lt;br /&gt;
&lt;br /&gt;
\begin{cases}&lt;br /&gt;
 [\vec{k_1}] &amp;amp; =  F(\vec{z}_i) \\&lt;br /&gt;
 [\vec{k_2}] &amp;amp; =  F(\vec{z}_i + {1 \over 2}k_1h) \\&lt;br /&gt;
 [\vec{k_3}] &amp;amp; =  F(\vec{z}_i + \frac{1}{2}k_2h) \\&lt;br /&gt;
 [\vec{k_4}] &amp;amp; =  F(\vec{z}_i + k_3h) \\&lt;br /&gt;
\end{cases}\quad [h=0.1]&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Entonces el método RK4 para este problema está dado por la siguiente ecuación:&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;\vec{z}_{i+1} = \vec{z}_{i} + {1 \over 6}h(\vec{k_1}+2\vec{k_2}+2\vec{k_3}+\vec{k_4})&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Mediante el siguiente programa en Matlab calculamos numéricamente la solución y la representamos en un gráfico:&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Archivo:sistema_RK4.png|400px|miniaturadeimagen|derecha|Representación gráfica de las concentraciones de A y B. Resolución del sistema por Runge-Kutta]]&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
%Método de Runge-Kutta&lt;br /&gt;
clc&lt;br /&gt;
&lt;br /&gt;
%Función F=[x'(t); y'(t)]&lt;br /&gt;
F=inline('[-z(1)*z(2);z(1)*z(2)]','z');&lt;br /&gt;
&lt;br /&gt;
%Datos del problema &lt;br /&gt;
x0=1;&lt;br /&gt;
y0=0.01;&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=10;&lt;br /&gt;
h=0.1;&lt;br /&gt;
&lt;br /&gt;
%Vector de variable independiente (t)&lt;br /&gt;
t=t0:h:tN;&lt;br /&gt;
&lt;br /&gt;
%Matriz de variables dependientes z=[x;y]&lt;br /&gt;
z=zeros(2,length(t));&lt;br /&gt;
z(:,1)=[x0;y0];&lt;br /&gt;
&lt;br /&gt;
for i = 1:length(t)-1&lt;br /&gt;
    k1=F(z(:,i));&lt;br /&gt;
    k2=F(z(:,i)+k1.*h/2);&lt;br /&gt;
    k3=F(z(:,i)+k2.*h/2);&lt;br /&gt;
    k4=F(z(:,i)+k3.*h);&lt;br /&gt;
    z(:,i+1)=z(:,i)+h/6.*(k1+2.*k2+2.*k3+k4);&lt;br /&gt;
end&lt;br /&gt;
 &lt;br /&gt;
%Representación gráfica&lt;br /&gt;
hold on&lt;br /&gt;
plot(t,z(1,:))&lt;br /&gt;
plot(t,z(2,:),'r')&lt;br /&gt;
legend('Sustancia A: x(t)','Sustancia B: y(t)')&lt;br /&gt;
xlabel('Tiempo (s)')&lt;br /&gt;
ylabel('Concentración (mol/l)')&lt;br /&gt;
grid on&lt;br /&gt;
%hold off&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
== Interpretación de las gráficas ==&lt;br /&gt;
&lt;br /&gt;
Podemos observar por los resultados obtenidos que la velocidad de aparición de B es igual a la velocidad de desaparición de A (como dicta el principio de conservación de la masa), que A acaba desapareciendo prácticamente por completo y que la concentración de B termina por estabilizarse alrededor de 1 mol/l. Ambos compuestos alcanzan sus los extremos de sus concentraciones en el mismo instante de tiempo&lt;br /&gt;
&lt;br /&gt;
También cabe destacar que cuando el tiempo transcurrido alcanza 4,5 segundos las concentraciones de ambos compuestos son las mismas.&lt;br /&gt;
&lt;br /&gt;
= Reacción II =&lt;br /&gt;
&lt;br /&gt;
En este apartado vamos a estudiar la reacción propuesta por Alfred J. Lotka en 1920, que es la siguiente:&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt; A + X →_{k1} 2X;&amp;lt;/math&amp;gt;     :&amp;lt;math&amp;gt; X + Y →_{k2} 2Y;&amp;lt;/math&amp;gt;     :&amp;lt;math&amp;gt;Y →_{k3} 2B  &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Como se puede observar, se trata de una reacción compleja integrada por 3 reacciones simples (las dos primeras autocatalíticas) en las que intervienen un total de 4 compuestos, A, B, X e Y. Siguiendo el desarrollo de la reacción, es lógico suponer que A se agotará al comienzo de la reacción, que los máximos de concentración de X e Y se darán en los estados intermedios y que al final el compuesto B será el único restante, siendo el producto final de la reacción.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Interpretación del problema y deducción de las ecuaciones diferenciales ==&lt;br /&gt;
&lt;br /&gt;
Para averiguar cómo evolucionan las concentraciones de los cuatro compuestos durante el desarrollo de la reacción necesitaremos obtener cuatro ecuaciones diferenciales. Para ello nos volveremos a basar en los principios físicos que ya empleamos en la anterior reacción. Definimos A(t), x(t), y(t), y B(t) (A, x, y, B; para ahorrar notación) a las concentraciones de A, X, Y, y B, respectivamente. &lt;br /&gt;
&lt;br /&gt;
En primer lugar aplicamos el Principio de Conservación de la masa, que establece que la suma de las concentraciones de los compuestos es constante (no desaparece masa en el proceso), lo que derivando nos indica que:&lt;br /&gt;
&lt;br /&gt;
: &amp;lt;math&amp;gt; A' + y' + y' + B' = 0 \quad\quad(I)&amp;lt;/math&amp;gt;       &lt;br /&gt;
&lt;br /&gt;
A continuación aplicaremos la Ley de Acción de Masas (velocidad de reacción proporcional al producto de la concentración de los reactivos).&lt;br /&gt;
&lt;br /&gt;
Aplicando esta ley a la última reacción simple obtenemos que: &lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;B'=k_3y \quad\quad(II)&amp;lt;/math&amp;gt;        &lt;br /&gt;
&lt;br /&gt;
En el caso de las concentraciones de X e Y las expresiones resultantes son algo más complicadas ya que estos dos compuestos actúan como reactivos y productos en más de una reacción simple, por lo que la variación de sus concentraciones será la suma de las variaciones de las reacciones en las que aparezcan:&lt;br /&gt;
&lt;br /&gt;
: &amp;lt;math&amp;gt; x' = x'_{1} + x'_{2} → x' = k_{1}Ax - k{2}xy \quad\quad(III)&amp;lt;/math&amp;gt;        &lt;br /&gt;
: &amp;lt;math&amp;gt; y' = y'_{2} + y'_{3} → y' = k_{2}xy − k_3{y} \quad\quad(IV)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Por último sustituimos (II), (III) y (IV) en (I) obteniendo: &lt;br /&gt;
&lt;br /&gt;
: &amp;lt;math&amp;gt; A' + k_{1}Ax - k{2}xy + k_{2}xy − k_3{y}+ k_3y= 0 : &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
De donde obtenemos que:&lt;br /&gt;
&lt;br /&gt;
: &amp;lt;math&amp;gt; A' = -k_{1}Ax &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Ahora que ya tenemos las variaciones de concentración de los compuestos en función de las concentraciones podemos aplicar métodos numéricos que nos lleven a una solución aproximada.&lt;br /&gt;
&lt;br /&gt;
== Resolución numérica del sistema de ecuaciones ==&lt;br /&gt;
=== Método de Euler ===&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Euler lotka0.01.png|400px|miniaturadeimagen|derecha|Representación gráfica de las concentraciones de A, B, X, e Y a lo largo del tiempo. Resoluciónd delsistema por el método de Euler con longitud de paso h=0.01]] &lt;br /&gt;
[[Archivo:Euler lotka0.001.png|400px|miniaturadeimagen|derecha|Representación gráfica de las concentraciones de A, B, X, e Y a lo largo del tiempo. Resoluciónd delsistema por el método de Euler con longitud de paso h=0.001]]&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
&lt;br /&gt;
%Resolución del sistema de la reacción de Lotka por el método de Euler&lt;br /&gt;
&lt;br /&gt;
clear all&lt;br /&gt;
&lt;br /&gt;
%Definimos la variable independiente y establecemos los datos del problema&lt;br /&gt;
%de valor inicial. Para la longitud de paso h introducimos en primer lugar&lt;br /&gt;
%0.01 y luego 0.001&lt;br /&gt;
&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=200;&lt;br /&gt;
h= input('Introduzca una longitud de paso ');&lt;br /&gt;
t = t0:h:tN;&lt;br /&gt;
N=(tN-t0)/h;&lt;br /&gt;
k1 = 0.1;&lt;br /&gt;
k2 = 0.1;&lt;br /&gt;
k3 = 0.05;&lt;br /&gt;
A0 = 5;&lt;br /&gt;
B0 = 0;&lt;br /&gt;
X0 = 5*10^(-4);&lt;br /&gt;
Y0 = 10^(-5);&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
%Definimos las variables dependientes.&lt;br /&gt;
&lt;br /&gt;
A = zeros(1, N-1);&lt;br /&gt;
B = A;&lt;br /&gt;
X = A;&lt;br /&gt;
Y = A;&lt;br /&gt;
&lt;br /&gt;
A(1) = A0;&lt;br /&gt;
B(1) = B0;&lt;br /&gt;
X(1) = X0;&lt;br /&gt;
Y(1) = Y0;&lt;br /&gt;
&lt;br /&gt;
for i = 1:N&lt;br /&gt;
    &lt;br /&gt;
    X(i+1) = X(i) + h*(k1*A(i)*X(i)-k2*Y(i)*X(i));&lt;br /&gt;
    Y(i+1)=Y(i)+h.*(k2.*X(i).*Y(i)-k3.*Y(i));&lt;br /&gt;
    B(i+1) = B(i) + h*(k3*Y(i));&lt;br /&gt;
    A(i+1) = A(i) + h*(-k1*A(i)*X(i));&lt;br /&gt;
   &lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
%Representamos gráficamente la solución&lt;br /&gt;
&lt;br /&gt;
hold on&lt;br /&gt;
&lt;br /&gt;
plot (t,A,'b')&lt;br /&gt;
plot(t, X, 'r')&lt;br /&gt;
plot(t,Y, 'g')&lt;br /&gt;
plot(t, B, 'm')&lt;br /&gt;
legend('Sustancia A: A(t)','Sustancia X: x(t)','Sustancia Y: y(t)','Sustancia B: B(t)','Location','Best')&lt;br /&gt;
xlabel('Tiempo (s)')&lt;br /&gt;
ylabel('Concentración (mol/l)')&lt;br /&gt;
grid on&lt;br /&gt;
&lt;br /&gt;
hold off&lt;br /&gt;
&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
=== Método de Heun ===&lt;br /&gt;
&lt;br /&gt;
Si bien el método de resolución numérica de Heun no involucra un número de parámetros tan notable como el método de Runge-Kutta, en este caso tenemos un sistema de 4 ecuaciones diferenciales, por lo que, en aras de simplificar, utilizaremos el mismo criterio que en el [[Reacciones_con_autocatálisis._Grupo_D12#Método_de_Runge-Kutta_2|apartado 2.5.2]].: El sistema se tratará como una matriz &amp;lt;math&amp;gt;z&amp;lt;/math&amp;gt;, y para la obtención de los parámetros &amp;lt;math&amp;gt;k_i&amp;lt;/math&amp;gt; utilizaremos la función ''inline'', con la que declararemos previamente las expresiones necesarias para el cálculo de los parámetros &amp;lt;math&amp;gt;k_i&amp;lt;/math&amp;gt;.&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Primero, expresamos el sistema en forma matricial:&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;(PVI)\begin{cases}&lt;br /&gt;
A'(t)=-k_1 A(t)x(t) \\&lt;br /&gt;
x'(t)=k_1 A(t)x(t)-k_2 x(t)y(t) \\&lt;br /&gt;
y'(t)=k_2 x(t)y(t)-k_3 y(t) \\&lt;br /&gt;
B'(t)=k_3 x(t)y(t) \\ \\&lt;br /&gt;
A(0)=5 \\&lt;br /&gt;
x(0)=5·10^{-4} \\&lt;br /&gt;
y(0)=10^{-5} \\&lt;br /&gt;
B(0) = 0&lt;br /&gt;
\end{cases}\quad t\in[0,200]&lt;br /&gt;
&lt;br /&gt;
\quad \Rightarrow \quad&lt;br /&gt;
&lt;br /&gt;
\begin{cases}&lt;br /&gt;
k_1=0.1 \\&lt;br /&gt;
k_2=0.1 \\&lt;br /&gt;
k_3=0.05 \\&lt;br /&gt;
&lt;br /&gt;
\end{cases}&lt;br /&gt;
&lt;br /&gt;
\quad \Rightarrow \quad&lt;br /&gt;
&lt;br /&gt;
(PVI)\begin{cases}\vec{z}'(t)=&lt;br /&gt;
   \begin{bmatrix}&lt;br /&gt;
      A'(t) \\&lt;br /&gt;
      x'(t) \\&lt;br /&gt;
      y'(t) \\&lt;br /&gt;
      B'(t) \\&lt;br /&gt;
   \end{bmatrix}&lt;br /&gt;
=&lt;br /&gt;
      \begin{bmatrix}&lt;br /&gt;
      -0.1 A(t)x(t) \\&lt;br /&gt;
      0.1 A(t)x(t)-0.1 x(t)y(t) \\&lt;br /&gt;
      0.1 x(t)y(t)-0.05 y(t) \\&lt;br /&gt;
      0.05 y(t)x(t)\\&lt;br /&gt;
   \end{bmatrix}&lt;br /&gt;
&lt;br /&gt;
 \\ \\ \vec{z}(0)=&lt;br /&gt;
   \begin{bmatrix}&lt;br /&gt;
      A(0) \\&lt;br /&gt;
      x(0) \\&lt;br /&gt;
      y(0) \\&lt;br /&gt;
      B(0) \\&lt;br /&gt;
   \end{bmatrix}&lt;br /&gt;
=&lt;br /&gt;
      \begin{bmatrix}&lt;br /&gt;
      5 \\&lt;br /&gt;
      5·10^{-4} \\&lt;br /&gt;
      10^{-5} \\&lt;br /&gt;
      0&lt;br /&gt;
   \end{bmatrix}&lt;br /&gt;
\end{cases}\quad t\in[0,200]&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
A continuación, detallamos la función &amp;lt;math&amp;gt;\vec{F}&amp;lt;/math&amp;gt; de la que dependerán los valores de los parámetros &amp;lt;math&amp;gt;k_i&amp;lt;/math&amp;gt;:&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;\vec{F}(A,x,y,B)=\vec{F}(\vec{z})=&lt;br /&gt;
\begin{bmatrix}&lt;br /&gt;
    f(\vec{z}) \\ &lt;br /&gt;
    g(\vec{z}) \\ &lt;br /&gt;
    h(\vec{z}) \\ &lt;br /&gt;
    i(\vec{z}) \\ &lt;br /&gt;
\end{bmatrix}=&lt;br /&gt;
\begin{bmatrix}&lt;br /&gt;
    A'(t) \\&lt;br /&gt;
    x'(t) \\&lt;br /&gt;
    y'(t) \\&lt;br /&gt;
    B'(t) \\&lt;br /&gt;
\end{bmatrix}=&lt;br /&gt;
\vec{z}'(t)=&lt;br /&gt;
      \begin{bmatrix}&lt;br /&gt;
      -0.1 A(t)x(t) \\&lt;br /&gt;
      0.1 A(t)x(t)-0.1 x(t)y(t) \\&lt;br /&gt;
      0.1 x(t)y(t)-0.05 y(t) \\&lt;br /&gt;
      0.05 y(t)x(t)\\&lt;br /&gt;
   \end{bmatrix}&lt;br /&gt;
&lt;br /&gt;
\quad \Rightarrow \quad &lt;br /&gt;
&lt;br /&gt;
\begin{cases}&lt;br /&gt;
 [\vec{k_1}] &amp;amp; =  F(\vec{z}_i) \\&lt;br /&gt;
 [\vec{k_2}] &amp;amp; =  F(\vec{z}_i + {1 \over 2}k_1h) \\&lt;br /&gt;
\end{cases}\quad [h=0.01]&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Entonces el método de Heun para este problema está dado por la siguiente ecuación:&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;\vec{z}_{i+1} = \vec{z}_{i} + {1 \over 2}h(\vec{k_1}+\vec{k_2})&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Mediante el siguiente programa en Matlab calculamos numéricamente la solución y la representamos en un gráfico:&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Archivo:AXYBRK4.png|400px|miniaturadeimagen|derecha|Representación gráfica de las concentraciones de A,X,Y y B. Resolución del sistema por Heun]]&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
%Método de Heun&lt;br /&gt;
clc&lt;br /&gt;
&lt;br /&gt;
%Función F=[A'(t);x'(t); y'(t);B'(t)]&lt;br /&gt;
F=inline('0.1.*[-z(1)*z(2);z(1)*z(2)-z(2)*z(3);z(2)*z(3)-z(3)/2;z(3)/2]','z');&lt;br /&gt;
&lt;br /&gt;
%Datos del problema&lt;br /&gt;
A0=5;&lt;br /&gt;
x0=5*10^-4;&lt;br /&gt;
y0=10^(-5);&lt;br /&gt;
B0=0;&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=200;&lt;br /&gt;
h=0.1;&lt;br /&gt;
&lt;br /&gt;
%Vector de variable independiente (t)&lt;br /&gt;
t=t0:h:tN;&lt;br /&gt;
&lt;br /&gt;
%Matriz de variables dependientes z=[A;x;y;B]&lt;br /&gt;
z=zeros(4,length(t));&lt;br /&gt;
z(:,1)=[A0;x0;y0;B0];&lt;br /&gt;
&lt;br /&gt;
for i = 1:length(t)-1&lt;br /&gt;
    k1=F(z(:,i));&lt;br /&gt;
    k2=F(z(:,i)+k1.*h/2);&lt;br /&gt;
    z(:,i+1)=z(:,i)+h/2.*(k1+k2);&lt;br /&gt;
end&lt;br /&gt;
 &lt;br /&gt;
%Representación gráfica&lt;br /&gt;
hold on&lt;br /&gt;
plot(t,z(1,:),'b')&lt;br /&gt;
plot(t,z(2,:),'r')&lt;br /&gt;
plot(t,z(3,:),'g')&lt;br /&gt;
plot(t,z(4,:),'m')&lt;br /&gt;
legend('Sustancia A: A(t)','Sustancia X: x(t)','Sustancia Y: y(t)','Sustancia B: B(t)','Location','Best')&lt;br /&gt;
xlabel('Tiempo (s)')&lt;br /&gt;
ylabel('Concentración (mol/l)')&lt;br /&gt;
grid on&lt;br /&gt;
hold off&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
== Interpretación de las gráficas == &lt;br /&gt;
 &lt;br /&gt;
El proceso comienza con el predominio absoluto del compuesto A en la concentración total, siendo la presencia de los otros tres compuestos despreciable. Durante los primeros segundos la situación apenas cambia, pero tras los diez primeros segundos la concentración de A cae bruscamente mientras que la concentración de X aumenta a la misma velocidad; antes de llegar a los veinte segundos transcurridos las concentraciones de ambos compuestos se igualan y otros quince segundos más tarde el compuesto A  prácticamente ha desaparecido y el X ha alcanzado su concentración máxima (5 mol/litro).&lt;br /&gt;
&lt;br /&gt;
Es entonces cuando concluye la primera reacción y comienzan las otras dos, al no haber más compuesto A que cree compuesto X. La velocidad de aparición de Y es inicialmente mayor que la de B, superando al poco tiempo en concentración a la sustancia X. Sin embargo, llega un momento en el que la concentración de X es tan baja que se ralentiza la creación de Y y pronto empieza a disminuir su concentración tras alcanzar un máximo en torno a los 56 segundos, perdiendo peso la segunda reacción en beneficio de la tercera.&lt;br /&gt;
&lt;br /&gt;
Tras los 60 segundos de reacción el compuesto X pasa a tener una concentración despreciable, por lo que la única reacción simple que se sigue desarrollando es la tercera, destruyéndose reactivo Y y creándose producto B. La concentración de Y va reduciéndose paulatinamente hasta que en torno a los 160 segundos de reacción alcanza niveles insignificantes mientras que la concentración de B alcanza su máximo de 5 mol/litro.&lt;br /&gt;
&lt;br /&gt;
Es interesante observar que en todo momento se cumple el Principio de Conservación de la masa: la suma en cualquier momento de las concentraciones de las sustancias es 5 mol /litro. Esto es fácilmente comprobable en los momentos en que las concentraciones de A, X y B alcanzan su máximo de 5 mol/litro y el resto de concentraciones son nulas o despreciables. &lt;br /&gt;
[[Categoría:Ecuaciones Diferenciales]]&lt;br /&gt;
[[Categoría:ED14/15]]&lt;br /&gt;
[[Categoría:Trabajos 2014-15]]&lt;/div&gt;</summary>
		<author><name>Javier Ruiz de Galarreta López</name></author>	</entry>

	</feed>