<?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=Joseva</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=Joseva"/>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/wiki/Especial:Contribuciones/Joseva"/>
		<updated>2026-04-30T23:02:29Z</updated>
		<subtitle>Contribuciones del usuario</subtitle>
		<generator>MediaWiki 1.26.2</generator>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Reacciones_complejas_(Grupo_D1)&amp;diff=27869</id>
		<title>Reacciones complejas (Grupo D1)</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Reacciones_complejas_(Grupo_D1)&amp;diff=27869"/>
				<updated>2015-03-06T11:53:28Z</updated>
		
		<summary type="html">&lt;p&gt;Joseva: /* Método del Trapecio y Método de Runge-Kutta */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{ TrabajoED | Reacciones complejas (Grupo D1) | [[:Categoría:Ecuaciones Diferenciales|Ecuaciones Diferenciales]]|[[:Categoría:ED14/15|Curso 2014-15]] | Rincón Crespo, Kevin&lt;br /&gt;
&lt;br /&gt;
Rodríguez Gómez, Javier&lt;br /&gt;
&lt;br /&gt;
Sans Jiménez, Alejandro&lt;br /&gt;
&lt;br /&gt;
Sesto Muñoz, María Victoria&lt;br /&gt;
&lt;br /&gt;
Vallejo Asín, José Manuel &lt;br /&gt;
&lt;br /&gt;
Villarino Redondo, Álvaro }}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=Introducción=&lt;br /&gt;
Se considera una reacción química irreversible en una solución bien mezclada. Supondremos que la reacción ocurre para un volumen y temperatura constantes. Al inicio se encuentran dos reactivos &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;B&amp;lt;/math&amp;gt;, que van formando un producto &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; en lo que se conoce como una reacción bimolecular, es decir, una molécula de &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt; y una de &amp;lt;math&amp;gt;B&amp;lt;/math&amp;gt; producen una de &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt;.: &lt;br /&gt;
                                                                     &amp;lt;math&amp;gt;A + B → C&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Supondremos también que se satisface la ley de acción de masas, que establece que la velocidad de reacción es proporcional al producto de las concentraciones de los reactivos.&lt;br /&gt;
&lt;br /&gt;
=Concentración del reactivo &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; a lo largo del tiempo=&lt;br /&gt;
En primer lugar, suponiendo que la reacción es irreversible, es decir, que &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; no puede volver a formar &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;B&amp;lt;/math&amp;gt;, se puede expresar la situación mediante el siguiente problema de valor inicial, cuando t&amp;gt;0.:&lt;br /&gt;
   &amp;lt;math&amp;gt;&lt;br /&gt;
   \left . &lt;br /&gt;
      \begin{matrix} &lt;br /&gt;
         y'(t)={k_{1}}({a_{0}}-y(t))({b_{0}}-y(t))=0\\&lt;br /&gt;
         y(0)=0&lt;br /&gt;
      \end{matrix}&lt;br /&gt;
   \right \}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Donde &amp;lt;math&amp;gt; {a_{0}}&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;{b_{0}}&amp;lt;/math&amp;gt; representan las concentraciones iniciales de '''A''' y '''B''' respectivamente y &amp;lt;math&amp;gt;{k_{1}}&amp;lt;/math&amp;gt; es la constante de proporcionalidad que indica la ley de acción de masas. &amp;lt;math&amp;gt;y’(t)&amp;lt;/math&amp;gt; representa la velocidad de reacción, es decir, la velocidad con que se forma el producto &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; ; mientras que la solución de la ecuación diferencial, &amp;lt;math&amp;gt;y(t)&amp;lt;/math&amp;gt; , representa la concentración de &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt;, la cantidad de compuesto que se ha formado. Para comprobar que la solución de este problema de Cauchy es única, comenzamos definiendo.:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;math&amp;gt;f(t,y)={k_{1}}({a_{0}}-y(t))({b_{0}}-y(t))=0,   t&amp;gt;0 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Observamos que &amp;lt;math&amp;gt;f(t,y)&amp;lt;/math&amp;gt; es continua en el intervalo &amp;lt;math&amp;gt; I=(0,∞)∩B((0,0),r&amp;gt;0)&amp;lt;/math&amp;gt;, por lo que ya aseguramos la existencia de al menos una solución. Examinando la derivada parcial.:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\frac{∂f}{∂y}=k_1(-a_0-b_0+2y)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Se deduce que al ser un polinomio no va a haber problemas de continuidad para ninguna bola. De esta forma, podemos asegurar que existe una única solución.&lt;br /&gt;
&lt;br /&gt;
==Concentración del reactivo C a lo largo del tiempo en un proceso reversible==&lt;br /&gt;
&lt;br /&gt;
Ahora bien, ¿qué pasaría si la reacción fuese reversible? Con esto lo que queremos indicar es que además de formarse  &amp;lt;math&amp;gt;C &amp;lt;/math&amp;gt;, este también se descompone de nuevo en  &amp;lt;math&amp;gt;A &amp;lt;/math&amp;gt; y  &amp;lt;math&amp;gt;B &amp;lt;/math&amp;gt;. Por lo tanto, nos quedaría una ecuación diferencial con la siguiente forma, cuando &amp;lt;math&amp;gt;t&amp;gt;0 &amp;lt;/math&amp;gt;. :&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; y'(t)={k_{1}}({a_{0}}-y(t))({b_{0}}-y(t))-Cy(t)&amp;lt;/math&amp;gt;  &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Si nos fijamos, la modificación es sencillamente restar  &amp;lt;math&amp;gt;y(t) &amp;lt;/math&amp;gt; multiplicada por una constante, la cual refleja qué porcentaje de  &amp;lt;math&amp;gt;C &amp;lt;/math&amp;gt; se va descomponiendo a medida que se da, simultáneamente, la reacción  &amp;lt;math&amp;gt;A + B → C &amp;lt;/math&amp;gt;. Sin embargo, esta constante no puede tener cualquier valor, ya que en una reacción se cumple la conservación de masa. Por ello, a  &amp;lt;math&amp;gt;C &amp;lt;/math&amp;gt; le asociaremos el siguiente dominio::&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;C∈(0,1)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Obsérvese que  &amp;lt;math&amp;gt;C &amp;lt;/math&amp;gt; tiene que ser mayor que 0 para que sea reversible, pero al mismo tiempo inferior que 1, ya que si no se estaría descomponiendo más compuesto  &amp;lt;math&amp;gt;C &amp;lt;/math&amp;gt; del que realmente se ha formado, en otras palabras, estaría apareciendo masa de la nada.&lt;br /&gt;
&lt;br /&gt;
=Método de Euler=&lt;br /&gt;
&lt;br /&gt;
Una vez llegados a este punto, se procede a ver una interpretación gráfica de la reacción. Para ello, se refleja en la gráfica (en un intervalo de 2 segundos), cómo varían las concentraciones tanto de &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt; (&amp;lt;math&amp;gt;a_0&amp;lt;/math&amp;gt;=3 mol/L) y &amp;lt;math&amp;gt;B&amp;lt;/math&amp;gt; (&amp;lt;math&amp;gt;b_0&amp;lt;/math&amp;gt;=1 mol/L) como de &amp;lt;math&amp;gt; C&amp;lt;/math&amp;gt;, para una &amp;lt;math&amp;gt;k_1&amp;lt;/math&amp;gt;=1 mol/s. Se comienza, por el momento, aplicando el método de Euler. Posteriormente se utilizarán métodos más precisos.&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo= &lt;br /&gt;
% Euler&lt;br /&gt;
clear all&lt;br /&gt;
% datos del problema&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=2;&lt;br /&gt;
y0=0;&lt;br /&gt;
h=0.1;&lt;br /&gt;
k1=1;&lt;br /&gt;
a0=3;&lt;br /&gt;
b0=1;&lt;br /&gt;
% Definimos la variable independiente&lt;br /&gt;
t=t0:h:tN;&lt;br /&gt;
% Guardamos los valores de la solución aproximada en el vector &amp;quot;y1&amp;quot; y&lt;br /&gt;
% establecemos los vectores de concentraciones A y B&lt;br /&gt;
y1=zeros(1,length(t)); &lt;br /&gt;
y1(1)=y0;&lt;br /&gt;
a1=zeros(1,length(t));&lt;br /&gt;
a1(1)=a0;&lt;br /&gt;
b1=zeros(1,length(t));&lt;br /&gt;
b1(1)=b0;&lt;br /&gt;
% A continuación, calculamos las componentes de los vectores y1, a1 y b1&lt;br /&gt;
for i=1:length(t)-1&lt;br /&gt;
    y1(i+1)=y1(i)+h*(k1*(a0-y1(i))*(b0-y1(i)));    %Euler&lt;br /&gt;
    a1(i+1)=a0-y1(i+1); % evolución de la concentración de A&lt;br /&gt;
    b1(i+1)=b0-y1(i+1); % evolución de la concentración de B&lt;br /&gt;
end&lt;br /&gt;
%grafico &lt;br /&gt;
figure(1)&lt;br /&gt;
hold on&lt;br /&gt;
plot(t,y1,'g')&lt;br /&gt;
plot(t,a1,'r')&lt;br /&gt;
plot(t,b1,'b')&lt;br /&gt;
legend('concentración de C','concentración de A','concentración de B','location','best')&lt;br /&gt;
hold off &lt;br /&gt;
%en verde se muestra la concentración de C, en rojo la de A, y en azul la de B&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Archivo:3euler.jpeg|500px|miniaturadeimagen|center|Reacción compleja]]&lt;br /&gt;
&lt;br /&gt;
Aunque con observar los resultados ya podemos decir con casi absoluta seguridad cuáles son los límites de las concentraciones de cada reactivo &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;B&amp;lt;/math&amp;gt; y del producto &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt;, se ha diseñado un programa que, mediante diferencia de valores sucesivos de la variable &amp;lt;math&amp;gt;y(t)&amp;lt;/math&amp;gt;, nos devuelve el valor de la función cuando dicha diferencia es muy pequeña '''(se ha puesto una diferencia de 0.001)''', es decir, cuando tenemos una asíntota al tender &amp;lt;math&amp;gt;t→∞&amp;lt;/math&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
%Estudio de las asíntotas&lt;br /&gt;
t1=t0:h:10;%se aumenta la longitud de t, y se estima que se alcanzarán las asíntotas antes de t=10&lt;br /&gt;
y_=zeros(1,length(t1)); %se define un vector y_ idéntico a y1 pero con t hasta 10&lt;br /&gt;
a_=y_;&lt;br /&gt;
b_=y_;&lt;br /&gt;
y_(1)=y0;&lt;br /&gt;
a_(1)=a0;&lt;br /&gt;
b_(1)=b0;&lt;br /&gt;
for i=1:length(t1)-1&lt;br /&gt;
    y_(i+1)=y_(i)+h*(k1*(a0-y_(i))*(b0-y_(i)));&lt;br /&gt;
    diferencia=y_(i+1)-y_(i);&lt;br /&gt;
    if abs(diferencia)&amp;lt;=0.001&lt;br /&gt;
        limC=y_(i+1)&lt;br /&gt;
        break&lt;br /&gt;
    end&lt;br /&gt;
end&lt;br /&gt;
for i=1:length(t1)-1&lt;br /&gt;
    y_(i+1)=y_(i)+h*(k1*(a0-y_(i))*(b0-y_(i)));    &lt;br /&gt;
    a_(i+1)=a0-y_(i+1);&lt;br /&gt;
    diferencia2=a_(i+1)-a_(i);&lt;br /&gt;
    if abs(diferencia2)&amp;lt;=0.001&lt;br /&gt;
        limA=a_(i+1)&lt;br /&gt;
        break&lt;br /&gt;
    end&lt;br /&gt;
end&lt;br /&gt;
for i=1:length(t1)-1&lt;br /&gt;
    y_(i+1)=y_(i)+h*(k1*(a0-y_(i))*(b0-y_(i)));    &lt;br /&gt;
    b_(i+1)=b0-y_(i+1);&lt;br /&gt;
    diferencia3=b_(i+1)-b_(i);&lt;br /&gt;
    if abs(diferencia3)&amp;lt;=0.001&lt;br /&gt;
        limB=b_(i+1)&lt;br /&gt;
        break&lt;br /&gt;
    end&lt;br /&gt;
end&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
Que nos devuelve unos valores de las concentraciones para el límite de:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\lim A=2,0036≈2 mol/L&amp;lt;/math&amp;gt;:     &lt;br /&gt;
&amp;lt;math&amp;gt;\lim B=0,0036≈0mol/L&amp;lt;/math&amp;gt;:         &lt;br /&gt;
&amp;lt;math&amp;gt;\lim C=0,9964≈1mol/L&amp;lt;/math&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
Lo cual es lógico, ya que &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;B&amp;lt;/math&amp;gt; se combinan en una proporción de 1:1, luego &amp;lt;math&amp;gt;B&amp;lt;/math&amp;gt;, que tiene una concentración inicial de &amp;lt;math&amp;gt;b_0&amp;lt;/math&amp;gt;=1, será el reactivo limitante (el que desaparecerá por completo), mientras que &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt;, con &amp;lt;math&amp;gt;a_0&amp;lt;/math&amp;gt;=3, acabará con una concentración molar final igual a 2, y &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt;, del que no habia nada,alcanza una concentraccion de &amp;lt;math&amp;gt;1mol/L&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
= Método del Trapecio y Método de Runge-Kutta=&lt;br /&gt;
&lt;br /&gt;
A continuación, para obtener con más precisión las representaciones gráficas de las respectivas concentraciones, se opta por utilizar los métodos de los &amp;lt;math&amp;gt;Trapecios&amp;lt;/math&amp;gt; (segundo orden) y de &amp;lt;math&amp;gt;Runge-Kutta&amp;lt;/math&amp;gt; (cuarto orden). Además, se ha obtenido la expresión explícita de la solución de nuestro problema de valor inicial de manera analítica, mediante variables separables y fracciones simples, resultando la función real::&lt;br /&gt;
&amp;lt;math&amp;gt;y_e(t)=\frac{3e^{2t}-3}{3e^{2t}-1}&amp;lt;/math&amp;gt;&lt;br /&gt;
De manera que las concentraciones de A y de B en cada valor de t quedarían como::&lt;br /&gt;
&amp;lt;math&amp;gt;a_e(t)=a_0-y_e(t)&amp;lt;/math&amp;gt;:&lt;br /&gt;
&amp;lt;math&amp;gt;b_e (t)=b_0-y_e (t)&amp;lt;/math&amp;gt;:&lt;br /&gt;
Para los trapecios, al ser un método implícito, es necesario despejar la componente &amp;lt;math&amp;gt;y_{n+1}&amp;lt;/math&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;y_{n+1}=\frac{(1+\frac{h}{2}∙k_1∙(a_0+b_0))-\sqrt{(1+\frac{h}{2}∙k_1∙(a_0+b_0))^2 -2∙h∙k_1(y_n+\frac{h}{2}∙k_1∙(a_0-y_n )∙(b_0-y_n)+\frac{h}{2}∙k_1∙a_0∙b_0) }}{k_1∙h}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Cabe destacar que este programa parte de los datos ya establecidos en el programa de Euler para '''t0, tN, y0, a0, b0, k1 y h''':&lt;br /&gt;
{{matlab|codigo= &lt;br /&gt;
%Función real&lt;br /&gt;
ye=(3*exp(2.*t)-3)./(3*exp(2.*t)-1);&lt;br /&gt;
ae=a0-ye;&lt;br /&gt;
be=b0-ye;&lt;br /&gt;
&lt;br /&gt;
%Trapecios&lt;br /&gt;
y2=zeros(1,length(t)); &lt;br /&gt;
a2=y2;&lt;br /&gt;
b2=y2;&lt;br /&gt;
y2(1)=y0;&lt;br /&gt;
a2(1)=a0;&lt;br /&gt;
b2(1)=b0;&lt;br /&gt;
for i= 1:length(t)-1&lt;br /&gt;
    y2(i+1)=((1+0.5*h*k1*(a0+b0))-sqrt((1+0.5*h*k1*(a0+b0))^2-2*h*k1*(y2(i)+0.5*h*k1*(a0-y2(i))*(b0-  y2(i))+0.5*h*k1*a0*b0)))/(k1*h);&lt;br /&gt;
    a2(i+1)=a0-y2(i+1);&lt;br /&gt;
    b2(i+1)=b0-y2(i+1);&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
%Runge-Kutta&lt;br /&gt;
y3=zeros(1,length(t)); &lt;br /&gt;
a3=y3;&lt;br /&gt;
b3=y3;&lt;br /&gt;
y3(1)=y0;&lt;br /&gt;
a3(1)=a0;&lt;br /&gt;
b3(1)=b0;&lt;br /&gt;
for i=1:length(t)-1 &lt;br /&gt;
    r1=k1*(a0-y3(i))*(b0-y3(i));&lt;br /&gt;
    r2=k1*(a0-y3(i)-0.5*r1*h)*(b0-y3(i)-0.5*r1*h);&lt;br /&gt;
    r3=k1*(a0-y3(i)-0.5*r2*h)*(b0-y3(i)-0.5*r2*h);&lt;br /&gt;
    r4=k1*(a0-y3(i)-r3*h)*(b0-y3(i)-r3*h);&lt;br /&gt;
    y3(i+1)=y3(i)+h/6*(r1+2*r2+2*r3+r4);&lt;br /&gt;
    a3(i+1)=a0-y3(i+1);&lt;br /&gt;
    b3(i+1)=b0-y3(i+1);&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
%se pintan las cuatro gráficas, con la función real en verde y los puntos con asteriscos, &lt;br /&gt;
%Euler en rojo, los Trapecios en azul, y Runge-Kutta en negro&lt;br /&gt;
figure(2)&lt;br /&gt;
hold on&lt;br /&gt;
&lt;br /&gt;
plot(t,ye,'g*-')&lt;br /&gt;
plot(t,y2)&lt;br /&gt;
plot(t,y3,'k')&lt;br /&gt;
plot(t,y1,'r')&lt;br /&gt;
legend('Función real','Trapecios', 'Runge-Kutta', 'Euler','Location','best');&lt;br /&gt;
plot(t,ae,'g*')&lt;br /&gt;
plot(t,a2)&lt;br /&gt;
plot(t,a3,'k')&lt;br /&gt;
plot(t,a1,'r')&lt;br /&gt;
plot(t,be,'g*')&lt;br /&gt;
plot(t,b2)&lt;br /&gt;
plot(t,b3,'k')&lt;br /&gt;
plot(t,b1,'r')&lt;br /&gt;
hold off&lt;br /&gt;
&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
Los resultados del programa se muestran en las dos siguientes figuras. Como podemos observar, el método de ''Euler'', en &amp;lt;span style=&amp;quot;color:#FF0000;&amp;quot;&amp;gt;Rojo&amp;lt;/span&amp;gt;, rápidamente se separa de los demás y de la función real, lo que es debido a que es un método de orden 1 y su precisión es bastante reducida. Para analizar el comportamiento de los otros dos métodos, se ha hecho un zoom en una zona aleatoria de la gráfica, y se muestra en la figura 2. Lo lógico, debido a que es de orden 2, es que el método de los trapecios sea el siguiente que se aleje de la solución real, y esto es precisamente lo que se evidencia en la gráfica, pues como vemos, la línea &amp;lt;span style=&amp;quot;color:#0000FF;&amp;quot;&amp;gt;Azul&amp;lt;/span&amp;gt; se separa de la negra y de la &amp;lt;span style=&amp;quot;color:#00FF00;&amp;quot;&amp;gt;Verde&amp;lt;/span&amp;gt;. Es por tanto que el método de ''Runge-Kutta'' es el más preciso de todos, haciendo honor a su cuarto orden, y como podemos observar, las líneas &amp;lt;span style=&amp;quot;color:#00FF00;&amp;quot;&amp;gt;Verde&amp;lt;/span&amp;gt; y negra son casi indistinguibles. &lt;br /&gt;
&lt;br /&gt;
Es importante también atender a la escala que se muestra en la figura 2, que nos da una idea de los rangos en el eje de ordenadas de los que estamos hablando. Cabe decir que estamos trabajando con un paso de h=0.1, lo que significa que con un paso menor, estas diferencias serian mucho menos perceptibles.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Archivo:ejer4euler.jpeg|500px|miniaturadeimagen|center|&lt;br /&gt;
Fifura 1]]&lt;br /&gt;
&lt;br /&gt;
[[Archivo:ejer4zoom.jpeg|500px|miniaturadeimagen|center|Figura 2]]&lt;br /&gt;
&lt;br /&gt;
=Reacción consecutiva=&lt;br /&gt;
&lt;br /&gt;
Consideremos ahora que se produce una reacción consecutiva de la forma.: &lt;br /&gt;
&lt;br /&gt;
                                                                   &amp;lt;math&amp;gt;A + B → k_1C → k_2D&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
De tal modo que los reactivos &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;B&amp;lt;/math&amp;gt; se combinan en la proporción 1:1 para formar compuesto &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt;, el cual, a su vez, se va descomponiendo para formar compuesto &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt;. Al igual que se ha hecho antes al analizar las otras reacciones, se considerará que se cumple la ley de acción de masas. Es decir, la velocidad con la que se forma compuesto &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; es proporcional a las concentraciones existentes de &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt; y de &amp;lt;math&amp;gt;B&amp;lt;/math&amp;gt; y del mismo modo la de formación de la sustancia &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; lo es a la concentración de &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; que se ha ido formando.&lt;br /&gt;
&lt;br /&gt;
Esta reacción consecutiva está representada por el siguiente problema de valor inicial::&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;&lt;br /&gt;
   \left . &lt;br /&gt;
      \begin{matrix} &lt;br /&gt;
         y'_1(t)={k_{1}}({a_{0}}-y_1(t))({b_{0}}-y_1(t))\\&lt;br /&gt;
         y'_2(t)={k_{2}}(y_1(t)-y_2(t))\\&lt;br /&gt;
y_1(0)=0\\y_2(0)=0&lt;br /&gt;
      \end{matrix}&lt;br /&gt;
   \right \}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
Donde &amp;lt;math&amp;gt;a_0&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;b_0&amp;lt;/math&amp;gt; representan las concentraciones iniciales de &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;B&amp;lt;/math&amp;gt; respectivamente, &amp;lt;math&amp;gt;k_1&amp;lt;/math&amp;gt; es la constante de proporcionalidad que rige la primera reacción y &amp;lt;math&amp;gt;k_2&amp;lt;/math&amp;gt; la que rige la segunda reacción o reacción consecutiva. &amp;lt;math&amp;gt;y_1’(t)&amp;lt;/math&amp;gt; e  &amp;lt;math&amp;gt;y_2’(t)&amp;lt;/math&amp;gt; representan las velocidades de las reacciones, es decir, las velocidades con que se forman los productos &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt;. &amp;lt;math&amp;gt;y_2(t)&amp;lt;/math&amp;gt; representa la concentración del producto &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; pero es importante apreciar que en este caso &amp;lt;math&amp;gt;y_1(t)&amp;lt;/math&amp;gt; no nos da el valor de la concentración de &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; directamente, sino que ésta será &amp;lt;math&amp;gt;y_1(t)&amp;lt;/math&amp;gt;- &amp;lt;math&amp;gt;y_2(t)&amp;lt;/math&amp;gt;, la cantidad que se forma en la primera reacción menos la que se emplea para formar el producto &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; en la segunda.&lt;br /&gt;
&lt;br /&gt;
Este problema se va a resolver para dos casos diferentes. Uno en el cual se considera que la segunda reacción es más rápida que la primera, lo que supone tomar un valor de la constante &amp;lt;math&amp;gt;k_2&amp;lt;/math&amp;gt;  mayor que &amp;lt;math&amp;gt;k_1&amp;lt;/math&amp;gt;. Y otro en el cual se considera que es más lenta, lo que implica que &amp;lt;math&amp;gt;k_2&amp;lt;/math&amp;gt; es menor que &amp;lt;math&amp;gt;k_1&amp;lt;/math&amp;gt;. Concretamente vamos a tomar los siguientes valores para resolver el problema numéricamente; &amp;lt;math&amp;gt;a_0&amp;lt;/math&amp;gt;=3 ,  &amp;lt;math&amp;gt;b_0&amp;lt;/math&amp;gt;=1, &amp;lt;math&amp;gt;k_1&amp;lt;/math&amp;gt;=1,  &amp;lt;math&amp;gt;k_2&amp;lt;/math&amp;gt;=5, &amp;lt;math&amp;gt;k_2&amp;lt;/math&amp;gt;=1/5, .En ambos casos se resuelve para los primeros 10 segundos.&lt;br /&gt;
&lt;br /&gt;
==La reacción D es más rápida que la reacción C==&lt;br /&gt;
CASO    &amp;lt;math&amp;gt;k_1=5  &amp;lt;/math&amp;gt;   '''h=0.1''' &lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
&lt;br /&gt;
%datos&lt;br /&gt;
y0=[0;0];&lt;br /&gt;
z0=[0;0];&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;
%matriz de las soluciones&lt;br /&gt;
y=zeros(2,length(t)); %euler&lt;br /&gt;
y(:,1)=y0;&lt;br /&gt;
 &lt;br /&gt;
z=zeros(2,length(t)); %runge-kutta&lt;br /&gt;
z(:,1)=y0;&lt;br /&gt;
 &lt;br /&gt;
for i=1:length(t)-1&lt;br /&gt;
 %euler&lt;br /&gt;
 y(:,i+1)=y(:,i)+h*[1*(3-y(1,i))*(1-y(1,i)); 5*(y(1,i)-y(2,i))];&lt;br /&gt;
 %runge-kutta&lt;br /&gt;
 K1=[1*(3-z(1,i))*(1-z(1,i)); 5*(z(1,i)-z(2,i))];&lt;br /&gt;
 K2=[1*(3-(z(1,i)+h/2*K1(1)))*(1-(z(1,i)+h/2*K1(1))); 5*((y(1,i)+h/2*K1(2))-(y(2,i)+h/2*K1(2)))];&lt;br /&gt;
 K3=[1*(3-(z(1,i)+h/2*K2(1)))*(1-(z(1,i)+h/2*K2(1))); 5*((y(1,i)+h/2*K2(2))-(y(2,i)+h/2*K2(2)))];&lt;br /&gt;
 K4=[1*(3-(z(1,i)+h*K3(1)))*(1-(z(1,i)+h*K3(1))); 5*((y(1,i)+h*K3(2))-(y(2,i)+h*K3(2)))];&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;
% se calcula la concentración de C=y1t)-y2(t)&lt;br /&gt;
Ay=y(1,:)-y(2,:); %euler&lt;br /&gt;
Az=z(1,:)-z(2,:); %runge-kutta&lt;br /&gt;
 &lt;br /&gt;
figure(1)&lt;br /&gt;
hold on&lt;br /&gt;
plot(t,Ay) %concentración de C por euler&lt;br /&gt;
plot(t,y(2,:),'r') %concentración de D por euler&lt;br /&gt;
plot(t,Az,'k') %concentración de C por runge-kutta&lt;br /&gt;
plot(t,z(2,:),'g') %concentración de D por runge-kutta&lt;br /&gt;
legend('concentración de C por euler','concentración de D por euler','concentración de C por runge-kutta','concentración de D por runge-kutta','Location','best')&lt;br /&gt;
hold off&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:graficoa.jpeg|500px|miniaturadeimagen|center|Reacción compleja]]&lt;br /&gt;
&lt;br /&gt;
Se observa que en en los primeros instantes aumentan las concentraciones de &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; aumentan sus concentraciones. Antes de que pase 1 segundo, la concentración &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; alcanza un máximo (de unos 0.3 molar) y va disminuyendo progresivamente hasta alcanzar un valor de 0 molar. La concentración &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; sigue creciendo hasta llegar a 1 molar. Una vez que tanto &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; como &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; alcanzan estos valores, se estabiliza la reacción. &lt;br /&gt;
&lt;br /&gt;
Como hemos impuesto que la reacción &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; es más rápida que &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt;, se observa que &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; empieza creciendo más rápidamente, pero como reacciona más despacio que &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; su concentración disminuye progresivamente, mientras que la de &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; aumenta.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''CASO'''  &amp;lt;math&amp;gt;k_2=5  &amp;lt;/math&amp;gt;   '''h=0.3''' &lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
&lt;br /&gt;
%datos&lt;br /&gt;
y0=[0;0];&lt;br /&gt;
z0=[0;0];&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=10;&lt;br /&gt;
h=0.3;&lt;br /&gt;
 &lt;br /&gt;
%variable independiente t&lt;br /&gt;
t=t0:h:tN;&lt;br /&gt;
 &lt;br /&gt;
%matriz de las soluciones&lt;br /&gt;
y=zeros(2,length(t)); %euler&lt;br /&gt;
y(:,1)=y0;&lt;br /&gt;
 &lt;br /&gt;
z=zeros(2,length(t)); %runge-kutta&lt;br /&gt;
z(:,1)=y0;&lt;br /&gt;
 &lt;br /&gt;
for i=1:length(t)-1&lt;br /&gt;
 %euler&lt;br /&gt;
 y(:,i+1)=y(:,i)+h*[1*(3-y(1,i))*(1-y(1,i)); 5*(y(1,i)-y(2,i))];&lt;br /&gt;
 %runge-kutta&lt;br /&gt;
 K1=[1*(3-z(1,i))*(1-z(1,i)); 5*(z(1,i)-z(2,i))];&lt;br /&gt;
 K2=[1*(3-(z(1,i)+h/2*K1(1)))*(1-(z(1,i)+h/2*K1(1))); 5*((y(1,i)+h/2*K1(2))-(y(2,i)+h/2*K1(2)))];&lt;br /&gt;
 K3=[1*(3-(z(1,i)+h/2*K2(1)))*(1-(z(1,i)+h/2*K2(1))); 5*((y(1,i)+h/2*K2(2))-(y(2,i)+h/2*K2(2)))];&lt;br /&gt;
 K4=[1*(3-(z(1,i)+h*K3(1)))*(1-(z(1,i)+h*K3(1))); 5*((y(1,i)+h*K3(2))-(y(2,i)+h*K3(2)))];&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;
% se calcula la concentración de C=y1t)-y2(t)&lt;br /&gt;
Ay=y(1,:)-y(2,:); %euler&lt;br /&gt;
Az=z(1,:)-z(2,:); %runge-kutta&lt;br /&gt;
 &lt;br /&gt;
figure(1)&lt;br /&gt;
hold on&lt;br /&gt;
plot(t,Ay) %concentración de C por euler&lt;br /&gt;
plot(t,y(2,:),'r') %concentración de D por euler&lt;br /&gt;
plot(t,Az,'k') %concentración de C por runge-kutta&lt;br /&gt;
plot(t,z(2,:),'g') %concentración de D por runge-kutta&lt;br /&gt;
legend('concentración de C por euler','concentración de D por euler','concentración de C por runge-kutta','concentración de D por runge-kutta','Location','best')&lt;br /&gt;
hold off&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:graficob.jpeg|500px|miniaturadeimagen|center|Reacción compleja]]&lt;br /&gt;
&lt;br /&gt;
Repetimos el programa pero para un tamaño de paso mayor, de '''h=0.3''', y observamos que no  es suficientemente preciso, sobre todo al principio, no se puede analizar bien lo que está pasando en la reacción.&lt;br /&gt;
&lt;br /&gt;
==La reacción D es más lenta que la reacción C==&lt;br /&gt;
&lt;br /&gt;
CASO  &amp;lt;math&amp;gt;k_1 &amp;lt;/math&amp;gt;=1,   &amp;lt;math&amp;gt;k_2 &amp;lt;/math&amp;gt;=1/5&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
&lt;br /&gt;
%datos&lt;br /&gt;
y0=[0;0];&lt;br /&gt;
z0=[0;0];&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;
%matriz de las soluciones&lt;br /&gt;
y=zeros(2,length(t)); %euler&lt;br /&gt;
y(:,1)=y0;&lt;br /&gt;
 &lt;br /&gt;
z=zeros(2,length(t)); %runge-kutta&lt;br /&gt;
z(:,1)=y0;&lt;br /&gt;
 &lt;br /&gt;
for i=1:length(t)-1&lt;br /&gt;
 %euler&lt;br /&gt;
 y(:,i+1)=y(:,i)+h*[1*(3-y(1,i))*(1-y(1,i)); 1/5*(y(1,i)-y(2,i))];&lt;br /&gt;
 %runge-kutta&lt;br /&gt;
 K1=[1*(3-z(1,i))*(1-z(1,i)); 1/5*(z(1,i)-z(2,i))];&lt;br /&gt;
 K2=[1*(3-(z(1,i)+h/2*K1(1)))*(1-(z(1,i)+h/2*K1(1))); 1/5*((y(1,i)+h/2*K1(2))-(y(2,i)+h/2*K1(2)))];&lt;br /&gt;
 K3=[1*(3-(z(1,i)+h/2*K2(1)))*(1-(z(1,i)+h/2*K2(1))); 1/5*((y(1,i)+h/2*K2(2))-(y(2,i)+h/2*K2(2)))];&lt;br /&gt;
 K4=[1*(3-(z(1,i)+h*K3(1)))*(1-(z(1,i)+h*K3(1))); 1/5*((y(1,i)+h*K3(2))-(y(2,i)+h*K3(2)))];&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;
% se calcula la concentración de C=y1t)-y2(t)&lt;br /&gt;
Ay=y(1,:)-y(2,:); %euler&lt;br /&gt;
Az=z(1,:)-z(2,:); %runge-kutta&lt;br /&gt;
 &lt;br /&gt;
figure(1)&lt;br /&gt;
hold on&lt;br /&gt;
plot(t,Ay) %concentración de C por euler&lt;br /&gt;
plot(t,y(2,:),'r') %concentración de D por euler&lt;br /&gt;
plot(t,Az,'k') %concentración de C por runge-kutta&lt;br /&gt;
plot(t,z(2,:),'g') %concentración de D por runge-kutta&lt;br /&gt;
legend('concentración de C por euler','concentración de D por euler','concentración de C por runge-kutta','concentración de D por runge-kutta','Location','best')&lt;br /&gt;
hold off&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:graficoc.jpeg|500px|miniaturadeimagen|center|Reacción compleja]]&lt;br /&gt;
&lt;br /&gt;
Si ahora imponemos que la reacción  &amp;lt;math&amp;gt;C &amp;lt;/math&amp;gt; es más rápida que  &amp;lt;math&amp;gt;D &amp;lt;/math&amp;gt;, obtenemos lo siguiente. Se parece a la gráfica que obtuvimos en el programa anterior, pero  más extendida en el tiempo, más lenta.  &amp;lt;math&amp;gt;C &amp;lt;/math&amp;gt; alcanza una concentración máxima de unos 0.8 molar antes de empezar a decrecer a medida que avanza el tiempo y acercándose a un valor de '''0''' molar.  &amp;lt;math&amp;gt;D &amp;lt;/math&amp;gt; crece más lentamente que en la gráfica anterior, pero se aproxima al mismo valor, '''1''' molar.&lt;br /&gt;
Se observa que aunque hagamos la reacción  &amp;lt;math&amp;gt;C &amp;lt;/math&amp;gt; más rápida, tenemos las mismas concentraciones finales, pero tardan más tiempo en obtenerse, ya que la reacción tarda más en estabilizarse.&lt;br /&gt;
&lt;br /&gt;
&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>Joseva</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Reacciones_complejas_(Grupo_D1)&amp;diff=27867</id>
		<title>Reacciones complejas (Grupo D1)</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Reacciones_complejas_(Grupo_D1)&amp;diff=27867"/>
				<updated>2015-03-06T11:52:54Z</updated>
		
		<summary type="html">&lt;p&gt;Joseva: /* Método del Trapecio y Método de Runge-Kutta */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{ TrabajoED | Reacciones complejas (Grupo D1) | [[:Categoría:Ecuaciones Diferenciales|Ecuaciones Diferenciales]]|[[:Categoría:ED14/15|Curso 2014-15]] | Rincón Crespo, Kevin&lt;br /&gt;
&lt;br /&gt;
Rodríguez Gómez, Javier&lt;br /&gt;
&lt;br /&gt;
Sans Jiménez, Alejandro&lt;br /&gt;
&lt;br /&gt;
Sesto Muñoz, María Victoria&lt;br /&gt;
&lt;br /&gt;
Vallejo Asín, José Manuel &lt;br /&gt;
&lt;br /&gt;
Villarino Redondo, Álvaro }}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=Introducción=&lt;br /&gt;
Se considera una reacción química irreversible en una solución bien mezclada. Supondremos que la reacción ocurre para un volumen y temperatura constantes. Al inicio se encuentran dos reactivos &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;B&amp;lt;/math&amp;gt;, que van formando un producto &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; en lo que se conoce como una reacción bimolecular, es decir, una molécula de &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt; y una de &amp;lt;math&amp;gt;B&amp;lt;/math&amp;gt; producen una de &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt;.: &lt;br /&gt;
                                                                     &amp;lt;math&amp;gt;A + B → C&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Supondremos también que se satisface la ley de acción de masas, que establece que la velocidad de reacción es proporcional al producto de las concentraciones de los reactivos.&lt;br /&gt;
&lt;br /&gt;
=Concentración del reactivo &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; a lo largo del tiempo=&lt;br /&gt;
En primer lugar, suponiendo que la reacción es irreversible, es decir, que &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; no puede volver a formar &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;B&amp;lt;/math&amp;gt;, se puede expresar la situación mediante el siguiente problema de valor inicial, cuando t&amp;gt;0.:&lt;br /&gt;
   &amp;lt;math&amp;gt;&lt;br /&gt;
   \left . &lt;br /&gt;
      \begin{matrix} &lt;br /&gt;
         y'(t)={k_{1}}({a_{0}}-y(t))({b_{0}}-y(t))=0\\&lt;br /&gt;
         y(0)=0&lt;br /&gt;
      \end{matrix}&lt;br /&gt;
   \right \}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Donde &amp;lt;math&amp;gt; {a_{0}}&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;{b_{0}}&amp;lt;/math&amp;gt; representan las concentraciones iniciales de '''A''' y '''B''' respectivamente y &amp;lt;math&amp;gt;{k_{1}}&amp;lt;/math&amp;gt; es la constante de proporcionalidad que indica la ley de acción de masas. &amp;lt;math&amp;gt;y’(t)&amp;lt;/math&amp;gt; representa la velocidad de reacción, es decir, la velocidad con que se forma el producto &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; ; mientras que la solución de la ecuación diferencial, &amp;lt;math&amp;gt;y(t)&amp;lt;/math&amp;gt; , representa la concentración de &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt;, la cantidad de compuesto que se ha formado. Para comprobar que la solución de este problema de Cauchy es única, comenzamos definiendo.:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;math&amp;gt;f(t,y)={k_{1}}({a_{0}}-y(t))({b_{0}}-y(t))=0,   t&amp;gt;0 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Observamos que &amp;lt;math&amp;gt;f(t,y)&amp;lt;/math&amp;gt; es continua en el intervalo &amp;lt;math&amp;gt; I=(0,∞)∩B((0,0),r&amp;gt;0)&amp;lt;/math&amp;gt;, por lo que ya aseguramos la existencia de al menos una solución. Examinando la derivada parcial.:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\frac{∂f}{∂y}=k_1(-a_0-b_0+2y)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Se deduce que al ser un polinomio no va a haber problemas de continuidad para ninguna bola. De esta forma, podemos asegurar que existe una única solución.&lt;br /&gt;
&lt;br /&gt;
==Concentración del reactivo C a lo largo del tiempo en un proceso reversible==&lt;br /&gt;
&lt;br /&gt;
Ahora bien, ¿qué pasaría si la reacción fuese reversible? Con esto lo que queremos indicar es que además de formarse  &amp;lt;math&amp;gt;C &amp;lt;/math&amp;gt;, este también se descompone de nuevo en  &amp;lt;math&amp;gt;A &amp;lt;/math&amp;gt; y  &amp;lt;math&amp;gt;B &amp;lt;/math&amp;gt;. Por lo tanto, nos quedaría una ecuación diferencial con la siguiente forma, cuando &amp;lt;math&amp;gt;t&amp;gt;0 &amp;lt;/math&amp;gt;. :&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; y'(t)={k_{1}}({a_{0}}-y(t))({b_{0}}-y(t))-Cy(t)&amp;lt;/math&amp;gt;  &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Si nos fijamos, la modificación es sencillamente restar  &amp;lt;math&amp;gt;y(t) &amp;lt;/math&amp;gt; multiplicada por una constante, la cual refleja qué porcentaje de  &amp;lt;math&amp;gt;C &amp;lt;/math&amp;gt; se va descomponiendo a medida que se da, simultáneamente, la reacción  &amp;lt;math&amp;gt;A + B → C &amp;lt;/math&amp;gt;. Sin embargo, esta constante no puede tener cualquier valor, ya que en una reacción se cumple la conservación de masa. Por ello, a  &amp;lt;math&amp;gt;C &amp;lt;/math&amp;gt; le asociaremos el siguiente dominio::&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;C∈(0,1)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Obsérvese que  &amp;lt;math&amp;gt;C &amp;lt;/math&amp;gt; tiene que ser mayor que 0 para que sea reversible, pero al mismo tiempo inferior que 1, ya que si no se estaría descomponiendo más compuesto  &amp;lt;math&amp;gt;C &amp;lt;/math&amp;gt; del que realmente se ha formado, en otras palabras, estaría apareciendo masa de la nada.&lt;br /&gt;
&lt;br /&gt;
=Método de Euler=&lt;br /&gt;
&lt;br /&gt;
Una vez llegados a este punto, se procede a ver una interpretación gráfica de la reacción. Para ello, se refleja en la gráfica (en un intervalo de 2 segundos), cómo varían las concentraciones tanto de &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt; (&amp;lt;math&amp;gt;a_0&amp;lt;/math&amp;gt;=3 mol/L) y &amp;lt;math&amp;gt;B&amp;lt;/math&amp;gt; (&amp;lt;math&amp;gt;b_0&amp;lt;/math&amp;gt;=1 mol/L) como de &amp;lt;math&amp;gt; C&amp;lt;/math&amp;gt;, para una &amp;lt;math&amp;gt;k_1&amp;lt;/math&amp;gt;=1 mol/s. Se comienza, por el momento, aplicando el método de Euler. Posteriormente se utilizarán métodos más precisos.&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo= &lt;br /&gt;
% Euler&lt;br /&gt;
clear all&lt;br /&gt;
% datos del problema&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=2;&lt;br /&gt;
y0=0;&lt;br /&gt;
h=0.1;&lt;br /&gt;
k1=1;&lt;br /&gt;
a0=3;&lt;br /&gt;
b0=1;&lt;br /&gt;
% Definimos la variable independiente&lt;br /&gt;
t=t0:h:tN;&lt;br /&gt;
% Guardamos los valores de la solución aproximada en el vector &amp;quot;y1&amp;quot; y&lt;br /&gt;
% establecemos los vectores de concentraciones A y B&lt;br /&gt;
y1=zeros(1,length(t)); &lt;br /&gt;
y1(1)=y0;&lt;br /&gt;
a1=zeros(1,length(t));&lt;br /&gt;
a1(1)=a0;&lt;br /&gt;
b1=zeros(1,length(t));&lt;br /&gt;
b1(1)=b0;&lt;br /&gt;
% A continuación, calculamos las componentes de los vectores y1, a1 y b1&lt;br /&gt;
for i=1:length(t)-1&lt;br /&gt;
    y1(i+1)=y1(i)+h*(k1*(a0-y1(i))*(b0-y1(i)));    %Euler&lt;br /&gt;
    a1(i+1)=a0-y1(i+1); % evolución de la concentración de A&lt;br /&gt;
    b1(i+1)=b0-y1(i+1); % evolución de la concentración de B&lt;br /&gt;
end&lt;br /&gt;
%grafico &lt;br /&gt;
figure(1)&lt;br /&gt;
hold on&lt;br /&gt;
plot(t,y1,'g')&lt;br /&gt;
plot(t,a1,'r')&lt;br /&gt;
plot(t,b1,'b')&lt;br /&gt;
legend('concentración de C','concentración de A','concentración de B','location','best')&lt;br /&gt;
hold off &lt;br /&gt;
%en verde se muestra la concentración de C, en rojo la de A, y en azul la de B&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Archivo:3euler.jpeg|500px|miniaturadeimagen|center|Reacción compleja]]&lt;br /&gt;
&lt;br /&gt;
Aunque con observar los resultados ya podemos decir con casi absoluta seguridad cuáles son los límites de las concentraciones de cada reactivo &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;B&amp;lt;/math&amp;gt; y del producto &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt;, se ha diseñado un programa que, mediante diferencia de valores sucesivos de la variable &amp;lt;math&amp;gt;y(t)&amp;lt;/math&amp;gt;, nos devuelve el valor de la función cuando dicha diferencia es muy pequeña '''(se ha puesto una diferencia de 0.001)''', es decir, cuando tenemos una asíntota al tender &amp;lt;math&amp;gt;t→∞&amp;lt;/math&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
%Estudio de las asíntotas&lt;br /&gt;
t1=t0:h:10;%se aumenta la longitud de t, y se estima que se alcanzarán las asíntotas antes de t=10&lt;br /&gt;
y_=zeros(1,length(t1)); %se define un vector y_ idéntico a y1 pero con t hasta 10&lt;br /&gt;
a_=y_;&lt;br /&gt;
b_=y_;&lt;br /&gt;
y_(1)=y0;&lt;br /&gt;
a_(1)=a0;&lt;br /&gt;
b_(1)=b0;&lt;br /&gt;
for i=1:length(t1)-1&lt;br /&gt;
    y_(i+1)=y_(i)+h*(k1*(a0-y_(i))*(b0-y_(i)));&lt;br /&gt;
    diferencia=y_(i+1)-y_(i);&lt;br /&gt;
    if abs(diferencia)&amp;lt;=0.001&lt;br /&gt;
        limC=y_(i+1)&lt;br /&gt;
        break&lt;br /&gt;
    end&lt;br /&gt;
end&lt;br /&gt;
for i=1:length(t1)-1&lt;br /&gt;
    y_(i+1)=y_(i)+h*(k1*(a0-y_(i))*(b0-y_(i)));    &lt;br /&gt;
    a_(i+1)=a0-y_(i+1);&lt;br /&gt;
    diferencia2=a_(i+1)-a_(i);&lt;br /&gt;
    if abs(diferencia2)&amp;lt;=0.001&lt;br /&gt;
        limA=a_(i+1)&lt;br /&gt;
        break&lt;br /&gt;
    end&lt;br /&gt;
end&lt;br /&gt;
for i=1:length(t1)-1&lt;br /&gt;
    y_(i+1)=y_(i)+h*(k1*(a0-y_(i))*(b0-y_(i)));    &lt;br /&gt;
    b_(i+1)=b0-y_(i+1);&lt;br /&gt;
    diferencia3=b_(i+1)-b_(i);&lt;br /&gt;
    if abs(diferencia3)&amp;lt;=0.001&lt;br /&gt;
        limB=b_(i+1)&lt;br /&gt;
        break&lt;br /&gt;
    end&lt;br /&gt;
end&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
Que nos devuelve unos valores de las concentraciones para el límite de:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\lim A=2,0036≈2 mol/L&amp;lt;/math&amp;gt;:     &lt;br /&gt;
&amp;lt;math&amp;gt;\lim B=0,0036≈0mol/L&amp;lt;/math&amp;gt;:         &lt;br /&gt;
&amp;lt;math&amp;gt;\lim C=0,9964≈1mol/L&amp;lt;/math&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
Lo cual es lógico, ya que &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;B&amp;lt;/math&amp;gt; se combinan en una proporción de 1:1, luego &amp;lt;math&amp;gt;B&amp;lt;/math&amp;gt;, que tiene una concentración inicial de &amp;lt;math&amp;gt;b_0&amp;lt;/math&amp;gt;=1, será el reactivo limitante (el que desaparecerá por completo), mientras que &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt;, con &amp;lt;math&amp;gt;a_0&amp;lt;/math&amp;gt;=3, acabará con una concentración molar final igual a 2, y &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt;, del que no habia nada,alcanza una concentraccion de &amp;lt;math&amp;gt;1mol/L&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
= Método del Trapecio y Método de Runge-Kutta=&lt;br /&gt;
&lt;br /&gt;
A continuación, para obtener con más precisión las representaciones gráficas de las respectivas concentraciones, se opta por utilizar los métodos de los &amp;lt;math&amp;gt;Trapecios&amp;lt;/math&amp;gt; (segundo orden) y de &amp;lt;math&amp;gt;Runge-Kutta&amp;lt;/math&amp;gt; (cuarto orden). Además, se ha obtenido la expresión explícita de la solución de nuestro problema de valor inicial de manera analítica, mediante variables separables y fracciones simples, resultando la función real::&lt;br /&gt;
&amp;lt;math&amp;gt;y_e(t)=\frac{3e^{2t}-3}{3e^{2t}-1}&amp;lt;/math&amp;gt;&lt;br /&gt;
De manera que las concentraciones de A y de B en cada valor de t quedarían como::&lt;br /&gt;
&amp;lt;math&amp;gt;a_e(t)=a_0-y_e(t)&amp;lt;/math&amp;gt;:&lt;br /&gt;
&amp;lt;math&amp;gt;b_e (t)=b_0-y_e (t)&amp;lt;/math&amp;gt;:&lt;br /&gt;
Para los trapecios, al ser un método implícito, es necesario despejar la componente &amp;lt;math&amp;gt;y_{n+1}&amp;lt;/math&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;y_{n+1}=\frac{(1+\frac{h}{2}∙k_1∙(a_0+b_0))-\sqrt{(1+\frac{h}{2}∙k_1∙(a_0+b_0))^2 -2∙h∙k_1(y_n+\frac{h}{2}∙k_1∙(a_0-y_n )∙(b_0-y_n)+\frac{h}{2}∙k_1∙a_0∙b_0) }}{k_1∙h}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Cabe destacar que este programa parte de los datos ya establecidos en el programa de Euler para '''t0, tN, y0, a0, b0, k1 y h''':&lt;br /&gt;
{{matlab|codigo= &lt;br /&gt;
%Función real&lt;br /&gt;
ye=(3*exp(2.*t)-3)./(3*exp(2.*t)-1);&lt;br /&gt;
ae=a0-ye;&lt;br /&gt;
be=b0-ye;&lt;br /&gt;
&lt;br /&gt;
%Trapecios&lt;br /&gt;
y2=zeros(1,length(t)); &lt;br /&gt;
a2=y2;&lt;br /&gt;
b2=y2;&lt;br /&gt;
y2(1)=y0;&lt;br /&gt;
a2(1)=a0;&lt;br /&gt;
b2(1)=b0;&lt;br /&gt;
for i= 1:length(t)-1&lt;br /&gt;
    y2(i+1)=((1+0.5*h*k1*(a0+b0))-sqrt((1+0.5*h*k1*(a0+b0))^2-2*h*k1*(y2(i)+0.5*h*k1*(a0-y2(i))*(b0-  y2(i))+0.5*h*k1*a0*b0)))/(k1*h);&lt;br /&gt;
a2(i+1)=a0-y2(i+1);&lt;br /&gt;
b2(i+1)=b0-y2(i+1);&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
%Runge-Kutta&lt;br /&gt;
y3=zeros(1,length(t)); &lt;br /&gt;
a3=y3;&lt;br /&gt;
b3=y3;&lt;br /&gt;
y3(1)=y0;&lt;br /&gt;
a3(1)=a0;&lt;br /&gt;
b3(1)=b0;&lt;br /&gt;
for i=1:length(t)-1 &lt;br /&gt;
    r1=k1*(a0-y3(i))*(b0-y3(i));&lt;br /&gt;
    r2=k1*(a0-y3(i)-0.5*r1*h)*(b0-y3(i)-0.5*r1*h);&lt;br /&gt;
    r3=k1*(a0-y3(i)-0.5*r2*h)*(b0-y3(i)-0.5*r2*h);&lt;br /&gt;
    r4=k1*(a0-y3(i)-r3*h)*(b0-y3(i)-r3*h);&lt;br /&gt;
    y3(i+1)=y3(i)+h/6*(r1+2*r2+2*r3+r4);&lt;br /&gt;
    a3(i+1)=a0-y3(i+1);&lt;br /&gt;
    b3(i+1)=b0-y3(i+1);&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
%se pintan las cuatro gráficas, con la función real en verde y los puntos con asteriscos, &lt;br /&gt;
%Euler en rojo, los Trapecios en azul, y Runge-Kutta en negro&lt;br /&gt;
figure(2)&lt;br /&gt;
hold on&lt;br /&gt;
&lt;br /&gt;
plot(t,ye,'g*-')&lt;br /&gt;
plot(t,y2)&lt;br /&gt;
plot(t,y3,'k')&lt;br /&gt;
plot(t,y1,'r')&lt;br /&gt;
legend('Función real','Trapecios', 'Runge-Kutta', 'Euler','Location','best');&lt;br /&gt;
plot(t,ae,'g*')&lt;br /&gt;
plot(t,a2)&lt;br /&gt;
plot(t,a3,'k')&lt;br /&gt;
plot(t,a1,'r')&lt;br /&gt;
plot(t,be,'g*')&lt;br /&gt;
plot(t,b2)&lt;br /&gt;
plot(t,b3,'k')&lt;br /&gt;
plot(t,b1,'r')&lt;br /&gt;
hold off&lt;br /&gt;
&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
Los resultados del programa se muestran en las dos siguientes figuras. Como podemos observar, el método de ''Euler'', en &amp;lt;span style=&amp;quot;color:#FF0000;&amp;quot;&amp;gt;Rojo&amp;lt;/span&amp;gt;, rápidamente se separa de los demás y de la función real, lo que es debido a que es un método de orden 1 y su precisión es bastante reducida. Para analizar el comportamiento de los otros dos métodos, se ha hecho un zoom en una zona aleatoria de la gráfica, y se muestra en la figura 2. Lo lógico, debido a que es de orden 2, es que el método de los trapecios sea el siguiente que se aleje de la solución real, y esto es precisamente lo que se evidencia en la gráfica, pues como vemos, la línea &amp;lt;span style=&amp;quot;color:#0000FF;&amp;quot;&amp;gt;Azul&amp;lt;/span&amp;gt; se separa de la negra y de la &amp;lt;span style=&amp;quot;color:#00FF00;&amp;quot;&amp;gt;Verde&amp;lt;/span&amp;gt;. Es por tanto que el método de ''Runge-Kutta'' es el más preciso de todos, haciendo honor a su cuarto orden, y como podemos observar, las líneas &amp;lt;span style=&amp;quot;color:#00FF00;&amp;quot;&amp;gt;Verde&amp;lt;/span&amp;gt; y negra son casi indistinguibles. &lt;br /&gt;
&lt;br /&gt;
Es importante también atender a la escala que se muestra en la figura 2, que nos da una idea de los rangos en el eje de ordenadas de los que estamos hablando. Cabe decir que estamos trabajando con un paso de h=0.1, lo que significa que con un paso menor, estas diferencias serian mucho menos perceptibles.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Archivo:ejer4euler.jpeg|500px|miniaturadeimagen|center|&lt;br /&gt;
Fifura 1]]&lt;br /&gt;
&lt;br /&gt;
[[Archivo:ejer4zoom.jpeg|500px|miniaturadeimagen|center|Figura 2]]&lt;br /&gt;
&lt;br /&gt;
=Reacción consecutiva=&lt;br /&gt;
&lt;br /&gt;
Consideremos ahora que se produce una reacción consecutiva de la forma.: &lt;br /&gt;
&lt;br /&gt;
                                                                   &amp;lt;math&amp;gt;A + B → k_1C → k_2D&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
De tal modo que los reactivos &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;B&amp;lt;/math&amp;gt; se combinan en la proporción 1:1 para formar compuesto &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt;, el cual, a su vez, se va descomponiendo para formar compuesto &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt;. Al igual que se ha hecho antes al analizar las otras reacciones, se considerará que se cumple la ley de acción de masas. Es decir, la velocidad con la que se forma compuesto &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; es proporcional a las concentraciones existentes de &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt; y de &amp;lt;math&amp;gt;B&amp;lt;/math&amp;gt; y del mismo modo la de formación de la sustancia &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; lo es a la concentración de &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; que se ha ido formando.&lt;br /&gt;
&lt;br /&gt;
Esta reacción consecutiva está representada por el siguiente problema de valor inicial::&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;&lt;br /&gt;
   \left . &lt;br /&gt;
      \begin{matrix} &lt;br /&gt;
         y'_1(t)={k_{1}}({a_{0}}-y_1(t))({b_{0}}-y_1(t))\\&lt;br /&gt;
         y'_2(t)={k_{2}}(y_1(t)-y_2(t))\\&lt;br /&gt;
y_1(0)=0\\y_2(0)=0&lt;br /&gt;
      \end{matrix}&lt;br /&gt;
   \right \}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
Donde &amp;lt;math&amp;gt;a_0&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;b_0&amp;lt;/math&amp;gt; representan las concentraciones iniciales de &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;B&amp;lt;/math&amp;gt; respectivamente, &amp;lt;math&amp;gt;k_1&amp;lt;/math&amp;gt; es la constante de proporcionalidad que rige la primera reacción y &amp;lt;math&amp;gt;k_2&amp;lt;/math&amp;gt; la que rige la segunda reacción o reacción consecutiva. &amp;lt;math&amp;gt;y_1’(t)&amp;lt;/math&amp;gt; e  &amp;lt;math&amp;gt;y_2’(t)&amp;lt;/math&amp;gt; representan las velocidades de las reacciones, es decir, las velocidades con que se forman los productos &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt;. &amp;lt;math&amp;gt;y_2(t)&amp;lt;/math&amp;gt; representa la concentración del producto &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; pero es importante apreciar que en este caso &amp;lt;math&amp;gt;y_1(t)&amp;lt;/math&amp;gt; no nos da el valor de la concentración de &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; directamente, sino que ésta será &amp;lt;math&amp;gt;y_1(t)&amp;lt;/math&amp;gt;- &amp;lt;math&amp;gt;y_2(t)&amp;lt;/math&amp;gt;, la cantidad que se forma en la primera reacción menos la que se emplea para formar el producto &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; en la segunda.&lt;br /&gt;
&lt;br /&gt;
Este problema se va a resolver para dos casos diferentes. Uno en el cual se considera que la segunda reacción es más rápida que la primera, lo que supone tomar un valor de la constante &amp;lt;math&amp;gt;k_2&amp;lt;/math&amp;gt;  mayor que &amp;lt;math&amp;gt;k_1&amp;lt;/math&amp;gt;. Y otro en el cual se considera que es más lenta, lo que implica que &amp;lt;math&amp;gt;k_2&amp;lt;/math&amp;gt; es menor que &amp;lt;math&amp;gt;k_1&amp;lt;/math&amp;gt;. Concretamente vamos a tomar los siguientes valores para resolver el problema numéricamente; &amp;lt;math&amp;gt;a_0&amp;lt;/math&amp;gt;=3 ,  &amp;lt;math&amp;gt;b_0&amp;lt;/math&amp;gt;=1, &amp;lt;math&amp;gt;k_1&amp;lt;/math&amp;gt;=1,  &amp;lt;math&amp;gt;k_2&amp;lt;/math&amp;gt;=5, &amp;lt;math&amp;gt;k_2&amp;lt;/math&amp;gt;=1/5, .En ambos casos se resuelve para los primeros 10 segundos.&lt;br /&gt;
&lt;br /&gt;
==La reacción D es más rápida que la reacción C==&lt;br /&gt;
CASO    &amp;lt;math&amp;gt;k_1=5  &amp;lt;/math&amp;gt;   '''h=0.1''' &lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
&lt;br /&gt;
%datos&lt;br /&gt;
y0=[0;0];&lt;br /&gt;
z0=[0;0];&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;
%matriz de las soluciones&lt;br /&gt;
y=zeros(2,length(t)); %euler&lt;br /&gt;
y(:,1)=y0;&lt;br /&gt;
 &lt;br /&gt;
z=zeros(2,length(t)); %runge-kutta&lt;br /&gt;
z(:,1)=y0;&lt;br /&gt;
 &lt;br /&gt;
for i=1:length(t)-1&lt;br /&gt;
 %euler&lt;br /&gt;
 y(:,i+1)=y(:,i)+h*[1*(3-y(1,i))*(1-y(1,i)); 5*(y(1,i)-y(2,i))];&lt;br /&gt;
 %runge-kutta&lt;br /&gt;
 K1=[1*(3-z(1,i))*(1-z(1,i)); 5*(z(1,i)-z(2,i))];&lt;br /&gt;
 K2=[1*(3-(z(1,i)+h/2*K1(1)))*(1-(z(1,i)+h/2*K1(1))); 5*((y(1,i)+h/2*K1(2))-(y(2,i)+h/2*K1(2)))];&lt;br /&gt;
 K3=[1*(3-(z(1,i)+h/2*K2(1)))*(1-(z(1,i)+h/2*K2(1))); 5*((y(1,i)+h/2*K2(2))-(y(2,i)+h/2*K2(2)))];&lt;br /&gt;
 K4=[1*(3-(z(1,i)+h*K3(1)))*(1-(z(1,i)+h*K3(1))); 5*((y(1,i)+h*K3(2))-(y(2,i)+h*K3(2)))];&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;
% se calcula la concentración de C=y1t)-y2(t)&lt;br /&gt;
Ay=y(1,:)-y(2,:); %euler&lt;br /&gt;
Az=z(1,:)-z(2,:); %runge-kutta&lt;br /&gt;
 &lt;br /&gt;
figure(1)&lt;br /&gt;
hold on&lt;br /&gt;
plot(t,Ay) %concentración de C por euler&lt;br /&gt;
plot(t,y(2,:),'r') %concentración de D por euler&lt;br /&gt;
plot(t,Az,'k') %concentración de C por runge-kutta&lt;br /&gt;
plot(t,z(2,:),'g') %concentración de D por runge-kutta&lt;br /&gt;
legend('concentración de C por euler','concentración de D por euler','concentración de C por runge-kutta','concentración de D por runge-kutta','Location','best')&lt;br /&gt;
hold off&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:graficoa.jpeg|500px|miniaturadeimagen|center|Reacción compleja]]&lt;br /&gt;
&lt;br /&gt;
Se observa que en en los primeros instantes aumentan las concentraciones de &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; aumentan sus concentraciones. Antes de que pase 1 segundo, la concentración &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; alcanza un máximo (de unos 0.3 molar) y va disminuyendo progresivamente hasta alcanzar un valor de 0 molar. La concentración &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; sigue creciendo hasta llegar a 1 molar. Una vez que tanto &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; como &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; alcanzan estos valores, se estabiliza la reacción. &lt;br /&gt;
&lt;br /&gt;
Como hemos impuesto que la reacción &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; es más rápida que &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt;, se observa que &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; empieza creciendo más rápidamente, pero como reacciona más despacio que &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; su concentración disminuye progresivamente, mientras que la de &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; aumenta.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''CASO'''  &amp;lt;math&amp;gt;k_2=5  &amp;lt;/math&amp;gt;   '''h=0.3''' &lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
&lt;br /&gt;
%datos&lt;br /&gt;
y0=[0;0];&lt;br /&gt;
z0=[0;0];&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=10;&lt;br /&gt;
h=0.3;&lt;br /&gt;
 &lt;br /&gt;
%variable independiente t&lt;br /&gt;
t=t0:h:tN;&lt;br /&gt;
 &lt;br /&gt;
%matriz de las soluciones&lt;br /&gt;
y=zeros(2,length(t)); %euler&lt;br /&gt;
y(:,1)=y0;&lt;br /&gt;
 &lt;br /&gt;
z=zeros(2,length(t)); %runge-kutta&lt;br /&gt;
z(:,1)=y0;&lt;br /&gt;
 &lt;br /&gt;
for i=1:length(t)-1&lt;br /&gt;
 %euler&lt;br /&gt;
 y(:,i+1)=y(:,i)+h*[1*(3-y(1,i))*(1-y(1,i)); 5*(y(1,i)-y(2,i))];&lt;br /&gt;
 %runge-kutta&lt;br /&gt;
 K1=[1*(3-z(1,i))*(1-z(1,i)); 5*(z(1,i)-z(2,i))];&lt;br /&gt;
 K2=[1*(3-(z(1,i)+h/2*K1(1)))*(1-(z(1,i)+h/2*K1(1))); 5*((y(1,i)+h/2*K1(2))-(y(2,i)+h/2*K1(2)))];&lt;br /&gt;
 K3=[1*(3-(z(1,i)+h/2*K2(1)))*(1-(z(1,i)+h/2*K2(1))); 5*((y(1,i)+h/2*K2(2))-(y(2,i)+h/2*K2(2)))];&lt;br /&gt;
 K4=[1*(3-(z(1,i)+h*K3(1)))*(1-(z(1,i)+h*K3(1))); 5*((y(1,i)+h*K3(2))-(y(2,i)+h*K3(2)))];&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;
% se calcula la concentración de C=y1t)-y2(t)&lt;br /&gt;
Ay=y(1,:)-y(2,:); %euler&lt;br /&gt;
Az=z(1,:)-z(2,:); %runge-kutta&lt;br /&gt;
 &lt;br /&gt;
figure(1)&lt;br /&gt;
hold on&lt;br /&gt;
plot(t,Ay) %concentración de C por euler&lt;br /&gt;
plot(t,y(2,:),'r') %concentración de D por euler&lt;br /&gt;
plot(t,Az,'k') %concentración de C por runge-kutta&lt;br /&gt;
plot(t,z(2,:),'g') %concentración de D por runge-kutta&lt;br /&gt;
legend('concentración de C por euler','concentración de D por euler','concentración de C por runge-kutta','concentración de D por runge-kutta','Location','best')&lt;br /&gt;
hold off&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:graficob.jpeg|500px|miniaturadeimagen|center|Reacción compleja]]&lt;br /&gt;
&lt;br /&gt;
Repetimos el programa pero para un tamaño de paso mayor, de '''h=0.3''', y observamos que no  es suficientemente preciso, sobre todo al principio, no se puede analizar bien lo que está pasando en la reacción.&lt;br /&gt;
&lt;br /&gt;
==La reacción D es más lenta que la reacción C==&lt;br /&gt;
&lt;br /&gt;
CASO  &amp;lt;math&amp;gt;k_1 &amp;lt;/math&amp;gt;=1,   &amp;lt;math&amp;gt;k_2 &amp;lt;/math&amp;gt;=1/5&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
&lt;br /&gt;
%datos&lt;br /&gt;
y0=[0;0];&lt;br /&gt;
z0=[0;0];&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;
%matriz de las soluciones&lt;br /&gt;
y=zeros(2,length(t)); %euler&lt;br /&gt;
y(:,1)=y0;&lt;br /&gt;
 &lt;br /&gt;
z=zeros(2,length(t)); %runge-kutta&lt;br /&gt;
z(:,1)=y0;&lt;br /&gt;
 &lt;br /&gt;
for i=1:length(t)-1&lt;br /&gt;
 %euler&lt;br /&gt;
 y(:,i+1)=y(:,i)+h*[1*(3-y(1,i))*(1-y(1,i)); 1/5*(y(1,i)-y(2,i))];&lt;br /&gt;
 %runge-kutta&lt;br /&gt;
 K1=[1*(3-z(1,i))*(1-z(1,i)); 1/5*(z(1,i)-z(2,i))];&lt;br /&gt;
 K2=[1*(3-(z(1,i)+h/2*K1(1)))*(1-(z(1,i)+h/2*K1(1))); 1/5*((y(1,i)+h/2*K1(2))-(y(2,i)+h/2*K1(2)))];&lt;br /&gt;
 K3=[1*(3-(z(1,i)+h/2*K2(1)))*(1-(z(1,i)+h/2*K2(1))); 1/5*((y(1,i)+h/2*K2(2))-(y(2,i)+h/2*K2(2)))];&lt;br /&gt;
 K4=[1*(3-(z(1,i)+h*K3(1)))*(1-(z(1,i)+h*K3(1))); 1/5*((y(1,i)+h*K3(2))-(y(2,i)+h*K3(2)))];&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;
% se calcula la concentración de C=y1t)-y2(t)&lt;br /&gt;
Ay=y(1,:)-y(2,:); %euler&lt;br /&gt;
Az=z(1,:)-z(2,:); %runge-kutta&lt;br /&gt;
 &lt;br /&gt;
figure(1)&lt;br /&gt;
hold on&lt;br /&gt;
plot(t,Ay) %concentración de C por euler&lt;br /&gt;
plot(t,y(2,:),'r') %concentración de D por euler&lt;br /&gt;
plot(t,Az,'k') %concentración de C por runge-kutta&lt;br /&gt;
plot(t,z(2,:),'g') %concentración de D por runge-kutta&lt;br /&gt;
legend('concentración de C por euler','concentración de D por euler','concentración de C por runge-kutta','concentración de D por runge-kutta','Location','best')&lt;br /&gt;
hold off&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:graficoc.jpeg|500px|miniaturadeimagen|center|Reacción compleja]]&lt;br /&gt;
&lt;br /&gt;
Si ahora imponemos que la reacción  &amp;lt;math&amp;gt;C &amp;lt;/math&amp;gt; es más rápida que  &amp;lt;math&amp;gt;D &amp;lt;/math&amp;gt;, obtenemos lo siguiente. Se parece a la gráfica que obtuvimos en el programa anterior, pero  más extendida en el tiempo, más lenta.  &amp;lt;math&amp;gt;C &amp;lt;/math&amp;gt; alcanza una concentración máxima de unos 0.8 molar antes de empezar a decrecer a medida que avanza el tiempo y acercándose a un valor de '''0''' molar.  &amp;lt;math&amp;gt;D &amp;lt;/math&amp;gt; crece más lentamente que en la gráfica anterior, pero se aproxima al mismo valor, '''1''' molar.&lt;br /&gt;
Se observa que aunque hagamos la reacción  &amp;lt;math&amp;gt;C &amp;lt;/math&amp;gt; más rápida, tenemos las mismas concentraciones finales, pero tardan más tiempo en obtenerse, ya que la reacción tarda más en estabilizarse.&lt;br /&gt;
&lt;br /&gt;
&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>Joseva</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Reacciones_complejas_(Grupo_D1)&amp;diff=27864</id>
		<title>Reacciones complejas (Grupo D1)</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Reacciones_complejas_(Grupo_D1)&amp;diff=27864"/>
				<updated>2015-03-06T11:52:35Z</updated>
		
		<summary type="html">&lt;p&gt;Joseva: /* Método del Trapecio y Método de Runge-Kutta */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{ TrabajoED | Reacciones complejas (Grupo D1) | [[:Categoría:Ecuaciones Diferenciales|Ecuaciones Diferenciales]]|[[:Categoría:ED14/15|Curso 2014-15]] | Rincón Crespo, Kevin&lt;br /&gt;
&lt;br /&gt;
Rodríguez Gómez, Javier&lt;br /&gt;
&lt;br /&gt;
Sans Jiménez, Alejandro&lt;br /&gt;
&lt;br /&gt;
Sesto Muñoz, María Victoria&lt;br /&gt;
&lt;br /&gt;
Vallejo Asín, José Manuel &lt;br /&gt;
&lt;br /&gt;
Villarino Redondo, Álvaro }}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=Introducción=&lt;br /&gt;
Se considera una reacción química irreversible en una solución bien mezclada. Supondremos que la reacción ocurre para un volumen y temperatura constantes. Al inicio se encuentran dos reactivos &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;B&amp;lt;/math&amp;gt;, que van formando un producto &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; en lo que se conoce como una reacción bimolecular, es decir, una molécula de &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt; y una de &amp;lt;math&amp;gt;B&amp;lt;/math&amp;gt; producen una de &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt;.: &lt;br /&gt;
                                                                     &amp;lt;math&amp;gt;A + B → C&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Supondremos también que se satisface la ley de acción de masas, que establece que la velocidad de reacción es proporcional al producto de las concentraciones de los reactivos.&lt;br /&gt;
&lt;br /&gt;
=Concentración del reactivo &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; a lo largo del tiempo=&lt;br /&gt;
En primer lugar, suponiendo que la reacción es irreversible, es decir, que &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; no puede volver a formar &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;B&amp;lt;/math&amp;gt;, se puede expresar la situación mediante el siguiente problema de valor inicial, cuando t&amp;gt;0.:&lt;br /&gt;
   &amp;lt;math&amp;gt;&lt;br /&gt;
   \left . &lt;br /&gt;
      \begin{matrix} &lt;br /&gt;
         y'(t)={k_{1}}({a_{0}}-y(t))({b_{0}}-y(t))=0\\&lt;br /&gt;
         y(0)=0&lt;br /&gt;
      \end{matrix}&lt;br /&gt;
   \right \}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Donde &amp;lt;math&amp;gt; {a_{0}}&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;{b_{0}}&amp;lt;/math&amp;gt; representan las concentraciones iniciales de '''A''' y '''B''' respectivamente y &amp;lt;math&amp;gt;{k_{1}}&amp;lt;/math&amp;gt; es la constante de proporcionalidad que indica la ley de acción de masas. &amp;lt;math&amp;gt;y’(t)&amp;lt;/math&amp;gt; representa la velocidad de reacción, es decir, la velocidad con que se forma el producto &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; ; mientras que la solución de la ecuación diferencial, &amp;lt;math&amp;gt;y(t)&amp;lt;/math&amp;gt; , representa la concentración de &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt;, la cantidad de compuesto que se ha formado. Para comprobar que la solución de este problema de Cauchy es única, comenzamos definiendo.:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;math&amp;gt;f(t,y)={k_{1}}({a_{0}}-y(t))({b_{0}}-y(t))=0,   t&amp;gt;0 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Observamos que &amp;lt;math&amp;gt;f(t,y)&amp;lt;/math&amp;gt; es continua en el intervalo &amp;lt;math&amp;gt; I=(0,∞)∩B((0,0),r&amp;gt;0)&amp;lt;/math&amp;gt;, por lo que ya aseguramos la existencia de al menos una solución. Examinando la derivada parcial.:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\frac{∂f}{∂y}=k_1(-a_0-b_0+2y)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Se deduce que al ser un polinomio no va a haber problemas de continuidad para ninguna bola. De esta forma, podemos asegurar que existe una única solución.&lt;br /&gt;
&lt;br /&gt;
==Concentración del reactivo C a lo largo del tiempo en un proceso reversible==&lt;br /&gt;
&lt;br /&gt;
Ahora bien, ¿qué pasaría si la reacción fuese reversible? Con esto lo que queremos indicar es que además de formarse  &amp;lt;math&amp;gt;C &amp;lt;/math&amp;gt;, este también se descompone de nuevo en  &amp;lt;math&amp;gt;A &amp;lt;/math&amp;gt; y  &amp;lt;math&amp;gt;B &amp;lt;/math&amp;gt;. Por lo tanto, nos quedaría una ecuación diferencial con la siguiente forma, cuando &amp;lt;math&amp;gt;t&amp;gt;0 &amp;lt;/math&amp;gt;. :&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; y'(t)={k_{1}}({a_{0}}-y(t))({b_{0}}-y(t))-Cy(t)&amp;lt;/math&amp;gt;  &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Si nos fijamos, la modificación es sencillamente restar  &amp;lt;math&amp;gt;y(t) &amp;lt;/math&amp;gt; multiplicada por una constante, la cual refleja qué porcentaje de  &amp;lt;math&amp;gt;C &amp;lt;/math&amp;gt; se va descomponiendo a medida que se da, simultáneamente, la reacción  &amp;lt;math&amp;gt;A + B → C &amp;lt;/math&amp;gt;. Sin embargo, esta constante no puede tener cualquier valor, ya que en una reacción se cumple la conservación de masa. Por ello, a  &amp;lt;math&amp;gt;C &amp;lt;/math&amp;gt; le asociaremos el siguiente dominio::&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;C∈(0,1)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Obsérvese que  &amp;lt;math&amp;gt;C &amp;lt;/math&amp;gt; tiene que ser mayor que 0 para que sea reversible, pero al mismo tiempo inferior que 1, ya que si no se estaría descomponiendo más compuesto  &amp;lt;math&amp;gt;C &amp;lt;/math&amp;gt; del que realmente se ha formado, en otras palabras, estaría apareciendo masa de la nada.&lt;br /&gt;
&lt;br /&gt;
=Método de Euler=&lt;br /&gt;
&lt;br /&gt;
Una vez llegados a este punto, se procede a ver una interpretación gráfica de la reacción. Para ello, se refleja en la gráfica (en un intervalo de 2 segundos), cómo varían las concentraciones tanto de &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt; (&amp;lt;math&amp;gt;a_0&amp;lt;/math&amp;gt;=3 mol/L) y &amp;lt;math&amp;gt;B&amp;lt;/math&amp;gt; (&amp;lt;math&amp;gt;b_0&amp;lt;/math&amp;gt;=1 mol/L) como de &amp;lt;math&amp;gt; C&amp;lt;/math&amp;gt;, para una &amp;lt;math&amp;gt;k_1&amp;lt;/math&amp;gt;=1 mol/s. Se comienza, por el momento, aplicando el método de Euler. Posteriormente se utilizarán métodos más precisos.&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo= &lt;br /&gt;
% Euler&lt;br /&gt;
clear all&lt;br /&gt;
% datos del problema&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=2;&lt;br /&gt;
y0=0;&lt;br /&gt;
h=0.1;&lt;br /&gt;
k1=1;&lt;br /&gt;
a0=3;&lt;br /&gt;
b0=1;&lt;br /&gt;
% Definimos la variable independiente&lt;br /&gt;
t=t0:h:tN;&lt;br /&gt;
% Guardamos los valores de la solución aproximada en el vector &amp;quot;y1&amp;quot; y&lt;br /&gt;
% establecemos los vectores de concentraciones A y B&lt;br /&gt;
y1=zeros(1,length(t)); &lt;br /&gt;
y1(1)=y0;&lt;br /&gt;
a1=zeros(1,length(t));&lt;br /&gt;
a1(1)=a0;&lt;br /&gt;
b1=zeros(1,length(t));&lt;br /&gt;
b1(1)=b0;&lt;br /&gt;
% A continuación, calculamos las componentes de los vectores y1, a1 y b1&lt;br /&gt;
for i=1:length(t)-1&lt;br /&gt;
    y1(i+1)=y1(i)+h*(k1*(a0-y1(i))*(b0-y1(i)));    %Euler&lt;br /&gt;
    a1(i+1)=a0-y1(i+1); % evolución de la concentración de A&lt;br /&gt;
    b1(i+1)=b0-y1(i+1); % evolución de la concentración de B&lt;br /&gt;
end&lt;br /&gt;
%grafico &lt;br /&gt;
figure(1)&lt;br /&gt;
hold on&lt;br /&gt;
plot(t,y1,'g')&lt;br /&gt;
plot(t,a1,'r')&lt;br /&gt;
plot(t,b1,'b')&lt;br /&gt;
legend('concentración de C','concentración de A','concentración de B','location','best')&lt;br /&gt;
hold off &lt;br /&gt;
%en verde se muestra la concentración de C, en rojo la de A, y en azul la de B&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Archivo:3euler.jpeg|500px|miniaturadeimagen|center|Reacción compleja]]&lt;br /&gt;
&lt;br /&gt;
Aunque con observar los resultados ya podemos decir con casi absoluta seguridad cuáles son los límites de las concentraciones de cada reactivo &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;B&amp;lt;/math&amp;gt; y del producto &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt;, se ha diseñado un programa que, mediante diferencia de valores sucesivos de la variable &amp;lt;math&amp;gt;y(t)&amp;lt;/math&amp;gt;, nos devuelve el valor de la función cuando dicha diferencia es muy pequeña '''(se ha puesto una diferencia de 0.001)''', es decir, cuando tenemos una asíntota al tender &amp;lt;math&amp;gt;t→∞&amp;lt;/math&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
%Estudio de las asíntotas&lt;br /&gt;
t1=t0:h:10;%se aumenta la longitud de t, y se estima que se alcanzarán las asíntotas antes de t=10&lt;br /&gt;
y_=zeros(1,length(t1)); %se define un vector y_ idéntico a y1 pero con t hasta 10&lt;br /&gt;
a_=y_;&lt;br /&gt;
b_=y_;&lt;br /&gt;
y_(1)=y0;&lt;br /&gt;
a_(1)=a0;&lt;br /&gt;
b_(1)=b0;&lt;br /&gt;
for i=1:length(t1)-1&lt;br /&gt;
    y_(i+1)=y_(i)+h*(k1*(a0-y_(i))*(b0-y_(i)));&lt;br /&gt;
    diferencia=y_(i+1)-y_(i);&lt;br /&gt;
    if abs(diferencia)&amp;lt;=0.001&lt;br /&gt;
        limC=y_(i+1)&lt;br /&gt;
        break&lt;br /&gt;
    end&lt;br /&gt;
end&lt;br /&gt;
for i=1:length(t1)-1&lt;br /&gt;
    y_(i+1)=y_(i)+h*(k1*(a0-y_(i))*(b0-y_(i)));    &lt;br /&gt;
    a_(i+1)=a0-y_(i+1);&lt;br /&gt;
    diferencia2=a_(i+1)-a_(i);&lt;br /&gt;
    if abs(diferencia2)&amp;lt;=0.001&lt;br /&gt;
        limA=a_(i+1)&lt;br /&gt;
        break&lt;br /&gt;
    end&lt;br /&gt;
end&lt;br /&gt;
for i=1:length(t1)-1&lt;br /&gt;
    y_(i+1)=y_(i)+h*(k1*(a0-y_(i))*(b0-y_(i)));    &lt;br /&gt;
    b_(i+1)=b0-y_(i+1);&lt;br /&gt;
    diferencia3=b_(i+1)-b_(i);&lt;br /&gt;
    if abs(diferencia3)&amp;lt;=0.001&lt;br /&gt;
        limB=b_(i+1)&lt;br /&gt;
        break&lt;br /&gt;
    end&lt;br /&gt;
end&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
Que nos devuelve unos valores de las concentraciones para el límite de:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\lim A=2,0036≈2 mol/L&amp;lt;/math&amp;gt;:     &lt;br /&gt;
&amp;lt;math&amp;gt;\lim B=0,0036≈0mol/L&amp;lt;/math&amp;gt;:         &lt;br /&gt;
&amp;lt;math&amp;gt;\lim C=0,9964≈1mol/L&amp;lt;/math&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
Lo cual es lógico, ya que &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;B&amp;lt;/math&amp;gt; se combinan en una proporción de 1:1, luego &amp;lt;math&amp;gt;B&amp;lt;/math&amp;gt;, que tiene una concentración inicial de &amp;lt;math&amp;gt;b_0&amp;lt;/math&amp;gt;=1, será el reactivo limitante (el que desaparecerá por completo), mientras que &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt;, con &amp;lt;math&amp;gt;a_0&amp;lt;/math&amp;gt;=3, acabará con una concentración molar final igual a 2, y &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt;, del que no habia nada,alcanza una concentraccion de &amp;lt;math&amp;gt;1mol/L&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
= Método del Trapecio y Método de Runge-Kutta=&lt;br /&gt;
&lt;br /&gt;
A continuación, para obtener con más precisión las representaciones gráficas de las respectivas concentraciones, se opta por utilizar los métodos de los &amp;lt;math&amp;gt;Trapecios&amp;lt;/math&amp;gt; (segundo orden) y de &amp;lt;math&amp;gt;Runge-Kutta&amp;lt;/math&amp;gt; (cuarto orden). Además, se ha obtenido la expresión explícita de la solución de nuestro problema de valor inicial de manera analítica, mediante variables separables y fracciones simples, resultando la función real::&lt;br /&gt;
&amp;lt;math&amp;gt;y_e(t)=\frac{3e^{2t}-3}{3e^{2t}-1}&amp;lt;/math&amp;gt;&lt;br /&gt;
De manera que las concentraciones de A y de B en cada valor de t quedarían como::&lt;br /&gt;
&amp;lt;math&amp;gt;a_e(t)=a_0-y_e(t)&amp;lt;/math&amp;gt;:&lt;br /&gt;
&amp;lt;math&amp;gt;b_e (t)=b_0-y_e (t)&amp;lt;/math&amp;gt;:&lt;br /&gt;
Para los trapecios, al ser un método implícito, es necesario despejar la componente &amp;lt;math&amp;gt;y_{n+1}&amp;lt;/math&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;y_{n+1}=\frac{(1+\frac{h}{2}∙k_1∙(a_0+b_0))-\sqrt{(1+\frac{h}{2}∙k_1∙(a_0+b_0))^2 -2∙h∙k_1(y_n+\frac{h}{2}∙k_1∙(a_0-y_n )∙(b_0-y_n)+\frac{h}{2}∙k_1∙a_0∙b_0) }}{k_1∙h}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Cabe destacar que este programa parte de los datos ya establecidos en el programa de Euler para '''t0, tN, y0, a0, b0, k1 y h''':&lt;br /&gt;
{{matlab|codigo= &lt;br /&gt;
%Función real&lt;br /&gt;
ye=(3*exp(2.*t)-3)./(3*exp(2.*t)-1);&lt;br /&gt;
ae=a0-ye;&lt;br /&gt;
be=b0-ye;&lt;br /&gt;
&lt;br /&gt;
%Trapecios&lt;br /&gt;
y2=zeros(1,length(t)); &lt;br /&gt;
a2=y2;&lt;br /&gt;
b2=y2;&lt;br /&gt;
y2(1)=y0;&lt;br /&gt;
a2(1)=a0;&lt;br /&gt;
b2(1)=b0;&lt;br /&gt;
for i= 1:length(t)-1&lt;br /&gt;
    y2(i+1)=((1+0.5*h*k1*(a0+b0))-sqrt((1+0.5*h*k1*(a0+b0))^2-2*h*k1*(y2(i)+0.5*h*k1*(a0-y2(i))*(b0-  y2(i))+0.5*h*k1*a0*b0)))/(k1*h);&lt;br /&gt;
a2(i+1)=a0-y2(i+1);&lt;br /&gt;
b2(i+1)=b0-y2(i+1);&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
%Runge-Kutta&lt;br /&gt;
y3=zeros(1,length(t)); &lt;br /&gt;
a3=y3;&lt;br /&gt;
b3=y3;&lt;br /&gt;
y3(1)=y0;&lt;br /&gt;
a3(1)=a0;&lt;br /&gt;
b3(1)=b0;&lt;br /&gt;
fori=1:length(t)-1 &lt;br /&gt;
    r1=k1*(a0-y3(i))*(b0-y3(i));&lt;br /&gt;
    r2=k1*(a0-y3(i)-0.5*r1*h)*(b0-y3(i)-0.5*r1*h);&lt;br /&gt;
    r3=k1*(a0-y3(i)-0.5*r2*h)*(b0-y3(i)-0.5*r2*h);&lt;br /&gt;
    r4=k1*(a0-y3(i)-r3*h)*(b0-y3(i)-r3*h);&lt;br /&gt;
    y3(i+1)=y3(i)+h/6*(r1+2*r2+2*r3+r4);&lt;br /&gt;
    a3(i+1)=a0-y3(i+1);&lt;br /&gt;
    b3(i+1)=b0-y3(i+1);&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
%se pintan las cuatro gráficas, con la función real en verde y los puntos con asteriscos, &lt;br /&gt;
%Euler en rojo, los Trapecios en azul, y Runge-Kutta en negro&lt;br /&gt;
figure(2)&lt;br /&gt;
hold on&lt;br /&gt;
&lt;br /&gt;
plot(t,ye,'g*-')&lt;br /&gt;
plot(t,y2)&lt;br /&gt;
plot(t,y3,'k')&lt;br /&gt;
plot(t,y1,'r')&lt;br /&gt;
legend('Función real','Trapecios', 'Runge-Kutta', 'Euler','Location','best');&lt;br /&gt;
plot(t,ae,'g*')&lt;br /&gt;
plot(t,a2)&lt;br /&gt;
plot(t,a3,'k')&lt;br /&gt;
plot(t,a1,'r')&lt;br /&gt;
plot(t,be,'g*')&lt;br /&gt;
plot(t,b2)&lt;br /&gt;
plot(t,b3,'k')&lt;br /&gt;
plot(t,b1,'r')&lt;br /&gt;
hold off&lt;br /&gt;
&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
Los resultados del programa se muestran en las dos siguientes figuras. Como podemos observar, el método de ''Euler'', en &amp;lt;span style=&amp;quot;color:#FF0000;&amp;quot;&amp;gt;Rojo&amp;lt;/span&amp;gt;, rápidamente se separa de los demás y de la función real, lo que es debido a que es un método de orden 1 y su precisión es bastante reducida. Para analizar el comportamiento de los otros dos métodos, se ha hecho un zoom en una zona aleatoria de la gráfica, y se muestra en la figura 2. Lo lógico, debido a que es de orden 2, es que el método de los trapecios sea el siguiente que se aleje de la solución real, y esto es precisamente lo que se evidencia en la gráfica, pues como vemos, la línea &amp;lt;span style=&amp;quot;color:#0000FF;&amp;quot;&amp;gt;Azul&amp;lt;/span&amp;gt; se separa de la negra y de la &amp;lt;span style=&amp;quot;color:#00FF00;&amp;quot;&amp;gt;Verde&amp;lt;/span&amp;gt;. Es por tanto que el método de ''Runge-Kutta'' es el más preciso de todos, haciendo honor a su cuarto orden, y como podemos observar, las líneas &amp;lt;span style=&amp;quot;color:#00FF00;&amp;quot;&amp;gt;Verde&amp;lt;/span&amp;gt; y negra son casi indistinguibles. &lt;br /&gt;
&lt;br /&gt;
Es importante también atender a la escala que se muestra en la figura 2, que nos da una idea de los rangos en el eje de ordenadas de los que estamos hablando. Cabe decir que estamos trabajando con un paso de h=0.1, lo que significa que con un paso menor, estas diferencias serian mucho menos perceptibles.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Archivo:ejer4euler.jpeg|500px|miniaturadeimagen|center|&lt;br /&gt;
Fifura 1]]&lt;br /&gt;
&lt;br /&gt;
[[Archivo:ejer4zoom.jpeg|500px|miniaturadeimagen|center|Figura 2]]&lt;br /&gt;
&lt;br /&gt;
=Reacción consecutiva=&lt;br /&gt;
&lt;br /&gt;
Consideremos ahora que se produce una reacción consecutiva de la forma.: &lt;br /&gt;
&lt;br /&gt;
                                                                   &amp;lt;math&amp;gt;A + B → k_1C → k_2D&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
De tal modo que los reactivos &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;B&amp;lt;/math&amp;gt; se combinan en la proporción 1:1 para formar compuesto &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt;, el cual, a su vez, se va descomponiendo para formar compuesto &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt;. Al igual que se ha hecho antes al analizar las otras reacciones, se considerará que se cumple la ley de acción de masas. Es decir, la velocidad con la que se forma compuesto &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; es proporcional a las concentraciones existentes de &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt; y de &amp;lt;math&amp;gt;B&amp;lt;/math&amp;gt; y del mismo modo la de formación de la sustancia &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; lo es a la concentración de &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; que se ha ido formando.&lt;br /&gt;
&lt;br /&gt;
Esta reacción consecutiva está representada por el siguiente problema de valor inicial::&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;&lt;br /&gt;
   \left . &lt;br /&gt;
      \begin{matrix} &lt;br /&gt;
         y'_1(t)={k_{1}}({a_{0}}-y_1(t))({b_{0}}-y_1(t))\\&lt;br /&gt;
         y'_2(t)={k_{2}}(y_1(t)-y_2(t))\\&lt;br /&gt;
y_1(0)=0\\y_2(0)=0&lt;br /&gt;
      \end{matrix}&lt;br /&gt;
   \right \}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
Donde &amp;lt;math&amp;gt;a_0&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;b_0&amp;lt;/math&amp;gt; representan las concentraciones iniciales de &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;B&amp;lt;/math&amp;gt; respectivamente, &amp;lt;math&amp;gt;k_1&amp;lt;/math&amp;gt; es la constante de proporcionalidad que rige la primera reacción y &amp;lt;math&amp;gt;k_2&amp;lt;/math&amp;gt; la que rige la segunda reacción o reacción consecutiva. &amp;lt;math&amp;gt;y_1’(t)&amp;lt;/math&amp;gt; e  &amp;lt;math&amp;gt;y_2’(t)&amp;lt;/math&amp;gt; representan las velocidades de las reacciones, es decir, las velocidades con que se forman los productos &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt;. &amp;lt;math&amp;gt;y_2(t)&amp;lt;/math&amp;gt; representa la concentración del producto &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; pero es importante apreciar que en este caso &amp;lt;math&amp;gt;y_1(t)&amp;lt;/math&amp;gt; no nos da el valor de la concentración de &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; directamente, sino que ésta será &amp;lt;math&amp;gt;y_1(t)&amp;lt;/math&amp;gt;- &amp;lt;math&amp;gt;y_2(t)&amp;lt;/math&amp;gt;, la cantidad que se forma en la primera reacción menos la que se emplea para formar el producto &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; en la segunda.&lt;br /&gt;
&lt;br /&gt;
Este problema se va a resolver para dos casos diferentes. Uno en el cual se considera que la segunda reacción es más rápida que la primera, lo que supone tomar un valor de la constante &amp;lt;math&amp;gt;k_2&amp;lt;/math&amp;gt;  mayor que &amp;lt;math&amp;gt;k_1&amp;lt;/math&amp;gt;. Y otro en el cual se considera que es más lenta, lo que implica que &amp;lt;math&amp;gt;k_2&amp;lt;/math&amp;gt; es menor que &amp;lt;math&amp;gt;k_1&amp;lt;/math&amp;gt;. Concretamente vamos a tomar los siguientes valores para resolver el problema numéricamente; &amp;lt;math&amp;gt;a_0&amp;lt;/math&amp;gt;=3 ,  &amp;lt;math&amp;gt;b_0&amp;lt;/math&amp;gt;=1, &amp;lt;math&amp;gt;k_1&amp;lt;/math&amp;gt;=1,  &amp;lt;math&amp;gt;k_2&amp;lt;/math&amp;gt;=5, &amp;lt;math&amp;gt;k_2&amp;lt;/math&amp;gt;=1/5, .En ambos casos se resuelve para los primeros 10 segundos.&lt;br /&gt;
&lt;br /&gt;
==La reacción D es más rápida que la reacción C==&lt;br /&gt;
CASO    &amp;lt;math&amp;gt;k_1=5  &amp;lt;/math&amp;gt;   '''h=0.1''' &lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
&lt;br /&gt;
%datos&lt;br /&gt;
y0=[0;0];&lt;br /&gt;
z0=[0;0];&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;
%matriz de las soluciones&lt;br /&gt;
y=zeros(2,length(t)); %euler&lt;br /&gt;
y(:,1)=y0;&lt;br /&gt;
 &lt;br /&gt;
z=zeros(2,length(t)); %runge-kutta&lt;br /&gt;
z(:,1)=y0;&lt;br /&gt;
 &lt;br /&gt;
for i=1:length(t)-1&lt;br /&gt;
 %euler&lt;br /&gt;
 y(:,i+1)=y(:,i)+h*[1*(3-y(1,i))*(1-y(1,i)); 5*(y(1,i)-y(2,i))];&lt;br /&gt;
 %runge-kutta&lt;br /&gt;
 K1=[1*(3-z(1,i))*(1-z(1,i)); 5*(z(1,i)-z(2,i))];&lt;br /&gt;
 K2=[1*(3-(z(1,i)+h/2*K1(1)))*(1-(z(1,i)+h/2*K1(1))); 5*((y(1,i)+h/2*K1(2))-(y(2,i)+h/2*K1(2)))];&lt;br /&gt;
 K3=[1*(3-(z(1,i)+h/2*K2(1)))*(1-(z(1,i)+h/2*K2(1))); 5*((y(1,i)+h/2*K2(2))-(y(2,i)+h/2*K2(2)))];&lt;br /&gt;
 K4=[1*(3-(z(1,i)+h*K3(1)))*(1-(z(1,i)+h*K3(1))); 5*((y(1,i)+h*K3(2))-(y(2,i)+h*K3(2)))];&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;
% se calcula la concentración de C=y1t)-y2(t)&lt;br /&gt;
Ay=y(1,:)-y(2,:); %euler&lt;br /&gt;
Az=z(1,:)-z(2,:); %runge-kutta&lt;br /&gt;
 &lt;br /&gt;
figure(1)&lt;br /&gt;
hold on&lt;br /&gt;
plot(t,Ay) %concentración de C por euler&lt;br /&gt;
plot(t,y(2,:),'r') %concentración de D por euler&lt;br /&gt;
plot(t,Az,'k') %concentración de C por runge-kutta&lt;br /&gt;
plot(t,z(2,:),'g') %concentración de D por runge-kutta&lt;br /&gt;
legend('concentración de C por euler','concentración de D por euler','concentración de C por runge-kutta','concentración de D por runge-kutta','Location','best')&lt;br /&gt;
hold off&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:graficoa.jpeg|500px|miniaturadeimagen|center|Reacción compleja]]&lt;br /&gt;
&lt;br /&gt;
Se observa que en en los primeros instantes aumentan las concentraciones de &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; aumentan sus concentraciones. Antes de que pase 1 segundo, la concentración &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; alcanza un máximo (de unos 0.3 molar) y va disminuyendo progresivamente hasta alcanzar un valor de 0 molar. La concentración &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; sigue creciendo hasta llegar a 1 molar. Una vez que tanto &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; como &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; alcanzan estos valores, se estabiliza la reacción. &lt;br /&gt;
&lt;br /&gt;
Como hemos impuesto que la reacción &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; es más rápida que &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt;, se observa que &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; empieza creciendo más rápidamente, pero como reacciona más despacio que &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; su concentración disminuye progresivamente, mientras que la de &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; aumenta.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''CASO'''  &amp;lt;math&amp;gt;k_2=5  &amp;lt;/math&amp;gt;   '''h=0.3''' &lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
&lt;br /&gt;
%datos&lt;br /&gt;
y0=[0;0];&lt;br /&gt;
z0=[0;0];&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=10;&lt;br /&gt;
h=0.3;&lt;br /&gt;
 &lt;br /&gt;
%variable independiente t&lt;br /&gt;
t=t0:h:tN;&lt;br /&gt;
 &lt;br /&gt;
%matriz de las soluciones&lt;br /&gt;
y=zeros(2,length(t)); %euler&lt;br /&gt;
y(:,1)=y0;&lt;br /&gt;
 &lt;br /&gt;
z=zeros(2,length(t)); %runge-kutta&lt;br /&gt;
z(:,1)=y0;&lt;br /&gt;
 &lt;br /&gt;
for i=1:length(t)-1&lt;br /&gt;
 %euler&lt;br /&gt;
 y(:,i+1)=y(:,i)+h*[1*(3-y(1,i))*(1-y(1,i)); 5*(y(1,i)-y(2,i))];&lt;br /&gt;
 %runge-kutta&lt;br /&gt;
 K1=[1*(3-z(1,i))*(1-z(1,i)); 5*(z(1,i)-z(2,i))];&lt;br /&gt;
 K2=[1*(3-(z(1,i)+h/2*K1(1)))*(1-(z(1,i)+h/2*K1(1))); 5*((y(1,i)+h/2*K1(2))-(y(2,i)+h/2*K1(2)))];&lt;br /&gt;
 K3=[1*(3-(z(1,i)+h/2*K2(1)))*(1-(z(1,i)+h/2*K2(1))); 5*((y(1,i)+h/2*K2(2))-(y(2,i)+h/2*K2(2)))];&lt;br /&gt;
 K4=[1*(3-(z(1,i)+h*K3(1)))*(1-(z(1,i)+h*K3(1))); 5*((y(1,i)+h*K3(2))-(y(2,i)+h*K3(2)))];&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;
% se calcula la concentración de C=y1t)-y2(t)&lt;br /&gt;
Ay=y(1,:)-y(2,:); %euler&lt;br /&gt;
Az=z(1,:)-z(2,:); %runge-kutta&lt;br /&gt;
 &lt;br /&gt;
figure(1)&lt;br /&gt;
hold on&lt;br /&gt;
plot(t,Ay) %concentración de C por euler&lt;br /&gt;
plot(t,y(2,:),'r') %concentración de D por euler&lt;br /&gt;
plot(t,Az,'k') %concentración de C por runge-kutta&lt;br /&gt;
plot(t,z(2,:),'g') %concentración de D por runge-kutta&lt;br /&gt;
legend('concentración de C por euler','concentración de D por euler','concentración de C por runge-kutta','concentración de D por runge-kutta','Location','best')&lt;br /&gt;
hold off&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:graficob.jpeg|500px|miniaturadeimagen|center|Reacción compleja]]&lt;br /&gt;
&lt;br /&gt;
Repetimos el programa pero para un tamaño de paso mayor, de '''h=0.3''', y observamos que no  es suficientemente preciso, sobre todo al principio, no se puede analizar bien lo que está pasando en la reacción.&lt;br /&gt;
&lt;br /&gt;
==La reacción D es más lenta que la reacción C==&lt;br /&gt;
&lt;br /&gt;
CASO  &amp;lt;math&amp;gt;k_1 &amp;lt;/math&amp;gt;=1,   &amp;lt;math&amp;gt;k_2 &amp;lt;/math&amp;gt;=1/5&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
&lt;br /&gt;
%datos&lt;br /&gt;
y0=[0;0];&lt;br /&gt;
z0=[0;0];&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;
%matriz de las soluciones&lt;br /&gt;
y=zeros(2,length(t)); %euler&lt;br /&gt;
y(:,1)=y0;&lt;br /&gt;
 &lt;br /&gt;
z=zeros(2,length(t)); %runge-kutta&lt;br /&gt;
z(:,1)=y0;&lt;br /&gt;
 &lt;br /&gt;
for i=1:length(t)-1&lt;br /&gt;
 %euler&lt;br /&gt;
 y(:,i+1)=y(:,i)+h*[1*(3-y(1,i))*(1-y(1,i)); 1/5*(y(1,i)-y(2,i))];&lt;br /&gt;
 %runge-kutta&lt;br /&gt;
 K1=[1*(3-z(1,i))*(1-z(1,i)); 1/5*(z(1,i)-z(2,i))];&lt;br /&gt;
 K2=[1*(3-(z(1,i)+h/2*K1(1)))*(1-(z(1,i)+h/2*K1(1))); 1/5*((y(1,i)+h/2*K1(2))-(y(2,i)+h/2*K1(2)))];&lt;br /&gt;
 K3=[1*(3-(z(1,i)+h/2*K2(1)))*(1-(z(1,i)+h/2*K2(1))); 1/5*((y(1,i)+h/2*K2(2))-(y(2,i)+h/2*K2(2)))];&lt;br /&gt;
 K4=[1*(3-(z(1,i)+h*K3(1)))*(1-(z(1,i)+h*K3(1))); 1/5*((y(1,i)+h*K3(2))-(y(2,i)+h*K3(2)))];&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;
% se calcula la concentración de C=y1t)-y2(t)&lt;br /&gt;
Ay=y(1,:)-y(2,:); %euler&lt;br /&gt;
Az=z(1,:)-z(2,:); %runge-kutta&lt;br /&gt;
 &lt;br /&gt;
figure(1)&lt;br /&gt;
hold on&lt;br /&gt;
plot(t,Ay) %concentración de C por euler&lt;br /&gt;
plot(t,y(2,:),'r') %concentración de D por euler&lt;br /&gt;
plot(t,Az,'k') %concentración de C por runge-kutta&lt;br /&gt;
plot(t,z(2,:),'g') %concentración de D por runge-kutta&lt;br /&gt;
legend('concentración de C por euler','concentración de D por euler','concentración de C por runge-kutta','concentración de D por runge-kutta','Location','best')&lt;br /&gt;
hold off&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:graficoc.jpeg|500px|miniaturadeimagen|center|Reacción compleja]]&lt;br /&gt;
&lt;br /&gt;
Si ahora imponemos que la reacción  &amp;lt;math&amp;gt;C &amp;lt;/math&amp;gt; es más rápida que  &amp;lt;math&amp;gt;D &amp;lt;/math&amp;gt;, obtenemos lo siguiente. Se parece a la gráfica que obtuvimos en el programa anterior, pero  más extendida en el tiempo, más lenta.  &amp;lt;math&amp;gt;C &amp;lt;/math&amp;gt; alcanza una concentración máxima de unos 0.8 molar antes de empezar a decrecer a medida que avanza el tiempo y acercándose a un valor de '''0''' molar.  &amp;lt;math&amp;gt;D &amp;lt;/math&amp;gt; crece más lentamente que en la gráfica anterior, pero se aproxima al mismo valor, '''1''' molar.&lt;br /&gt;
Se observa que aunque hagamos la reacción  &amp;lt;math&amp;gt;C &amp;lt;/math&amp;gt; más rápida, tenemos las mismas concentraciones finales, pero tardan más tiempo en obtenerse, ya que la reacción tarda más en estabilizarse.&lt;br /&gt;
&lt;br /&gt;
&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>Joseva</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Reacciones_complejas_(Grupo_D1)&amp;diff=27857</id>
		<title>Reacciones complejas (Grupo D1)</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Reacciones_complejas_(Grupo_D1)&amp;diff=27857"/>
				<updated>2015-03-06T11:51:30Z</updated>
		
		<summary type="html">&lt;p&gt;Joseva: /* Método del Trapecio y Método de Runge-Kutta */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{ TrabajoED | Reacciones complejas (Grupo D1) | [[:Categoría:Ecuaciones Diferenciales|Ecuaciones Diferenciales]]|[[:Categoría:ED14/15|Curso 2014-15]] | Rincón Crespo, Kevin&lt;br /&gt;
&lt;br /&gt;
Rodríguez Gómez, Javier&lt;br /&gt;
&lt;br /&gt;
Sans Jiménez, Alejandro&lt;br /&gt;
&lt;br /&gt;
Sesto Muñoz, María Victoria&lt;br /&gt;
&lt;br /&gt;
Vallejo Asín, José Manuel &lt;br /&gt;
&lt;br /&gt;
Villarino Redondo, Álvaro }}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=Introducción=&lt;br /&gt;
Se considera una reacción química irreversible en una solución bien mezclada. Supondremos que la reacción ocurre para un volumen y temperatura constantes. Al inicio se encuentran dos reactivos &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;B&amp;lt;/math&amp;gt;, que van formando un producto &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; en lo que se conoce como una reacción bimolecular, es decir, una molécula de &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt; y una de &amp;lt;math&amp;gt;B&amp;lt;/math&amp;gt; producen una de &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt;.: &lt;br /&gt;
                                                                     &amp;lt;math&amp;gt;A + B → C&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Supondremos también que se satisface la ley de acción de masas, que establece que la velocidad de reacción es proporcional al producto de las concentraciones de los reactivos.&lt;br /&gt;
&lt;br /&gt;
=Concentración del reactivo &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; a lo largo del tiempo=&lt;br /&gt;
En primer lugar, suponiendo que la reacción es irreversible, es decir, que &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; no puede volver a formar &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;B&amp;lt;/math&amp;gt;, se puede expresar la situación mediante el siguiente problema de valor inicial, cuando t&amp;gt;0.:&lt;br /&gt;
   &amp;lt;math&amp;gt;&lt;br /&gt;
   \left . &lt;br /&gt;
      \begin{matrix} &lt;br /&gt;
         y'(t)={k_{1}}({a_{0}}-y(t))({b_{0}}-y(t))=0\\&lt;br /&gt;
         y(0)=0&lt;br /&gt;
      \end{matrix}&lt;br /&gt;
   \right \}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Donde &amp;lt;math&amp;gt; {a_{0}}&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;{b_{0}}&amp;lt;/math&amp;gt; representan las concentraciones iniciales de '''A''' y '''B''' respectivamente y &amp;lt;math&amp;gt;{k_{1}}&amp;lt;/math&amp;gt; es la constante de proporcionalidad que indica la ley de acción de masas. &amp;lt;math&amp;gt;y’(t)&amp;lt;/math&amp;gt; representa la velocidad de reacción, es decir, la velocidad con que se forma el producto &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; ; mientras que la solución de la ecuación diferencial, &amp;lt;math&amp;gt;y(t)&amp;lt;/math&amp;gt; , representa la concentración de &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt;, la cantidad de compuesto que se ha formado. Para comprobar que la solución de este problema de Cauchy es única, comenzamos definiendo.:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;math&amp;gt;f(t,y)={k_{1}}({a_{0}}-y(t))({b_{0}}-y(t))=0,   t&amp;gt;0 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Observamos que &amp;lt;math&amp;gt;f(t,y)&amp;lt;/math&amp;gt; es continua en el intervalo &amp;lt;math&amp;gt; I=(0,∞)∩B((0,0),r&amp;gt;0)&amp;lt;/math&amp;gt;, por lo que ya aseguramos la existencia de al menos una solución. Examinando la derivada parcial.:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\frac{∂f}{∂y}=k_1(-a_0-b_0+2y)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Se deduce que al ser un polinomio no va a haber problemas de continuidad para ninguna bola. De esta forma, podemos asegurar que existe una única solución.&lt;br /&gt;
&lt;br /&gt;
==Concentración del reactivo C a lo largo del tiempo en un proceso reversible==&lt;br /&gt;
&lt;br /&gt;
Ahora bien, ¿qué pasaría si la reacción fuese reversible? Con esto lo que queremos indicar es que además de formarse  &amp;lt;math&amp;gt;C &amp;lt;/math&amp;gt;, este también se descompone de nuevo en  &amp;lt;math&amp;gt;A &amp;lt;/math&amp;gt; y  &amp;lt;math&amp;gt;B &amp;lt;/math&amp;gt;. Por lo tanto, nos quedaría una ecuación diferencial con la siguiente forma, cuando &amp;lt;math&amp;gt;t&amp;gt;0 &amp;lt;/math&amp;gt;. :&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; y'(t)={k_{1}}({a_{0}}-y(t))({b_{0}}-y(t))-Cy(t)&amp;lt;/math&amp;gt;  &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Si nos fijamos, la modificación es sencillamente restar  &amp;lt;math&amp;gt;y(t) &amp;lt;/math&amp;gt; multiplicada por una constante, la cual refleja qué porcentaje de  &amp;lt;math&amp;gt;C &amp;lt;/math&amp;gt; se va descomponiendo a medida que se da, simultáneamente, la reacción  &amp;lt;math&amp;gt;A + B → C &amp;lt;/math&amp;gt;. Sin embargo, esta constante no puede tener cualquier valor, ya que en una reacción se cumple la conservación de masa. Por ello, a  &amp;lt;math&amp;gt;C &amp;lt;/math&amp;gt; le asociaremos el siguiente dominio::&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;C∈(0,1)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Obsérvese que  &amp;lt;math&amp;gt;C &amp;lt;/math&amp;gt; tiene que ser mayor que 0 para que sea reversible, pero al mismo tiempo inferior que 1, ya que si no se estaría descomponiendo más compuesto  &amp;lt;math&amp;gt;C &amp;lt;/math&amp;gt; del que realmente se ha formado, en otras palabras, estaría apareciendo masa de la nada.&lt;br /&gt;
&lt;br /&gt;
=Método de Euler=&lt;br /&gt;
&lt;br /&gt;
Una vez llegados a este punto, se procede a ver una interpretación gráfica de la reacción. Para ello, se refleja en la gráfica (en un intervalo de 2 segundos), cómo varían las concentraciones tanto de &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt; (&amp;lt;math&amp;gt;a_0&amp;lt;/math&amp;gt;=3 mol/L) y &amp;lt;math&amp;gt;B&amp;lt;/math&amp;gt; (&amp;lt;math&amp;gt;b_0&amp;lt;/math&amp;gt;=1 mol/L) como de &amp;lt;math&amp;gt; C&amp;lt;/math&amp;gt;, para una &amp;lt;math&amp;gt;k_1&amp;lt;/math&amp;gt;=1 mol/s. Se comienza, por el momento, aplicando el método de Euler. Posteriormente se utilizarán métodos más precisos.&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo= &lt;br /&gt;
% Euler&lt;br /&gt;
clear all&lt;br /&gt;
% datos del problema&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=2;&lt;br /&gt;
y0=0;&lt;br /&gt;
h=0.1;&lt;br /&gt;
k1=1;&lt;br /&gt;
a0=3;&lt;br /&gt;
b0=1;&lt;br /&gt;
% Definimos la variable independiente&lt;br /&gt;
t=t0:h:tN;&lt;br /&gt;
% Guardamos los valores de la solución aproximada en el vector &amp;quot;y1&amp;quot; y&lt;br /&gt;
% establecemos los vectores de concentraciones A y B&lt;br /&gt;
y1=zeros(1,length(t)); &lt;br /&gt;
y1(1)=y0;&lt;br /&gt;
a1=zeros(1,length(t));&lt;br /&gt;
a1(1)=a0;&lt;br /&gt;
b1=zeros(1,length(t));&lt;br /&gt;
b1(1)=b0;&lt;br /&gt;
% A continuación, calculamos las componentes de los vectores y1, a1 y b1&lt;br /&gt;
for i=1:length(t)-1&lt;br /&gt;
    y1(i+1)=y1(i)+h*(k1*(a0-y1(i))*(b0-y1(i)));    %Euler&lt;br /&gt;
    a1(i+1)=a0-y1(i+1); % evolución de la concentración de A&lt;br /&gt;
    b1(i+1)=b0-y1(i+1); % evolución de la concentración de B&lt;br /&gt;
end&lt;br /&gt;
%grafico &lt;br /&gt;
figure(1)&lt;br /&gt;
hold on&lt;br /&gt;
plot(t,y1,'g')&lt;br /&gt;
plot(t,a1,'r')&lt;br /&gt;
plot(t,b1,'b')&lt;br /&gt;
legend('concentración de C','concentración de A','concentración de B','location','best')&lt;br /&gt;
hold off &lt;br /&gt;
%en verde se muestra la concentración de C, en rojo la de A, y en azul la de B&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Archivo:3euler.jpeg|500px|miniaturadeimagen|center|Reacción compleja]]&lt;br /&gt;
&lt;br /&gt;
Aunque con observar los resultados ya podemos decir con casi absoluta seguridad cuáles son los límites de las concentraciones de cada reactivo &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;B&amp;lt;/math&amp;gt; y del producto &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt;, se ha diseñado un programa que, mediante diferencia de valores sucesivos de la variable &amp;lt;math&amp;gt;y(t)&amp;lt;/math&amp;gt;, nos devuelve el valor de la función cuando dicha diferencia es muy pequeña '''(se ha puesto una diferencia de 0.001)''', es decir, cuando tenemos una asíntota al tender &amp;lt;math&amp;gt;t→∞&amp;lt;/math&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
%Estudio de las asíntotas&lt;br /&gt;
t1=t0:h:10;%se aumenta la longitud de t, y se estima que se alcanzarán las asíntotas antes de t=10&lt;br /&gt;
y_=zeros(1,length(t1)); %se define un vector y_ idéntico a y1 pero con t hasta 10&lt;br /&gt;
a_=y_;&lt;br /&gt;
b_=y_;&lt;br /&gt;
y_(1)=y0;&lt;br /&gt;
a_(1)=a0;&lt;br /&gt;
b_(1)=b0;&lt;br /&gt;
for i=1:length(t1)-1&lt;br /&gt;
    y_(i+1)=y_(i)+h*(k1*(a0-y_(i))*(b0-y_(i)));&lt;br /&gt;
    diferencia=y_(i+1)-y_(i);&lt;br /&gt;
    if abs(diferencia)&amp;lt;=0.001&lt;br /&gt;
        limC=y_(i+1)&lt;br /&gt;
        break&lt;br /&gt;
    end&lt;br /&gt;
end&lt;br /&gt;
for i=1:length(t1)-1&lt;br /&gt;
    y_(i+1)=y_(i)+h*(k1*(a0-y_(i))*(b0-y_(i)));    &lt;br /&gt;
    a_(i+1)=a0-y_(i+1);&lt;br /&gt;
    diferencia2=a_(i+1)-a_(i);&lt;br /&gt;
    if abs(diferencia2)&amp;lt;=0.001&lt;br /&gt;
        limA=a_(i+1)&lt;br /&gt;
        break&lt;br /&gt;
    end&lt;br /&gt;
end&lt;br /&gt;
for i=1:length(t1)-1&lt;br /&gt;
    y_(i+1)=y_(i)+h*(k1*(a0-y_(i))*(b0-y_(i)));    &lt;br /&gt;
    b_(i+1)=b0-y_(i+1);&lt;br /&gt;
    diferencia3=b_(i+1)-b_(i);&lt;br /&gt;
    if abs(diferencia3)&amp;lt;=0.001&lt;br /&gt;
        limB=b_(i+1)&lt;br /&gt;
        break&lt;br /&gt;
    end&lt;br /&gt;
end&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
Que nos devuelve unos valores de las concentraciones para el límite de:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\lim A=2,0036≈2 mol/L&amp;lt;/math&amp;gt;:     &lt;br /&gt;
&amp;lt;math&amp;gt;\lim B=0,0036≈0mol/L&amp;lt;/math&amp;gt;:         &lt;br /&gt;
&amp;lt;math&amp;gt;\lim C=0,9964≈1mol/L&amp;lt;/math&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
Lo cual es lógico, ya que &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;B&amp;lt;/math&amp;gt; se combinan en una proporción de 1:1, luego &amp;lt;math&amp;gt;B&amp;lt;/math&amp;gt;, que tiene una concentración inicial de &amp;lt;math&amp;gt;b_0&amp;lt;/math&amp;gt;=1, será el reactivo limitante (el que desaparecerá por completo), mientras que &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt;, con &amp;lt;math&amp;gt;a_0&amp;lt;/math&amp;gt;=3, acabará con una concentración molar final igual a 2, y &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt;, del que no habia nada,alcanza una concentraccion de &amp;lt;math&amp;gt;1mol/L&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
= Método del Trapecio y Método de Runge-Kutta=&lt;br /&gt;
&lt;br /&gt;
A continuación, para obtener con más precisión las representaciones gráficas de las respectivas concentraciones, se opta por utilizar los métodos de los &amp;lt;math&amp;gt;Trapecios&amp;lt;/math&amp;gt; (segundo orden) y de &amp;lt;math&amp;gt;Runge-Kutta&amp;lt;/math&amp;gt; (cuarto orden). Además, se ha obtenido la expresión explícita de la solución de nuestro problema de valor inicial de manera analítica, mediante variables separables y fracciones simples, resultando la función real::&lt;br /&gt;
&amp;lt;math&amp;gt;y_e(t)=\frac{3e^{2t}-3}{3e^{2t}-1}&amp;lt;/math&amp;gt;&lt;br /&gt;
De manera que las concentraciones de A y de B en cada valor de t quedarían como::&lt;br /&gt;
&amp;lt;math&amp;gt;a_e(t)=a_0-y_e(t)&amp;lt;/math&amp;gt;:&lt;br /&gt;
&amp;lt;math&amp;gt;b_e (t)=b_0-y_e (t)&amp;lt;/math&amp;gt;:&lt;br /&gt;
Para los trapecios, al ser un método implícito, es necesario despejar la componente &amp;lt;math&amp;gt;y_{n+1}&amp;lt;/math&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;y_{n+1}=\frac{(1+\frac{h}{2}∙k_1∙(a_0+b_0))-\sqrt{(1+\frac{h}{2}∙k_1∙(a_0+b_0))^2 -2∙h∙k_1(y_n+\frac{h}{2}∙k_1∙(a_0-y_n )∙(b_0-y_n)+\frac{h}{2}∙k_1∙a_0∙b_0) }}{k_1∙h}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Cabe destacar que este programa parte de los datos ya establecidos en el programa de Euler para '''t0, tN, y0, a0, b0, k1 y h''':&lt;br /&gt;
{{matlab|codigo= &lt;br /&gt;
%Función real&lt;br /&gt;
ye=(3*exp(2.*t)-3)./(3*exp(2.*t)-1);&lt;br /&gt;
ae=a0-ye;&lt;br /&gt;
be=b0-ye;&lt;br /&gt;
&lt;br /&gt;
%Trapecios&lt;br /&gt;
y2=zeros(1,length(t)); &lt;br /&gt;
a2=y2;&lt;br /&gt;
b2=y2;&lt;br /&gt;
y2(1)=y0;&lt;br /&gt;
a2(1)=a0;&lt;br /&gt;
b2(1)=b0;&lt;br /&gt;
for i= 1:length(t)-1&lt;br /&gt;
    y2(i+1)=((1+0.5*h*k1*(a0+b0))-sqrt((1+0.5*h*k1*(a0+b0))^2-2*h*k1*(y2(i)+0.5*h*k1*(a0-y2(i))*(b0-  y2(i))+0.5*h*k1*a0*b0)))/(k1*h);&lt;br /&gt;
a2(i+1)=a0-y2(i+1);&lt;br /&gt;
b2(i+1)=b0-y2(i+1);&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
%Runge-Kutta&lt;br /&gt;
y3=zeros(1,length(t)); &lt;br /&gt;
a3=y3;&lt;br /&gt;
b3=y3;&lt;br /&gt;
y3(1)=y0;&lt;br /&gt;
a3(1)=a0;&lt;br /&gt;
b3(1)=b0;&lt;br /&gt;
fori=1:length(t)-1 &lt;br /&gt;
    r1=k1*(a0-y3(i))*(b0-y3(i));&lt;br /&gt;
    r2=k1*(a0-y3(i)-0.5*r1*h)*(b0-y3(i)-0.5*r1*h);&lt;br /&gt;
    r3=k1*(a0-y3(i)-0.5*r2*h)*(b0-y3(i)-0.5*r2*h);&lt;br /&gt;
    r4=k1*(a0-y3(i)-r3*h)*(b0-y3(i)-r3*h);&lt;br /&gt;
y3(i+1)=y3(i)+h/6*(r1+2*r2+2*r3+r4);&lt;br /&gt;
a3(i+1)=a0-y3(i+1);&lt;br /&gt;
b3(i+1)=b0-y3(i+1);&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
%se pintan las cuatro gráficas, con la función real en verde y los puntos con asteriscos, &lt;br /&gt;
%Euler en rojo, los Trapecios en azul, y Runge-Kutta en negro&lt;br /&gt;
figure(2)&lt;br /&gt;
hold on&lt;br /&gt;
&lt;br /&gt;
plot(t,ye,'g*-')&lt;br /&gt;
plot(t,y2)&lt;br /&gt;
plot(t,y3,'k')&lt;br /&gt;
plot(t,y1,'r')&lt;br /&gt;
legend('Función real','Trapecios', 'Runge-Kutta', 'Euler','Location','best');&lt;br /&gt;
plot(t,ae,'g*')&lt;br /&gt;
plot(t,a2)&lt;br /&gt;
plot(t,a3,'k')&lt;br /&gt;
plot(t,a1,'r')&lt;br /&gt;
plot(t,be,'g*')&lt;br /&gt;
plot(t,b2)&lt;br /&gt;
plot(t,b3,'k')&lt;br /&gt;
plot(t,b1,'r')&lt;br /&gt;
hold off&lt;br /&gt;
&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
Los resultados del programa se muestran en las dos siguientes figuras. Como podemos observar, el método de ''Euler'', en &amp;lt;span style=&amp;quot;color:#FF0000;&amp;quot;&amp;gt;Rojo&amp;lt;/span&amp;gt;, rápidamente se separa de los demás y de la función real, lo que es debido a que es un método de orden 1 y su precisión es bastante reducida. Para analizar el comportamiento de los otros dos métodos, se ha hecho un zoom en una zona aleatoria de la gráfica, y se muestra en la figura 2. Lo lógico, debido a que es de orden 2, es que el método de los trapecios sea el siguiente que se aleje de la solución real, y esto es precisamente lo que se evidencia en la gráfica, pues como vemos, la línea &amp;lt;span style=&amp;quot;color:#0000FF;&amp;quot;&amp;gt;Azul&amp;lt;/span&amp;gt; se separa de la negra y de la &amp;lt;span style=&amp;quot;color:#00FF00;&amp;quot;&amp;gt;Verde&amp;lt;/span&amp;gt;. Es por tanto que el método de ''Runge-Kutta'' es el más preciso de todos, haciendo honor a su cuarto orden, y como podemos observar, las líneas &amp;lt;span style=&amp;quot;color:#00FF00;&amp;quot;&amp;gt;Verde&amp;lt;/span&amp;gt; y negra son casi indistinguibles. &lt;br /&gt;
&lt;br /&gt;
Es importante también atender a la escala que se muestra en la figura 2, que nos da una idea de los rangos en el eje de ordenadas de los que estamos hablando. Cabe decir que estamos trabajando con un paso de h=0.1, lo que significa que con un paso menor, estas diferencias serian mucho menos perceptibles.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Archivo:ejer4euler.jpeg|500px|miniaturadeimagen|center|&lt;br /&gt;
Fifura 1]]&lt;br /&gt;
&lt;br /&gt;
[[Archivo:ejer4zoom.jpeg|500px|miniaturadeimagen|center|Figura 2]]&lt;br /&gt;
&lt;br /&gt;
=Reacción consecutiva=&lt;br /&gt;
&lt;br /&gt;
Consideremos ahora que se produce una reacción consecutiva de la forma.: &lt;br /&gt;
&lt;br /&gt;
                                                                   &amp;lt;math&amp;gt;A + B → k_1C → k_2D&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
De tal modo que los reactivos &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;B&amp;lt;/math&amp;gt; se combinan en la proporción 1:1 para formar compuesto &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt;, el cual, a su vez, se va descomponiendo para formar compuesto &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt;. Al igual que se ha hecho antes al analizar las otras reacciones, se considerará que se cumple la ley de acción de masas. Es decir, la velocidad con la que se forma compuesto &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; es proporcional a las concentraciones existentes de &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt; y de &amp;lt;math&amp;gt;B&amp;lt;/math&amp;gt; y del mismo modo la de formación de la sustancia &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; lo es a la concentración de &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; que se ha ido formando.&lt;br /&gt;
&lt;br /&gt;
Esta reacción consecutiva está representada por el siguiente problema de valor inicial::&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;&lt;br /&gt;
   \left . &lt;br /&gt;
      \begin{matrix} &lt;br /&gt;
         y'_1(t)={k_{1}}({a_{0}}-y_1(t))({b_{0}}-y_1(t))\\&lt;br /&gt;
         y'_2(t)={k_{2}}(y_1(t)-y_2(t))\\&lt;br /&gt;
y_1(0)=0\\y_2(0)=0&lt;br /&gt;
      \end{matrix}&lt;br /&gt;
   \right \}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
Donde &amp;lt;math&amp;gt;a_0&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;b_0&amp;lt;/math&amp;gt; representan las concentraciones iniciales de &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;B&amp;lt;/math&amp;gt; respectivamente, &amp;lt;math&amp;gt;k_1&amp;lt;/math&amp;gt; es la constante de proporcionalidad que rige la primera reacción y &amp;lt;math&amp;gt;k_2&amp;lt;/math&amp;gt; la que rige la segunda reacción o reacción consecutiva. &amp;lt;math&amp;gt;y_1’(t)&amp;lt;/math&amp;gt; e  &amp;lt;math&amp;gt;y_2’(t)&amp;lt;/math&amp;gt; representan las velocidades de las reacciones, es decir, las velocidades con que se forman los productos &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt;. &amp;lt;math&amp;gt;y_2(t)&amp;lt;/math&amp;gt; representa la concentración del producto &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; pero es importante apreciar que en este caso &amp;lt;math&amp;gt;y_1(t)&amp;lt;/math&amp;gt; no nos da el valor de la concentración de &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; directamente, sino que ésta será &amp;lt;math&amp;gt;y_1(t)&amp;lt;/math&amp;gt;- &amp;lt;math&amp;gt;y_2(t)&amp;lt;/math&amp;gt;, la cantidad que se forma en la primera reacción menos la que se emplea para formar el producto &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; en la segunda.&lt;br /&gt;
&lt;br /&gt;
Este problema se va a resolver para dos casos diferentes. Uno en el cual se considera que la segunda reacción es más rápida que la primera, lo que supone tomar un valor de la constante &amp;lt;math&amp;gt;k_2&amp;lt;/math&amp;gt;  mayor que &amp;lt;math&amp;gt;k_1&amp;lt;/math&amp;gt;. Y otro en el cual se considera que es más lenta, lo que implica que &amp;lt;math&amp;gt;k_2&amp;lt;/math&amp;gt; es menor que &amp;lt;math&amp;gt;k_1&amp;lt;/math&amp;gt;. Concretamente vamos a tomar los siguientes valores para resolver el problema numéricamente; &amp;lt;math&amp;gt;a_0&amp;lt;/math&amp;gt;=3 ,  &amp;lt;math&amp;gt;b_0&amp;lt;/math&amp;gt;=1, &amp;lt;math&amp;gt;k_1&amp;lt;/math&amp;gt;=1,  &amp;lt;math&amp;gt;k_2&amp;lt;/math&amp;gt;=5, &amp;lt;math&amp;gt;k_2&amp;lt;/math&amp;gt;=1/5, .En ambos casos se resuelve para los primeros 10 segundos.&lt;br /&gt;
&lt;br /&gt;
==La reacción D es más rápida que la reacción C==&lt;br /&gt;
CASO    &amp;lt;math&amp;gt;k_1=5  &amp;lt;/math&amp;gt;   '''h=0.1''' &lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
&lt;br /&gt;
%datos&lt;br /&gt;
y0=[0;0];&lt;br /&gt;
z0=[0;0];&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;
%matriz de las soluciones&lt;br /&gt;
y=zeros(2,length(t)); %euler&lt;br /&gt;
y(:,1)=y0;&lt;br /&gt;
 &lt;br /&gt;
z=zeros(2,length(t)); %runge-kutta&lt;br /&gt;
z(:,1)=y0;&lt;br /&gt;
 &lt;br /&gt;
for i=1:length(t)-1&lt;br /&gt;
 %euler&lt;br /&gt;
 y(:,i+1)=y(:,i)+h*[1*(3-y(1,i))*(1-y(1,i)); 5*(y(1,i)-y(2,i))];&lt;br /&gt;
 %runge-kutta&lt;br /&gt;
 K1=[1*(3-z(1,i))*(1-z(1,i)); 5*(z(1,i)-z(2,i))];&lt;br /&gt;
 K2=[1*(3-(z(1,i)+h/2*K1(1)))*(1-(z(1,i)+h/2*K1(1))); 5*((y(1,i)+h/2*K1(2))-(y(2,i)+h/2*K1(2)))];&lt;br /&gt;
 K3=[1*(3-(z(1,i)+h/2*K2(1)))*(1-(z(1,i)+h/2*K2(1))); 5*((y(1,i)+h/2*K2(2))-(y(2,i)+h/2*K2(2)))];&lt;br /&gt;
 K4=[1*(3-(z(1,i)+h*K3(1)))*(1-(z(1,i)+h*K3(1))); 5*((y(1,i)+h*K3(2))-(y(2,i)+h*K3(2)))];&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;
% se calcula la concentración de C=y1t)-y2(t)&lt;br /&gt;
Ay=y(1,:)-y(2,:); %euler&lt;br /&gt;
Az=z(1,:)-z(2,:); %runge-kutta&lt;br /&gt;
 &lt;br /&gt;
figure(1)&lt;br /&gt;
hold on&lt;br /&gt;
plot(t,Ay) %concentración de C por euler&lt;br /&gt;
plot(t,y(2,:),'r') %concentración de D por euler&lt;br /&gt;
plot(t,Az,'k') %concentración de C por runge-kutta&lt;br /&gt;
plot(t,z(2,:),'g') %concentración de D por runge-kutta&lt;br /&gt;
legend('concentración de C por euler','concentración de D por euler','concentración de C por runge-kutta','concentración de D por runge-kutta','Location','best')&lt;br /&gt;
hold off&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:graficoa.jpeg|500px|miniaturadeimagen|center|Reacción compleja]]&lt;br /&gt;
&lt;br /&gt;
Se observa que en en los primeros instantes aumentan las concentraciones de &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; aumentan sus concentraciones. Antes de que pase 1 segundo, la concentración &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; alcanza un máximo (de unos 0.3 molar) y va disminuyendo progresivamente hasta alcanzar un valor de 0 molar. La concentración &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; sigue creciendo hasta llegar a 1 molar. Una vez que tanto &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; como &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; alcanzan estos valores, se estabiliza la reacción. &lt;br /&gt;
&lt;br /&gt;
Como hemos impuesto que la reacción &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; es más rápida que &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt;, se observa que &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; empieza creciendo más rápidamente, pero como reacciona más despacio que &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; su concentración disminuye progresivamente, mientras que la de &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; aumenta.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''CASO'''  &amp;lt;math&amp;gt;k_2=5  &amp;lt;/math&amp;gt;   '''h=0.3''' &lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
&lt;br /&gt;
%datos&lt;br /&gt;
y0=[0;0];&lt;br /&gt;
z0=[0;0];&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=10;&lt;br /&gt;
h=0.3;&lt;br /&gt;
 &lt;br /&gt;
%variable independiente t&lt;br /&gt;
t=t0:h:tN;&lt;br /&gt;
 &lt;br /&gt;
%matriz de las soluciones&lt;br /&gt;
y=zeros(2,length(t)); %euler&lt;br /&gt;
y(:,1)=y0;&lt;br /&gt;
 &lt;br /&gt;
z=zeros(2,length(t)); %runge-kutta&lt;br /&gt;
z(:,1)=y0;&lt;br /&gt;
 &lt;br /&gt;
for i=1:length(t)-1&lt;br /&gt;
 %euler&lt;br /&gt;
 y(:,i+1)=y(:,i)+h*[1*(3-y(1,i))*(1-y(1,i)); 5*(y(1,i)-y(2,i))];&lt;br /&gt;
 %runge-kutta&lt;br /&gt;
 K1=[1*(3-z(1,i))*(1-z(1,i)); 5*(z(1,i)-z(2,i))];&lt;br /&gt;
 K2=[1*(3-(z(1,i)+h/2*K1(1)))*(1-(z(1,i)+h/2*K1(1))); 5*((y(1,i)+h/2*K1(2))-(y(2,i)+h/2*K1(2)))];&lt;br /&gt;
 K3=[1*(3-(z(1,i)+h/2*K2(1)))*(1-(z(1,i)+h/2*K2(1))); 5*((y(1,i)+h/2*K2(2))-(y(2,i)+h/2*K2(2)))];&lt;br /&gt;
 K4=[1*(3-(z(1,i)+h*K3(1)))*(1-(z(1,i)+h*K3(1))); 5*((y(1,i)+h*K3(2))-(y(2,i)+h*K3(2)))];&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;
% se calcula la concentración de C=y1t)-y2(t)&lt;br /&gt;
Ay=y(1,:)-y(2,:); %euler&lt;br /&gt;
Az=z(1,:)-z(2,:); %runge-kutta&lt;br /&gt;
 &lt;br /&gt;
figure(1)&lt;br /&gt;
hold on&lt;br /&gt;
plot(t,Ay) %concentración de C por euler&lt;br /&gt;
plot(t,y(2,:),'r') %concentración de D por euler&lt;br /&gt;
plot(t,Az,'k') %concentración de C por runge-kutta&lt;br /&gt;
plot(t,z(2,:),'g') %concentración de D por runge-kutta&lt;br /&gt;
legend('concentración de C por euler','concentración de D por euler','concentración de C por runge-kutta','concentración de D por runge-kutta','Location','best')&lt;br /&gt;
hold off&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:graficob.jpeg|500px|miniaturadeimagen|center|Reacción compleja]]&lt;br /&gt;
&lt;br /&gt;
Repetimos el programa pero para un tamaño de paso mayor, de '''h=0.3''', y observamos que no  es suficientemente preciso, sobre todo al principio, no se puede analizar bien lo que está pasando en la reacción.&lt;br /&gt;
&lt;br /&gt;
==La reacción D es más lenta que la reacción C==&lt;br /&gt;
&lt;br /&gt;
CASO  &amp;lt;math&amp;gt;k_1 &amp;lt;/math&amp;gt;=1,   &amp;lt;math&amp;gt;k_2 &amp;lt;/math&amp;gt;=1/5&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
&lt;br /&gt;
%datos&lt;br /&gt;
y0=[0;0];&lt;br /&gt;
z0=[0;0];&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;
%matriz de las soluciones&lt;br /&gt;
y=zeros(2,length(t)); %euler&lt;br /&gt;
y(:,1)=y0;&lt;br /&gt;
 &lt;br /&gt;
z=zeros(2,length(t)); %runge-kutta&lt;br /&gt;
z(:,1)=y0;&lt;br /&gt;
 &lt;br /&gt;
for i=1:length(t)-1&lt;br /&gt;
 %euler&lt;br /&gt;
 y(:,i+1)=y(:,i)+h*[1*(3-y(1,i))*(1-y(1,i)); 1/5*(y(1,i)-y(2,i))];&lt;br /&gt;
 %runge-kutta&lt;br /&gt;
 K1=[1*(3-z(1,i))*(1-z(1,i)); 1/5*(z(1,i)-z(2,i))];&lt;br /&gt;
 K2=[1*(3-(z(1,i)+h/2*K1(1)))*(1-(z(1,i)+h/2*K1(1))); 1/5*((y(1,i)+h/2*K1(2))-(y(2,i)+h/2*K1(2)))];&lt;br /&gt;
 K3=[1*(3-(z(1,i)+h/2*K2(1)))*(1-(z(1,i)+h/2*K2(1))); 1/5*((y(1,i)+h/2*K2(2))-(y(2,i)+h/2*K2(2)))];&lt;br /&gt;
 K4=[1*(3-(z(1,i)+h*K3(1)))*(1-(z(1,i)+h*K3(1))); 1/5*((y(1,i)+h*K3(2))-(y(2,i)+h*K3(2)))];&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;
% se calcula la concentración de C=y1t)-y2(t)&lt;br /&gt;
Ay=y(1,:)-y(2,:); %euler&lt;br /&gt;
Az=z(1,:)-z(2,:); %runge-kutta&lt;br /&gt;
 &lt;br /&gt;
figure(1)&lt;br /&gt;
hold on&lt;br /&gt;
plot(t,Ay) %concentración de C por euler&lt;br /&gt;
plot(t,y(2,:),'r') %concentración de D por euler&lt;br /&gt;
plot(t,Az,'k') %concentración de C por runge-kutta&lt;br /&gt;
plot(t,z(2,:),'g') %concentración de D por runge-kutta&lt;br /&gt;
legend('concentración de C por euler','concentración de D por euler','concentración de C por runge-kutta','concentración de D por runge-kutta','Location','best')&lt;br /&gt;
hold off&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:graficoc.jpeg|500px|miniaturadeimagen|center|Reacción compleja]]&lt;br /&gt;
&lt;br /&gt;
Si ahora imponemos que la reacción  &amp;lt;math&amp;gt;C &amp;lt;/math&amp;gt; es más rápida que  &amp;lt;math&amp;gt;D &amp;lt;/math&amp;gt;, obtenemos lo siguiente. Se parece a la gráfica que obtuvimos en el programa anterior, pero  más extendida en el tiempo, más lenta.  &amp;lt;math&amp;gt;C &amp;lt;/math&amp;gt; alcanza una concentración máxima de unos 0.8 molar antes de empezar a decrecer a medida que avanza el tiempo y acercándose a un valor de '''0''' molar.  &amp;lt;math&amp;gt;D &amp;lt;/math&amp;gt; crece más lentamente que en la gráfica anterior, pero se aproxima al mismo valor, '''1''' molar.&lt;br /&gt;
Se observa que aunque hagamos la reacción  &amp;lt;math&amp;gt;C &amp;lt;/math&amp;gt; más rápida, tenemos las mismas concentraciones finales, pero tardan más tiempo en obtenerse, ya que la reacción tarda más en estabilizarse.&lt;br /&gt;
&lt;br /&gt;
&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>Joseva</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Reacciones_complejas_(Grupo_D1)&amp;diff=27854</id>
		<title>Reacciones complejas (Grupo D1)</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Reacciones_complejas_(Grupo_D1)&amp;diff=27854"/>
				<updated>2015-03-06T11:50:43Z</updated>
		
		<summary type="html">&lt;p&gt;Joseva: /* Método del Trapecio y Método de Runge-Kutta */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{ TrabajoED | Reacciones complejas (Grupo D1) | [[:Categoría:Ecuaciones Diferenciales|Ecuaciones Diferenciales]]|[[:Categoría:ED14/15|Curso 2014-15]] | Rincón Crespo, Kevin&lt;br /&gt;
&lt;br /&gt;
Rodríguez Gómez, Javier&lt;br /&gt;
&lt;br /&gt;
Sans Jiménez, Alejandro&lt;br /&gt;
&lt;br /&gt;
Sesto Muñoz, María Victoria&lt;br /&gt;
&lt;br /&gt;
Vallejo Asín, José Manuel &lt;br /&gt;
&lt;br /&gt;
Villarino Redondo, Álvaro }}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=Introducción=&lt;br /&gt;
Se considera una reacción química irreversible en una solución bien mezclada. Supondremos que la reacción ocurre para un volumen y temperatura constantes. Al inicio se encuentran dos reactivos &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;B&amp;lt;/math&amp;gt;, que van formando un producto &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; en lo que se conoce como una reacción bimolecular, es decir, una molécula de &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt; y una de &amp;lt;math&amp;gt;B&amp;lt;/math&amp;gt; producen una de &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt;.: &lt;br /&gt;
                                                                     &amp;lt;math&amp;gt;A + B → C&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Supondremos también que se satisface la ley de acción de masas, que establece que la velocidad de reacción es proporcional al producto de las concentraciones de los reactivos.&lt;br /&gt;
&lt;br /&gt;
=Concentración del reactivo &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; a lo largo del tiempo=&lt;br /&gt;
En primer lugar, suponiendo que la reacción es irreversible, es decir, que &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; no puede volver a formar &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;B&amp;lt;/math&amp;gt;, se puede expresar la situación mediante el siguiente problema de valor inicial, cuando t&amp;gt;0.:&lt;br /&gt;
   &amp;lt;math&amp;gt;&lt;br /&gt;
   \left . &lt;br /&gt;
      \begin{matrix} &lt;br /&gt;
         y'(t)={k_{1}}({a_{0}}-y(t))({b_{0}}-y(t))=0\\&lt;br /&gt;
         y(0)=0&lt;br /&gt;
      \end{matrix}&lt;br /&gt;
   \right \}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Donde &amp;lt;math&amp;gt; {a_{0}}&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;{b_{0}}&amp;lt;/math&amp;gt; representan las concentraciones iniciales de '''A''' y '''B''' respectivamente y &amp;lt;math&amp;gt;{k_{1}}&amp;lt;/math&amp;gt; es la constante de proporcionalidad que indica la ley de acción de masas. &amp;lt;math&amp;gt;y’(t)&amp;lt;/math&amp;gt; representa la velocidad de reacción, es decir, la velocidad con que se forma el producto &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; ; mientras que la solución de la ecuación diferencial, &amp;lt;math&amp;gt;y(t)&amp;lt;/math&amp;gt; , representa la concentración de &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt;, la cantidad de compuesto que se ha formado. Para comprobar que la solución de este problema de Cauchy es única, comenzamos definiendo.:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;math&amp;gt;f(t,y)={k_{1}}({a_{0}}-y(t))({b_{0}}-y(t))=0,   t&amp;gt;0 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Observamos que &amp;lt;math&amp;gt;f(t,y)&amp;lt;/math&amp;gt; es continua en el intervalo &amp;lt;math&amp;gt; I=(0,∞)∩B((0,0),r&amp;gt;0)&amp;lt;/math&amp;gt;, por lo que ya aseguramos la existencia de al menos una solución. Examinando la derivada parcial.:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\frac{∂f}{∂y}=k_1(-a_0-b_0+2y)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Se deduce que al ser un polinomio no va a haber problemas de continuidad para ninguna bola. De esta forma, podemos asegurar que existe una única solución.&lt;br /&gt;
&lt;br /&gt;
==Concentración del reactivo C a lo largo del tiempo en un proceso reversible==&lt;br /&gt;
&lt;br /&gt;
Ahora bien, ¿qué pasaría si la reacción fuese reversible? Con esto lo que queremos indicar es que además de formarse  &amp;lt;math&amp;gt;C &amp;lt;/math&amp;gt;, este también se descompone de nuevo en  &amp;lt;math&amp;gt;A &amp;lt;/math&amp;gt; y  &amp;lt;math&amp;gt;B &amp;lt;/math&amp;gt;. Por lo tanto, nos quedaría una ecuación diferencial con la siguiente forma, cuando &amp;lt;math&amp;gt;t&amp;gt;0 &amp;lt;/math&amp;gt;. :&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; y'(t)={k_{1}}({a_{0}}-y(t))({b_{0}}-y(t))-Cy(t)&amp;lt;/math&amp;gt;  &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Si nos fijamos, la modificación es sencillamente restar  &amp;lt;math&amp;gt;y(t) &amp;lt;/math&amp;gt; multiplicada por una constante, la cual refleja qué porcentaje de  &amp;lt;math&amp;gt;C &amp;lt;/math&amp;gt; se va descomponiendo a medida que se da, simultáneamente, la reacción  &amp;lt;math&amp;gt;A + B → C &amp;lt;/math&amp;gt;. Sin embargo, esta constante no puede tener cualquier valor, ya que en una reacción se cumple la conservación de masa. Por ello, a  &amp;lt;math&amp;gt;C &amp;lt;/math&amp;gt; le asociaremos el siguiente dominio::&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;C∈(0,1)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Obsérvese que  &amp;lt;math&amp;gt;C &amp;lt;/math&amp;gt; tiene que ser mayor que 0 para que sea reversible, pero al mismo tiempo inferior que 1, ya que si no se estaría descomponiendo más compuesto  &amp;lt;math&amp;gt;C &amp;lt;/math&amp;gt; del que realmente se ha formado, en otras palabras, estaría apareciendo masa de la nada.&lt;br /&gt;
&lt;br /&gt;
=Método de Euler=&lt;br /&gt;
&lt;br /&gt;
Una vez llegados a este punto, se procede a ver una interpretación gráfica de la reacción. Para ello, se refleja en la gráfica (en un intervalo de 2 segundos), cómo varían las concentraciones tanto de &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt; (&amp;lt;math&amp;gt;a_0&amp;lt;/math&amp;gt;=3 mol/L) y &amp;lt;math&amp;gt;B&amp;lt;/math&amp;gt; (&amp;lt;math&amp;gt;b_0&amp;lt;/math&amp;gt;=1 mol/L) como de &amp;lt;math&amp;gt; C&amp;lt;/math&amp;gt;, para una &amp;lt;math&amp;gt;k_1&amp;lt;/math&amp;gt;=1 mol/s. Se comienza, por el momento, aplicando el método de Euler. Posteriormente se utilizarán métodos más precisos.&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo= &lt;br /&gt;
% Euler&lt;br /&gt;
clear all&lt;br /&gt;
% datos del problema&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=2;&lt;br /&gt;
y0=0;&lt;br /&gt;
h=0.1;&lt;br /&gt;
k1=1;&lt;br /&gt;
a0=3;&lt;br /&gt;
b0=1;&lt;br /&gt;
% Definimos la variable independiente&lt;br /&gt;
t=t0:h:tN;&lt;br /&gt;
% Guardamos los valores de la solución aproximada en el vector &amp;quot;y1&amp;quot; y&lt;br /&gt;
% establecemos los vectores de concentraciones A y B&lt;br /&gt;
y1=zeros(1,length(t)); &lt;br /&gt;
y1(1)=y0;&lt;br /&gt;
a1=zeros(1,length(t));&lt;br /&gt;
a1(1)=a0;&lt;br /&gt;
b1=zeros(1,length(t));&lt;br /&gt;
b1(1)=b0;&lt;br /&gt;
% A continuación, calculamos las componentes de los vectores y1, a1 y b1&lt;br /&gt;
for i=1:length(t)-1&lt;br /&gt;
    y1(i+1)=y1(i)+h*(k1*(a0-y1(i))*(b0-y1(i)));    %Euler&lt;br /&gt;
    a1(i+1)=a0-y1(i+1); % evolución de la concentración de A&lt;br /&gt;
    b1(i+1)=b0-y1(i+1); % evolución de la concentración de B&lt;br /&gt;
end&lt;br /&gt;
%grafico &lt;br /&gt;
figure(1)&lt;br /&gt;
hold on&lt;br /&gt;
plot(t,y1,'g')&lt;br /&gt;
plot(t,a1,'r')&lt;br /&gt;
plot(t,b1,'b')&lt;br /&gt;
legend('concentración de C','concentración de A','concentración de B','location','best')&lt;br /&gt;
hold off &lt;br /&gt;
%en verde se muestra la concentración de C, en rojo la de A, y en azul la de B&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Archivo:3euler.jpeg|500px|miniaturadeimagen|center|Reacción compleja]]&lt;br /&gt;
&lt;br /&gt;
Aunque con observar los resultados ya podemos decir con casi absoluta seguridad cuáles son los límites de las concentraciones de cada reactivo &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;B&amp;lt;/math&amp;gt; y del producto &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt;, se ha diseñado un programa que, mediante diferencia de valores sucesivos de la variable &amp;lt;math&amp;gt;y(t)&amp;lt;/math&amp;gt;, nos devuelve el valor de la función cuando dicha diferencia es muy pequeña '''(se ha puesto una diferencia de 0.001)''', es decir, cuando tenemos una asíntota al tender &amp;lt;math&amp;gt;t→∞&amp;lt;/math&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
%Estudio de las asíntotas&lt;br /&gt;
t1=t0:h:10;%se aumenta la longitud de t, y se estima que se alcanzarán las asíntotas antes de t=10&lt;br /&gt;
y_=zeros(1,length(t1)); %se define un vector y_ idéntico a y1 pero con t hasta 10&lt;br /&gt;
a_=y_;&lt;br /&gt;
b_=y_;&lt;br /&gt;
y_(1)=y0;&lt;br /&gt;
a_(1)=a0;&lt;br /&gt;
b_(1)=b0;&lt;br /&gt;
for i=1:length(t1)-1&lt;br /&gt;
    y_(i+1)=y_(i)+h*(k1*(a0-y_(i))*(b0-y_(i)));&lt;br /&gt;
    diferencia=y_(i+1)-y_(i);&lt;br /&gt;
    if abs(diferencia)&amp;lt;=0.001&lt;br /&gt;
        limC=y_(i+1)&lt;br /&gt;
        break&lt;br /&gt;
    end&lt;br /&gt;
end&lt;br /&gt;
for i=1:length(t1)-1&lt;br /&gt;
    y_(i+1)=y_(i)+h*(k1*(a0-y_(i))*(b0-y_(i)));    &lt;br /&gt;
    a_(i+1)=a0-y_(i+1);&lt;br /&gt;
    diferencia2=a_(i+1)-a_(i);&lt;br /&gt;
    if abs(diferencia2)&amp;lt;=0.001&lt;br /&gt;
        limA=a_(i+1)&lt;br /&gt;
        break&lt;br /&gt;
    end&lt;br /&gt;
end&lt;br /&gt;
for i=1:length(t1)-1&lt;br /&gt;
    y_(i+1)=y_(i)+h*(k1*(a0-y_(i))*(b0-y_(i)));    &lt;br /&gt;
    b_(i+1)=b0-y_(i+1);&lt;br /&gt;
    diferencia3=b_(i+1)-b_(i);&lt;br /&gt;
    if abs(diferencia3)&amp;lt;=0.001&lt;br /&gt;
        limB=b_(i+1)&lt;br /&gt;
        break&lt;br /&gt;
    end&lt;br /&gt;
end&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
Que nos devuelve unos valores de las concentraciones para el límite de:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\lim A=2,0036≈2 mol/L&amp;lt;/math&amp;gt;:     &lt;br /&gt;
&amp;lt;math&amp;gt;\lim B=0,0036≈0mol/L&amp;lt;/math&amp;gt;:         &lt;br /&gt;
&amp;lt;math&amp;gt;\lim C=0,9964≈1mol/L&amp;lt;/math&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
Lo cual es lógico, ya que &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;B&amp;lt;/math&amp;gt; se combinan en una proporción de 1:1, luego &amp;lt;math&amp;gt;B&amp;lt;/math&amp;gt;, que tiene una concentración inicial de &amp;lt;math&amp;gt;b_0&amp;lt;/math&amp;gt;=1, será el reactivo limitante (el que desaparecerá por completo), mientras que &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt;, con &amp;lt;math&amp;gt;a_0&amp;lt;/math&amp;gt;=3, acabará con una concentración molar final igual a 2, y &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt;, del que no habia nada,alcanza una concentraccion de &amp;lt;math&amp;gt;1mol/L&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
= Método del Trapecio y Método de Runge-Kutta=&lt;br /&gt;
&lt;br /&gt;
A continuación, para obtener con más precisión las representaciones gráficas de las respectivas concentraciones, se opta por utilizar los métodos de los &amp;lt;math&amp;gt;Trapecios&amp;lt;/math&amp;gt; (segundo orden) y de &amp;lt;math&amp;gt;Runge-Kutta&amp;lt;/math&amp;gt; (cuarto orden). Además, se ha obtenido la expresión explícita de la solución de nuestro problema de valor inicial de manera analítica, mediante variables separables y fracciones simples, resultando la función real::&lt;br /&gt;
&amp;lt;math&amp;gt;y_e(t)=\frac{3e^{2t}-3}{3e^{2t}-1}&amp;lt;/math&amp;gt;&lt;br /&gt;
De manera que las concentraciones de A y de B en cada valor de t quedarían como::&lt;br /&gt;
&amp;lt;math&amp;gt;a_e(t)=a_0-y_e(t)&amp;lt;/math&amp;gt;:&lt;br /&gt;
&amp;lt;math&amp;gt;b_e (t)=b_0-y_e (t)&amp;lt;/math&amp;gt;:&lt;br /&gt;
Para los trapecios, al ser un método implícito, es necesario despejar la componente &amp;lt;math&amp;gt;y_{n+1}&amp;lt;/math&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;y_{n+1}=\frac{(1+\frac{h}{2}∙k_1∙(a_0+b_0))-\sqrt{(1+\frac{h}{2}∙k_1∙(a_0+b_0))^2 -2∙h∙k_1(y_n+\frac{h}{2}∙k_1∙(a_0-y_n )∙(b_0-y_n)+\frac{h}{2}∙k_1∙a_0∙b_0) }}{k_1∙h}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Cabe destacar que este programa parte de los datos ya establecidos en el programa de Euler para '''t0, tN, y0, a0, b0, k1 y h''':&lt;br /&gt;
{{matlab|codigo= &lt;br /&gt;
%Función real&lt;br /&gt;
ye=(3*exp(2.*t)-3)./(3*exp(2.*t)-1);&lt;br /&gt;
ae=a0-ye;&lt;br /&gt;
be=b0-ye;&lt;br /&gt;
&lt;br /&gt;
%Trapecios&lt;br /&gt;
y2=zeros(1,length(t)); &lt;br /&gt;
a2=y2;&lt;br /&gt;
b2=y2;&lt;br /&gt;
y2(1)=y0;&lt;br /&gt;
a2(1)=a0;&lt;br /&gt;
b2(1)=b0;&lt;br /&gt;
for i= 1:length(t)-1&lt;br /&gt;
    y2(i+1)=((1+0.5*h*k1*(a0+b0))-sqrt((1+0.5*h*k1*(a0+b0))^2-2*h*k1*(y2(i)+0.5*h*k1*(a0-y2(i))*(b0-y2(i))+0.5*h*k1*a0*b0)))/(k1*h);&lt;br /&gt;
a2(i+1)=a0-y2(i+1);&lt;br /&gt;
b2(i+1)=b0-y2(i+1);&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
%Runge-Kutta&lt;br /&gt;
y3=zeros(1,length(t)); &lt;br /&gt;
a3=y3;&lt;br /&gt;
b3=y3;&lt;br /&gt;
y3(1)=y0;&lt;br /&gt;
a3(1)=a0;&lt;br /&gt;
b3(1)=b0;&lt;br /&gt;
fori=1:length(t)-1 &lt;br /&gt;
    r1=k1*(a0-y3(i))*(b0-y3(i));&lt;br /&gt;
    r2=k1*(a0-y3(i)-0.5*r1*h)*(b0-y3(i)-0.5*r1*h);&lt;br /&gt;
    r3=k1*(a0-y3(i)-0.5*r2*h)*(b0-y3(i)-0.5*r2*h);&lt;br /&gt;
    r4=k1*(a0-y3(i)-r3*h)*(b0-y3(i)-r3*h);&lt;br /&gt;
y3(i+1)=y3(i)+h/6*(r1+2*r2+2*r3+r4);&lt;br /&gt;
a3(i+1)=a0-y3(i+1);&lt;br /&gt;
b3(i+1)=b0-y3(i+1);&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
%se pintan las cuatro gráficas, con la función real en verde y los puntos con asteriscos, &lt;br /&gt;
%Euler en rojo, los Trapecios en azul, y Runge-Kutta en negro&lt;br /&gt;
figure(2)&lt;br /&gt;
hold on&lt;br /&gt;
&lt;br /&gt;
plot(t,ye,'g*-')&lt;br /&gt;
plot(t,y2)&lt;br /&gt;
plot(t,y3,'k')&lt;br /&gt;
plot(t,y1,'r')&lt;br /&gt;
legend('Función real','Trapecios', 'Runge-Kutta', 'Euler','Location','best');&lt;br /&gt;
plot(t,ae,'g*')&lt;br /&gt;
plot(t,a2)&lt;br /&gt;
plot(t,a3,'k')&lt;br /&gt;
plot(t,a1,'r')&lt;br /&gt;
plot(t,be,'g*')&lt;br /&gt;
plot(t,b2)&lt;br /&gt;
plot(t,b3,'k')&lt;br /&gt;
plot(t,b1,'r')&lt;br /&gt;
hold off&lt;br /&gt;
&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
Los resultados del programa se muestran en las dos siguientes figuras. Como podemos observar, el método de ''Euler'', en &amp;lt;span style=&amp;quot;color:#FF0000;&amp;quot;&amp;gt;Rojo&amp;lt;/span&amp;gt;, rápidamente se separa de los demás y de la función real, lo que es debido a que es un método de orden 1 y su precisión es bastante reducida. Para analizar el comportamiento de los otros dos métodos, se ha hecho un zoom en una zona aleatoria de la gráfica, y se muestra en la figura 2. Lo lógico, debido a que es de orden 2, es que el método de los trapecios sea el siguiente que se aleje de la solución real, y esto es precisamente lo que se evidencia en la gráfica, pues como vemos, la línea &amp;lt;span style=&amp;quot;color:#0000FF;&amp;quot;&amp;gt;Azul&amp;lt;/span&amp;gt; se separa de la negra y de la &amp;lt;span style=&amp;quot;color:#00FF00;&amp;quot;&amp;gt;Verde&amp;lt;/span&amp;gt;. Es por tanto que el método de ''Runge-Kutta'' es el más preciso de todos, haciendo honor a su cuarto orden, y como podemos observar, las líneas &amp;lt;span style=&amp;quot;color:#00FF00;&amp;quot;&amp;gt;Verde&amp;lt;/span&amp;gt; y negra son casi indistinguibles. &lt;br /&gt;
&lt;br /&gt;
Es importante también atender a la escala que se muestra en la figura 2, que nos da una idea de los rangos en el eje de ordenadas de los que estamos hablando. Cabe decir que estamos trabajando con un paso de h=0.1, lo que significa que con un paso menor, estas diferencias serian mucho menos perceptibles.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Archivo:ejer4euler.jpeg|500px|miniaturadeimagen|center|&lt;br /&gt;
Fifura 1]]&lt;br /&gt;
&lt;br /&gt;
[[Archivo:ejer4zoom.jpeg|500px|miniaturadeimagen|center|Figura 2]]&lt;br /&gt;
&lt;br /&gt;
=Reacción consecutiva=&lt;br /&gt;
&lt;br /&gt;
Consideremos ahora que se produce una reacción consecutiva de la forma.: &lt;br /&gt;
&lt;br /&gt;
                                                                   &amp;lt;math&amp;gt;A + B → k_1C → k_2D&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
De tal modo que los reactivos &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;B&amp;lt;/math&amp;gt; se combinan en la proporción 1:1 para formar compuesto &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt;, el cual, a su vez, se va descomponiendo para formar compuesto &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt;. Al igual que se ha hecho antes al analizar las otras reacciones, se considerará que se cumple la ley de acción de masas. Es decir, la velocidad con la que se forma compuesto &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; es proporcional a las concentraciones existentes de &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt; y de &amp;lt;math&amp;gt;B&amp;lt;/math&amp;gt; y del mismo modo la de formación de la sustancia &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; lo es a la concentración de &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; que se ha ido formando.&lt;br /&gt;
&lt;br /&gt;
Esta reacción consecutiva está representada por el siguiente problema de valor inicial::&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;&lt;br /&gt;
   \left . &lt;br /&gt;
      \begin{matrix} &lt;br /&gt;
         y'_1(t)={k_{1}}({a_{0}}-y_1(t))({b_{0}}-y_1(t))\\&lt;br /&gt;
         y'_2(t)={k_{2}}(y_1(t)-y_2(t))\\&lt;br /&gt;
y_1(0)=0\\y_2(0)=0&lt;br /&gt;
      \end{matrix}&lt;br /&gt;
   \right \}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
Donde &amp;lt;math&amp;gt;a_0&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;b_0&amp;lt;/math&amp;gt; representan las concentraciones iniciales de &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;B&amp;lt;/math&amp;gt; respectivamente, &amp;lt;math&amp;gt;k_1&amp;lt;/math&amp;gt; es la constante de proporcionalidad que rige la primera reacción y &amp;lt;math&amp;gt;k_2&amp;lt;/math&amp;gt; la que rige la segunda reacción o reacción consecutiva. &amp;lt;math&amp;gt;y_1’(t)&amp;lt;/math&amp;gt; e  &amp;lt;math&amp;gt;y_2’(t)&amp;lt;/math&amp;gt; representan las velocidades de las reacciones, es decir, las velocidades con que se forman los productos &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt;. &amp;lt;math&amp;gt;y_2(t)&amp;lt;/math&amp;gt; representa la concentración del producto &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; pero es importante apreciar que en este caso &amp;lt;math&amp;gt;y_1(t)&amp;lt;/math&amp;gt; no nos da el valor de la concentración de &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; directamente, sino que ésta será &amp;lt;math&amp;gt;y_1(t)&amp;lt;/math&amp;gt;- &amp;lt;math&amp;gt;y_2(t)&amp;lt;/math&amp;gt;, la cantidad que se forma en la primera reacción menos la que se emplea para formar el producto &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; en la segunda.&lt;br /&gt;
&lt;br /&gt;
Este problema se va a resolver para dos casos diferentes. Uno en el cual se considera que la segunda reacción es más rápida que la primera, lo que supone tomar un valor de la constante &amp;lt;math&amp;gt;k_2&amp;lt;/math&amp;gt;  mayor que &amp;lt;math&amp;gt;k_1&amp;lt;/math&amp;gt;. Y otro en el cual se considera que es más lenta, lo que implica que &amp;lt;math&amp;gt;k_2&amp;lt;/math&amp;gt; es menor que &amp;lt;math&amp;gt;k_1&amp;lt;/math&amp;gt;. Concretamente vamos a tomar los siguientes valores para resolver el problema numéricamente; &amp;lt;math&amp;gt;a_0&amp;lt;/math&amp;gt;=3 ,  &amp;lt;math&amp;gt;b_0&amp;lt;/math&amp;gt;=1, &amp;lt;math&amp;gt;k_1&amp;lt;/math&amp;gt;=1,  &amp;lt;math&amp;gt;k_2&amp;lt;/math&amp;gt;=5, &amp;lt;math&amp;gt;k_2&amp;lt;/math&amp;gt;=1/5, .En ambos casos se resuelve para los primeros 10 segundos.&lt;br /&gt;
&lt;br /&gt;
==La reacción D es más rápida que la reacción C==&lt;br /&gt;
CASO    &amp;lt;math&amp;gt;k_1=5  &amp;lt;/math&amp;gt;   '''h=0.1''' &lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
&lt;br /&gt;
%datos&lt;br /&gt;
y0=[0;0];&lt;br /&gt;
z0=[0;0];&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;
%matriz de las soluciones&lt;br /&gt;
y=zeros(2,length(t)); %euler&lt;br /&gt;
y(:,1)=y0;&lt;br /&gt;
 &lt;br /&gt;
z=zeros(2,length(t)); %runge-kutta&lt;br /&gt;
z(:,1)=y0;&lt;br /&gt;
 &lt;br /&gt;
for i=1:length(t)-1&lt;br /&gt;
 %euler&lt;br /&gt;
 y(:,i+1)=y(:,i)+h*[1*(3-y(1,i))*(1-y(1,i)); 5*(y(1,i)-y(2,i))];&lt;br /&gt;
 %runge-kutta&lt;br /&gt;
 K1=[1*(3-z(1,i))*(1-z(1,i)); 5*(z(1,i)-z(2,i))];&lt;br /&gt;
 K2=[1*(3-(z(1,i)+h/2*K1(1)))*(1-(z(1,i)+h/2*K1(1))); 5*((y(1,i)+h/2*K1(2))-(y(2,i)+h/2*K1(2)))];&lt;br /&gt;
 K3=[1*(3-(z(1,i)+h/2*K2(1)))*(1-(z(1,i)+h/2*K2(1))); 5*((y(1,i)+h/2*K2(2))-(y(2,i)+h/2*K2(2)))];&lt;br /&gt;
 K4=[1*(3-(z(1,i)+h*K3(1)))*(1-(z(1,i)+h*K3(1))); 5*((y(1,i)+h*K3(2))-(y(2,i)+h*K3(2)))];&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;
% se calcula la concentración de C=y1t)-y2(t)&lt;br /&gt;
Ay=y(1,:)-y(2,:); %euler&lt;br /&gt;
Az=z(1,:)-z(2,:); %runge-kutta&lt;br /&gt;
 &lt;br /&gt;
figure(1)&lt;br /&gt;
hold on&lt;br /&gt;
plot(t,Ay) %concentración de C por euler&lt;br /&gt;
plot(t,y(2,:),'r') %concentración de D por euler&lt;br /&gt;
plot(t,Az,'k') %concentración de C por runge-kutta&lt;br /&gt;
plot(t,z(2,:),'g') %concentración de D por runge-kutta&lt;br /&gt;
legend('concentración de C por euler','concentración de D por euler','concentración de C por runge-kutta','concentración de D por runge-kutta','Location','best')&lt;br /&gt;
hold off&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:graficoa.jpeg|500px|miniaturadeimagen|center|Reacción compleja]]&lt;br /&gt;
&lt;br /&gt;
Se observa que en en los primeros instantes aumentan las concentraciones de &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; aumentan sus concentraciones. Antes de que pase 1 segundo, la concentración &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; alcanza un máximo (de unos 0.3 molar) y va disminuyendo progresivamente hasta alcanzar un valor de 0 molar. La concentración &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; sigue creciendo hasta llegar a 1 molar. Una vez que tanto &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; como &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; alcanzan estos valores, se estabiliza la reacción. &lt;br /&gt;
&lt;br /&gt;
Como hemos impuesto que la reacción &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; es más rápida que &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt;, se observa que &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; empieza creciendo más rápidamente, pero como reacciona más despacio que &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; su concentración disminuye progresivamente, mientras que la de &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; aumenta.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''CASO'''  &amp;lt;math&amp;gt;k_2=5  &amp;lt;/math&amp;gt;   '''h=0.3''' &lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
&lt;br /&gt;
%datos&lt;br /&gt;
y0=[0;0];&lt;br /&gt;
z0=[0;0];&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=10;&lt;br /&gt;
h=0.3;&lt;br /&gt;
 &lt;br /&gt;
%variable independiente t&lt;br /&gt;
t=t0:h:tN;&lt;br /&gt;
 &lt;br /&gt;
%matriz de las soluciones&lt;br /&gt;
y=zeros(2,length(t)); %euler&lt;br /&gt;
y(:,1)=y0;&lt;br /&gt;
 &lt;br /&gt;
z=zeros(2,length(t)); %runge-kutta&lt;br /&gt;
z(:,1)=y0;&lt;br /&gt;
 &lt;br /&gt;
for i=1:length(t)-1&lt;br /&gt;
 %euler&lt;br /&gt;
 y(:,i+1)=y(:,i)+h*[1*(3-y(1,i))*(1-y(1,i)); 5*(y(1,i)-y(2,i))];&lt;br /&gt;
 %runge-kutta&lt;br /&gt;
 K1=[1*(3-z(1,i))*(1-z(1,i)); 5*(z(1,i)-z(2,i))];&lt;br /&gt;
 K2=[1*(3-(z(1,i)+h/2*K1(1)))*(1-(z(1,i)+h/2*K1(1))); 5*((y(1,i)+h/2*K1(2))-(y(2,i)+h/2*K1(2)))];&lt;br /&gt;
 K3=[1*(3-(z(1,i)+h/2*K2(1)))*(1-(z(1,i)+h/2*K2(1))); 5*((y(1,i)+h/2*K2(2))-(y(2,i)+h/2*K2(2)))];&lt;br /&gt;
 K4=[1*(3-(z(1,i)+h*K3(1)))*(1-(z(1,i)+h*K3(1))); 5*((y(1,i)+h*K3(2))-(y(2,i)+h*K3(2)))];&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;
% se calcula la concentración de C=y1t)-y2(t)&lt;br /&gt;
Ay=y(1,:)-y(2,:); %euler&lt;br /&gt;
Az=z(1,:)-z(2,:); %runge-kutta&lt;br /&gt;
 &lt;br /&gt;
figure(1)&lt;br /&gt;
hold on&lt;br /&gt;
plot(t,Ay) %concentración de C por euler&lt;br /&gt;
plot(t,y(2,:),'r') %concentración de D por euler&lt;br /&gt;
plot(t,Az,'k') %concentración de C por runge-kutta&lt;br /&gt;
plot(t,z(2,:),'g') %concentración de D por runge-kutta&lt;br /&gt;
legend('concentración de C por euler','concentración de D por euler','concentración de C por runge-kutta','concentración de D por runge-kutta','Location','best')&lt;br /&gt;
hold off&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:graficob.jpeg|500px|miniaturadeimagen|center|Reacción compleja]]&lt;br /&gt;
&lt;br /&gt;
Repetimos el programa pero para un tamaño de paso mayor, de '''h=0.3''', y observamos que no  es suficientemente preciso, sobre todo al principio, no se puede analizar bien lo que está pasando en la reacción.&lt;br /&gt;
&lt;br /&gt;
==La reacción D es más lenta que la reacción C==&lt;br /&gt;
&lt;br /&gt;
CASO  &amp;lt;math&amp;gt;k_1 &amp;lt;/math&amp;gt;=1,   &amp;lt;math&amp;gt;k_2 &amp;lt;/math&amp;gt;=1/5&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
&lt;br /&gt;
%datos&lt;br /&gt;
y0=[0;0];&lt;br /&gt;
z0=[0;0];&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;
%matriz de las soluciones&lt;br /&gt;
y=zeros(2,length(t)); %euler&lt;br /&gt;
y(:,1)=y0;&lt;br /&gt;
 &lt;br /&gt;
z=zeros(2,length(t)); %runge-kutta&lt;br /&gt;
z(:,1)=y0;&lt;br /&gt;
 &lt;br /&gt;
for i=1:length(t)-1&lt;br /&gt;
 %euler&lt;br /&gt;
 y(:,i+1)=y(:,i)+h*[1*(3-y(1,i))*(1-y(1,i)); 1/5*(y(1,i)-y(2,i))];&lt;br /&gt;
 %runge-kutta&lt;br /&gt;
 K1=[1*(3-z(1,i))*(1-z(1,i)); 1/5*(z(1,i)-z(2,i))];&lt;br /&gt;
 K2=[1*(3-(z(1,i)+h/2*K1(1)))*(1-(z(1,i)+h/2*K1(1))); 1/5*((y(1,i)+h/2*K1(2))-(y(2,i)+h/2*K1(2)))];&lt;br /&gt;
 K3=[1*(3-(z(1,i)+h/2*K2(1)))*(1-(z(1,i)+h/2*K2(1))); 1/5*((y(1,i)+h/2*K2(2))-(y(2,i)+h/2*K2(2)))];&lt;br /&gt;
 K4=[1*(3-(z(1,i)+h*K3(1)))*(1-(z(1,i)+h*K3(1))); 1/5*((y(1,i)+h*K3(2))-(y(2,i)+h*K3(2)))];&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;
% se calcula la concentración de C=y1t)-y2(t)&lt;br /&gt;
Ay=y(1,:)-y(2,:); %euler&lt;br /&gt;
Az=z(1,:)-z(2,:); %runge-kutta&lt;br /&gt;
 &lt;br /&gt;
figure(1)&lt;br /&gt;
hold on&lt;br /&gt;
plot(t,Ay) %concentración de C por euler&lt;br /&gt;
plot(t,y(2,:),'r') %concentración de D por euler&lt;br /&gt;
plot(t,Az,'k') %concentración de C por runge-kutta&lt;br /&gt;
plot(t,z(2,:),'g') %concentración de D por runge-kutta&lt;br /&gt;
legend('concentración de C por euler','concentración de D por euler','concentración de C por runge-kutta','concentración de D por runge-kutta','Location','best')&lt;br /&gt;
hold off&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:graficoc.jpeg|500px|miniaturadeimagen|center|Reacción compleja]]&lt;br /&gt;
&lt;br /&gt;
Si ahora imponemos que la reacción  &amp;lt;math&amp;gt;C &amp;lt;/math&amp;gt; es más rápida que  &amp;lt;math&amp;gt;D &amp;lt;/math&amp;gt;, obtenemos lo siguiente. Se parece a la gráfica que obtuvimos en el programa anterior, pero  más extendida en el tiempo, más lenta.  &amp;lt;math&amp;gt;C &amp;lt;/math&amp;gt; alcanza una concentración máxima de unos 0.8 molar antes de empezar a decrecer a medida que avanza el tiempo y acercándose a un valor de '''0''' molar.  &amp;lt;math&amp;gt;D &amp;lt;/math&amp;gt; crece más lentamente que en la gráfica anterior, pero se aproxima al mismo valor, '''1''' molar.&lt;br /&gt;
Se observa que aunque hagamos la reacción  &amp;lt;math&amp;gt;C &amp;lt;/math&amp;gt; más rápida, tenemos las mismas concentraciones finales, pero tardan más tiempo en obtenerse, ya que la reacción tarda más en estabilizarse.&lt;br /&gt;
&lt;br /&gt;
&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>Joseva</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Archivo:Ejer4zoom.jpeg&amp;diff=27803</id>
		<title>Archivo:Ejer4zoom.jpeg</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Archivo:Ejer4zoom.jpeg&amp;diff=27803"/>
				<updated>2015-03-06T11:42:10Z</updated>
		
		<summary type="html">&lt;p&gt;Joseva: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>Joseva</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Reacciones_complejas_(Grupo_D1)&amp;diff=27800</id>
		<title>Reacciones complejas (Grupo D1)</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Reacciones_complejas_(Grupo_D1)&amp;diff=27800"/>
				<updated>2015-03-06T11:41:56Z</updated>
		
		<summary type="html">&lt;p&gt;Joseva: /* Método del Trapecio y Método de Runge-Kutta */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{ TrabajoED | Reacciones complejas (Grupo D1) | [[:Categoría:Ecuaciones Diferenciales|Ecuaciones Diferenciales]]|[[:Categoría:ED14/15|Curso 2014-15]] | Rincón Crespo, Kevin&lt;br /&gt;
&lt;br /&gt;
Rodríguez Gómez, Javier&lt;br /&gt;
&lt;br /&gt;
Sans Jiménez, Alejandro&lt;br /&gt;
&lt;br /&gt;
Sesto Muñoz, María Victoria&lt;br /&gt;
&lt;br /&gt;
Vallejo Asín, José Manuel &lt;br /&gt;
&lt;br /&gt;
Villarino Redondo, Álvaro }}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=Introducción=&lt;br /&gt;
Se considera una reacción química irreversible en una solución bien mezclada. Supondremos que la reacción ocurre para un volumen y temperatura constantes. Al inicio se encuentran dos reactivos &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;B&amp;lt;/math&amp;gt;, que van formando un producto &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; en lo que se conoce como una reacción bimolecular, es decir, una molécula de &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt; y una de &amp;lt;math&amp;gt;B&amp;lt;/math&amp;gt; producen una de &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt;.: &lt;br /&gt;
                                                                     &amp;lt;math&amp;gt;A + B → C&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Supondremos también que se satisface la ley de acción de masas, que establece que la velocidad de reacción es proporcional al producto de las concentraciones de los reactivos.&lt;br /&gt;
&lt;br /&gt;
=Concentración del reactivo &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; a lo largo del tiempo=&lt;br /&gt;
En primer lugar, suponiendo que la reacción es irreversible, es decir, que &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; no puede volver a formar &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;B&amp;lt;/math&amp;gt;, se puede expresar la situación mediante el siguiente problema de valor inicial, cuando t&amp;gt;0.:&lt;br /&gt;
   &amp;lt;math&amp;gt;&lt;br /&gt;
   \left . &lt;br /&gt;
      \begin{matrix} &lt;br /&gt;
         y'(t)={k_{1}}({a_{0}}-y(t))({b_{0}}-y(t))=0\\&lt;br /&gt;
         y(0)=0&lt;br /&gt;
      \end{matrix}&lt;br /&gt;
   \right \}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Donde &amp;lt;math&amp;gt; {a_{0}}&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;{b_{0}}&amp;lt;/math&amp;gt; representan las concentraciones iniciales de '''A''' y '''B''' respectivamente y &amp;lt;math&amp;gt;{k_{1}}&amp;lt;/math&amp;gt; es la constante de proporcionalidad que indica la ley de acción de masas. &amp;lt;math&amp;gt;y’(t)&amp;lt;/math&amp;gt; representa la velocidad de reacción, es decir, la velocidad con que se forma el producto &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; ; mientras que la solución de la ecuación diferencial, &amp;lt;math&amp;gt;y(t)&amp;lt;/math&amp;gt; , representa la concentración de &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt;, la cantidad de compuesto que se ha formado. Para comprobar que la solución de este problema de Cauchy es única, comenzamos definiendo.:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;math&amp;gt;f(t,y)={k_{1}}({a_{0}}-y(t))({b_{0}}-y(t))=0,   t&amp;gt;0 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Observamos que &amp;lt;math&amp;gt;f(t,y)&amp;lt;/math&amp;gt; es continua en el intervalo &amp;lt;math&amp;gt; I=(0,∞)∩B((0,0),r&amp;gt;0)&amp;lt;/math&amp;gt;, por lo que ya aseguramos la existencia de al menos una solución. Examinando la derivada parcial.:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\frac{∂f}{∂y}=k_1(-a_0-b_0+2y)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Se deduce que al ser un polinomio no va a haber problemas de continuidad para ninguna bola. De esta forma, podemos asegurar que existe una única solución.&lt;br /&gt;
&lt;br /&gt;
==Concentración del reactivo C a lo largo del tiempo en un proceso reversible==&lt;br /&gt;
&lt;br /&gt;
Ahora bien, ¿qué pasaría si la reacción fuese reversible? Con esto lo que queremos indicar es que además de formarse  &amp;lt;math&amp;gt;C &amp;lt;/math&amp;gt;, este también se descompone de nuevo en  &amp;lt;math&amp;gt;A &amp;lt;/math&amp;gt; y  &amp;lt;math&amp;gt;B &amp;lt;/math&amp;gt;. Por lo tanto, nos quedaría una ecuación diferencial con la siguiente forma, cuando &amp;lt;math&amp;gt;t&amp;gt;0 &amp;lt;/math&amp;gt;. :&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; y'(t)={k_{1}}({a_{0}}-y(t))({b_{0}}-y(t))-Cy(t)&amp;lt;/math&amp;gt;  &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Si nos fijamos, la modificación es sencillamente restar  &amp;lt;math&amp;gt;y(t) &amp;lt;/math&amp;gt; multiplicada por una constante, la cual refleja qué porcentaje de  &amp;lt;math&amp;gt;C &amp;lt;/math&amp;gt; se va descomponiendo a medida que se da, simultáneamente, la reacción  &amp;lt;math&amp;gt;A + B → C &amp;lt;/math&amp;gt;. Sin embargo, esta constante no puede tener cualquier valor, ya que en una reacción se cumple la conservación de masa. Por ello, a  &amp;lt;math&amp;gt;C &amp;lt;/math&amp;gt; le asociaremos el siguiente dominio::&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;C∈(0,1)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Obsérvese que  &amp;lt;math&amp;gt;C &amp;lt;/math&amp;gt; tiene que ser mayor que 0 para que sea reversible, pero al mismo tiempo inferior que 1, ya que si no se estaría descomponiendo más compuesto  &amp;lt;math&amp;gt;C &amp;lt;/math&amp;gt; del que realmente se ha formado, en otras palabras, estaría apareciendo masa de la nada.&lt;br /&gt;
&lt;br /&gt;
=Método de Euler=&lt;br /&gt;
&lt;br /&gt;
Una vez llegados a este punto, se procede a ver una interpretación gráfica de la reacción. Para ello, se refleja en la gráfica (en un intervalo de 2 segundos), cómo varían las concentraciones tanto de &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt; (&amp;lt;math&amp;gt;a_0&amp;lt;/math&amp;gt;=3 mol/L) y &amp;lt;math&amp;gt;B&amp;lt;/math&amp;gt; (&amp;lt;math&amp;gt;b_0&amp;lt;/math&amp;gt;=1 mol/L) como de &amp;lt;math&amp;gt; C&amp;lt;/math&amp;gt;, para una &amp;lt;math&amp;gt;k_1&amp;lt;/math&amp;gt;=1 mol/s. Se comienza, por el momento, aplicando el método de Euler. Posteriormente se utilizarán métodos más precisos.&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo= &lt;br /&gt;
% Euler&lt;br /&gt;
clear all&lt;br /&gt;
% datos del problema&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=2;&lt;br /&gt;
y0=0;&lt;br /&gt;
h=0.1;&lt;br /&gt;
k1=1;&lt;br /&gt;
a0=3;&lt;br /&gt;
b0=1;&lt;br /&gt;
% Definimos la variable independiente&lt;br /&gt;
t=t0:h:tN;&lt;br /&gt;
% Guardamos los valores de la solución aproximada en el vector &amp;quot;y1&amp;quot; y&lt;br /&gt;
% establecemos los vectores de concentraciones A y B&lt;br /&gt;
y1=zeros(1,length(t)); &lt;br /&gt;
y1(1)=y0;&lt;br /&gt;
a1=zeros(1,length(t));&lt;br /&gt;
a1(1)=a0;&lt;br /&gt;
b1=zeros(1,length(t));&lt;br /&gt;
b1(1)=b0;&lt;br /&gt;
% A continuación, calculamos las componentes de los vectores y1, a1 y b1&lt;br /&gt;
for i=1:length(t)-1&lt;br /&gt;
    y1(i+1)=y1(i)+h*(k1*(a0-y1(i))*(b0-y1(i)));    %Euler&lt;br /&gt;
    a1(i+1)=a0-y1(i+1); % evolución de la concentración de A&lt;br /&gt;
    b1(i+1)=b0-y1(i+1); % evolución de la concentración de B&lt;br /&gt;
end&lt;br /&gt;
%grafico &lt;br /&gt;
figure(1)&lt;br /&gt;
hold on&lt;br /&gt;
plot(t,y1,'g')&lt;br /&gt;
plot(t,a1,'r')&lt;br /&gt;
plot(t,b1,'b')&lt;br /&gt;
legend('concentración de C','concentración de A','concentración de B','location','best')&lt;br /&gt;
hold off &lt;br /&gt;
%en verde se muestra la concentración de C, en rojo la de A, y en azul la de B&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Archivo:3euler.jpeg|500px|miniaturadeimagen|center|Reacción compleja]]&lt;br /&gt;
&lt;br /&gt;
Aunque con observar los resultados ya podemos decir con casi absoluta seguridad cuáles son los límites de las concentraciones de cada reactivo &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;B&amp;lt;/math&amp;gt; y del producto &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt;, se ha diseñado un programa que, mediante diferencia de valores sucesivos de la variable &amp;lt;math&amp;gt;y(t)&amp;lt;/math&amp;gt;, nos devuelve el valor de la función cuando dicha diferencia es muy pequeña '''(se ha puesto una diferencia de 0.001)''', es decir, cuando tenemos una asíntota al tender &amp;lt;math&amp;gt;t→∞&amp;lt;/math&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
%Estudio de las asíntotas&lt;br /&gt;
t1=t0:h:10;%se aumenta la longitud de t, y se estima que se alcanzarán las asíntotas antes de t=10&lt;br /&gt;
y_=zeros(1,length(t1)); %se define un vector y_ idéntico a y1 pero con t hasta 10&lt;br /&gt;
a_=y_;&lt;br /&gt;
b_=y_;&lt;br /&gt;
y_(1)=y0;&lt;br /&gt;
a_(1)=a0;&lt;br /&gt;
b_(1)=b0;&lt;br /&gt;
for i=1:length(t1)-1&lt;br /&gt;
    y_(i+1)=y_(i)+h*(k1*(a0-y_(i))*(b0-y_(i)));&lt;br /&gt;
    diferencia=y_(i+1)-y_(i);&lt;br /&gt;
    if abs(diferencia)&amp;lt;=0.001&lt;br /&gt;
        limC=y_(i+1)&lt;br /&gt;
        break&lt;br /&gt;
    end&lt;br /&gt;
end&lt;br /&gt;
for i=1:length(t1)-1&lt;br /&gt;
    y_(i+1)=y_(i)+h*(k1*(a0-y_(i))*(b0-y_(i)));    &lt;br /&gt;
    a_(i+1)=a0-y_(i+1);&lt;br /&gt;
    diferencia2=a_(i+1)-a_(i);&lt;br /&gt;
    if abs(diferencia2)&amp;lt;=0.001&lt;br /&gt;
        limA=a_(i+1)&lt;br /&gt;
        break&lt;br /&gt;
    end&lt;br /&gt;
end&lt;br /&gt;
for i=1:length(t1)-1&lt;br /&gt;
    y_(i+1)=y_(i)+h*(k1*(a0-y_(i))*(b0-y_(i)));    &lt;br /&gt;
    b_(i+1)=b0-y_(i+1);&lt;br /&gt;
    diferencia3=b_(i+1)-b_(i);&lt;br /&gt;
    if abs(diferencia3)&amp;lt;=0.001&lt;br /&gt;
        limB=b_(i+1)&lt;br /&gt;
        break&lt;br /&gt;
    end&lt;br /&gt;
end&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
Que nos devuelve unos valores de las concentraciones para el límite de:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\lim A=2,0036≈2 mol/L&amp;lt;/math&amp;gt;:     &lt;br /&gt;
&amp;lt;math&amp;gt;\lim B=0,0036≈0mol/L&amp;lt;/math&amp;gt;:         &lt;br /&gt;
&amp;lt;math&amp;gt;\lim C=0,9964≈1mol/L&amp;lt;/math&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
Lo cual es lógico, ya que &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;B&amp;lt;/math&amp;gt; se combinan en una proporción de 1:1, luego &amp;lt;math&amp;gt;B&amp;lt;/math&amp;gt;, que tiene una concentración inicial de &amp;lt;math&amp;gt;b_0&amp;lt;/math&amp;gt;=1, será el reactivo limitante (el que desaparecerá por completo), mientras que &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt;, con &amp;lt;math&amp;gt;a_0&amp;lt;/math&amp;gt;=3, acabará con una concentración molar final igual a 2, y &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt;, del que no habia nada,alcanza una concentraccion de &amp;lt;math&amp;gt;1mol/L&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
= Método del Trapecio y Método de Runge-Kutta=&lt;br /&gt;
&lt;br /&gt;
A continuación, para obtener con más precisión las representaciones gráficas de las respectivas concentraciones, se opta por utilizar los métodos de los &amp;lt;math&amp;gt;Trapecios&amp;lt;/math&amp;gt; (segundo orden) y de &amp;lt;math&amp;gt;Runge-Kutta&amp;lt;/math&amp;gt; (cuarto orden). Además, se ha obtenido la expresión explícita de la solución de nuestro problema de valor inicial de manera analítica, mediante variables separables y fracciones simples, resultando la función real::&lt;br /&gt;
&amp;lt;math&amp;gt;y_e(t)=\frac{3e^{2t}-3}{3e^{2t}-1}&amp;lt;/math&amp;gt;&lt;br /&gt;
De manera que las concentraciones de A y de B en cada valor de t quedarían como::&lt;br /&gt;
&amp;lt;math&amp;gt;a_e(t)=a_0-y_e(t)&amp;lt;/math&amp;gt;:&lt;br /&gt;
&amp;lt;math&amp;gt;b_e (t)=b_0-y_e (t)&amp;lt;/math&amp;gt;:&lt;br /&gt;
Para los trapecios, al ser un método implícito, es necesario despejar la componente &amp;lt;math&amp;gt;y_{n+1}&amp;lt;/math&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;y_{n+1}=\frac{(1+\frac{h}{2}∙k_1∙(a_0+b_0))-\sqrt{(1+\frac{h}{2}∙k_1∙(a_0+b_0))^2 -2∙h∙k_1(y_n+\frac{h}{2}∙k_1∙(a_0-y_n )∙(b_0-y_n)+\frac{h}{2}∙k_1∙a_0∙b_0) }}{k_1∙h}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Cabe destacar que este programa parte de los datos ya establecidos en el programa de Euler para '''t0, tN, y0, a0, b0, k1 y h''':&lt;br /&gt;
{{matlab|codigo= &lt;br /&gt;
%Función real&lt;br /&gt;
ye=(3*exp(2.*t)-3)./(3*exp(2.*t)-1);&lt;br /&gt;
ae=a0-ye;&lt;br /&gt;
be=b0-ye;&lt;br /&gt;
&lt;br /&gt;
%Trapecios&lt;br /&gt;
y2=zeros(1,length(t)); &lt;br /&gt;
a2=y2;&lt;br /&gt;
b2=y2;&lt;br /&gt;
y2(1)=y0;&lt;br /&gt;
a2(1)=a0;&lt;br /&gt;
b2(1)=b0;&lt;br /&gt;
for i= 1:length(t)-1&lt;br /&gt;
    y2(i+1)=((1+0.5*h*k1*(a0+b0))-sqrt((1+0.5*h*k1*(a0+b0))^2-2*h*k1*(y2(i)+0.5*h*k1*(a0-y2(i))*(b0-y2(i))+0.5*h*k1*a0*b0)))/(k1*h);&lt;br /&gt;
a2(i+1)=a0-y2(i+1);&lt;br /&gt;
b2(i+1)=b0-y2(i+1);&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
%Runge-Kutta&lt;br /&gt;
y3=zeros(1,length(t)); &lt;br /&gt;
a3=y3;&lt;br /&gt;
b3=y3;&lt;br /&gt;
y3(1)=y0;&lt;br /&gt;
a3(1)=a0;&lt;br /&gt;
b3(1)=b0;&lt;br /&gt;
fori=1:length(t)-1 &lt;br /&gt;
    r1=k1*(a0-y3(i))*(b0-y3(i));&lt;br /&gt;
    r2=k1*(a0-y3(i)-0.5*r1*h)*(b0-y3(i)-0.5*r1*h);&lt;br /&gt;
    r3=k1*(a0-y3(i)-0.5*r2*h)*(b0-y3(i)-0.5*r2*h);&lt;br /&gt;
    r4=k1*(a0-y3(i)-r3*h)*(b0-y3(i)-r3*h);&lt;br /&gt;
y3(i+1)=y3(i)+h/6*(r1+2*r2+2*r3+r4);&lt;br /&gt;
a3(i+1)=a0-y3(i+1);&lt;br /&gt;
b3(i+1)=b0-y3(i+1);&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
%se pintan las cuatro gráficas, con la función real en verde y los puntos con asteriscos, &lt;br /&gt;
%Euler en rojo, los Trapecios en azul, y Runge-Kutta en negro&lt;br /&gt;
figure(2)&lt;br /&gt;
hold on&lt;br /&gt;
&lt;br /&gt;
plot(t,ye,'g*-')&lt;br /&gt;
plot(t,y2)&lt;br /&gt;
plot(t,y3,'k')&lt;br /&gt;
plot(t,y1,'r')&lt;br /&gt;
legend('Función real','Trapecios', 'Runge-Kutta', 'Euler','Location','best');&lt;br /&gt;
plot(t,ae,'g*')&lt;br /&gt;
plot(t,a2)&lt;br /&gt;
plot(t,a3,'k')&lt;br /&gt;
plot(t,a1,'r')&lt;br /&gt;
plot(t,be,'g*')&lt;br /&gt;
plot(t,b2)&lt;br /&gt;
plot(t,b3,'k')&lt;br /&gt;
plot(t,b1,'r')&lt;br /&gt;
hold off&lt;br /&gt;
&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
Los resultados del programa se muestran en las dos siguientes figuras. Como podemos observar, el método de ''Euler'', en &amp;lt;span style=&amp;quot;color:#FF0000;&amp;quot;&amp;gt;Rojo&amp;lt;/span&amp;gt;, rápidamente se separa de los demás y de la función real, lo que es debido a que es un método de orden 1 y su precisión es bastante reducida. Para analizar el comportamiento de los otros dos métodos, se ha hecho un zoom en una zona aleatoria de la gráfica, y se muestra en la figura 2. Lo lógico, debido a que es de orden 2, es que el método de los trapecios sea el siguiente que se aleje de la solución real, y esto es precisamente lo que se evidencia en la gráfica, pues como vemos, la línea &amp;lt;span style=&amp;quot;color:#0000FF;&amp;quot;&amp;gt;Azul&amp;lt;/span&amp;gt; se separa de la negra y de la &amp;lt;span style=&amp;quot;color:#00FF00;&amp;quot;&amp;gt;Verde&amp;lt;/span&amp;gt;. Es por tanto que el método de ''Runge-Kutta'' es el más preciso de todos, haciendo honor a su cuarto orden, y como podemos observar, las líneas &amp;lt;span style=&amp;quot;color:#00FF00;&amp;quot;&amp;gt;Verde&amp;lt;/span&amp;gt; y negra son casi indistinguibles. &lt;br /&gt;
&lt;br /&gt;
Es importante también atender a la escala que se muestra en la figura 2, que nos da una idea de los rangos en el eje de ordenadas de los que estamos hablando. Cabe decir que estamos trabajando con un paso de h=0.1, lo que significa que con un paso menor, estas diferencias serian mucho menos perceptibles.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Archivo:ejer4euler.jpeg|500px|miniaturadeimagen|center|Reacción compleja]]&lt;br /&gt;
&lt;br /&gt;
[[Archivo:ejer4zoom.jpeg|500px|miniaturadeimagen|center|Gráfico 2 zoom, donde se aprecian las diferencias]]&lt;br /&gt;
&lt;br /&gt;
=Reacción consecutiva=&lt;br /&gt;
&lt;br /&gt;
Consideremos ahora que se produce una reacción consecutiva de la forma.: &lt;br /&gt;
&lt;br /&gt;
                                                                   &amp;lt;math&amp;gt;A + B → k_1C → k_2D&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
De tal modo que los reactivos &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;B&amp;lt;/math&amp;gt; se combinan en la proporción 1:1 para formar compuesto &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt;, el cual, a su vez, se va descomponiendo para formar compuesto &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt;. Al igual que se ha hecho antes al analizar las otras reacciones, se considerará que se cumple la ley de acción de masas. Es decir, la velocidad con la que se forma compuesto &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; es proporcional a las concentraciones existentes de &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt; y de &amp;lt;math&amp;gt;B&amp;lt;/math&amp;gt; y del mismo modo la de formación de la sustancia &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; lo es a la concentración de &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; que se ha ido formando.&lt;br /&gt;
&lt;br /&gt;
Esta reacción consecutiva está representada por el siguiente problema de valor inicial::&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;&lt;br /&gt;
   \left . &lt;br /&gt;
      \begin{matrix} &lt;br /&gt;
         y'_1(t)={k_{1}}({a_{0}}-y_1(t))({b_{0}}-y_1(t))\\&lt;br /&gt;
         y'_2(t)={k_{2}}(y_1(t)-y_2(t))\\&lt;br /&gt;
y_1(0)=0\\y_2(0)=0&lt;br /&gt;
      \end{matrix}&lt;br /&gt;
   \right \}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
Donde &amp;lt;math&amp;gt;a_0&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;b_0&amp;lt;/math&amp;gt; representan las concentraciones iniciales de &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;B&amp;lt;/math&amp;gt; respectivamente, &amp;lt;math&amp;gt;k_1&amp;lt;/math&amp;gt; es la constante de proporcionalidad que rige la primera reacción y &amp;lt;math&amp;gt;k_2&amp;lt;/math&amp;gt; la que rige la segunda reacción o reacción consecutiva. &amp;lt;math&amp;gt;y_1’(t)&amp;lt;/math&amp;gt; e  &amp;lt;math&amp;gt;y_2’(t)&amp;lt;/math&amp;gt; representan las velocidades de las reacciones, es decir, las velocidades con que se forman los productos &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt;. &amp;lt;math&amp;gt;y_2(t)&amp;lt;/math&amp;gt; representa la concentración del producto &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; pero es importante apreciar que en este caso &amp;lt;math&amp;gt;y_1(t)&amp;lt;/math&amp;gt; no nos da el valor de la concentración de &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; directamente, sino que ésta será &amp;lt;math&amp;gt;y_1(t)&amp;lt;/math&amp;gt;- &amp;lt;math&amp;gt;y_2(t)&amp;lt;/math&amp;gt;, la cantidad que se forma en la primera reacción menos la que se emplea para formar el producto &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; en la segunda.&lt;br /&gt;
&lt;br /&gt;
Este problema se va a resolver para dos casos diferentes. Uno en el cual se considera que la segunda reacción es más rápida que la primera, lo que supone tomar un valor de la constante &amp;lt;math&amp;gt;k_2&amp;lt;/math&amp;gt;  mayor que &amp;lt;math&amp;gt;k_1&amp;lt;/math&amp;gt;. Y otro en el cual se considera que es más lenta, lo que implica que &amp;lt;math&amp;gt;k_2&amp;lt;/math&amp;gt; es menor que &amp;lt;math&amp;gt;k_1&amp;lt;/math&amp;gt;. Concretamente vamos a tomar los siguientes valores para resolver el problema numéricamente; &amp;lt;math&amp;gt;a_0&amp;lt;/math&amp;gt;=3 ,  &amp;lt;math&amp;gt;b_0&amp;lt;/math&amp;gt;=1, &amp;lt;math&amp;gt;k_1&amp;lt;/math&amp;gt;=1,  &amp;lt;math&amp;gt;k_2&amp;lt;/math&amp;gt;=5, &amp;lt;math&amp;gt;k_2&amp;lt;/math&amp;gt;=1/5, .En ambos casos se resuelve para los primeros 10 segundos.&lt;br /&gt;
&lt;br /&gt;
==La reacción D es más rápida que la reacción C==&lt;br /&gt;
CASO    &amp;lt;math&amp;gt;k_1=5  &amp;lt;/math&amp;gt;   '''h=0.1''' &lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
&lt;br /&gt;
%datos&lt;br /&gt;
y0=[0;0];&lt;br /&gt;
z0=[0;0];&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;
%matriz de las soluciones&lt;br /&gt;
y=zeros(2,length(t)); %euler&lt;br /&gt;
y(:,1)=y0;&lt;br /&gt;
 &lt;br /&gt;
z=zeros(2,length(t)); %runge-kutta&lt;br /&gt;
z(:,1)=y0;&lt;br /&gt;
 &lt;br /&gt;
for i=1:length(t)-1&lt;br /&gt;
 %euler&lt;br /&gt;
 y(:,i+1)=y(:,i)+h*[1*(3-y(1,i))*(1-y(1,i)); 5*(y(1,i)-y(2,i))];&lt;br /&gt;
 %runge-kutta&lt;br /&gt;
 K1=[1*(3-z(1,i))*(1-z(1,i)); 5*(z(1,i)-z(2,i))];&lt;br /&gt;
 K2=[1*(3-(z(1,i)+h/2*K1(1)))*(1-(z(1,i)+h/2*K1(1))); 5*((y(1,i)+h/2*K1(2))-(y(2,i)+h/2*K1(2)))];&lt;br /&gt;
 K3=[1*(3-(z(1,i)+h/2*K2(1)))*(1-(z(1,i)+h/2*K2(1))); 5*((y(1,i)+h/2*K2(2))-(y(2,i)+h/2*K2(2)))];&lt;br /&gt;
 K4=[1*(3-(z(1,i)+h*K3(1)))*(1-(z(1,i)+h*K3(1))); 5*((y(1,i)+h*K3(2))-(y(2,i)+h*K3(2)))];&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;
% se calcula la concentración de C=y1t)-y2(t)&lt;br /&gt;
Ay=y(1,:)-y(2,:); %euler&lt;br /&gt;
Az=z(1,:)-z(2,:); %runge-kutta&lt;br /&gt;
 &lt;br /&gt;
figure(1)&lt;br /&gt;
hold on&lt;br /&gt;
plot(t,Ay) %concentración de C por euler&lt;br /&gt;
plot(t,y(2,:),'r') %concentración de D por euler&lt;br /&gt;
plot(t,Az,'k') %concentración de C por runge-kutta&lt;br /&gt;
plot(t,z(2,:),'g') %concentración de D por runge-kutta&lt;br /&gt;
legend('concentración de C por euler','concentración de D por euler','concentración de C por runge-kutta','concentración de D por runge-kutta','Location','best')&lt;br /&gt;
hold off&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:graficoa.jpeg|500px|miniaturadeimagen|center|Reacción compleja]]&lt;br /&gt;
&lt;br /&gt;
Se observa que en en los primeros instantes aumentan las concentraciones de &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; aumentan sus concentraciones. Antes de que pase 1 segundo, la concentración &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; alcanza un máximo (de unos 0.3 molar) y va disminuyendo progresivamente hasta alcanzar un valor de 0 molar. La concentración &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; sigue creciendo hasta llegar a 1 molar. Una vez que tanto &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; como &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; alcanzan estos valores, se estabiliza la reacción. &lt;br /&gt;
&lt;br /&gt;
Como hemos impuesto que la reacción &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; es más rápida que &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt;, se observa que &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; empieza creciendo más rápidamente, pero como reacciona más despacio que &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; su concentración disminuye progresivamente, mientras que la de &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; aumenta.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''CASO'''  &amp;lt;math&amp;gt;k_2=5  &amp;lt;/math&amp;gt;   '''h=0.3''' &lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
&lt;br /&gt;
%datos&lt;br /&gt;
y0=[0;0];&lt;br /&gt;
z0=[0;0];&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=10;&lt;br /&gt;
h=0.3;&lt;br /&gt;
 &lt;br /&gt;
%variable independiente t&lt;br /&gt;
t=t0:h:tN;&lt;br /&gt;
 &lt;br /&gt;
%matriz de las soluciones&lt;br /&gt;
y=zeros(2,length(t)); %euler&lt;br /&gt;
y(:,1)=y0;&lt;br /&gt;
 &lt;br /&gt;
z=zeros(2,length(t)); %runge-kutta&lt;br /&gt;
z(:,1)=y0;&lt;br /&gt;
 &lt;br /&gt;
for i=1:length(t)-1&lt;br /&gt;
 %euler&lt;br /&gt;
 y(:,i+1)=y(:,i)+h*[1*(3-y(1,i))*(1-y(1,i)); 5*(y(1,i)-y(2,i))];&lt;br /&gt;
 %runge-kutta&lt;br /&gt;
 K1=[1*(3-z(1,i))*(1-z(1,i)); 5*(z(1,i)-z(2,i))];&lt;br /&gt;
 K2=[1*(3-(z(1,i)+h/2*K1(1)))*(1-(z(1,i)+h/2*K1(1))); 5*((y(1,i)+h/2*K1(2))-(y(2,i)+h/2*K1(2)))];&lt;br /&gt;
 K3=[1*(3-(z(1,i)+h/2*K2(1)))*(1-(z(1,i)+h/2*K2(1))); 5*((y(1,i)+h/2*K2(2))-(y(2,i)+h/2*K2(2)))];&lt;br /&gt;
 K4=[1*(3-(z(1,i)+h*K3(1)))*(1-(z(1,i)+h*K3(1))); 5*((y(1,i)+h*K3(2))-(y(2,i)+h*K3(2)))];&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;
% se calcula la concentración de C=y1t)-y2(t)&lt;br /&gt;
Ay=y(1,:)-y(2,:); %euler&lt;br /&gt;
Az=z(1,:)-z(2,:); %runge-kutta&lt;br /&gt;
 &lt;br /&gt;
figure(1)&lt;br /&gt;
hold on&lt;br /&gt;
plot(t,Ay) %concentración de C por euler&lt;br /&gt;
plot(t,y(2,:),'r') %concentración de D por euler&lt;br /&gt;
plot(t,Az,'k') %concentración de C por runge-kutta&lt;br /&gt;
plot(t,z(2,:),'g') %concentración de D por runge-kutta&lt;br /&gt;
legend('concentración de C por euler','concentración de D por euler','concentración de C por runge-kutta','concentración de D por runge-kutta','Location','best')&lt;br /&gt;
hold off&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:graficob.jpeg|500px|miniaturadeimagen|center|Reacción compleja]]&lt;br /&gt;
&lt;br /&gt;
Repetimos el programa pero para un tamaño de paso mayor, de '''h=0.3''', y observamos que no  es suficientemente preciso, sobre todo al principio, no se puede analizar bien lo que está pasando en la reacción.&lt;br /&gt;
&lt;br /&gt;
==La reacción D es más lenta que la reacción C==&lt;br /&gt;
&lt;br /&gt;
CASO  &amp;lt;math&amp;gt;k_1 &amp;lt;/math&amp;gt;=1,   &amp;lt;math&amp;gt;k_2 &amp;lt;/math&amp;gt;=1/5&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
&lt;br /&gt;
%datos&lt;br /&gt;
y0=[0;0];&lt;br /&gt;
z0=[0;0];&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;
%matriz de las soluciones&lt;br /&gt;
y=zeros(2,length(t)); %euler&lt;br /&gt;
y(:,1)=y0;&lt;br /&gt;
 &lt;br /&gt;
z=zeros(2,length(t)); %runge-kutta&lt;br /&gt;
z(:,1)=y0;&lt;br /&gt;
 &lt;br /&gt;
for i=1:length(t)-1&lt;br /&gt;
 %euler&lt;br /&gt;
 y(:,i+1)=y(:,i)+h*[1*(3-y(1,i))*(1-y(1,i)); 1/5*(y(1,i)-y(2,i))];&lt;br /&gt;
 %runge-kutta&lt;br /&gt;
 K1=[1*(3-z(1,i))*(1-z(1,i)); 1/5*(z(1,i)-z(2,i))];&lt;br /&gt;
 K2=[1*(3-(z(1,i)+h/2*K1(1)))*(1-(z(1,i)+h/2*K1(1))); 1/5*((y(1,i)+h/2*K1(2))-(y(2,i)+h/2*K1(2)))];&lt;br /&gt;
 K3=[1*(3-(z(1,i)+h/2*K2(1)))*(1-(z(1,i)+h/2*K2(1))); 1/5*((y(1,i)+h/2*K2(2))-(y(2,i)+h/2*K2(2)))];&lt;br /&gt;
 K4=[1*(3-(z(1,i)+h*K3(1)))*(1-(z(1,i)+h*K3(1))); 1/5*((y(1,i)+h*K3(2))-(y(2,i)+h*K3(2)))];&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;
% se calcula la concentración de C=y1t)-y2(t)&lt;br /&gt;
Ay=y(1,:)-y(2,:); %euler&lt;br /&gt;
Az=z(1,:)-z(2,:); %runge-kutta&lt;br /&gt;
 &lt;br /&gt;
figure(1)&lt;br /&gt;
hold on&lt;br /&gt;
plot(t,Ay) %concentración de C por euler&lt;br /&gt;
plot(t,y(2,:),'r') %concentración de D por euler&lt;br /&gt;
plot(t,Az,'k') %concentración de C por runge-kutta&lt;br /&gt;
plot(t,z(2,:),'g') %concentración de D por runge-kutta&lt;br /&gt;
legend('concentración de C por euler','concentración de D por euler','concentración de C por runge-kutta','concentración de D por runge-kutta','Location','best')&lt;br /&gt;
hold off&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:graficoc.jpeg|500px|miniaturadeimagen|center|Reacción compleja]]&lt;br /&gt;
&lt;br /&gt;
Si ahora imponemos que la reacción  &amp;lt;math&amp;gt;C &amp;lt;/math&amp;gt; es más rápida que  &amp;lt;math&amp;gt;D &amp;lt;/math&amp;gt;, obtenemos lo siguiente. Se parece a la gráfica que obtuvimos en el programa anterior, pero  más extendida en el tiempo, más lenta.  &amp;lt;math&amp;gt;C &amp;lt;/math&amp;gt; alcanza una concentración máxima de unos 0.8 molar antes de empezar a decrecer a medida que avanza el tiempo y acercándose a un valor de '''0''' molar.  &amp;lt;math&amp;gt;D &amp;lt;/math&amp;gt; crece más lentamente que en la gráfica anterior, pero se aproxima al mismo valor, '''1''' molar.&lt;br /&gt;
Se observa que aunque hagamos la reacción  &amp;lt;math&amp;gt;C &amp;lt;/math&amp;gt; más rápida, tenemos las mismas concentraciones finales, pero tardan más tiempo en obtenerse, ya que la reacción tarda más en estabilizarse.&lt;br /&gt;
&lt;br /&gt;
&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>Joseva</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Archivo:Ejer4euler.jpeg&amp;diff=27793</id>
		<title>Archivo:Ejer4euler.jpeg</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Archivo:Ejer4euler.jpeg&amp;diff=27793"/>
				<updated>2015-03-06T11:40:26Z</updated>
		
		<summary type="html">&lt;p&gt;Joseva: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>Joseva</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Reacciones_complejas_(Grupo_D1)&amp;diff=27792</id>
		<title>Reacciones complejas (Grupo D1)</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Reacciones_complejas_(Grupo_D1)&amp;diff=27792"/>
				<updated>2015-03-06T11:40:12Z</updated>
		
		<summary type="html">&lt;p&gt;Joseva: /* Método del Trapecio y Método de Runge-Kutta */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{ TrabajoED | Reacciones complejas (Grupo D1) | [[:Categoría:Ecuaciones Diferenciales|Ecuaciones Diferenciales]]|[[:Categoría:ED14/15|Curso 2014-15]] | Rincón Crespo, Kevin&lt;br /&gt;
&lt;br /&gt;
Rodríguez Gómez, Javier&lt;br /&gt;
&lt;br /&gt;
Sans Jiménez, Alejandro&lt;br /&gt;
&lt;br /&gt;
Sesto Muñoz, María Victoria&lt;br /&gt;
&lt;br /&gt;
Vallejo Asín, José Manuel &lt;br /&gt;
&lt;br /&gt;
Villarino Redondo, Álvaro }}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=Introducción=&lt;br /&gt;
Se considera una reacción química irreversible en una solución bien mezclada. Supondremos que la reacción ocurre para un volumen y temperatura constantes. Al inicio se encuentran dos reactivos &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;B&amp;lt;/math&amp;gt;, que van formando un producto &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; en lo que se conoce como una reacción bimolecular, es decir, una molécula de &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt; y una de &amp;lt;math&amp;gt;B&amp;lt;/math&amp;gt; producen una de &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt;.: &lt;br /&gt;
                                                                     &amp;lt;math&amp;gt;A + B → C&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Supondremos también que se satisface la ley de acción de masas, que establece que la velocidad de reacción es proporcional al producto de las concentraciones de los reactivos.&lt;br /&gt;
&lt;br /&gt;
=Concentración del reactivo &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; a lo largo del tiempo=&lt;br /&gt;
En primer lugar, suponiendo que la reacción es irreversible, es decir, que &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; no puede volver a formar &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;B&amp;lt;/math&amp;gt;, se puede expresar la situación mediante el siguiente problema de valor inicial, cuando t&amp;gt;0.:&lt;br /&gt;
   &amp;lt;math&amp;gt;&lt;br /&gt;
   \left . &lt;br /&gt;
      \begin{matrix} &lt;br /&gt;
         y'(t)={k_{1}}({a_{0}}-y(t))({b_{0}}-y(t))=0\\&lt;br /&gt;
         y(0)=0&lt;br /&gt;
      \end{matrix}&lt;br /&gt;
   \right \}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Donde &amp;lt;math&amp;gt; {a_{0}}&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;{b_{0}}&amp;lt;/math&amp;gt; representan las concentraciones iniciales de '''A''' y '''B''' respectivamente y &amp;lt;math&amp;gt;{k_{1}}&amp;lt;/math&amp;gt; es la constante de proporcionalidad que indica la ley de acción de masas. &amp;lt;math&amp;gt;y’(t)&amp;lt;/math&amp;gt; representa la velocidad de reacción, es decir, la velocidad con que se forma el producto &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; ; mientras que la solución de la ecuación diferencial, &amp;lt;math&amp;gt;y(t)&amp;lt;/math&amp;gt; , representa la concentración de &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt;, la cantidad de compuesto que se ha formado. Para comprobar que la solución de este problema de Cauchy es única, comenzamos definiendo.:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;math&amp;gt;f(t,y)={k_{1}}({a_{0}}-y(t))({b_{0}}-y(t))=0,   t&amp;gt;0 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Observamos que &amp;lt;math&amp;gt;f(t,y)&amp;lt;/math&amp;gt; es continua en el intervalo &amp;lt;math&amp;gt; I=(0,∞)∩B((0,0),r&amp;gt;0)&amp;lt;/math&amp;gt;, por lo que ya aseguramos la existencia de al menos una solución. Examinando la derivada parcial.:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\frac{∂f}{∂y}=k_1(-a_0-b_0+2y)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Se deduce que al ser un polinomio no va a haber problemas de continuidad para ninguna bola. De esta forma, podemos asegurar que existe una única solución.&lt;br /&gt;
&lt;br /&gt;
==Concentración del reactivo C a lo largo del tiempo en un proceso reversible==&lt;br /&gt;
&lt;br /&gt;
Ahora bien, ¿qué pasaría si la reacción fuese reversible? Con esto lo que queremos indicar es que además de formarse  &amp;lt;math&amp;gt;C &amp;lt;/math&amp;gt;, este también se descompone de nuevo en  &amp;lt;math&amp;gt;A &amp;lt;/math&amp;gt; y  &amp;lt;math&amp;gt;B &amp;lt;/math&amp;gt;. Por lo tanto, nos quedaría una ecuación diferencial con la siguiente forma, cuando &amp;lt;math&amp;gt;t&amp;gt;0 &amp;lt;/math&amp;gt;. :&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; y'(t)={k_{1}}({a_{0}}-y(t))({b_{0}}-y(t))-Cy(t)&amp;lt;/math&amp;gt;  &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Si nos fijamos, la modificación es sencillamente restar  &amp;lt;math&amp;gt;y(t) &amp;lt;/math&amp;gt; multiplicada por una constante, la cual refleja qué porcentaje de  &amp;lt;math&amp;gt;C &amp;lt;/math&amp;gt; se va descomponiendo a medida que se da, simultáneamente, la reacción  &amp;lt;math&amp;gt;A + B → C &amp;lt;/math&amp;gt;. Sin embargo, esta constante no puede tener cualquier valor, ya que en una reacción se cumple la conservación de masa. Por ello, a  &amp;lt;math&amp;gt;C &amp;lt;/math&amp;gt; le asociaremos el siguiente dominio::&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;C∈(0,1)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Obsérvese que  &amp;lt;math&amp;gt;C &amp;lt;/math&amp;gt; tiene que ser mayor que 0 para que sea reversible, pero al mismo tiempo inferior que 1, ya que si no se estaría descomponiendo más compuesto  &amp;lt;math&amp;gt;C &amp;lt;/math&amp;gt; del que realmente se ha formado, en otras palabras, estaría apareciendo masa de la nada.&lt;br /&gt;
&lt;br /&gt;
=Método de Euler=&lt;br /&gt;
&lt;br /&gt;
Una vez llegados a este punto, se procede a ver una interpretación gráfica de la reacción. Para ello, se refleja en la gráfica (en un intervalo de 2 segundos), cómo varían las concentraciones tanto de &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt; (&amp;lt;math&amp;gt;a_0&amp;lt;/math&amp;gt;=3 mol/L) y &amp;lt;math&amp;gt;B&amp;lt;/math&amp;gt; (&amp;lt;math&amp;gt;b_0&amp;lt;/math&amp;gt;=1 mol/L) como de &amp;lt;math&amp;gt; C&amp;lt;/math&amp;gt;, para una &amp;lt;math&amp;gt;k_1&amp;lt;/math&amp;gt;=1 mol/s. Se comienza, por el momento, aplicando el método de Euler. Posteriormente se utilizarán métodos más precisos.&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo= &lt;br /&gt;
% Euler&lt;br /&gt;
clear all&lt;br /&gt;
% datos del problema&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=2;&lt;br /&gt;
y0=0;&lt;br /&gt;
h=0.1;&lt;br /&gt;
k1=1;&lt;br /&gt;
a0=3;&lt;br /&gt;
b0=1;&lt;br /&gt;
% Definimos la variable independiente&lt;br /&gt;
t=t0:h:tN;&lt;br /&gt;
% Guardamos los valores de la solución aproximada en el vector &amp;quot;y1&amp;quot; y&lt;br /&gt;
% establecemos los vectores de concentraciones A y B&lt;br /&gt;
y1=zeros(1,length(t)); &lt;br /&gt;
y1(1)=y0;&lt;br /&gt;
a1=zeros(1,length(t));&lt;br /&gt;
a1(1)=a0;&lt;br /&gt;
b1=zeros(1,length(t));&lt;br /&gt;
b1(1)=b0;&lt;br /&gt;
% A continuación, calculamos las componentes de los vectores y1, a1 y b1&lt;br /&gt;
for i=1:length(t)-1&lt;br /&gt;
    y1(i+1)=y1(i)+h*(k1*(a0-y1(i))*(b0-y1(i)));    %Euler&lt;br /&gt;
    a1(i+1)=a0-y1(i+1); % evolución de la concentración de A&lt;br /&gt;
    b1(i+1)=b0-y1(i+1); % evolución de la concentración de B&lt;br /&gt;
end&lt;br /&gt;
%grafico &lt;br /&gt;
figure(1)&lt;br /&gt;
hold on&lt;br /&gt;
plot(t,y1,'g')&lt;br /&gt;
plot(t,a1,'r')&lt;br /&gt;
plot(t,b1,'b')&lt;br /&gt;
legend('concentración de C','concentración de A','concentración de B','location','best')&lt;br /&gt;
hold off &lt;br /&gt;
%en verde se muestra la concentración de C, en rojo la de A, y en azul la de B&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Archivo:3euler.jpeg|500px|miniaturadeimagen|center|Reacción compleja]]&lt;br /&gt;
&lt;br /&gt;
Aunque con observar los resultados ya podemos decir con casi absoluta seguridad cuáles son los límites de las concentraciones de cada reactivo &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;B&amp;lt;/math&amp;gt; y del producto &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt;, se ha diseñado un programa que, mediante diferencia de valores sucesivos de la variable &amp;lt;math&amp;gt;y(t)&amp;lt;/math&amp;gt;, nos devuelve el valor de la función cuando dicha diferencia es muy pequeña '''(se ha puesto una diferencia de 0.001)''', es decir, cuando tenemos una asíntota al tender &amp;lt;math&amp;gt;t→∞&amp;lt;/math&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
%Estudio de las asíntotas&lt;br /&gt;
t1=t0:h:10;%se aumenta la longitud de t, y se estima que se alcanzarán las asíntotas antes de t=10&lt;br /&gt;
y_=zeros(1,length(t1)); %se define un vector y_ idéntico a y1 pero con t hasta 10&lt;br /&gt;
a_=y_;&lt;br /&gt;
b_=y_;&lt;br /&gt;
y_(1)=y0;&lt;br /&gt;
a_(1)=a0;&lt;br /&gt;
b_(1)=b0;&lt;br /&gt;
for i=1:length(t1)-1&lt;br /&gt;
    y_(i+1)=y_(i)+h*(k1*(a0-y_(i))*(b0-y_(i)));&lt;br /&gt;
    diferencia=y_(i+1)-y_(i);&lt;br /&gt;
    if abs(diferencia)&amp;lt;=0.001&lt;br /&gt;
        limC=y_(i+1)&lt;br /&gt;
        break&lt;br /&gt;
    end&lt;br /&gt;
end&lt;br /&gt;
for i=1:length(t1)-1&lt;br /&gt;
    y_(i+1)=y_(i)+h*(k1*(a0-y_(i))*(b0-y_(i)));    &lt;br /&gt;
    a_(i+1)=a0-y_(i+1);&lt;br /&gt;
    diferencia2=a_(i+1)-a_(i);&lt;br /&gt;
    if abs(diferencia2)&amp;lt;=0.001&lt;br /&gt;
        limA=a_(i+1)&lt;br /&gt;
        break&lt;br /&gt;
    end&lt;br /&gt;
end&lt;br /&gt;
for i=1:length(t1)-1&lt;br /&gt;
    y_(i+1)=y_(i)+h*(k1*(a0-y_(i))*(b0-y_(i)));    &lt;br /&gt;
    b_(i+1)=b0-y_(i+1);&lt;br /&gt;
    diferencia3=b_(i+1)-b_(i);&lt;br /&gt;
    if abs(diferencia3)&amp;lt;=0.001&lt;br /&gt;
        limB=b_(i+1)&lt;br /&gt;
        break&lt;br /&gt;
    end&lt;br /&gt;
end&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
Que nos devuelve unos valores de las concentraciones para el límite de:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\lim A=2,0036≈2 mol/L&amp;lt;/math&amp;gt;:     &lt;br /&gt;
&amp;lt;math&amp;gt;\lim B=0,0036≈0mol/L&amp;lt;/math&amp;gt;:         &lt;br /&gt;
&amp;lt;math&amp;gt;\lim C=0,9964≈1mol/L&amp;lt;/math&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
Lo cual es lógico, ya que &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;B&amp;lt;/math&amp;gt; se combinan en una proporción de 1:1, luego &amp;lt;math&amp;gt;B&amp;lt;/math&amp;gt;, que tiene una concentración inicial de &amp;lt;math&amp;gt;b_0&amp;lt;/math&amp;gt;=1, será el reactivo limitante (el que desaparecerá por completo), mientras que &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt;, con &amp;lt;math&amp;gt;a_0&amp;lt;/math&amp;gt;=3, acabará con una concentración molar final igual a 2, y &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt;, del que no habia nada,alcanza una concentraccion de &amp;lt;math&amp;gt;1mol/L&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
= Método del Trapecio y Método de Runge-Kutta=&lt;br /&gt;
&lt;br /&gt;
A continuación, para obtener con más precisión las representaciones gráficas de las respectivas concentraciones, se opta por utilizar los métodos de los &amp;lt;math&amp;gt;Trapecios&amp;lt;/math&amp;gt; (segundo orden) y de &amp;lt;math&amp;gt;Runge-Kutta&amp;lt;/math&amp;gt; (cuarto orden). Además, se ha obtenido la expresión explícita de la solución de nuestro problema de valor inicial de manera analítica, mediante variables separables y fracciones simples, resultando la función real::&lt;br /&gt;
&amp;lt;math&amp;gt;y_e(t)=\frac{3e^{2t}-3}{3e^{2t}-1}&amp;lt;/math&amp;gt;&lt;br /&gt;
De manera que las concentraciones de A y de B en cada valor de t quedarían como::&lt;br /&gt;
&amp;lt;math&amp;gt;a_e(t)=a_0-y_e(t)&amp;lt;/math&amp;gt;:&lt;br /&gt;
&amp;lt;math&amp;gt;b_e (t)=b_0-y_e (t)&amp;lt;/math&amp;gt;:&lt;br /&gt;
Para los trapecios, al ser un método implícito, es necesario despejar la componente &amp;lt;math&amp;gt;y_{n+1}&amp;lt;/math&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;y_{n+1}=\frac{(1+\frac{h}{2}∙k_1∙(a_0+b_0))-\sqrt{(1+\frac{h}{2}∙k_1∙(a_0+b_0))^2 -2∙h∙k_1(y_n+\frac{h}{2}∙k_1∙(a_0-y_n )∙(b_0-y_n)+\frac{h}{2}∙k_1∙a_0∙b_0) }}{k_1∙h}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Cabe destacar que este programa parte de los datos ya establecidos en el programa de Euler para '''t0, tN, y0, a0, b0, k1 y h''':&lt;br /&gt;
{{matlab|codigo= &lt;br /&gt;
%Función real&lt;br /&gt;
ye=(3*exp(2.*t)-3)./(3*exp(2.*t)-1);&lt;br /&gt;
ae=a0-ye;&lt;br /&gt;
be=b0-ye;&lt;br /&gt;
&lt;br /&gt;
%Trapecios&lt;br /&gt;
y2=zeros(1,length(t)); &lt;br /&gt;
a2=y2;&lt;br /&gt;
b2=y2;&lt;br /&gt;
y2(1)=y0;&lt;br /&gt;
a2(1)=a0;&lt;br /&gt;
b2(1)=b0;&lt;br /&gt;
for i= 1:length(t)-1&lt;br /&gt;
    y2(i+1)=((1+0.5*h*k1*(a0+b0))-sqrt((1+0.5*h*k1*(a0+b0))^2-2*h*k1*(y2(i)+0.5*h*k1*(a0-y2(i))*(b0-y2(i))+0.5*h*k1*a0*b0)))/(k1*h);&lt;br /&gt;
a2(i+1)=a0-y2(i+1);&lt;br /&gt;
b2(i+1)=b0-y2(i+1);&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
%Runge-Kutta&lt;br /&gt;
y3=zeros(1,length(t)); &lt;br /&gt;
a3=y3;&lt;br /&gt;
b3=y3;&lt;br /&gt;
y3(1)=y0;&lt;br /&gt;
a3(1)=a0;&lt;br /&gt;
b3(1)=b0;&lt;br /&gt;
fori=1:length(t)-1 &lt;br /&gt;
    r1=k1*(a0-y3(i))*(b0-y3(i));&lt;br /&gt;
    r2=k1*(a0-y3(i)-0.5*r1*h)*(b0-y3(i)-0.5*r1*h);&lt;br /&gt;
    r3=k1*(a0-y3(i)-0.5*r2*h)*(b0-y3(i)-0.5*r2*h);&lt;br /&gt;
    r4=k1*(a0-y3(i)-r3*h)*(b0-y3(i)-r3*h);&lt;br /&gt;
y3(i+1)=y3(i)+h/6*(r1+2*r2+2*r3+r4);&lt;br /&gt;
a3(i+1)=a0-y3(i+1);&lt;br /&gt;
b3(i+1)=b0-y3(i+1);&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
%se pintan las cuatro gráficas, con la función real en verde y los puntos con asteriscos, &lt;br /&gt;
%Euler en rojo, los Trapecios en azul, y Runge-Kutta en negro&lt;br /&gt;
figure(2)&lt;br /&gt;
hold on&lt;br /&gt;
&lt;br /&gt;
plot(t,ye,'g*-')&lt;br /&gt;
plot(t,y2)&lt;br /&gt;
plot(t,y3,'k')&lt;br /&gt;
plot(t,y1,'r')&lt;br /&gt;
legend('Función real','Trapecios', 'Runge-Kutta', 'Euler','Location','best');&lt;br /&gt;
plot(t,ae,'g*')&lt;br /&gt;
plot(t,a2)&lt;br /&gt;
plot(t,a3,'k')&lt;br /&gt;
plot(t,a1,'r')&lt;br /&gt;
plot(t,be,'g*')&lt;br /&gt;
plot(t,b2)&lt;br /&gt;
plot(t,b3,'k')&lt;br /&gt;
plot(t,b1,'r')&lt;br /&gt;
hold off&lt;br /&gt;
&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
Los resultados del programa se muestran en las dos siguientes figuras. Como podemos observar, el método de ''Euler'', en &amp;lt;span style=&amp;quot;color:#FF0000;&amp;quot;&amp;gt;Rojo&amp;lt;/span&amp;gt;, rápidamente se separa de los demás y de la función real, lo que es debido a que es un método de orden 1 y su precisión es bastante reducida. Para analizar el comportamiento de los otros dos métodos, se ha hecho un zoom en una zona aleatoria de la gráfica, y se muestra en la figura 2. Lo lógico, debido a que es de orden 2, es que el método de los trapecios sea el siguiente que se aleje de la solución real, y esto es precisamente lo que se evidencia en la gráfica, pues como vemos, la línea &amp;lt;span style=&amp;quot;color:#0000FF;&amp;quot;&amp;gt;Azul&amp;lt;/span&amp;gt; se separa de la negra y de la &amp;lt;span style=&amp;quot;color:#00FF00;&amp;quot;&amp;gt;Verde&amp;lt;/span&amp;gt;. Es por tanto que el método de ''Runge-Kutta'' es el más preciso de todos, haciendo honor a su cuarto orden, y como podemos observar, las líneas &amp;lt;span style=&amp;quot;color:#00FF00;&amp;quot;&amp;gt;Verde&amp;lt;/span&amp;gt; y negra son casi indistinguibles. &lt;br /&gt;
&lt;br /&gt;
Es importante también atender a la escala que se muestra en la figura 2, que nos da una idea de los rangos en el eje de ordenadas de los que estamos hablando. Cabe decir que estamos trabajando con un paso de h=0.1, lo que significa que con un paso menor, estas diferencias serian mucho menos perceptibles.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Archivo:ejer4euler.jpeg|500px|miniaturadeimagen|center|Reacción compleja]]&lt;br /&gt;
&lt;br /&gt;
[[Archivo:4comparacion.jpeg|500px|miniaturadeimagen|center|Gráfico 2]]&lt;br /&gt;
&lt;br /&gt;
=Reacción consecutiva=&lt;br /&gt;
&lt;br /&gt;
Consideremos ahora que se produce una reacción consecutiva de la forma.: &lt;br /&gt;
&lt;br /&gt;
                                                                   &amp;lt;math&amp;gt;A + B → k_1C → k_2D&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
De tal modo que los reactivos &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;B&amp;lt;/math&amp;gt; se combinan en la proporción 1:1 para formar compuesto &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt;, el cual, a su vez, se va descomponiendo para formar compuesto &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt;. Al igual que se ha hecho antes al analizar las otras reacciones, se considerará que se cumple la ley de acción de masas. Es decir, la velocidad con la que se forma compuesto &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; es proporcional a las concentraciones existentes de &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt; y de &amp;lt;math&amp;gt;B&amp;lt;/math&amp;gt; y del mismo modo la de formación de la sustancia &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; lo es a la concentración de &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; que se ha ido formando.&lt;br /&gt;
&lt;br /&gt;
Esta reacción consecutiva está representada por el siguiente problema de valor inicial::&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;&lt;br /&gt;
   \left . &lt;br /&gt;
      \begin{matrix} &lt;br /&gt;
         y'_1(t)={k_{1}}({a_{0}}-y_1(t))({b_{0}}-y_1(t))\\&lt;br /&gt;
         y'_2(t)={k_{2}}(y_1(t)-y_2(t))\\&lt;br /&gt;
y_1(0)=0\\y_2(0)=0&lt;br /&gt;
      \end{matrix}&lt;br /&gt;
   \right \}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
Donde &amp;lt;math&amp;gt;a_0&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;b_0&amp;lt;/math&amp;gt; representan las concentraciones iniciales de &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;B&amp;lt;/math&amp;gt; respectivamente, &amp;lt;math&amp;gt;k_1&amp;lt;/math&amp;gt; es la constante de proporcionalidad que rige la primera reacción y &amp;lt;math&amp;gt;k_2&amp;lt;/math&amp;gt; la que rige la segunda reacción o reacción consecutiva. &amp;lt;math&amp;gt;y_1’(t)&amp;lt;/math&amp;gt; e  &amp;lt;math&amp;gt;y_2’(t)&amp;lt;/math&amp;gt; representan las velocidades de las reacciones, es decir, las velocidades con que se forman los productos &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt;. &amp;lt;math&amp;gt;y_2(t)&amp;lt;/math&amp;gt; representa la concentración del producto &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; pero es importante apreciar que en este caso &amp;lt;math&amp;gt;y_1(t)&amp;lt;/math&amp;gt; no nos da el valor de la concentración de &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; directamente, sino que ésta será &amp;lt;math&amp;gt;y_1(t)&amp;lt;/math&amp;gt;- &amp;lt;math&amp;gt;y_2(t)&amp;lt;/math&amp;gt;, la cantidad que se forma en la primera reacción menos la que se emplea para formar el producto &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; en la segunda.&lt;br /&gt;
&lt;br /&gt;
Este problema se va a resolver para dos casos diferentes. Uno en el cual se considera que la segunda reacción es más rápida que la primera, lo que supone tomar un valor de la constante &amp;lt;math&amp;gt;k_2&amp;lt;/math&amp;gt;  mayor que &amp;lt;math&amp;gt;k_1&amp;lt;/math&amp;gt;. Y otro en el cual se considera que es más lenta, lo que implica que &amp;lt;math&amp;gt;k_2&amp;lt;/math&amp;gt; es menor que &amp;lt;math&amp;gt;k_1&amp;lt;/math&amp;gt;. Concretamente vamos a tomar los siguientes valores para resolver el problema numéricamente; &amp;lt;math&amp;gt;a_0&amp;lt;/math&amp;gt;=3 ,  &amp;lt;math&amp;gt;b_0&amp;lt;/math&amp;gt;=1, &amp;lt;math&amp;gt;k_1&amp;lt;/math&amp;gt;=1,  &amp;lt;math&amp;gt;k_2&amp;lt;/math&amp;gt;=5, &amp;lt;math&amp;gt;k_2&amp;lt;/math&amp;gt;=1/5, .En ambos casos se resuelve para los primeros 10 segundos.&lt;br /&gt;
&lt;br /&gt;
==La reacción D es más rápida que la reacción C==&lt;br /&gt;
CASO    &amp;lt;math&amp;gt;k_1=5  &amp;lt;/math&amp;gt;   '''h=0.1''' &lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
&lt;br /&gt;
%datos&lt;br /&gt;
y0=[0;0];&lt;br /&gt;
z0=[0;0];&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;
%matriz de las soluciones&lt;br /&gt;
y=zeros(2,length(t)); %euler&lt;br /&gt;
y(:,1)=y0;&lt;br /&gt;
 &lt;br /&gt;
z=zeros(2,length(t)); %runge-kutta&lt;br /&gt;
z(:,1)=y0;&lt;br /&gt;
 &lt;br /&gt;
for i=1:length(t)-1&lt;br /&gt;
 %euler&lt;br /&gt;
 y(:,i+1)=y(:,i)+h*[1*(3-y(1,i))*(1-y(1,i)); 5*(y(1,i)-y(2,i))];&lt;br /&gt;
 %runge-kutta&lt;br /&gt;
 K1=[1*(3-z(1,i))*(1-z(1,i)); 5*(z(1,i)-z(2,i))];&lt;br /&gt;
 K2=[1*(3-(z(1,i)+h/2*K1(1)))*(1-(z(1,i)+h/2*K1(1))); 5*((y(1,i)+h/2*K1(2))-(y(2,i)+h/2*K1(2)))];&lt;br /&gt;
 K3=[1*(3-(z(1,i)+h/2*K2(1)))*(1-(z(1,i)+h/2*K2(1))); 5*((y(1,i)+h/2*K2(2))-(y(2,i)+h/2*K2(2)))];&lt;br /&gt;
 K4=[1*(3-(z(1,i)+h*K3(1)))*(1-(z(1,i)+h*K3(1))); 5*((y(1,i)+h*K3(2))-(y(2,i)+h*K3(2)))];&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;
% se calcula la concentración de C=y1t)-y2(t)&lt;br /&gt;
Ay=y(1,:)-y(2,:); %euler&lt;br /&gt;
Az=z(1,:)-z(2,:); %runge-kutta&lt;br /&gt;
 &lt;br /&gt;
figure(1)&lt;br /&gt;
hold on&lt;br /&gt;
plot(t,Ay) %concentración de C por euler&lt;br /&gt;
plot(t,y(2,:),'r') %concentración de D por euler&lt;br /&gt;
plot(t,Az,'k') %concentración de C por runge-kutta&lt;br /&gt;
plot(t,z(2,:),'g') %concentración de D por runge-kutta&lt;br /&gt;
legend('concentración de C por euler','concentración de D por euler','concentración de C por runge-kutta','concentración de D por runge-kutta','Location','best')&lt;br /&gt;
hold off&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:graficoa.jpeg|500px|miniaturadeimagen|center|Reacción compleja]]&lt;br /&gt;
&lt;br /&gt;
Se observa que en en los primeros instantes aumentan las concentraciones de &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; aumentan sus concentraciones. Antes de que pase 1 segundo, la concentración &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; alcanza un máximo (de unos 0.3 molar) y va disminuyendo progresivamente hasta alcanzar un valor de 0 molar. La concentración &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; sigue creciendo hasta llegar a 1 molar. Una vez que tanto &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; como &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; alcanzan estos valores, se estabiliza la reacción. &lt;br /&gt;
&lt;br /&gt;
Como hemos impuesto que la reacción &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; es más rápida que &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt;, se observa que &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; empieza creciendo más rápidamente, pero como reacciona más despacio que &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; su concentración disminuye progresivamente, mientras que la de &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; aumenta.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''CASO'''  &amp;lt;math&amp;gt;k_2=5  &amp;lt;/math&amp;gt;   '''h=0.3''' &lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
&lt;br /&gt;
%datos&lt;br /&gt;
y0=[0;0];&lt;br /&gt;
z0=[0;0];&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=10;&lt;br /&gt;
h=0.3;&lt;br /&gt;
 &lt;br /&gt;
%variable independiente t&lt;br /&gt;
t=t0:h:tN;&lt;br /&gt;
 &lt;br /&gt;
%matriz de las soluciones&lt;br /&gt;
y=zeros(2,length(t)); %euler&lt;br /&gt;
y(:,1)=y0;&lt;br /&gt;
 &lt;br /&gt;
z=zeros(2,length(t)); %runge-kutta&lt;br /&gt;
z(:,1)=y0;&lt;br /&gt;
 &lt;br /&gt;
for i=1:length(t)-1&lt;br /&gt;
 %euler&lt;br /&gt;
 y(:,i+1)=y(:,i)+h*[1*(3-y(1,i))*(1-y(1,i)); 5*(y(1,i)-y(2,i))];&lt;br /&gt;
 %runge-kutta&lt;br /&gt;
 K1=[1*(3-z(1,i))*(1-z(1,i)); 5*(z(1,i)-z(2,i))];&lt;br /&gt;
 K2=[1*(3-(z(1,i)+h/2*K1(1)))*(1-(z(1,i)+h/2*K1(1))); 5*((y(1,i)+h/2*K1(2))-(y(2,i)+h/2*K1(2)))];&lt;br /&gt;
 K3=[1*(3-(z(1,i)+h/2*K2(1)))*(1-(z(1,i)+h/2*K2(1))); 5*((y(1,i)+h/2*K2(2))-(y(2,i)+h/2*K2(2)))];&lt;br /&gt;
 K4=[1*(3-(z(1,i)+h*K3(1)))*(1-(z(1,i)+h*K3(1))); 5*((y(1,i)+h*K3(2))-(y(2,i)+h*K3(2)))];&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;
% se calcula la concentración de C=y1t)-y2(t)&lt;br /&gt;
Ay=y(1,:)-y(2,:); %euler&lt;br /&gt;
Az=z(1,:)-z(2,:); %runge-kutta&lt;br /&gt;
 &lt;br /&gt;
figure(1)&lt;br /&gt;
hold on&lt;br /&gt;
plot(t,Ay) %concentración de C por euler&lt;br /&gt;
plot(t,y(2,:),'r') %concentración de D por euler&lt;br /&gt;
plot(t,Az,'k') %concentración de C por runge-kutta&lt;br /&gt;
plot(t,z(2,:),'g') %concentración de D por runge-kutta&lt;br /&gt;
legend('concentración de C por euler','concentración de D por euler','concentración de C por runge-kutta','concentración de D por runge-kutta','Location','best')&lt;br /&gt;
hold off&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:graficob.jpeg|500px|miniaturadeimagen|center|Reacción compleja]]&lt;br /&gt;
&lt;br /&gt;
Repetimos el programa pero para un tamaño de paso mayor, de '''h=0.3''', y observamos que no  es suficientemente preciso, sobre todo al principio, no se puede analizar bien lo que está pasando en la reacción.&lt;br /&gt;
&lt;br /&gt;
==La reacción D es más lenta que la reacción C==&lt;br /&gt;
&lt;br /&gt;
CASO  &amp;lt;math&amp;gt;k_1 &amp;lt;/math&amp;gt;=1,   &amp;lt;math&amp;gt;k_2 &amp;lt;/math&amp;gt;=1/5&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
&lt;br /&gt;
%datos&lt;br /&gt;
y0=[0;0];&lt;br /&gt;
z0=[0;0];&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;
%matriz de las soluciones&lt;br /&gt;
y=zeros(2,length(t)); %euler&lt;br /&gt;
y(:,1)=y0;&lt;br /&gt;
 &lt;br /&gt;
z=zeros(2,length(t)); %runge-kutta&lt;br /&gt;
z(:,1)=y0;&lt;br /&gt;
 &lt;br /&gt;
for i=1:length(t)-1&lt;br /&gt;
 %euler&lt;br /&gt;
 y(:,i+1)=y(:,i)+h*[1*(3-y(1,i))*(1-y(1,i)); 1/5*(y(1,i)-y(2,i))];&lt;br /&gt;
 %runge-kutta&lt;br /&gt;
 K1=[1*(3-z(1,i))*(1-z(1,i)); 1/5*(z(1,i)-z(2,i))];&lt;br /&gt;
 K2=[1*(3-(z(1,i)+h/2*K1(1)))*(1-(z(1,i)+h/2*K1(1))); 1/5*((y(1,i)+h/2*K1(2))-(y(2,i)+h/2*K1(2)))];&lt;br /&gt;
 K3=[1*(3-(z(1,i)+h/2*K2(1)))*(1-(z(1,i)+h/2*K2(1))); 1/5*((y(1,i)+h/2*K2(2))-(y(2,i)+h/2*K2(2)))];&lt;br /&gt;
 K4=[1*(3-(z(1,i)+h*K3(1)))*(1-(z(1,i)+h*K3(1))); 1/5*((y(1,i)+h*K3(2))-(y(2,i)+h*K3(2)))];&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;
% se calcula la concentración de C=y1t)-y2(t)&lt;br /&gt;
Ay=y(1,:)-y(2,:); %euler&lt;br /&gt;
Az=z(1,:)-z(2,:); %runge-kutta&lt;br /&gt;
 &lt;br /&gt;
figure(1)&lt;br /&gt;
hold on&lt;br /&gt;
plot(t,Ay) %concentración de C por euler&lt;br /&gt;
plot(t,y(2,:),'r') %concentración de D por euler&lt;br /&gt;
plot(t,Az,'k') %concentración de C por runge-kutta&lt;br /&gt;
plot(t,z(2,:),'g') %concentración de D por runge-kutta&lt;br /&gt;
legend('concentración de C por euler','concentración de D por euler','concentración de C por runge-kutta','concentración de D por runge-kutta','Location','best')&lt;br /&gt;
hold off&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:graficoc.jpeg|500px|miniaturadeimagen|center|Reacción compleja]]&lt;br /&gt;
&lt;br /&gt;
Si ahora imponemos que la reacción  &amp;lt;math&amp;gt;C &amp;lt;/math&amp;gt; es más rápida que  &amp;lt;math&amp;gt;D &amp;lt;/math&amp;gt;, obtenemos lo siguiente. Se parece a la gráfica que obtuvimos en el programa anterior, pero  más extendida en el tiempo, más lenta.  &amp;lt;math&amp;gt;C &amp;lt;/math&amp;gt; alcanza una concentración máxima de unos 0.8 molar antes de empezar a decrecer a medida que avanza el tiempo y acercándose a un valor de '''0''' molar.  &amp;lt;math&amp;gt;D &amp;lt;/math&amp;gt; crece más lentamente que en la gráfica anterior, pero se aproxima al mismo valor, '''1''' molar.&lt;br /&gt;
Se observa que aunque hagamos la reacción  &amp;lt;math&amp;gt;C &amp;lt;/math&amp;gt; más rápida, tenemos las mismas concentraciones finales, pero tardan más tiempo en obtenerse, ya que la reacción tarda más en estabilizarse.&lt;br /&gt;
&lt;br /&gt;
&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>Joseva</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Reacciones_complejas_(Grupo_D1)&amp;diff=27782</id>
		<title>Reacciones complejas (Grupo D1)</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Reacciones_complejas_(Grupo_D1)&amp;diff=27782"/>
				<updated>2015-03-06T11:38:01Z</updated>
		
		<summary type="html">&lt;p&gt;Joseva: /* Método del Trapecio y Método de Runge-Kutta */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{ TrabajoED | Reacciones complejas (Grupo D1) | [[:Categoría:Ecuaciones Diferenciales|Ecuaciones Diferenciales]]|[[:Categoría:ED14/15|Curso 2014-15]] | Rincón Crespo, Kevin&lt;br /&gt;
&lt;br /&gt;
Rodríguez Gómez, Javier&lt;br /&gt;
&lt;br /&gt;
Sans Jiménez, Alejandro&lt;br /&gt;
&lt;br /&gt;
Sesto Muñoz, María Victoria&lt;br /&gt;
&lt;br /&gt;
Vallejo Asín, José Manuel &lt;br /&gt;
&lt;br /&gt;
Villarino Redondo, Álvaro }}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=Introducción=&lt;br /&gt;
Se considera una reacción química irreversible en una solución bien mezclada. Supondremos que la reacción ocurre para un volumen y temperatura constantes. Al inicio se encuentran dos reactivos &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;B&amp;lt;/math&amp;gt;, que van formando un producto &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; en lo que se conoce como una reacción bimolecular, es decir, una molécula de &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt; y una de &amp;lt;math&amp;gt;B&amp;lt;/math&amp;gt; producen una de &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt;.: &lt;br /&gt;
                                                                     &amp;lt;math&amp;gt;A + B → C&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Supondremos también que se satisface la ley de acción de masas, que establece que la velocidad de reacción es proporcional al producto de las concentraciones de los reactivos.&lt;br /&gt;
&lt;br /&gt;
=Concentración del reactivo &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; a lo largo del tiempo=&lt;br /&gt;
En primer lugar, suponiendo que la reacción es irreversible, es decir, que &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; no puede volver a formar &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;B&amp;lt;/math&amp;gt;, se puede expresar la situación mediante el siguiente problema de valor inicial, cuando t&amp;gt;0.:&lt;br /&gt;
   &amp;lt;math&amp;gt;&lt;br /&gt;
   \left . &lt;br /&gt;
      \begin{matrix} &lt;br /&gt;
         y'(t)={k_{1}}({a_{0}}-y(t))({b_{0}}-y(t))=0\\&lt;br /&gt;
         y(0)=0&lt;br /&gt;
      \end{matrix}&lt;br /&gt;
   \right \}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Donde &amp;lt;math&amp;gt; {a_{0}}&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;{b_{0}}&amp;lt;/math&amp;gt; representan las concentraciones iniciales de '''A''' y '''B''' respectivamente y &amp;lt;math&amp;gt;{k_{1}}&amp;lt;/math&amp;gt; es la constante de proporcionalidad que indica la ley de acción de masas. &amp;lt;math&amp;gt;y’(t)&amp;lt;/math&amp;gt; representa la velocidad de reacción, es decir, la velocidad con que se forma el producto &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; ; mientras que la solución de la ecuación diferencial, &amp;lt;math&amp;gt;y(t)&amp;lt;/math&amp;gt; , representa la concentración de &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt;, la cantidad de compuesto que se ha formado. Para comprobar que la solución de este problema de Cauchy es única, comenzamos definiendo.:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;math&amp;gt;f(t,y)={k_{1}}({a_{0}}-y(t))({b_{0}}-y(t))=0,   t&amp;gt;0 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Observamos que &amp;lt;math&amp;gt;f(t,y)&amp;lt;/math&amp;gt; es continua en el intervalo &amp;lt;math&amp;gt; I=(0,∞)∩B((0,0),r&amp;gt;0)&amp;lt;/math&amp;gt;, por lo que ya aseguramos la existencia de al menos una solución. Examinando la derivada parcial.:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\frac{∂f}{∂y}=k_1(-a_0-b_0+2y)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Se deduce que al ser un polinomio no va a haber problemas de continuidad para ninguna bola. De esta forma, podemos asegurar que existe una única solución.&lt;br /&gt;
&lt;br /&gt;
==Concentración del reactivo C a lo largo del tiempo en un proceso reversible==&lt;br /&gt;
&lt;br /&gt;
Ahora bien, ¿qué pasaría si la reacción fuese reversible? Con esto lo que queremos indicar es que además de formarse  &amp;lt;math&amp;gt;C &amp;lt;/math&amp;gt;, este también se descompone de nuevo en  &amp;lt;math&amp;gt;A &amp;lt;/math&amp;gt; y  &amp;lt;math&amp;gt;B &amp;lt;/math&amp;gt;. Por lo tanto, nos quedaría una ecuación diferencial con la siguiente forma, cuando &amp;lt;math&amp;gt;t&amp;gt;0 &amp;lt;/math&amp;gt;. :&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; y'(t)={k_{1}}({a_{0}}-y(t))({b_{0}}-y(t))-Cy(t)&amp;lt;/math&amp;gt;  &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Si nos fijamos, la modificación es sencillamente restar  &amp;lt;math&amp;gt;y(t) &amp;lt;/math&amp;gt; multiplicada por una constante, la cual refleja qué porcentaje de  &amp;lt;math&amp;gt;C &amp;lt;/math&amp;gt; se va descomponiendo a medida que se da, simultáneamente, la reacción  &amp;lt;math&amp;gt;A + B → C &amp;lt;/math&amp;gt;. Sin embargo, esta constante no puede tener cualquier valor, ya que en una reacción se cumple la conservación de masa. Por ello, a  &amp;lt;math&amp;gt;C &amp;lt;/math&amp;gt; le asociaremos el siguiente dominio::&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;C∈(0,1)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Obsérvese que  &amp;lt;math&amp;gt;C &amp;lt;/math&amp;gt; tiene que ser mayor que 0 para que sea reversible, pero al mismo tiempo inferior que 1, ya que si no se estaría descomponiendo más compuesto  &amp;lt;math&amp;gt;C &amp;lt;/math&amp;gt; del que realmente se ha formado, en otras palabras, estaría apareciendo masa de la nada.&lt;br /&gt;
&lt;br /&gt;
=Método de Euler=&lt;br /&gt;
&lt;br /&gt;
Una vez llegados a este punto, se procede a ver una interpretación gráfica de la reacción. Para ello, se refleja en la gráfica (en un intervalo de 2 segundos), cómo varían las concentraciones tanto de &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt; (&amp;lt;math&amp;gt;a_0&amp;lt;/math&amp;gt;=3 mol/L) y &amp;lt;math&amp;gt;B&amp;lt;/math&amp;gt; (&amp;lt;math&amp;gt;b_0&amp;lt;/math&amp;gt;=1 mol/L) como de &amp;lt;math&amp;gt; C&amp;lt;/math&amp;gt;, para una &amp;lt;math&amp;gt;k_1&amp;lt;/math&amp;gt;=1 mol/s. Se comienza, por el momento, aplicando el método de Euler. Posteriormente se utilizarán métodos más precisos.&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo= &lt;br /&gt;
% Euler&lt;br /&gt;
clear all&lt;br /&gt;
% datos del problema&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=2;&lt;br /&gt;
y0=0;&lt;br /&gt;
h=0.1;&lt;br /&gt;
k1=1;&lt;br /&gt;
a0=3;&lt;br /&gt;
b0=1;&lt;br /&gt;
% Definimos la variable independiente&lt;br /&gt;
t=t0:h:tN;&lt;br /&gt;
% Guardamos los valores de la solución aproximada en el vector &amp;quot;y1&amp;quot; y&lt;br /&gt;
% establecemos los vectores de concentraciones A y B&lt;br /&gt;
y1=zeros(1,length(t)); &lt;br /&gt;
y1(1)=y0;&lt;br /&gt;
a1=zeros(1,length(t));&lt;br /&gt;
a1(1)=a0;&lt;br /&gt;
b1=zeros(1,length(t));&lt;br /&gt;
b1(1)=b0;&lt;br /&gt;
% A continuación, calculamos las componentes de los vectores y1, a1 y b1&lt;br /&gt;
for i=1:length(t)-1&lt;br /&gt;
    y1(i+1)=y1(i)+h*(k1*(a0-y1(i))*(b0-y1(i)));    %Euler&lt;br /&gt;
    a1(i+1)=a0-y1(i+1); % evolución de la concentración de A&lt;br /&gt;
    b1(i+1)=b0-y1(i+1); % evolución de la concentración de B&lt;br /&gt;
end&lt;br /&gt;
%grafico &lt;br /&gt;
figure(1)&lt;br /&gt;
hold on&lt;br /&gt;
plot(t,y1,'g')&lt;br /&gt;
plot(t,a1,'r')&lt;br /&gt;
plot(t,b1,'b')&lt;br /&gt;
legend('concentración de C','concentración de A','concentración de B','location','best')&lt;br /&gt;
hold off &lt;br /&gt;
%en verde se muestra la concentración de C, en rojo la de A, y en azul la de B&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Archivo:3euler.jpeg|500px|miniaturadeimagen|center|Reacción compleja]]&lt;br /&gt;
&lt;br /&gt;
Aunque con observar los resultados ya podemos decir con casi absoluta seguridad cuáles son los límites de las concentraciones de cada reactivo &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;B&amp;lt;/math&amp;gt; y del producto &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt;, se ha diseñado un programa que, mediante diferencia de valores sucesivos de la variable &amp;lt;math&amp;gt;y(t)&amp;lt;/math&amp;gt;, nos devuelve el valor de la función cuando dicha diferencia es muy pequeña '''(se ha puesto una diferencia de 0.001)''', es decir, cuando tenemos una asíntota al tender &amp;lt;math&amp;gt;t→∞&amp;lt;/math&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
%Estudio de las asíntotas&lt;br /&gt;
t1=t0:h:10;%se aumenta la longitud de t, y se estima que se alcanzarán las asíntotas antes de t=10&lt;br /&gt;
y_=zeros(1,length(t1)); %se define un vector y_ idéntico a y1 pero con t hasta 10&lt;br /&gt;
a_=y_;&lt;br /&gt;
b_=y_;&lt;br /&gt;
y_(1)=y0;&lt;br /&gt;
a_(1)=a0;&lt;br /&gt;
b_(1)=b0;&lt;br /&gt;
for i=1:length(t1)-1&lt;br /&gt;
    y_(i+1)=y_(i)+h*(k1*(a0-y_(i))*(b0-y_(i)));&lt;br /&gt;
    diferencia=y_(i+1)-y_(i);&lt;br /&gt;
    if abs(diferencia)&amp;lt;=0.001&lt;br /&gt;
        limC=y_(i+1)&lt;br /&gt;
        break&lt;br /&gt;
    end&lt;br /&gt;
end&lt;br /&gt;
for i=1:length(t1)-1&lt;br /&gt;
    y_(i+1)=y_(i)+h*(k1*(a0-y_(i))*(b0-y_(i)));    &lt;br /&gt;
    a_(i+1)=a0-y_(i+1);&lt;br /&gt;
    diferencia2=a_(i+1)-a_(i);&lt;br /&gt;
    if abs(diferencia2)&amp;lt;=0.001&lt;br /&gt;
        limA=a_(i+1)&lt;br /&gt;
        break&lt;br /&gt;
    end&lt;br /&gt;
end&lt;br /&gt;
for i=1:length(t1)-1&lt;br /&gt;
    y_(i+1)=y_(i)+h*(k1*(a0-y_(i))*(b0-y_(i)));    &lt;br /&gt;
    b_(i+1)=b0-y_(i+1);&lt;br /&gt;
    diferencia3=b_(i+1)-b_(i);&lt;br /&gt;
    if abs(diferencia3)&amp;lt;=0.001&lt;br /&gt;
        limB=b_(i+1)&lt;br /&gt;
        break&lt;br /&gt;
    end&lt;br /&gt;
end&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
Que nos devuelve unos valores de las concentraciones para el límite de:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\lim A=2,0036≈2 mol/L&amp;lt;/math&amp;gt;:     &lt;br /&gt;
&amp;lt;math&amp;gt;\lim B=0,0036≈0mol/L&amp;lt;/math&amp;gt;:         &lt;br /&gt;
&amp;lt;math&amp;gt;\lim C=0,9964≈1mol/L&amp;lt;/math&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
Lo cual es lógico, ya que &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;B&amp;lt;/math&amp;gt; se combinan en una proporción de 1:1, luego &amp;lt;math&amp;gt;B&amp;lt;/math&amp;gt;, que tiene una concentración inicial de &amp;lt;math&amp;gt;b_0&amp;lt;/math&amp;gt;=1, será el reactivo limitante (el que desaparecerá por completo), mientras que &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt;, con &amp;lt;math&amp;gt;a_0&amp;lt;/math&amp;gt;=3, acabará con una concentración molar final igual a 2, y &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt;, del que no habia nada,alcanza una concentraccion de &amp;lt;math&amp;gt;1mol/L&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
= Método del Trapecio y Método de Runge-Kutta=&lt;br /&gt;
&lt;br /&gt;
A continuación, para obtener con más precisión las representaciones gráficas de las respectivas concentraciones, se opta por utilizar los métodos de los &amp;lt;math&amp;gt;Trapecios&amp;lt;/math&amp;gt; (segundo orden) y de &amp;lt;math&amp;gt;Runge-Kutta&amp;lt;/math&amp;gt; (cuarto orden). Además, se ha obtenido la expresión explícita de la solución de nuestro problema de valor inicial de manera analítica, mediante variables separables y fracciones simples, resultando la función real::&lt;br /&gt;
&amp;lt;math&amp;gt;y_e(t)=\frac{3e^{2t}-3}{3e^{2t}-1}&amp;lt;/math&amp;gt;&lt;br /&gt;
De manera que las concentraciones de A y de B en cada valor de t quedarían como::&lt;br /&gt;
&amp;lt;math&amp;gt;a_e(t)=a_0-y_e(t)&amp;lt;/math&amp;gt;:&lt;br /&gt;
&amp;lt;math&amp;gt;b_e (t)=b_0-y_e (t)&amp;lt;/math&amp;gt;:&lt;br /&gt;
Para los trapecios, al ser un método implícito, es necesario despejar la componente &amp;lt;math&amp;gt;y_{n+1}&amp;lt;/math&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;y_{n+1}=\frac{(1+\frac{h}{2}∙k_1∙(a_0+b_0))-\sqrt{(1+\frac{h}{2}∙k_1∙(a_0+b_0))^2 -2∙h∙k_1(y_n+\frac{h}{2}∙k_1∙(a_0-y_n )∙(b_0-y_n)+\frac{h}{2}∙k_1∙a_0∙b_0) }}{k_1∙h}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Cabe destacar que este programa parte de los datos ya establecidos en el programa de Euler para '''t0, tN, y0, a0, b0, k1 y h''':&lt;br /&gt;
{{matlab|codigo= &lt;br /&gt;
%Función real&lt;br /&gt;
ye=(3*exp(2.*t)-3)./(3*exp(2.*t)-1);&lt;br /&gt;
ae=a0-ye;&lt;br /&gt;
be=b0-ye;&lt;br /&gt;
&lt;br /&gt;
%Trapecios&lt;br /&gt;
y2=zeros(1,length(t)); &lt;br /&gt;
a2=y2;&lt;br /&gt;
b2=y2;&lt;br /&gt;
y2(1)=y0;&lt;br /&gt;
a2(1)=a0;&lt;br /&gt;
b2(1)=b0;&lt;br /&gt;
for i= 1:length(t)-1&lt;br /&gt;
    y2(i+1)=((1+0.5*h*k1*(a0+b0))-sqrt((1+0.5*h*k1*(a0+b0))^2-2*h*k1*(y2(i)+0.5*h*k1*(a0-y2(i))*(b0-y2(i))+0.5*h*k1*a0*b0)))/(k1*h);&lt;br /&gt;
a2(i+1)=a0-y2(i+1);&lt;br /&gt;
b2(i+1)=b0-y2(i+1);&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
%Runge-Kutta&lt;br /&gt;
y3=zeros(1,length(t)); &lt;br /&gt;
a3=y3;&lt;br /&gt;
b3=y3;&lt;br /&gt;
y3(1)=y0;&lt;br /&gt;
a3(1)=a0;&lt;br /&gt;
b3(1)=b0;&lt;br /&gt;
fori=1:length(t)-1 &lt;br /&gt;
    r1=k1*(a0-y3(i))*(b0-y3(i));&lt;br /&gt;
    r2=k1*(a0-y3(i)-0.5*r1*h)*(b0-y3(i)-0.5*r1*h);&lt;br /&gt;
    r3=k1*(a0-y3(i)-0.5*r2*h)*(b0-y3(i)-0.5*r2*h);&lt;br /&gt;
    r4=k1*(a0-y3(i)-r3*h)*(b0-y3(i)-r3*h);&lt;br /&gt;
y3(i+1)=y3(i)+h/6*(r1+2*r2+2*r3+r4);&lt;br /&gt;
a3(i+1)=a0-y3(i+1);&lt;br /&gt;
b3(i+1)=b0-y3(i+1);&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
%se pintan las cuatro gráficas, con la función real en verde y los puntos con asteriscos, &lt;br /&gt;
%Euler en rojo, los Trapecios en azul, y Runge-Kutta en negro&lt;br /&gt;
figure(2)&lt;br /&gt;
hold on&lt;br /&gt;
&lt;br /&gt;
plot(t,ye,'g*-')&lt;br /&gt;
plot(t,y2)&lt;br /&gt;
plot(t,y3,'k')&lt;br /&gt;
plot(t,y1,'r')&lt;br /&gt;
legend('Función real','Trapecios', 'Runge-Kutta', 'Euler','Location','best');&lt;br /&gt;
plot(t,ae,'g*')&lt;br /&gt;
plot(t,a2)&lt;br /&gt;
plot(t,a3,'k')&lt;br /&gt;
plot(t,a1,'r')&lt;br /&gt;
plot(t,be,'g*')&lt;br /&gt;
plot(t,b2)&lt;br /&gt;
plot(t,b3,'k')&lt;br /&gt;
plot(t,b1,'r')&lt;br /&gt;
hold off&lt;br /&gt;
&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
Los resultados del programa se muestran en las dos siguientes figuras. Como podemos observar, el método de ''Euler'', en &amp;lt;span style=&amp;quot;color:#FF0000;&amp;quot;&amp;gt;Rojo&amp;lt;/span&amp;gt;, rápidamente se separa de los demás y de la función real, lo que es debido a que es un método de orden 1 y su precisión es bastante reducida. Para analizar el comportamiento de los otros dos métodos, se ha hecho un zoom en una zona aleatoria de la gráfica, y se muestra en la figura 2. Lo lógico, debido a que es de orden 2, es que el método de los trapecios sea el siguiente que se aleje de la solución real, y esto es precisamente lo que se evidencia en la gráfica, pues como vemos, la línea &amp;lt;span style=&amp;quot;color:#0000FF;&amp;quot;&amp;gt;Azul&amp;lt;/span&amp;gt; se separa de la negra y de la &amp;lt;span style=&amp;quot;color:#00FF00;&amp;quot;&amp;gt;Verde&amp;lt;/span&amp;gt;. Es por tanto que el método de ''Runge-Kutta'' es el más preciso de todos, haciendo honor a su cuarto orden, y como podemos observar, las líneas &amp;lt;span style=&amp;quot;color:#00FF00;&amp;quot;&amp;gt;Verde&amp;lt;/span&amp;gt; y negra son casi indistinguibles. &lt;br /&gt;
&lt;br /&gt;
Es importante también atender a la escala que se muestra en la figura 2, que nos da una idea de los rangos en el eje de ordenadas de los que estamos hablando. Cabe decir que estamos trabajando con un paso de h=0.1, lo que significa que con un paso menor, estas diferencias serian mucho menos perceptibles.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Archivo:ejer4.jpeg|500px|miniaturadeimagen|center|Reacción compleja]]&lt;br /&gt;
&lt;br /&gt;
[[Archivo:4comparacion.jpeg|500px|miniaturadeimagen|center|Gráfico 2]]&lt;br /&gt;
&lt;br /&gt;
=Reacción consecutiva=&lt;br /&gt;
&lt;br /&gt;
Consideremos ahora que se produce una reacción consecutiva de la forma.: &lt;br /&gt;
&lt;br /&gt;
                                                                   &amp;lt;math&amp;gt;A + B → k_1C → k_2D&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
De tal modo que los reactivos &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;B&amp;lt;/math&amp;gt; se combinan en la proporción 1:1 para formar compuesto &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt;, el cual, a su vez, se va descomponiendo para formar compuesto &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt;. Al igual que se ha hecho antes al analizar las otras reacciones, se considerará que se cumple la ley de acción de masas. Es decir, la velocidad con la que se forma compuesto &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; es proporcional a las concentraciones existentes de &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt; y de &amp;lt;math&amp;gt;B&amp;lt;/math&amp;gt; y del mismo modo la de formación de la sustancia &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; lo es a la concentración de &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; que se ha ido formando.&lt;br /&gt;
&lt;br /&gt;
Esta reacción consecutiva está representada por el siguiente problema de valor inicial::&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;&lt;br /&gt;
   \left . &lt;br /&gt;
      \begin{matrix} &lt;br /&gt;
         y'_1(t)={k_{1}}({a_{0}}-y_1(t))({b_{0}}-y_1(t))\\&lt;br /&gt;
         y'_2(t)={k_{2}}(y_1(t)-y_2(t))\\&lt;br /&gt;
y_1(0)=0\\y_2(0)=0&lt;br /&gt;
      \end{matrix}&lt;br /&gt;
   \right \}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
Donde &amp;lt;math&amp;gt;a_0&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;b_0&amp;lt;/math&amp;gt; representan las concentraciones iniciales de &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;B&amp;lt;/math&amp;gt; respectivamente, &amp;lt;math&amp;gt;k_1&amp;lt;/math&amp;gt; es la constante de proporcionalidad que rige la primera reacción y &amp;lt;math&amp;gt;k_2&amp;lt;/math&amp;gt; la que rige la segunda reacción o reacción consecutiva. &amp;lt;math&amp;gt;y_1’(t)&amp;lt;/math&amp;gt; e  &amp;lt;math&amp;gt;y_2’(t)&amp;lt;/math&amp;gt; representan las velocidades de las reacciones, es decir, las velocidades con que se forman los productos &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt;. &amp;lt;math&amp;gt;y_2(t)&amp;lt;/math&amp;gt; representa la concentración del producto &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; pero es importante apreciar que en este caso &amp;lt;math&amp;gt;y_1(t)&amp;lt;/math&amp;gt; no nos da el valor de la concentración de &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; directamente, sino que ésta será &amp;lt;math&amp;gt;y_1(t)&amp;lt;/math&amp;gt;- &amp;lt;math&amp;gt;y_2(t)&amp;lt;/math&amp;gt;, la cantidad que se forma en la primera reacción menos la que se emplea para formar el producto &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; en la segunda.&lt;br /&gt;
&lt;br /&gt;
Este problema se va a resolver para dos casos diferentes. Uno en el cual se considera que la segunda reacción es más rápida que la primera, lo que supone tomar un valor de la constante &amp;lt;math&amp;gt;k_2&amp;lt;/math&amp;gt;  mayor que &amp;lt;math&amp;gt;k_1&amp;lt;/math&amp;gt;. Y otro en el cual se considera que es más lenta, lo que implica que &amp;lt;math&amp;gt;k_2&amp;lt;/math&amp;gt; es menor que &amp;lt;math&amp;gt;k_1&amp;lt;/math&amp;gt;. Concretamente vamos a tomar los siguientes valores para resolver el problema numéricamente; &amp;lt;math&amp;gt;a_0&amp;lt;/math&amp;gt;=3 ,  &amp;lt;math&amp;gt;b_0&amp;lt;/math&amp;gt;=1, &amp;lt;math&amp;gt;k_1&amp;lt;/math&amp;gt;=1,  &amp;lt;math&amp;gt;k_2&amp;lt;/math&amp;gt;=5, &amp;lt;math&amp;gt;k_2&amp;lt;/math&amp;gt;=1/5, .En ambos casos se resuelve para los primeros 10 segundos.&lt;br /&gt;
&lt;br /&gt;
==La reacción D es más rápida que la reacción C==&lt;br /&gt;
CASO    &amp;lt;math&amp;gt;k_1=5  &amp;lt;/math&amp;gt;   '''h=0.1''' &lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
&lt;br /&gt;
%datos&lt;br /&gt;
y0=[0;0];&lt;br /&gt;
z0=[0;0];&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;
%matriz de las soluciones&lt;br /&gt;
y=zeros(2,length(t)); %euler&lt;br /&gt;
y(:,1)=y0;&lt;br /&gt;
 &lt;br /&gt;
z=zeros(2,length(t)); %runge-kutta&lt;br /&gt;
z(:,1)=y0;&lt;br /&gt;
 &lt;br /&gt;
for i=1:length(t)-1&lt;br /&gt;
 %euler&lt;br /&gt;
 y(:,i+1)=y(:,i)+h*[1*(3-y(1,i))*(1-y(1,i)); 5*(y(1,i)-y(2,i))];&lt;br /&gt;
 %runge-kutta&lt;br /&gt;
 K1=[1*(3-z(1,i))*(1-z(1,i)); 5*(z(1,i)-z(2,i))];&lt;br /&gt;
 K2=[1*(3-(z(1,i)+h/2*K1(1)))*(1-(z(1,i)+h/2*K1(1))); 5*((y(1,i)+h/2*K1(2))-(y(2,i)+h/2*K1(2)))];&lt;br /&gt;
 K3=[1*(3-(z(1,i)+h/2*K2(1)))*(1-(z(1,i)+h/2*K2(1))); 5*((y(1,i)+h/2*K2(2))-(y(2,i)+h/2*K2(2)))];&lt;br /&gt;
 K4=[1*(3-(z(1,i)+h*K3(1)))*(1-(z(1,i)+h*K3(1))); 5*((y(1,i)+h*K3(2))-(y(2,i)+h*K3(2)))];&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;
% se calcula la concentración de C=y1t)-y2(t)&lt;br /&gt;
Ay=y(1,:)-y(2,:); %euler&lt;br /&gt;
Az=z(1,:)-z(2,:); %runge-kutta&lt;br /&gt;
 &lt;br /&gt;
figure(1)&lt;br /&gt;
hold on&lt;br /&gt;
plot(t,Ay) %concentración de C por euler&lt;br /&gt;
plot(t,y(2,:),'r') %concentración de D por euler&lt;br /&gt;
plot(t,Az,'k') %concentración de C por runge-kutta&lt;br /&gt;
plot(t,z(2,:),'g') %concentración de D por runge-kutta&lt;br /&gt;
legend('concentración de C por euler','concentración de D por euler','concentración de C por runge-kutta','concentración de D por runge-kutta','Location','best')&lt;br /&gt;
hold off&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:graficoa.jpeg|500px|miniaturadeimagen|center|Reacción compleja]]&lt;br /&gt;
&lt;br /&gt;
Se observa que en en los primeros instantes aumentan las concentraciones de &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; aumentan sus concentraciones. Antes de que pase 1 segundo, la concentración &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; alcanza un máximo (de unos 0.3 molar) y va disminuyendo progresivamente hasta alcanzar un valor de 0 molar. La concentración &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; sigue creciendo hasta llegar a 1 molar. Una vez que tanto &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; como &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; alcanzan estos valores, se estabiliza la reacción. &lt;br /&gt;
&lt;br /&gt;
Como hemos impuesto que la reacción &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; es más rápida que &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt;, se observa que &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; empieza creciendo más rápidamente, pero como reacciona más despacio que &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; su concentración disminuye progresivamente, mientras que la de &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; aumenta.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''CASO'''  &amp;lt;math&amp;gt;k_2=5  &amp;lt;/math&amp;gt;   '''h=0.3''' &lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
&lt;br /&gt;
%datos&lt;br /&gt;
y0=[0;0];&lt;br /&gt;
z0=[0;0];&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=10;&lt;br /&gt;
h=0.3;&lt;br /&gt;
 &lt;br /&gt;
%variable independiente t&lt;br /&gt;
t=t0:h:tN;&lt;br /&gt;
 &lt;br /&gt;
%matriz de las soluciones&lt;br /&gt;
y=zeros(2,length(t)); %euler&lt;br /&gt;
y(:,1)=y0;&lt;br /&gt;
 &lt;br /&gt;
z=zeros(2,length(t)); %runge-kutta&lt;br /&gt;
z(:,1)=y0;&lt;br /&gt;
 &lt;br /&gt;
for i=1:length(t)-1&lt;br /&gt;
 %euler&lt;br /&gt;
 y(:,i+1)=y(:,i)+h*[1*(3-y(1,i))*(1-y(1,i)); 5*(y(1,i)-y(2,i))];&lt;br /&gt;
 %runge-kutta&lt;br /&gt;
 K1=[1*(3-z(1,i))*(1-z(1,i)); 5*(z(1,i)-z(2,i))];&lt;br /&gt;
 K2=[1*(3-(z(1,i)+h/2*K1(1)))*(1-(z(1,i)+h/2*K1(1))); 5*((y(1,i)+h/2*K1(2))-(y(2,i)+h/2*K1(2)))];&lt;br /&gt;
 K3=[1*(3-(z(1,i)+h/2*K2(1)))*(1-(z(1,i)+h/2*K2(1))); 5*((y(1,i)+h/2*K2(2))-(y(2,i)+h/2*K2(2)))];&lt;br /&gt;
 K4=[1*(3-(z(1,i)+h*K3(1)))*(1-(z(1,i)+h*K3(1))); 5*((y(1,i)+h*K3(2))-(y(2,i)+h*K3(2)))];&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;
% se calcula la concentración de C=y1t)-y2(t)&lt;br /&gt;
Ay=y(1,:)-y(2,:); %euler&lt;br /&gt;
Az=z(1,:)-z(2,:); %runge-kutta&lt;br /&gt;
 &lt;br /&gt;
figure(1)&lt;br /&gt;
hold on&lt;br /&gt;
plot(t,Ay) %concentración de C por euler&lt;br /&gt;
plot(t,y(2,:),'r') %concentración de D por euler&lt;br /&gt;
plot(t,Az,'k') %concentración de C por runge-kutta&lt;br /&gt;
plot(t,z(2,:),'g') %concentración de D por runge-kutta&lt;br /&gt;
legend('concentración de C por euler','concentración de D por euler','concentración de C por runge-kutta','concentración de D por runge-kutta','Location','best')&lt;br /&gt;
hold off&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:graficob.jpeg|500px|miniaturadeimagen|center|Reacción compleja]]&lt;br /&gt;
&lt;br /&gt;
Repetimos el programa pero para un tamaño de paso mayor, de '''h=0.3''', y observamos que no  es suficientemente preciso, sobre todo al principio, no se puede analizar bien lo que está pasando en la reacción.&lt;br /&gt;
&lt;br /&gt;
==La reacción D es más lenta que la reacción C==&lt;br /&gt;
&lt;br /&gt;
CASO  &amp;lt;math&amp;gt;k_1 &amp;lt;/math&amp;gt;=1,   &amp;lt;math&amp;gt;k_2 &amp;lt;/math&amp;gt;=1/5&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
&lt;br /&gt;
%datos&lt;br /&gt;
y0=[0;0];&lt;br /&gt;
z0=[0;0];&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;
%matriz de las soluciones&lt;br /&gt;
y=zeros(2,length(t)); %euler&lt;br /&gt;
y(:,1)=y0;&lt;br /&gt;
 &lt;br /&gt;
z=zeros(2,length(t)); %runge-kutta&lt;br /&gt;
z(:,1)=y0;&lt;br /&gt;
 &lt;br /&gt;
for i=1:length(t)-1&lt;br /&gt;
 %euler&lt;br /&gt;
 y(:,i+1)=y(:,i)+h*[1*(3-y(1,i))*(1-y(1,i)); 1/5*(y(1,i)-y(2,i))];&lt;br /&gt;
 %runge-kutta&lt;br /&gt;
 K1=[1*(3-z(1,i))*(1-z(1,i)); 1/5*(z(1,i)-z(2,i))];&lt;br /&gt;
 K2=[1*(3-(z(1,i)+h/2*K1(1)))*(1-(z(1,i)+h/2*K1(1))); 1/5*((y(1,i)+h/2*K1(2))-(y(2,i)+h/2*K1(2)))];&lt;br /&gt;
 K3=[1*(3-(z(1,i)+h/2*K2(1)))*(1-(z(1,i)+h/2*K2(1))); 1/5*((y(1,i)+h/2*K2(2))-(y(2,i)+h/2*K2(2)))];&lt;br /&gt;
 K4=[1*(3-(z(1,i)+h*K3(1)))*(1-(z(1,i)+h*K3(1))); 1/5*((y(1,i)+h*K3(2))-(y(2,i)+h*K3(2)))];&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;
% se calcula la concentración de C=y1t)-y2(t)&lt;br /&gt;
Ay=y(1,:)-y(2,:); %euler&lt;br /&gt;
Az=z(1,:)-z(2,:); %runge-kutta&lt;br /&gt;
 &lt;br /&gt;
figure(1)&lt;br /&gt;
hold on&lt;br /&gt;
plot(t,Ay) %concentración de C por euler&lt;br /&gt;
plot(t,y(2,:),'r') %concentración de D por euler&lt;br /&gt;
plot(t,Az,'k') %concentración de C por runge-kutta&lt;br /&gt;
plot(t,z(2,:),'g') %concentración de D por runge-kutta&lt;br /&gt;
legend('concentración de C por euler','concentración de D por euler','concentración de C por runge-kutta','concentración de D por runge-kutta','Location','best')&lt;br /&gt;
hold off&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:graficoc.jpeg|500px|miniaturadeimagen|center|Reacción compleja]]&lt;br /&gt;
&lt;br /&gt;
Si ahora imponemos que la reacción  &amp;lt;math&amp;gt;C &amp;lt;/math&amp;gt; es más rápida que  &amp;lt;math&amp;gt;D &amp;lt;/math&amp;gt;, obtenemos lo siguiente. Se parece a la gráfica que obtuvimos en el programa anterior, pero  más extendida en el tiempo, más lenta.  &amp;lt;math&amp;gt;C &amp;lt;/math&amp;gt; alcanza una concentración máxima de unos 0.8 molar antes de empezar a decrecer a medida que avanza el tiempo y acercándose a un valor de '''0''' molar.  &amp;lt;math&amp;gt;D &amp;lt;/math&amp;gt; crece más lentamente que en la gráfica anterior, pero se aproxima al mismo valor, '''1''' molar.&lt;br /&gt;
Se observa que aunque hagamos la reacción  &amp;lt;math&amp;gt;C &amp;lt;/math&amp;gt; más rápida, tenemos las mismas concentraciones finales, pero tardan más tiempo en obtenerse, ya que la reacción tarda más en estabilizarse.&lt;br /&gt;
&lt;br /&gt;
&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>Joseva</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Reacciones_complejas_(Grupo_D1)&amp;diff=27779</id>
		<title>Reacciones complejas (Grupo D1)</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Reacciones_complejas_(Grupo_D1)&amp;diff=27779"/>
				<updated>2015-03-06T11:36:29Z</updated>
		
		<summary type="html">&lt;p&gt;Joseva: /* Método del Trapecio y Método de Runge-Kutta */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{ TrabajoED | Reacciones complejas (Grupo D1) | [[:Categoría:Ecuaciones Diferenciales|Ecuaciones Diferenciales]]|[[:Categoría:ED14/15|Curso 2014-15]] | Rincón Crespo, Kevin&lt;br /&gt;
&lt;br /&gt;
Rodríguez Gómez, Javier&lt;br /&gt;
&lt;br /&gt;
Sans Jiménez, Alejandro&lt;br /&gt;
&lt;br /&gt;
Sesto Muñoz, María Victoria&lt;br /&gt;
&lt;br /&gt;
Vallejo Asín, José Manuel &lt;br /&gt;
&lt;br /&gt;
Villarino Redondo, Álvaro }}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=Introducción=&lt;br /&gt;
Se considera una reacción química irreversible en una solución bien mezclada. Supondremos que la reacción ocurre para un volumen y temperatura constantes. Al inicio se encuentran dos reactivos &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;B&amp;lt;/math&amp;gt;, que van formando un producto &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; en lo que se conoce como una reacción bimolecular, es decir, una molécula de &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt; y una de &amp;lt;math&amp;gt;B&amp;lt;/math&amp;gt; producen una de &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt;.: &lt;br /&gt;
                                                                     &amp;lt;math&amp;gt;A + B → C&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Supondremos también que se satisface la ley de acción de masas, que establece que la velocidad de reacción es proporcional al producto de las concentraciones de los reactivos.&lt;br /&gt;
&lt;br /&gt;
=Concentración del reactivo &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; a lo largo del tiempo=&lt;br /&gt;
En primer lugar, suponiendo que la reacción es irreversible, es decir, que &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; no puede volver a formar &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;B&amp;lt;/math&amp;gt;, se puede expresar la situación mediante el siguiente problema de valor inicial, cuando t&amp;gt;0.:&lt;br /&gt;
   &amp;lt;math&amp;gt;&lt;br /&gt;
   \left . &lt;br /&gt;
      \begin{matrix} &lt;br /&gt;
         y'(t)={k_{1}}({a_{0}}-y(t))({b_{0}}-y(t))=0\\&lt;br /&gt;
         y(0)=0&lt;br /&gt;
      \end{matrix}&lt;br /&gt;
   \right \}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Donde &amp;lt;math&amp;gt; {a_{0}}&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;{b_{0}}&amp;lt;/math&amp;gt; representan las concentraciones iniciales de '''A''' y '''B''' respectivamente y &amp;lt;math&amp;gt;{k_{1}}&amp;lt;/math&amp;gt; es la constante de proporcionalidad que indica la ley de acción de masas. &amp;lt;math&amp;gt;y’(t)&amp;lt;/math&amp;gt; representa la velocidad de reacción, es decir, la velocidad con que se forma el producto &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; ; mientras que la solución de la ecuación diferencial, &amp;lt;math&amp;gt;y(t)&amp;lt;/math&amp;gt; , representa la concentración de &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt;, la cantidad de compuesto que se ha formado. Para comprobar que la solución de este problema de Cauchy es única, comenzamos definiendo.:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;math&amp;gt;f(t,y)={k_{1}}({a_{0}}-y(t))({b_{0}}-y(t))=0,   t&amp;gt;0 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Observamos que &amp;lt;math&amp;gt;f(t,y)&amp;lt;/math&amp;gt; es continua en el intervalo &amp;lt;math&amp;gt; I=(0,∞)∩B((0,0),r&amp;gt;0)&amp;lt;/math&amp;gt;, por lo que ya aseguramos la existencia de al menos una solución. Examinando la derivada parcial.:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\frac{∂f}{∂y}=k_1(-a_0-b_0+2y)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Se deduce que al ser un polinomio no va a haber problemas de continuidad para ninguna bola. De esta forma, podemos asegurar que existe una única solución.&lt;br /&gt;
&lt;br /&gt;
==Concentración del reactivo C a lo largo del tiempo en un proceso reversible==&lt;br /&gt;
&lt;br /&gt;
Ahora bien, ¿qué pasaría si la reacción fuese reversible? Con esto lo que queremos indicar es que además de formarse  &amp;lt;math&amp;gt;C &amp;lt;/math&amp;gt;, este también se descompone de nuevo en  &amp;lt;math&amp;gt;A &amp;lt;/math&amp;gt; y  &amp;lt;math&amp;gt;B &amp;lt;/math&amp;gt;. Por lo tanto, nos quedaría una ecuación diferencial con la siguiente forma, cuando &amp;lt;math&amp;gt;t&amp;gt;0 &amp;lt;/math&amp;gt;. :&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; y'(t)={k_{1}}({a_{0}}-y(t))({b_{0}}-y(t))-Cy(t)&amp;lt;/math&amp;gt;  &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Si nos fijamos, la modificación es sencillamente restar  &amp;lt;math&amp;gt;y(t) &amp;lt;/math&amp;gt; multiplicada por una constante, la cual refleja qué porcentaje de  &amp;lt;math&amp;gt;C &amp;lt;/math&amp;gt; se va descomponiendo a medida que se da, simultáneamente, la reacción  &amp;lt;math&amp;gt;A + B → C &amp;lt;/math&amp;gt;. Sin embargo, esta constante no puede tener cualquier valor, ya que en una reacción se cumple la conservación de masa. Por ello, a  &amp;lt;math&amp;gt;C &amp;lt;/math&amp;gt; le asociaremos el siguiente dominio::&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;C∈(0,1)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Obsérvese que  &amp;lt;math&amp;gt;C &amp;lt;/math&amp;gt; tiene que ser mayor que 0 para que sea reversible, pero al mismo tiempo inferior que 1, ya que si no se estaría descomponiendo más compuesto  &amp;lt;math&amp;gt;C &amp;lt;/math&amp;gt; del que realmente se ha formado, en otras palabras, estaría apareciendo masa de la nada.&lt;br /&gt;
&lt;br /&gt;
=Método de Euler=&lt;br /&gt;
&lt;br /&gt;
Una vez llegados a este punto, se procede a ver una interpretación gráfica de la reacción. Para ello, se refleja en la gráfica (en un intervalo de 2 segundos), cómo varían las concentraciones tanto de &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt; (&amp;lt;math&amp;gt;a_0&amp;lt;/math&amp;gt;=3 mol/L) y &amp;lt;math&amp;gt;B&amp;lt;/math&amp;gt; (&amp;lt;math&amp;gt;b_0&amp;lt;/math&amp;gt;=1 mol/L) como de &amp;lt;math&amp;gt; C&amp;lt;/math&amp;gt;, para una &amp;lt;math&amp;gt;k_1&amp;lt;/math&amp;gt;=1 mol/s. Se comienza, por el momento, aplicando el método de Euler. Posteriormente se utilizarán métodos más precisos.&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo= &lt;br /&gt;
% Euler&lt;br /&gt;
clear all&lt;br /&gt;
% datos del problema&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=2;&lt;br /&gt;
y0=0;&lt;br /&gt;
h=0.1;&lt;br /&gt;
k1=1;&lt;br /&gt;
a0=3;&lt;br /&gt;
b0=1;&lt;br /&gt;
% Definimos la variable independiente&lt;br /&gt;
t=t0:h:tN;&lt;br /&gt;
% Guardamos los valores de la solución aproximada en el vector &amp;quot;y1&amp;quot; y&lt;br /&gt;
% establecemos los vectores de concentraciones A y B&lt;br /&gt;
y1=zeros(1,length(t)); &lt;br /&gt;
y1(1)=y0;&lt;br /&gt;
a1=zeros(1,length(t));&lt;br /&gt;
a1(1)=a0;&lt;br /&gt;
b1=zeros(1,length(t));&lt;br /&gt;
b1(1)=b0;&lt;br /&gt;
% A continuación, calculamos las componentes de los vectores y1, a1 y b1&lt;br /&gt;
for i=1:length(t)-1&lt;br /&gt;
    y1(i+1)=y1(i)+h*(k1*(a0-y1(i))*(b0-y1(i)));    %Euler&lt;br /&gt;
    a1(i+1)=a0-y1(i+1); % evolución de la concentración de A&lt;br /&gt;
    b1(i+1)=b0-y1(i+1); % evolución de la concentración de B&lt;br /&gt;
end&lt;br /&gt;
%grafico &lt;br /&gt;
figure(1)&lt;br /&gt;
hold on&lt;br /&gt;
plot(t,y1,'g')&lt;br /&gt;
plot(t,a1,'r')&lt;br /&gt;
plot(t,b1,'b')&lt;br /&gt;
legend('concentración de C','concentración de A','concentración de B','location','best')&lt;br /&gt;
hold off &lt;br /&gt;
%en verde se muestra la concentración de C, en rojo la de A, y en azul la de B&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Archivo:3euler.jpeg|500px|miniaturadeimagen|center|Reacción compleja]]&lt;br /&gt;
&lt;br /&gt;
Aunque con observar los resultados ya podemos decir con casi absoluta seguridad cuáles son los límites de las concentraciones de cada reactivo &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;B&amp;lt;/math&amp;gt; y del producto &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt;, se ha diseñado un programa que, mediante diferencia de valores sucesivos de la variable &amp;lt;math&amp;gt;y(t)&amp;lt;/math&amp;gt;, nos devuelve el valor de la función cuando dicha diferencia es muy pequeña '''(se ha puesto una diferencia de 0.001)''', es decir, cuando tenemos una asíntota al tender &amp;lt;math&amp;gt;t→∞&amp;lt;/math&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
%Estudio de las asíntotas&lt;br /&gt;
t1=t0:h:10;%se aumenta la longitud de t, y se estima que se alcanzarán las asíntotas antes de t=10&lt;br /&gt;
y_=zeros(1,length(t1)); %se define un vector y_ idéntico a y1 pero con t hasta 10&lt;br /&gt;
a_=y_;&lt;br /&gt;
b_=y_;&lt;br /&gt;
y_(1)=y0;&lt;br /&gt;
a_(1)=a0;&lt;br /&gt;
b_(1)=b0;&lt;br /&gt;
for i=1:length(t1)-1&lt;br /&gt;
    y_(i+1)=y_(i)+h*(k1*(a0-y_(i))*(b0-y_(i)));&lt;br /&gt;
    diferencia=y_(i+1)-y_(i);&lt;br /&gt;
    if abs(diferencia)&amp;lt;=0.001&lt;br /&gt;
        limC=y_(i+1)&lt;br /&gt;
        break&lt;br /&gt;
    end&lt;br /&gt;
end&lt;br /&gt;
for i=1:length(t1)-1&lt;br /&gt;
    y_(i+1)=y_(i)+h*(k1*(a0-y_(i))*(b0-y_(i)));    &lt;br /&gt;
    a_(i+1)=a0-y_(i+1);&lt;br /&gt;
    diferencia2=a_(i+1)-a_(i);&lt;br /&gt;
    if abs(diferencia2)&amp;lt;=0.001&lt;br /&gt;
        limA=a_(i+1)&lt;br /&gt;
        break&lt;br /&gt;
    end&lt;br /&gt;
end&lt;br /&gt;
for i=1:length(t1)-1&lt;br /&gt;
    y_(i+1)=y_(i)+h*(k1*(a0-y_(i))*(b0-y_(i)));    &lt;br /&gt;
    b_(i+1)=b0-y_(i+1);&lt;br /&gt;
    diferencia3=b_(i+1)-b_(i);&lt;br /&gt;
    if abs(diferencia3)&amp;lt;=0.001&lt;br /&gt;
        limB=b_(i+1)&lt;br /&gt;
        break&lt;br /&gt;
    end&lt;br /&gt;
end&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
Que nos devuelve unos valores de las concentraciones para el límite de:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\lim A=2,0036≈2 mol/L&amp;lt;/math&amp;gt;:     &lt;br /&gt;
&amp;lt;math&amp;gt;\lim B=0,0036≈0mol/L&amp;lt;/math&amp;gt;:         &lt;br /&gt;
&amp;lt;math&amp;gt;\lim C=0,9964≈1mol/L&amp;lt;/math&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
Lo cual es lógico, ya que &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;B&amp;lt;/math&amp;gt; se combinan en una proporción de 1:1, luego &amp;lt;math&amp;gt;B&amp;lt;/math&amp;gt;, que tiene una concentración inicial de &amp;lt;math&amp;gt;b_0&amp;lt;/math&amp;gt;=1, será el reactivo limitante (el que desaparecerá por completo), mientras que &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt;, con &amp;lt;math&amp;gt;a_0&amp;lt;/math&amp;gt;=3, acabará con una concentración molar final igual a 2, y &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt;, del que no habia nada,alcanza una concentraccion de &amp;lt;math&amp;gt;1mol/L&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
= Método del Trapecio y Método de Runge-Kutta=&lt;br /&gt;
&lt;br /&gt;
A continuación, para obtener con más precisión las representaciones gráficas de las respectivas concentraciones, se opta por utilizar los métodos de los &amp;lt;math&amp;gt;Trapecios&amp;lt;/math&amp;gt; (segundo orden) y de &amp;lt;math&amp;gt;Runge-Kutta&amp;lt;/math&amp;gt; (cuarto orden). Además, se ha obtenido la expresión explícita de la solución de nuestro problema de valor inicial de manera analítica, mediante variables separables y fracciones simples, resultando la función real::&lt;br /&gt;
&amp;lt;math&amp;gt;y_e(t)=\frac{3e^{2t}-3}{3e^{2t}-1}&amp;lt;/math&amp;gt;&lt;br /&gt;
De manera que las concentraciones de A y de B en cada valor de t quedarían como::&lt;br /&gt;
&amp;lt;math&amp;gt;a_e(t)=a_0-y_e(t)&amp;lt;/math&amp;gt;:&lt;br /&gt;
&amp;lt;math&amp;gt;b_e (t)=b_0-y_e (t)&amp;lt;/math&amp;gt;:&lt;br /&gt;
Para los trapecios, al ser un método implícito, es necesario despejar la componente &amp;lt;math&amp;gt;y_{n+1}&amp;lt;/math&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;y_{n+1}=\frac{(1+\frac{h}{2}∙k_1∙(a_0+b_0))-\sqrt{(1+\frac{h}{2}∙k_1∙(a_0+b_0))^2 -2∙h∙k_1(y_n+\frac{h}{2}∙k_1∙(a_0-y_n )∙(b_0-y_n)+\frac{h}{2}∙k_1∙a_0∙b_0) }}{k_1∙h}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Cabe destacar que este programa parte de los datos ya establecidos en el programa de Euler para '''t0, tN, y0, a0, b0, k1 y h''':&lt;br /&gt;
{{matlab|codigo= &lt;br /&gt;
%Función real&lt;br /&gt;
ye=(3*exp(2.*t)-3)./(3*exp(2.*t)-1);&lt;br /&gt;
ae=a0-ye;&lt;br /&gt;
be=b0-ye;&lt;br /&gt;
&lt;br /&gt;
%Trapecios&lt;br /&gt;
y2=zeros(1,length(t)); &lt;br /&gt;
a2=y2;&lt;br /&gt;
b2=y2;&lt;br /&gt;
y2(1)=y0;&lt;br /&gt;
a2(1)=a0;&lt;br /&gt;
b2(1)=b0;&lt;br /&gt;
for i= 1:length(t)-1&lt;br /&gt;
    y2(i+1)=((1+0.5*h*k1*(a0+b0))-sqrt((1+0.5*h*k1*(a0+b0))^2-2*h*k1*(y2(i)+0.5*h*k1*(a0-y2(i))*(b0-y2(i))+0.5*h*k1*a0*b0)))/(k1*h);&lt;br /&gt;
a2(i+1)=a0-y2(i+1);&lt;br /&gt;
b2(i+1)=b0-y2(i+1);&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
%Runge-Kutta&lt;br /&gt;
y3=zeros(1,length(t)); &lt;br /&gt;
a3=y3;&lt;br /&gt;
b3=y3;&lt;br /&gt;
y3(1)=y0;&lt;br /&gt;
a3(1)=a0;&lt;br /&gt;
b3(1)=b0;&lt;br /&gt;
fori=1:length(t)-1 &lt;br /&gt;
    r1=k1*(a0-y3(i))*(b0-y3(i));&lt;br /&gt;
    r2=k1*(a0-y3(i)-0.5*r1*h)*(b0-y3(i)-0.5*r1*h);&lt;br /&gt;
    r3=k1*(a0-y3(i)-0.5*r2*h)*(b0-y3(i)-0.5*r2*h);&lt;br /&gt;
    r4=k1*(a0-y3(i)-r3*h)*(b0-y3(i)-r3*h);&lt;br /&gt;
y3(i+1)=y3(i)+h/6*(r1+2*r2+2*r3+r4);&lt;br /&gt;
a3(i+1)=a0-y3(i+1);&lt;br /&gt;
b3(i+1)=b0-y3(i+1);&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
%se pintan las cuatro gráficas, con la función real en verde y los puntos con asteriscos, &lt;br /&gt;
%Euler en rojo, los Trapecios en azul, y Runge-Kutta en negro&lt;br /&gt;
figure(2)&lt;br /&gt;
hold on&lt;br /&gt;
&lt;br /&gt;
plot(t,ye,'g*-')&lt;br /&gt;
plot(t,y2)&lt;br /&gt;
plot(t,y3,'k')&lt;br /&gt;
plot(t,y1,'r')&lt;br /&gt;
legend('Función real','Trapecios', 'Runge-Kutta', 'Euler','Location','best');&lt;br /&gt;
plot(t,ae,'g*')&lt;br /&gt;
plot(t,a2)&lt;br /&gt;
plot(t,a3,'k')&lt;br /&gt;
plot(t,a1,'r')&lt;br /&gt;
plot(t,be,'g*')&lt;br /&gt;
plot(t,b2)&lt;br /&gt;
plot(t,b3,'k')&lt;br /&gt;
plot(t,b1,'r')&lt;br /&gt;
hold off&lt;br /&gt;
&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
Los resultados del programa se muestran en las dos siguientes figuras. Como podemos observar, el método de ''Euler'', en &amp;lt;span style=&amp;quot;color:#FF0000;&amp;quot;&amp;gt;Rojo&amp;lt;/span&amp;gt;, rápidamente se separa de los demás y de la función real, lo que es debido a que es un método de orden 1 y su precisión es bastante reducida. Para analizar el comportamiento de los otros dos métodos, se ha hecho un zoom en una zona aleatoria de la gráfica, y se muestra en la figura 2. Lo lógico, debido a que es de orden 2, es que el método de los trapecios sea el siguiente que se aleje de la solución real, y esto es precisamente lo que se evidencia en la gráfica, pues como vemos, la línea &amp;lt;span style=&amp;quot;color:#0000FF;&amp;quot;&amp;gt;Azul&amp;lt;/span&amp;gt; se separa de la negra y de la &amp;lt;span style=&amp;quot;color:#00FF00;&amp;quot;&amp;gt;Verde&amp;lt;/span&amp;gt;. Es por tanto que el método de ''Runge-Kutta'' es el más preciso de todos, haciendo honor a su cuarto orden, y como podemos observar, las líneas &amp;lt;span style=&amp;quot;color:#00FF00;&amp;quot;&amp;gt;Verde&amp;lt;/span&amp;gt; y negra son casi indistinguibles. &lt;br /&gt;
&lt;br /&gt;
Es importante también atender a la escala que se muestra en la figura 2, que nos da una idea de los rangos en el eje de ordenadas de los que estamos hablando. Cabe decir que estamos trabajando con un paso de h=0.1, lo que significa que con un paso menor, estas diferencias serian mucho menos perceptibles.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Archivo:4trapeciokung.jpeg|500px|miniaturadeimagen|center|Reacción compleja]]&lt;br /&gt;
&lt;br /&gt;
[[Archivo:4comparacion.jpeg|500px|miniaturadeimagen|center|Gráfico 2]]&lt;br /&gt;
&lt;br /&gt;
=Reacción consecutiva=&lt;br /&gt;
&lt;br /&gt;
Consideremos ahora que se produce una reacción consecutiva de la forma.: &lt;br /&gt;
&lt;br /&gt;
                                                                   &amp;lt;math&amp;gt;A + B → k_1C → k_2D&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
De tal modo que los reactivos &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;B&amp;lt;/math&amp;gt; se combinan en la proporción 1:1 para formar compuesto &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt;, el cual, a su vez, se va descomponiendo para formar compuesto &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt;. Al igual que se ha hecho antes al analizar las otras reacciones, se considerará que se cumple la ley de acción de masas. Es decir, la velocidad con la que se forma compuesto &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; es proporcional a las concentraciones existentes de &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt; y de &amp;lt;math&amp;gt;B&amp;lt;/math&amp;gt; y del mismo modo la de formación de la sustancia &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; lo es a la concentración de &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; que se ha ido formando.&lt;br /&gt;
&lt;br /&gt;
Esta reacción consecutiva está representada por el siguiente problema de valor inicial::&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;&lt;br /&gt;
   \left . &lt;br /&gt;
      \begin{matrix} &lt;br /&gt;
         y'_1(t)={k_{1}}({a_{0}}-y_1(t))({b_{0}}-y_1(t))\\&lt;br /&gt;
         y'_2(t)={k_{2}}(y_1(t)-y_2(t))\\&lt;br /&gt;
y_1(0)=0\\y_2(0)=0&lt;br /&gt;
      \end{matrix}&lt;br /&gt;
   \right \}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
Donde &amp;lt;math&amp;gt;a_0&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;b_0&amp;lt;/math&amp;gt; representan las concentraciones iniciales de &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;B&amp;lt;/math&amp;gt; respectivamente, &amp;lt;math&amp;gt;k_1&amp;lt;/math&amp;gt; es la constante de proporcionalidad que rige la primera reacción y &amp;lt;math&amp;gt;k_2&amp;lt;/math&amp;gt; la que rige la segunda reacción o reacción consecutiva. &amp;lt;math&amp;gt;y_1’(t)&amp;lt;/math&amp;gt; e  &amp;lt;math&amp;gt;y_2’(t)&amp;lt;/math&amp;gt; representan las velocidades de las reacciones, es decir, las velocidades con que se forman los productos &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt;. &amp;lt;math&amp;gt;y_2(t)&amp;lt;/math&amp;gt; representa la concentración del producto &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; pero es importante apreciar que en este caso &amp;lt;math&amp;gt;y_1(t)&amp;lt;/math&amp;gt; no nos da el valor de la concentración de &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; directamente, sino que ésta será &amp;lt;math&amp;gt;y_1(t)&amp;lt;/math&amp;gt;- &amp;lt;math&amp;gt;y_2(t)&amp;lt;/math&amp;gt;, la cantidad que se forma en la primera reacción menos la que se emplea para formar el producto &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; en la segunda.&lt;br /&gt;
&lt;br /&gt;
Este problema se va a resolver para dos casos diferentes. Uno en el cual se considera que la segunda reacción es más rápida que la primera, lo que supone tomar un valor de la constante &amp;lt;math&amp;gt;k_2&amp;lt;/math&amp;gt;  mayor que &amp;lt;math&amp;gt;k_1&amp;lt;/math&amp;gt;. Y otro en el cual se considera que es más lenta, lo que implica que &amp;lt;math&amp;gt;k_2&amp;lt;/math&amp;gt; es menor que &amp;lt;math&amp;gt;k_1&amp;lt;/math&amp;gt;. Concretamente vamos a tomar los siguientes valores para resolver el problema numéricamente; &amp;lt;math&amp;gt;a_0&amp;lt;/math&amp;gt;=3 ,  &amp;lt;math&amp;gt;b_0&amp;lt;/math&amp;gt;=1, &amp;lt;math&amp;gt;k_1&amp;lt;/math&amp;gt;=1,  &amp;lt;math&amp;gt;k_2&amp;lt;/math&amp;gt;=5, &amp;lt;math&amp;gt;k_2&amp;lt;/math&amp;gt;=1/5, .En ambos casos se resuelve para los primeros 10 segundos.&lt;br /&gt;
&lt;br /&gt;
==La reacción D es más rápida que la reacción C==&lt;br /&gt;
CASO    &amp;lt;math&amp;gt;k_1=5  &amp;lt;/math&amp;gt;   '''h=0.1''' &lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
&lt;br /&gt;
%datos&lt;br /&gt;
y0=[0;0];&lt;br /&gt;
z0=[0;0];&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;
%matriz de las soluciones&lt;br /&gt;
y=zeros(2,length(t)); %euler&lt;br /&gt;
y(:,1)=y0;&lt;br /&gt;
 &lt;br /&gt;
z=zeros(2,length(t)); %runge-kutta&lt;br /&gt;
z(:,1)=y0;&lt;br /&gt;
 &lt;br /&gt;
for i=1:length(t)-1&lt;br /&gt;
 %euler&lt;br /&gt;
 y(:,i+1)=y(:,i)+h*[1*(3-y(1,i))*(1-y(1,i)); 5*(y(1,i)-y(2,i))];&lt;br /&gt;
 %runge-kutta&lt;br /&gt;
 K1=[1*(3-z(1,i))*(1-z(1,i)); 5*(z(1,i)-z(2,i))];&lt;br /&gt;
 K2=[1*(3-(z(1,i)+h/2*K1(1)))*(1-(z(1,i)+h/2*K1(1))); 5*((y(1,i)+h/2*K1(2))-(y(2,i)+h/2*K1(2)))];&lt;br /&gt;
 K3=[1*(3-(z(1,i)+h/2*K2(1)))*(1-(z(1,i)+h/2*K2(1))); 5*((y(1,i)+h/2*K2(2))-(y(2,i)+h/2*K2(2)))];&lt;br /&gt;
 K4=[1*(3-(z(1,i)+h*K3(1)))*(1-(z(1,i)+h*K3(1))); 5*((y(1,i)+h*K3(2))-(y(2,i)+h*K3(2)))];&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;
% se calcula la concentración de C=y1t)-y2(t)&lt;br /&gt;
Ay=y(1,:)-y(2,:); %euler&lt;br /&gt;
Az=z(1,:)-z(2,:); %runge-kutta&lt;br /&gt;
 &lt;br /&gt;
figure(1)&lt;br /&gt;
hold on&lt;br /&gt;
plot(t,Ay) %concentración de C por euler&lt;br /&gt;
plot(t,y(2,:),'r') %concentración de D por euler&lt;br /&gt;
plot(t,Az,'k') %concentración de C por runge-kutta&lt;br /&gt;
plot(t,z(2,:),'g') %concentración de D por runge-kutta&lt;br /&gt;
legend('concentración de C por euler','concentración de D por euler','concentración de C por runge-kutta','concentración de D por runge-kutta','Location','best')&lt;br /&gt;
hold off&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:graficoa.jpeg|500px|miniaturadeimagen|center|Reacción compleja]]&lt;br /&gt;
&lt;br /&gt;
Se observa que en en los primeros instantes aumentan las concentraciones de &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; aumentan sus concentraciones. Antes de que pase 1 segundo, la concentración &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; alcanza un máximo (de unos 0.3 molar) y va disminuyendo progresivamente hasta alcanzar un valor de 0 molar. La concentración &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; sigue creciendo hasta llegar a 1 molar. Una vez que tanto &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; como &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; alcanzan estos valores, se estabiliza la reacción. &lt;br /&gt;
&lt;br /&gt;
Como hemos impuesto que la reacción &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; es más rápida que &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt;, se observa que &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; empieza creciendo más rápidamente, pero como reacciona más despacio que &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; su concentración disminuye progresivamente, mientras que la de &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; aumenta.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''CASO'''  &amp;lt;math&amp;gt;k_2=5  &amp;lt;/math&amp;gt;   '''h=0.3''' &lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
&lt;br /&gt;
%datos&lt;br /&gt;
y0=[0;0];&lt;br /&gt;
z0=[0;0];&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=10;&lt;br /&gt;
h=0.3;&lt;br /&gt;
 &lt;br /&gt;
%variable independiente t&lt;br /&gt;
t=t0:h:tN;&lt;br /&gt;
 &lt;br /&gt;
%matriz de las soluciones&lt;br /&gt;
y=zeros(2,length(t)); %euler&lt;br /&gt;
y(:,1)=y0;&lt;br /&gt;
 &lt;br /&gt;
z=zeros(2,length(t)); %runge-kutta&lt;br /&gt;
z(:,1)=y0;&lt;br /&gt;
 &lt;br /&gt;
for i=1:length(t)-1&lt;br /&gt;
 %euler&lt;br /&gt;
 y(:,i+1)=y(:,i)+h*[1*(3-y(1,i))*(1-y(1,i)); 5*(y(1,i)-y(2,i))];&lt;br /&gt;
 %runge-kutta&lt;br /&gt;
 K1=[1*(3-z(1,i))*(1-z(1,i)); 5*(z(1,i)-z(2,i))];&lt;br /&gt;
 K2=[1*(3-(z(1,i)+h/2*K1(1)))*(1-(z(1,i)+h/2*K1(1))); 5*((y(1,i)+h/2*K1(2))-(y(2,i)+h/2*K1(2)))];&lt;br /&gt;
 K3=[1*(3-(z(1,i)+h/2*K2(1)))*(1-(z(1,i)+h/2*K2(1))); 5*((y(1,i)+h/2*K2(2))-(y(2,i)+h/2*K2(2)))];&lt;br /&gt;
 K4=[1*(3-(z(1,i)+h*K3(1)))*(1-(z(1,i)+h*K3(1))); 5*((y(1,i)+h*K3(2))-(y(2,i)+h*K3(2)))];&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;
% se calcula la concentración de C=y1t)-y2(t)&lt;br /&gt;
Ay=y(1,:)-y(2,:); %euler&lt;br /&gt;
Az=z(1,:)-z(2,:); %runge-kutta&lt;br /&gt;
 &lt;br /&gt;
figure(1)&lt;br /&gt;
hold on&lt;br /&gt;
plot(t,Ay) %concentración de C por euler&lt;br /&gt;
plot(t,y(2,:),'r') %concentración de D por euler&lt;br /&gt;
plot(t,Az,'k') %concentración de C por runge-kutta&lt;br /&gt;
plot(t,z(2,:),'g') %concentración de D por runge-kutta&lt;br /&gt;
legend('concentración de C por euler','concentración de D por euler','concentración de C por runge-kutta','concentración de D por runge-kutta','Location','best')&lt;br /&gt;
hold off&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:graficob.jpeg|500px|miniaturadeimagen|center|Reacción compleja]]&lt;br /&gt;
&lt;br /&gt;
Repetimos el programa pero para un tamaño de paso mayor, de '''h=0.3''', y observamos que no  es suficientemente preciso, sobre todo al principio, no se puede analizar bien lo que está pasando en la reacción.&lt;br /&gt;
&lt;br /&gt;
==La reacción D es más lenta que la reacción C==&lt;br /&gt;
&lt;br /&gt;
CASO  &amp;lt;math&amp;gt;k_1 &amp;lt;/math&amp;gt;=1,   &amp;lt;math&amp;gt;k_2 &amp;lt;/math&amp;gt;=1/5&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
&lt;br /&gt;
%datos&lt;br /&gt;
y0=[0;0];&lt;br /&gt;
z0=[0;0];&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;
%matriz de las soluciones&lt;br /&gt;
y=zeros(2,length(t)); %euler&lt;br /&gt;
y(:,1)=y0;&lt;br /&gt;
 &lt;br /&gt;
z=zeros(2,length(t)); %runge-kutta&lt;br /&gt;
z(:,1)=y0;&lt;br /&gt;
 &lt;br /&gt;
for i=1:length(t)-1&lt;br /&gt;
 %euler&lt;br /&gt;
 y(:,i+1)=y(:,i)+h*[1*(3-y(1,i))*(1-y(1,i)); 1/5*(y(1,i)-y(2,i))];&lt;br /&gt;
 %runge-kutta&lt;br /&gt;
 K1=[1*(3-z(1,i))*(1-z(1,i)); 1/5*(z(1,i)-z(2,i))];&lt;br /&gt;
 K2=[1*(3-(z(1,i)+h/2*K1(1)))*(1-(z(1,i)+h/2*K1(1))); 1/5*((y(1,i)+h/2*K1(2))-(y(2,i)+h/2*K1(2)))];&lt;br /&gt;
 K3=[1*(3-(z(1,i)+h/2*K2(1)))*(1-(z(1,i)+h/2*K2(1))); 1/5*((y(1,i)+h/2*K2(2))-(y(2,i)+h/2*K2(2)))];&lt;br /&gt;
 K4=[1*(3-(z(1,i)+h*K3(1)))*(1-(z(1,i)+h*K3(1))); 1/5*((y(1,i)+h*K3(2))-(y(2,i)+h*K3(2)))];&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;
% se calcula la concentración de C=y1t)-y2(t)&lt;br /&gt;
Ay=y(1,:)-y(2,:); %euler&lt;br /&gt;
Az=z(1,:)-z(2,:); %runge-kutta&lt;br /&gt;
 &lt;br /&gt;
figure(1)&lt;br /&gt;
hold on&lt;br /&gt;
plot(t,Ay) %concentración de C por euler&lt;br /&gt;
plot(t,y(2,:),'r') %concentración de D por euler&lt;br /&gt;
plot(t,Az,'k') %concentración de C por runge-kutta&lt;br /&gt;
plot(t,z(2,:),'g') %concentración de D por runge-kutta&lt;br /&gt;
legend('concentración de C por euler','concentración de D por euler','concentración de C por runge-kutta','concentración de D por runge-kutta','Location','best')&lt;br /&gt;
hold off&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:graficoc.jpeg|500px|miniaturadeimagen|center|Reacción compleja]]&lt;br /&gt;
&lt;br /&gt;
Si ahora imponemos que la reacción  &amp;lt;math&amp;gt;C &amp;lt;/math&amp;gt; es más rápida que  &amp;lt;math&amp;gt;D &amp;lt;/math&amp;gt;, obtenemos lo siguiente. Se parece a la gráfica que obtuvimos en el programa anterior, pero  más extendida en el tiempo, más lenta.  &amp;lt;math&amp;gt;C &amp;lt;/math&amp;gt; alcanza una concentración máxima de unos 0.8 molar antes de empezar a decrecer a medida que avanza el tiempo y acercándose a un valor de '''0''' molar.  &amp;lt;math&amp;gt;D &amp;lt;/math&amp;gt; crece más lentamente que en la gráfica anterior, pero se aproxima al mismo valor, '''1''' molar.&lt;br /&gt;
Se observa que aunque hagamos la reacción  &amp;lt;math&amp;gt;C &amp;lt;/math&amp;gt; más rápida, tenemos las mismas concentraciones finales, pero tardan más tiempo en obtenerse, ya que la reacción tarda más en estabilizarse.&lt;br /&gt;
&lt;br /&gt;
&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>Joseva</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Reacciones_complejas_(Grupo_D1)&amp;diff=27777</id>
		<title>Reacciones complejas (Grupo D1)</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Reacciones_complejas_(Grupo_D1)&amp;diff=27777"/>
				<updated>2015-03-06T11:35:36Z</updated>
		
		<summary type="html">&lt;p&gt;Joseva: /* Método del Trapecio y Método de Runge-Kutta */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{ TrabajoED | Reacciones complejas (Grupo D1) | [[:Categoría:Ecuaciones Diferenciales|Ecuaciones Diferenciales]]|[[:Categoría:ED14/15|Curso 2014-15]] | Rincón Crespo, Kevin&lt;br /&gt;
&lt;br /&gt;
Rodríguez Gómez, Javier&lt;br /&gt;
&lt;br /&gt;
Sans Jiménez, Alejandro&lt;br /&gt;
&lt;br /&gt;
Sesto Muñoz, María Victoria&lt;br /&gt;
&lt;br /&gt;
Vallejo Asín, José Manuel &lt;br /&gt;
&lt;br /&gt;
Villarino Redondo, Álvaro }}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=Introducción=&lt;br /&gt;
Se considera una reacción química irreversible en una solución bien mezclada. Supondremos que la reacción ocurre para un volumen y temperatura constantes. Al inicio se encuentran dos reactivos &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;B&amp;lt;/math&amp;gt;, que van formando un producto &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; en lo que se conoce como una reacción bimolecular, es decir, una molécula de &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt; y una de &amp;lt;math&amp;gt;B&amp;lt;/math&amp;gt; producen una de &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt;.: &lt;br /&gt;
                                                                     &amp;lt;math&amp;gt;A + B → C&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Supondremos también que se satisface la ley de acción de masas, que establece que la velocidad de reacción es proporcional al producto de las concentraciones de los reactivos.&lt;br /&gt;
&lt;br /&gt;
=Concentración del reactivo &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; a lo largo del tiempo=&lt;br /&gt;
En primer lugar, suponiendo que la reacción es irreversible, es decir, que &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; no puede volver a formar &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;B&amp;lt;/math&amp;gt;, se puede expresar la situación mediante el siguiente problema de valor inicial, cuando t&amp;gt;0.:&lt;br /&gt;
   &amp;lt;math&amp;gt;&lt;br /&gt;
   \left . &lt;br /&gt;
      \begin{matrix} &lt;br /&gt;
         y'(t)={k_{1}}({a_{0}}-y(t))({b_{0}}-y(t))=0\\&lt;br /&gt;
         y(0)=0&lt;br /&gt;
      \end{matrix}&lt;br /&gt;
   \right \}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Donde &amp;lt;math&amp;gt; {a_{0}}&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;{b_{0}}&amp;lt;/math&amp;gt; representan las concentraciones iniciales de '''A''' y '''B''' respectivamente y &amp;lt;math&amp;gt;{k_{1}}&amp;lt;/math&amp;gt; es la constante de proporcionalidad que indica la ley de acción de masas. &amp;lt;math&amp;gt;y’(t)&amp;lt;/math&amp;gt; representa la velocidad de reacción, es decir, la velocidad con que se forma el producto &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; ; mientras que la solución de la ecuación diferencial, &amp;lt;math&amp;gt;y(t)&amp;lt;/math&amp;gt; , representa la concentración de &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt;, la cantidad de compuesto que se ha formado. Para comprobar que la solución de este problema de Cauchy es única, comenzamos definiendo.:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;math&amp;gt;f(t,y)={k_{1}}({a_{0}}-y(t))({b_{0}}-y(t))=0,   t&amp;gt;0 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Observamos que &amp;lt;math&amp;gt;f(t,y)&amp;lt;/math&amp;gt; es continua en el intervalo &amp;lt;math&amp;gt; I=(0,∞)∩B((0,0),r&amp;gt;0)&amp;lt;/math&amp;gt;, por lo que ya aseguramos la existencia de al menos una solución. Examinando la derivada parcial.:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\frac{∂f}{∂y}=k_1(-a_0-b_0+2y)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Se deduce que al ser un polinomio no va a haber problemas de continuidad para ninguna bola. De esta forma, podemos asegurar que existe una única solución.&lt;br /&gt;
&lt;br /&gt;
==Concentración del reactivo C a lo largo del tiempo en un proceso reversible==&lt;br /&gt;
&lt;br /&gt;
Ahora bien, ¿qué pasaría si la reacción fuese reversible? Con esto lo que queremos indicar es que además de formarse  &amp;lt;math&amp;gt;C &amp;lt;/math&amp;gt;, este también se descompone de nuevo en  &amp;lt;math&amp;gt;A &amp;lt;/math&amp;gt; y  &amp;lt;math&amp;gt;B &amp;lt;/math&amp;gt;. Por lo tanto, nos quedaría una ecuación diferencial con la siguiente forma, cuando &amp;lt;math&amp;gt;t&amp;gt;0 &amp;lt;/math&amp;gt;. :&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; y'(t)={k_{1}}({a_{0}}-y(t))({b_{0}}-y(t))-Cy(t)&amp;lt;/math&amp;gt;  &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Si nos fijamos, la modificación es sencillamente restar  &amp;lt;math&amp;gt;y(t) &amp;lt;/math&amp;gt; multiplicada por una constante, la cual refleja qué porcentaje de  &amp;lt;math&amp;gt;C &amp;lt;/math&amp;gt; se va descomponiendo a medida que se da, simultáneamente, la reacción  &amp;lt;math&amp;gt;A + B → C &amp;lt;/math&amp;gt;. Sin embargo, esta constante no puede tener cualquier valor, ya que en una reacción se cumple la conservación de masa. Por ello, a  &amp;lt;math&amp;gt;C &amp;lt;/math&amp;gt; le asociaremos el siguiente dominio::&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;C∈(0,1)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Obsérvese que  &amp;lt;math&amp;gt;C &amp;lt;/math&amp;gt; tiene que ser mayor que 0 para que sea reversible, pero al mismo tiempo inferior que 1, ya que si no se estaría descomponiendo más compuesto  &amp;lt;math&amp;gt;C &amp;lt;/math&amp;gt; del que realmente se ha formado, en otras palabras, estaría apareciendo masa de la nada.&lt;br /&gt;
&lt;br /&gt;
=Método de Euler=&lt;br /&gt;
&lt;br /&gt;
Una vez llegados a este punto, se procede a ver una interpretación gráfica de la reacción. Para ello, se refleja en la gráfica (en un intervalo de 2 segundos), cómo varían las concentraciones tanto de &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt; (&amp;lt;math&amp;gt;a_0&amp;lt;/math&amp;gt;=3 mol/L) y &amp;lt;math&amp;gt;B&amp;lt;/math&amp;gt; (&amp;lt;math&amp;gt;b_0&amp;lt;/math&amp;gt;=1 mol/L) como de &amp;lt;math&amp;gt; C&amp;lt;/math&amp;gt;, para una &amp;lt;math&amp;gt;k_1&amp;lt;/math&amp;gt;=1 mol/s. Se comienza, por el momento, aplicando el método de Euler. Posteriormente se utilizarán métodos más precisos.&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo= &lt;br /&gt;
% Euler&lt;br /&gt;
clear all&lt;br /&gt;
% datos del problema&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=2;&lt;br /&gt;
y0=0;&lt;br /&gt;
h=0.1;&lt;br /&gt;
k1=1;&lt;br /&gt;
a0=3;&lt;br /&gt;
b0=1;&lt;br /&gt;
% Definimos la variable independiente&lt;br /&gt;
t=t0:h:tN;&lt;br /&gt;
% Guardamos los valores de la solución aproximada en el vector &amp;quot;y1&amp;quot; y&lt;br /&gt;
% establecemos los vectores de concentraciones A y B&lt;br /&gt;
y1=zeros(1,length(t)); &lt;br /&gt;
y1(1)=y0;&lt;br /&gt;
a1=zeros(1,length(t));&lt;br /&gt;
a1(1)=a0;&lt;br /&gt;
b1=zeros(1,length(t));&lt;br /&gt;
b1(1)=b0;&lt;br /&gt;
% A continuación, calculamos las componentes de los vectores y1, a1 y b1&lt;br /&gt;
for i=1:length(t)-1&lt;br /&gt;
    y1(i+1)=y1(i)+h*(k1*(a0-y1(i))*(b0-y1(i)));    %Euler&lt;br /&gt;
    a1(i+1)=a0-y1(i+1); % evolución de la concentración de A&lt;br /&gt;
    b1(i+1)=b0-y1(i+1); % evolución de la concentración de B&lt;br /&gt;
end&lt;br /&gt;
%grafico &lt;br /&gt;
figure(1)&lt;br /&gt;
hold on&lt;br /&gt;
plot(t,y1,'g')&lt;br /&gt;
plot(t,a1,'r')&lt;br /&gt;
plot(t,b1,'b')&lt;br /&gt;
legend('concentración de C','concentración de A','concentración de B','location','best')&lt;br /&gt;
hold off &lt;br /&gt;
%en verde se muestra la concentración de C, en rojo la de A, y en azul la de B&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Archivo:3euler.jpeg|500px|miniaturadeimagen|center|Reacción compleja]]&lt;br /&gt;
&lt;br /&gt;
Aunque con observar los resultados ya podemos decir con casi absoluta seguridad cuáles son los límites de las concentraciones de cada reactivo &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;B&amp;lt;/math&amp;gt; y del producto &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt;, se ha diseñado un programa que, mediante diferencia de valores sucesivos de la variable &amp;lt;math&amp;gt;y(t)&amp;lt;/math&amp;gt;, nos devuelve el valor de la función cuando dicha diferencia es muy pequeña '''(se ha puesto una diferencia de 0.001)''', es decir, cuando tenemos una asíntota al tender &amp;lt;math&amp;gt;t→∞&amp;lt;/math&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
%Estudio de las asíntotas&lt;br /&gt;
t1=t0:h:10;%se aumenta la longitud de t, y se estima que se alcanzarán las asíntotas antes de t=10&lt;br /&gt;
y_=zeros(1,length(t1)); %se define un vector y_ idéntico a y1 pero con t hasta 10&lt;br /&gt;
a_=y_;&lt;br /&gt;
b_=y_;&lt;br /&gt;
y_(1)=y0;&lt;br /&gt;
a_(1)=a0;&lt;br /&gt;
b_(1)=b0;&lt;br /&gt;
for i=1:length(t1)-1&lt;br /&gt;
    y_(i+1)=y_(i)+h*(k1*(a0-y_(i))*(b0-y_(i)));&lt;br /&gt;
    diferencia=y_(i+1)-y_(i);&lt;br /&gt;
    if abs(diferencia)&amp;lt;=0.001&lt;br /&gt;
        limC=y_(i+1)&lt;br /&gt;
        break&lt;br /&gt;
    end&lt;br /&gt;
end&lt;br /&gt;
for i=1:length(t1)-1&lt;br /&gt;
    y_(i+1)=y_(i)+h*(k1*(a0-y_(i))*(b0-y_(i)));    &lt;br /&gt;
    a_(i+1)=a0-y_(i+1);&lt;br /&gt;
    diferencia2=a_(i+1)-a_(i);&lt;br /&gt;
    if abs(diferencia2)&amp;lt;=0.001&lt;br /&gt;
        limA=a_(i+1)&lt;br /&gt;
        break&lt;br /&gt;
    end&lt;br /&gt;
end&lt;br /&gt;
for i=1:length(t1)-1&lt;br /&gt;
    y_(i+1)=y_(i)+h*(k1*(a0-y_(i))*(b0-y_(i)));    &lt;br /&gt;
    b_(i+1)=b0-y_(i+1);&lt;br /&gt;
    diferencia3=b_(i+1)-b_(i);&lt;br /&gt;
    if abs(diferencia3)&amp;lt;=0.001&lt;br /&gt;
        limB=b_(i+1)&lt;br /&gt;
        break&lt;br /&gt;
    end&lt;br /&gt;
end&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
Que nos devuelve unos valores de las concentraciones para el límite de:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\lim A=2,0036≈2 mol/L&amp;lt;/math&amp;gt;:     &lt;br /&gt;
&amp;lt;math&amp;gt;\lim B=0,0036≈0mol/L&amp;lt;/math&amp;gt;:         &lt;br /&gt;
&amp;lt;math&amp;gt;\lim C=0,9964≈1mol/L&amp;lt;/math&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
Lo cual es lógico, ya que &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;B&amp;lt;/math&amp;gt; se combinan en una proporción de 1:1, luego &amp;lt;math&amp;gt;B&amp;lt;/math&amp;gt;, que tiene una concentración inicial de &amp;lt;math&amp;gt;b_0&amp;lt;/math&amp;gt;=1, será el reactivo limitante (el que desaparecerá por completo), mientras que &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt;, con &amp;lt;math&amp;gt;a_0&amp;lt;/math&amp;gt;=3, acabará con una concentración molar final igual a 2, y &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt;, del que no habia nada,alcanza una concentraccion de &amp;lt;math&amp;gt;1mol/L&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
= Método del Trapecio y Método de Runge-Kutta=&lt;br /&gt;
&lt;br /&gt;
A continuación, para obtener con más precisión las representaciones gráficas de las respectivas concentraciones, se opta por utilizar los métodos de los &amp;lt;math&amp;gt;Trapecios&amp;lt;/math&amp;gt; (segundo orden) y de &amp;lt;math&amp;gt;Runge-Kutta&amp;lt;/math&amp;gt; (cuarto orden). Además, se ha obtenido la expresión explícita de la solución de nuestro problema de valor inicial de manera analítica, mediante variables separables y fracciones simples, resultando la función real::&lt;br /&gt;
&amp;lt;math&amp;gt;y_e(t)=\frac{3e^{2t}-3}{3e^{2t}-1}&amp;lt;/math&amp;gt;&lt;br /&gt;
De manera que las concentraciones de A y de B en cada valor de t quedarían como::&lt;br /&gt;
&amp;lt;math&amp;gt;a_e(t)=a_0-y_e(t)&amp;lt;/math&amp;gt;:&lt;br /&gt;
&amp;lt;math&amp;gt;b_e (t)=b_0-y_e (t)&amp;lt;/math&amp;gt;:&lt;br /&gt;
Para los trapecios, al ser un método implícito, es necesario despejar la componente &amp;lt;math&amp;gt;y_{n+1}&amp;lt;/math&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;y_{n+1}=\frac{(1+\frac{h}{2}∙k_1∙(a_0+b_0))-\sqrt{(1+\frac{h}{2}∙k_1∙(a_0+b_0))^2 -2∙h∙k_1(y_n+\frac{h}{2}∙k_1∙(a_0-y_n )∙(b_0-y_n)+\frac{h}{2}∙k_1∙a_0∙b_0) }}{k_1∙h}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Cabe destacar que este programa parte de los datos ya establecidos en el programa de Euler para '''t0, tN, y0, a0, b0, k1 y h''':&lt;br /&gt;
{{matlab|codigo= &lt;br /&gt;
%Función real&lt;br /&gt;
ye=(3*exp(2.*t)-3)./(3*exp(2.*t)-1);&lt;br /&gt;
ae=a0-ye;&lt;br /&gt;
be=b0-ye;&lt;br /&gt;
&lt;br /&gt;
%Trapecios&lt;br /&gt;
y2=zeros(1,length(t)); &lt;br /&gt;
a2=y2;&lt;br /&gt;
b2=y2;&lt;br /&gt;
y2(1)=y0;&lt;br /&gt;
a2(1)=a0;&lt;br /&gt;
b2(1)=b0;&lt;br /&gt;
for i= 1:length(t)-1&lt;br /&gt;
    y2(i+1)=((1+0.5*h*k1*(a0+b0))-sqrt((1+0.5*h*k1*(a0+b0))^2-2*h*k1*(y2(i)+0.5*h*k1*(a0-y2(i))*(b0-y2(i))+0.5*h*k1*a0*b0)))/(k1*h);&lt;br /&gt;
a2(i+1)=a0-y2(i+1);&lt;br /&gt;
b2(i+1)=b0-y2(i+1);&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
%Runge-Kutta&lt;br /&gt;
y3=zeros(1,length(t)); &lt;br /&gt;
a3=y3;&lt;br /&gt;
b3=y3;&lt;br /&gt;
y3(1)=y0;&lt;br /&gt;
a3(1)=a0;&lt;br /&gt;
b3(1)=b0;&lt;br /&gt;
fori=1:length(t)-1 &lt;br /&gt;
    r1=k1*(a0-y3(i))*(b0-y3(i));&lt;br /&gt;
    r2=k1*(a0-y3(i)-0.5*r1*h)*(b0-y3(i)-0.5*r1*h);&lt;br /&gt;
    r3=k1*(a0-y3(i)-0.5*r2*h)*(b0-y3(i)-0.5*r2*h);&lt;br /&gt;
    r4=k1*(a0-y3(i)-r3*h)*(b0-y3(i)-r3*h);&lt;br /&gt;
y3(i+1)=y3(i)+h/6*(r1+2*r2+2*r3+r4);&lt;br /&gt;
a3(i+1)=a0-y3(i+1);&lt;br /&gt;
b3(i+1)=b0-y3(i+1);&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
%se pintan las cuatro gráficas, con la función real en verde y los puntos con asteriscos, &lt;br /&gt;
%Euler en rojo, los Trapecios en azul, y Runge-Kutta en negro&lt;br /&gt;
figure(2)&lt;br /&gt;
hold on&lt;br /&gt;
&lt;br /&gt;
plot(t,ye,'g*-')&lt;br /&gt;
plot(t,y2)&lt;br /&gt;
plot(t,y3,'k')&lt;br /&gt;
plot(t,y1,'r')&lt;br /&gt;
legend('Función real','Trapecios', 'Runge-Kutta', 'Euler','Location','best');&lt;br /&gt;
plot(t,ae,'g*')&lt;br /&gt;
plot(t,a2)&lt;br /&gt;
plot(t,a3,'k')&lt;br /&gt;
plot(t,a1,'r')&lt;br /&gt;
plot(t,be,'g*')&lt;br /&gt;
plot(t,b2)&lt;br /&gt;
plot(t,b3,'k')&lt;br /&gt;
plot(t,b1,'r')&lt;br /&gt;
hold off&lt;br /&gt;
&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
Los resultados del programa se muestran en las dos siguientes figuras. Como podemos observar, el método de '''Euler''', en &amp;lt;span style=&amp;quot;color:#FF0000;&amp;quot;&amp;gt;Rojo&amp;lt;/span&amp;gt;, rápidamente se separa de los demás y de la función real, lo que es debido a que es un método de orden 1 y su precisión es bastante reducida. Para analizar el comportamiento de los otros dos métodos, se ha hecho un zoom en una zona aleatoria de la gráfica, y se muestra en la figura 2. Lo lógico, debido a que es de orden 2, es que el método de los trapecios sea el siguiente que se aleje de la solución real, y esto es precisamente lo que se evidencia en la gráfica, pues como vemos, la línea &amp;lt;span style=&amp;quot;color:#0000FF;&amp;quot;&amp;gt;Azul&amp;lt;/span&amp;gt; se separa de la '''negra''' y de la &amp;lt;span style=&amp;quot;color:#00FF00;&amp;quot;&amp;gt;Verde&amp;lt;/span&amp;gt;. Es por tanto que el método de '''Runge-Kutta''' es el más preciso de todos, haciendo honor a su cuarto orden, y como podemos observar, las líneas &amp;lt;span style=&amp;quot;color:#00FF00;&amp;quot;&amp;gt;Verde&amp;lt;/span&amp;gt; y '''negra''' son casi indistinguibles. &lt;br /&gt;
&lt;br /&gt;
Es importante también atender a la escala que se muestra en la figura 2, que nos da una idea de los rangos en el eje de ordenadas de los que estamos hablando. Cabe decir que estamos trabajando con un paso de h=0.1, lo que significa que con un paso menor, estas diferencias serian mucho menos perceptibles.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Archivo:4trapeciokung.jpeg|500px|miniaturadeimagen|center|Reacción compleja]]&lt;br /&gt;
&lt;br /&gt;
[[Archivo:4comparacion.jpeg|500px|miniaturadeimagen|center|Gráfico 2]]&lt;br /&gt;
&lt;br /&gt;
=Reacción consecutiva=&lt;br /&gt;
&lt;br /&gt;
Consideremos ahora que se produce una reacción consecutiva de la forma.: &lt;br /&gt;
&lt;br /&gt;
                                                                   &amp;lt;math&amp;gt;A + B → k_1C → k_2D&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
De tal modo que los reactivos &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;B&amp;lt;/math&amp;gt; se combinan en la proporción 1:1 para formar compuesto &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt;, el cual, a su vez, se va descomponiendo para formar compuesto &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt;. Al igual que se ha hecho antes al analizar las otras reacciones, se considerará que se cumple la ley de acción de masas. Es decir, la velocidad con la que se forma compuesto &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; es proporcional a las concentraciones existentes de &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt; y de &amp;lt;math&amp;gt;B&amp;lt;/math&amp;gt; y del mismo modo la de formación de la sustancia &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; lo es a la concentración de &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; que se ha ido formando.&lt;br /&gt;
&lt;br /&gt;
Esta reacción consecutiva está representada por el siguiente problema de valor inicial::&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;&lt;br /&gt;
   \left . &lt;br /&gt;
      \begin{matrix} &lt;br /&gt;
         y'_1(t)={k_{1}}({a_{0}}-y_1(t))({b_{0}}-y_1(t))\\&lt;br /&gt;
         y'_2(t)={k_{2}}(y_1(t)-y_2(t))\\&lt;br /&gt;
y_1(0)=0\\y_2(0)=0&lt;br /&gt;
      \end{matrix}&lt;br /&gt;
   \right \}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
Donde &amp;lt;math&amp;gt;a_0&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;b_0&amp;lt;/math&amp;gt; representan las concentraciones iniciales de &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;B&amp;lt;/math&amp;gt; respectivamente, &amp;lt;math&amp;gt;k_1&amp;lt;/math&amp;gt; es la constante de proporcionalidad que rige la primera reacción y &amp;lt;math&amp;gt;k_2&amp;lt;/math&amp;gt; la que rige la segunda reacción o reacción consecutiva. &amp;lt;math&amp;gt;y_1’(t)&amp;lt;/math&amp;gt; e  &amp;lt;math&amp;gt;y_2’(t)&amp;lt;/math&amp;gt; representan las velocidades de las reacciones, es decir, las velocidades con que se forman los productos &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt;. &amp;lt;math&amp;gt;y_2(t)&amp;lt;/math&amp;gt; representa la concentración del producto &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; pero es importante apreciar que en este caso &amp;lt;math&amp;gt;y_1(t)&amp;lt;/math&amp;gt; no nos da el valor de la concentración de &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; directamente, sino que ésta será &amp;lt;math&amp;gt;y_1(t)&amp;lt;/math&amp;gt;- &amp;lt;math&amp;gt;y_2(t)&amp;lt;/math&amp;gt;, la cantidad que se forma en la primera reacción menos la que se emplea para formar el producto &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; en la segunda.&lt;br /&gt;
&lt;br /&gt;
Este problema se va a resolver para dos casos diferentes. Uno en el cual se considera que la segunda reacción es más rápida que la primera, lo que supone tomar un valor de la constante &amp;lt;math&amp;gt;k_2&amp;lt;/math&amp;gt;  mayor que &amp;lt;math&amp;gt;k_1&amp;lt;/math&amp;gt;. Y otro en el cual se considera que es más lenta, lo que implica que &amp;lt;math&amp;gt;k_2&amp;lt;/math&amp;gt; es menor que &amp;lt;math&amp;gt;k_1&amp;lt;/math&amp;gt;. Concretamente vamos a tomar los siguientes valores para resolver el problema numéricamente; &amp;lt;math&amp;gt;a_0&amp;lt;/math&amp;gt;=3 ,  &amp;lt;math&amp;gt;b_0&amp;lt;/math&amp;gt;=1, &amp;lt;math&amp;gt;k_1&amp;lt;/math&amp;gt;=1,  &amp;lt;math&amp;gt;k_2&amp;lt;/math&amp;gt;=5, &amp;lt;math&amp;gt;k_2&amp;lt;/math&amp;gt;=1/5, .En ambos casos se resuelve para los primeros 10 segundos.&lt;br /&gt;
&lt;br /&gt;
==La reacción D es más rápida que la reacción C==&lt;br /&gt;
CASO    &amp;lt;math&amp;gt;k_1=5  &amp;lt;/math&amp;gt;   '''h=0.1''' &lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
&lt;br /&gt;
%datos&lt;br /&gt;
y0=[0;0];&lt;br /&gt;
z0=[0;0];&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;
%matriz de las soluciones&lt;br /&gt;
y=zeros(2,length(t)); %euler&lt;br /&gt;
y(:,1)=y0;&lt;br /&gt;
 &lt;br /&gt;
z=zeros(2,length(t)); %runge-kutta&lt;br /&gt;
z(:,1)=y0;&lt;br /&gt;
 &lt;br /&gt;
for i=1:length(t)-1&lt;br /&gt;
 %euler&lt;br /&gt;
 y(:,i+1)=y(:,i)+h*[1*(3-y(1,i))*(1-y(1,i)); 5*(y(1,i)-y(2,i))];&lt;br /&gt;
 %runge-kutta&lt;br /&gt;
 K1=[1*(3-z(1,i))*(1-z(1,i)); 5*(z(1,i)-z(2,i))];&lt;br /&gt;
 K2=[1*(3-(z(1,i)+h/2*K1(1)))*(1-(z(1,i)+h/2*K1(1))); 5*((y(1,i)+h/2*K1(2))-(y(2,i)+h/2*K1(2)))];&lt;br /&gt;
 K3=[1*(3-(z(1,i)+h/2*K2(1)))*(1-(z(1,i)+h/2*K2(1))); 5*((y(1,i)+h/2*K2(2))-(y(2,i)+h/2*K2(2)))];&lt;br /&gt;
 K4=[1*(3-(z(1,i)+h*K3(1)))*(1-(z(1,i)+h*K3(1))); 5*((y(1,i)+h*K3(2))-(y(2,i)+h*K3(2)))];&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;
% se calcula la concentración de C=y1t)-y2(t)&lt;br /&gt;
Ay=y(1,:)-y(2,:); %euler&lt;br /&gt;
Az=z(1,:)-z(2,:); %runge-kutta&lt;br /&gt;
 &lt;br /&gt;
figure(1)&lt;br /&gt;
hold on&lt;br /&gt;
plot(t,Ay) %concentración de C por euler&lt;br /&gt;
plot(t,y(2,:),'r') %concentración de D por euler&lt;br /&gt;
plot(t,Az,'k') %concentración de C por runge-kutta&lt;br /&gt;
plot(t,z(2,:),'g') %concentración de D por runge-kutta&lt;br /&gt;
legend('concentración de C por euler','concentración de D por euler','concentración de C por runge-kutta','concentración de D por runge-kutta','Location','best')&lt;br /&gt;
hold off&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:graficoa.jpeg|500px|miniaturadeimagen|center|Reacción compleja]]&lt;br /&gt;
&lt;br /&gt;
Se observa que en en los primeros instantes aumentan las concentraciones de &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; aumentan sus concentraciones. Antes de que pase 1 segundo, la concentración &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; alcanza un máximo (de unos 0.3 molar) y va disminuyendo progresivamente hasta alcanzar un valor de 0 molar. La concentración &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; sigue creciendo hasta llegar a 1 molar. Una vez que tanto &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; como &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; alcanzan estos valores, se estabiliza la reacción. &lt;br /&gt;
&lt;br /&gt;
Como hemos impuesto que la reacción &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; es más rápida que &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt;, se observa que &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; empieza creciendo más rápidamente, pero como reacciona más despacio que &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; su concentración disminuye progresivamente, mientras que la de &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; aumenta.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''CASO'''  &amp;lt;math&amp;gt;k_2=5  &amp;lt;/math&amp;gt;   '''h=0.3''' &lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
&lt;br /&gt;
%datos&lt;br /&gt;
y0=[0;0];&lt;br /&gt;
z0=[0;0];&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=10;&lt;br /&gt;
h=0.3;&lt;br /&gt;
 &lt;br /&gt;
%variable independiente t&lt;br /&gt;
t=t0:h:tN;&lt;br /&gt;
 &lt;br /&gt;
%matriz de las soluciones&lt;br /&gt;
y=zeros(2,length(t)); %euler&lt;br /&gt;
y(:,1)=y0;&lt;br /&gt;
 &lt;br /&gt;
z=zeros(2,length(t)); %runge-kutta&lt;br /&gt;
z(:,1)=y0;&lt;br /&gt;
 &lt;br /&gt;
for i=1:length(t)-1&lt;br /&gt;
 %euler&lt;br /&gt;
 y(:,i+1)=y(:,i)+h*[1*(3-y(1,i))*(1-y(1,i)); 5*(y(1,i)-y(2,i))];&lt;br /&gt;
 %runge-kutta&lt;br /&gt;
 K1=[1*(3-z(1,i))*(1-z(1,i)); 5*(z(1,i)-z(2,i))];&lt;br /&gt;
 K2=[1*(3-(z(1,i)+h/2*K1(1)))*(1-(z(1,i)+h/2*K1(1))); 5*((y(1,i)+h/2*K1(2))-(y(2,i)+h/2*K1(2)))];&lt;br /&gt;
 K3=[1*(3-(z(1,i)+h/2*K2(1)))*(1-(z(1,i)+h/2*K2(1))); 5*((y(1,i)+h/2*K2(2))-(y(2,i)+h/2*K2(2)))];&lt;br /&gt;
 K4=[1*(3-(z(1,i)+h*K3(1)))*(1-(z(1,i)+h*K3(1))); 5*((y(1,i)+h*K3(2))-(y(2,i)+h*K3(2)))];&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;
% se calcula la concentración de C=y1t)-y2(t)&lt;br /&gt;
Ay=y(1,:)-y(2,:); %euler&lt;br /&gt;
Az=z(1,:)-z(2,:); %runge-kutta&lt;br /&gt;
 &lt;br /&gt;
figure(1)&lt;br /&gt;
hold on&lt;br /&gt;
plot(t,Ay) %concentración de C por euler&lt;br /&gt;
plot(t,y(2,:),'r') %concentración de D por euler&lt;br /&gt;
plot(t,Az,'k') %concentración de C por runge-kutta&lt;br /&gt;
plot(t,z(2,:),'g') %concentración de D por runge-kutta&lt;br /&gt;
legend('concentración de C por euler','concentración de D por euler','concentración de C por runge-kutta','concentración de D por runge-kutta','Location','best')&lt;br /&gt;
hold off&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:graficob.jpeg|500px|miniaturadeimagen|center|Reacción compleja]]&lt;br /&gt;
&lt;br /&gt;
Repetimos el programa pero para un tamaño de paso mayor, de '''h=0.3''', y observamos que no  es suficientemente preciso, sobre todo al principio, no se puede analizar bien lo que está pasando en la reacción.&lt;br /&gt;
&lt;br /&gt;
==La reacción D es más lenta que la reacción C==&lt;br /&gt;
&lt;br /&gt;
CASO  &amp;lt;math&amp;gt;k_1 &amp;lt;/math&amp;gt;=1,   &amp;lt;math&amp;gt;k_2 &amp;lt;/math&amp;gt;=1/5&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
&lt;br /&gt;
%datos&lt;br /&gt;
y0=[0;0];&lt;br /&gt;
z0=[0;0];&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;
%matriz de las soluciones&lt;br /&gt;
y=zeros(2,length(t)); %euler&lt;br /&gt;
y(:,1)=y0;&lt;br /&gt;
 &lt;br /&gt;
z=zeros(2,length(t)); %runge-kutta&lt;br /&gt;
z(:,1)=y0;&lt;br /&gt;
 &lt;br /&gt;
for i=1:length(t)-1&lt;br /&gt;
 %euler&lt;br /&gt;
 y(:,i+1)=y(:,i)+h*[1*(3-y(1,i))*(1-y(1,i)); 1/5*(y(1,i)-y(2,i))];&lt;br /&gt;
 %runge-kutta&lt;br /&gt;
 K1=[1*(3-z(1,i))*(1-z(1,i)); 1/5*(z(1,i)-z(2,i))];&lt;br /&gt;
 K2=[1*(3-(z(1,i)+h/2*K1(1)))*(1-(z(1,i)+h/2*K1(1))); 1/5*((y(1,i)+h/2*K1(2))-(y(2,i)+h/2*K1(2)))];&lt;br /&gt;
 K3=[1*(3-(z(1,i)+h/2*K2(1)))*(1-(z(1,i)+h/2*K2(1))); 1/5*((y(1,i)+h/2*K2(2))-(y(2,i)+h/2*K2(2)))];&lt;br /&gt;
 K4=[1*(3-(z(1,i)+h*K3(1)))*(1-(z(1,i)+h*K3(1))); 1/5*((y(1,i)+h*K3(2))-(y(2,i)+h*K3(2)))];&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;
% se calcula la concentración de C=y1t)-y2(t)&lt;br /&gt;
Ay=y(1,:)-y(2,:); %euler&lt;br /&gt;
Az=z(1,:)-z(2,:); %runge-kutta&lt;br /&gt;
 &lt;br /&gt;
figure(1)&lt;br /&gt;
hold on&lt;br /&gt;
plot(t,Ay) %concentración de C por euler&lt;br /&gt;
plot(t,y(2,:),'r') %concentración de D por euler&lt;br /&gt;
plot(t,Az,'k') %concentración de C por runge-kutta&lt;br /&gt;
plot(t,z(2,:),'g') %concentración de D por runge-kutta&lt;br /&gt;
legend('concentración de C por euler','concentración de D por euler','concentración de C por runge-kutta','concentración de D por runge-kutta','Location','best')&lt;br /&gt;
hold off&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:graficoc.jpeg|500px|miniaturadeimagen|center|Reacción compleja]]&lt;br /&gt;
&lt;br /&gt;
Si ahora imponemos que la reacción  &amp;lt;math&amp;gt;C &amp;lt;/math&amp;gt; es más rápida que  &amp;lt;math&amp;gt;D &amp;lt;/math&amp;gt;, obtenemos lo siguiente. Se parece a la gráfica que obtuvimos en el programa anterior, pero  más extendida en el tiempo, más lenta.  &amp;lt;math&amp;gt;C &amp;lt;/math&amp;gt; alcanza una concentración máxima de unos 0.8 molar antes de empezar a decrecer a medida que avanza el tiempo y acercándose a un valor de '''0''' molar.  &amp;lt;math&amp;gt;D &amp;lt;/math&amp;gt; crece más lentamente que en la gráfica anterior, pero se aproxima al mismo valor, '''1''' molar.&lt;br /&gt;
Se observa que aunque hagamos la reacción  &amp;lt;math&amp;gt;C &amp;lt;/math&amp;gt; más rápida, tenemos las mismas concentraciones finales, pero tardan más tiempo en obtenerse, ya que la reacción tarda más en estabilizarse.&lt;br /&gt;
&lt;br /&gt;
&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>Joseva</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Reacciones_complejas_(Grupo_D1)&amp;diff=27768</id>
		<title>Reacciones complejas (Grupo D1)</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Reacciones_complejas_(Grupo_D1)&amp;diff=27768"/>
				<updated>2015-03-06T11:34:07Z</updated>
		
		<summary type="html">&lt;p&gt;Joseva: /* Método del Trapecio y Método de Runge-Kutta */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{ TrabajoED | Reacciones complejas (Grupo D1) | [[:Categoría:Ecuaciones Diferenciales|Ecuaciones Diferenciales]]|[[:Categoría:ED14/15|Curso 2014-15]] | Rincón Crespo, Kevin&lt;br /&gt;
&lt;br /&gt;
Rodríguez Gómez, Javier&lt;br /&gt;
&lt;br /&gt;
Sans Jiménez, Alejandro&lt;br /&gt;
&lt;br /&gt;
Sesto Muñoz, María Victoria&lt;br /&gt;
&lt;br /&gt;
Vallejo Asín, José Manuel &lt;br /&gt;
&lt;br /&gt;
Villarino Redondo, Álvaro }}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=Introducción=&lt;br /&gt;
Se considera una reacción química irreversible en una solución bien mezclada. Supondremos que la reacción ocurre para un volumen y temperatura constantes. Al inicio se encuentran dos reactivos &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;B&amp;lt;/math&amp;gt;, que van formando un producto &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; en lo que se conoce como una reacción bimolecular, es decir, una molécula de &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt; y una de &amp;lt;math&amp;gt;B&amp;lt;/math&amp;gt; producen una de &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt;.: &lt;br /&gt;
                                                                     &amp;lt;math&amp;gt;A + B → C&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Supondremos también que se satisface la ley de acción de masas, que establece que la velocidad de reacción es proporcional al producto de las concentraciones de los reactivos.&lt;br /&gt;
&lt;br /&gt;
=Concentración del reactivo &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; a lo largo del tiempo=&lt;br /&gt;
En primer lugar, suponiendo que la reacción es irreversible, es decir, que &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; no puede volver a formar &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;B&amp;lt;/math&amp;gt;, se puede expresar la situación mediante el siguiente problema de valor inicial, cuando t&amp;gt;0.:&lt;br /&gt;
   &amp;lt;math&amp;gt;&lt;br /&gt;
   \left . &lt;br /&gt;
      \begin{matrix} &lt;br /&gt;
         y'(t)={k_{1}}({a_{0}}-y(t))({b_{0}}-y(t))=0\\&lt;br /&gt;
         y(0)=0&lt;br /&gt;
      \end{matrix}&lt;br /&gt;
   \right \}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Donde &amp;lt;math&amp;gt; {a_{0}}&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;{b_{0}}&amp;lt;/math&amp;gt; representan las concentraciones iniciales de '''A''' y '''B''' respectivamente y &amp;lt;math&amp;gt;{k_{1}}&amp;lt;/math&amp;gt; es la constante de proporcionalidad que indica la ley de acción de masas. &amp;lt;math&amp;gt;y’(t)&amp;lt;/math&amp;gt; representa la velocidad de reacción, es decir, la velocidad con que se forma el producto &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; ; mientras que la solución de la ecuación diferencial, &amp;lt;math&amp;gt;y(t)&amp;lt;/math&amp;gt; , representa la concentración de &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt;, la cantidad de compuesto que se ha formado. Para comprobar que la solución de este problema de Cauchy es única, comenzamos definiendo.:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;math&amp;gt;f(t,y)={k_{1}}({a_{0}}-y(t))({b_{0}}-y(t))=0,   t&amp;gt;0 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Observamos que &amp;lt;math&amp;gt;f(t,y)&amp;lt;/math&amp;gt; es continua en el intervalo &amp;lt;math&amp;gt; I=(0,∞)∩B((0,0),r&amp;gt;0)&amp;lt;/math&amp;gt;, por lo que ya aseguramos la existencia de al menos una solución. Examinando la derivada parcial.:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\frac{∂f}{∂y}=k_1(-a_0-b_0+2y)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Se deduce que al ser un polinomio no va a haber problemas de continuidad para ninguna bola. De esta forma, podemos asegurar que existe una única solución.&lt;br /&gt;
&lt;br /&gt;
==Concentración del reactivo C a lo largo del tiempo en un proceso reversible==&lt;br /&gt;
&lt;br /&gt;
Ahora bien, ¿qué pasaría si la reacción fuese reversible? Con esto lo que queremos indicar es que además de formarse  &amp;lt;math&amp;gt;C &amp;lt;/math&amp;gt;, este también se descompone de nuevo en  &amp;lt;math&amp;gt;A &amp;lt;/math&amp;gt; y  &amp;lt;math&amp;gt;B &amp;lt;/math&amp;gt;. Por lo tanto, nos quedaría una ecuación diferencial con la siguiente forma, cuando &amp;lt;math&amp;gt;t&amp;gt;0 &amp;lt;/math&amp;gt;. :&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; y'(t)={k_{1}}({a_{0}}-y(t))({b_{0}}-y(t))-Cy(t)&amp;lt;/math&amp;gt;  &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Si nos fijamos, la modificación es sencillamente restar  &amp;lt;math&amp;gt;y(t) &amp;lt;/math&amp;gt; multiplicada por una constante, la cual refleja qué porcentaje de  &amp;lt;math&amp;gt;C &amp;lt;/math&amp;gt; se va descomponiendo a medida que se da, simultáneamente, la reacción  &amp;lt;math&amp;gt;A + B → C &amp;lt;/math&amp;gt;. Sin embargo, esta constante no puede tener cualquier valor, ya que en una reacción se cumple la conservación de masa. Por ello, a  &amp;lt;math&amp;gt;C &amp;lt;/math&amp;gt; le asociaremos el siguiente dominio::&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;C∈(0,1)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Obsérvese que  &amp;lt;math&amp;gt;C &amp;lt;/math&amp;gt; tiene que ser mayor que 0 para que sea reversible, pero al mismo tiempo inferior que 1, ya que si no se estaría descomponiendo más compuesto  &amp;lt;math&amp;gt;C &amp;lt;/math&amp;gt; del que realmente se ha formado, en otras palabras, estaría apareciendo masa de la nada.&lt;br /&gt;
&lt;br /&gt;
=Método de Euler=&lt;br /&gt;
&lt;br /&gt;
Una vez llegados a este punto, se procede a ver una interpretación gráfica de la reacción. Para ello, se refleja en la gráfica (en un intervalo de 2 segundos), cómo varían las concentraciones tanto de &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt; (&amp;lt;math&amp;gt;a_0&amp;lt;/math&amp;gt;=3 mol/L) y &amp;lt;math&amp;gt;B&amp;lt;/math&amp;gt; (&amp;lt;math&amp;gt;b_0&amp;lt;/math&amp;gt;=1 mol/L) como de &amp;lt;math&amp;gt; C&amp;lt;/math&amp;gt;, para una &amp;lt;math&amp;gt;k_1&amp;lt;/math&amp;gt;=1 mol/s. Se comienza, por el momento, aplicando el método de Euler. Posteriormente se utilizarán métodos más precisos.&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo= &lt;br /&gt;
% Euler&lt;br /&gt;
clear all&lt;br /&gt;
% datos del problema&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=2;&lt;br /&gt;
y0=0;&lt;br /&gt;
h=0.1;&lt;br /&gt;
k1=1;&lt;br /&gt;
a0=3;&lt;br /&gt;
b0=1;&lt;br /&gt;
% Definimos la variable independiente&lt;br /&gt;
t=t0:h:tN;&lt;br /&gt;
% Guardamos los valores de la solución aproximada en el vector &amp;quot;y1&amp;quot; y&lt;br /&gt;
% establecemos los vectores de concentraciones A y B&lt;br /&gt;
y1=zeros(1,length(t)); &lt;br /&gt;
y1(1)=y0;&lt;br /&gt;
a1=zeros(1,length(t));&lt;br /&gt;
a1(1)=a0;&lt;br /&gt;
b1=zeros(1,length(t));&lt;br /&gt;
b1(1)=b0;&lt;br /&gt;
% A continuación, calculamos las componentes de los vectores y1, a1 y b1&lt;br /&gt;
for i=1:length(t)-1&lt;br /&gt;
    y1(i+1)=y1(i)+h*(k1*(a0-y1(i))*(b0-y1(i)));    %Euler&lt;br /&gt;
    a1(i+1)=a0-y1(i+1); % evolución de la concentración de A&lt;br /&gt;
    b1(i+1)=b0-y1(i+1); % evolución de la concentración de B&lt;br /&gt;
end&lt;br /&gt;
%grafico &lt;br /&gt;
figure(1)&lt;br /&gt;
hold on&lt;br /&gt;
plot(t,y1,'g')&lt;br /&gt;
plot(t,a1,'r')&lt;br /&gt;
plot(t,b1,'b')&lt;br /&gt;
legend('concentración de C','concentración de A','concentración de B','location','best')&lt;br /&gt;
hold off &lt;br /&gt;
%en verde se muestra la concentración de C, en rojo la de A, y en azul la de B&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Archivo:3euler.jpeg|500px|miniaturadeimagen|center|Reacción compleja]]&lt;br /&gt;
&lt;br /&gt;
Aunque con observar los resultados ya podemos decir con casi absoluta seguridad cuáles son los límites de las concentraciones de cada reactivo &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;B&amp;lt;/math&amp;gt; y del producto &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt;, se ha diseñado un programa que, mediante diferencia de valores sucesivos de la variable &amp;lt;math&amp;gt;y(t)&amp;lt;/math&amp;gt;, nos devuelve el valor de la función cuando dicha diferencia es muy pequeña '''(se ha puesto una diferencia de 0.001)''', es decir, cuando tenemos una asíntota al tender &amp;lt;math&amp;gt;t→∞&amp;lt;/math&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
%Estudio de las asíntotas&lt;br /&gt;
t1=t0:h:10;%se aumenta la longitud de t, y se estima que se alcanzarán las asíntotas antes de t=10&lt;br /&gt;
y_=zeros(1,length(t1)); %se define un vector y_ idéntico a y1 pero con t hasta 10&lt;br /&gt;
a_=y_;&lt;br /&gt;
b_=y_;&lt;br /&gt;
y_(1)=y0;&lt;br /&gt;
a_(1)=a0;&lt;br /&gt;
b_(1)=b0;&lt;br /&gt;
for i=1:length(t1)-1&lt;br /&gt;
    y_(i+1)=y_(i)+h*(k1*(a0-y_(i))*(b0-y_(i)));&lt;br /&gt;
    diferencia=y_(i+1)-y_(i);&lt;br /&gt;
    if abs(diferencia)&amp;lt;=0.001&lt;br /&gt;
        limC=y_(i+1)&lt;br /&gt;
        break&lt;br /&gt;
    end&lt;br /&gt;
end&lt;br /&gt;
for i=1:length(t1)-1&lt;br /&gt;
    y_(i+1)=y_(i)+h*(k1*(a0-y_(i))*(b0-y_(i)));    &lt;br /&gt;
    a_(i+1)=a0-y_(i+1);&lt;br /&gt;
    diferencia2=a_(i+1)-a_(i);&lt;br /&gt;
    if abs(diferencia2)&amp;lt;=0.001&lt;br /&gt;
        limA=a_(i+1)&lt;br /&gt;
        break&lt;br /&gt;
    end&lt;br /&gt;
end&lt;br /&gt;
for i=1:length(t1)-1&lt;br /&gt;
    y_(i+1)=y_(i)+h*(k1*(a0-y_(i))*(b0-y_(i)));    &lt;br /&gt;
    b_(i+1)=b0-y_(i+1);&lt;br /&gt;
    diferencia3=b_(i+1)-b_(i);&lt;br /&gt;
    if abs(diferencia3)&amp;lt;=0.001&lt;br /&gt;
        limB=b_(i+1)&lt;br /&gt;
        break&lt;br /&gt;
    end&lt;br /&gt;
end&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
Que nos devuelve unos valores de las concentraciones para el límite de:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\lim A=2,0036≈2 mol/L&amp;lt;/math&amp;gt;:     &lt;br /&gt;
&amp;lt;math&amp;gt;\lim B=0,0036≈0mol/L&amp;lt;/math&amp;gt;:         &lt;br /&gt;
&amp;lt;math&amp;gt;\lim C=0,9964≈1mol/L&amp;lt;/math&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
Lo cual es lógico, ya que &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;B&amp;lt;/math&amp;gt; se combinan en una proporción de 1:1, luego &amp;lt;math&amp;gt;B&amp;lt;/math&amp;gt;, que tiene una concentración inicial de &amp;lt;math&amp;gt;b_0&amp;lt;/math&amp;gt;=1, será el reactivo limitante (el que desaparecerá por completo), mientras que &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt;, con &amp;lt;math&amp;gt;a_0&amp;lt;/math&amp;gt;=3, acabará con una concentración molar final igual a 2, y &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt;, del que no habia nada,alcanza una concentraccion de &amp;lt;math&amp;gt;1mol/L&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
= Método del Trapecio y Método de Runge-Kutta=&lt;br /&gt;
&lt;br /&gt;
A continuación, para obtener con más precisión las representaciones gráficas de las respectivas concentraciones, se opta por utilizar los métodos de los &amp;lt;math&amp;gt;Trapecios&amp;lt;/math&amp;gt; (segundo orden) y de &amp;lt;math&amp;gt;Runge-Kutta&amp;lt;/math&amp;gt; (cuarto orden). Además, se ha obtenido la expresión explícita de la solución de nuestro problema de valor inicial de manera analítica, mediante variables separables y fracciones simples, resultando la función real::&lt;br /&gt;
&amp;lt;math&amp;gt;y_e(t)=\frac{3e^{2t}-3}{3e^{2t}-1}&amp;lt;/math&amp;gt;&lt;br /&gt;
De manera que las concentraciones de A y de B en cada valor de t quedarían como::&lt;br /&gt;
&amp;lt;math&amp;gt;a_e(t)=a_0-y_e(t)&amp;lt;/math&amp;gt;:&lt;br /&gt;
&amp;lt;math&amp;gt;b_e (t)=b_0-y_e (t)&amp;lt;/math&amp;gt;:&lt;br /&gt;
Para los trapecios, al ser un método implícito, es necesario despejar la componente &amp;lt;math&amp;gt;y_{n+1}&amp;lt;/math&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;y_{n+1}=\frac{(1+\frac{h}{2}∙k_1∙(a_0+b_0))-\sqrt{(1+\frac{h}{2}∙k_1∙(a_0+b_0))^2 -2∙h∙k_1(y_n+\frac{h}{2}∙k_1∙(a_0-y_n )∙(b_0-y_n)+\frac{h}{2}∙k_1∙a_0∙b_0) }}{k_1∙h}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Cabe destacar que este programa parte de los datos ya establecidos en el programa de Euler para '''t0, tN, y0, a0, b0, k1 y h''':&lt;br /&gt;
{{matlab|codigo= &lt;br /&gt;
%Función real&lt;br /&gt;
ye=(3*exp(2.*t)-3)./(3*exp(2.*t)-1);&lt;br /&gt;
ae=a0-ye;&lt;br /&gt;
be=b0-ye;&lt;br /&gt;
&lt;br /&gt;
%Trapecios&lt;br /&gt;
y2=zeros(1,length(t)); &lt;br /&gt;
a2=y2;&lt;br /&gt;
b2=y2;&lt;br /&gt;
y2(1)=y0;&lt;br /&gt;
a2(1)=a0;&lt;br /&gt;
b2(1)=b0;&lt;br /&gt;
for i= 1:length(t)-1&lt;br /&gt;
    y2(i+1)=((1+0.5*h*k1*(a0+b0))-sqrt((1+0.5*h*k1*(a0+b0))^2-2*h*k1*(y2(i)+0.5*h*k1*(a0-y2(i))*(b0-y2(i))+0.5*h*k1*a0*b0)))/(k1*h);&lt;br /&gt;
a2(i+1)=a0-y2(i+1);&lt;br /&gt;
b2(i+1)=b0-y2(i+1);&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
%Runge-Kutta&lt;br /&gt;
y3=zeros(1,length(t)); &lt;br /&gt;
a3=y3;&lt;br /&gt;
b3=y3;&lt;br /&gt;
y3(1)=y0;&lt;br /&gt;
a3(1)=a0;&lt;br /&gt;
b3(1)=b0;&lt;br /&gt;
fori=1:length(t)-1 &lt;br /&gt;
    r1=k1*(a0-y3(i))*(b0-y3(i));&lt;br /&gt;
    r2=k1*(a0-y3(i)-0.5*r1*h)*(b0-y3(i)-0.5*r1*h);&lt;br /&gt;
    r3=k1*(a0-y3(i)-0.5*r2*h)*(b0-y3(i)-0.5*r2*h);&lt;br /&gt;
    r4=k1*(a0-y3(i)-r3*h)*(b0-y3(i)-r3*h);&lt;br /&gt;
y3(i+1)=y3(i)+h/6*(r1+2*r2+2*r3+r4);&lt;br /&gt;
a3(i+1)=a0-y3(i+1);&lt;br /&gt;
b3(i+1)=b0-y3(i+1);&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
%se pintan las cuatro gráficas, con la función real en verde y los puntos con asteriscos, &lt;br /&gt;
%Euler en rojo, los Trapecios en azul, y Runge-Kutta en negro&lt;br /&gt;
figure(2)&lt;br /&gt;
hold on&lt;br /&gt;
&lt;br /&gt;
plot(t,ye,'g*-')&lt;br /&gt;
plot(t,y2)&lt;br /&gt;
plot(t,y3,'k')&lt;br /&gt;
plot(t,y1,'r')&lt;br /&gt;
legend('Función real','Trapecios', 'Runge-Kutta', 'Euler','Location','best');&lt;br /&gt;
plot(t,ae,'g*')&lt;br /&gt;
plot(t,a2)&lt;br /&gt;
plot(t,a3,'k')&lt;br /&gt;
plot(t,a1,'r')&lt;br /&gt;
plot(t,be,'g*')&lt;br /&gt;
plot(t,b2)&lt;br /&gt;
plot(t,b3,'k')&lt;br /&gt;
plot(t,b1,'r')&lt;br /&gt;
hold off&lt;br /&gt;
&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
Los resultados del programa se muestran en las dos siguientes figuras. Como podemos observar, el método de '''Euler''', en &amp;lt;span style=&amp;quot;color:#FF0000;&amp;quot;&amp;gt;Rojo&amp;lt;/span&amp;gt;, rápidamente se separa de los demás y de la función real, lo que es debido a que es un método de orden 1 y su precisión es bastante reducida. Para analizar el comportamiento de los otros dos métodos, se ha hecho un zoom en una zona aleatoria de la gráfica, y se muestra en la figura 2. Lo lógico, debido a que es de orden 2, es que el método de los trapecios sea el siguiente que se aleje de la solución real, y esto es precisamente lo que se evidencia en la gráfica, pues como vemos, la línea &amp;lt;span style=&amp;quot;color:#0000FF;&amp;quot;&amp;gt;Azul&amp;lt;/font&amp;gt; se separa de la '''negra''' y de la &amp;lt;span style=&amp;quot;color:#00FF00;&amp;quot;&amp;gt;Verde&amp;lt;/span&amp;gt;. Es por tanto que el método de '''Runge-Kutta''' es el más preciso de todos, haciendo honor a su cuarto orden, y como podemos observar, las líneas &amp;lt;span style=&amp;quot;color:#00FF00;&amp;quot;&amp;gt;Verde&amp;lt;/span&amp;gt; y '''negra''' son casi indistinguibles. &lt;br /&gt;
&lt;br /&gt;
Es importante también atender a la escala que se muestra en la figura 2, que nos da una idea de los rangos en el eje de ordenadas de los que estamos hablando. Cabe decir que estamos trabajando con un paso de h=0.1, lo que significa que con un paso menor, estas diferencias serian mucho menos perceptibles.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Archivo:4trapeciokung.jpeg|500px|miniaturadeimagen|center|Reacción compleja]]&lt;br /&gt;
&lt;br /&gt;
[[Archivo:4comparacion.jpeg|500px|miniaturadeimagen|center|Gráfico 2]]&lt;br /&gt;
&lt;br /&gt;
=Reacción consecutiva=&lt;br /&gt;
&lt;br /&gt;
Consideremos ahora que se produce una reacción consecutiva de la forma.: &lt;br /&gt;
&lt;br /&gt;
                                                                   &amp;lt;math&amp;gt;A + B → k_1C → k_2D&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
De tal modo que los reactivos &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;B&amp;lt;/math&amp;gt; se combinan en la proporción 1:1 para formar compuesto &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt;, el cual, a su vez, se va descomponiendo para formar compuesto &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt;. Al igual que se ha hecho antes al analizar las otras reacciones, se considerará que se cumple la ley de acción de masas. Es decir, la velocidad con la que se forma compuesto &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; es proporcional a las concentraciones existentes de &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt; y de &amp;lt;math&amp;gt;B&amp;lt;/math&amp;gt; y del mismo modo la de formación de la sustancia &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; lo es a la concentración de &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; que se ha ido formando.&lt;br /&gt;
&lt;br /&gt;
Esta reacción consecutiva está representada por el siguiente problema de valor inicial::&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;&lt;br /&gt;
   \left . &lt;br /&gt;
      \begin{matrix} &lt;br /&gt;
         y'_1(t)={k_{1}}({a_{0}}-y_1(t))({b_{0}}-y_1(t))\\&lt;br /&gt;
         y'_2(t)={k_{2}}(y_1(t)-y_2(t))\\&lt;br /&gt;
y_1(0)=0\\y_2(0)=0&lt;br /&gt;
      \end{matrix}&lt;br /&gt;
   \right \}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
Donde &amp;lt;math&amp;gt;a_0&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;b_0&amp;lt;/math&amp;gt; representan las concentraciones iniciales de &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;B&amp;lt;/math&amp;gt; respectivamente, &amp;lt;math&amp;gt;k_1&amp;lt;/math&amp;gt; es la constante de proporcionalidad que rige la primera reacción y &amp;lt;math&amp;gt;k_2&amp;lt;/math&amp;gt; la que rige la segunda reacción o reacción consecutiva. &amp;lt;math&amp;gt;y_1’(t)&amp;lt;/math&amp;gt; e  &amp;lt;math&amp;gt;y_2’(t)&amp;lt;/math&amp;gt; representan las velocidades de las reacciones, es decir, las velocidades con que se forman los productos &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt;. &amp;lt;math&amp;gt;y_2(t)&amp;lt;/math&amp;gt; representa la concentración del producto &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; pero es importante apreciar que en este caso &amp;lt;math&amp;gt;y_1(t)&amp;lt;/math&amp;gt; no nos da el valor de la concentración de &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; directamente, sino que ésta será &amp;lt;math&amp;gt;y_1(t)&amp;lt;/math&amp;gt;- &amp;lt;math&amp;gt;y_2(t)&amp;lt;/math&amp;gt;, la cantidad que se forma en la primera reacción menos la que se emplea para formar el producto &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; en la segunda.&lt;br /&gt;
&lt;br /&gt;
Este problema se va a resolver para dos casos diferentes. Uno en el cual se considera que la segunda reacción es más rápida que la primera, lo que supone tomar un valor de la constante &amp;lt;math&amp;gt;k_2&amp;lt;/math&amp;gt;  mayor que &amp;lt;math&amp;gt;k_1&amp;lt;/math&amp;gt;. Y otro en el cual se considera que es más lenta, lo que implica que &amp;lt;math&amp;gt;k_2&amp;lt;/math&amp;gt; es menor que &amp;lt;math&amp;gt;k_1&amp;lt;/math&amp;gt;. Concretamente vamos a tomar los siguientes valores para resolver el problema numéricamente; &amp;lt;math&amp;gt;a_0&amp;lt;/math&amp;gt;=3 ,  &amp;lt;math&amp;gt;b_0&amp;lt;/math&amp;gt;=1, &amp;lt;math&amp;gt;k_1&amp;lt;/math&amp;gt;=1,  &amp;lt;math&amp;gt;k_2&amp;lt;/math&amp;gt;=5, &amp;lt;math&amp;gt;k_2&amp;lt;/math&amp;gt;=1/5, .En ambos casos se resuelve para los primeros 10 segundos.&lt;br /&gt;
&lt;br /&gt;
==La reacción D es más rápida que la reacción C==&lt;br /&gt;
CASO    &amp;lt;math&amp;gt;k_1=5  &amp;lt;/math&amp;gt;   '''h=0.1''' &lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
&lt;br /&gt;
%datos&lt;br /&gt;
y0=[0;0];&lt;br /&gt;
z0=[0;0];&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;
%matriz de las soluciones&lt;br /&gt;
y=zeros(2,length(t)); %euler&lt;br /&gt;
y(:,1)=y0;&lt;br /&gt;
 &lt;br /&gt;
z=zeros(2,length(t)); %runge-kutta&lt;br /&gt;
z(:,1)=y0;&lt;br /&gt;
 &lt;br /&gt;
for i=1:length(t)-1&lt;br /&gt;
 %euler&lt;br /&gt;
 y(:,i+1)=y(:,i)+h*[1*(3-y(1,i))*(1-y(1,i)); 5*(y(1,i)-y(2,i))];&lt;br /&gt;
 %runge-kutta&lt;br /&gt;
 K1=[1*(3-z(1,i))*(1-z(1,i)); 5*(z(1,i)-z(2,i))];&lt;br /&gt;
 K2=[1*(3-(z(1,i)+h/2*K1(1)))*(1-(z(1,i)+h/2*K1(1))); 5*((y(1,i)+h/2*K1(2))-(y(2,i)+h/2*K1(2)))];&lt;br /&gt;
 K3=[1*(3-(z(1,i)+h/2*K2(1)))*(1-(z(1,i)+h/2*K2(1))); 5*((y(1,i)+h/2*K2(2))-(y(2,i)+h/2*K2(2)))];&lt;br /&gt;
 K4=[1*(3-(z(1,i)+h*K3(1)))*(1-(z(1,i)+h*K3(1))); 5*((y(1,i)+h*K3(2))-(y(2,i)+h*K3(2)))];&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;
% se calcula la concentración de C=y1t)-y2(t)&lt;br /&gt;
Ay=y(1,:)-y(2,:); %euler&lt;br /&gt;
Az=z(1,:)-z(2,:); %runge-kutta&lt;br /&gt;
 &lt;br /&gt;
figure(1)&lt;br /&gt;
hold on&lt;br /&gt;
plot(t,Ay) %concentración de C por euler&lt;br /&gt;
plot(t,y(2,:),'r') %concentración de D por euler&lt;br /&gt;
plot(t,Az,'k') %concentración de C por runge-kutta&lt;br /&gt;
plot(t,z(2,:),'g') %concentración de D por runge-kutta&lt;br /&gt;
legend('concentración de C por euler','concentración de D por euler','concentración de C por runge-kutta','concentración de D por runge-kutta','Location','best')&lt;br /&gt;
hold off&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:graficoa.jpeg|500px|miniaturadeimagen|center|Reacción compleja]]&lt;br /&gt;
&lt;br /&gt;
Se observa que en en los primeros instantes aumentan las concentraciones de &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; aumentan sus concentraciones. Antes de que pase 1 segundo, la concentración &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; alcanza un máximo (de unos 0.3 molar) y va disminuyendo progresivamente hasta alcanzar un valor de 0 molar. La concentración &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; sigue creciendo hasta llegar a 1 molar. Una vez que tanto &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; como &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; alcanzan estos valores, se estabiliza la reacción. &lt;br /&gt;
&lt;br /&gt;
Como hemos impuesto que la reacción &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; es más rápida que &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt;, se observa que &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; empieza creciendo más rápidamente, pero como reacciona más despacio que &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; su concentración disminuye progresivamente, mientras que la de &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; aumenta.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''CASO'''  &amp;lt;math&amp;gt;k_2=5  &amp;lt;/math&amp;gt;   '''h=0.3''' &lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
&lt;br /&gt;
%datos&lt;br /&gt;
y0=[0;0];&lt;br /&gt;
z0=[0;0];&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=10;&lt;br /&gt;
h=0.3;&lt;br /&gt;
 &lt;br /&gt;
%variable independiente t&lt;br /&gt;
t=t0:h:tN;&lt;br /&gt;
 &lt;br /&gt;
%matriz de las soluciones&lt;br /&gt;
y=zeros(2,length(t)); %euler&lt;br /&gt;
y(:,1)=y0;&lt;br /&gt;
 &lt;br /&gt;
z=zeros(2,length(t)); %runge-kutta&lt;br /&gt;
z(:,1)=y0;&lt;br /&gt;
 &lt;br /&gt;
for i=1:length(t)-1&lt;br /&gt;
 %euler&lt;br /&gt;
 y(:,i+1)=y(:,i)+h*[1*(3-y(1,i))*(1-y(1,i)); 5*(y(1,i)-y(2,i))];&lt;br /&gt;
 %runge-kutta&lt;br /&gt;
 K1=[1*(3-z(1,i))*(1-z(1,i)); 5*(z(1,i)-z(2,i))];&lt;br /&gt;
 K2=[1*(3-(z(1,i)+h/2*K1(1)))*(1-(z(1,i)+h/2*K1(1))); 5*((y(1,i)+h/2*K1(2))-(y(2,i)+h/2*K1(2)))];&lt;br /&gt;
 K3=[1*(3-(z(1,i)+h/2*K2(1)))*(1-(z(1,i)+h/2*K2(1))); 5*((y(1,i)+h/2*K2(2))-(y(2,i)+h/2*K2(2)))];&lt;br /&gt;
 K4=[1*(3-(z(1,i)+h*K3(1)))*(1-(z(1,i)+h*K3(1))); 5*((y(1,i)+h*K3(2))-(y(2,i)+h*K3(2)))];&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;
% se calcula la concentración de C=y1t)-y2(t)&lt;br /&gt;
Ay=y(1,:)-y(2,:); %euler&lt;br /&gt;
Az=z(1,:)-z(2,:); %runge-kutta&lt;br /&gt;
 &lt;br /&gt;
figure(1)&lt;br /&gt;
hold on&lt;br /&gt;
plot(t,Ay) %concentración de C por euler&lt;br /&gt;
plot(t,y(2,:),'r') %concentración de D por euler&lt;br /&gt;
plot(t,Az,'k') %concentración de C por runge-kutta&lt;br /&gt;
plot(t,z(2,:),'g') %concentración de D por runge-kutta&lt;br /&gt;
legend('concentración de C por euler','concentración de D por euler','concentración de C por runge-kutta','concentración de D por runge-kutta','Location','best')&lt;br /&gt;
hold off&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:graficob.jpeg|500px|miniaturadeimagen|center|Reacción compleja]]&lt;br /&gt;
&lt;br /&gt;
Repetimos el programa pero para un tamaño de paso mayor, de '''h=0.3''', y observamos que no  es suficientemente preciso, sobre todo al principio, no se puede analizar bien lo que está pasando en la reacción.&lt;br /&gt;
&lt;br /&gt;
==La reacción D es más lenta que la reacción C==&lt;br /&gt;
&lt;br /&gt;
CASO  &amp;lt;math&amp;gt;k_1 &amp;lt;/math&amp;gt;=1,   &amp;lt;math&amp;gt;k_2 &amp;lt;/math&amp;gt;=1/5&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
&lt;br /&gt;
%datos&lt;br /&gt;
y0=[0;0];&lt;br /&gt;
z0=[0;0];&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;
%matriz de las soluciones&lt;br /&gt;
y=zeros(2,length(t)); %euler&lt;br /&gt;
y(:,1)=y0;&lt;br /&gt;
 &lt;br /&gt;
z=zeros(2,length(t)); %runge-kutta&lt;br /&gt;
z(:,1)=y0;&lt;br /&gt;
 &lt;br /&gt;
for i=1:length(t)-1&lt;br /&gt;
 %euler&lt;br /&gt;
 y(:,i+1)=y(:,i)+h*[1*(3-y(1,i))*(1-y(1,i)); 1/5*(y(1,i)-y(2,i))];&lt;br /&gt;
 %runge-kutta&lt;br /&gt;
 K1=[1*(3-z(1,i))*(1-z(1,i)); 1/5*(z(1,i)-z(2,i))];&lt;br /&gt;
 K2=[1*(3-(z(1,i)+h/2*K1(1)))*(1-(z(1,i)+h/2*K1(1))); 1/5*((y(1,i)+h/2*K1(2))-(y(2,i)+h/2*K1(2)))];&lt;br /&gt;
 K3=[1*(3-(z(1,i)+h/2*K2(1)))*(1-(z(1,i)+h/2*K2(1))); 1/5*((y(1,i)+h/2*K2(2))-(y(2,i)+h/2*K2(2)))];&lt;br /&gt;
 K4=[1*(3-(z(1,i)+h*K3(1)))*(1-(z(1,i)+h*K3(1))); 1/5*((y(1,i)+h*K3(2))-(y(2,i)+h*K3(2)))];&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;
% se calcula la concentración de C=y1t)-y2(t)&lt;br /&gt;
Ay=y(1,:)-y(2,:); %euler&lt;br /&gt;
Az=z(1,:)-z(2,:); %runge-kutta&lt;br /&gt;
 &lt;br /&gt;
figure(1)&lt;br /&gt;
hold on&lt;br /&gt;
plot(t,Ay) %concentración de C por euler&lt;br /&gt;
plot(t,y(2,:),'r') %concentración de D por euler&lt;br /&gt;
plot(t,Az,'k') %concentración de C por runge-kutta&lt;br /&gt;
plot(t,z(2,:),'g') %concentración de D por runge-kutta&lt;br /&gt;
legend('concentración de C por euler','concentración de D por euler','concentración de C por runge-kutta','concentración de D por runge-kutta','Location','best')&lt;br /&gt;
hold off&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:graficoc.jpeg|500px|miniaturadeimagen|center|Reacción compleja]]&lt;br /&gt;
&lt;br /&gt;
Si ahora imponemos que la reacción  &amp;lt;math&amp;gt;C &amp;lt;/math&amp;gt; es más rápida que  &amp;lt;math&amp;gt;D &amp;lt;/math&amp;gt;, obtenemos lo siguiente. Se parece a la gráfica que obtuvimos en el programa anterior, pero  más extendida en el tiempo, más lenta.  &amp;lt;math&amp;gt;C &amp;lt;/math&amp;gt; alcanza una concentración máxima de unos 0.8 molar antes de empezar a decrecer a medida que avanza el tiempo y acercándose a un valor de '''0''' molar.  &amp;lt;math&amp;gt;D &amp;lt;/math&amp;gt; crece más lentamente que en la gráfica anterior, pero se aproxima al mismo valor, '''1''' molar.&lt;br /&gt;
Se observa que aunque hagamos la reacción  &amp;lt;math&amp;gt;C &amp;lt;/math&amp;gt; más rápida, tenemos las mismas concentraciones finales, pero tardan más tiempo en obtenerse, ya que la reacción tarda más en estabilizarse.&lt;br /&gt;
&lt;br /&gt;
&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>Joseva</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Reacciones_complejas_(Grupo_D1)&amp;diff=27764</id>
		<title>Reacciones complejas (Grupo D1)</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Reacciones_complejas_(Grupo_D1)&amp;diff=27764"/>
				<updated>2015-03-06T11:33:16Z</updated>
		
		<summary type="html">&lt;p&gt;Joseva: /* Método del Trapecio y Método de Runge-Kutta */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{ TrabajoED | Reacciones complejas (Grupo D1) | [[:Categoría:Ecuaciones Diferenciales|Ecuaciones Diferenciales]]|[[:Categoría:ED14/15|Curso 2014-15]] | Rincón Crespo, Kevin&lt;br /&gt;
&lt;br /&gt;
Rodríguez Gómez, Javier&lt;br /&gt;
&lt;br /&gt;
Sans Jiménez, Alejandro&lt;br /&gt;
&lt;br /&gt;
Sesto Muñoz, María Victoria&lt;br /&gt;
&lt;br /&gt;
Vallejo Asín, José Manuel &lt;br /&gt;
&lt;br /&gt;
Villarino Redondo, Álvaro }}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=Introducción=&lt;br /&gt;
Se considera una reacción química irreversible en una solución bien mezclada. Supondremos que la reacción ocurre para un volumen y temperatura constantes. Al inicio se encuentran dos reactivos &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;B&amp;lt;/math&amp;gt;, que van formando un producto &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; en lo que se conoce como una reacción bimolecular, es decir, una molécula de &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt; y una de &amp;lt;math&amp;gt;B&amp;lt;/math&amp;gt; producen una de &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt;.: &lt;br /&gt;
                                                                     &amp;lt;math&amp;gt;A + B → C&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Supondremos también que se satisface la ley de acción de masas, que establece que la velocidad de reacción es proporcional al producto de las concentraciones de los reactivos.&lt;br /&gt;
&lt;br /&gt;
=Concentración del reactivo &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; a lo largo del tiempo=&lt;br /&gt;
En primer lugar, suponiendo que la reacción es irreversible, es decir, que &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; no puede volver a formar &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;B&amp;lt;/math&amp;gt;, se puede expresar la situación mediante el siguiente problema de valor inicial, cuando t&amp;gt;0.:&lt;br /&gt;
   &amp;lt;math&amp;gt;&lt;br /&gt;
   \left . &lt;br /&gt;
      \begin{matrix} &lt;br /&gt;
         y'(t)={k_{1}}({a_{0}}-y(t))({b_{0}}-y(t))=0\\&lt;br /&gt;
         y(0)=0&lt;br /&gt;
      \end{matrix}&lt;br /&gt;
   \right \}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Donde &amp;lt;math&amp;gt; {a_{0}}&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;{b_{0}}&amp;lt;/math&amp;gt; representan las concentraciones iniciales de '''A''' y '''B''' respectivamente y &amp;lt;math&amp;gt;{k_{1}}&amp;lt;/math&amp;gt; es la constante de proporcionalidad que indica la ley de acción de masas. &amp;lt;math&amp;gt;y’(t)&amp;lt;/math&amp;gt; representa la velocidad de reacción, es decir, la velocidad con que se forma el producto &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; ; mientras que la solución de la ecuación diferencial, &amp;lt;math&amp;gt;y(t)&amp;lt;/math&amp;gt; , representa la concentración de &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt;, la cantidad de compuesto que se ha formado. Para comprobar que la solución de este problema de Cauchy es única, comenzamos definiendo.:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;math&amp;gt;f(t,y)={k_{1}}({a_{0}}-y(t))({b_{0}}-y(t))=0,   t&amp;gt;0 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Observamos que &amp;lt;math&amp;gt;f(t,y)&amp;lt;/math&amp;gt; es continua en el intervalo &amp;lt;math&amp;gt; I=(0,∞)∩B((0,0),r&amp;gt;0)&amp;lt;/math&amp;gt;, por lo que ya aseguramos la existencia de al menos una solución. Examinando la derivada parcial.:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\frac{∂f}{∂y}=k_1(-a_0-b_0+2y)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Se deduce que al ser un polinomio no va a haber problemas de continuidad para ninguna bola. De esta forma, podemos asegurar que existe una única solución.&lt;br /&gt;
&lt;br /&gt;
==Concentración del reactivo C a lo largo del tiempo en un proceso reversible==&lt;br /&gt;
&lt;br /&gt;
Ahora bien, ¿qué pasaría si la reacción fuese reversible? Con esto lo que queremos indicar es que además de formarse  &amp;lt;math&amp;gt;C &amp;lt;/math&amp;gt;, este también se descompone de nuevo en  &amp;lt;math&amp;gt;A &amp;lt;/math&amp;gt; y  &amp;lt;math&amp;gt;B &amp;lt;/math&amp;gt;. Por lo tanto, nos quedaría una ecuación diferencial con la siguiente forma, cuando &amp;lt;math&amp;gt;t&amp;gt;0 &amp;lt;/math&amp;gt;. :&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; y'(t)={k_{1}}({a_{0}}-y(t))({b_{0}}-y(t))-Cy(t)&amp;lt;/math&amp;gt;  &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Si nos fijamos, la modificación es sencillamente restar  &amp;lt;math&amp;gt;y(t) &amp;lt;/math&amp;gt; multiplicada por una constante, la cual refleja qué porcentaje de  &amp;lt;math&amp;gt;C &amp;lt;/math&amp;gt; se va descomponiendo a medida que se da, simultáneamente, la reacción  &amp;lt;math&amp;gt;A + B → C &amp;lt;/math&amp;gt;. Sin embargo, esta constante no puede tener cualquier valor, ya que en una reacción se cumple la conservación de masa. Por ello, a  &amp;lt;math&amp;gt;C &amp;lt;/math&amp;gt; le asociaremos el siguiente dominio::&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;C∈(0,1)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Obsérvese que  &amp;lt;math&amp;gt;C &amp;lt;/math&amp;gt; tiene que ser mayor que 0 para que sea reversible, pero al mismo tiempo inferior que 1, ya que si no se estaría descomponiendo más compuesto  &amp;lt;math&amp;gt;C &amp;lt;/math&amp;gt; del que realmente se ha formado, en otras palabras, estaría apareciendo masa de la nada.&lt;br /&gt;
&lt;br /&gt;
=Método de Euler=&lt;br /&gt;
&lt;br /&gt;
Una vez llegados a este punto, se procede a ver una interpretación gráfica de la reacción. Para ello, se refleja en la gráfica (en un intervalo de 2 segundos), cómo varían las concentraciones tanto de &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt; (&amp;lt;math&amp;gt;a_0&amp;lt;/math&amp;gt;=3 mol/L) y &amp;lt;math&amp;gt;B&amp;lt;/math&amp;gt; (&amp;lt;math&amp;gt;b_0&amp;lt;/math&amp;gt;=1 mol/L) como de &amp;lt;math&amp;gt; C&amp;lt;/math&amp;gt;, para una &amp;lt;math&amp;gt;k_1&amp;lt;/math&amp;gt;=1 mol/s. Se comienza, por el momento, aplicando el método de Euler. Posteriormente se utilizarán métodos más precisos.&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo= &lt;br /&gt;
% Euler&lt;br /&gt;
clear all&lt;br /&gt;
% datos del problema&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=2;&lt;br /&gt;
y0=0;&lt;br /&gt;
h=0.1;&lt;br /&gt;
k1=1;&lt;br /&gt;
a0=3;&lt;br /&gt;
b0=1;&lt;br /&gt;
% Definimos la variable independiente&lt;br /&gt;
t=t0:h:tN;&lt;br /&gt;
% Guardamos los valores de la solución aproximada en el vector &amp;quot;y1&amp;quot; y&lt;br /&gt;
% establecemos los vectores de concentraciones A y B&lt;br /&gt;
y1=zeros(1,length(t)); &lt;br /&gt;
y1(1)=y0;&lt;br /&gt;
a1=zeros(1,length(t));&lt;br /&gt;
a1(1)=a0;&lt;br /&gt;
b1=zeros(1,length(t));&lt;br /&gt;
b1(1)=b0;&lt;br /&gt;
% A continuación, calculamos las componentes de los vectores y1, a1 y b1&lt;br /&gt;
for i=1:length(t)-1&lt;br /&gt;
    y1(i+1)=y1(i)+h*(k1*(a0-y1(i))*(b0-y1(i)));    %Euler&lt;br /&gt;
    a1(i+1)=a0-y1(i+1); % evolución de la concentración de A&lt;br /&gt;
    b1(i+1)=b0-y1(i+1); % evolución de la concentración de B&lt;br /&gt;
end&lt;br /&gt;
%grafico &lt;br /&gt;
figure(1)&lt;br /&gt;
hold on&lt;br /&gt;
plot(t,y1,'g')&lt;br /&gt;
plot(t,a1,'r')&lt;br /&gt;
plot(t,b1,'b')&lt;br /&gt;
legend('concentración de C','concentración de A','concentración de B','location','best')&lt;br /&gt;
hold off &lt;br /&gt;
%en verde se muestra la concentración de C, en rojo la de A, y en azul la de B&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Archivo:3euler.jpeg|500px|miniaturadeimagen|center|Reacción compleja]]&lt;br /&gt;
&lt;br /&gt;
Aunque con observar los resultados ya podemos decir con casi absoluta seguridad cuáles son los límites de las concentraciones de cada reactivo &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;B&amp;lt;/math&amp;gt; y del producto &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt;, se ha diseñado un programa que, mediante diferencia de valores sucesivos de la variable &amp;lt;math&amp;gt;y(t)&amp;lt;/math&amp;gt;, nos devuelve el valor de la función cuando dicha diferencia es muy pequeña '''(se ha puesto una diferencia de 0.001)''', es decir, cuando tenemos una asíntota al tender &amp;lt;math&amp;gt;t→∞&amp;lt;/math&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
%Estudio de las asíntotas&lt;br /&gt;
t1=t0:h:10;%se aumenta la longitud de t, y se estima que se alcanzarán las asíntotas antes de t=10&lt;br /&gt;
y_=zeros(1,length(t1)); %se define un vector y_ idéntico a y1 pero con t hasta 10&lt;br /&gt;
a_=y_;&lt;br /&gt;
b_=y_;&lt;br /&gt;
y_(1)=y0;&lt;br /&gt;
a_(1)=a0;&lt;br /&gt;
b_(1)=b0;&lt;br /&gt;
for i=1:length(t1)-1&lt;br /&gt;
    y_(i+1)=y_(i)+h*(k1*(a0-y_(i))*(b0-y_(i)));&lt;br /&gt;
    diferencia=y_(i+1)-y_(i);&lt;br /&gt;
    if abs(diferencia)&amp;lt;=0.001&lt;br /&gt;
        limC=y_(i+1)&lt;br /&gt;
        break&lt;br /&gt;
    end&lt;br /&gt;
end&lt;br /&gt;
for i=1:length(t1)-1&lt;br /&gt;
    y_(i+1)=y_(i)+h*(k1*(a0-y_(i))*(b0-y_(i)));    &lt;br /&gt;
    a_(i+1)=a0-y_(i+1);&lt;br /&gt;
    diferencia2=a_(i+1)-a_(i);&lt;br /&gt;
    if abs(diferencia2)&amp;lt;=0.001&lt;br /&gt;
        limA=a_(i+1)&lt;br /&gt;
        break&lt;br /&gt;
    end&lt;br /&gt;
end&lt;br /&gt;
for i=1:length(t1)-1&lt;br /&gt;
    y_(i+1)=y_(i)+h*(k1*(a0-y_(i))*(b0-y_(i)));    &lt;br /&gt;
    b_(i+1)=b0-y_(i+1);&lt;br /&gt;
    diferencia3=b_(i+1)-b_(i);&lt;br /&gt;
    if abs(diferencia3)&amp;lt;=0.001&lt;br /&gt;
        limB=b_(i+1)&lt;br /&gt;
        break&lt;br /&gt;
    end&lt;br /&gt;
end&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
Que nos devuelve unos valores de las concentraciones para el límite de:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\lim A=2,0036≈2 mol/L&amp;lt;/math&amp;gt;:     &lt;br /&gt;
&amp;lt;math&amp;gt;\lim B=0,0036≈0mol/L&amp;lt;/math&amp;gt;:         &lt;br /&gt;
&amp;lt;math&amp;gt;\lim C=0,9964≈1mol/L&amp;lt;/math&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
Lo cual es lógico, ya que &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;B&amp;lt;/math&amp;gt; se combinan en una proporción de 1:1, luego &amp;lt;math&amp;gt;B&amp;lt;/math&amp;gt;, que tiene una concentración inicial de &amp;lt;math&amp;gt;b_0&amp;lt;/math&amp;gt;=1, será el reactivo limitante (el que desaparecerá por completo), mientras que &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt;, con &amp;lt;math&amp;gt;a_0&amp;lt;/math&amp;gt;=3, acabará con una concentración molar final igual a 2, y &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt;, del que no habia nada,alcanza una concentraccion de &amp;lt;math&amp;gt;1mol/L&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
= Método del Trapecio y Método de Runge-Kutta=&lt;br /&gt;
&lt;br /&gt;
A continuación, para obtener con más precisión las representaciones gráficas de las respectivas concentraciones, se opta por utilizar los métodos de los &amp;lt;math&amp;gt;Trapecios&amp;lt;/math&amp;gt; (segundo orden) y de &amp;lt;math&amp;gt;Runge-Kutta&amp;lt;/math&amp;gt; (cuarto orden). Además, se ha obtenido la expresión explícita de la solución de nuestro problema de valor inicial de manera analítica, mediante variables separables y fracciones simples, resultando la función real::&lt;br /&gt;
&amp;lt;math&amp;gt;y_e(t)=\frac{3e^{2t}-3}{3e^{2t}-1}&amp;lt;/math&amp;gt;&lt;br /&gt;
De manera que las concentraciones de A y de B en cada valor de t quedarían como::&lt;br /&gt;
&amp;lt;math&amp;gt;a_e(t)=a_0-y_e(t)&amp;lt;/math&amp;gt;:&lt;br /&gt;
&amp;lt;math&amp;gt;b_e (t)=b_0-y_e (t)&amp;lt;/math&amp;gt;:&lt;br /&gt;
Para los trapecios, al ser un método implícito, es necesario despejar la componente &amp;lt;math&amp;gt;y_{n+1}&amp;lt;/math&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;y_{n+1}=\frac{(1+\frac{h}{2}∙k_1∙(a_0+b_0))-\sqrt{(1+\frac{h}{2}∙k_1∙(a_0+b_0))^2 -2∙h∙k_1(y_n+\frac{h}{2}∙k_1∙(a_0-y_n )∙(b_0-y_n)+\frac{h}{2}∙k_1∙a_0∙b_0) }}{k_1∙h}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Cabe destacar que este programa parte de los datos ya establecidos en el programa de Euler para '''t0, tN, y0, a0, b0, k1 y h''':&lt;br /&gt;
{{matlab|codigo= &lt;br /&gt;
%Función real&lt;br /&gt;
ye=(3*exp(2.*t)-3)./(3*exp(2.*t)-1);&lt;br /&gt;
ae=a0-ye;&lt;br /&gt;
be=b0-ye;&lt;br /&gt;
&lt;br /&gt;
%Trapecios&lt;br /&gt;
y2=zeros(1,length(t)); &lt;br /&gt;
a2=y2;&lt;br /&gt;
b2=y2;&lt;br /&gt;
y2(1)=y0;&lt;br /&gt;
a2(1)=a0;&lt;br /&gt;
b2(1)=b0;&lt;br /&gt;
for i= 1:length(t)-1&lt;br /&gt;
    y2(i+1)=((1+0.5*h*k1*(a0+b0))-sqrt((1+0.5*h*k1*(a0+b0))^2-2*h*k1*(y2(i)+0.5*h*k1*(a0-y2(i))*(b0-y2(i))+0.5*h*k1*a0*b0)))/(k1*h);&lt;br /&gt;
a2(i+1)=a0-y2(i+1);&lt;br /&gt;
b2(i+1)=b0-y2(i+1);&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
%Runge-Kutta&lt;br /&gt;
y3=zeros(1,length(t)); &lt;br /&gt;
a3=y3;&lt;br /&gt;
b3=y3;&lt;br /&gt;
y3(1)=y0;&lt;br /&gt;
a3(1)=a0;&lt;br /&gt;
b3(1)=b0;&lt;br /&gt;
fori=1:length(t)-1 &lt;br /&gt;
    r1=k1*(a0-y3(i))*(b0-y3(i));&lt;br /&gt;
    r2=k1*(a0-y3(i)-0.5*r1*h)*(b0-y3(i)-0.5*r1*h);&lt;br /&gt;
    r3=k1*(a0-y3(i)-0.5*r2*h)*(b0-y3(i)-0.5*r2*h);&lt;br /&gt;
    r4=k1*(a0-y3(i)-r3*h)*(b0-y3(i)-r3*h);&lt;br /&gt;
y3(i+1)=y3(i)+h/6*(r1+2*r2+2*r3+r4);&lt;br /&gt;
a3(i+1)=a0-y3(i+1);&lt;br /&gt;
b3(i+1)=b0-y3(i+1);&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
%se pintan las cuatro gráficas, con la función real en verde y los puntos con asteriscos, &lt;br /&gt;
%Euler en rojo, los Trapecios en azul, y Runge-Kutta en negro&lt;br /&gt;
figure(2)&lt;br /&gt;
hold on&lt;br /&gt;
&lt;br /&gt;
plot(t,ye,'g*-')&lt;br /&gt;
plot(t,y2)&lt;br /&gt;
plot(t,y3,'k')&lt;br /&gt;
plot(t,y1,'r')&lt;br /&gt;
legend('Función real','Trapecios', 'Runge-Kutta', 'Euler','Location','best');&lt;br /&gt;
plot(t,ae,'g*')&lt;br /&gt;
plot(t,a2)&lt;br /&gt;
plot(t,a3,'k')&lt;br /&gt;
plot(t,a1,'r')&lt;br /&gt;
plot(t,be,'g*')&lt;br /&gt;
plot(t,b2)&lt;br /&gt;
plot(t,b3,'k')&lt;br /&gt;
plot(t,b1,'r')&lt;br /&gt;
hold off&lt;br /&gt;
&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
Los resultados del programa se muestran en las dos siguientes figuras. Como podemos observar, el método de '''Euler''', en &amp;lt;span style=&amp;quot;color:#FF0000;&amp;quot;&amp;gt;Rojo&amp;lt;/span&amp;gt;, rápidamente se separa de los demás y de la función real, lo que es debido a que es un método de orden 1 y su precisión es bastante reducida. Para analizar el comportamiento de los otros dos métodos, se ha hecho un zoom en una zona aleatoria de la gráfica, y se muestra en la figura 2. Lo lógico, debido a que es de orden 2, es que el método de los trapecios sea el siguiente que se aleje de la solución real, y esto es precisamente lo que se evidencia en la gráfica, pues como vemos, la línea azul se separa de la '''negra''' y de la &amp;lt;span style=&amp;quot;color:#00FF00;&amp;quot;&amp;gt;Verde&amp;lt;/span&amp;gt;. Es por tanto que el método de '''Runge-Kutta''' es el más preciso de todos, haciendo honor a su cuarto orden, y como podemos observar, las líneas &amp;lt;span style=&amp;quot;color:#00FF00;&amp;quot;&amp;gt;Verde&amp;lt;/span&amp;gt; y '''negra''' son casi indistinguibles. &lt;br /&gt;
&lt;br /&gt;
Es importante también atender a la escala que se muestra en la figura 2, que nos da una idea de los rangos en el eje de ordenadas de los que estamos hablando. Cabe decir que estamos trabajando con un paso de h=0.1, lo que significa que con un paso menor, estas diferencias serian mucho menos perceptibles.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Archivo:4trapeciokung.jpeg|500px|miniaturadeimagen|center|Reacción compleja]]&lt;br /&gt;
&lt;br /&gt;
[[Archivo:4comparacion.jpeg|500px|miniaturadeimagen|center|Gráfico 2]]&lt;br /&gt;
&lt;br /&gt;
=Reacción consecutiva=&lt;br /&gt;
&lt;br /&gt;
Consideremos ahora que se produce una reacción consecutiva de la forma.: &lt;br /&gt;
&lt;br /&gt;
                                                                   &amp;lt;math&amp;gt;A + B → k_1C → k_2D&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
De tal modo que los reactivos &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;B&amp;lt;/math&amp;gt; se combinan en la proporción 1:1 para formar compuesto &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt;, el cual, a su vez, se va descomponiendo para formar compuesto &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt;. Al igual que se ha hecho antes al analizar las otras reacciones, se considerará que se cumple la ley de acción de masas. Es decir, la velocidad con la que se forma compuesto &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; es proporcional a las concentraciones existentes de &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt; y de &amp;lt;math&amp;gt;B&amp;lt;/math&amp;gt; y del mismo modo la de formación de la sustancia &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; lo es a la concentración de &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; que se ha ido formando.&lt;br /&gt;
&lt;br /&gt;
Esta reacción consecutiva está representada por el siguiente problema de valor inicial::&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;&lt;br /&gt;
   \left . &lt;br /&gt;
      \begin{matrix} &lt;br /&gt;
         y'_1(t)={k_{1}}({a_{0}}-y_1(t))({b_{0}}-y_1(t))\\&lt;br /&gt;
         y'_2(t)={k_{2}}(y_1(t)-y_2(t))\\&lt;br /&gt;
y_1(0)=0\\y_2(0)=0&lt;br /&gt;
      \end{matrix}&lt;br /&gt;
   \right \}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
Donde &amp;lt;math&amp;gt;a_0&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;b_0&amp;lt;/math&amp;gt; representan las concentraciones iniciales de &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;B&amp;lt;/math&amp;gt; respectivamente, &amp;lt;math&amp;gt;k_1&amp;lt;/math&amp;gt; es la constante de proporcionalidad que rige la primera reacción y &amp;lt;math&amp;gt;k_2&amp;lt;/math&amp;gt; la que rige la segunda reacción o reacción consecutiva. &amp;lt;math&amp;gt;y_1’(t)&amp;lt;/math&amp;gt; e  &amp;lt;math&amp;gt;y_2’(t)&amp;lt;/math&amp;gt; representan las velocidades de las reacciones, es decir, las velocidades con que se forman los productos &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt;. &amp;lt;math&amp;gt;y_2(t)&amp;lt;/math&amp;gt; representa la concentración del producto &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; pero es importante apreciar que en este caso &amp;lt;math&amp;gt;y_1(t)&amp;lt;/math&amp;gt; no nos da el valor de la concentración de &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; directamente, sino que ésta será &amp;lt;math&amp;gt;y_1(t)&amp;lt;/math&amp;gt;- &amp;lt;math&amp;gt;y_2(t)&amp;lt;/math&amp;gt;, la cantidad que se forma en la primera reacción menos la que se emplea para formar el producto &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; en la segunda.&lt;br /&gt;
&lt;br /&gt;
Este problema se va a resolver para dos casos diferentes. Uno en el cual se considera que la segunda reacción es más rápida que la primera, lo que supone tomar un valor de la constante &amp;lt;math&amp;gt;k_2&amp;lt;/math&amp;gt;  mayor que &amp;lt;math&amp;gt;k_1&amp;lt;/math&amp;gt;. Y otro en el cual se considera que es más lenta, lo que implica que &amp;lt;math&amp;gt;k_2&amp;lt;/math&amp;gt; es menor que &amp;lt;math&amp;gt;k_1&amp;lt;/math&amp;gt;. Concretamente vamos a tomar los siguientes valores para resolver el problema numéricamente; &amp;lt;math&amp;gt;a_0&amp;lt;/math&amp;gt;=3 ,  &amp;lt;math&amp;gt;b_0&amp;lt;/math&amp;gt;=1, &amp;lt;math&amp;gt;k_1&amp;lt;/math&amp;gt;=1,  &amp;lt;math&amp;gt;k_2&amp;lt;/math&amp;gt;=5, &amp;lt;math&amp;gt;k_2&amp;lt;/math&amp;gt;=1/5, .En ambos casos se resuelve para los primeros 10 segundos.&lt;br /&gt;
&lt;br /&gt;
==La reacción D es más rápida que la reacción C==&lt;br /&gt;
CASO    &amp;lt;math&amp;gt;k_1=5  &amp;lt;/math&amp;gt;   '''h=0.1''' &lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
&lt;br /&gt;
%datos&lt;br /&gt;
y0=[0;0];&lt;br /&gt;
z0=[0;0];&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;
%matriz de las soluciones&lt;br /&gt;
y=zeros(2,length(t)); %euler&lt;br /&gt;
y(:,1)=y0;&lt;br /&gt;
 &lt;br /&gt;
z=zeros(2,length(t)); %runge-kutta&lt;br /&gt;
z(:,1)=y0;&lt;br /&gt;
 &lt;br /&gt;
for i=1:length(t)-1&lt;br /&gt;
 %euler&lt;br /&gt;
 y(:,i+1)=y(:,i)+h*[1*(3-y(1,i))*(1-y(1,i)); 5*(y(1,i)-y(2,i))];&lt;br /&gt;
 %runge-kutta&lt;br /&gt;
 K1=[1*(3-z(1,i))*(1-z(1,i)); 5*(z(1,i)-z(2,i))];&lt;br /&gt;
 K2=[1*(3-(z(1,i)+h/2*K1(1)))*(1-(z(1,i)+h/2*K1(1))); 5*((y(1,i)+h/2*K1(2))-(y(2,i)+h/2*K1(2)))];&lt;br /&gt;
 K3=[1*(3-(z(1,i)+h/2*K2(1)))*(1-(z(1,i)+h/2*K2(1))); 5*((y(1,i)+h/2*K2(2))-(y(2,i)+h/2*K2(2)))];&lt;br /&gt;
 K4=[1*(3-(z(1,i)+h*K3(1)))*(1-(z(1,i)+h*K3(1))); 5*((y(1,i)+h*K3(2))-(y(2,i)+h*K3(2)))];&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;
% se calcula la concentración de C=y1t)-y2(t)&lt;br /&gt;
Ay=y(1,:)-y(2,:); %euler&lt;br /&gt;
Az=z(1,:)-z(2,:); %runge-kutta&lt;br /&gt;
 &lt;br /&gt;
figure(1)&lt;br /&gt;
hold on&lt;br /&gt;
plot(t,Ay) %concentración de C por euler&lt;br /&gt;
plot(t,y(2,:),'r') %concentración de D por euler&lt;br /&gt;
plot(t,Az,'k') %concentración de C por runge-kutta&lt;br /&gt;
plot(t,z(2,:),'g') %concentración de D por runge-kutta&lt;br /&gt;
legend('concentración de C por euler','concentración de D por euler','concentración de C por runge-kutta','concentración de D por runge-kutta','Location','best')&lt;br /&gt;
hold off&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:graficoa.jpeg|500px|miniaturadeimagen|center|Reacción compleja]]&lt;br /&gt;
&lt;br /&gt;
Se observa que en en los primeros instantes aumentan las concentraciones de &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; aumentan sus concentraciones. Antes de que pase 1 segundo, la concentración &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; alcanza un máximo (de unos 0.3 molar) y va disminuyendo progresivamente hasta alcanzar un valor de 0 molar. La concentración &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; sigue creciendo hasta llegar a 1 molar. Una vez que tanto &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; como &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; alcanzan estos valores, se estabiliza la reacción. &lt;br /&gt;
&lt;br /&gt;
Como hemos impuesto que la reacción &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; es más rápida que &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt;, se observa que &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; empieza creciendo más rápidamente, pero como reacciona más despacio que &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; su concentración disminuye progresivamente, mientras que la de &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; aumenta.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''CASO'''  &amp;lt;math&amp;gt;k_2=5  &amp;lt;/math&amp;gt;   '''h=0.3''' &lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
&lt;br /&gt;
%datos&lt;br /&gt;
y0=[0;0];&lt;br /&gt;
z0=[0;0];&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=10;&lt;br /&gt;
h=0.3;&lt;br /&gt;
 &lt;br /&gt;
%variable independiente t&lt;br /&gt;
t=t0:h:tN;&lt;br /&gt;
 &lt;br /&gt;
%matriz de las soluciones&lt;br /&gt;
y=zeros(2,length(t)); %euler&lt;br /&gt;
y(:,1)=y0;&lt;br /&gt;
 &lt;br /&gt;
z=zeros(2,length(t)); %runge-kutta&lt;br /&gt;
z(:,1)=y0;&lt;br /&gt;
 &lt;br /&gt;
for i=1:length(t)-1&lt;br /&gt;
 %euler&lt;br /&gt;
 y(:,i+1)=y(:,i)+h*[1*(3-y(1,i))*(1-y(1,i)); 5*(y(1,i)-y(2,i))];&lt;br /&gt;
 %runge-kutta&lt;br /&gt;
 K1=[1*(3-z(1,i))*(1-z(1,i)); 5*(z(1,i)-z(2,i))];&lt;br /&gt;
 K2=[1*(3-(z(1,i)+h/2*K1(1)))*(1-(z(1,i)+h/2*K1(1))); 5*((y(1,i)+h/2*K1(2))-(y(2,i)+h/2*K1(2)))];&lt;br /&gt;
 K3=[1*(3-(z(1,i)+h/2*K2(1)))*(1-(z(1,i)+h/2*K2(1))); 5*((y(1,i)+h/2*K2(2))-(y(2,i)+h/2*K2(2)))];&lt;br /&gt;
 K4=[1*(3-(z(1,i)+h*K3(1)))*(1-(z(1,i)+h*K3(1))); 5*((y(1,i)+h*K3(2))-(y(2,i)+h*K3(2)))];&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;
% se calcula la concentración de C=y1t)-y2(t)&lt;br /&gt;
Ay=y(1,:)-y(2,:); %euler&lt;br /&gt;
Az=z(1,:)-z(2,:); %runge-kutta&lt;br /&gt;
 &lt;br /&gt;
figure(1)&lt;br /&gt;
hold on&lt;br /&gt;
plot(t,Ay) %concentración de C por euler&lt;br /&gt;
plot(t,y(2,:),'r') %concentración de D por euler&lt;br /&gt;
plot(t,Az,'k') %concentración de C por runge-kutta&lt;br /&gt;
plot(t,z(2,:),'g') %concentración de D por runge-kutta&lt;br /&gt;
legend('concentración de C por euler','concentración de D por euler','concentración de C por runge-kutta','concentración de D por runge-kutta','Location','best')&lt;br /&gt;
hold off&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:graficob.jpeg|500px|miniaturadeimagen|center|Reacción compleja]]&lt;br /&gt;
&lt;br /&gt;
Repetimos el programa pero para un tamaño de paso mayor, de '''h=0.3''', y observamos que no  es suficientemente preciso, sobre todo al principio, no se puede analizar bien lo que está pasando en la reacción.&lt;br /&gt;
&lt;br /&gt;
==La reacción D es más lenta que la reacción C==&lt;br /&gt;
&lt;br /&gt;
CASO  &amp;lt;math&amp;gt;k_1 &amp;lt;/math&amp;gt;=1,   &amp;lt;math&amp;gt;k_2 &amp;lt;/math&amp;gt;=1/5&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
&lt;br /&gt;
%datos&lt;br /&gt;
y0=[0;0];&lt;br /&gt;
z0=[0;0];&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;
%matriz de las soluciones&lt;br /&gt;
y=zeros(2,length(t)); %euler&lt;br /&gt;
y(:,1)=y0;&lt;br /&gt;
 &lt;br /&gt;
z=zeros(2,length(t)); %runge-kutta&lt;br /&gt;
z(:,1)=y0;&lt;br /&gt;
 &lt;br /&gt;
for i=1:length(t)-1&lt;br /&gt;
 %euler&lt;br /&gt;
 y(:,i+1)=y(:,i)+h*[1*(3-y(1,i))*(1-y(1,i)); 1/5*(y(1,i)-y(2,i))];&lt;br /&gt;
 %runge-kutta&lt;br /&gt;
 K1=[1*(3-z(1,i))*(1-z(1,i)); 1/5*(z(1,i)-z(2,i))];&lt;br /&gt;
 K2=[1*(3-(z(1,i)+h/2*K1(1)))*(1-(z(1,i)+h/2*K1(1))); 1/5*((y(1,i)+h/2*K1(2))-(y(2,i)+h/2*K1(2)))];&lt;br /&gt;
 K3=[1*(3-(z(1,i)+h/2*K2(1)))*(1-(z(1,i)+h/2*K2(1))); 1/5*((y(1,i)+h/2*K2(2))-(y(2,i)+h/2*K2(2)))];&lt;br /&gt;
 K4=[1*(3-(z(1,i)+h*K3(1)))*(1-(z(1,i)+h*K3(1))); 1/5*((y(1,i)+h*K3(2))-(y(2,i)+h*K3(2)))];&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;
% se calcula la concentración de C=y1t)-y2(t)&lt;br /&gt;
Ay=y(1,:)-y(2,:); %euler&lt;br /&gt;
Az=z(1,:)-z(2,:); %runge-kutta&lt;br /&gt;
 &lt;br /&gt;
figure(1)&lt;br /&gt;
hold on&lt;br /&gt;
plot(t,Ay) %concentración de C por euler&lt;br /&gt;
plot(t,y(2,:),'r') %concentración de D por euler&lt;br /&gt;
plot(t,Az,'k') %concentración de C por runge-kutta&lt;br /&gt;
plot(t,z(2,:),'g') %concentración de D por runge-kutta&lt;br /&gt;
legend('concentración de C por euler','concentración de D por euler','concentración de C por runge-kutta','concentración de D por runge-kutta','Location','best')&lt;br /&gt;
hold off&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:graficoc.jpeg|500px|miniaturadeimagen|center|Reacción compleja]]&lt;br /&gt;
&lt;br /&gt;
Si ahora imponemos que la reacción  &amp;lt;math&amp;gt;C &amp;lt;/math&amp;gt; es más rápida que  &amp;lt;math&amp;gt;D &amp;lt;/math&amp;gt;, obtenemos lo siguiente. Se parece a la gráfica que obtuvimos en el programa anterior, pero  más extendida en el tiempo, más lenta.  &amp;lt;math&amp;gt;C &amp;lt;/math&amp;gt; alcanza una concentración máxima de unos 0.8 molar antes de empezar a decrecer a medida que avanza el tiempo y acercándose a un valor de '''0''' molar.  &amp;lt;math&amp;gt;D &amp;lt;/math&amp;gt; crece más lentamente que en la gráfica anterior, pero se aproxima al mismo valor, '''1''' molar.&lt;br /&gt;
Se observa que aunque hagamos la reacción  &amp;lt;math&amp;gt;C &amp;lt;/math&amp;gt; más rápida, tenemos las mismas concentraciones finales, pero tardan más tiempo en obtenerse, ya que la reacción tarda más en estabilizarse.&lt;br /&gt;
&lt;br /&gt;
&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>Joseva</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Reacciones_complejas_(Grupo_D1)&amp;diff=27761</id>
		<title>Reacciones complejas (Grupo D1)</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Reacciones_complejas_(Grupo_D1)&amp;diff=27761"/>
				<updated>2015-03-06T11:32:29Z</updated>
		
		<summary type="html">&lt;p&gt;Joseva: /* Método del Trapecio y Método de Runge-Kutta */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{ TrabajoED | Reacciones complejas (Grupo D1) | [[:Categoría:Ecuaciones Diferenciales|Ecuaciones Diferenciales]]|[[:Categoría:ED14/15|Curso 2014-15]] | Rincón Crespo, Kevin&lt;br /&gt;
&lt;br /&gt;
Rodríguez Gómez, Javier&lt;br /&gt;
&lt;br /&gt;
Sans Jiménez, Alejandro&lt;br /&gt;
&lt;br /&gt;
Sesto Muñoz, María Victoria&lt;br /&gt;
&lt;br /&gt;
Vallejo Asín, José Manuel &lt;br /&gt;
&lt;br /&gt;
Villarino Redondo, Álvaro }}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=Introducción=&lt;br /&gt;
Se considera una reacción química irreversible en una solución bien mezclada. Supondremos que la reacción ocurre para un volumen y temperatura constantes. Al inicio se encuentran dos reactivos &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;B&amp;lt;/math&amp;gt;, que van formando un producto &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; en lo que se conoce como una reacción bimolecular, es decir, una molécula de &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt; y una de &amp;lt;math&amp;gt;B&amp;lt;/math&amp;gt; producen una de &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt;.: &lt;br /&gt;
                                                                     &amp;lt;math&amp;gt;A + B → C&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Supondremos también que se satisface la ley de acción de masas, que establece que la velocidad de reacción es proporcional al producto de las concentraciones de los reactivos.&lt;br /&gt;
&lt;br /&gt;
=Concentración del reactivo &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; a lo largo del tiempo=&lt;br /&gt;
En primer lugar, suponiendo que la reacción es irreversible, es decir, que &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; no puede volver a formar &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;B&amp;lt;/math&amp;gt;, se puede expresar la situación mediante el siguiente problema de valor inicial, cuando t&amp;gt;0.:&lt;br /&gt;
   &amp;lt;math&amp;gt;&lt;br /&gt;
   \left . &lt;br /&gt;
      \begin{matrix} &lt;br /&gt;
         y'(t)={k_{1}}({a_{0}}-y(t))({b_{0}}-y(t))=0\\&lt;br /&gt;
         y(0)=0&lt;br /&gt;
      \end{matrix}&lt;br /&gt;
   \right \}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Donde &amp;lt;math&amp;gt; {a_{0}}&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;{b_{0}}&amp;lt;/math&amp;gt; representan las concentraciones iniciales de '''A''' y '''B''' respectivamente y &amp;lt;math&amp;gt;{k_{1}}&amp;lt;/math&amp;gt; es la constante de proporcionalidad que indica la ley de acción de masas. &amp;lt;math&amp;gt;y’(t)&amp;lt;/math&amp;gt; representa la velocidad de reacción, es decir, la velocidad con que se forma el producto &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; ; mientras que la solución de la ecuación diferencial, &amp;lt;math&amp;gt;y(t)&amp;lt;/math&amp;gt; , representa la concentración de &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt;, la cantidad de compuesto que se ha formado. Para comprobar que la solución de este problema de Cauchy es única, comenzamos definiendo.:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;math&amp;gt;f(t,y)={k_{1}}({a_{0}}-y(t))({b_{0}}-y(t))=0,   t&amp;gt;0 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Observamos que &amp;lt;math&amp;gt;f(t,y)&amp;lt;/math&amp;gt; es continua en el intervalo &amp;lt;math&amp;gt; I=(0,∞)∩B((0,0),r&amp;gt;0)&amp;lt;/math&amp;gt;, por lo que ya aseguramos la existencia de al menos una solución. Examinando la derivada parcial.:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\frac{∂f}{∂y}=k_1(-a_0-b_0+2y)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Se deduce que al ser un polinomio no va a haber problemas de continuidad para ninguna bola. De esta forma, podemos asegurar que existe una única solución.&lt;br /&gt;
&lt;br /&gt;
==Concentración del reactivo C a lo largo del tiempo en un proceso reversible==&lt;br /&gt;
&lt;br /&gt;
Ahora bien, ¿qué pasaría si la reacción fuese reversible? Con esto lo que queremos indicar es que además de formarse  &amp;lt;math&amp;gt;C &amp;lt;/math&amp;gt;, este también se descompone de nuevo en  &amp;lt;math&amp;gt;A &amp;lt;/math&amp;gt; y  &amp;lt;math&amp;gt;B &amp;lt;/math&amp;gt;. Por lo tanto, nos quedaría una ecuación diferencial con la siguiente forma, cuando &amp;lt;math&amp;gt;t&amp;gt;0 &amp;lt;/math&amp;gt;. :&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; y'(t)={k_{1}}({a_{0}}-y(t))({b_{0}}-y(t))-Cy(t)&amp;lt;/math&amp;gt;  &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Si nos fijamos, la modificación es sencillamente restar  &amp;lt;math&amp;gt;y(t) &amp;lt;/math&amp;gt; multiplicada por una constante, la cual refleja qué porcentaje de  &amp;lt;math&amp;gt;C &amp;lt;/math&amp;gt; se va descomponiendo a medida que se da, simultáneamente, la reacción  &amp;lt;math&amp;gt;A + B → C &amp;lt;/math&amp;gt;. Sin embargo, esta constante no puede tener cualquier valor, ya que en una reacción se cumple la conservación de masa. Por ello, a  &amp;lt;math&amp;gt;C &amp;lt;/math&amp;gt; le asociaremos el siguiente dominio::&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;C∈(0,1)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Obsérvese que  &amp;lt;math&amp;gt;C &amp;lt;/math&amp;gt; tiene que ser mayor que 0 para que sea reversible, pero al mismo tiempo inferior que 1, ya que si no se estaría descomponiendo más compuesto  &amp;lt;math&amp;gt;C &amp;lt;/math&amp;gt; del que realmente se ha formado, en otras palabras, estaría apareciendo masa de la nada.&lt;br /&gt;
&lt;br /&gt;
=Método de Euler=&lt;br /&gt;
&lt;br /&gt;
Una vez llegados a este punto, se procede a ver una interpretación gráfica de la reacción. Para ello, se refleja en la gráfica (en un intervalo de 2 segundos), cómo varían las concentraciones tanto de &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt; (&amp;lt;math&amp;gt;a_0&amp;lt;/math&amp;gt;=3 mol/L) y &amp;lt;math&amp;gt;B&amp;lt;/math&amp;gt; (&amp;lt;math&amp;gt;b_0&amp;lt;/math&amp;gt;=1 mol/L) como de &amp;lt;math&amp;gt; C&amp;lt;/math&amp;gt;, para una &amp;lt;math&amp;gt;k_1&amp;lt;/math&amp;gt;=1 mol/s. Se comienza, por el momento, aplicando el método de Euler. Posteriormente se utilizarán métodos más precisos.&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo= &lt;br /&gt;
% Euler&lt;br /&gt;
clear all&lt;br /&gt;
% datos del problema&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=2;&lt;br /&gt;
y0=0;&lt;br /&gt;
h=0.1;&lt;br /&gt;
k1=1;&lt;br /&gt;
a0=3;&lt;br /&gt;
b0=1;&lt;br /&gt;
% Definimos la variable independiente&lt;br /&gt;
t=t0:h:tN;&lt;br /&gt;
% Guardamos los valores de la solución aproximada en el vector &amp;quot;y1&amp;quot; y&lt;br /&gt;
% establecemos los vectores de concentraciones A y B&lt;br /&gt;
y1=zeros(1,length(t)); &lt;br /&gt;
y1(1)=y0;&lt;br /&gt;
a1=zeros(1,length(t));&lt;br /&gt;
a1(1)=a0;&lt;br /&gt;
b1=zeros(1,length(t));&lt;br /&gt;
b1(1)=b0;&lt;br /&gt;
% A continuación, calculamos las componentes de los vectores y1, a1 y b1&lt;br /&gt;
for i=1:length(t)-1&lt;br /&gt;
    y1(i+1)=y1(i)+h*(k1*(a0-y1(i))*(b0-y1(i)));    %Euler&lt;br /&gt;
    a1(i+1)=a0-y1(i+1); % evolución de la concentración de A&lt;br /&gt;
    b1(i+1)=b0-y1(i+1); % evolución de la concentración de B&lt;br /&gt;
end&lt;br /&gt;
%grafico &lt;br /&gt;
figure(1)&lt;br /&gt;
hold on&lt;br /&gt;
plot(t,y1,'g')&lt;br /&gt;
plot(t,a1,'r')&lt;br /&gt;
plot(t,b1,'b')&lt;br /&gt;
legend('concentración de C','concentración de A','concentración de B','location','best')&lt;br /&gt;
hold off &lt;br /&gt;
%en verde se muestra la concentración de C, en rojo la de A, y en azul la de B&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Archivo:3euler.jpeg|500px|miniaturadeimagen|center|Reacción compleja]]&lt;br /&gt;
&lt;br /&gt;
Aunque con observar los resultados ya podemos decir con casi absoluta seguridad cuáles son los límites de las concentraciones de cada reactivo &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;B&amp;lt;/math&amp;gt; y del producto &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt;, se ha diseñado un programa que, mediante diferencia de valores sucesivos de la variable &amp;lt;math&amp;gt;y(t)&amp;lt;/math&amp;gt;, nos devuelve el valor de la función cuando dicha diferencia es muy pequeña '''(se ha puesto una diferencia de 0.001)''', es decir, cuando tenemos una asíntota al tender &amp;lt;math&amp;gt;t→∞&amp;lt;/math&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
%Estudio de las asíntotas&lt;br /&gt;
t1=t0:h:10;%se aumenta la longitud de t, y se estima que se alcanzarán las asíntotas antes de t=10&lt;br /&gt;
y_=zeros(1,length(t1)); %se define un vector y_ idéntico a y1 pero con t hasta 10&lt;br /&gt;
a_=y_;&lt;br /&gt;
b_=y_;&lt;br /&gt;
y_(1)=y0;&lt;br /&gt;
a_(1)=a0;&lt;br /&gt;
b_(1)=b0;&lt;br /&gt;
for i=1:length(t1)-1&lt;br /&gt;
    y_(i+1)=y_(i)+h*(k1*(a0-y_(i))*(b0-y_(i)));&lt;br /&gt;
    diferencia=y_(i+1)-y_(i);&lt;br /&gt;
    if abs(diferencia)&amp;lt;=0.001&lt;br /&gt;
        limC=y_(i+1)&lt;br /&gt;
        break&lt;br /&gt;
    end&lt;br /&gt;
end&lt;br /&gt;
for i=1:length(t1)-1&lt;br /&gt;
    y_(i+1)=y_(i)+h*(k1*(a0-y_(i))*(b0-y_(i)));    &lt;br /&gt;
    a_(i+1)=a0-y_(i+1);&lt;br /&gt;
    diferencia2=a_(i+1)-a_(i);&lt;br /&gt;
    if abs(diferencia2)&amp;lt;=0.001&lt;br /&gt;
        limA=a_(i+1)&lt;br /&gt;
        break&lt;br /&gt;
    end&lt;br /&gt;
end&lt;br /&gt;
for i=1:length(t1)-1&lt;br /&gt;
    y_(i+1)=y_(i)+h*(k1*(a0-y_(i))*(b0-y_(i)));    &lt;br /&gt;
    b_(i+1)=b0-y_(i+1);&lt;br /&gt;
    diferencia3=b_(i+1)-b_(i);&lt;br /&gt;
    if abs(diferencia3)&amp;lt;=0.001&lt;br /&gt;
        limB=b_(i+1)&lt;br /&gt;
        break&lt;br /&gt;
    end&lt;br /&gt;
end&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
Que nos devuelve unos valores de las concentraciones para el límite de:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\lim A=2,0036≈2 mol/L&amp;lt;/math&amp;gt;:     &lt;br /&gt;
&amp;lt;math&amp;gt;\lim B=0,0036≈0mol/L&amp;lt;/math&amp;gt;:         &lt;br /&gt;
&amp;lt;math&amp;gt;\lim C=0,9964≈1mol/L&amp;lt;/math&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
Lo cual es lógico, ya que &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;B&amp;lt;/math&amp;gt; se combinan en una proporción de 1:1, luego &amp;lt;math&amp;gt;B&amp;lt;/math&amp;gt;, que tiene una concentración inicial de &amp;lt;math&amp;gt;b_0&amp;lt;/math&amp;gt;=1, será el reactivo limitante (el que desaparecerá por completo), mientras que &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt;, con &amp;lt;math&amp;gt;a_0&amp;lt;/math&amp;gt;=3, acabará con una concentración molar final igual a 2, y &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt;, del que no habia nada,alcanza una concentraccion de &amp;lt;math&amp;gt;1mol/L&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
= Método del Trapecio y Método de Runge-Kutta=&lt;br /&gt;
&lt;br /&gt;
A continuación, para obtener con más precisión las representaciones gráficas de las respectivas concentraciones, se opta por utilizar los métodos de los &amp;lt;math&amp;gt;Trapecios&amp;lt;/math&amp;gt; (segundo orden) y de &amp;lt;math&amp;gt;Runge-Kutta&amp;lt;/math&amp;gt; (cuarto orden). Además, se ha obtenido la expresión explícita de la solución de nuestro problema de valor inicial de manera analítica, mediante variables separables y fracciones simples, resultando la función real::&lt;br /&gt;
&amp;lt;math&amp;gt;y_e(t)=\frac{3e^{2t}-3}{3e^{2t}-1}&amp;lt;/math&amp;gt;&lt;br /&gt;
De manera que las concentraciones de A y de B en cada valor de t quedarían como::&lt;br /&gt;
&amp;lt;math&amp;gt;a_e(t)=a_0-y_e(t)&amp;lt;/math&amp;gt;:&lt;br /&gt;
&amp;lt;math&amp;gt;b_e (t)=b_0-y_e (t)&amp;lt;/math&amp;gt;:&lt;br /&gt;
Para los trapecios, al ser un método implícito, es necesario despejar la componente &amp;lt;math&amp;gt;y_{n+1}&amp;lt;/math&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;y_{n+1}=\frac{(1+\frac{h}{2}∙k_1∙(a_0+b_0))-\sqrt{(1+\frac{h}{2}∙k_1∙(a_0+b_0))^2 -2∙h∙k_1(y_n+\frac{h}{2}∙k_1∙(a_0-y_n )∙(b_0-y_n)+\frac{h}{2}∙k_1∙a_0∙b_0) }}{k_1∙h}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Cabe destacar que este programa parte de los datos ya establecidos en el programa de Euler para '''t0, tN, y0, a0, b0, k1 y h''':&lt;br /&gt;
{{matlab|codigo= &lt;br /&gt;
%Función real&lt;br /&gt;
ye=(3*exp(2.*t)-3)./(3*exp(2.*t)-1);&lt;br /&gt;
ae=a0-ye;&lt;br /&gt;
be=b0-ye;&lt;br /&gt;
&lt;br /&gt;
%Trapecios&lt;br /&gt;
y2=zeros(1,length(t)); &lt;br /&gt;
a2=y2;&lt;br /&gt;
b2=y2;&lt;br /&gt;
y2(1)=y0;&lt;br /&gt;
a2(1)=a0;&lt;br /&gt;
b2(1)=b0;&lt;br /&gt;
for i= 1:length(t)-1&lt;br /&gt;
    y2(i+1)=((1+0.5*h*k1*(a0+b0))-sqrt((1+0.5*h*k1*(a0+b0))^2-2*h*k1*(y2(i)+0.5*h*k1*(a0-y2(i))*(b0-y2(i))+0.5*h*k1*a0*b0)))/(k1*h);&lt;br /&gt;
a2(i+1)=a0-y2(i+1);&lt;br /&gt;
b2(i+1)=b0-y2(i+1);&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
%Runge-Kutta&lt;br /&gt;
y3=zeros(1,length(t)); &lt;br /&gt;
a3=y3;&lt;br /&gt;
b3=y3;&lt;br /&gt;
y3(1)=y0;&lt;br /&gt;
a3(1)=a0;&lt;br /&gt;
b3(1)=b0;&lt;br /&gt;
fori=1:length(t)-1 &lt;br /&gt;
    r1=k1*(a0-y3(i))*(b0-y3(i));&lt;br /&gt;
    r2=k1*(a0-y3(i)-0.5*r1*h)*(b0-y3(i)-0.5*r1*h);&lt;br /&gt;
    r3=k1*(a0-y3(i)-0.5*r2*h)*(b0-y3(i)-0.5*r2*h);&lt;br /&gt;
    r4=k1*(a0-y3(i)-r3*h)*(b0-y3(i)-r3*h);&lt;br /&gt;
y3(i+1)=y3(i)+h/6*(r1+2*r2+2*r3+r4);&lt;br /&gt;
a3(i+1)=a0-y3(i+1);&lt;br /&gt;
b3(i+1)=b0-y3(i+1);&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
%se pintan las cuatro gráficas, con la función real en verde y los puntos con asteriscos, &lt;br /&gt;
%Euler en rojo, los Trapecios en azul, y Runge-Kutta en negro&lt;br /&gt;
figure(2)&lt;br /&gt;
hold on&lt;br /&gt;
&lt;br /&gt;
plot(t,ye,'g*-')&lt;br /&gt;
plot(t,y2)&lt;br /&gt;
plot(t,y3,'k')&lt;br /&gt;
plot(t,y1,'r')&lt;br /&gt;
legend('Función real','Trapecios', 'Runge-Kutta', 'Euler','Location','best');&lt;br /&gt;
plot(t,ae,'g*')&lt;br /&gt;
plot(t,a2)&lt;br /&gt;
plot(t,a3,'k')&lt;br /&gt;
plot(t,a1,'r')&lt;br /&gt;
plot(t,be,'g*')&lt;br /&gt;
plot(t,b2)&lt;br /&gt;
plot(t,b3,'k')&lt;br /&gt;
plot(t,b1,'r')&lt;br /&gt;
hold off&lt;br /&gt;
&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
Los resultados del programa se muestran en las dos siguientes figuras. Como podemos observar, el método de '''Euler''', en &amp;lt;span style=&amp;quot;color:#FF0000;&amp;quot;&amp;gt;Rojo&amp;lt;/span&amp;gt;, rápidamente se separa de los demás y de la función real, lo que es debido a que es un método de orden 1 y su precisión es bastante reducida. Para analizar el comportamiento de los otros dos métodos, se ha hecho un zoom en una zona aleatoria de la gráfica, y se muestra en la figura 2. Lo lógico, debido a que es de orden 2, es que el método de los trapecios sea el siguiente que se aleje de la solución real, y esto es precisamente lo que se evidencia en la gráfica, pues como vemos, la línea azul se separa de la negra y de la &amp;lt;span style=&amp;quot;color:#00FF00;&amp;quot;&amp;gt;Verde&amp;lt;/span&amp;gt;. Es por tanto que el método de '''Runge-Kutta''' es el más preciso de todos, haciendo honor a su cuarto orden, y como podemos observar, las líneas verde y negra son casi indistinguibles. &lt;br /&gt;
&lt;br /&gt;
Es importante también atender a la escala que se muestra en la figura 2, que nos da una idea de los rangos en el eje de ordenadas de los que estamos hablando. Cabe decir que estamos trabajando con un paso de h=0.1, lo que significa que con un paso menor, estas diferencias serian mucho menos perceptibles.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Archivo:4trapeciokung.jpeg|500px|miniaturadeimagen|center|Reacción compleja]]&lt;br /&gt;
&lt;br /&gt;
[[Archivo:4comparacion.jpeg|500px|miniaturadeimagen|center|Gráfico 2]]&lt;br /&gt;
&lt;br /&gt;
=Reacción consecutiva=&lt;br /&gt;
&lt;br /&gt;
Consideremos ahora que se produce una reacción consecutiva de la forma.: &lt;br /&gt;
&lt;br /&gt;
                                                                   &amp;lt;math&amp;gt;A + B → k_1C → k_2D&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
De tal modo que los reactivos &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;B&amp;lt;/math&amp;gt; se combinan en la proporción 1:1 para formar compuesto &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt;, el cual, a su vez, se va descomponiendo para formar compuesto &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt;. Al igual que se ha hecho antes al analizar las otras reacciones, se considerará que se cumple la ley de acción de masas. Es decir, la velocidad con la que se forma compuesto &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; es proporcional a las concentraciones existentes de &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt; y de &amp;lt;math&amp;gt;B&amp;lt;/math&amp;gt; y del mismo modo la de formación de la sustancia &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; lo es a la concentración de &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; que se ha ido formando.&lt;br /&gt;
&lt;br /&gt;
Esta reacción consecutiva está representada por el siguiente problema de valor inicial::&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;&lt;br /&gt;
   \left . &lt;br /&gt;
      \begin{matrix} &lt;br /&gt;
         y'_1(t)={k_{1}}({a_{0}}-y_1(t))({b_{0}}-y_1(t))\\&lt;br /&gt;
         y'_2(t)={k_{2}}(y_1(t)-y_2(t))\\&lt;br /&gt;
y_1(0)=0\\y_2(0)=0&lt;br /&gt;
      \end{matrix}&lt;br /&gt;
   \right \}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
Donde &amp;lt;math&amp;gt;a_0&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;b_0&amp;lt;/math&amp;gt; representan las concentraciones iniciales de &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;B&amp;lt;/math&amp;gt; respectivamente, &amp;lt;math&amp;gt;k_1&amp;lt;/math&amp;gt; es la constante de proporcionalidad que rige la primera reacción y &amp;lt;math&amp;gt;k_2&amp;lt;/math&amp;gt; la que rige la segunda reacción o reacción consecutiva. &amp;lt;math&amp;gt;y_1’(t)&amp;lt;/math&amp;gt; e  &amp;lt;math&amp;gt;y_2’(t)&amp;lt;/math&amp;gt; representan las velocidades de las reacciones, es decir, las velocidades con que se forman los productos &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt;. &amp;lt;math&amp;gt;y_2(t)&amp;lt;/math&amp;gt; representa la concentración del producto &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; pero es importante apreciar que en este caso &amp;lt;math&amp;gt;y_1(t)&amp;lt;/math&amp;gt; no nos da el valor de la concentración de &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; directamente, sino que ésta será &amp;lt;math&amp;gt;y_1(t)&amp;lt;/math&amp;gt;- &amp;lt;math&amp;gt;y_2(t)&amp;lt;/math&amp;gt;, la cantidad que se forma en la primera reacción menos la que se emplea para formar el producto &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; en la segunda.&lt;br /&gt;
&lt;br /&gt;
Este problema se va a resolver para dos casos diferentes. Uno en el cual se considera que la segunda reacción es más rápida que la primera, lo que supone tomar un valor de la constante &amp;lt;math&amp;gt;k_2&amp;lt;/math&amp;gt;  mayor que &amp;lt;math&amp;gt;k_1&amp;lt;/math&amp;gt;. Y otro en el cual se considera que es más lenta, lo que implica que &amp;lt;math&amp;gt;k_2&amp;lt;/math&amp;gt; es menor que &amp;lt;math&amp;gt;k_1&amp;lt;/math&amp;gt;. Concretamente vamos a tomar los siguientes valores para resolver el problema numéricamente; &amp;lt;math&amp;gt;a_0&amp;lt;/math&amp;gt;=3 ,  &amp;lt;math&amp;gt;b_0&amp;lt;/math&amp;gt;=1, &amp;lt;math&amp;gt;k_1&amp;lt;/math&amp;gt;=1,  &amp;lt;math&amp;gt;k_2&amp;lt;/math&amp;gt;=5, &amp;lt;math&amp;gt;k_2&amp;lt;/math&amp;gt;=1/5, .En ambos casos se resuelve para los primeros 10 segundos.&lt;br /&gt;
&lt;br /&gt;
==La reacción D es más rápida que la reacción C==&lt;br /&gt;
CASO    &amp;lt;math&amp;gt;k_1=5  &amp;lt;/math&amp;gt;   '''h=0.1''' &lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
&lt;br /&gt;
%datos&lt;br /&gt;
y0=[0;0];&lt;br /&gt;
z0=[0;0];&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;
%matriz de las soluciones&lt;br /&gt;
y=zeros(2,length(t)); %euler&lt;br /&gt;
y(:,1)=y0;&lt;br /&gt;
 &lt;br /&gt;
z=zeros(2,length(t)); %runge-kutta&lt;br /&gt;
z(:,1)=y0;&lt;br /&gt;
 &lt;br /&gt;
for i=1:length(t)-1&lt;br /&gt;
 %euler&lt;br /&gt;
 y(:,i+1)=y(:,i)+h*[1*(3-y(1,i))*(1-y(1,i)); 5*(y(1,i)-y(2,i))];&lt;br /&gt;
 %runge-kutta&lt;br /&gt;
 K1=[1*(3-z(1,i))*(1-z(1,i)); 5*(z(1,i)-z(2,i))];&lt;br /&gt;
 K2=[1*(3-(z(1,i)+h/2*K1(1)))*(1-(z(1,i)+h/2*K1(1))); 5*((y(1,i)+h/2*K1(2))-(y(2,i)+h/2*K1(2)))];&lt;br /&gt;
 K3=[1*(3-(z(1,i)+h/2*K2(1)))*(1-(z(1,i)+h/2*K2(1))); 5*((y(1,i)+h/2*K2(2))-(y(2,i)+h/2*K2(2)))];&lt;br /&gt;
 K4=[1*(3-(z(1,i)+h*K3(1)))*(1-(z(1,i)+h*K3(1))); 5*((y(1,i)+h*K3(2))-(y(2,i)+h*K3(2)))];&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;
% se calcula la concentración de C=y1t)-y2(t)&lt;br /&gt;
Ay=y(1,:)-y(2,:); %euler&lt;br /&gt;
Az=z(1,:)-z(2,:); %runge-kutta&lt;br /&gt;
 &lt;br /&gt;
figure(1)&lt;br /&gt;
hold on&lt;br /&gt;
plot(t,Ay) %concentración de C por euler&lt;br /&gt;
plot(t,y(2,:),'r') %concentración de D por euler&lt;br /&gt;
plot(t,Az,'k') %concentración de C por runge-kutta&lt;br /&gt;
plot(t,z(2,:),'g') %concentración de D por runge-kutta&lt;br /&gt;
legend('concentración de C por euler','concentración de D por euler','concentración de C por runge-kutta','concentración de D por runge-kutta','Location','best')&lt;br /&gt;
hold off&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:graficoa.jpeg|500px|miniaturadeimagen|center|Reacción compleja]]&lt;br /&gt;
&lt;br /&gt;
Se observa que en en los primeros instantes aumentan las concentraciones de &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; aumentan sus concentraciones. Antes de que pase 1 segundo, la concentración &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; alcanza un máximo (de unos 0.3 molar) y va disminuyendo progresivamente hasta alcanzar un valor de 0 molar. La concentración &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; sigue creciendo hasta llegar a 1 molar. Una vez que tanto &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; como &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; alcanzan estos valores, se estabiliza la reacción. &lt;br /&gt;
&lt;br /&gt;
Como hemos impuesto que la reacción &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; es más rápida que &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt;, se observa que &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; empieza creciendo más rápidamente, pero como reacciona más despacio que &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; su concentración disminuye progresivamente, mientras que la de &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; aumenta.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''CASO'''  &amp;lt;math&amp;gt;k_2=5  &amp;lt;/math&amp;gt;   '''h=0.3''' &lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
&lt;br /&gt;
%datos&lt;br /&gt;
y0=[0;0];&lt;br /&gt;
z0=[0;0];&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=10;&lt;br /&gt;
h=0.3;&lt;br /&gt;
 &lt;br /&gt;
%variable independiente t&lt;br /&gt;
t=t0:h:tN;&lt;br /&gt;
 &lt;br /&gt;
%matriz de las soluciones&lt;br /&gt;
y=zeros(2,length(t)); %euler&lt;br /&gt;
y(:,1)=y0;&lt;br /&gt;
 &lt;br /&gt;
z=zeros(2,length(t)); %runge-kutta&lt;br /&gt;
z(:,1)=y0;&lt;br /&gt;
 &lt;br /&gt;
for i=1:length(t)-1&lt;br /&gt;
 %euler&lt;br /&gt;
 y(:,i+1)=y(:,i)+h*[1*(3-y(1,i))*(1-y(1,i)); 5*(y(1,i)-y(2,i))];&lt;br /&gt;
 %runge-kutta&lt;br /&gt;
 K1=[1*(3-z(1,i))*(1-z(1,i)); 5*(z(1,i)-z(2,i))];&lt;br /&gt;
 K2=[1*(3-(z(1,i)+h/2*K1(1)))*(1-(z(1,i)+h/2*K1(1))); 5*((y(1,i)+h/2*K1(2))-(y(2,i)+h/2*K1(2)))];&lt;br /&gt;
 K3=[1*(3-(z(1,i)+h/2*K2(1)))*(1-(z(1,i)+h/2*K2(1))); 5*((y(1,i)+h/2*K2(2))-(y(2,i)+h/2*K2(2)))];&lt;br /&gt;
 K4=[1*(3-(z(1,i)+h*K3(1)))*(1-(z(1,i)+h*K3(1))); 5*((y(1,i)+h*K3(2))-(y(2,i)+h*K3(2)))];&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;
% se calcula la concentración de C=y1t)-y2(t)&lt;br /&gt;
Ay=y(1,:)-y(2,:); %euler&lt;br /&gt;
Az=z(1,:)-z(2,:); %runge-kutta&lt;br /&gt;
 &lt;br /&gt;
figure(1)&lt;br /&gt;
hold on&lt;br /&gt;
plot(t,Ay) %concentración de C por euler&lt;br /&gt;
plot(t,y(2,:),'r') %concentración de D por euler&lt;br /&gt;
plot(t,Az,'k') %concentración de C por runge-kutta&lt;br /&gt;
plot(t,z(2,:),'g') %concentración de D por runge-kutta&lt;br /&gt;
legend('concentración de C por euler','concentración de D por euler','concentración de C por runge-kutta','concentración de D por runge-kutta','Location','best')&lt;br /&gt;
hold off&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:graficob.jpeg|500px|miniaturadeimagen|center|Reacción compleja]]&lt;br /&gt;
&lt;br /&gt;
Repetimos el programa pero para un tamaño de paso mayor, de '''h=0.3''', y observamos que no  es suficientemente preciso, sobre todo al principio, no se puede analizar bien lo que está pasando en la reacción.&lt;br /&gt;
&lt;br /&gt;
==La reacción D es más lenta que la reacción C==&lt;br /&gt;
&lt;br /&gt;
CASO  &amp;lt;math&amp;gt;k_1 &amp;lt;/math&amp;gt;=1,   &amp;lt;math&amp;gt;k_2 &amp;lt;/math&amp;gt;=1/5&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
&lt;br /&gt;
%datos&lt;br /&gt;
y0=[0;0];&lt;br /&gt;
z0=[0;0];&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;
%matriz de las soluciones&lt;br /&gt;
y=zeros(2,length(t)); %euler&lt;br /&gt;
y(:,1)=y0;&lt;br /&gt;
 &lt;br /&gt;
z=zeros(2,length(t)); %runge-kutta&lt;br /&gt;
z(:,1)=y0;&lt;br /&gt;
 &lt;br /&gt;
for i=1:length(t)-1&lt;br /&gt;
 %euler&lt;br /&gt;
 y(:,i+1)=y(:,i)+h*[1*(3-y(1,i))*(1-y(1,i)); 1/5*(y(1,i)-y(2,i))];&lt;br /&gt;
 %runge-kutta&lt;br /&gt;
 K1=[1*(3-z(1,i))*(1-z(1,i)); 1/5*(z(1,i)-z(2,i))];&lt;br /&gt;
 K2=[1*(3-(z(1,i)+h/2*K1(1)))*(1-(z(1,i)+h/2*K1(1))); 1/5*((y(1,i)+h/2*K1(2))-(y(2,i)+h/2*K1(2)))];&lt;br /&gt;
 K3=[1*(3-(z(1,i)+h/2*K2(1)))*(1-(z(1,i)+h/2*K2(1))); 1/5*((y(1,i)+h/2*K2(2))-(y(2,i)+h/2*K2(2)))];&lt;br /&gt;
 K4=[1*(3-(z(1,i)+h*K3(1)))*(1-(z(1,i)+h*K3(1))); 1/5*((y(1,i)+h*K3(2))-(y(2,i)+h*K3(2)))];&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;
% se calcula la concentración de C=y1t)-y2(t)&lt;br /&gt;
Ay=y(1,:)-y(2,:); %euler&lt;br /&gt;
Az=z(1,:)-z(2,:); %runge-kutta&lt;br /&gt;
 &lt;br /&gt;
figure(1)&lt;br /&gt;
hold on&lt;br /&gt;
plot(t,Ay) %concentración de C por euler&lt;br /&gt;
plot(t,y(2,:),'r') %concentración de D por euler&lt;br /&gt;
plot(t,Az,'k') %concentración de C por runge-kutta&lt;br /&gt;
plot(t,z(2,:),'g') %concentración de D por runge-kutta&lt;br /&gt;
legend('concentración de C por euler','concentración de D por euler','concentración de C por runge-kutta','concentración de D por runge-kutta','Location','best')&lt;br /&gt;
hold off&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:graficoc.jpeg|500px|miniaturadeimagen|center|Reacción compleja]]&lt;br /&gt;
&lt;br /&gt;
Si ahora imponemos que la reacción  &amp;lt;math&amp;gt;C &amp;lt;/math&amp;gt; es más rápida que  &amp;lt;math&amp;gt;D &amp;lt;/math&amp;gt;, obtenemos lo siguiente. Se parece a la gráfica que obtuvimos en el programa anterior, pero  más extendida en el tiempo, más lenta.  &amp;lt;math&amp;gt;C &amp;lt;/math&amp;gt; alcanza una concentración máxima de unos 0.8 molar antes de empezar a decrecer a medida que avanza el tiempo y acercándose a un valor de '''0''' molar.  &amp;lt;math&amp;gt;D &amp;lt;/math&amp;gt; crece más lentamente que en la gráfica anterior, pero se aproxima al mismo valor, '''1''' molar.&lt;br /&gt;
Se observa que aunque hagamos la reacción  &amp;lt;math&amp;gt;C &amp;lt;/math&amp;gt; más rápida, tenemos las mismas concentraciones finales, pero tardan más tiempo en obtenerse, ya que la reacción tarda más en estabilizarse.&lt;br /&gt;
&lt;br /&gt;
&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>Joseva</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Reacciones_complejas_(Grupo_D1)&amp;diff=27758</id>
		<title>Reacciones complejas (Grupo D1)</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Reacciones_complejas_(Grupo_D1)&amp;diff=27758"/>
				<updated>2015-03-06T11:31:16Z</updated>
		
		<summary type="html">&lt;p&gt;Joseva: /* Método del Trapecio y Método de Runge-Kutta */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{ TrabajoED | Reacciones complejas (Grupo D1) | [[:Categoría:Ecuaciones Diferenciales|Ecuaciones Diferenciales]]|[[:Categoría:ED14/15|Curso 2014-15]] | Rincón Crespo, Kevin&lt;br /&gt;
&lt;br /&gt;
Rodríguez Gómez, Javier&lt;br /&gt;
&lt;br /&gt;
Sans Jiménez, Alejandro&lt;br /&gt;
&lt;br /&gt;
Sesto Muñoz, María Victoria&lt;br /&gt;
&lt;br /&gt;
Vallejo Asín, José Manuel &lt;br /&gt;
&lt;br /&gt;
Villarino Redondo, Álvaro }}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=Introducción=&lt;br /&gt;
Se considera una reacción química irreversible en una solución bien mezclada. Supondremos que la reacción ocurre para un volumen y temperatura constantes. Al inicio se encuentran dos reactivos &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;B&amp;lt;/math&amp;gt;, que van formando un producto &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; en lo que se conoce como una reacción bimolecular, es decir, una molécula de &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt; y una de &amp;lt;math&amp;gt;B&amp;lt;/math&amp;gt; producen una de &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt;.: &lt;br /&gt;
                                                                     &amp;lt;math&amp;gt;A + B → C&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Supondremos también que se satisface la ley de acción de masas, que establece que la velocidad de reacción es proporcional al producto de las concentraciones de los reactivos.&lt;br /&gt;
&lt;br /&gt;
=Concentración del reactivo &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; a lo largo del tiempo=&lt;br /&gt;
En primer lugar, suponiendo que la reacción es irreversible, es decir, que &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; no puede volver a formar &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;B&amp;lt;/math&amp;gt;, se puede expresar la situación mediante el siguiente problema de valor inicial, cuando t&amp;gt;0.:&lt;br /&gt;
   &amp;lt;math&amp;gt;&lt;br /&gt;
   \left . &lt;br /&gt;
      \begin{matrix} &lt;br /&gt;
         y'(t)={k_{1}}({a_{0}}-y(t))({b_{0}}-y(t))=0\\&lt;br /&gt;
         y(0)=0&lt;br /&gt;
      \end{matrix}&lt;br /&gt;
   \right \}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Donde &amp;lt;math&amp;gt; {a_{0}}&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;{b_{0}}&amp;lt;/math&amp;gt; representan las concentraciones iniciales de '''A''' y '''B''' respectivamente y &amp;lt;math&amp;gt;{k_{1}}&amp;lt;/math&amp;gt; es la constante de proporcionalidad que indica la ley de acción de masas. &amp;lt;math&amp;gt;y’(t)&amp;lt;/math&amp;gt; representa la velocidad de reacción, es decir, la velocidad con que se forma el producto &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; ; mientras que la solución de la ecuación diferencial, &amp;lt;math&amp;gt;y(t)&amp;lt;/math&amp;gt; , representa la concentración de &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt;, la cantidad de compuesto que se ha formado. Para comprobar que la solución de este problema de Cauchy es única, comenzamos definiendo.:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;math&amp;gt;f(t,y)={k_{1}}({a_{0}}-y(t))({b_{0}}-y(t))=0,   t&amp;gt;0 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Observamos que &amp;lt;math&amp;gt;f(t,y)&amp;lt;/math&amp;gt; es continua en el intervalo &amp;lt;math&amp;gt; I=(0,∞)∩B((0,0),r&amp;gt;0)&amp;lt;/math&amp;gt;, por lo que ya aseguramos la existencia de al menos una solución. Examinando la derivada parcial.:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\frac{∂f}{∂y}=k_1(-a_0-b_0+2y)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Se deduce que al ser un polinomio no va a haber problemas de continuidad para ninguna bola. De esta forma, podemos asegurar que existe una única solución.&lt;br /&gt;
&lt;br /&gt;
==Concentración del reactivo C a lo largo del tiempo en un proceso reversible==&lt;br /&gt;
&lt;br /&gt;
Ahora bien, ¿qué pasaría si la reacción fuese reversible? Con esto lo que queremos indicar es que además de formarse  &amp;lt;math&amp;gt;C &amp;lt;/math&amp;gt;, este también se descompone de nuevo en  &amp;lt;math&amp;gt;A &amp;lt;/math&amp;gt; y  &amp;lt;math&amp;gt;B &amp;lt;/math&amp;gt;. Por lo tanto, nos quedaría una ecuación diferencial con la siguiente forma, cuando &amp;lt;math&amp;gt;t&amp;gt;0 &amp;lt;/math&amp;gt;. :&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; y'(t)={k_{1}}({a_{0}}-y(t))({b_{0}}-y(t))-Cy(t)&amp;lt;/math&amp;gt;  &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Si nos fijamos, la modificación es sencillamente restar  &amp;lt;math&amp;gt;y(t) &amp;lt;/math&amp;gt; multiplicada por una constante, la cual refleja qué porcentaje de  &amp;lt;math&amp;gt;C &amp;lt;/math&amp;gt; se va descomponiendo a medida que se da, simultáneamente, la reacción  &amp;lt;math&amp;gt;A + B → C &amp;lt;/math&amp;gt;. Sin embargo, esta constante no puede tener cualquier valor, ya que en una reacción se cumple la conservación de masa. Por ello, a  &amp;lt;math&amp;gt;C &amp;lt;/math&amp;gt; le asociaremos el siguiente dominio::&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;C∈(0,1)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Obsérvese que  &amp;lt;math&amp;gt;C &amp;lt;/math&amp;gt; tiene que ser mayor que 0 para que sea reversible, pero al mismo tiempo inferior que 1, ya que si no se estaría descomponiendo más compuesto  &amp;lt;math&amp;gt;C &amp;lt;/math&amp;gt; del que realmente se ha formado, en otras palabras, estaría apareciendo masa de la nada.&lt;br /&gt;
&lt;br /&gt;
=Método de Euler=&lt;br /&gt;
&lt;br /&gt;
Una vez llegados a este punto, se procede a ver una interpretación gráfica de la reacción. Para ello, se refleja en la gráfica (en un intervalo de 2 segundos), cómo varían las concentraciones tanto de &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt; (&amp;lt;math&amp;gt;a_0&amp;lt;/math&amp;gt;=3 mol/L) y &amp;lt;math&amp;gt;B&amp;lt;/math&amp;gt; (&amp;lt;math&amp;gt;b_0&amp;lt;/math&amp;gt;=1 mol/L) como de &amp;lt;math&amp;gt; C&amp;lt;/math&amp;gt;, para una &amp;lt;math&amp;gt;k_1&amp;lt;/math&amp;gt;=1 mol/s. Se comienza, por el momento, aplicando el método de Euler. Posteriormente se utilizarán métodos más precisos.&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo= &lt;br /&gt;
% Euler&lt;br /&gt;
clear all&lt;br /&gt;
% datos del problema&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=2;&lt;br /&gt;
y0=0;&lt;br /&gt;
h=0.1;&lt;br /&gt;
k1=1;&lt;br /&gt;
a0=3;&lt;br /&gt;
b0=1;&lt;br /&gt;
% Definimos la variable independiente&lt;br /&gt;
t=t0:h:tN;&lt;br /&gt;
% Guardamos los valores de la solución aproximada en el vector &amp;quot;y1&amp;quot; y&lt;br /&gt;
% establecemos los vectores de concentraciones A y B&lt;br /&gt;
y1=zeros(1,length(t)); &lt;br /&gt;
y1(1)=y0;&lt;br /&gt;
a1=zeros(1,length(t));&lt;br /&gt;
a1(1)=a0;&lt;br /&gt;
b1=zeros(1,length(t));&lt;br /&gt;
b1(1)=b0;&lt;br /&gt;
% A continuación, calculamos las componentes de los vectores y1, a1 y b1&lt;br /&gt;
for i=1:length(t)-1&lt;br /&gt;
    y1(i+1)=y1(i)+h*(k1*(a0-y1(i))*(b0-y1(i)));    %Euler&lt;br /&gt;
    a1(i+1)=a0-y1(i+1); % evolución de la concentración de A&lt;br /&gt;
    b1(i+1)=b0-y1(i+1); % evolución de la concentración de B&lt;br /&gt;
end&lt;br /&gt;
%grafico &lt;br /&gt;
figure(1)&lt;br /&gt;
hold on&lt;br /&gt;
plot(t,y1,'g')&lt;br /&gt;
plot(t,a1,'r')&lt;br /&gt;
plot(t,b1,'b')&lt;br /&gt;
legend('concentración de C','concentración de A','concentración de B','location','best')&lt;br /&gt;
hold off &lt;br /&gt;
%en verde se muestra la concentración de C, en rojo la de A, y en azul la de B&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Archivo:3euler.jpeg|500px|miniaturadeimagen|center|Reacción compleja]]&lt;br /&gt;
&lt;br /&gt;
Aunque con observar los resultados ya podemos decir con casi absoluta seguridad cuáles son los límites de las concentraciones de cada reactivo &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;B&amp;lt;/math&amp;gt; y del producto &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt;, se ha diseñado un programa que, mediante diferencia de valores sucesivos de la variable &amp;lt;math&amp;gt;y(t)&amp;lt;/math&amp;gt;, nos devuelve el valor de la función cuando dicha diferencia es muy pequeña '''(se ha puesto una diferencia de 0.001)''', es decir, cuando tenemos una asíntota al tender &amp;lt;math&amp;gt;t→∞&amp;lt;/math&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
%Estudio de las asíntotas&lt;br /&gt;
t1=t0:h:10;%se aumenta la longitud de t, y se estima que se alcanzarán las asíntotas antes de t=10&lt;br /&gt;
y_=zeros(1,length(t1)); %se define un vector y_ idéntico a y1 pero con t hasta 10&lt;br /&gt;
a_=y_;&lt;br /&gt;
b_=y_;&lt;br /&gt;
y_(1)=y0;&lt;br /&gt;
a_(1)=a0;&lt;br /&gt;
b_(1)=b0;&lt;br /&gt;
for i=1:length(t1)-1&lt;br /&gt;
    y_(i+1)=y_(i)+h*(k1*(a0-y_(i))*(b0-y_(i)));&lt;br /&gt;
    diferencia=y_(i+1)-y_(i);&lt;br /&gt;
    if abs(diferencia)&amp;lt;=0.001&lt;br /&gt;
        limC=y_(i+1)&lt;br /&gt;
        break&lt;br /&gt;
    end&lt;br /&gt;
end&lt;br /&gt;
for i=1:length(t1)-1&lt;br /&gt;
    y_(i+1)=y_(i)+h*(k1*(a0-y_(i))*(b0-y_(i)));    &lt;br /&gt;
    a_(i+1)=a0-y_(i+1);&lt;br /&gt;
    diferencia2=a_(i+1)-a_(i);&lt;br /&gt;
    if abs(diferencia2)&amp;lt;=0.001&lt;br /&gt;
        limA=a_(i+1)&lt;br /&gt;
        break&lt;br /&gt;
    end&lt;br /&gt;
end&lt;br /&gt;
for i=1:length(t1)-1&lt;br /&gt;
    y_(i+1)=y_(i)+h*(k1*(a0-y_(i))*(b0-y_(i)));    &lt;br /&gt;
    b_(i+1)=b0-y_(i+1);&lt;br /&gt;
    diferencia3=b_(i+1)-b_(i);&lt;br /&gt;
    if abs(diferencia3)&amp;lt;=0.001&lt;br /&gt;
        limB=b_(i+1)&lt;br /&gt;
        break&lt;br /&gt;
    end&lt;br /&gt;
end&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
Que nos devuelve unos valores de las concentraciones para el límite de:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\lim A=2,0036≈2 mol/L&amp;lt;/math&amp;gt;:     &lt;br /&gt;
&amp;lt;math&amp;gt;\lim B=0,0036≈0mol/L&amp;lt;/math&amp;gt;:         &lt;br /&gt;
&amp;lt;math&amp;gt;\lim C=0,9964≈1mol/L&amp;lt;/math&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
Lo cual es lógico, ya que &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;B&amp;lt;/math&amp;gt; se combinan en una proporción de 1:1, luego &amp;lt;math&amp;gt;B&amp;lt;/math&amp;gt;, que tiene una concentración inicial de &amp;lt;math&amp;gt;b_0&amp;lt;/math&amp;gt;=1, será el reactivo limitante (el que desaparecerá por completo), mientras que &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt;, con &amp;lt;math&amp;gt;a_0&amp;lt;/math&amp;gt;=3, acabará con una concentración molar final igual a 2, y &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt;, del que no habia nada,alcanza una concentraccion de &amp;lt;math&amp;gt;1mol/L&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
= Método del Trapecio y Método de Runge-Kutta=&lt;br /&gt;
&lt;br /&gt;
A continuación, para obtener con más precisión las representaciones gráficas de las respectivas concentraciones, se opta por utilizar los métodos de los &amp;lt;math&amp;gt;Trapecios&amp;lt;/math&amp;gt; (segundo orden) y de &amp;lt;math&amp;gt;Runge-Kutta&amp;lt;/math&amp;gt; (cuarto orden). Además, se ha obtenido la expresión explícita de la solución de nuestro problema de valor inicial de manera analítica, mediante variables separables y fracciones simples, resultando la función real::&lt;br /&gt;
&amp;lt;math&amp;gt;y_e(t)=\frac{3e^{2t}-3}{3e^{2t}-1}&amp;lt;/math&amp;gt;&lt;br /&gt;
De manera que las concentraciones de A y de B en cada valor de t quedarían como::&lt;br /&gt;
&amp;lt;math&amp;gt;a_e(t)=a_0-y_e(t)&amp;lt;/math&amp;gt;:&lt;br /&gt;
&amp;lt;math&amp;gt;b_e (t)=b_0-y_e (t)&amp;lt;/math&amp;gt;:&lt;br /&gt;
Para los trapecios, al ser un método implícito, es necesario despejar la componente &amp;lt;math&amp;gt;y_{n+1}&amp;lt;/math&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;y_{n+1}=\frac{(1+\frac{h}{2}∙k_1∙(a_0+b_0))-\sqrt{(1+\frac{h}{2}∙k_1∙(a_0+b_0))^2 -2∙h∙k_1(y_n+\frac{h}{2}∙k_1∙(a_0-y_n )∙(b_0-y_n)+\frac{h}{2}∙k_1∙a_0∙b_0) }}{k_1∙h}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Cabe destacar que este programa parte de los datos ya establecidos en el programa de Euler para '''t0, tN, y0, a0, b0, k1 y h''':&lt;br /&gt;
{{matlab|codigo= &lt;br /&gt;
%Función real&lt;br /&gt;
ye=(3*exp(2.*t)-3)./(3*exp(2.*t)-1);&lt;br /&gt;
ae=a0-ye;&lt;br /&gt;
be=b0-ye;&lt;br /&gt;
&lt;br /&gt;
%Trapecios&lt;br /&gt;
y2=zeros(1,length(t)); &lt;br /&gt;
a2=y2;&lt;br /&gt;
b2=y2;&lt;br /&gt;
y2(1)=y0;&lt;br /&gt;
a2(1)=a0;&lt;br /&gt;
b2(1)=b0;&lt;br /&gt;
for i= 1:length(t)-1&lt;br /&gt;
    y2(i+1)=((1+0.5*h*k1*(a0+b0))-sqrt((1+0.5*h*k1*(a0+b0))^2-2*h*k1*(y2(i)+0.5*h*k1*(a0-y2(i))*(b0-y2(i))+0.5*h*k1*a0*b0)))/(k1*h);&lt;br /&gt;
a2(i+1)=a0-y2(i+1);&lt;br /&gt;
b2(i+1)=b0-y2(i+1);&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
%Runge-Kutta&lt;br /&gt;
y3=zeros(1,length(t)); &lt;br /&gt;
a3=y3;&lt;br /&gt;
b3=y3;&lt;br /&gt;
y3(1)=y0;&lt;br /&gt;
a3(1)=a0;&lt;br /&gt;
b3(1)=b0;&lt;br /&gt;
fori=1:length(t)-1 &lt;br /&gt;
    r1=k1*(a0-y3(i))*(b0-y3(i));&lt;br /&gt;
    r2=k1*(a0-y3(i)-0.5*r1*h)*(b0-y3(i)-0.5*r1*h);&lt;br /&gt;
    r3=k1*(a0-y3(i)-0.5*r2*h)*(b0-y3(i)-0.5*r2*h);&lt;br /&gt;
    r4=k1*(a0-y3(i)-r3*h)*(b0-y3(i)-r3*h);&lt;br /&gt;
y3(i+1)=y3(i)+h/6*(r1+2*r2+2*r3+r4);&lt;br /&gt;
a3(i+1)=a0-y3(i+1);&lt;br /&gt;
b3(i+1)=b0-y3(i+1);&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
%se pintan las cuatro gráficas, con la función real en verde y los puntos con asteriscos, &lt;br /&gt;
%Euler en rojo, los Trapecios en azul, y Runge-Kutta en negro&lt;br /&gt;
figure(2)&lt;br /&gt;
hold on&lt;br /&gt;
&lt;br /&gt;
plot(t,ye,'g*-')&lt;br /&gt;
plot(t,y2)&lt;br /&gt;
plot(t,y3,'k')&lt;br /&gt;
plot(t,y1,'r')&lt;br /&gt;
legend('Función real','Trapecios', 'Runge-Kutta', 'Euler','Location','best');&lt;br /&gt;
plot(t,ae,'g*')&lt;br /&gt;
plot(t,a2)&lt;br /&gt;
plot(t,a3,'k')&lt;br /&gt;
plot(t,a1,'r')&lt;br /&gt;
plot(t,be,'g*')&lt;br /&gt;
plot(t,b2)&lt;br /&gt;
plot(t,b3,'k')&lt;br /&gt;
plot(t,b1,'r')&lt;br /&gt;
hold off&lt;br /&gt;
&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
Los resultados del programa se muestran en las dos siguientes figuras. Como podemos observar, el método de '''Euler''', en &amp;lt;span style=&amp;quot;color:#FF0000;&amp;quot;&amp;gt;Rojo&amp;lt;/span&amp;gt;, rápidamente se separa de los demás y de la función real, lo que es debido a que es un método de orden 1 y su precisión es bastante reducida. Para analizar el comportamiento de los otros dos métodos, se ha hecho un zoom en una zona aleatoria de la gráfica, y se muestra en la figura 2. Lo lógico, debido a que es de orden 2, es que el método de los trapecios sea el siguiente que se aleje de la solución real, y esto es precisamente lo que se evidencia en la gráfica, pues como vemos, la línea azul se separa de la negra y de la verde. Es por tanto que el método de '''Runge-Kutta''' es el más preciso de todos, haciendo honor a su cuarto orden, y como podemos observar, las líneas verde y negra son casi indistinguibles. &lt;br /&gt;
&lt;br /&gt;
Es importante también atender a la escala que se muestra en la figura 2, que nos da una idea de los rangos en el eje de ordenadas de los que estamos hablando. Cabe decir que estamos trabajando con un paso de h=0.1, lo que significa que con un paso menor, estas diferencias serian mucho menos perceptibles.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Archivo:4trapeciokung.jpeg|500px|miniaturadeimagen|center|Reacción compleja]]&lt;br /&gt;
&lt;br /&gt;
[[Archivo:4comparacion.jpeg|500px|miniaturadeimagen|center|Gráfico 2]]&lt;br /&gt;
&lt;br /&gt;
=Reacción consecutiva=&lt;br /&gt;
&lt;br /&gt;
Consideremos ahora que se produce una reacción consecutiva de la forma.: &lt;br /&gt;
&lt;br /&gt;
                                                                   &amp;lt;math&amp;gt;A + B → k_1C → k_2D&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
De tal modo que los reactivos &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;B&amp;lt;/math&amp;gt; se combinan en la proporción 1:1 para formar compuesto &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt;, el cual, a su vez, se va descomponiendo para formar compuesto &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt;. Al igual que se ha hecho antes al analizar las otras reacciones, se considerará que se cumple la ley de acción de masas. Es decir, la velocidad con la que se forma compuesto &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; es proporcional a las concentraciones existentes de &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt; y de &amp;lt;math&amp;gt;B&amp;lt;/math&amp;gt; y del mismo modo la de formación de la sustancia &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; lo es a la concentración de &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; que se ha ido formando.&lt;br /&gt;
&lt;br /&gt;
Esta reacción consecutiva está representada por el siguiente problema de valor inicial::&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;&lt;br /&gt;
   \left . &lt;br /&gt;
      \begin{matrix} &lt;br /&gt;
         y'_1(t)={k_{1}}({a_{0}}-y_1(t))({b_{0}}-y_1(t))\\&lt;br /&gt;
         y'_2(t)={k_{2}}(y_1(t)-y_2(t))\\&lt;br /&gt;
y_1(0)=0\\y_2(0)=0&lt;br /&gt;
      \end{matrix}&lt;br /&gt;
   \right \}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
Donde &amp;lt;math&amp;gt;a_0&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;b_0&amp;lt;/math&amp;gt; representan las concentraciones iniciales de &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;B&amp;lt;/math&amp;gt; respectivamente, &amp;lt;math&amp;gt;k_1&amp;lt;/math&amp;gt; es la constante de proporcionalidad que rige la primera reacción y &amp;lt;math&amp;gt;k_2&amp;lt;/math&amp;gt; la que rige la segunda reacción o reacción consecutiva. &amp;lt;math&amp;gt;y_1’(t)&amp;lt;/math&amp;gt; e  &amp;lt;math&amp;gt;y_2’(t)&amp;lt;/math&amp;gt; representan las velocidades de las reacciones, es decir, las velocidades con que se forman los productos &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt;. &amp;lt;math&amp;gt;y_2(t)&amp;lt;/math&amp;gt; representa la concentración del producto &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; pero es importante apreciar que en este caso &amp;lt;math&amp;gt;y_1(t)&amp;lt;/math&amp;gt; no nos da el valor de la concentración de &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; directamente, sino que ésta será &amp;lt;math&amp;gt;y_1(t)&amp;lt;/math&amp;gt;- &amp;lt;math&amp;gt;y_2(t)&amp;lt;/math&amp;gt;, la cantidad que se forma en la primera reacción menos la que se emplea para formar el producto &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; en la segunda.&lt;br /&gt;
&lt;br /&gt;
Este problema se va a resolver para dos casos diferentes. Uno en el cual se considera que la segunda reacción es más rápida que la primera, lo que supone tomar un valor de la constante &amp;lt;math&amp;gt;k_2&amp;lt;/math&amp;gt;  mayor que &amp;lt;math&amp;gt;k_1&amp;lt;/math&amp;gt;. Y otro en el cual se considera que es más lenta, lo que implica que &amp;lt;math&amp;gt;k_2&amp;lt;/math&amp;gt; es menor que &amp;lt;math&amp;gt;k_1&amp;lt;/math&amp;gt;. Concretamente vamos a tomar los siguientes valores para resolver el problema numéricamente; &amp;lt;math&amp;gt;a_0&amp;lt;/math&amp;gt;=3 ,  &amp;lt;math&amp;gt;b_0&amp;lt;/math&amp;gt;=1, &amp;lt;math&amp;gt;k_1&amp;lt;/math&amp;gt;=1,  &amp;lt;math&amp;gt;k_2&amp;lt;/math&amp;gt;=5, &amp;lt;math&amp;gt;k_2&amp;lt;/math&amp;gt;=1/5, .En ambos casos se resuelve para los primeros 10 segundos.&lt;br /&gt;
&lt;br /&gt;
==La reacción D es más rápida que la reacción C==&lt;br /&gt;
CASO    &amp;lt;math&amp;gt;k_1=5  &amp;lt;/math&amp;gt;   '''h=0.1''' &lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
&lt;br /&gt;
%datos&lt;br /&gt;
y0=[0;0];&lt;br /&gt;
z0=[0;0];&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;
%matriz de las soluciones&lt;br /&gt;
y=zeros(2,length(t)); %euler&lt;br /&gt;
y(:,1)=y0;&lt;br /&gt;
 &lt;br /&gt;
z=zeros(2,length(t)); %runge-kutta&lt;br /&gt;
z(:,1)=y0;&lt;br /&gt;
 &lt;br /&gt;
for i=1:length(t)-1&lt;br /&gt;
 %euler&lt;br /&gt;
 y(:,i+1)=y(:,i)+h*[1*(3-y(1,i))*(1-y(1,i)); 5*(y(1,i)-y(2,i))];&lt;br /&gt;
 %runge-kutta&lt;br /&gt;
 K1=[1*(3-z(1,i))*(1-z(1,i)); 5*(z(1,i)-z(2,i))];&lt;br /&gt;
 K2=[1*(3-(z(1,i)+h/2*K1(1)))*(1-(z(1,i)+h/2*K1(1))); 5*((y(1,i)+h/2*K1(2))-(y(2,i)+h/2*K1(2)))];&lt;br /&gt;
 K3=[1*(3-(z(1,i)+h/2*K2(1)))*(1-(z(1,i)+h/2*K2(1))); 5*((y(1,i)+h/2*K2(2))-(y(2,i)+h/2*K2(2)))];&lt;br /&gt;
 K4=[1*(3-(z(1,i)+h*K3(1)))*(1-(z(1,i)+h*K3(1))); 5*((y(1,i)+h*K3(2))-(y(2,i)+h*K3(2)))];&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;
% se calcula la concentración de C=y1t)-y2(t)&lt;br /&gt;
Ay=y(1,:)-y(2,:); %euler&lt;br /&gt;
Az=z(1,:)-z(2,:); %runge-kutta&lt;br /&gt;
 &lt;br /&gt;
figure(1)&lt;br /&gt;
hold on&lt;br /&gt;
plot(t,Ay) %concentración de C por euler&lt;br /&gt;
plot(t,y(2,:),'r') %concentración de D por euler&lt;br /&gt;
plot(t,Az,'k') %concentración de C por runge-kutta&lt;br /&gt;
plot(t,z(2,:),'g') %concentración de D por runge-kutta&lt;br /&gt;
legend('concentración de C por euler','concentración de D por euler','concentración de C por runge-kutta','concentración de D por runge-kutta','Location','best')&lt;br /&gt;
hold off&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:graficoa.jpeg|500px|miniaturadeimagen|center|Reacción compleja]]&lt;br /&gt;
&lt;br /&gt;
Se observa que en en los primeros instantes aumentan las concentraciones de &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; aumentan sus concentraciones. Antes de que pase 1 segundo, la concentración &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; alcanza un máximo (de unos 0.3 molar) y va disminuyendo progresivamente hasta alcanzar un valor de 0 molar. La concentración &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; sigue creciendo hasta llegar a 1 molar. Una vez que tanto &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; como &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; alcanzan estos valores, se estabiliza la reacción. &lt;br /&gt;
&lt;br /&gt;
Como hemos impuesto que la reacción &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; es más rápida que &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt;, se observa que &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; empieza creciendo más rápidamente, pero como reacciona más despacio que &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; su concentración disminuye progresivamente, mientras que la de &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; aumenta.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''CASO'''  &amp;lt;math&amp;gt;k_2=5  &amp;lt;/math&amp;gt;   '''h=0.3''' &lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
&lt;br /&gt;
%datos&lt;br /&gt;
y0=[0;0];&lt;br /&gt;
z0=[0;0];&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=10;&lt;br /&gt;
h=0.3;&lt;br /&gt;
 &lt;br /&gt;
%variable independiente t&lt;br /&gt;
t=t0:h:tN;&lt;br /&gt;
 &lt;br /&gt;
%matriz de las soluciones&lt;br /&gt;
y=zeros(2,length(t)); %euler&lt;br /&gt;
y(:,1)=y0;&lt;br /&gt;
 &lt;br /&gt;
z=zeros(2,length(t)); %runge-kutta&lt;br /&gt;
z(:,1)=y0;&lt;br /&gt;
 &lt;br /&gt;
for i=1:length(t)-1&lt;br /&gt;
 %euler&lt;br /&gt;
 y(:,i+1)=y(:,i)+h*[1*(3-y(1,i))*(1-y(1,i)); 5*(y(1,i)-y(2,i))];&lt;br /&gt;
 %runge-kutta&lt;br /&gt;
 K1=[1*(3-z(1,i))*(1-z(1,i)); 5*(z(1,i)-z(2,i))];&lt;br /&gt;
 K2=[1*(3-(z(1,i)+h/2*K1(1)))*(1-(z(1,i)+h/2*K1(1))); 5*((y(1,i)+h/2*K1(2))-(y(2,i)+h/2*K1(2)))];&lt;br /&gt;
 K3=[1*(3-(z(1,i)+h/2*K2(1)))*(1-(z(1,i)+h/2*K2(1))); 5*((y(1,i)+h/2*K2(2))-(y(2,i)+h/2*K2(2)))];&lt;br /&gt;
 K4=[1*(3-(z(1,i)+h*K3(1)))*(1-(z(1,i)+h*K3(1))); 5*((y(1,i)+h*K3(2))-(y(2,i)+h*K3(2)))];&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;
% se calcula la concentración de C=y1t)-y2(t)&lt;br /&gt;
Ay=y(1,:)-y(2,:); %euler&lt;br /&gt;
Az=z(1,:)-z(2,:); %runge-kutta&lt;br /&gt;
 &lt;br /&gt;
figure(1)&lt;br /&gt;
hold on&lt;br /&gt;
plot(t,Ay) %concentración de C por euler&lt;br /&gt;
plot(t,y(2,:),'r') %concentración de D por euler&lt;br /&gt;
plot(t,Az,'k') %concentración de C por runge-kutta&lt;br /&gt;
plot(t,z(2,:),'g') %concentración de D por runge-kutta&lt;br /&gt;
legend('concentración de C por euler','concentración de D por euler','concentración de C por runge-kutta','concentración de D por runge-kutta','Location','best')&lt;br /&gt;
hold off&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:graficob.jpeg|500px|miniaturadeimagen|center|Reacción compleja]]&lt;br /&gt;
&lt;br /&gt;
Repetimos el programa pero para un tamaño de paso mayor, de '''h=0.3''', y observamos que no  es suficientemente preciso, sobre todo al principio, no se puede analizar bien lo que está pasando en la reacción.&lt;br /&gt;
&lt;br /&gt;
==La reacción D es más lenta que la reacción C==&lt;br /&gt;
&lt;br /&gt;
CASO  &amp;lt;math&amp;gt;k_1 &amp;lt;/math&amp;gt;=1,   &amp;lt;math&amp;gt;k_2 &amp;lt;/math&amp;gt;=1/5&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
&lt;br /&gt;
%datos&lt;br /&gt;
y0=[0;0];&lt;br /&gt;
z0=[0;0];&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;
%matriz de las soluciones&lt;br /&gt;
y=zeros(2,length(t)); %euler&lt;br /&gt;
y(:,1)=y0;&lt;br /&gt;
 &lt;br /&gt;
z=zeros(2,length(t)); %runge-kutta&lt;br /&gt;
z(:,1)=y0;&lt;br /&gt;
 &lt;br /&gt;
for i=1:length(t)-1&lt;br /&gt;
 %euler&lt;br /&gt;
 y(:,i+1)=y(:,i)+h*[1*(3-y(1,i))*(1-y(1,i)); 1/5*(y(1,i)-y(2,i))];&lt;br /&gt;
 %runge-kutta&lt;br /&gt;
 K1=[1*(3-z(1,i))*(1-z(1,i)); 1/5*(z(1,i)-z(2,i))];&lt;br /&gt;
 K2=[1*(3-(z(1,i)+h/2*K1(1)))*(1-(z(1,i)+h/2*K1(1))); 1/5*((y(1,i)+h/2*K1(2))-(y(2,i)+h/2*K1(2)))];&lt;br /&gt;
 K3=[1*(3-(z(1,i)+h/2*K2(1)))*(1-(z(1,i)+h/2*K2(1))); 1/5*((y(1,i)+h/2*K2(2))-(y(2,i)+h/2*K2(2)))];&lt;br /&gt;
 K4=[1*(3-(z(1,i)+h*K3(1)))*(1-(z(1,i)+h*K3(1))); 1/5*((y(1,i)+h*K3(2))-(y(2,i)+h*K3(2)))];&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;
% se calcula la concentración de C=y1t)-y2(t)&lt;br /&gt;
Ay=y(1,:)-y(2,:); %euler&lt;br /&gt;
Az=z(1,:)-z(2,:); %runge-kutta&lt;br /&gt;
 &lt;br /&gt;
figure(1)&lt;br /&gt;
hold on&lt;br /&gt;
plot(t,Ay) %concentración de C por euler&lt;br /&gt;
plot(t,y(2,:),'r') %concentración de D por euler&lt;br /&gt;
plot(t,Az,'k') %concentración de C por runge-kutta&lt;br /&gt;
plot(t,z(2,:),'g') %concentración de D por runge-kutta&lt;br /&gt;
legend('concentración de C por euler','concentración de D por euler','concentración de C por runge-kutta','concentración de D por runge-kutta','Location','best')&lt;br /&gt;
hold off&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:graficoc.jpeg|500px|miniaturadeimagen|center|Reacción compleja]]&lt;br /&gt;
&lt;br /&gt;
Si ahora imponemos que la reacción  &amp;lt;math&amp;gt;C &amp;lt;/math&amp;gt; es más rápida que  &amp;lt;math&amp;gt;D &amp;lt;/math&amp;gt;, obtenemos lo siguiente. Se parece a la gráfica que obtuvimos en el programa anterior, pero  más extendida en el tiempo, más lenta.  &amp;lt;math&amp;gt;C &amp;lt;/math&amp;gt; alcanza una concentración máxima de unos 0.8 molar antes de empezar a decrecer a medida que avanza el tiempo y acercándose a un valor de '''0''' molar.  &amp;lt;math&amp;gt;D &amp;lt;/math&amp;gt; crece más lentamente que en la gráfica anterior, pero se aproxima al mismo valor, '''1''' molar.&lt;br /&gt;
Se observa que aunque hagamos la reacción  &amp;lt;math&amp;gt;C &amp;lt;/math&amp;gt; más rápida, tenemos las mismas concentraciones finales, pero tardan más tiempo en obtenerse, ya que la reacción tarda más en estabilizarse.&lt;br /&gt;
&lt;br /&gt;
&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>Joseva</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Reacciones_complejas_(Grupo_D1)&amp;diff=27748</id>
		<title>Reacciones complejas (Grupo D1)</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Reacciones_complejas_(Grupo_D1)&amp;diff=27748"/>
				<updated>2015-03-06T11:29:28Z</updated>
		
		<summary type="html">&lt;p&gt;Joseva: /* Método del Trapecio y Método de Runge-Kutta */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{ TrabajoED | Reacciones complejas (Grupo D1) | [[:Categoría:Ecuaciones Diferenciales|Ecuaciones Diferenciales]]|[[:Categoría:ED14/15|Curso 2014-15]] | Rincón Crespo, Kevin&lt;br /&gt;
&lt;br /&gt;
Rodríguez Gómez, Javier&lt;br /&gt;
&lt;br /&gt;
Sans Jiménez, Alejandro&lt;br /&gt;
&lt;br /&gt;
Sesto Muñoz, María Victoria&lt;br /&gt;
&lt;br /&gt;
Vallejo Asín, José Manuel &lt;br /&gt;
&lt;br /&gt;
Villarino Redondo, Álvaro }}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=Introducción=&lt;br /&gt;
Se considera una reacción química irreversible en una solución bien mezclada. Supondremos que la reacción ocurre para un volumen y temperatura constantes. Al inicio se encuentran dos reactivos &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;B&amp;lt;/math&amp;gt;, que van formando un producto &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; en lo que se conoce como una reacción bimolecular, es decir, una molécula de &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt; y una de &amp;lt;math&amp;gt;B&amp;lt;/math&amp;gt; producen una de &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt;.: &lt;br /&gt;
                                                                     &amp;lt;math&amp;gt;A + B → C&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Supondremos también que se satisface la ley de acción de masas, que establece que la velocidad de reacción es proporcional al producto de las concentraciones de los reactivos.&lt;br /&gt;
&lt;br /&gt;
=Concentración del reactivo &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; a lo largo del tiempo=&lt;br /&gt;
En primer lugar, suponiendo que la reacción es irreversible, es decir, que &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; no puede volver a formar &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;B&amp;lt;/math&amp;gt;, se puede expresar la situación mediante el siguiente problema de valor inicial, cuando t&amp;gt;0.:&lt;br /&gt;
   &amp;lt;math&amp;gt;&lt;br /&gt;
   \left . &lt;br /&gt;
      \begin{matrix} &lt;br /&gt;
         y'(t)={k_{1}}({a_{0}}-y(t))({b_{0}}-y(t))=0\\&lt;br /&gt;
         y(0)=0&lt;br /&gt;
      \end{matrix}&lt;br /&gt;
   \right \}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Donde &amp;lt;math&amp;gt; {a_{0}}&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;{b_{0}}&amp;lt;/math&amp;gt; representan las concentraciones iniciales de '''A''' y '''B''' respectivamente y &amp;lt;math&amp;gt;{k_{1}}&amp;lt;/math&amp;gt; es la constante de proporcionalidad que indica la ley de acción de masas. &amp;lt;math&amp;gt;y’(t)&amp;lt;/math&amp;gt; representa la velocidad de reacción, es decir, la velocidad con que se forma el producto &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; ; mientras que la solución de la ecuación diferencial, &amp;lt;math&amp;gt;y(t)&amp;lt;/math&amp;gt; , representa la concentración de &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt;, la cantidad de compuesto que se ha formado. Para comprobar que la solución de este problema de Cauchy es única, comenzamos definiendo.:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;math&amp;gt;f(t,y)={k_{1}}({a_{0}}-y(t))({b_{0}}-y(t))=0,   t&amp;gt;0 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Observamos que &amp;lt;math&amp;gt;f(t,y)&amp;lt;/math&amp;gt; es continua en el intervalo &amp;lt;math&amp;gt; I=(0,∞)∩B((0,0),r&amp;gt;0)&amp;lt;/math&amp;gt;, por lo que ya aseguramos la existencia de al menos una solución. Examinando la derivada parcial.:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\frac{∂f}{∂y}=k_1(-a_0-b_0+2y)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Se deduce que al ser un polinomio no va a haber problemas de continuidad para ninguna bola. De esta forma, podemos asegurar que existe una única solución.&lt;br /&gt;
&lt;br /&gt;
==Concentración del reactivo C a lo largo del tiempo en un proceso reversible==&lt;br /&gt;
&lt;br /&gt;
Ahora bien, ¿qué pasaría si la reacción fuese reversible? Con esto lo que queremos indicar es que además de formarse  &amp;lt;math&amp;gt;C &amp;lt;/math&amp;gt;, este también se descompone de nuevo en  &amp;lt;math&amp;gt;A &amp;lt;/math&amp;gt; y  &amp;lt;math&amp;gt;B &amp;lt;/math&amp;gt;. Por lo tanto, nos quedaría una ecuación diferencial con la siguiente forma, cuando &amp;lt;math&amp;gt;t&amp;gt;0 &amp;lt;/math&amp;gt;. :&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; y'(t)={k_{1}}({a_{0}}-y(t))({b_{0}}-y(t))-Cy(t)&amp;lt;/math&amp;gt;  &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Si nos fijamos, la modificación es sencillamente restar  &amp;lt;math&amp;gt;y(t) &amp;lt;/math&amp;gt; multiplicada por una constante, la cual refleja qué porcentaje de  &amp;lt;math&amp;gt;C &amp;lt;/math&amp;gt; se va descomponiendo a medida que se da, simultáneamente, la reacción  &amp;lt;math&amp;gt;A + B → C &amp;lt;/math&amp;gt;. Sin embargo, esta constante no puede tener cualquier valor, ya que en una reacción se cumple la conservación de masa. Por ello, a  &amp;lt;math&amp;gt;C &amp;lt;/math&amp;gt; le asociaremos el siguiente dominio::&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;C∈(0,1)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Obsérvese que  &amp;lt;math&amp;gt;C &amp;lt;/math&amp;gt; tiene que ser mayor que 0 para que sea reversible, pero al mismo tiempo inferior que 1, ya que si no se estaría descomponiendo más compuesto  &amp;lt;math&amp;gt;C &amp;lt;/math&amp;gt; del que realmente se ha formado, en otras palabras, estaría apareciendo masa de la nada.&lt;br /&gt;
&lt;br /&gt;
=Método de Euler=&lt;br /&gt;
&lt;br /&gt;
Una vez llegados a este punto, se procede a ver una interpretación gráfica de la reacción. Para ello, se refleja en la gráfica (en un intervalo de 2 segundos), cómo varían las concentraciones tanto de &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt; (&amp;lt;math&amp;gt;a_0&amp;lt;/math&amp;gt;=3 mol/L) y &amp;lt;math&amp;gt;B&amp;lt;/math&amp;gt; (&amp;lt;math&amp;gt;b_0&amp;lt;/math&amp;gt;=1 mol/L) como de &amp;lt;math&amp;gt; C&amp;lt;/math&amp;gt;, para una &amp;lt;math&amp;gt;k_1&amp;lt;/math&amp;gt;=1 mol/s. Se comienza, por el momento, aplicando el método de Euler. Posteriormente se utilizarán métodos más precisos.&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo= &lt;br /&gt;
% Euler&lt;br /&gt;
clear all&lt;br /&gt;
% datos del problema&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=2;&lt;br /&gt;
y0=0;&lt;br /&gt;
h=0.1;&lt;br /&gt;
k1=1;&lt;br /&gt;
a0=3;&lt;br /&gt;
b0=1;&lt;br /&gt;
% Definimos la variable independiente&lt;br /&gt;
t=t0:h:tN;&lt;br /&gt;
% Guardamos los valores de la solución aproximada en el vector &amp;quot;y1&amp;quot; y&lt;br /&gt;
% establecemos los vectores de concentraciones A y B&lt;br /&gt;
y1=zeros(1,length(t)); &lt;br /&gt;
y1(1)=y0;&lt;br /&gt;
a1=zeros(1,length(t));&lt;br /&gt;
a1(1)=a0;&lt;br /&gt;
b1=zeros(1,length(t));&lt;br /&gt;
b1(1)=b0;&lt;br /&gt;
% A continuación, calculamos las componentes de los vectores y1, a1 y b1&lt;br /&gt;
for i=1:length(t)-1&lt;br /&gt;
    y1(i+1)=y1(i)+h*(k1*(a0-y1(i))*(b0-y1(i)));    %Euler&lt;br /&gt;
    a1(i+1)=a0-y1(i+1); % evolución de la concentración de A&lt;br /&gt;
    b1(i+1)=b0-y1(i+1); % evolución de la concentración de B&lt;br /&gt;
end&lt;br /&gt;
%grafico &lt;br /&gt;
figure(1)&lt;br /&gt;
hold on&lt;br /&gt;
plot(t,y1,'g')&lt;br /&gt;
plot(t,a1,'r')&lt;br /&gt;
plot(t,b1,'b')&lt;br /&gt;
legend('concentración de C','concentración de A','concentración de B','location','best')&lt;br /&gt;
hold off &lt;br /&gt;
%en verde se muestra la concentración de C, en rojo la de A, y en azul la de B&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Archivo:3euler.jpeg|500px|miniaturadeimagen|center|Reacción compleja]]&lt;br /&gt;
&lt;br /&gt;
Aunque con observar los resultados ya podemos decir con casi absoluta seguridad cuáles son los límites de las concentraciones de cada reactivo &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;B&amp;lt;/math&amp;gt; y del producto &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt;, se ha diseñado un programa que, mediante diferencia de valores sucesivos de la variable &amp;lt;math&amp;gt;y(t)&amp;lt;/math&amp;gt;, nos devuelve el valor de la función cuando dicha diferencia es muy pequeña '''(se ha puesto una diferencia de 0.001)''', es decir, cuando tenemos una asíntota al tender &amp;lt;math&amp;gt;t→∞&amp;lt;/math&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
%Estudio de las asíntotas&lt;br /&gt;
t1=t0:h:10;%se aumenta la longitud de t, y se estima que se alcanzarán las asíntotas antes de t=10&lt;br /&gt;
y_=zeros(1,length(t1)); %se define un vector y_ idéntico a y1 pero con t hasta 10&lt;br /&gt;
a_=y_;&lt;br /&gt;
b_=y_;&lt;br /&gt;
y_(1)=y0;&lt;br /&gt;
a_(1)=a0;&lt;br /&gt;
b_(1)=b0;&lt;br /&gt;
for i=1:length(t1)-1&lt;br /&gt;
    y_(i+1)=y_(i)+h*(k1*(a0-y_(i))*(b0-y_(i)));&lt;br /&gt;
    diferencia=y_(i+1)-y_(i);&lt;br /&gt;
    if abs(diferencia)&amp;lt;=0.001&lt;br /&gt;
        limC=y_(i+1)&lt;br /&gt;
        break&lt;br /&gt;
    end&lt;br /&gt;
end&lt;br /&gt;
for i=1:length(t1)-1&lt;br /&gt;
    y_(i+1)=y_(i)+h*(k1*(a0-y_(i))*(b0-y_(i)));    &lt;br /&gt;
    a_(i+1)=a0-y_(i+1);&lt;br /&gt;
    diferencia2=a_(i+1)-a_(i);&lt;br /&gt;
    if abs(diferencia2)&amp;lt;=0.001&lt;br /&gt;
        limA=a_(i+1)&lt;br /&gt;
        break&lt;br /&gt;
    end&lt;br /&gt;
end&lt;br /&gt;
for i=1:length(t1)-1&lt;br /&gt;
    y_(i+1)=y_(i)+h*(k1*(a0-y_(i))*(b0-y_(i)));    &lt;br /&gt;
    b_(i+1)=b0-y_(i+1);&lt;br /&gt;
    diferencia3=b_(i+1)-b_(i);&lt;br /&gt;
    if abs(diferencia3)&amp;lt;=0.001&lt;br /&gt;
        limB=b_(i+1)&lt;br /&gt;
        break&lt;br /&gt;
    end&lt;br /&gt;
end&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
Que nos devuelve unos valores de las concentraciones para el límite de:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\lim A=2,0036≈2 mol/L&amp;lt;/math&amp;gt;:     &lt;br /&gt;
&amp;lt;math&amp;gt;\lim B=0,0036≈0mol/L&amp;lt;/math&amp;gt;:         &lt;br /&gt;
&amp;lt;math&amp;gt;\lim C=0,9964≈1mol/L&amp;lt;/math&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
Lo cual es lógico, ya que &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;B&amp;lt;/math&amp;gt; se combinan en una proporción de 1:1, luego &amp;lt;math&amp;gt;B&amp;lt;/math&amp;gt;, que tiene una concentración inicial de &amp;lt;math&amp;gt;b_0&amp;lt;/math&amp;gt;=1, será el reactivo limitante (el que desaparecerá por completo), mientras que &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt;, con &amp;lt;math&amp;gt;a_0&amp;lt;/math&amp;gt;=3, acabará con una concentración molar final igual a 2, y &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt;, del que no habia nada,alcanza una concentraccion de &amp;lt;math&amp;gt;1mol/L&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
= Método del Trapecio y Método de Runge-Kutta=&lt;br /&gt;
&lt;br /&gt;
A continuación, para obtener con más precisión las representaciones gráficas de las respectivas concentraciones, se opta por utilizar los métodos de los &amp;lt;math&amp;gt;Trapecios&amp;lt;/math&amp;gt; (segundo orden) y de &amp;lt;math&amp;gt;Runge-Kutta&amp;lt;/math&amp;gt; (cuarto orden). Además, se ha obtenido la expresión explícita de la solución de nuestro problema de valor inicial de manera analítica, mediante variables separables y fracciones simples, resultando la función real::&lt;br /&gt;
&amp;lt;math&amp;gt;y_e(t)=\frac{3e^{2t}-3}{3e^{2t}-1}&amp;lt;/math&amp;gt;&lt;br /&gt;
De manera que las concentraciones de A y de B en cada valor de t quedarían como::&lt;br /&gt;
&amp;lt;math&amp;gt;a_e(t)=a_0-y_e(t)&amp;lt;/math&amp;gt;:&lt;br /&gt;
&amp;lt;math&amp;gt;b_e (t)=b_0-y_e (t)&amp;lt;/math&amp;gt;:&lt;br /&gt;
Para los trapecios, al ser un método implícito, es necesario despejar la componente &amp;lt;math&amp;gt;y_{n+1}&amp;lt;/math&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;y_{n+1}=\frac{(1+\frac{h}{2}∙k_1∙(a_0+b_0))-\sqrt{(1+\frac{h}{2}∙k_1∙(a_0+b_0))^2 -2∙h∙k_1(y_n+\frac{h}{2}∙k_1∙(a_0-y_n )∙(b_0-y_n)+\frac{h}{2}∙k_1∙a_0∙b_0) }}{k_1∙h}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Cabe destacar que este programa parte de los datos ya establecidos en el programa de Euler para '''t0, tN, y0, a0, b0, k1 y h''':&lt;br /&gt;
{{matlab|codigo= &lt;br /&gt;
%Función real&lt;br /&gt;
ye=(3*exp(2.*t)-3)./(3*exp(2.*t)-1);&lt;br /&gt;
ae=a0-ye;&lt;br /&gt;
be=b0-ye;&lt;br /&gt;
&lt;br /&gt;
%Trapecios&lt;br /&gt;
y2=zeros(1,length(t)); &lt;br /&gt;
a2=y2;&lt;br /&gt;
b2=y2;&lt;br /&gt;
y2(1)=y0;&lt;br /&gt;
a2(1)=a0;&lt;br /&gt;
b2(1)=b0;&lt;br /&gt;
for i= 1:length(t)-1&lt;br /&gt;
    y2(i+1)=((1+0.5*h*k1*(a0+b0))-sqrt((1+0.5*h*k1*(a0+b0))^2-2*h*k1*(y2(i)+0.5*h*k1*(a0-y2(i))*(b0-y2(i))+0.5*h*k1*a0*b0)))/(k1*h);&lt;br /&gt;
a2(i+1)=a0-y2(i+1);&lt;br /&gt;
b2(i+1)=b0-y2(i+1);&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
%Runge-Kutta&lt;br /&gt;
y3=zeros(1,length(t)); &lt;br /&gt;
a3=y3;&lt;br /&gt;
b3=y3;&lt;br /&gt;
y3(1)=y0;&lt;br /&gt;
a3(1)=a0;&lt;br /&gt;
b3(1)=b0;&lt;br /&gt;
fori=1:length(t)-1 &lt;br /&gt;
    r1=k1*(a0-y3(i))*(b0-y3(i));&lt;br /&gt;
    r2=k1*(a0-y3(i)-0.5*r1*h)*(b0-y3(i)-0.5*r1*h);&lt;br /&gt;
    r3=k1*(a0-y3(i)-0.5*r2*h)*(b0-y3(i)-0.5*r2*h);&lt;br /&gt;
    r4=k1*(a0-y3(i)-r3*h)*(b0-y3(i)-r3*h);&lt;br /&gt;
y3(i+1)=y3(i)+h/6*(r1+2*r2+2*r3+r4);&lt;br /&gt;
a3(i+1)=a0-y3(i+1);&lt;br /&gt;
b3(i+1)=b0-y3(i+1);&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
%se pintan las cuatro gráficas, con la función real en verde y los puntos con asteriscos, &lt;br /&gt;
%Euler en rojo, los Trapecios en azul, y Runge-Kutta en negro&lt;br /&gt;
figure(2)&lt;br /&gt;
hold on&lt;br /&gt;
&lt;br /&gt;
plot(t,ye,'g*-')&lt;br /&gt;
plot(t,y2)&lt;br /&gt;
plot(t,y3,'k')&lt;br /&gt;
plot(t,y1,'r')&lt;br /&gt;
legend('Función real','Trapecios', 'Runge-Kutta', 'Euler','Location','best');&lt;br /&gt;
plot(t,ae,'g*')&lt;br /&gt;
plot(t,a2)&lt;br /&gt;
plot(t,a3,'k')&lt;br /&gt;
plot(t,a1,'r')&lt;br /&gt;
plot(t,be,'g*')&lt;br /&gt;
plot(t,b2)&lt;br /&gt;
plot(t,b3,'k')&lt;br /&gt;
plot(t,b1,'r')&lt;br /&gt;
hold off&lt;br /&gt;
&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
Los resultados del programa se muestran en las dos siguientes figuras. Como podemos observar, el método de '''Euler''', en &amp;lt;span style=&amp;quot;color:#FF0000;&amp;quot;&amp;gt;Rojo&amp;lt;/span&amp;gt;, rápidamente se separa de los demás y de la función real, lo que es debido a que es un método de orden 1 y su precisión es bastante reducida. Para analizar el comportamiento de los otros dos métodos, se ha hecho un zoom en una zona aleatoria de la gráfica, y se muestra en la figura 2. Lo lógico, debido a que es de orden 2, es que el método de los trapecios sea el siguiente que se aleje de la solución real, y esto es precisamente lo que se evidencia en la gráfica, pues como vemos, la línea azul se separa de la negra y de la verde. Es por tanto que el método de '''Runge-Kutta''' es el más preciso de todos, haciendo honor a su cuarto orden, y como podemos observar, las líneas verde y negra son casi indistinguibles. &lt;br /&gt;
Es importante también atender a la escala que se muestra en la figura 2, que nos da una idea de los rangos en el eje de ordenadas de los que estamos hablando.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Archivo:4trapeciokung.jpeg|500px|miniaturadeimagen|center|Reacción compleja]]&lt;br /&gt;
&lt;br /&gt;
[[Archivo:4comparacion.jpeg|500px|miniaturadeimagen|center|Gráfico 2]]&lt;br /&gt;
&lt;br /&gt;
=Reacción consecutiva=&lt;br /&gt;
&lt;br /&gt;
Consideremos ahora que se produce una reacción consecutiva de la forma.: &lt;br /&gt;
&lt;br /&gt;
                                                                   &amp;lt;math&amp;gt;A + B → k_1C → k_2D&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
De tal modo que los reactivos &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;B&amp;lt;/math&amp;gt; se combinan en la proporción 1:1 para formar compuesto &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt;, el cual, a su vez, se va descomponiendo para formar compuesto &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt;. Al igual que se ha hecho antes al analizar las otras reacciones, se considerará que se cumple la ley de acción de masas. Es decir, la velocidad con la que se forma compuesto &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; es proporcional a las concentraciones existentes de &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt; y de &amp;lt;math&amp;gt;B&amp;lt;/math&amp;gt; y del mismo modo la de formación de la sustancia &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; lo es a la concentración de &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; que se ha ido formando.&lt;br /&gt;
&lt;br /&gt;
Esta reacción consecutiva está representada por el siguiente problema de valor inicial::&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;&lt;br /&gt;
   \left . &lt;br /&gt;
      \begin{matrix} &lt;br /&gt;
         y'_1(t)={k_{1}}({a_{0}}-y_1(t))({b_{0}}-y_1(t))\\&lt;br /&gt;
         y'_2(t)={k_{2}}(y_1(t)-y_2(t))\\&lt;br /&gt;
y_1(0)=0\\y_2(0)=0&lt;br /&gt;
      \end{matrix}&lt;br /&gt;
   \right \}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
Donde &amp;lt;math&amp;gt;a_0&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;b_0&amp;lt;/math&amp;gt; representan las concentraciones iniciales de &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;B&amp;lt;/math&amp;gt; respectivamente, &amp;lt;math&amp;gt;k_1&amp;lt;/math&amp;gt; es la constante de proporcionalidad que rige la primera reacción y &amp;lt;math&amp;gt;k_2&amp;lt;/math&amp;gt; la que rige la segunda reacción o reacción consecutiva. &amp;lt;math&amp;gt;y_1’(t)&amp;lt;/math&amp;gt; e  &amp;lt;math&amp;gt;y_2’(t)&amp;lt;/math&amp;gt; representan las velocidades de las reacciones, es decir, las velocidades con que se forman los productos &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt;. &amp;lt;math&amp;gt;y_2(t)&amp;lt;/math&amp;gt; representa la concentración del producto &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; pero es importante apreciar que en este caso &amp;lt;math&amp;gt;y_1(t)&amp;lt;/math&amp;gt; no nos da el valor de la concentración de &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; directamente, sino que ésta será &amp;lt;math&amp;gt;y_1(t)&amp;lt;/math&amp;gt;- &amp;lt;math&amp;gt;y_2(t)&amp;lt;/math&amp;gt;, la cantidad que se forma en la primera reacción menos la que se emplea para formar el producto &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; en la segunda.&lt;br /&gt;
&lt;br /&gt;
Este problema se va a resolver para dos casos diferentes. Uno en el cual se considera que la segunda reacción es más rápida que la primera, lo que supone tomar un valor de la constante &amp;lt;math&amp;gt;k_2&amp;lt;/math&amp;gt;  mayor que &amp;lt;math&amp;gt;k_1&amp;lt;/math&amp;gt;. Y otro en el cual se considera que es más lenta, lo que implica que &amp;lt;math&amp;gt;k_2&amp;lt;/math&amp;gt; es menor que &amp;lt;math&amp;gt;k_1&amp;lt;/math&amp;gt;. Concretamente vamos a tomar los siguientes valores para resolver el problema numéricamente; &amp;lt;math&amp;gt;a_0&amp;lt;/math&amp;gt;=3 ,  &amp;lt;math&amp;gt;b_0&amp;lt;/math&amp;gt;=1, &amp;lt;math&amp;gt;k_1&amp;lt;/math&amp;gt;=1,  &amp;lt;math&amp;gt;k_2&amp;lt;/math&amp;gt;=5, &amp;lt;math&amp;gt;k_2&amp;lt;/math&amp;gt;=1/5, .En ambos casos se resuelve para los primeros 10 segundos.&lt;br /&gt;
&lt;br /&gt;
==La reacción D es más rápida que la reacción C==&lt;br /&gt;
CASO    &amp;lt;math&amp;gt;k_1=5  &amp;lt;/math&amp;gt;   '''h=0.1''' &lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
&lt;br /&gt;
%datos&lt;br /&gt;
y0=[0;0];&lt;br /&gt;
z0=[0;0];&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;
%matriz de las soluciones&lt;br /&gt;
y=zeros(2,length(t)); %euler&lt;br /&gt;
y(:,1)=y0;&lt;br /&gt;
 &lt;br /&gt;
z=zeros(2,length(t)); %runge-kutta&lt;br /&gt;
z(:,1)=y0;&lt;br /&gt;
 &lt;br /&gt;
for i=1:length(t)-1&lt;br /&gt;
 %euler&lt;br /&gt;
 y(:,i+1)=y(:,i)+h*[1*(3-y(1,i))*(1-y(1,i)); 5*(y(1,i)-y(2,i))];&lt;br /&gt;
 %runge-kutta&lt;br /&gt;
 K1=[1*(3-z(1,i))*(1-z(1,i)); 5*(z(1,i)-z(2,i))];&lt;br /&gt;
 K2=[1*(3-(z(1,i)+h/2*K1(1)))*(1-(z(1,i)+h/2*K1(1))); 5*((y(1,i)+h/2*K1(2))-(y(2,i)+h/2*K1(2)))];&lt;br /&gt;
 K3=[1*(3-(z(1,i)+h/2*K2(1)))*(1-(z(1,i)+h/2*K2(1))); 5*((y(1,i)+h/2*K2(2))-(y(2,i)+h/2*K2(2)))];&lt;br /&gt;
 K4=[1*(3-(z(1,i)+h*K3(1)))*(1-(z(1,i)+h*K3(1))); 5*((y(1,i)+h*K3(2))-(y(2,i)+h*K3(2)))];&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;
% se calcula la concentración de C=y1t)-y2(t)&lt;br /&gt;
Ay=y(1,:)-y(2,:); %euler&lt;br /&gt;
Az=z(1,:)-z(2,:); %runge-kutta&lt;br /&gt;
 &lt;br /&gt;
figure(1)&lt;br /&gt;
hold on&lt;br /&gt;
plot(t,Ay) %concentración de C por euler&lt;br /&gt;
plot(t,y(2,:),'r') %concentración de D por euler&lt;br /&gt;
plot(t,Az,'k') %concentración de C por runge-kutta&lt;br /&gt;
plot(t,z(2,:),'g') %concentración de D por runge-kutta&lt;br /&gt;
legend('concentración de C por euler','concentración de D por euler','concentración de C por runge-kutta','concentración de D por runge-kutta','Location','best')&lt;br /&gt;
hold off&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:graficoa.jpeg|500px|miniaturadeimagen|center|Reacción compleja]]&lt;br /&gt;
&lt;br /&gt;
Se observa que en en los primeros instantes aumentan las concentraciones de &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; aumentan sus concentraciones. Antes de que pase 1 segundo, la concentración &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; alcanza un máximo (de unos 0.3 molar) y va disminuyendo progresivamente hasta alcanzar un valor de 0 molar. La concentración &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; sigue creciendo hasta llegar a 1 molar. Una vez que tanto &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; como &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; alcanzan estos valores, se estabiliza la reacción. &lt;br /&gt;
&lt;br /&gt;
Como hemos impuesto que la reacción &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; es más rápida que &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt;, se observa que &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; empieza creciendo más rápidamente, pero como reacciona más despacio que &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; su concentración disminuye progresivamente, mientras que la de &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; aumenta.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''CASO'''  &amp;lt;math&amp;gt;k_2=5  &amp;lt;/math&amp;gt;   '''h=0.3''' &lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
&lt;br /&gt;
%datos&lt;br /&gt;
y0=[0;0];&lt;br /&gt;
z0=[0;0];&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=10;&lt;br /&gt;
h=0.3;&lt;br /&gt;
 &lt;br /&gt;
%variable independiente t&lt;br /&gt;
t=t0:h:tN;&lt;br /&gt;
 &lt;br /&gt;
%matriz de las soluciones&lt;br /&gt;
y=zeros(2,length(t)); %euler&lt;br /&gt;
y(:,1)=y0;&lt;br /&gt;
 &lt;br /&gt;
z=zeros(2,length(t)); %runge-kutta&lt;br /&gt;
z(:,1)=y0;&lt;br /&gt;
 &lt;br /&gt;
for i=1:length(t)-1&lt;br /&gt;
 %euler&lt;br /&gt;
 y(:,i+1)=y(:,i)+h*[1*(3-y(1,i))*(1-y(1,i)); 5*(y(1,i)-y(2,i))];&lt;br /&gt;
 %runge-kutta&lt;br /&gt;
 K1=[1*(3-z(1,i))*(1-z(1,i)); 5*(z(1,i)-z(2,i))];&lt;br /&gt;
 K2=[1*(3-(z(1,i)+h/2*K1(1)))*(1-(z(1,i)+h/2*K1(1))); 5*((y(1,i)+h/2*K1(2))-(y(2,i)+h/2*K1(2)))];&lt;br /&gt;
 K3=[1*(3-(z(1,i)+h/2*K2(1)))*(1-(z(1,i)+h/2*K2(1))); 5*((y(1,i)+h/2*K2(2))-(y(2,i)+h/2*K2(2)))];&lt;br /&gt;
 K4=[1*(3-(z(1,i)+h*K3(1)))*(1-(z(1,i)+h*K3(1))); 5*((y(1,i)+h*K3(2))-(y(2,i)+h*K3(2)))];&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;
% se calcula la concentración de C=y1t)-y2(t)&lt;br /&gt;
Ay=y(1,:)-y(2,:); %euler&lt;br /&gt;
Az=z(1,:)-z(2,:); %runge-kutta&lt;br /&gt;
 &lt;br /&gt;
figure(1)&lt;br /&gt;
hold on&lt;br /&gt;
plot(t,Ay) %concentración de C por euler&lt;br /&gt;
plot(t,y(2,:),'r') %concentración de D por euler&lt;br /&gt;
plot(t,Az,'k') %concentración de C por runge-kutta&lt;br /&gt;
plot(t,z(2,:),'g') %concentración de D por runge-kutta&lt;br /&gt;
legend('concentración de C por euler','concentración de D por euler','concentración de C por runge-kutta','concentración de D por runge-kutta','Location','best')&lt;br /&gt;
hold off&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:graficob.jpeg|500px|miniaturadeimagen|center|Reacción compleja]]&lt;br /&gt;
&lt;br /&gt;
Repetimos el programa pero para un tamaño de paso mayor, de '''h=0.3''', y observamos que no  es suficientemente preciso, sobre todo al principio, no se puede analizar bien lo que está pasando en la reacción.&lt;br /&gt;
&lt;br /&gt;
==La reacción D es más lenta que la reacción C==&lt;br /&gt;
&lt;br /&gt;
CASO  &amp;lt;math&amp;gt;k_1 &amp;lt;/math&amp;gt;=1,   &amp;lt;math&amp;gt;k_2 &amp;lt;/math&amp;gt;=1/5&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
&lt;br /&gt;
%datos&lt;br /&gt;
y0=[0;0];&lt;br /&gt;
z0=[0;0];&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;
%matriz de las soluciones&lt;br /&gt;
y=zeros(2,length(t)); %euler&lt;br /&gt;
y(:,1)=y0;&lt;br /&gt;
 &lt;br /&gt;
z=zeros(2,length(t)); %runge-kutta&lt;br /&gt;
z(:,1)=y0;&lt;br /&gt;
 &lt;br /&gt;
for i=1:length(t)-1&lt;br /&gt;
 %euler&lt;br /&gt;
 y(:,i+1)=y(:,i)+h*[1*(3-y(1,i))*(1-y(1,i)); 1/5*(y(1,i)-y(2,i))];&lt;br /&gt;
 %runge-kutta&lt;br /&gt;
 K1=[1*(3-z(1,i))*(1-z(1,i)); 1/5*(z(1,i)-z(2,i))];&lt;br /&gt;
 K2=[1*(3-(z(1,i)+h/2*K1(1)))*(1-(z(1,i)+h/2*K1(1))); 1/5*((y(1,i)+h/2*K1(2))-(y(2,i)+h/2*K1(2)))];&lt;br /&gt;
 K3=[1*(3-(z(1,i)+h/2*K2(1)))*(1-(z(1,i)+h/2*K2(1))); 1/5*((y(1,i)+h/2*K2(2))-(y(2,i)+h/2*K2(2)))];&lt;br /&gt;
 K4=[1*(3-(z(1,i)+h*K3(1)))*(1-(z(1,i)+h*K3(1))); 1/5*((y(1,i)+h*K3(2))-(y(2,i)+h*K3(2)))];&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;
% se calcula la concentración de C=y1t)-y2(t)&lt;br /&gt;
Ay=y(1,:)-y(2,:); %euler&lt;br /&gt;
Az=z(1,:)-z(2,:); %runge-kutta&lt;br /&gt;
 &lt;br /&gt;
figure(1)&lt;br /&gt;
hold on&lt;br /&gt;
plot(t,Ay) %concentración de C por euler&lt;br /&gt;
plot(t,y(2,:),'r') %concentración de D por euler&lt;br /&gt;
plot(t,Az,'k') %concentración de C por runge-kutta&lt;br /&gt;
plot(t,z(2,:),'g') %concentración de D por runge-kutta&lt;br /&gt;
legend('concentración de C por euler','concentración de D por euler','concentración de C por runge-kutta','concentración de D por runge-kutta','Location','best')&lt;br /&gt;
hold off&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:graficoc.jpeg|500px|miniaturadeimagen|center|Reacción compleja]]&lt;br /&gt;
&lt;br /&gt;
Si ahora imponemos que la reacción  &amp;lt;math&amp;gt;C &amp;lt;/math&amp;gt; es más rápida que  &amp;lt;math&amp;gt;D &amp;lt;/math&amp;gt;, obtenemos lo siguiente. Se parece a la gráfica que obtuvimos en el programa anterior, pero  más extendida en el tiempo, más lenta.  &amp;lt;math&amp;gt;C &amp;lt;/math&amp;gt; alcanza una concentración máxima de unos 0.8 molar antes de empezar a decrecer a medida que avanza el tiempo y acercándose a un valor de '''0''' molar.  &amp;lt;math&amp;gt;D &amp;lt;/math&amp;gt; crece más lentamente que en la gráfica anterior, pero se aproxima al mismo valor, '''1''' molar.&lt;br /&gt;
Se observa que aunque hagamos la reacción  &amp;lt;math&amp;gt;C &amp;lt;/math&amp;gt; más rápida, tenemos las mismas concentraciones finales, pero tardan más tiempo en obtenerse, ya que la reacción tarda más en estabilizarse.&lt;br /&gt;
&lt;br /&gt;
&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>Joseva</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Reacciones_complejas_(Grupo_D1)&amp;diff=27743</id>
		<title>Reacciones complejas (Grupo D1)</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Reacciones_complejas_(Grupo_D1)&amp;diff=27743"/>
				<updated>2015-03-06T11:27:15Z</updated>
		
		<summary type="html">&lt;p&gt;Joseva: /* Método del Trapecio y Método de Runge-Kutta */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{ TrabajoED | Reacciones complejas (Grupo D1) | [[:Categoría:Ecuaciones Diferenciales|Ecuaciones Diferenciales]]|[[:Categoría:ED14/15|Curso 2014-15]] | Rincón Crespo, Kevin&lt;br /&gt;
&lt;br /&gt;
Rodríguez Gómez, Javier&lt;br /&gt;
&lt;br /&gt;
Sans Jiménez, Alejandro&lt;br /&gt;
&lt;br /&gt;
Sesto Muñoz, María Victoria&lt;br /&gt;
&lt;br /&gt;
Vallejo Asín, José Manuel &lt;br /&gt;
&lt;br /&gt;
Villarino Redondo, Álvaro }}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=Introducción=&lt;br /&gt;
Se considera una reacción química irreversible en una solución bien mezclada. Supondremos que la reacción ocurre para un volumen y temperatura constantes. Al inicio se encuentran dos reactivos &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;B&amp;lt;/math&amp;gt;, que van formando un producto &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; en lo que se conoce como una reacción bimolecular, es decir, una molécula de &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt; y una de &amp;lt;math&amp;gt;B&amp;lt;/math&amp;gt; producen una de &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt;.: &lt;br /&gt;
                                                                     &amp;lt;math&amp;gt;A + B → C&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Supondremos también que se satisface la ley de acción de masas, que establece que la velocidad de reacción es proporcional al producto de las concentraciones de los reactivos.&lt;br /&gt;
&lt;br /&gt;
=Concentración del reactivo &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; a lo largo del tiempo=&lt;br /&gt;
En primer lugar, suponiendo que la reacción es irreversible, es decir, que &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; no puede volver a formar &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;B&amp;lt;/math&amp;gt;, se puede expresar la situación mediante el siguiente problema de valor inicial, cuando t&amp;gt;0.:&lt;br /&gt;
   &amp;lt;math&amp;gt;&lt;br /&gt;
   \left . &lt;br /&gt;
      \begin{matrix} &lt;br /&gt;
         y'(t)={k_{1}}({a_{0}}-y(t))({b_{0}}-y(t))=0\\&lt;br /&gt;
         y(0)=0&lt;br /&gt;
      \end{matrix}&lt;br /&gt;
   \right \}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Donde &amp;lt;math&amp;gt; {a_{0}}&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;{b_{0}}&amp;lt;/math&amp;gt; representan las concentraciones iniciales de '''A''' y '''B''' respectivamente y &amp;lt;math&amp;gt;{k_{1}}&amp;lt;/math&amp;gt; es la constante de proporcionalidad que indica la ley de acción de masas. &amp;lt;math&amp;gt;y’(t)&amp;lt;/math&amp;gt; representa la velocidad de reacción, es decir, la velocidad con que se forma el producto &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; ; mientras que la solución de la ecuación diferencial, &amp;lt;math&amp;gt;y(t)&amp;lt;/math&amp;gt; , representa la concentración de &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt;, la cantidad de compuesto que se ha formado. Para comprobar que la solución de este problema de Cauchy es única, comenzamos definiendo.:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;math&amp;gt;f(t,y)={k_{1}}({a_{0}}-y(t))({b_{0}}-y(t))=0,   t&amp;gt;0 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Observamos que &amp;lt;math&amp;gt;f(t,y)&amp;lt;/math&amp;gt; es continua en el intervalo &amp;lt;math&amp;gt; I=(0,∞)∩B((0,0),r&amp;gt;0)&amp;lt;/math&amp;gt;, por lo que ya aseguramos la existencia de al menos una solución. Examinando la derivada parcial.:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\frac{∂f}{∂y}=k_1(-a_0-b_0+2y)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Se deduce que al ser un polinomio no va a haber problemas de continuidad para ninguna bola. De esta forma, podemos asegurar que existe una única solución.&lt;br /&gt;
&lt;br /&gt;
==Concentración del reactivo C a lo largo del tiempo en un proceso reversible==&lt;br /&gt;
&lt;br /&gt;
Ahora bien, ¿qué pasaría si la reacción fuese reversible? Con esto lo que queremos indicar es que además de formarse  &amp;lt;math&amp;gt;C &amp;lt;/math&amp;gt;, este también se descompone de nuevo en  &amp;lt;math&amp;gt;A &amp;lt;/math&amp;gt; y  &amp;lt;math&amp;gt;B &amp;lt;/math&amp;gt;. Por lo tanto, nos quedaría una ecuación diferencial con la siguiente forma, cuando &amp;lt;math&amp;gt;t&amp;gt;0 &amp;lt;/math&amp;gt;. :&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; y'(t)={k_{1}}({a_{0}}-y(t))({b_{0}}-y(t))-Cy(t)&amp;lt;/math&amp;gt;  &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Si nos fijamos, la modificación es sencillamente restar  &amp;lt;math&amp;gt;y(t) &amp;lt;/math&amp;gt; multiplicada por una constante, la cual refleja qué porcentaje de  &amp;lt;math&amp;gt;C &amp;lt;/math&amp;gt; se va descomponiendo a medida que se da, simultáneamente, la reacción  &amp;lt;math&amp;gt;A + B → C &amp;lt;/math&amp;gt;. Sin embargo, esta constante no puede tener cualquier valor, ya que en una reacción se cumple la conservación de masa. Por ello, a  &amp;lt;math&amp;gt;C &amp;lt;/math&amp;gt; le asociaremos el siguiente dominio::&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;C∈(0,1)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Obsérvese que  &amp;lt;math&amp;gt;C &amp;lt;/math&amp;gt; tiene que ser mayor que 0 para que sea reversible, pero al mismo tiempo inferior que 1, ya que si no se estaría descomponiendo más compuesto  &amp;lt;math&amp;gt;C &amp;lt;/math&amp;gt; del que realmente se ha formado, en otras palabras, estaría apareciendo masa de la nada.&lt;br /&gt;
&lt;br /&gt;
=Método de Euler=&lt;br /&gt;
&lt;br /&gt;
Una vez llegados a este punto, se procede a ver una interpretación gráfica de la reacción. Para ello, se refleja en la gráfica (en un intervalo de 2 segundos), cómo varían las concentraciones tanto de &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt; (&amp;lt;math&amp;gt;a_0&amp;lt;/math&amp;gt;=3 mol/L) y &amp;lt;math&amp;gt;B&amp;lt;/math&amp;gt; (&amp;lt;math&amp;gt;b_0&amp;lt;/math&amp;gt;=1 mol/L) como de &amp;lt;math&amp;gt; C&amp;lt;/math&amp;gt;, para una &amp;lt;math&amp;gt;k_1&amp;lt;/math&amp;gt;=1 mol/s. Se comienza, por el momento, aplicando el método de Euler. Posteriormente se utilizarán métodos más precisos.&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo= &lt;br /&gt;
% Euler&lt;br /&gt;
clear all&lt;br /&gt;
% datos del problema&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=2;&lt;br /&gt;
y0=0;&lt;br /&gt;
h=0.1;&lt;br /&gt;
k1=1;&lt;br /&gt;
a0=3;&lt;br /&gt;
b0=1;&lt;br /&gt;
% Definimos la variable independiente&lt;br /&gt;
t=t0:h:tN;&lt;br /&gt;
% Guardamos los valores de la solución aproximada en el vector &amp;quot;y1&amp;quot; y&lt;br /&gt;
% establecemos los vectores de concentraciones A y B&lt;br /&gt;
y1=zeros(1,length(t)); &lt;br /&gt;
y1(1)=y0;&lt;br /&gt;
a1=zeros(1,length(t));&lt;br /&gt;
a1(1)=a0;&lt;br /&gt;
b1=zeros(1,length(t));&lt;br /&gt;
b1(1)=b0;&lt;br /&gt;
% A continuación, calculamos las componentes de los vectores y1, a1 y b1&lt;br /&gt;
for i=1:length(t)-1&lt;br /&gt;
    y1(i+1)=y1(i)+h*(k1*(a0-y1(i))*(b0-y1(i)));    %Euler&lt;br /&gt;
    a1(i+1)=a0-y1(i+1); % evolución de la concentración de A&lt;br /&gt;
    b1(i+1)=b0-y1(i+1); % evolución de la concentración de B&lt;br /&gt;
end&lt;br /&gt;
%grafico &lt;br /&gt;
figure(1)&lt;br /&gt;
hold on&lt;br /&gt;
plot(t,y1,'g')&lt;br /&gt;
plot(t,a1,'r')&lt;br /&gt;
plot(t,b1,'b')&lt;br /&gt;
legend('concentración de C','concentración de A','concentración de B','location','best')&lt;br /&gt;
hold off &lt;br /&gt;
%en verde se muestra la concentración de C, en rojo la de A, y en azul la de B&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Archivo:3euler.jpeg|500px|miniaturadeimagen|center|Reacción compleja]]&lt;br /&gt;
&lt;br /&gt;
Aunque con observar los resultados ya podemos decir con casi absoluta seguridad cuáles son los límites de las concentraciones de cada reactivo &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;B&amp;lt;/math&amp;gt; y del producto &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt;, se ha diseñado un programa que, mediante diferencia de valores sucesivos de la variable &amp;lt;math&amp;gt;y(t)&amp;lt;/math&amp;gt;, nos devuelve el valor de la función cuando dicha diferencia es muy pequeña '''(se ha puesto una diferencia de 0.001)''', es decir, cuando tenemos una asíntota al tender &amp;lt;math&amp;gt;t→∞&amp;lt;/math&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
%Estudio de las asíntotas&lt;br /&gt;
t1=t0:h:10;%se aumenta la longitud de t, y se estima que se alcanzarán las asíntotas antes de t=10&lt;br /&gt;
y_=zeros(1,length(t1)); %se define un vector y_ idéntico a y1 pero con t hasta 10&lt;br /&gt;
a_=y_;&lt;br /&gt;
b_=y_;&lt;br /&gt;
y_(1)=y0;&lt;br /&gt;
a_(1)=a0;&lt;br /&gt;
b_(1)=b0;&lt;br /&gt;
for i=1:length(t1)-1&lt;br /&gt;
    y_(i+1)=y_(i)+h*(k1*(a0-y_(i))*(b0-y_(i)));&lt;br /&gt;
    diferencia=y_(i+1)-y_(i);&lt;br /&gt;
    if abs(diferencia)&amp;lt;=0.001&lt;br /&gt;
        limC=y_(i+1)&lt;br /&gt;
        break&lt;br /&gt;
    end&lt;br /&gt;
end&lt;br /&gt;
for i=1:length(t1)-1&lt;br /&gt;
    y_(i+1)=y_(i)+h*(k1*(a0-y_(i))*(b0-y_(i)));    &lt;br /&gt;
    a_(i+1)=a0-y_(i+1);&lt;br /&gt;
    diferencia2=a_(i+1)-a_(i);&lt;br /&gt;
    if abs(diferencia2)&amp;lt;=0.001&lt;br /&gt;
        limA=a_(i+1)&lt;br /&gt;
        break&lt;br /&gt;
    end&lt;br /&gt;
end&lt;br /&gt;
for i=1:length(t1)-1&lt;br /&gt;
    y_(i+1)=y_(i)+h*(k1*(a0-y_(i))*(b0-y_(i)));    &lt;br /&gt;
    b_(i+1)=b0-y_(i+1);&lt;br /&gt;
    diferencia3=b_(i+1)-b_(i);&lt;br /&gt;
    if abs(diferencia3)&amp;lt;=0.001&lt;br /&gt;
        limB=b_(i+1)&lt;br /&gt;
        break&lt;br /&gt;
    end&lt;br /&gt;
end&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
Que nos devuelve unos valores de las concentraciones para el límite de:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\lim A=2,0036≈2 mol/L&amp;lt;/math&amp;gt;:     &lt;br /&gt;
&amp;lt;math&amp;gt;\lim B=0,0036≈0mol/L&amp;lt;/math&amp;gt;:         &lt;br /&gt;
&amp;lt;math&amp;gt;\lim C=0,9964≈1mol/L&amp;lt;/math&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
Lo cual es lógico, ya que &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;B&amp;lt;/math&amp;gt; se combinan en una proporción de 1:1, luego &amp;lt;math&amp;gt;B&amp;lt;/math&amp;gt;, que tiene una concentración inicial de &amp;lt;math&amp;gt;b_0&amp;lt;/math&amp;gt;=1, será el reactivo limitante (el que desaparecerá por completo), mientras que &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt;, con &amp;lt;math&amp;gt;a_0&amp;lt;/math&amp;gt;=3, acabará con una concentración molar final igual a 2, y &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt;, del que no habia nada,alcanza una concentraccion de &amp;lt;math&amp;gt;1mol/L&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
= Método del Trapecio y Método de Runge-Kutta=&lt;br /&gt;
&lt;br /&gt;
A continuación, para obtener con más precisión las representaciones gráficas de las respectivas concentraciones, se opta por utilizar los métodos de los &amp;lt;math&amp;gt;Trapecios&amp;lt;/math&amp;gt; (segundo orden) y de &amp;lt;math&amp;gt;Runge-Kutta&amp;lt;/math&amp;gt; (cuarto orden). Además, se ha obtenido la expresión explícita de la solución de nuestro problema de valor inicial de manera analítica, mediante variables separables y fracciones simples, resultando la función real::&lt;br /&gt;
&amp;lt;math&amp;gt;y_e(t)=\frac{3e^{2t}-3}{3e^{2t}-1}&amp;lt;/math&amp;gt;&lt;br /&gt;
De manera que las concentraciones de A y de B en cada valor de t quedarían como::&lt;br /&gt;
&amp;lt;math&amp;gt;a_e(t)=a_0-y_e(t)&amp;lt;/math&amp;gt;:&lt;br /&gt;
&amp;lt;math&amp;gt;b_e (t)=b_0-y_e (t)&amp;lt;/math&amp;gt;:&lt;br /&gt;
Para los trapecios, al ser un método implícito, es necesario despejar la componente &amp;lt;math&amp;gt;y_{n+1}&amp;lt;/math&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;y_{n+1}=\frac{(1+\frac{h}{2}∙k_1∙(a_0+b_0))-\sqrt{(1+\frac{h}{2}∙k_1∙(a_0+b_0))^2 -2∙h∙k_1(y_n+\frac{h}{2}∙k_1∙(a_0-y_n )∙(b_0-y_n)+\frac{h}{2}∙k_1∙a_0∙b_0) }}{k_1∙h}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Cabe destacar que este programa parte de los datos ya establecidos en el programa de Euler para '''t0, tN, y0, a0, b0, k1 y h''':&lt;br /&gt;
{{matlab|codigo= &lt;br /&gt;
%Función real&lt;br /&gt;
ye=(3*exp(2.*t)-3)./(3*exp(2.*t)-1);&lt;br /&gt;
ae=a0-ye;&lt;br /&gt;
be=b0-ye;&lt;br /&gt;
&lt;br /&gt;
%Trapecios&lt;br /&gt;
y2=zeros(1,length(t)); &lt;br /&gt;
a2=y2;&lt;br /&gt;
b2=y2;&lt;br /&gt;
y2(1)=y0;&lt;br /&gt;
a2(1)=a0;&lt;br /&gt;
b2(1)=b0;&lt;br /&gt;
for i= 1:length(t)-1&lt;br /&gt;
    y2(i+1)=((1+0.5*h*k1*(a0+b0))-sqrt((1+0.5*h*k1*(a0+b0))^2-2*h*k1*(y2(i)+0.5*h*k1*(a0-y2(i))*(b0-y2(i))+0.5*h*k1*a0*b0)))/(k1*h);&lt;br /&gt;
a2(i+1)=a0-y2(i+1);&lt;br /&gt;
b2(i+1)=b0-y2(i+1);&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
%Runge-Kutta&lt;br /&gt;
y3=zeros(1,length(t)); &lt;br /&gt;
a3=y3;&lt;br /&gt;
b3=y3;&lt;br /&gt;
y3(1)=y0;&lt;br /&gt;
a3(1)=a0;&lt;br /&gt;
b3(1)=b0;&lt;br /&gt;
fori=1:length(t)-1 &lt;br /&gt;
    r1=k1*(a0-y3(i))*(b0-y3(i));&lt;br /&gt;
    r2=k1*(a0-y3(i)-0.5*r1*h)*(b0-y3(i)-0.5*r1*h);&lt;br /&gt;
    r3=k1*(a0-y3(i)-0.5*r2*h)*(b0-y3(i)-0.5*r2*h);&lt;br /&gt;
    r4=k1*(a0-y3(i)-r3*h)*(b0-y3(i)-r3*h);&lt;br /&gt;
y3(i+1)=y3(i)+h/6*(r1+2*r2+2*r3+r4);&lt;br /&gt;
a3(i+1)=a0-y3(i+1);&lt;br /&gt;
b3(i+1)=b0-y3(i+1);&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
%se pintan las cuatro gráficas, con la función real en verde y los puntos con asteriscos, &lt;br /&gt;
%Euler en rojo, los Trapecios en azul, y Runge-Kutta en negro&lt;br /&gt;
figure(2)&lt;br /&gt;
hold on&lt;br /&gt;
&lt;br /&gt;
plot(t,ye,'g*-')&lt;br /&gt;
plot(t,y2)&lt;br /&gt;
plot(t,y3,'k')&lt;br /&gt;
plot(t,y1,'r')&lt;br /&gt;
legend('Función real','Trapecios', 'Runge-Kutta', 'Euler','Location','best');&lt;br /&gt;
plot(t,ae,'g*')&lt;br /&gt;
plot(t,a2)&lt;br /&gt;
plot(t,a3,'k')&lt;br /&gt;
plot(t,a1,'r')&lt;br /&gt;
plot(t,be,'g*')&lt;br /&gt;
plot(t,b2)&lt;br /&gt;
plot(t,b3,'k')&lt;br /&gt;
plot(t,b1,'r')&lt;br /&gt;
hold off&lt;br /&gt;
&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
Que proporciona el resultado que se puede observar en la primera gráfica adjunta. Como podemos ver, es prácticamente indistinguible una gráfica de la otra. Sin embargo, si la juntamos con las gráficas proporcionadas por el método de Euler, que se representa ahora en rojo, la diferencia es palpable (ver gráfica 2), lo cual evidencia la peor precisión del método de Euler.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:4trapeciokung.jpeg|500px|miniaturadeimagen|center|Reacción compleja]]&lt;br /&gt;
&lt;br /&gt;
[[Archivo:4comparacion.jpeg|500px|miniaturadeimagen|center|Gráfico 2]]&lt;br /&gt;
&lt;br /&gt;
=Reacción consecutiva=&lt;br /&gt;
&lt;br /&gt;
Consideremos ahora que se produce una reacción consecutiva de la forma.: &lt;br /&gt;
&lt;br /&gt;
                                                                   &amp;lt;math&amp;gt;A + B → k_1C → k_2D&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
De tal modo que los reactivos &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;B&amp;lt;/math&amp;gt; se combinan en la proporción 1:1 para formar compuesto &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt;, el cual, a su vez, se va descomponiendo para formar compuesto &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt;. Al igual que se ha hecho antes al analizar las otras reacciones, se considerará que se cumple la ley de acción de masas. Es decir, la velocidad con la que se forma compuesto &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; es proporcional a las concentraciones existentes de &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt; y de &amp;lt;math&amp;gt;B&amp;lt;/math&amp;gt; y del mismo modo la de formación de la sustancia &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; lo es a la concentración de &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; que se ha ido formando.&lt;br /&gt;
&lt;br /&gt;
Esta reacción consecutiva está representada por el siguiente problema de valor inicial::&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;&lt;br /&gt;
   \left . &lt;br /&gt;
      \begin{matrix} &lt;br /&gt;
         y'_1(t)={k_{1}}({a_{0}}-y_1(t))({b_{0}}-y_1(t))\\&lt;br /&gt;
         y'_2(t)={k_{2}}(y_1(t)-y_2(t))\\&lt;br /&gt;
y_1(0)=0\\y_2(0)=0&lt;br /&gt;
      \end{matrix}&lt;br /&gt;
   \right \}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
Donde &amp;lt;math&amp;gt;a_0&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;b_0&amp;lt;/math&amp;gt; representan las concentraciones iniciales de &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;B&amp;lt;/math&amp;gt; respectivamente, &amp;lt;math&amp;gt;k_1&amp;lt;/math&amp;gt; es la constante de proporcionalidad que rige la primera reacción y &amp;lt;math&amp;gt;k_2&amp;lt;/math&amp;gt; la que rige la segunda reacción o reacción consecutiva. &amp;lt;math&amp;gt;y_1’(t)&amp;lt;/math&amp;gt; e  &amp;lt;math&amp;gt;y_2’(t)&amp;lt;/math&amp;gt; representan las velocidades de las reacciones, es decir, las velocidades con que se forman los productos &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt;. &amp;lt;math&amp;gt;y_2(t)&amp;lt;/math&amp;gt; representa la concentración del producto &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; pero es importante apreciar que en este caso &amp;lt;math&amp;gt;y_1(t)&amp;lt;/math&amp;gt; no nos da el valor de la concentración de &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; directamente, sino que ésta será &amp;lt;math&amp;gt;y_1(t)&amp;lt;/math&amp;gt;- &amp;lt;math&amp;gt;y_2(t)&amp;lt;/math&amp;gt;, la cantidad que se forma en la primera reacción menos la que se emplea para formar el producto &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; en la segunda.&lt;br /&gt;
&lt;br /&gt;
Este problema se va a resolver para dos casos diferentes. Uno en el cual se considera que la segunda reacción es más rápida que la primera, lo que supone tomar un valor de la constante &amp;lt;math&amp;gt;k_2&amp;lt;/math&amp;gt;  mayor que &amp;lt;math&amp;gt;k_1&amp;lt;/math&amp;gt;. Y otro en el cual se considera que es más lenta, lo que implica que &amp;lt;math&amp;gt;k_2&amp;lt;/math&amp;gt; es menor que &amp;lt;math&amp;gt;k_1&amp;lt;/math&amp;gt;. Concretamente vamos a tomar los siguientes valores para resolver el problema numéricamente; &amp;lt;math&amp;gt;a_0&amp;lt;/math&amp;gt;=3 ,  &amp;lt;math&amp;gt;b_0&amp;lt;/math&amp;gt;=1, &amp;lt;math&amp;gt;k_1&amp;lt;/math&amp;gt;=1,  &amp;lt;math&amp;gt;k_2&amp;lt;/math&amp;gt;=5, &amp;lt;math&amp;gt;k_2&amp;lt;/math&amp;gt;=1/5, .En ambos casos se resuelve para los primeros 10 segundos.&lt;br /&gt;
&lt;br /&gt;
==La reacción D es más rápida que la reacción C==&lt;br /&gt;
CASO    &amp;lt;math&amp;gt;k_1=5  &amp;lt;/math&amp;gt;   '''h=0.1''' &lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
&lt;br /&gt;
%datos&lt;br /&gt;
y0=[0;0];&lt;br /&gt;
z0=[0;0];&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;
%matriz de las soluciones&lt;br /&gt;
y=zeros(2,length(t)); %euler&lt;br /&gt;
y(:,1)=y0;&lt;br /&gt;
 &lt;br /&gt;
z=zeros(2,length(t)); %runge-kutta&lt;br /&gt;
z(:,1)=y0;&lt;br /&gt;
 &lt;br /&gt;
for i=1:length(t)-1&lt;br /&gt;
 %euler&lt;br /&gt;
 y(:,i+1)=y(:,i)+h*[1*(3-y(1,i))*(1-y(1,i)); 5*(y(1,i)-y(2,i))];&lt;br /&gt;
 %runge-kutta&lt;br /&gt;
 K1=[1*(3-z(1,i))*(1-z(1,i)); 5*(z(1,i)-z(2,i))];&lt;br /&gt;
 K2=[1*(3-(z(1,i)+h/2*K1(1)))*(1-(z(1,i)+h/2*K1(1))); 5*((y(1,i)+h/2*K1(2))-(y(2,i)+h/2*K1(2)))];&lt;br /&gt;
 K3=[1*(3-(z(1,i)+h/2*K2(1)))*(1-(z(1,i)+h/2*K2(1))); 5*((y(1,i)+h/2*K2(2))-(y(2,i)+h/2*K2(2)))];&lt;br /&gt;
 K4=[1*(3-(z(1,i)+h*K3(1)))*(1-(z(1,i)+h*K3(1))); 5*((y(1,i)+h*K3(2))-(y(2,i)+h*K3(2)))];&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;
% se calcula la concentración de C=y1t)-y2(t)&lt;br /&gt;
Ay=y(1,:)-y(2,:); %euler&lt;br /&gt;
Az=z(1,:)-z(2,:); %runge-kutta&lt;br /&gt;
 &lt;br /&gt;
figure(1)&lt;br /&gt;
hold on&lt;br /&gt;
plot(t,Ay) %concentración de C por euler&lt;br /&gt;
plot(t,y(2,:),'r') %concentración de D por euler&lt;br /&gt;
plot(t,Az,'k') %concentración de C por runge-kutta&lt;br /&gt;
plot(t,z(2,:),'g') %concentración de D por runge-kutta&lt;br /&gt;
legend('concentración de C por euler','concentración de D por euler','concentración de C por runge-kutta','concentración de D por runge-kutta','Location','best')&lt;br /&gt;
hold off&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:graficoa.jpeg|500px|miniaturadeimagen|center|Reacción compleja]]&lt;br /&gt;
&lt;br /&gt;
Se observa que en en los primeros instantes aumentan las concentraciones de &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; aumentan sus concentraciones. Antes de que pase 1 segundo, la concentración &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; alcanza un máximo (de unos 0.3 molar) y va disminuyendo progresivamente hasta alcanzar un valor de 0 molar. La concentración &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; sigue creciendo hasta llegar a 1 molar. Una vez que tanto &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; como &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; alcanzan estos valores, se estabiliza la reacción. &lt;br /&gt;
&lt;br /&gt;
Como hemos impuesto que la reacción &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; es más rápida que &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt;, se observa que &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; empieza creciendo más rápidamente, pero como reacciona más despacio que &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; su concentración disminuye progresivamente, mientras que la de &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; aumenta.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''CASO'''  &amp;lt;math&amp;gt;k_2=5  &amp;lt;/math&amp;gt;   '''h=0.3''' &lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
&lt;br /&gt;
%datos&lt;br /&gt;
y0=[0;0];&lt;br /&gt;
z0=[0;0];&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=10;&lt;br /&gt;
h=0.3;&lt;br /&gt;
 &lt;br /&gt;
%variable independiente t&lt;br /&gt;
t=t0:h:tN;&lt;br /&gt;
 &lt;br /&gt;
%matriz de las soluciones&lt;br /&gt;
y=zeros(2,length(t)); %euler&lt;br /&gt;
y(:,1)=y0;&lt;br /&gt;
 &lt;br /&gt;
z=zeros(2,length(t)); %runge-kutta&lt;br /&gt;
z(:,1)=y0;&lt;br /&gt;
 &lt;br /&gt;
for i=1:length(t)-1&lt;br /&gt;
 %euler&lt;br /&gt;
 y(:,i+1)=y(:,i)+h*[1*(3-y(1,i))*(1-y(1,i)); 5*(y(1,i)-y(2,i))];&lt;br /&gt;
 %runge-kutta&lt;br /&gt;
 K1=[1*(3-z(1,i))*(1-z(1,i)); 5*(z(1,i)-z(2,i))];&lt;br /&gt;
 K2=[1*(3-(z(1,i)+h/2*K1(1)))*(1-(z(1,i)+h/2*K1(1))); 5*((y(1,i)+h/2*K1(2))-(y(2,i)+h/2*K1(2)))];&lt;br /&gt;
 K3=[1*(3-(z(1,i)+h/2*K2(1)))*(1-(z(1,i)+h/2*K2(1))); 5*((y(1,i)+h/2*K2(2))-(y(2,i)+h/2*K2(2)))];&lt;br /&gt;
 K4=[1*(3-(z(1,i)+h*K3(1)))*(1-(z(1,i)+h*K3(1))); 5*((y(1,i)+h*K3(2))-(y(2,i)+h*K3(2)))];&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;
% se calcula la concentración de C=y1t)-y2(t)&lt;br /&gt;
Ay=y(1,:)-y(2,:); %euler&lt;br /&gt;
Az=z(1,:)-z(2,:); %runge-kutta&lt;br /&gt;
 &lt;br /&gt;
figure(1)&lt;br /&gt;
hold on&lt;br /&gt;
plot(t,Ay) %concentración de C por euler&lt;br /&gt;
plot(t,y(2,:),'r') %concentración de D por euler&lt;br /&gt;
plot(t,Az,'k') %concentración de C por runge-kutta&lt;br /&gt;
plot(t,z(2,:),'g') %concentración de D por runge-kutta&lt;br /&gt;
legend('concentración de C por euler','concentración de D por euler','concentración de C por runge-kutta','concentración de D por runge-kutta','Location','best')&lt;br /&gt;
hold off&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:graficob.jpeg|500px|miniaturadeimagen|center|Reacción compleja]]&lt;br /&gt;
&lt;br /&gt;
Repetimos el programa pero para un tamaño de paso mayor, de '''h=0.3''', y observamos que no  es suficientemente preciso, sobre todo al principio, no se puede analizar bien lo que está pasando en la reacción.&lt;br /&gt;
&lt;br /&gt;
==La reacción D es más lenta que la reacción C==&lt;br /&gt;
&lt;br /&gt;
CASO  &amp;lt;math&amp;gt;k_1 &amp;lt;/math&amp;gt;=1,   &amp;lt;math&amp;gt;k_2 &amp;lt;/math&amp;gt;=1/5&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
&lt;br /&gt;
%datos&lt;br /&gt;
y0=[0;0];&lt;br /&gt;
z0=[0;0];&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;
%matriz de las soluciones&lt;br /&gt;
y=zeros(2,length(t)); %euler&lt;br /&gt;
y(:,1)=y0;&lt;br /&gt;
 &lt;br /&gt;
z=zeros(2,length(t)); %runge-kutta&lt;br /&gt;
z(:,1)=y0;&lt;br /&gt;
 &lt;br /&gt;
for i=1:length(t)-1&lt;br /&gt;
 %euler&lt;br /&gt;
 y(:,i+1)=y(:,i)+h*[1*(3-y(1,i))*(1-y(1,i)); 1/5*(y(1,i)-y(2,i))];&lt;br /&gt;
 %runge-kutta&lt;br /&gt;
 K1=[1*(3-z(1,i))*(1-z(1,i)); 1/5*(z(1,i)-z(2,i))];&lt;br /&gt;
 K2=[1*(3-(z(1,i)+h/2*K1(1)))*(1-(z(1,i)+h/2*K1(1))); 1/5*((y(1,i)+h/2*K1(2))-(y(2,i)+h/2*K1(2)))];&lt;br /&gt;
 K3=[1*(3-(z(1,i)+h/2*K2(1)))*(1-(z(1,i)+h/2*K2(1))); 1/5*((y(1,i)+h/2*K2(2))-(y(2,i)+h/2*K2(2)))];&lt;br /&gt;
 K4=[1*(3-(z(1,i)+h*K3(1)))*(1-(z(1,i)+h*K3(1))); 1/5*((y(1,i)+h*K3(2))-(y(2,i)+h*K3(2)))];&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;
% se calcula la concentración de C=y1t)-y2(t)&lt;br /&gt;
Ay=y(1,:)-y(2,:); %euler&lt;br /&gt;
Az=z(1,:)-z(2,:); %runge-kutta&lt;br /&gt;
 &lt;br /&gt;
figure(1)&lt;br /&gt;
hold on&lt;br /&gt;
plot(t,Ay) %concentración de C por euler&lt;br /&gt;
plot(t,y(2,:),'r') %concentración de D por euler&lt;br /&gt;
plot(t,Az,'k') %concentración de C por runge-kutta&lt;br /&gt;
plot(t,z(2,:),'g') %concentración de D por runge-kutta&lt;br /&gt;
legend('concentración de C por euler','concentración de D por euler','concentración de C por runge-kutta','concentración de D por runge-kutta','Location','best')&lt;br /&gt;
hold off&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:graficoc.jpeg|500px|miniaturadeimagen|center|Reacción compleja]]&lt;br /&gt;
&lt;br /&gt;
Si ahora imponemos que la reacción  &amp;lt;math&amp;gt;C &amp;lt;/math&amp;gt; es más rápida que  &amp;lt;math&amp;gt;D &amp;lt;/math&amp;gt;, obtenemos lo siguiente. Se parece a la gráfica que obtuvimos en el programa anterior, pero  más extendida en el tiempo, más lenta.  &amp;lt;math&amp;gt;C &amp;lt;/math&amp;gt; alcanza una concentración máxima de unos 0.8 molar antes de empezar a decrecer a medida que avanza el tiempo y acercándose a un valor de '''0''' molar.  &amp;lt;math&amp;gt;D &amp;lt;/math&amp;gt; crece más lentamente que en la gráfica anterior, pero se aproxima al mismo valor, '''1''' molar.&lt;br /&gt;
Se observa que aunque hagamos la reacción  &amp;lt;math&amp;gt;C &amp;lt;/math&amp;gt; más rápida, tenemos las mismas concentraciones finales, pero tardan más tiempo en obtenerse, ya que la reacción tarda más en estabilizarse.&lt;br /&gt;
&lt;br /&gt;
&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>Joseva</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Reacciones_complejas_(Grupo_D1)&amp;diff=27741</id>
		<title>Reacciones complejas (Grupo D1)</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Reacciones_complejas_(Grupo_D1)&amp;diff=27741"/>
				<updated>2015-03-06T11:26:46Z</updated>
		
		<summary type="html">&lt;p&gt;Joseva: /* Método del Trapecio y Método de Runge-Kutta */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{ TrabajoED | Reacciones complejas (Grupo D1) | [[:Categoría:Ecuaciones Diferenciales|Ecuaciones Diferenciales]]|[[:Categoría:ED14/15|Curso 2014-15]] | Rincón Crespo, Kevin&lt;br /&gt;
&lt;br /&gt;
Rodríguez Gómez, Javier&lt;br /&gt;
&lt;br /&gt;
Sans Jiménez, Alejandro&lt;br /&gt;
&lt;br /&gt;
Sesto Muñoz, María Victoria&lt;br /&gt;
&lt;br /&gt;
Vallejo Asín, José Manuel &lt;br /&gt;
&lt;br /&gt;
Villarino Redondo, Álvaro }}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=Introducción=&lt;br /&gt;
Se considera una reacción química irreversible en una solución bien mezclada. Supondremos que la reacción ocurre para un volumen y temperatura constantes. Al inicio se encuentran dos reactivos &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;B&amp;lt;/math&amp;gt;, que van formando un producto &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; en lo que se conoce como una reacción bimolecular, es decir, una molécula de &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt; y una de &amp;lt;math&amp;gt;B&amp;lt;/math&amp;gt; producen una de &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt;.: &lt;br /&gt;
                                                                     &amp;lt;math&amp;gt;A + B → C&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Supondremos también que se satisface la ley de acción de masas, que establece que la velocidad de reacción es proporcional al producto de las concentraciones de los reactivos.&lt;br /&gt;
&lt;br /&gt;
=Concentración del reactivo &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; a lo largo del tiempo=&lt;br /&gt;
En primer lugar, suponiendo que la reacción es irreversible, es decir, que &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; no puede volver a formar &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;B&amp;lt;/math&amp;gt;, se puede expresar la situación mediante el siguiente problema de valor inicial, cuando t&amp;gt;0.:&lt;br /&gt;
   &amp;lt;math&amp;gt;&lt;br /&gt;
   \left . &lt;br /&gt;
      \begin{matrix} &lt;br /&gt;
         y'(t)={k_{1}}({a_{0}}-y(t))({b_{0}}-y(t))=0\\&lt;br /&gt;
         y(0)=0&lt;br /&gt;
      \end{matrix}&lt;br /&gt;
   \right \}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Donde &amp;lt;math&amp;gt; {a_{0}}&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;{b_{0}}&amp;lt;/math&amp;gt; representan las concentraciones iniciales de '''A''' y '''B''' respectivamente y &amp;lt;math&amp;gt;{k_{1}}&amp;lt;/math&amp;gt; es la constante de proporcionalidad que indica la ley de acción de masas. &amp;lt;math&amp;gt;y’(t)&amp;lt;/math&amp;gt; representa la velocidad de reacción, es decir, la velocidad con que se forma el producto &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; ; mientras que la solución de la ecuación diferencial, &amp;lt;math&amp;gt;y(t)&amp;lt;/math&amp;gt; , representa la concentración de &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt;, la cantidad de compuesto que se ha formado. Para comprobar que la solución de este problema de Cauchy es única, comenzamos definiendo.:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;math&amp;gt;f(t,y)={k_{1}}({a_{0}}-y(t))({b_{0}}-y(t))=0,   t&amp;gt;0 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Observamos que &amp;lt;math&amp;gt;f(t,y)&amp;lt;/math&amp;gt; es continua en el intervalo &amp;lt;math&amp;gt; I=(0,∞)∩B((0,0),r&amp;gt;0)&amp;lt;/math&amp;gt;, por lo que ya aseguramos la existencia de al menos una solución. Examinando la derivada parcial.:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\frac{∂f}{∂y}=k_1(-a_0-b_0+2y)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Se deduce que al ser un polinomio no va a haber problemas de continuidad para ninguna bola. De esta forma, podemos asegurar que existe una única solución.&lt;br /&gt;
&lt;br /&gt;
==Concentración del reactivo C a lo largo del tiempo en un proceso reversible==&lt;br /&gt;
&lt;br /&gt;
Ahora bien, ¿qué pasaría si la reacción fuese reversible? Con esto lo que queremos indicar es que además de formarse  &amp;lt;math&amp;gt;C &amp;lt;/math&amp;gt;, este también se descompone de nuevo en  &amp;lt;math&amp;gt;A &amp;lt;/math&amp;gt; y  &amp;lt;math&amp;gt;B &amp;lt;/math&amp;gt;. Por lo tanto, nos quedaría una ecuación diferencial con la siguiente forma, cuando &amp;lt;math&amp;gt;t&amp;gt;0 &amp;lt;/math&amp;gt;. :&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; y'(t)={k_{1}}({a_{0}}-y(t))({b_{0}}-y(t))-Cy(t)&amp;lt;/math&amp;gt;  &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Si nos fijamos, la modificación es sencillamente restar  &amp;lt;math&amp;gt;y(t) &amp;lt;/math&amp;gt; multiplicada por una constante, la cual refleja qué porcentaje de  &amp;lt;math&amp;gt;C &amp;lt;/math&amp;gt; se va descomponiendo a medida que se da, simultáneamente, la reacción  &amp;lt;math&amp;gt;A + B → C &amp;lt;/math&amp;gt;. Sin embargo, esta constante no puede tener cualquier valor, ya que en una reacción se cumple la conservación de masa. Por ello, a  &amp;lt;math&amp;gt;C &amp;lt;/math&amp;gt; le asociaremos el siguiente dominio::&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;C∈(0,1)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Obsérvese que  &amp;lt;math&amp;gt;C &amp;lt;/math&amp;gt; tiene que ser mayor que 0 para que sea reversible, pero al mismo tiempo inferior que 1, ya que si no se estaría descomponiendo más compuesto  &amp;lt;math&amp;gt;C &amp;lt;/math&amp;gt; del que realmente se ha formado, en otras palabras, estaría apareciendo masa de la nada.&lt;br /&gt;
&lt;br /&gt;
=Método de Euler=&lt;br /&gt;
&lt;br /&gt;
Una vez llegados a este punto, se procede a ver una interpretación gráfica de la reacción. Para ello, se refleja en la gráfica (en un intervalo de 2 segundos), cómo varían las concentraciones tanto de &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt; (&amp;lt;math&amp;gt;a_0&amp;lt;/math&amp;gt;=3 mol/L) y &amp;lt;math&amp;gt;B&amp;lt;/math&amp;gt; (&amp;lt;math&amp;gt;b_0&amp;lt;/math&amp;gt;=1 mol/L) como de &amp;lt;math&amp;gt; C&amp;lt;/math&amp;gt;, para una &amp;lt;math&amp;gt;k_1&amp;lt;/math&amp;gt;=1 mol/s. Se comienza, por el momento, aplicando el método de Euler. Posteriormente se utilizarán métodos más precisos.&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo= &lt;br /&gt;
% Euler&lt;br /&gt;
clear all&lt;br /&gt;
% datos del problema&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=2;&lt;br /&gt;
y0=0;&lt;br /&gt;
h=0.1;&lt;br /&gt;
k1=1;&lt;br /&gt;
a0=3;&lt;br /&gt;
b0=1;&lt;br /&gt;
% Definimos la variable independiente&lt;br /&gt;
t=t0:h:tN;&lt;br /&gt;
% Guardamos los valores de la solución aproximada en el vector &amp;quot;y1&amp;quot; y&lt;br /&gt;
% establecemos los vectores de concentraciones A y B&lt;br /&gt;
y1=zeros(1,length(t)); &lt;br /&gt;
y1(1)=y0;&lt;br /&gt;
a1=zeros(1,length(t));&lt;br /&gt;
a1(1)=a0;&lt;br /&gt;
b1=zeros(1,length(t));&lt;br /&gt;
b1(1)=b0;&lt;br /&gt;
% A continuación, calculamos las componentes de los vectores y1, a1 y b1&lt;br /&gt;
for i=1:length(t)-1&lt;br /&gt;
    y1(i+1)=y1(i)+h*(k1*(a0-y1(i))*(b0-y1(i)));    %Euler&lt;br /&gt;
    a1(i+1)=a0-y1(i+1); % evolución de la concentración de A&lt;br /&gt;
    b1(i+1)=b0-y1(i+1); % evolución de la concentración de B&lt;br /&gt;
end&lt;br /&gt;
%grafico &lt;br /&gt;
figure(1)&lt;br /&gt;
hold on&lt;br /&gt;
plot(t,y1,'g')&lt;br /&gt;
plot(t,a1,'r')&lt;br /&gt;
plot(t,b1,'b')&lt;br /&gt;
legend('concentración de C','concentración de A','concentración de B','location','best')&lt;br /&gt;
hold off &lt;br /&gt;
%en verde se muestra la concentración de C, en rojo la de A, y en azul la de B&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Archivo:3euler.jpeg|500px|miniaturadeimagen|center|Reacción compleja]]&lt;br /&gt;
&lt;br /&gt;
Aunque con observar los resultados ya podemos decir con casi absoluta seguridad cuáles son los límites de las concentraciones de cada reactivo &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;B&amp;lt;/math&amp;gt; y del producto &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt;, se ha diseñado un programa que, mediante diferencia de valores sucesivos de la variable &amp;lt;math&amp;gt;y(t)&amp;lt;/math&amp;gt;, nos devuelve el valor de la función cuando dicha diferencia es muy pequeña '''(se ha puesto una diferencia de 0.001)''', es decir, cuando tenemos una asíntota al tender &amp;lt;math&amp;gt;t→∞&amp;lt;/math&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
%Estudio de las asíntotas&lt;br /&gt;
t1=t0:h:10;%se aumenta la longitud de t, y se estima que se alcanzarán las asíntotas antes de t=10&lt;br /&gt;
y_=zeros(1,length(t1)); %se define un vector y_ idéntico a y1 pero con t hasta 10&lt;br /&gt;
a_=y_;&lt;br /&gt;
b_=y_;&lt;br /&gt;
y_(1)=y0;&lt;br /&gt;
a_(1)=a0;&lt;br /&gt;
b_(1)=b0;&lt;br /&gt;
for i=1:length(t1)-1&lt;br /&gt;
    y_(i+1)=y_(i)+h*(k1*(a0-y_(i))*(b0-y_(i)));&lt;br /&gt;
    diferencia=y_(i+1)-y_(i);&lt;br /&gt;
    if abs(diferencia)&amp;lt;=0.001&lt;br /&gt;
        limC=y_(i+1)&lt;br /&gt;
        break&lt;br /&gt;
    end&lt;br /&gt;
end&lt;br /&gt;
for i=1:length(t1)-1&lt;br /&gt;
    y_(i+1)=y_(i)+h*(k1*(a0-y_(i))*(b0-y_(i)));    &lt;br /&gt;
    a_(i+1)=a0-y_(i+1);&lt;br /&gt;
    diferencia2=a_(i+1)-a_(i);&lt;br /&gt;
    if abs(diferencia2)&amp;lt;=0.001&lt;br /&gt;
        limA=a_(i+1)&lt;br /&gt;
        break&lt;br /&gt;
    end&lt;br /&gt;
end&lt;br /&gt;
for i=1:length(t1)-1&lt;br /&gt;
    y_(i+1)=y_(i)+h*(k1*(a0-y_(i))*(b0-y_(i)));    &lt;br /&gt;
    b_(i+1)=b0-y_(i+1);&lt;br /&gt;
    diferencia3=b_(i+1)-b_(i);&lt;br /&gt;
    if abs(diferencia3)&amp;lt;=0.001&lt;br /&gt;
        limB=b_(i+1)&lt;br /&gt;
        break&lt;br /&gt;
    end&lt;br /&gt;
end&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
Que nos devuelve unos valores de las concentraciones para el límite de:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\lim A=2,0036≈2 mol/L&amp;lt;/math&amp;gt;:     &lt;br /&gt;
&amp;lt;math&amp;gt;\lim B=0,0036≈0mol/L&amp;lt;/math&amp;gt;:         &lt;br /&gt;
&amp;lt;math&amp;gt;\lim C=0,9964≈1mol/L&amp;lt;/math&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
Lo cual es lógico, ya que &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;B&amp;lt;/math&amp;gt; se combinan en una proporción de 1:1, luego &amp;lt;math&amp;gt;B&amp;lt;/math&amp;gt;, que tiene una concentración inicial de &amp;lt;math&amp;gt;b_0&amp;lt;/math&amp;gt;=1, será el reactivo limitante (el que desaparecerá por completo), mientras que &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt;, con &amp;lt;math&amp;gt;a_0&amp;lt;/math&amp;gt;=3, acabará con una concentración molar final igual a 2, y &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt;, del que no habia nada,alcanza una concentraccion de &amp;lt;math&amp;gt;1mol/L&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
= Método del Trapecio y Método de Runge-Kutta=&lt;br /&gt;
&lt;br /&gt;
A continuación, para obtener con más precisión las representaciones gráficas de las respectivas concentraciones, se opta por utilizar los métodos de los &amp;lt;math&amp;gt;Trapecios&amp;lt;/math&amp;gt; (segundo orden) y de &amp;lt;math&amp;gt;Runge-Kutta&amp;lt;/math&amp;gt; (cuarto orden). Además, se ha obtenido la expresión explícita de la solución de nuestro problema de valor inicial de manera analítica, mediante variables separables y fracciones simples, resultando la función real::&lt;br /&gt;
&amp;lt;math&amp;gt;y_e(t)=\frac{3e^{2t}-3}{3e^{2t}-1}&amp;lt;/math&amp;gt;&lt;br /&gt;
De manera que las concentraciones de A y de B en cada valor de t quedarían como::&lt;br /&gt;
&amp;lt;math&amp;gt;a_e(t)=a_0-y_e(t)&amp;lt;/math&amp;gt;:&lt;br /&gt;
&amp;lt;math&amp;gt;b_e (t)=b_0-y_e (t)&amp;lt;/math&amp;gt;:&lt;br /&gt;
Para los trapecios, al ser un método implícito, es necesario despejar la componente &amp;lt;math&amp;gt;y_{n+1}&amp;lt;/math&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;y_{n+1}=\frac{(1+\frac{h}{2}∙k_1∙(a_0+b_0))-\sqrt{(1+\frac{h}{2}∙k_1∙(a_0+b_0))^2 -2∙h∙k_1(y_n+\frac{h}{2}∙k_1∙(a_0-y_n )∙(b_0-y_n)+\frac{h}{2}∙k_1∙a_0∙b_0) }}{k_1∙h}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Cabe destacar que este programa parte de los datos ya establecidos en el programa de Euler para '''t0, tN, y0, a0, b0, k1 y h''':&lt;br /&gt;
{{matlab|codigo= &lt;br /&gt;
%Función real&lt;br /&gt;
ye=(3*exp(2.*t)-3)./(3*exp(2.*t)-1);&lt;br /&gt;
ae=a0-ye;&lt;br /&gt;
be=b0-ye;&lt;br /&gt;
&lt;br /&gt;
%Trapecios&lt;br /&gt;
y2=zeros(1,length(t)); &lt;br /&gt;
a2=y2;&lt;br /&gt;
b2=y2;&lt;br /&gt;
y2(1)=y0;&lt;br /&gt;
a2(1)=a0;&lt;br /&gt;
b2(1)=b0;&lt;br /&gt;
for i= 1:length(t)-1&lt;br /&gt;
    y2(i+1)=((1+0.5*h*k1*(a0+b0))-sqrt((1+0.5*h*k1*(a0+b0))^2-2*h*k1*(y2(i)+0.5*h*k1*(a0-y2(i))*(b0-y2(i))+0.5*h*k1*a0*b0)))/(k1*h);&lt;br /&gt;
a2(i+1)=a0-y2(i+1);&lt;br /&gt;
b2(i+1)=b0-y2(i+1);&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
%Runge-Kutta&lt;br /&gt;
y3=zeros(1,length(t)); &lt;br /&gt;
a3=y3;&lt;br /&gt;
b3=y3;&lt;br /&gt;
y3(1)=y0;&lt;br /&gt;
a3(1)=a0;&lt;br /&gt;
b3(1)=b0;&lt;br /&gt;
fori=1:length(t)-1 &lt;br /&gt;
    r1=k1*(a0-y3(i))*(b0-y3(i));&lt;br /&gt;
    r2=k1*(a0-y3(i)-0.5*r1*h)*(b0-y3(i)-0.5*r1*h);&lt;br /&gt;
    r3=k1*(a0-y3(i)-0.5*r2*h)*(b0-y3(i)-0.5*r2*h);&lt;br /&gt;
    r4=k1*(a0-y3(i)-r3*h)*(b0-y3(i)-r3*h);&lt;br /&gt;
y3(i+1)=y3(i)+h/6*(r1+2*r2+2*r3+r4);&lt;br /&gt;
a3(i+1)=a0-y3(i+1);&lt;br /&gt;
b3(i+1)=b0-y3(i+1);&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
%se pintan las cuatro gráficas, con la función real en verde y los puntos con asteriscos, &lt;br /&gt;
%Euler en rojo, los Trapecios en azul, y Runge-Kutta en negro&lt;br /&gt;
figure(2)&lt;br /&gt;
holdon&lt;br /&gt;
plot(t,ye,'g*-')&lt;br /&gt;
plot(t,y2)&lt;br /&gt;
plot(t,y3,'k')&lt;br /&gt;
plot(t,y1,'r')&lt;br /&gt;
legend('Función real','Trapecios', 'Runge-Kutta', 'Euler','Location','best');&lt;br /&gt;
plot(t,ae,'g*')&lt;br /&gt;
plot(t,a2)&lt;br /&gt;
plot(t,a3,'k')&lt;br /&gt;
plot(t,a1,'r')&lt;br /&gt;
plot(t,be,'g*')&lt;br /&gt;
plot(t,b2)&lt;br /&gt;
plot(t,b3,'k')&lt;br /&gt;
plot(t,b1,'r')&lt;br /&gt;
hold off&lt;br /&gt;
&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
Que proporciona el resultado que se puede observar en la primera gráfica adjunta. Como podemos ver, es prácticamente indistinguible una gráfica de la otra. Sin embargo, si la juntamos con las gráficas proporcionadas por el método de Euler, que se representa ahora en rojo, la diferencia es palpable (ver gráfica 2), lo cual evidencia la peor precisión del método de Euler.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:4trapeciokung.jpeg|500px|miniaturadeimagen|center|Reacción compleja]]&lt;br /&gt;
&lt;br /&gt;
[[Archivo:4comparacion.jpeg|500px|miniaturadeimagen|center|Gráfico 2]]&lt;br /&gt;
&lt;br /&gt;
=Reacción consecutiva=&lt;br /&gt;
&lt;br /&gt;
Consideremos ahora que se produce una reacción consecutiva de la forma.: &lt;br /&gt;
&lt;br /&gt;
                                                                   &amp;lt;math&amp;gt;A + B → k_1C → k_2D&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
De tal modo que los reactivos &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;B&amp;lt;/math&amp;gt; se combinan en la proporción 1:1 para formar compuesto &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt;, el cual, a su vez, se va descomponiendo para formar compuesto &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt;. Al igual que se ha hecho antes al analizar las otras reacciones, se considerará que se cumple la ley de acción de masas. Es decir, la velocidad con la que se forma compuesto &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; es proporcional a las concentraciones existentes de &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt; y de &amp;lt;math&amp;gt;B&amp;lt;/math&amp;gt; y del mismo modo la de formación de la sustancia &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; lo es a la concentración de &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; que se ha ido formando.&lt;br /&gt;
&lt;br /&gt;
Esta reacción consecutiva está representada por el siguiente problema de valor inicial::&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;&lt;br /&gt;
   \left . &lt;br /&gt;
      \begin{matrix} &lt;br /&gt;
         y'_1(t)={k_{1}}({a_{0}}-y_1(t))({b_{0}}-y_1(t))\\&lt;br /&gt;
         y'_2(t)={k_{2}}(y_1(t)-y_2(t))\\&lt;br /&gt;
y_1(0)=0\\y_2(0)=0&lt;br /&gt;
      \end{matrix}&lt;br /&gt;
   \right \}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
Donde &amp;lt;math&amp;gt;a_0&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;b_0&amp;lt;/math&amp;gt; representan las concentraciones iniciales de &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;B&amp;lt;/math&amp;gt; respectivamente, &amp;lt;math&amp;gt;k_1&amp;lt;/math&amp;gt; es la constante de proporcionalidad que rige la primera reacción y &amp;lt;math&amp;gt;k_2&amp;lt;/math&amp;gt; la que rige la segunda reacción o reacción consecutiva. &amp;lt;math&amp;gt;y_1’(t)&amp;lt;/math&amp;gt; e  &amp;lt;math&amp;gt;y_2’(t)&amp;lt;/math&amp;gt; representan las velocidades de las reacciones, es decir, las velocidades con que se forman los productos &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt;. &amp;lt;math&amp;gt;y_2(t)&amp;lt;/math&amp;gt; representa la concentración del producto &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; pero es importante apreciar que en este caso &amp;lt;math&amp;gt;y_1(t)&amp;lt;/math&amp;gt; no nos da el valor de la concentración de &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; directamente, sino que ésta será &amp;lt;math&amp;gt;y_1(t)&amp;lt;/math&amp;gt;- &amp;lt;math&amp;gt;y_2(t)&amp;lt;/math&amp;gt;, la cantidad que se forma en la primera reacción menos la que se emplea para formar el producto &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; en la segunda.&lt;br /&gt;
&lt;br /&gt;
Este problema se va a resolver para dos casos diferentes. Uno en el cual se considera que la segunda reacción es más rápida que la primera, lo que supone tomar un valor de la constante &amp;lt;math&amp;gt;k_2&amp;lt;/math&amp;gt;  mayor que &amp;lt;math&amp;gt;k_1&amp;lt;/math&amp;gt;. Y otro en el cual se considera que es más lenta, lo que implica que &amp;lt;math&amp;gt;k_2&amp;lt;/math&amp;gt; es menor que &amp;lt;math&amp;gt;k_1&amp;lt;/math&amp;gt;. Concretamente vamos a tomar los siguientes valores para resolver el problema numéricamente; &amp;lt;math&amp;gt;a_0&amp;lt;/math&amp;gt;=3 ,  &amp;lt;math&amp;gt;b_0&amp;lt;/math&amp;gt;=1, &amp;lt;math&amp;gt;k_1&amp;lt;/math&amp;gt;=1,  &amp;lt;math&amp;gt;k_2&amp;lt;/math&amp;gt;=5, &amp;lt;math&amp;gt;k_2&amp;lt;/math&amp;gt;=1/5, .En ambos casos se resuelve para los primeros 10 segundos.&lt;br /&gt;
&lt;br /&gt;
==La reacción D es más rápida que la reacción C==&lt;br /&gt;
CASO    &amp;lt;math&amp;gt;k_1=5  &amp;lt;/math&amp;gt;   '''h=0.1''' &lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
&lt;br /&gt;
%datos&lt;br /&gt;
y0=[0;0];&lt;br /&gt;
z0=[0;0];&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;
%matriz de las soluciones&lt;br /&gt;
y=zeros(2,length(t)); %euler&lt;br /&gt;
y(:,1)=y0;&lt;br /&gt;
 &lt;br /&gt;
z=zeros(2,length(t)); %runge-kutta&lt;br /&gt;
z(:,1)=y0;&lt;br /&gt;
 &lt;br /&gt;
for i=1:length(t)-1&lt;br /&gt;
 %euler&lt;br /&gt;
 y(:,i+1)=y(:,i)+h*[1*(3-y(1,i))*(1-y(1,i)); 5*(y(1,i)-y(2,i))];&lt;br /&gt;
 %runge-kutta&lt;br /&gt;
 K1=[1*(3-z(1,i))*(1-z(1,i)); 5*(z(1,i)-z(2,i))];&lt;br /&gt;
 K2=[1*(3-(z(1,i)+h/2*K1(1)))*(1-(z(1,i)+h/2*K1(1))); 5*((y(1,i)+h/2*K1(2))-(y(2,i)+h/2*K1(2)))];&lt;br /&gt;
 K3=[1*(3-(z(1,i)+h/2*K2(1)))*(1-(z(1,i)+h/2*K2(1))); 5*((y(1,i)+h/2*K2(2))-(y(2,i)+h/2*K2(2)))];&lt;br /&gt;
 K4=[1*(3-(z(1,i)+h*K3(1)))*(1-(z(1,i)+h*K3(1))); 5*((y(1,i)+h*K3(2))-(y(2,i)+h*K3(2)))];&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;
% se calcula la concentración de C=y1t)-y2(t)&lt;br /&gt;
Ay=y(1,:)-y(2,:); %euler&lt;br /&gt;
Az=z(1,:)-z(2,:); %runge-kutta&lt;br /&gt;
 &lt;br /&gt;
figure(1)&lt;br /&gt;
hold on&lt;br /&gt;
plot(t,Ay) %concentración de C por euler&lt;br /&gt;
plot(t,y(2,:),'r') %concentración de D por euler&lt;br /&gt;
plot(t,Az,'k') %concentración de C por runge-kutta&lt;br /&gt;
plot(t,z(2,:),'g') %concentración de D por runge-kutta&lt;br /&gt;
legend('concentración de C por euler','concentración de D por euler','concentración de C por runge-kutta','concentración de D por runge-kutta','Location','best')&lt;br /&gt;
hold off&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:graficoa.jpeg|500px|miniaturadeimagen|center|Reacción compleja]]&lt;br /&gt;
&lt;br /&gt;
Se observa que en en los primeros instantes aumentan las concentraciones de &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; aumentan sus concentraciones. Antes de que pase 1 segundo, la concentración &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; alcanza un máximo (de unos 0.3 molar) y va disminuyendo progresivamente hasta alcanzar un valor de 0 molar. La concentración &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; sigue creciendo hasta llegar a 1 molar. Una vez que tanto &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; como &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; alcanzan estos valores, se estabiliza la reacción. &lt;br /&gt;
&lt;br /&gt;
Como hemos impuesto que la reacción &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; es más rápida que &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt;, se observa que &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; empieza creciendo más rápidamente, pero como reacciona más despacio que &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; su concentración disminuye progresivamente, mientras que la de &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; aumenta.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''CASO'''  &amp;lt;math&amp;gt;k_2=5  &amp;lt;/math&amp;gt;   '''h=0.3''' &lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
&lt;br /&gt;
%datos&lt;br /&gt;
y0=[0;0];&lt;br /&gt;
z0=[0;0];&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=10;&lt;br /&gt;
h=0.3;&lt;br /&gt;
 &lt;br /&gt;
%variable independiente t&lt;br /&gt;
t=t0:h:tN;&lt;br /&gt;
 &lt;br /&gt;
%matriz de las soluciones&lt;br /&gt;
y=zeros(2,length(t)); %euler&lt;br /&gt;
y(:,1)=y0;&lt;br /&gt;
 &lt;br /&gt;
z=zeros(2,length(t)); %runge-kutta&lt;br /&gt;
z(:,1)=y0;&lt;br /&gt;
 &lt;br /&gt;
for i=1:length(t)-1&lt;br /&gt;
 %euler&lt;br /&gt;
 y(:,i+1)=y(:,i)+h*[1*(3-y(1,i))*(1-y(1,i)); 5*(y(1,i)-y(2,i))];&lt;br /&gt;
 %runge-kutta&lt;br /&gt;
 K1=[1*(3-z(1,i))*(1-z(1,i)); 5*(z(1,i)-z(2,i))];&lt;br /&gt;
 K2=[1*(3-(z(1,i)+h/2*K1(1)))*(1-(z(1,i)+h/2*K1(1))); 5*((y(1,i)+h/2*K1(2))-(y(2,i)+h/2*K1(2)))];&lt;br /&gt;
 K3=[1*(3-(z(1,i)+h/2*K2(1)))*(1-(z(1,i)+h/2*K2(1))); 5*((y(1,i)+h/2*K2(2))-(y(2,i)+h/2*K2(2)))];&lt;br /&gt;
 K4=[1*(3-(z(1,i)+h*K3(1)))*(1-(z(1,i)+h*K3(1))); 5*((y(1,i)+h*K3(2))-(y(2,i)+h*K3(2)))];&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;
% se calcula la concentración de C=y1t)-y2(t)&lt;br /&gt;
Ay=y(1,:)-y(2,:); %euler&lt;br /&gt;
Az=z(1,:)-z(2,:); %runge-kutta&lt;br /&gt;
 &lt;br /&gt;
figure(1)&lt;br /&gt;
hold on&lt;br /&gt;
plot(t,Ay) %concentración de C por euler&lt;br /&gt;
plot(t,y(2,:),'r') %concentración de D por euler&lt;br /&gt;
plot(t,Az,'k') %concentración de C por runge-kutta&lt;br /&gt;
plot(t,z(2,:),'g') %concentración de D por runge-kutta&lt;br /&gt;
legend('concentración de C por euler','concentración de D por euler','concentración de C por runge-kutta','concentración de D por runge-kutta','Location','best')&lt;br /&gt;
hold off&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:graficob.jpeg|500px|miniaturadeimagen|center|Reacción compleja]]&lt;br /&gt;
&lt;br /&gt;
Repetimos el programa pero para un tamaño de paso mayor, de '''h=0.3''', y observamos que no  es suficientemente preciso, sobre todo al principio, no se puede analizar bien lo que está pasando en la reacción.&lt;br /&gt;
&lt;br /&gt;
==La reacción D es más lenta que la reacción C==&lt;br /&gt;
&lt;br /&gt;
CASO  &amp;lt;math&amp;gt;k_1 &amp;lt;/math&amp;gt;=1,   &amp;lt;math&amp;gt;k_2 &amp;lt;/math&amp;gt;=1/5&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
&lt;br /&gt;
%datos&lt;br /&gt;
y0=[0;0];&lt;br /&gt;
z0=[0;0];&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;
%matriz de las soluciones&lt;br /&gt;
y=zeros(2,length(t)); %euler&lt;br /&gt;
y(:,1)=y0;&lt;br /&gt;
 &lt;br /&gt;
z=zeros(2,length(t)); %runge-kutta&lt;br /&gt;
z(:,1)=y0;&lt;br /&gt;
 &lt;br /&gt;
for i=1:length(t)-1&lt;br /&gt;
 %euler&lt;br /&gt;
 y(:,i+1)=y(:,i)+h*[1*(3-y(1,i))*(1-y(1,i)); 1/5*(y(1,i)-y(2,i))];&lt;br /&gt;
 %runge-kutta&lt;br /&gt;
 K1=[1*(3-z(1,i))*(1-z(1,i)); 1/5*(z(1,i)-z(2,i))];&lt;br /&gt;
 K2=[1*(3-(z(1,i)+h/2*K1(1)))*(1-(z(1,i)+h/2*K1(1))); 1/5*((y(1,i)+h/2*K1(2))-(y(2,i)+h/2*K1(2)))];&lt;br /&gt;
 K3=[1*(3-(z(1,i)+h/2*K2(1)))*(1-(z(1,i)+h/2*K2(1))); 1/5*((y(1,i)+h/2*K2(2))-(y(2,i)+h/2*K2(2)))];&lt;br /&gt;
 K4=[1*(3-(z(1,i)+h*K3(1)))*(1-(z(1,i)+h*K3(1))); 1/5*((y(1,i)+h*K3(2))-(y(2,i)+h*K3(2)))];&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;
% se calcula la concentración de C=y1t)-y2(t)&lt;br /&gt;
Ay=y(1,:)-y(2,:); %euler&lt;br /&gt;
Az=z(1,:)-z(2,:); %runge-kutta&lt;br /&gt;
 &lt;br /&gt;
figure(1)&lt;br /&gt;
hold on&lt;br /&gt;
plot(t,Ay) %concentración de C por euler&lt;br /&gt;
plot(t,y(2,:),'r') %concentración de D por euler&lt;br /&gt;
plot(t,Az,'k') %concentración de C por runge-kutta&lt;br /&gt;
plot(t,z(2,:),'g') %concentración de D por runge-kutta&lt;br /&gt;
legend('concentración de C por euler','concentración de D por euler','concentración de C por runge-kutta','concentración de D por runge-kutta','Location','best')&lt;br /&gt;
hold off&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:graficoc.jpeg|500px|miniaturadeimagen|center|Reacción compleja]]&lt;br /&gt;
&lt;br /&gt;
Si ahora imponemos que la reacción  &amp;lt;math&amp;gt;C &amp;lt;/math&amp;gt; es más rápida que  &amp;lt;math&amp;gt;D &amp;lt;/math&amp;gt;, obtenemos lo siguiente. Se parece a la gráfica que obtuvimos en el programa anterior, pero  más extendida en el tiempo, más lenta.  &amp;lt;math&amp;gt;C &amp;lt;/math&amp;gt; alcanza una concentración máxima de unos 0.8 molar antes de empezar a decrecer a medida que avanza el tiempo y acercándose a un valor de '''0''' molar.  &amp;lt;math&amp;gt;D &amp;lt;/math&amp;gt; crece más lentamente que en la gráfica anterior, pero se aproxima al mismo valor, '''1''' molar.&lt;br /&gt;
Se observa que aunque hagamos la reacción  &amp;lt;math&amp;gt;C &amp;lt;/math&amp;gt; más rápida, tenemos las mismas concentraciones finales, pero tardan más tiempo en obtenerse, ya que la reacción tarda más en estabilizarse.&lt;br /&gt;
&lt;br /&gt;
&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>Joseva</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Reacciones_complejas_(Grupo_D1)&amp;diff=27738</id>
		<title>Reacciones complejas (Grupo D1)</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Reacciones_complejas_(Grupo_D1)&amp;diff=27738"/>
				<updated>2015-03-06T11:25:58Z</updated>
		
		<summary type="html">&lt;p&gt;Joseva: /* Método del Trapecio y Método de Runge-Kutta */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{ TrabajoED | Reacciones complejas (Grupo D1) | [[:Categoría:Ecuaciones Diferenciales|Ecuaciones Diferenciales]]|[[:Categoría:ED14/15|Curso 2014-15]] | Rincón Crespo, Kevin&lt;br /&gt;
&lt;br /&gt;
Rodríguez Gómez, Javier&lt;br /&gt;
&lt;br /&gt;
Sans Jiménez, Alejandro&lt;br /&gt;
&lt;br /&gt;
Sesto Muñoz, María Victoria&lt;br /&gt;
&lt;br /&gt;
Vallejo Asín, José Manuel &lt;br /&gt;
&lt;br /&gt;
Villarino Redondo, Álvaro }}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=Introducción=&lt;br /&gt;
Se considera una reacción química irreversible en una solución bien mezclada. Supondremos que la reacción ocurre para un volumen y temperatura constantes. Al inicio se encuentran dos reactivos &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;B&amp;lt;/math&amp;gt;, que van formando un producto &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; en lo que se conoce como una reacción bimolecular, es decir, una molécula de &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt; y una de &amp;lt;math&amp;gt;B&amp;lt;/math&amp;gt; producen una de &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt;.: &lt;br /&gt;
                                                                     &amp;lt;math&amp;gt;A + B → C&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Supondremos también que se satisface la ley de acción de masas, que establece que la velocidad de reacción es proporcional al producto de las concentraciones de los reactivos.&lt;br /&gt;
&lt;br /&gt;
=Concentración del reactivo &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; a lo largo del tiempo=&lt;br /&gt;
En primer lugar, suponiendo que la reacción es irreversible, es decir, que &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; no puede volver a formar &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;B&amp;lt;/math&amp;gt;, se puede expresar la situación mediante el siguiente problema de valor inicial, cuando t&amp;gt;0.:&lt;br /&gt;
   &amp;lt;math&amp;gt;&lt;br /&gt;
   \left . &lt;br /&gt;
      \begin{matrix} &lt;br /&gt;
         y'(t)={k_{1}}({a_{0}}-y(t))({b_{0}}-y(t))=0\\&lt;br /&gt;
         y(0)=0&lt;br /&gt;
      \end{matrix}&lt;br /&gt;
   \right \}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Donde &amp;lt;math&amp;gt; {a_{0}}&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;{b_{0}}&amp;lt;/math&amp;gt; representan las concentraciones iniciales de '''A''' y '''B''' respectivamente y &amp;lt;math&amp;gt;{k_{1}}&amp;lt;/math&amp;gt; es la constante de proporcionalidad que indica la ley de acción de masas. &amp;lt;math&amp;gt;y’(t)&amp;lt;/math&amp;gt; representa la velocidad de reacción, es decir, la velocidad con que se forma el producto &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; ; mientras que la solución de la ecuación diferencial, &amp;lt;math&amp;gt;y(t)&amp;lt;/math&amp;gt; , representa la concentración de &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt;, la cantidad de compuesto que se ha formado. Para comprobar que la solución de este problema de Cauchy es única, comenzamos definiendo.:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;math&amp;gt;f(t,y)={k_{1}}({a_{0}}-y(t))({b_{0}}-y(t))=0,   t&amp;gt;0 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Observamos que &amp;lt;math&amp;gt;f(t,y)&amp;lt;/math&amp;gt; es continua en el intervalo &amp;lt;math&amp;gt; I=(0,∞)∩B((0,0),r&amp;gt;0)&amp;lt;/math&amp;gt;, por lo que ya aseguramos la existencia de al menos una solución. Examinando la derivada parcial.:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\frac{∂f}{∂y}=k_1(-a_0-b_0+2y)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Se deduce que al ser un polinomio no va a haber problemas de continuidad para ninguna bola. De esta forma, podemos asegurar que existe una única solución.&lt;br /&gt;
&lt;br /&gt;
==Concentración del reactivo C a lo largo del tiempo en un proceso reversible==&lt;br /&gt;
&lt;br /&gt;
Ahora bien, ¿qué pasaría si la reacción fuese reversible? Con esto lo que queremos indicar es que además de formarse  &amp;lt;math&amp;gt;C &amp;lt;/math&amp;gt;, este también se descompone de nuevo en  &amp;lt;math&amp;gt;A &amp;lt;/math&amp;gt; y  &amp;lt;math&amp;gt;B &amp;lt;/math&amp;gt;. Por lo tanto, nos quedaría una ecuación diferencial con la siguiente forma, cuando &amp;lt;math&amp;gt;t&amp;gt;0 &amp;lt;/math&amp;gt;. :&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; y'(t)={k_{1}}({a_{0}}-y(t))({b_{0}}-y(t))-Cy(t)&amp;lt;/math&amp;gt;  &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Si nos fijamos, la modificación es sencillamente restar  &amp;lt;math&amp;gt;y(t) &amp;lt;/math&amp;gt; multiplicada por una constante, la cual refleja qué porcentaje de  &amp;lt;math&amp;gt;C &amp;lt;/math&amp;gt; se va descomponiendo a medida que se da, simultáneamente, la reacción  &amp;lt;math&amp;gt;A + B → C &amp;lt;/math&amp;gt;. Sin embargo, esta constante no puede tener cualquier valor, ya que en una reacción se cumple la conservación de masa. Por ello, a  &amp;lt;math&amp;gt;C &amp;lt;/math&amp;gt; le asociaremos el siguiente dominio::&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;C∈(0,1)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Obsérvese que  &amp;lt;math&amp;gt;C &amp;lt;/math&amp;gt; tiene que ser mayor que 0 para que sea reversible, pero al mismo tiempo inferior que 1, ya que si no se estaría descomponiendo más compuesto  &amp;lt;math&amp;gt;C &amp;lt;/math&amp;gt; del que realmente se ha formado, en otras palabras, estaría apareciendo masa de la nada.&lt;br /&gt;
&lt;br /&gt;
=Método de Euler=&lt;br /&gt;
&lt;br /&gt;
Una vez llegados a este punto, se procede a ver una interpretación gráfica de la reacción. Para ello, se refleja en la gráfica (en un intervalo de 2 segundos), cómo varían las concentraciones tanto de &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt; (&amp;lt;math&amp;gt;a_0&amp;lt;/math&amp;gt;=3 mol/L) y &amp;lt;math&amp;gt;B&amp;lt;/math&amp;gt; (&amp;lt;math&amp;gt;b_0&amp;lt;/math&amp;gt;=1 mol/L) como de &amp;lt;math&amp;gt; C&amp;lt;/math&amp;gt;, para una &amp;lt;math&amp;gt;k_1&amp;lt;/math&amp;gt;=1 mol/s. Se comienza, por el momento, aplicando el método de Euler. Posteriormente se utilizarán métodos más precisos.&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo= &lt;br /&gt;
% Euler&lt;br /&gt;
clear all&lt;br /&gt;
% datos del problema&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=2;&lt;br /&gt;
y0=0;&lt;br /&gt;
h=0.1;&lt;br /&gt;
k1=1;&lt;br /&gt;
a0=3;&lt;br /&gt;
b0=1;&lt;br /&gt;
% Definimos la variable independiente&lt;br /&gt;
t=t0:h:tN;&lt;br /&gt;
% Guardamos los valores de la solución aproximada en el vector &amp;quot;y1&amp;quot; y&lt;br /&gt;
% establecemos los vectores de concentraciones A y B&lt;br /&gt;
y1=zeros(1,length(t)); &lt;br /&gt;
y1(1)=y0;&lt;br /&gt;
a1=zeros(1,length(t));&lt;br /&gt;
a1(1)=a0;&lt;br /&gt;
b1=zeros(1,length(t));&lt;br /&gt;
b1(1)=b0;&lt;br /&gt;
% A continuación, calculamos las componentes de los vectores y1, a1 y b1&lt;br /&gt;
for i=1:length(t)-1&lt;br /&gt;
    y1(i+1)=y1(i)+h*(k1*(a0-y1(i))*(b0-y1(i)));    %Euler&lt;br /&gt;
    a1(i+1)=a0-y1(i+1); % evolución de la concentración de A&lt;br /&gt;
    b1(i+1)=b0-y1(i+1); % evolución de la concentración de B&lt;br /&gt;
end&lt;br /&gt;
%grafico &lt;br /&gt;
figure(1)&lt;br /&gt;
hold on&lt;br /&gt;
plot(t,y1,'g')&lt;br /&gt;
plot(t,a1,'r')&lt;br /&gt;
plot(t,b1,'b')&lt;br /&gt;
legend('concentración de C','concentración de A','concentración de B','location','best')&lt;br /&gt;
hold off &lt;br /&gt;
%en verde se muestra la concentración de C, en rojo la de A, y en azul la de B&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Archivo:3euler.jpeg|500px|miniaturadeimagen|center|Reacción compleja]]&lt;br /&gt;
&lt;br /&gt;
Aunque con observar los resultados ya podemos decir con casi absoluta seguridad cuáles son los límites de las concentraciones de cada reactivo &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;B&amp;lt;/math&amp;gt; y del producto &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt;, se ha diseñado un programa que, mediante diferencia de valores sucesivos de la variable &amp;lt;math&amp;gt;y(t)&amp;lt;/math&amp;gt;, nos devuelve el valor de la función cuando dicha diferencia es muy pequeña '''(se ha puesto una diferencia de 0.001)''', es decir, cuando tenemos una asíntota al tender &amp;lt;math&amp;gt;t→∞&amp;lt;/math&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
%Estudio de las asíntotas&lt;br /&gt;
t1=t0:h:10;%se aumenta la longitud de t, y se estima que se alcanzarán las asíntotas antes de t=10&lt;br /&gt;
y_=zeros(1,length(t1)); %se define un vector y_ idéntico a y1 pero con t hasta 10&lt;br /&gt;
a_=y_;&lt;br /&gt;
b_=y_;&lt;br /&gt;
y_(1)=y0;&lt;br /&gt;
a_(1)=a0;&lt;br /&gt;
b_(1)=b0;&lt;br /&gt;
for i=1:length(t1)-1&lt;br /&gt;
    y_(i+1)=y_(i)+h*(k1*(a0-y_(i))*(b0-y_(i)));&lt;br /&gt;
    diferencia=y_(i+1)-y_(i);&lt;br /&gt;
    if abs(diferencia)&amp;lt;=0.001&lt;br /&gt;
        limC=y_(i+1)&lt;br /&gt;
        break&lt;br /&gt;
    end&lt;br /&gt;
end&lt;br /&gt;
for i=1:length(t1)-1&lt;br /&gt;
    y_(i+1)=y_(i)+h*(k1*(a0-y_(i))*(b0-y_(i)));    &lt;br /&gt;
    a_(i+1)=a0-y_(i+1);&lt;br /&gt;
    diferencia2=a_(i+1)-a_(i);&lt;br /&gt;
    if abs(diferencia2)&amp;lt;=0.001&lt;br /&gt;
        limA=a_(i+1)&lt;br /&gt;
        break&lt;br /&gt;
    end&lt;br /&gt;
end&lt;br /&gt;
for i=1:length(t1)-1&lt;br /&gt;
    y_(i+1)=y_(i)+h*(k1*(a0-y_(i))*(b0-y_(i)));    &lt;br /&gt;
    b_(i+1)=b0-y_(i+1);&lt;br /&gt;
    diferencia3=b_(i+1)-b_(i);&lt;br /&gt;
    if abs(diferencia3)&amp;lt;=0.001&lt;br /&gt;
        limB=b_(i+1)&lt;br /&gt;
        break&lt;br /&gt;
    end&lt;br /&gt;
end&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
Que nos devuelve unos valores de las concentraciones para el límite de:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\lim A=2,0036≈2 mol/L&amp;lt;/math&amp;gt;:     &lt;br /&gt;
&amp;lt;math&amp;gt;\lim B=0,0036≈0mol/L&amp;lt;/math&amp;gt;:         &lt;br /&gt;
&amp;lt;math&amp;gt;\lim C=0,9964≈1mol/L&amp;lt;/math&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
Lo cual es lógico, ya que &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;B&amp;lt;/math&amp;gt; se combinan en una proporción de 1:1, luego &amp;lt;math&amp;gt;B&amp;lt;/math&amp;gt;, que tiene una concentración inicial de &amp;lt;math&amp;gt;b_0&amp;lt;/math&amp;gt;=1, será el reactivo limitante (el que desaparecerá por completo), mientras que &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt;, con &amp;lt;math&amp;gt;a_0&amp;lt;/math&amp;gt;=3, acabará con una concentración molar final igual a 2, y &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt;, del que no habia nada,alcanza una concentraccion de &amp;lt;math&amp;gt;1mol/L&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
= Método del Trapecio y Método de Runge-Kutta=&lt;br /&gt;
&lt;br /&gt;
A continuación, para obtener con más precisión las representaciones gráficas de las respectivas concentraciones, se opta por utilizar los métodos de los &amp;lt;math&amp;gt;Trapecios&amp;lt;/math&amp;gt; (segundo orden) y de &amp;lt;math&amp;gt;Runge-Kutta&amp;lt;/math&amp;gt; (cuarto orden). Además, se ha obtenido la expresión explícita de la solución de nuestro problema de valor inicial de manera analítica, mediante variables separables y fracciones simples, resultando la función real::&lt;br /&gt;
&amp;lt;math&amp;gt;y_e(t)=\frac{3e^{2t}-3}{3e^{2t}-1}&amp;lt;/math&amp;gt;&lt;br /&gt;
De manera que las concentraciones de A y de B en cada valor de t quedarían como::&lt;br /&gt;
&amp;lt;math&amp;gt;a_e(t)=a_0-y_e(t)&amp;lt;/math&amp;gt;:&lt;br /&gt;
&amp;lt;math&amp;gt;b_e (t)=b_0-y_e (t)&amp;lt;/math&amp;gt;:&lt;br /&gt;
Para los trapecios, al ser un método implícito, es necesario despejar la componente &amp;lt;math&amp;gt;y_{n+1}&amp;lt;/math&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;y_{n+1}=\frac{(1+\frac{h}{2}∙k_1∙(a_0+b_0))-\sqrt{(1+\frac{h}{2}∙k_1∙(a_0+b_0))^2 -2∙h∙k_1(y_n+\frac{h}{2}∙k_1∙(a_0-y_n )∙(b_0-y_n)+\frac{h}{2}∙k_1∙a_0∙b_0) }}{k_1∙h}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Cabe destacar que este programa parte de los datos ya establecidos en el programa de Euler para '''t0, tN, y0, a0, b0, k1 y h''':&lt;br /&gt;
{{matlab|codigo= &lt;br /&gt;
%Función real&lt;br /&gt;
ye=(3*exp(2.*t)-3)./(3*exp(2.*t)-1);&lt;br /&gt;
ae=a0-ye;&lt;br /&gt;
be=b0-ye;&lt;br /&gt;
&lt;br /&gt;
%Trapecios&lt;br /&gt;
y2=zeros(1,length(t)); &lt;br /&gt;
a2=y2;&lt;br /&gt;
b2=y2;&lt;br /&gt;
y2(1)=y0;&lt;br /&gt;
a2(1)=a0;&lt;br /&gt;
b2(1)=b0;&lt;br /&gt;
for i= 1:length(t)-1&lt;br /&gt;
    y2(i+1)=((1+0.5*h*k1*(a0+b0))-sqrt((1+0.5*h*k1*(a0+b0))^2-2*h*k1*(y2(i)+0.5*h*k1*(a0-y2(i))*(b0-y2(i))+0.5*h*k1*a0*b0)))/(k1*h);&lt;br /&gt;
a2(i+1)=a0-y2(i+1);&lt;br /&gt;
b2(i+1)=b0-y2(i+1);&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
%Runge-Kutta&lt;br /&gt;
y3=zeros(1,length(t)); &lt;br /&gt;
a3=y3;&lt;br /&gt;
b3=y3;&lt;br /&gt;
y3(1)=y0;&lt;br /&gt;
a3(1)=a0;&lt;br /&gt;
b3(1)=b0;&lt;br /&gt;
fori=1:length(t)-1 &lt;br /&gt;
    r1=k1*(a0-y3(i))*(b0-y3(i));&lt;br /&gt;
    r2=k1*(a0-y3(i)-0.5*r1*h)*(b0-y3(i)-0.5*r1*h);&lt;br /&gt;
    r3=k1*(a0-y3(i)-0.5*r2*h)*(b0-y3(i)-0.5*r2*h);&lt;br /&gt;
    r4=k1*(a0-y3(i)-r3*h)*(b0-y3(i)-r3*h);&lt;br /&gt;
y3(i+1)=y3(i)+h/6*(r1+2*r2+2*r3+r4);&lt;br /&gt;
a3(i+1)=a0-y3(i+1);&lt;br /&gt;
b3(i+1)=b0-y3(i+1);&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
%se pintan las cuatro gráficas, con la función real en verde y los puntos con asteriscos, Euler en rojo, los Trapecios en azul, y Runge-Kutta en negro&lt;br /&gt;
figure(2)&lt;br /&gt;
holdon&lt;br /&gt;
plot(t,ye,'g*-')&lt;br /&gt;
plot(t,y2)&lt;br /&gt;
plot(t,y3,'k')&lt;br /&gt;
plot(t,y1,'r')&lt;br /&gt;
legend('Función real','Trapecios', 'Runge-Kutta', 'Euler','Location','best');&lt;br /&gt;
plot(t,ae,'g*')&lt;br /&gt;
plot(t,a2)&lt;br /&gt;
plot(t,a3,'k')&lt;br /&gt;
plot(t,a1,'r')&lt;br /&gt;
plot(t,be,'g*')&lt;br /&gt;
plot(t,b2)&lt;br /&gt;
plot(t,b3,'k')&lt;br /&gt;
plot(t,b1,'r')&lt;br /&gt;
hold off&lt;br /&gt;
&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
Que proporciona el resultado que se puede observar en la primera gráfica adjunta. Como podemos ver, es prácticamente indistinguible una gráfica de la otra. Sin embargo, si la juntamos con las gráficas proporcionadas por el método de Euler, que se representa ahora en rojo, la diferencia es palpable (ver gráfica 2), lo cual evidencia la peor precisión del método de Euler.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:4trapeciokung.jpeg|500px|miniaturadeimagen|center|Reacción compleja]]&lt;br /&gt;
&lt;br /&gt;
[[Archivo:4comparacion.jpeg|500px|miniaturadeimagen|center|Gráfico 2]]&lt;br /&gt;
&lt;br /&gt;
=Reacción consecutiva=&lt;br /&gt;
&lt;br /&gt;
Consideremos ahora que se produce una reacción consecutiva de la forma.: &lt;br /&gt;
&lt;br /&gt;
                                                                   &amp;lt;math&amp;gt;A + B → k_1C → k_2D&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
De tal modo que los reactivos &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;B&amp;lt;/math&amp;gt; se combinan en la proporción 1:1 para formar compuesto &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt;, el cual, a su vez, se va descomponiendo para formar compuesto &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt;. Al igual que se ha hecho antes al analizar las otras reacciones, se considerará que se cumple la ley de acción de masas. Es decir, la velocidad con la que se forma compuesto &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; es proporcional a las concentraciones existentes de &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt; y de &amp;lt;math&amp;gt;B&amp;lt;/math&amp;gt; y del mismo modo la de formación de la sustancia &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; lo es a la concentración de &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; que se ha ido formando.&lt;br /&gt;
&lt;br /&gt;
Esta reacción consecutiva está representada por el siguiente problema de valor inicial::&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;&lt;br /&gt;
   \left . &lt;br /&gt;
      \begin{matrix} &lt;br /&gt;
         y'_1(t)={k_{1}}({a_{0}}-y_1(t))({b_{0}}-y_1(t))\\&lt;br /&gt;
         y'_2(t)={k_{2}}(y_1(t)-y_2(t))\\&lt;br /&gt;
y_1(0)=0\\y_2(0)=0&lt;br /&gt;
      \end{matrix}&lt;br /&gt;
   \right \}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
Donde &amp;lt;math&amp;gt;a_0&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;b_0&amp;lt;/math&amp;gt; representan las concentraciones iniciales de &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;B&amp;lt;/math&amp;gt; respectivamente, &amp;lt;math&amp;gt;k_1&amp;lt;/math&amp;gt; es la constante de proporcionalidad que rige la primera reacción y &amp;lt;math&amp;gt;k_2&amp;lt;/math&amp;gt; la que rige la segunda reacción o reacción consecutiva. &amp;lt;math&amp;gt;y_1’(t)&amp;lt;/math&amp;gt; e  &amp;lt;math&amp;gt;y_2’(t)&amp;lt;/math&amp;gt; representan las velocidades de las reacciones, es decir, las velocidades con que se forman los productos &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt;. &amp;lt;math&amp;gt;y_2(t)&amp;lt;/math&amp;gt; representa la concentración del producto &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; pero es importante apreciar que en este caso &amp;lt;math&amp;gt;y_1(t)&amp;lt;/math&amp;gt; no nos da el valor de la concentración de &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; directamente, sino que ésta será &amp;lt;math&amp;gt;y_1(t)&amp;lt;/math&amp;gt;- &amp;lt;math&amp;gt;y_2(t)&amp;lt;/math&amp;gt;, la cantidad que se forma en la primera reacción menos la que se emplea para formar el producto &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; en la segunda.&lt;br /&gt;
&lt;br /&gt;
Este problema se va a resolver para dos casos diferentes. Uno en el cual se considera que la segunda reacción es más rápida que la primera, lo que supone tomar un valor de la constante &amp;lt;math&amp;gt;k_2&amp;lt;/math&amp;gt;  mayor que &amp;lt;math&amp;gt;k_1&amp;lt;/math&amp;gt;. Y otro en el cual se considera que es más lenta, lo que implica que &amp;lt;math&amp;gt;k_2&amp;lt;/math&amp;gt; es menor que &amp;lt;math&amp;gt;k_1&amp;lt;/math&amp;gt;. Concretamente vamos a tomar los siguientes valores para resolver el problema numéricamente; &amp;lt;math&amp;gt;a_0&amp;lt;/math&amp;gt;=3 ,  &amp;lt;math&amp;gt;b_0&amp;lt;/math&amp;gt;=1, &amp;lt;math&amp;gt;k_1&amp;lt;/math&amp;gt;=1,  &amp;lt;math&amp;gt;k_2&amp;lt;/math&amp;gt;=5, &amp;lt;math&amp;gt;k_2&amp;lt;/math&amp;gt;=1/5, .En ambos casos se resuelve para los primeros 10 segundos.&lt;br /&gt;
&lt;br /&gt;
==La reacción D es más rápida que la reacción C==&lt;br /&gt;
CASO    &amp;lt;math&amp;gt;k_1=5  &amp;lt;/math&amp;gt;   '''h=0.1''' &lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
&lt;br /&gt;
%datos&lt;br /&gt;
y0=[0;0];&lt;br /&gt;
z0=[0;0];&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;
%matriz de las soluciones&lt;br /&gt;
y=zeros(2,length(t)); %euler&lt;br /&gt;
y(:,1)=y0;&lt;br /&gt;
 &lt;br /&gt;
z=zeros(2,length(t)); %runge-kutta&lt;br /&gt;
z(:,1)=y0;&lt;br /&gt;
 &lt;br /&gt;
for i=1:length(t)-1&lt;br /&gt;
 %euler&lt;br /&gt;
 y(:,i+1)=y(:,i)+h*[1*(3-y(1,i))*(1-y(1,i)); 5*(y(1,i)-y(2,i))];&lt;br /&gt;
 %runge-kutta&lt;br /&gt;
 K1=[1*(3-z(1,i))*(1-z(1,i)); 5*(z(1,i)-z(2,i))];&lt;br /&gt;
 K2=[1*(3-(z(1,i)+h/2*K1(1)))*(1-(z(1,i)+h/2*K1(1))); 5*((y(1,i)+h/2*K1(2))-(y(2,i)+h/2*K1(2)))];&lt;br /&gt;
 K3=[1*(3-(z(1,i)+h/2*K2(1)))*(1-(z(1,i)+h/2*K2(1))); 5*((y(1,i)+h/2*K2(2))-(y(2,i)+h/2*K2(2)))];&lt;br /&gt;
 K4=[1*(3-(z(1,i)+h*K3(1)))*(1-(z(1,i)+h*K3(1))); 5*((y(1,i)+h*K3(2))-(y(2,i)+h*K3(2)))];&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;
% se calcula la concentración de C=y1t)-y2(t)&lt;br /&gt;
Ay=y(1,:)-y(2,:); %euler&lt;br /&gt;
Az=z(1,:)-z(2,:); %runge-kutta&lt;br /&gt;
 &lt;br /&gt;
figure(1)&lt;br /&gt;
hold on&lt;br /&gt;
plot(t,Ay) %concentración de C por euler&lt;br /&gt;
plot(t,y(2,:),'r') %concentración de D por euler&lt;br /&gt;
plot(t,Az,'k') %concentración de C por runge-kutta&lt;br /&gt;
plot(t,z(2,:),'g') %concentración de D por runge-kutta&lt;br /&gt;
legend('concentración de C por euler','concentración de D por euler','concentración de C por runge-kutta','concentración de D por runge-kutta','Location','best')&lt;br /&gt;
hold off&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:graficoa.jpeg|500px|miniaturadeimagen|center|Reacción compleja]]&lt;br /&gt;
&lt;br /&gt;
Se observa que en en los primeros instantes aumentan las concentraciones de &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; aumentan sus concentraciones. Antes de que pase 1 segundo, la concentración &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; alcanza un máximo (de unos 0.3 molar) y va disminuyendo progresivamente hasta alcanzar un valor de 0 molar. La concentración &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; sigue creciendo hasta llegar a 1 molar. Una vez que tanto &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; como &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; alcanzan estos valores, se estabiliza la reacción. &lt;br /&gt;
&lt;br /&gt;
Como hemos impuesto que la reacción &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; es más rápida que &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt;, se observa que &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; empieza creciendo más rápidamente, pero como reacciona más despacio que &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; su concentración disminuye progresivamente, mientras que la de &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; aumenta.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''CASO'''  &amp;lt;math&amp;gt;k_2=5  &amp;lt;/math&amp;gt;   '''h=0.3''' &lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
&lt;br /&gt;
%datos&lt;br /&gt;
y0=[0;0];&lt;br /&gt;
z0=[0;0];&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=10;&lt;br /&gt;
h=0.3;&lt;br /&gt;
 &lt;br /&gt;
%variable independiente t&lt;br /&gt;
t=t0:h:tN;&lt;br /&gt;
 &lt;br /&gt;
%matriz de las soluciones&lt;br /&gt;
y=zeros(2,length(t)); %euler&lt;br /&gt;
y(:,1)=y0;&lt;br /&gt;
 &lt;br /&gt;
z=zeros(2,length(t)); %runge-kutta&lt;br /&gt;
z(:,1)=y0;&lt;br /&gt;
 &lt;br /&gt;
for i=1:length(t)-1&lt;br /&gt;
 %euler&lt;br /&gt;
 y(:,i+1)=y(:,i)+h*[1*(3-y(1,i))*(1-y(1,i)); 5*(y(1,i)-y(2,i))];&lt;br /&gt;
 %runge-kutta&lt;br /&gt;
 K1=[1*(3-z(1,i))*(1-z(1,i)); 5*(z(1,i)-z(2,i))];&lt;br /&gt;
 K2=[1*(3-(z(1,i)+h/2*K1(1)))*(1-(z(1,i)+h/2*K1(1))); 5*((y(1,i)+h/2*K1(2))-(y(2,i)+h/2*K1(2)))];&lt;br /&gt;
 K3=[1*(3-(z(1,i)+h/2*K2(1)))*(1-(z(1,i)+h/2*K2(1))); 5*((y(1,i)+h/2*K2(2))-(y(2,i)+h/2*K2(2)))];&lt;br /&gt;
 K4=[1*(3-(z(1,i)+h*K3(1)))*(1-(z(1,i)+h*K3(1))); 5*((y(1,i)+h*K3(2))-(y(2,i)+h*K3(2)))];&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;
% se calcula la concentración de C=y1t)-y2(t)&lt;br /&gt;
Ay=y(1,:)-y(2,:); %euler&lt;br /&gt;
Az=z(1,:)-z(2,:); %runge-kutta&lt;br /&gt;
 &lt;br /&gt;
figure(1)&lt;br /&gt;
hold on&lt;br /&gt;
plot(t,Ay) %concentración de C por euler&lt;br /&gt;
plot(t,y(2,:),'r') %concentración de D por euler&lt;br /&gt;
plot(t,Az,'k') %concentración de C por runge-kutta&lt;br /&gt;
plot(t,z(2,:),'g') %concentración de D por runge-kutta&lt;br /&gt;
legend('concentración de C por euler','concentración de D por euler','concentración de C por runge-kutta','concentración de D por runge-kutta','Location','best')&lt;br /&gt;
hold off&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:graficob.jpeg|500px|miniaturadeimagen|center|Reacción compleja]]&lt;br /&gt;
&lt;br /&gt;
Repetimos el programa pero para un tamaño de paso mayor, de '''h=0.3''', y observamos que no  es suficientemente preciso, sobre todo al principio, no se puede analizar bien lo que está pasando en la reacción.&lt;br /&gt;
&lt;br /&gt;
==La reacción D es más lenta que la reacción C==&lt;br /&gt;
&lt;br /&gt;
CASO  &amp;lt;math&amp;gt;k_1 &amp;lt;/math&amp;gt;=1,   &amp;lt;math&amp;gt;k_2 &amp;lt;/math&amp;gt;=1/5&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
&lt;br /&gt;
%datos&lt;br /&gt;
y0=[0;0];&lt;br /&gt;
z0=[0;0];&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;
%matriz de las soluciones&lt;br /&gt;
y=zeros(2,length(t)); %euler&lt;br /&gt;
y(:,1)=y0;&lt;br /&gt;
 &lt;br /&gt;
z=zeros(2,length(t)); %runge-kutta&lt;br /&gt;
z(:,1)=y0;&lt;br /&gt;
 &lt;br /&gt;
for i=1:length(t)-1&lt;br /&gt;
 %euler&lt;br /&gt;
 y(:,i+1)=y(:,i)+h*[1*(3-y(1,i))*(1-y(1,i)); 1/5*(y(1,i)-y(2,i))];&lt;br /&gt;
 %runge-kutta&lt;br /&gt;
 K1=[1*(3-z(1,i))*(1-z(1,i)); 1/5*(z(1,i)-z(2,i))];&lt;br /&gt;
 K2=[1*(3-(z(1,i)+h/2*K1(1)))*(1-(z(1,i)+h/2*K1(1))); 1/5*((y(1,i)+h/2*K1(2))-(y(2,i)+h/2*K1(2)))];&lt;br /&gt;
 K3=[1*(3-(z(1,i)+h/2*K2(1)))*(1-(z(1,i)+h/2*K2(1))); 1/5*((y(1,i)+h/2*K2(2))-(y(2,i)+h/2*K2(2)))];&lt;br /&gt;
 K4=[1*(3-(z(1,i)+h*K3(1)))*(1-(z(1,i)+h*K3(1))); 1/5*((y(1,i)+h*K3(2))-(y(2,i)+h*K3(2)))];&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;
% se calcula la concentración de C=y1t)-y2(t)&lt;br /&gt;
Ay=y(1,:)-y(2,:); %euler&lt;br /&gt;
Az=z(1,:)-z(2,:); %runge-kutta&lt;br /&gt;
 &lt;br /&gt;
figure(1)&lt;br /&gt;
hold on&lt;br /&gt;
plot(t,Ay) %concentración de C por euler&lt;br /&gt;
plot(t,y(2,:),'r') %concentración de D por euler&lt;br /&gt;
plot(t,Az,'k') %concentración de C por runge-kutta&lt;br /&gt;
plot(t,z(2,:),'g') %concentración de D por runge-kutta&lt;br /&gt;
legend('concentración de C por euler','concentración de D por euler','concentración de C por runge-kutta','concentración de D por runge-kutta','Location','best')&lt;br /&gt;
hold off&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:graficoc.jpeg|500px|miniaturadeimagen|center|Reacción compleja]]&lt;br /&gt;
&lt;br /&gt;
Si ahora imponemos que la reacción  &amp;lt;math&amp;gt;C &amp;lt;/math&amp;gt; es más rápida que  &amp;lt;math&amp;gt;D &amp;lt;/math&amp;gt;, obtenemos lo siguiente. Se parece a la gráfica que obtuvimos en el programa anterior, pero  más extendida en el tiempo, más lenta.  &amp;lt;math&amp;gt;C &amp;lt;/math&amp;gt; alcanza una concentración máxima de unos 0.8 molar antes de empezar a decrecer a medida que avanza el tiempo y acercándose a un valor de '''0''' molar.  &amp;lt;math&amp;gt;D &amp;lt;/math&amp;gt; crece más lentamente que en la gráfica anterior, pero se aproxima al mismo valor, '''1''' molar.&lt;br /&gt;
Se observa que aunque hagamos la reacción  &amp;lt;math&amp;gt;C &amp;lt;/math&amp;gt; más rápida, tenemos las mismas concentraciones finales, pero tardan más tiempo en obtenerse, ya que la reacción tarda más en estabilizarse.&lt;br /&gt;
&lt;br /&gt;
&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>Joseva</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Reacciones_complejas_(Grupo_D1)&amp;diff=27735</id>
		<title>Reacciones complejas (Grupo D1)</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Reacciones_complejas_(Grupo_D1)&amp;diff=27735"/>
				<updated>2015-03-06T11:25:37Z</updated>
		
		<summary type="html">&lt;p&gt;Joseva: /* Método del Trapecio y Método de Runge-Kutta */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{ TrabajoED | Reacciones complejas (Grupo D1) | [[:Categoría:Ecuaciones Diferenciales|Ecuaciones Diferenciales]]|[[:Categoría:ED14/15|Curso 2014-15]] | Rincón Crespo, Kevin&lt;br /&gt;
&lt;br /&gt;
Rodríguez Gómez, Javier&lt;br /&gt;
&lt;br /&gt;
Sans Jiménez, Alejandro&lt;br /&gt;
&lt;br /&gt;
Sesto Muñoz, María Victoria&lt;br /&gt;
&lt;br /&gt;
Vallejo Asín, José Manuel &lt;br /&gt;
&lt;br /&gt;
Villarino Redondo, Álvaro }}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=Introducción=&lt;br /&gt;
Se considera una reacción química irreversible en una solución bien mezclada. Supondremos que la reacción ocurre para un volumen y temperatura constantes. Al inicio se encuentran dos reactivos &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;B&amp;lt;/math&amp;gt;, que van formando un producto &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; en lo que se conoce como una reacción bimolecular, es decir, una molécula de &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt; y una de &amp;lt;math&amp;gt;B&amp;lt;/math&amp;gt; producen una de &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt;.: &lt;br /&gt;
                                                                     &amp;lt;math&amp;gt;A + B → C&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Supondremos también que se satisface la ley de acción de masas, que establece que la velocidad de reacción es proporcional al producto de las concentraciones de los reactivos.&lt;br /&gt;
&lt;br /&gt;
=Concentración del reactivo &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; a lo largo del tiempo=&lt;br /&gt;
En primer lugar, suponiendo que la reacción es irreversible, es decir, que &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; no puede volver a formar &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;B&amp;lt;/math&amp;gt;, se puede expresar la situación mediante el siguiente problema de valor inicial, cuando t&amp;gt;0.:&lt;br /&gt;
   &amp;lt;math&amp;gt;&lt;br /&gt;
   \left . &lt;br /&gt;
      \begin{matrix} &lt;br /&gt;
         y'(t)={k_{1}}({a_{0}}-y(t))({b_{0}}-y(t))=0\\&lt;br /&gt;
         y(0)=0&lt;br /&gt;
      \end{matrix}&lt;br /&gt;
   \right \}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Donde &amp;lt;math&amp;gt; {a_{0}}&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;{b_{0}}&amp;lt;/math&amp;gt; representan las concentraciones iniciales de '''A''' y '''B''' respectivamente y &amp;lt;math&amp;gt;{k_{1}}&amp;lt;/math&amp;gt; es la constante de proporcionalidad que indica la ley de acción de masas. &amp;lt;math&amp;gt;y’(t)&amp;lt;/math&amp;gt; representa la velocidad de reacción, es decir, la velocidad con que se forma el producto &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; ; mientras que la solución de la ecuación diferencial, &amp;lt;math&amp;gt;y(t)&amp;lt;/math&amp;gt; , representa la concentración de &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt;, la cantidad de compuesto que se ha formado. Para comprobar que la solución de este problema de Cauchy es única, comenzamos definiendo.:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;math&amp;gt;f(t,y)={k_{1}}({a_{0}}-y(t))({b_{0}}-y(t))=0,   t&amp;gt;0 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Observamos que &amp;lt;math&amp;gt;f(t,y)&amp;lt;/math&amp;gt; es continua en el intervalo &amp;lt;math&amp;gt; I=(0,∞)∩B((0,0),r&amp;gt;0)&amp;lt;/math&amp;gt;, por lo que ya aseguramos la existencia de al menos una solución. Examinando la derivada parcial.:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\frac{∂f}{∂y}=k_1(-a_0-b_0+2y)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Se deduce que al ser un polinomio no va a haber problemas de continuidad para ninguna bola. De esta forma, podemos asegurar que existe una única solución.&lt;br /&gt;
&lt;br /&gt;
==Concentración del reactivo C a lo largo del tiempo en un proceso reversible==&lt;br /&gt;
&lt;br /&gt;
Ahora bien, ¿qué pasaría si la reacción fuese reversible? Con esto lo que queremos indicar es que además de formarse  &amp;lt;math&amp;gt;C &amp;lt;/math&amp;gt;, este también se descompone de nuevo en  &amp;lt;math&amp;gt;A &amp;lt;/math&amp;gt; y  &amp;lt;math&amp;gt;B &amp;lt;/math&amp;gt;. Por lo tanto, nos quedaría una ecuación diferencial con la siguiente forma, cuando &amp;lt;math&amp;gt;t&amp;gt;0 &amp;lt;/math&amp;gt;. :&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; y'(t)={k_{1}}({a_{0}}-y(t))({b_{0}}-y(t))-Cy(t)&amp;lt;/math&amp;gt;  &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Si nos fijamos, la modificación es sencillamente restar  &amp;lt;math&amp;gt;y(t) &amp;lt;/math&amp;gt; multiplicada por una constante, la cual refleja qué porcentaje de  &amp;lt;math&amp;gt;C &amp;lt;/math&amp;gt; se va descomponiendo a medida que se da, simultáneamente, la reacción  &amp;lt;math&amp;gt;A + B → C &amp;lt;/math&amp;gt;. Sin embargo, esta constante no puede tener cualquier valor, ya que en una reacción se cumple la conservación de masa. Por ello, a  &amp;lt;math&amp;gt;C &amp;lt;/math&amp;gt; le asociaremos el siguiente dominio::&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;C∈(0,1)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Obsérvese que  &amp;lt;math&amp;gt;C &amp;lt;/math&amp;gt; tiene que ser mayor que 0 para que sea reversible, pero al mismo tiempo inferior que 1, ya que si no se estaría descomponiendo más compuesto  &amp;lt;math&amp;gt;C &amp;lt;/math&amp;gt; del que realmente se ha formado, en otras palabras, estaría apareciendo masa de la nada.&lt;br /&gt;
&lt;br /&gt;
=Método de Euler=&lt;br /&gt;
&lt;br /&gt;
Una vez llegados a este punto, se procede a ver una interpretación gráfica de la reacción. Para ello, se refleja en la gráfica (en un intervalo de 2 segundos), cómo varían las concentraciones tanto de &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt; (&amp;lt;math&amp;gt;a_0&amp;lt;/math&amp;gt;=3 mol/L) y &amp;lt;math&amp;gt;B&amp;lt;/math&amp;gt; (&amp;lt;math&amp;gt;b_0&amp;lt;/math&amp;gt;=1 mol/L) como de &amp;lt;math&amp;gt; C&amp;lt;/math&amp;gt;, para una &amp;lt;math&amp;gt;k_1&amp;lt;/math&amp;gt;=1 mol/s. Se comienza, por el momento, aplicando el método de Euler. Posteriormente se utilizarán métodos más precisos.&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo= &lt;br /&gt;
% Euler&lt;br /&gt;
clear all&lt;br /&gt;
% datos del problema&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=2;&lt;br /&gt;
y0=0;&lt;br /&gt;
h=0.1;&lt;br /&gt;
k1=1;&lt;br /&gt;
a0=3;&lt;br /&gt;
b0=1;&lt;br /&gt;
% Definimos la variable independiente&lt;br /&gt;
t=t0:h:tN;&lt;br /&gt;
% Guardamos los valores de la solución aproximada en el vector &amp;quot;y1&amp;quot; y&lt;br /&gt;
% establecemos los vectores de concentraciones A y B&lt;br /&gt;
y1=zeros(1,length(t)); &lt;br /&gt;
y1(1)=y0;&lt;br /&gt;
a1=zeros(1,length(t));&lt;br /&gt;
a1(1)=a0;&lt;br /&gt;
b1=zeros(1,length(t));&lt;br /&gt;
b1(1)=b0;&lt;br /&gt;
% A continuación, calculamos las componentes de los vectores y1, a1 y b1&lt;br /&gt;
for i=1:length(t)-1&lt;br /&gt;
    y1(i+1)=y1(i)+h*(k1*(a0-y1(i))*(b0-y1(i)));    %Euler&lt;br /&gt;
    a1(i+1)=a0-y1(i+1); % evolución de la concentración de A&lt;br /&gt;
    b1(i+1)=b0-y1(i+1); % evolución de la concentración de B&lt;br /&gt;
end&lt;br /&gt;
%grafico &lt;br /&gt;
figure(1)&lt;br /&gt;
hold on&lt;br /&gt;
plot(t,y1,'g')&lt;br /&gt;
plot(t,a1,'r')&lt;br /&gt;
plot(t,b1,'b')&lt;br /&gt;
legend('concentración de C','concentración de A','concentración de B','location','best')&lt;br /&gt;
hold off &lt;br /&gt;
%en verde se muestra la concentración de C, en rojo la de A, y en azul la de B&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Archivo:3euler.jpeg|500px|miniaturadeimagen|center|Reacción compleja]]&lt;br /&gt;
&lt;br /&gt;
Aunque con observar los resultados ya podemos decir con casi absoluta seguridad cuáles son los límites de las concentraciones de cada reactivo &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;B&amp;lt;/math&amp;gt; y del producto &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt;, se ha diseñado un programa que, mediante diferencia de valores sucesivos de la variable &amp;lt;math&amp;gt;y(t)&amp;lt;/math&amp;gt;, nos devuelve el valor de la función cuando dicha diferencia es muy pequeña '''(se ha puesto una diferencia de 0.001)''', es decir, cuando tenemos una asíntota al tender &amp;lt;math&amp;gt;t→∞&amp;lt;/math&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
%Estudio de las asíntotas&lt;br /&gt;
t1=t0:h:10;%se aumenta la longitud de t, y se estima que se alcanzarán las asíntotas antes de t=10&lt;br /&gt;
y_=zeros(1,length(t1)); %se define un vector y_ idéntico a y1 pero con t hasta 10&lt;br /&gt;
a_=y_;&lt;br /&gt;
b_=y_;&lt;br /&gt;
y_(1)=y0;&lt;br /&gt;
a_(1)=a0;&lt;br /&gt;
b_(1)=b0;&lt;br /&gt;
for i=1:length(t1)-1&lt;br /&gt;
    y_(i+1)=y_(i)+h*(k1*(a0-y_(i))*(b0-y_(i)));&lt;br /&gt;
    diferencia=y_(i+1)-y_(i);&lt;br /&gt;
    if abs(diferencia)&amp;lt;=0.001&lt;br /&gt;
        limC=y_(i+1)&lt;br /&gt;
        break&lt;br /&gt;
    end&lt;br /&gt;
end&lt;br /&gt;
for i=1:length(t1)-1&lt;br /&gt;
    y_(i+1)=y_(i)+h*(k1*(a0-y_(i))*(b0-y_(i)));    &lt;br /&gt;
    a_(i+1)=a0-y_(i+1);&lt;br /&gt;
    diferencia2=a_(i+1)-a_(i);&lt;br /&gt;
    if abs(diferencia2)&amp;lt;=0.001&lt;br /&gt;
        limA=a_(i+1)&lt;br /&gt;
        break&lt;br /&gt;
    end&lt;br /&gt;
end&lt;br /&gt;
for i=1:length(t1)-1&lt;br /&gt;
    y_(i+1)=y_(i)+h*(k1*(a0-y_(i))*(b0-y_(i)));    &lt;br /&gt;
    b_(i+1)=b0-y_(i+1);&lt;br /&gt;
    diferencia3=b_(i+1)-b_(i);&lt;br /&gt;
    if abs(diferencia3)&amp;lt;=0.001&lt;br /&gt;
        limB=b_(i+1)&lt;br /&gt;
        break&lt;br /&gt;
    end&lt;br /&gt;
end&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
Que nos devuelve unos valores de las concentraciones para el límite de:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\lim A=2,0036≈2 mol/L&amp;lt;/math&amp;gt;:     &lt;br /&gt;
&amp;lt;math&amp;gt;\lim B=0,0036≈0mol/L&amp;lt;/math&amp;gt;:         &lt;br /&gt;
&amp;lt;math&amp;gt;\lim C=0,9964≈1mol/L&amp;lt;/math&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
Lo cual es lógico, ya que &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;B&amp;lt;/math&amp;gt; se combinan en una proporción de 1:1, luego &amp;lt;math&amp;gt;B&amp;lt;/math&amp;gt;, que tiene una concentración inicial de &amp;lt;math&amp;gt;b_0&amp;lt;/math&amp;gt;=1, será el reactivo limitante (el que desaparecerá por completo), mientras que &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt;, con &amp;lt;math&amp;gt;a_0&amp;lt;/math&amp;gt;=3, acabará con una concentración molar final igual a 2, y &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt;, del que no habia nada,alcanza una concentraccion de &amp;lt;math&amp;gt;1mol/L&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
= Método del Trapecio y Método de Runge-Kutta=&lt;br /&gt;
&lt;br /&gt;
A continuación, para obtener con más precisión las representaciones gráficas de las respectivas concentraciones, se opta por utilizar los métodos de los &amp;lt;math&amp;gt;Trapecios&amp;lt;/math&amp;gt; (segundo orden) y de &amp;lt;math&amp;gt;Runge-Kutta&amp;lt;/math&amp;gt; (cuarto orden). Además, se ha obtenido la expresión explícita de la solución de nuestro problema de valor inicial de manera analítica, mediante variables separables y fracciones simples, resultando la función real::&lt;br /&gt;
&amp;lt;math&amp;gt;y_e(t)=\frac{3e^{2t}-3}{3e^{2t}-1}&amp;lt;/math&amp;gt;&lt;br /&gt;
De manera que las concentraciones de A y de B en cada valor de t quedarían como::&lt;br /&gt;
&amp;lt;math&amp;gt;a_e(t)=a_0-y_e(t)&amp;lt;/math&amp;gt;:&lt;br /&gt;
&amp;lt;math&amp;gt;b_e (t)=b_0-y_e (t)&amp;lt;/math&amp;gt;:&lt;br /&gt;
Para los trapecios, al ser un método implícito, es necesario despejar la componente &amp;lt;math&amp;gt;y_{n+1}&amp;lt;/math&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;y_{n+1}=\frac{(1+\frac{h}{2}∙k_1∙(a_0+b_0))-\sqrt{(1+\frac{h}{2}∙k_1∙(a_0+b_0))^2 -2∙h∙k_1(y_n+\frac{h}{2}∙k_1∙(a_0-y_n )∙(b_0-y_n)+\frac{h}{2}∙k_1∙a_0∙b_0) }}{k_1∙h}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Cabe destacar que este programa parte de los datos ya establecidos en el programa de Euler para '''t0, tN, y0, a0, b0, k1 y h''':&lt;br /&gt;
{{matlab|codigo= &lt;br /&gt;
%Función real&lt;br /&gt;
ye=(3*exp(2.*t)-3)./(3*exp(2.*t)-1);&lt;br /&gt;
ae=a0-ye;&lt;br /&gt;
be=b0-ye;&lt;br /&gt;
&lt;br /&gt;
%Trapecios&lt;br /&gt;
y2=zeros(1,length(t)); &lt;br /&gt;
a2=y2;&lt;br /&gt;
b2=y2;&lt;br /&gt;
y2(1)=y0;&lt;br /&gt;
a2(1)=a0;&lt;br /&gt;
b2(1)=b0;&lt;br /&gt;
for i= 1:length(t)-1&lt;br /&gt;
    y2(i+1)=((1+0.5*h*k1*(a0+b0))-sqrt((1+0.5*h*k1*(a0+b0))^2-2*h*k1*(y2(i)+0.5*h*k1*(a0-y2(i))*(b0-y2(i))+0.5*h*k1*a0*b0)))/(k1*h);&lt;br /&gt;
a2(i+1)=a0-y2(i+1);&lt;br /&gt;
b2(i+1)=b0-y2(i+1);&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
%Runge-Kutta&lt;br /&gt;
y3=zeros(1,length(t)); &lt;br /&gt;
a3=y3;&lt;br /&gt;
b3=y3;&lt;br /&gt;
y3(1)=y0;&lt;br /&gt;
a3(1)=a0;&lt;br /&gt;
b3(1)=b0;&lt;br /&gt;
fori=1:length(t)-1 &lt;br /&gt;
    r1=k1*(a0-y3(i))*(b0-y3(i));&lt;br /&gt;
    r2=k1*(a0-y3(i)-0.5*r1*h)*(b0-y3(i)-0.5*r1*h);&lt;br /&gt;
    r3=k1*(a0-y3(i)-0.5*r2*h)*(b0-y3(i)-0.5*r2*h);&lt;br /&gt;
    r4=k1*(a0-y3(i)-r3*h)*(b0-y3(i)-r3*h);&lt;br /&gt;
y3(i+1)=y3(i)+h/6*(r1+2*r2+2*r3+r4);&lt;br /&gt;
a3(i+1)=a0-y3(i+1);&lt;br /&gt;
b3(i+1)=b0-y3(i+1);&lt;br /&gt;
end&lt;br /&gt;
%se pintan las cuatro gráficas, con la función real en verde y los puntos con asteriscos, Euler en rojo, los Trapecios en azul, y Runge-Kutta en negro&lt;br /&gt;
figure(2)&lt;br /&gt;
holdon&lt;br /&gt;
plot(t,ye,'g*-')&lt;br /&gt;
plot(t,y2)&lt;br /&gt;
plot(t,y3,'k')&lt;br /&gt;
plot(t,y1,'r')&lt;br /&gt;
legend('Función real','Trapecios', 'Runge-Kutta', 'Euler','Location','best');&lt;br /&gt;
plot(t,ae,'g*')&lt;br /&gt;
plot(t,a2)&lt;br /&gt;
plot(t,a3,'k')&lt;br /&gt;
plot(t,a1,'r')&lt;br /&gt;
plot(t,be,'g*')&lt;br /&gt;
plot(t,b2)&lt;br /&gt;
plot(t,b3,'k')&lt;br /&gt;
plot(t,b1,'r')&lt;br /&gt;
hold off&lt;br /&gt;
&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
Que proporciona el resultado que se puede observar en la primera gráfica adjunta. Como podemos ver, es prácticamente indistinguible una gráfica de la otra. Sin embargo, si la juntamos con las gráficas proporcionadas por el método de Euler, que se representa ahora en rojo, la diferencia es palpable (ver gráfica 2), lo cual evidencia la peor precisión del método de Euler.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:4trapeciokung.jpeg|500px|miniaturadeimagen|center|Reacción compleja]]&lt;br /&gt;
&lt;br /&gt;
[[Archivo:4comparacion.jpeg|500px|miniaturadeimagen|center|Gráfico 2]]&lt;br /&gt;
&lt;br /&gt;
=Reacción consecutiva=&lt;br /&gt;
&lt;br /&gt;
Consideremos ahora que se produce una reacción consecutiva de la forma.: &lt;br /&gt;
&lt;br /&gt;
                                                                   &amp;lt;math&amp;gt;A + B → k_1C → k_2D&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
De tal modo que los reactivos &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;B&amp;lt;/math&amp;gt; se combinan en la proporción 1:1 para formar compuesto &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt;, el cual, a su vez, se va descomponiendo para formar compuesto &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt;. Al igual que se ha hecho antes al analizar las otras reacciones, se considerará que se cumple la ley de acción de masas. Es decir, la velocidad con la que se forma compuesto &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; es proporcional a las concentraciones existentes de &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt; y de &amp;lt;math&amp;gt;B&amp;lt;/math&amp;gt; y del mismo modo la de formación de la sustancia &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; lo es a la concentración de &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; que se ha ido formando.&lt;br /&gt;
&lt;br /&gt;
Esta reacción consecutiva está representada por el siguiente problema de valor inicial::&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;&lt;br /&gt;
   \left . &lt;br /&gt;
      \begin{matrix} &lt;br /&gt;
         y'_1(t)={k_{1}}({a_{0}}-y_1(t))({b_{0}}-y_1(t))\\&lt;br /&gt;
         y'_2(t)={k_{2}}(y_1(t)-y_2(t))\\&lt;br /&gt;
y_1(0)=0\\y_2(0)=0&lt;br /&gt;
      \end{matrix}&lt;br /&gt;
   \right \}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
Donde &amp;lt;math&amp;gt;a_0&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;b_0&amp;lt;/math&amp;gt; representan las concentraciones iniciales de &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;B&amp;lt;/math&amp;gt; respectivamente, &amp;lt;math&amp;gt;k_1&amp;lt;/math&amp;gt; es la constante de proporcionalidad que rige la primera reacción y &amp;lt;math&amp;gt;k_2&amp;lt;/math&amp;gt; la que rige la segunda reacción o reacción consecutiva. &amp;lt;math&amp;gt;y_1’(t)&amp;lt;/math&amp;gt; e  &amp;lt;math&amp;gt;y_2’(t)&amp;lt;/math&amp;gt; representan las velocidades de las reacciones, es decir, las velocidades con que se forman los productos &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt;. &amp;lt;math&amp;gt;y_2(t)&amp;lt;/math&amp;gt; representa la concentración del producto &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; pero es importante apreciar que en este caso &amp;lt;math&amp;gt;y_1(t)&amp;lt;/math&amp;gt; no nos da el valor de la concentración de &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; directamente, sino que ésta será &amp;lt;math&amp;gt;y_1(t)&amp;lt;/math&amp;gt;- &amp;lt;math&amp;gt;y_2(t)&amp;lt;/math&amp;gt;, la cantidad que se forma en la primera reacción menos la que se emplea para formar el producto &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; en la segunda.&lt;br /&gt;
&lt;br /&gt;
Este problema se va a resolver para dos casos diferentes. Uno en el cual se considera que la segunda reacción es más rápida que la primera, lo que supone tomar un valor de la constante &amp;lt;math&amp;gt;k_2&amp;lt;/math&amp;gt;  mayor que &amp;lt;math&amp;gt;k_1&amp;lt;/math&amp;gt;. Y otro en el cual se considera que es más lenta, lo que implica que &amp;lt;math&amp;gt;k_2&amp;lt;/math&amp;gt; es menor que &amp;lt;math&amp;gt;k_1&amp;lt;/math&amp;gt;. Concretamente vamos a tomar los siguientes valores para resolver el problema numéricamente; &amp;lt;math&amp;gt;a_0&amp;lt;/math&amp;gt;=3 ,  &amp;lt;math&amp;gt;b_0&amp;lt;/math&amp;gt;=1, &amp;lt;math&amp;gt;k_1&amp;lt;/math&amp;gt;=1,  &amp;lt;math&amp;gt;k_2&amp;lt;/math&amp;gt;=5, &amp;lt;math&amp;gt;k_2&amp;lt;/math&amp;gt;=1/5, .En ambos casos se resuelve para los primeros 10 segundos.&lt;br /&gt;
&lt;br /&gt;
==La reacción D es más rápida que la reacción C==&lt;br /&gt;
CASO    &amp;lt;math&amp;gt;k_1=5  &amp;lt;/math&amp;gt;   '''h=0.1''' &lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
&lt;br /&gt;
%datos&lt;br /&gt;
y0=[0;0];&lt;br /&gt;
z0=[0;0];&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;
%matriz de las soluciones&lt;br /&gt;
y=zeros(2,length(t)); %euler&lt;br /&gt;
y(:,1)=y0;&lt;br /&gt;
 &lt;br /&gt;
z=zeros(2,length(t)); %runge-kutta&lt;br /&gt;
z(:,1)=y0;&lt;br /&gt;
 &lt;br /&gt;
for i=1:length(t)-1&lt;br /&gt;
 %euler&lt;br /&gt;
 y(:,i+1)=y(:,i)+h*[1*(3-y(1,i))*(1-y(1,i)); 5*(y(1,i)-y(2,i))];&lt;br /&gt;
 %runge-kutta&lt;br /&gt;
 K1=[1*(3-z(1,i))*(1-z(1,i)); 5*(z(1,i)-z(2,i))];&lt;br /&gt;
 K2=[1*(3-(z(1,i)+h/2*K1(1)))*(1-(z(1,i)+h/2*K1(1))); 5*((y(1,i)+h/2*K1(2))-(y(2,i)+h/2*K1(2)))];&lt;br /&gt;
 K3=[1*(3-(z(1,i)+h/2*K2(1)))*(1-(z(1,i)+h/2*K2(1))); 5*((y(1,i)+h/2*K2(2))-(y(2,i)+h/2*K2(2)))];&lt;br /&gt;
 K4=[1*(3-(z(1,i)+h*K3(1)))*(1-(z(1,i)+h*K3(1))); 5*((y(1,i)+h*K3(2))-(y(2,i)+h*K3(2)))];&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;
% se calcula la concentración de C=y1t)-y2(t)&lt;br /&gt;
Ay=y(1,:)-y(2,:); %euler&lt;br /&gt;
Az=z(1,:)-z(2,:); %runge-kutta&lt;br /&gt;
 &lt;br /&gt;
figure(1)&lt;br /&gt;
hold on&lt;br /&gt;
plot(t,Ay) %concentración de C por euler&lt;br /&gt;
plot(t,y(2,:),'r') %concentración de D por euler&lt;br /&gt;
plot(t,Az,'k') %concentración de C por runge-kutta&lt;br /&gt;
plot(t,z(2,:),'g') %concentración de D por runge-kutta&lt;br /&gt;
legend('concentración de C por euler','concentración de D por euler','concentración de C por runge-kutta','concentración de D por runge-kutta','Location','best')&lt;br /&gt;
hold off&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:graficoa.jpeg|500px|miniaturadeimagen|center|Reacción compleja]]&lt;br /&gt;
&lt;br /&gt;
Se observa que en en los primeros instantes aumentan las concentraciones de &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; aumentan sus concentraciones. Antes de que pase 1 segundo, la concentración &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; alcanza un máximo (de unos 0.3 molar) y va disminuyendo progresivamente hasta alcanzar un valor de 0 molar. La concentración &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; sigue creciendo hasta llegar a 1 molar. Una vez que tanto &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; como &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; alcanzan estos valores, se estabiliza la reacción. &lt;br /&gt;
&lt;br /&gt;
Como hemos impuesto que la reacción &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; es más rápida que &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt;, se observa que &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; empieza creciendo más rápidamente, pero como reacciona más despacio que &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; su concentración disminuye progresivamente, mientras que la de &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; aumenta.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''CASO'''  &amp;lt;math&amp;gt;k_2=5  &amp;lt;/math&amp;gt;   '''h=0.3''' &lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
&lt;br /&gt;
%datos&lt;br /&gt;
y0=[0;0];&lt;br /&gt;
z0=[0;0];&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=10;&lt;br /&gt;
h=0.3;&lt;br /&gt;
 &lt;br /&gt;
%variable independiente t&lt;br /&gt;
t=t0:h:tN;&lt;br /&gt;
 &lt;br /&gt;
%matriz de las soluciones&lt;br /&gt;
y=zeros(2,length(t)); %euler&lt;br /&gt;
y(:,1)=y0;&lt;br /&gt;
 &lt;br /&gt;
z=zeros(2,length(t)); %runge-kutta&lt;br /&gt;
z(:,1)=y0;&lt;br /&gt;
 &lt;br /&gt;
for i=1:length(t)-1&lt;br /&gt;
 %euler&lt;br /&gt;
 y(:,i+1)=y(:,i)+h*[1*(3-y(1,i))*(1-y(1,i)); 5*(y(1,i)-y(2,i))];&lt;br /&gt;
 %runge-kutta&lt;br /&gt;
 K1=[1*(3-z(1,i))*(1-z(1,i)); 5*(z(1,i)-z(2,i))];&lt;br /&gt;
 K2=[1*(3-(z(1,i)+h/2*K1(1)))*(1-(z(1,i)+h/2*K1(1))); 5*((y(1,i)+h/2*K1(2))-(y(2,i)+h/2*K1(2)))];&lt;br /&gt;
 K3=[1*(3-(z(1,i)+h/2*K2(1)))*(1-(z(1,i)+h/2*K2(1))); 5*((y(1,i)+h/2*K2(2))-(y(2,i)+h/2*K2(2)))];&lt;br /&gt;
 K4=[1*(3-(z(1,i)+h*K3(1)))*(1-(z(1,i)+h*K3(1))); 5*((y(1,i)+h*K3(2))-(y(2,i)+h*K3(2)))];&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;
% se calcula la concentración de C=y1t)-y2(t)&lt;br /&gt;
Ay=y(1,:)-y(2,:); %euler&lt;br /&gt;
Az=z(1,:)-z(2,:); %runge-kutta&lt;br /&gt;
 &lt;br /&gt;
figure(1)&lt;br /&gt;
hold on&lt;br /&gt;
plot(t,Ay) %concentración de C por euler&lt;br /&gt;
plot(t,y(2,:),'r') %concentración de D por euler&lt;br /&gt;
plot(t,Az,'k') %concentración de C por runge-kutta&lt;br /&gt;
plot(t,z(2,:),'g') %concentración de D por runge-kutta&lt;br /&gt;
legend('concentración de C por euler','concentración de D por euler','concentración de C por runge-kutta','concentración de D por runge-kutta','Location','best')&lt;br /&gt;
hold off&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:graficob.jpeg|500px|miniaturadeimagen|center|Reacción compleja]]&lt;br /&gt;
&lt;br /&gt;
Repetimos el programa pero para un tamaño de paso mayor, de '''h=0.3''', y observamos que no  es suficientemente preciso, sobre todo al principio, no se puede analizar bien lo que está pasando en la reacción.&lt;br /&gt;
&lt;br /&gt;
==La reacción D es más lenta que la reacción C==&lt;br /&gt;
&lt;br /&gt;
CASO  &amp;lt;math&amp;gt;k_1 &amp;lt;/math&amp;gt;=1,   &amp;lt;math&amp;gt;k_2 &amp;lt;/math&amp;gt;=1/5&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
&lt;br /&gt;
%datos&lt;br /&gt;
y0=[0;0];&lt;br /&gt;
z0=[0;0];&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;
%matriz de las soluciones&lt;br /&gt;
y=zeros(2,length(t)); %euler&lt;br /&gt;
y(:,1)=y0;&lt;br /&gt;
 &lt;br /&gt;
z=zeros(2,length(t)); %runge-kutta&lt;br /&gt;
z(:,1)=y0;&lt;br /&gt;
 &lt;br /&gt;
for i=1:length(t)-1&lt;br /&gt;
 %euler&lt;br /&gt;
 y(:,i+1)=y(:,i)+h*[1*(3-y(1,i))*(1-y(1,i)); 1/5*(y(1,i)-y(2,i))];&lt;br /&gt;
 %runge-kutta&lt;br /&gt;
 K1=[1*(3-z(1,i))*(1-z(1,i)); 1/5*(z(1,i)-z(2,i))];&lt;br /&gt;
 K2=[1*(3-(z(1,i)+h/2*K1(1)))*(1-(z(1,i)+h/2*K1(1))); 1/5*((y(1,i)+h/2*K1(2))-(y(2,i)+h/2*K1(2)))];&lt;br /&gt;
 K3=[1*(3-(z(1,i)+h/2*K2(1)))*(1-(z(1,i)+h/2*K2(1))); 1/5*((y(1,i)+h/2*K2(2))-(y(2,i)+h/2*K2(2)))];&lt;br /&gt;
 K4=[1*(3-(z(1,i)+h*K3(1)))*(1-(z(1,i)+h*K3(1))); 1/5*((y(1,i)+h*K3(2))-(y(2,i)+h*K3(2)))];&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;
% se calcula la concentración de C=y1t)-y2(t)&lt;br /&gt;
Ay=y(1,:)-y(2,:); %euler&lt;br /&gt;
Az=z(1,:)-z(2,:); %runge-kutta&lt;br /&gt;
 &lt;br /&gt;
figure(1)&lt;br /&gt;
hold on&lt;br /&gt;
plot(t,Ay) %concentración de C por euler&lt;br /&gt;
plot(t,y(2,:),'r') %concentración de D por euler&lt;br /&gt;
plot(t,Az,'k') %concentración de C por runge-kutta&lt;br /&gt;
plot(t,z(2,:),'g') %concentración de D por runge-kutta&lt;br /&gt;
legend('concentración de C por euler','concentración de D por euler','concentración de C por runge-kutta','concentración de D por runge-kutta','Location','best')&lt;br /&gt;
hold off&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:graficoc.jpeg|500px|miniaturadeimagen|center|Reacción compleja]]&lt;br /&gt;
&lt;br /&gt;
Si ahora imponemos que la reacción  &amp;lt;math&amp;gt;C &amp;lt;/math&amp;gt; es más rápida que  &amp;lt;math&amp;gt;D &amp;lt;/math&amp;gt;, obtenemos lo siguiente. Se parece a la gráfica que obtuvimos en el programa anterior, pero  más extendida en el tiempo, más lenta.  &amp;lt;math&amp;gt;C &amp;lt;/math&amp;gt; alcanza una concentración máxima de unos 0.8 molar antes de empezar a decrecer a medida que avanza el tiempo y acercándose a un valor de '''0''' molar.  &amp;lt;math&amp;gt;D &amp;lt;/math&amp;gt; crece más lentamente que en la gráfica anterior, pero se aproxima al mismo valor, '''1''' molar.&lt;br /&gt;
Se observa que aunque hagamos la reacción  &amp;lt;math&amp;gt;C &amp;lt;/math&amp;gt; más rápida, tenemos las mismas concentraciones finales, pero tardan más tiempo en obtenerse, ya que la reacción tarda más en estabilizarse.&lt;br /&gt;
&lt;br /&gt;
&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>Joseva</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Reacciones_complejas_(Grupo_D1)&amp;diff=27586</id>
		<title>Reacciones complejas (Grupo D1)</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Reacciones_complejas_(Grupo_D1)&amp;diff=27586"/>
				<updated>2015-03-06T10:39:40Z</updated>
		
		<summary type="html">&lt;p&gt;Joseva: /* Método del Trapecio y Método de Runge-Kutta */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{ TrabajoED | Reacciones complejas (Grupo D1) | [[:Categoría:Ecuaciones Diferenciales|Ecuaciones Diferenciales]]|[[:Categoría:ED14/15|Curso 2014-15]] | Rincón Crespo, Kevin&lt;br /&gt;
&lt;br /&gt;
Rodríguez Gómez, Javier&lt;br /&gt;
&lt;br /&gt;
Sans Jiménez, Alejandro&lt;br /&gt;
&lt;br /&gt;
Sesto Muñoz, María Victoria&lt;br /&gt;
&lt;br /&gt;
Vallejo Asín, José Manuel &lt;br /&gt;
&lt;br /&gt;
Villarino Redondo, Álvaro }}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=Introducción=&lt;br /&gt;
Se considera una reacción química irreversible en una solución bien mezclada. Supondremos que la reacción ocurre para un volumen y temperatura constantes. Al inicio se encuentran dos reactivos &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;B&amp;lt;/math&amp;gt;, que van formando un producto &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; en lo que se conoce como una reacción bimolecular, es decir, una molécula de &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt; y una de &amp;lt;math&amp;gt;B&amp;lt;/math&amp;gt; producen una de &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt;.: &lt;br /&gt;
                                                                     &amp;lt;math&amp;gt;A + B → C&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Supondremos también que se satisface la ley de acción de masas, que establece que la velocidad de reacción es proporcional al producto de las concentraciones de los reactivos.&lt;br /&gt;
&lt;br /&gt;
=Concentración del reactivo &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; a lo largo del tiempo=&lt;br /&gt;
En primer lugar, suponiendo que la reacción es irreversible, es decir, que &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; no puede volver a formar &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;B&amp;lt;/math&amp;gt;, se puede expresar la situación mediante el siguiente problema de valor inicial, cuando t&amp;gt;0.:&lt;br /&gt;
   &amp;lt;math&amp;gt;&lt;br /&gt;
   \left . &lt;br /&gt;
      \begin{matrix} &lt;br /&gt;
         y'(t)={k_{1}}({a_{0}}-y(t))({b_{0}}-y(t))=0\\&lt;br /&gt;
         y(0)=0&lt;br /&gt;
      \end{matrix}&lt;br /&gt;
   \right \}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Donde &amp;lt;math&amp;gt; {a_{0}}&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;{b_{0}}&amp;lt;/math&amp;gt; representan las concentraciones iniciales de '''A''' y '''B''' respectivamente y &amp;lt;math&amp;gt;{k_{1}}&amp;lt;/math&amp;gt; es la constante de proporcionalidad que indica la ley de acción de masas. &amp;lt;math&amp;gt;y’(t)&amp;lt;/math&amp;gt; representa la velocidad de reacción, es decir, la velocidad con que se forma el producto &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; ; mientras que la solución de la ecuación diferencial, &amp;lt;math&amp;gt;y(t)&amp;lt;/math&amp;gt; , representa la concentración de &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt;, la cantidad de compuesto que se ha formado. Para comprobar que la solución de este problema de Cauchy es única, comenzamos definiendo.:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;math&amp;gt;f(t,y)={k_{1}}({a_{0}}-y(t))({b_{0}}-y(t))=0,   t&amp;gt;0 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Observamos que &amp;lt;math&amp;gt;f(t,y)&amp;lt;/math&amp;gt; es continua en el intervalo &amp;lt;math&amp;gt; I=(0,∞)∩B((0,0),r&amp;gt;0)&amp;lt;/math&amp;gt;, por lo que ya aseguramos la existencia de al menos una solución. Examinando la derivada parcial.:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\frac{∂f}{∂y}=k_1(-a_0-b_0+2y)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Se deduce que al ser un polinomio no va a haber problemas de continuidad para ninguna bola. De esta forma, podemos asegurar que existe una única solución.&lt;br /&gt;
&lt;br /&gt;
==Concentración del reactivo C a lo largo del tiempo en un proceso reversible==&lt;br /&gt;
&lt;br /&gt;
Ahora bien, ¿qué pasaría si la reacción fuese reversible? Con esto lo que queremos indicar es que además de formarse  &amp;lt;math&amp;gt;C &amp;lt;/math&amp;gt;, este también se descompone de nuevo en  &amp;lt;math&amp;gt;A &amp;lt;/math&amp;gt; y  &amp;lt;math&amp;gt;B &amp;lt;/math&amp;gt;. Por lo tanto, nos quedaría una ecuación diferencial con la siguiente forma, cuando &amp;lt;math&amp;gt;t&amp;gt;0 &amp;lt;/math&amp;gt;. :&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; y'(t)={k_{1}}({a_{0}}-y(t))({b_{0}}-y(t))-Cy(t)&amp;lt;/math&amp;gt;  &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Si nos fijamos, la modificación es sencillamente restar  &amp;lt;math&amp;gt;y(t) &amp;lt;/math&amp;gt; multiplicada por una constante, la cual refleja qué porcentaje de  &amp;lt;math&amp;gt;C &amp;lt;/math&amp;gt; se va descomponiendo a medida que se da, simultáneamente, la reacción  &amp;lt;math&amp;gt;A + B → C &amp;lt;/math&amp;gt;. Sin embargo, esta constante no puede tener cualquier valor, ya que en una reacción se cumple la conservación de masa. Por ello, a  &amp;lt;math&amp;gt;C &amp;lt;/math&amp;gt; le asociaremos el siguiente dominio::&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;C∈(0,1)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Obsérvese que  &amp;lt;math&amp;gt;C &amp;lt;/math&amp;gt; tiene que ser mayor que 0 para que sea reversible, pero al mismo tiempo inferior que 1, ya que si no se estaría descomponiendo más compuesto  &amp;lt;math&amp;gt;C &amp;lt;/math&amp;gt; del que realmente se ha formado, en otras palabras, estaría apareciendo masa de la nada.&lt;br /&gt;
&lt;br /&gt;
=Método de Euler=&lt;br /&gt;
&lt;br /&gt;
Una vez llegados a este punto, se procede a ver una interpretación gráfica de la reacción. Para ello, se refleja en la gráfica (en un intervalo de 2 segundos), cómo varían las concentraciones tanto de &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt; (&amp;lt;math&amp;gt;a_0&amp;lt;/math&amp;gt;=3 mol/L) y &amp;lt;math&amp;gt;B&amp;lt;/math&amp;gt; (&amp;lt;math&amp;gt;b_0&amp;lt;/math&amp;gt;=1 mol/L) como de &amp;lt;math&amp;gt; C&amp;lt;/math&amp;gt;, para una &amp;lt;math&amp;gt;k_1&amp;lt;/math&amp;gt;=1 mol/s. Se comienza, por el momento, aplicando el método de Euler. Posteriormente se utilizarán métodos más precisos.&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo= &lt;br /&gt;
% Euler&lt;br /&gt;
clear all&lt;br /&gt;
% datos del problema&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=2;&lt;br /&gt;
y0=0;&lt;br /&gt;
h=0.1;&lt;br /&gt;
k1=1;&lt;br /&gt;
a0=3;&lt;br /&gt;
b0=1;&lt;br /&gt;
% Definimos la variable independiente&lt;br /&gt;
t=t0:h:tN;&lt;br /&gt;
% Guardamos los valores de la solución aproximada en el vector &amp;quot;y1&amp;quot; y&lt;br /&gt;
% establecemos los vectores de concentraciones A y B&lt;br /&gt;
y1=zeros(1,length(t)); &lt;br /&gt;
y1(1)=y0;&lt;br /&gt;
a1=zeros(1,length(t));&lt;br /&gt;
a1(1)=a0;&lt;br /&gt;
b1=zeros(1,length(t));&lt;br /&gt;
b1(1)=b0;&lt;br /&gt;
% A continuación, calculamos las componentes de los vectores y1, a1 y b1&lt;br /&gt;
for i=1:length(t)-1&lt;br /&gt;
    y1(i+1)=y1(i)+h*(k1*(a0-y1(i))*(b0-y1(i)));    %Euler&lt;br /&gt;
    a1(i+1)=a0-y1(i+1); % evolución de la concentración de A&lt;br /&gt;
    b1(i+1)=b0-y1(i+1); % evolución de la concentración de B&lt;br /&gt;
end&lt;br /&gt;
%grafico &lt;br /&gt;
figure(1)&lt;br /&gt;
hold on&lt;br /&gt;
plot(t,y1,'g')&lt;br /&gt;
plot(t,a1,'r')&lt;br /&gt;
plot(t,b1,'b')&lt;br /&gt;
legend('concentración de C','concentración de A','concentración de B','location','best')&lt;br /&gt;
hold off &lt;br /&gt;
%en verde se muestra la concentración de C, en rojo la de A, y en azul la de B&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Archivo:3euler.jpeg|500px|miniaturadeimagen|center|Reacción compleja]]&lt;br /&gt;
&lt;br /&gt;
Aunque con observar los resultados ya podemos decir con casi absoluta seguridad cuáles son los límites de las concentraciones de cada reactivo &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;B&amp;lt;/math&amp;gt; y del producto &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt;, se ha diseñado un programa que, mediante diferencia de valores sucesivos de la variable &amp;lt;math&amp;gt;y(t)&amp;lt;/math&amp;gt;, nos devuelve el valor de la función cuando dicha diferencia es muy pequeña '''(se ha puesto una diferencia de 0.001)''', es decir, cuando tenemos una asíntota al tender &amp;lt;math&amp;gt;t→∞&amp;lt;/math&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
%Estudio de las asíntotas&lt;br /&gt;
t1=t0:h:10;%se aumenta la longitud de t, y se estima que se alcanzarán las asíntotas antes de t=10&lt;br /&gt;
y_=zeros(1,length(t1)); %se define un vector y_ idéntico a y1 pero con t hasta 10&lt;br /&gt;
a_=y_;&lt;br /&gt;
b_=y_;&lt;br /&gt;
y_(1)=y0;&lt;br /&gt;
a_(1)=a0;&lt;br /&gt;
b_(1)=b0;&lt;br /&gt;
for i=1:length(t1)-1&lt;br /&gt;
    y_(i+1)=y_(i)+h*(k1*(a0-y_(i))*(b0-y_(i)));&lt;br /&gt;
    diferencia=y_(i+1)-y_(i);&lt;br /&gt;
    if abs(diferencia)&amp;lt;=0.001&lt;br /&gt;
        limC=y_(i+1)&lt;br /&gt;
        break&lt;br /&gt;
    end&lt;br /&gt;
end&lt;br /&gt;
for i=1:length(t1)-1&lt;br /&gt;
    y_(i+1)=y_(i)+h*(k1*(a0-y_(i))*(b0-y_(i)));    &lt;br /&gt;
    a_(i+1)=a0-y_(i+1);&lt;br /&gt;
    diferencia2=a_(i+1)-a_(i);&lt;br /&gt;
    if abs(diferencia2)&amp;lt;=0.001&lt;br /&gt;
        limA=a_(i+1)&lt;br /&gt;
        break&lt;br /&gt;
    end&lt;br /&gt;
end&lt;br /&gt;
for i=1:length(t1)-1&lt;br /&gt;
    y_(i+1)=y_(i)+h*(k1*(a0-y_(i))*(b0-y_(i)));    &lt;br /&gt;
    b_(i+1)=b0-y_(i+1);&lt;br /&gt;
    diferencia3=b_(i+1)-b_(i);&lt;br /&gt;
    if abs(diferencia3)&amp;lt;=0.001&lt;br /&gt;
        limB=b_(i+1)&lt;br /&gt;
        break&lt;br /&gt;
    end&lt;br /&gt;
end&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
Que nos devuelve unos valores de las concentraciones para el límite de:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\lim A=2,0036≈2 mol/L&amp;lt;/math&amp;gt;:     &lt;br /&gt;
&amp;lt;math&amp;gt;\lim B=0,0036≈0mol/L&amp;lt;/math&amp;gt;:         &lt;br /&gt;
&amp;lt;math&amp;gt;\lim C=0,9964≈1mol/L&amp;lt;/math&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
Lo cual es lógico, ya que &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;B&amp;lt;/math&amp;gt; se combinan en una proporción de 1:1, luego &amp;lt;math&amp;gt;B&amp;lt;/math&amp;gt;, que tiene una concentración inicial de &amp;lt;math&amp;gt;b_0&amp;lt;/math&amp;gt;=1, será el reactivo limitante (el que desaparecerá por completo), mientras que &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt;, con &amp;lt;math&amp;gt;a_0&amp;lt;/math&amp;gt;=3, acabará con una concentración molar final igual a 2, y &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt;, del que no habia nada,alcanza una concentraccion de &amp;lt;math&amp;gt;1mol/L&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
= Método del Trapecio y Método de Runge-Kutta=&lt;br /&gt;
&lt;br /&gt;
A continuación, para obtener con más precisión las representaciones gráficas de las respectivas concentraciones, se opta por utilizar los métodos de los &amp;lt;math&amp;gt;Trapecios&amp;lt;/math&amp;gt; (segundo orden) y de &amp;lt;math&amp;gt;Runge-Kutta&amp;lt;/math&amp;gt; (cuarto orden). editar&lt;br /&gt;
Para los trapecios, al ser un método implícito, es necesario despejar la componente &amp;lt;math&amp;gt;y_{n+1}&amp;lt;/math&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;y_{n+1}=\frac{(1+\frac{h}{2}∙k_1∙(a_0+b_0))-\sqrt{(1+\frac{h}{2}∙k_1∙(a_0+b_0))^2 -2∙h∙k_1(y_n+\frac{h}{2}∙k_1∙(a_0-y_n )∙(b_0-y_n)+\frac{h}{2}∙k_1∙a_0∙b_0) }}{k_1∙h}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Cabe destacar que este programa parte de los datos ya establecidos en el programa de Euler para '''t0, tN, y0, a0, b0, k1 y h''':&lt;br /&gt;
{{matlab|codigo= &lt;br /&gt;
%Trapecios&lt;br /&gt;
y2=zeros(1,length(t)); &lt;br /&gt;
a2=y2;&lt;br /&gt;
b2=y2;&lt;br /&gt;
y2(1)=y0;&lt;br /&gt;
a2(1)=a0;&lt;br /&gt;
b2(1)=b0;&lt;br /&gt;
for i=1:length(t)-1&lt;br /&gt;
    y2(i+1)=((1+0.5*h*k1*(a0+b0))-sqrt((1+0.5*h*k1*(a0+b0))^2-2*h*k1*(y2(i)+0.5*h*k1*(a0-y2(i))*(b0-y2(i))+0.5*h*k1*a0*b0)))/(k1*h);&lt;br /&gt;
    a2(i+1)=a0-y2(i+1);&lt;br /&gt;
    b2(i+1)=b0-y2(i+1);&lt;br /&gt;
end&lt;br /&gt;
 &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
%Runge-Kutta&lt;br /&gt;
y3=zeros(1,length(t)); &lt;br /&gt;
a3=y3;&lt;br /&gt;
b3=y3;&lt;br /&gt;
y3(1)=y0;&lt;br /&gt;
a3(1)=a0;&lt;br /&gt;
b3(1)=b0;&lt;br /&gt;
for i=1:length(t)-1 &lt;br /&gt;
    r1=k1*(a0-y3(i))*(b0-y3(i));&lt;br /&gt;
    r2=k1*(a0-y3(i)-0.5*r1*h)*(b0-y3(i)-0.5*r1*h);&lt;br /&gt;
    r3=k1*(a0-y3(i)-0.5*r2*h)*(b0-y3(i)-0.5*r2*h);&lt;br /&gt;
    r4=k1*(a0-y3(i)-r3*h)*(b0-y3(i)-r3*h);&lt;br /&gt;
    y3(i+1)=y3(i)+h/6*(r1+2*r2+2*r3+r4);&lt;br /&gt;
    a3(i+1)=a0-y3(i+1);&lt;br /&gt;
    b3(i+1)=b0-y3(i+1);&lt;br /&gt;
end&lt;br /&gt;
%se pintan las dos, en azul las soluciones de los Trapecios, y en negro las&lt;br /&gt;
%de Runge-Kutta. &lt;br /&gt;
figure(2)&lt;br /&gt;
hold on&lt;br /&gt;
plot(t,y2)&lt;br /&gt;
plot(t,a2)&lt;br /&gt;
plot(t,b2)&lt;br /&gt;
plot(t,y3,'k')&lt;br /&gt;
plot(t,a3,'k')&lt;br /&gt;
plot(t,b3,'k')&lt;br /&gt;
hold off&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
Que proporciona el resultado que se puede observar en la primera gráfica adjunta. Como podemos ver, es prácticamente indistinguible una gráfica de la otra. Sin embargo, si la juntamos con las gráficas proporcionadas por el método de Euler, que se representa ahora en rojo, la diferencia es palpable (ver gráfica 2), lo cual evidencia la peor precisión del método de Euler.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:4trapeciokung.jpeg|500px|miniaturadeimagen|center|Reacción compleja]]&lt;br /&gt;
&lt;br /&gt;
[[Archivo:4comparacion.jpeg|500px|miniaturadeimagen|center|Gráfico 2]]&lt;br /&gt;
&lt;br /&gt;
=Reacción consecutiva=&lt;br /&gt;
&lt;br /&gt;
Consideremos ahora que se produce una reacción consecutiva de la forma.: &lt;br /&gt;
&lt;br /&gt;
                                                                   &amp;lt;math&amp;gt;A + B → k_1C → k_2D&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
De tal modo que los reactivos &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;B&amp;lt;/math&amp;gt; se combinan en la proporción 1:1 para formar compuesto &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt;, el cual, a su vez, se va descomponiendo para formar compuesto &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt;. Al igual que se ha hecho antes al analizar las otras reacciones, se considerará que se cumple la ley de acción de masas. Es decir, la velocidad con la que se forma compuesto &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; es proporcional a las concentraciones existentes de &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt; y de &amp;lt;math&amp;gt;B&amp;lt;/math&amp;gt; y del mismo modo la de formación de la sustancia &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; lo es a la concentración de &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; que se ha ido formando.&lt;br /&gt;
&lt;br /&gt;
Esta reacción consecutiva está representada por el siguiente problema de valor inicial::&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;&lt;br /&gt;
   \left . &lt;br /&gt;
      \begin{matrix} &lt;br /&gt;
         y'_1(t)={k_{1}}({a_{0}}-y_1(t))({b_{0}}-y_1(t))\\&lt;br /&gt;
         y'_2(t)={k_{2}}(y_1(t)-y_2(t))\\&lt;br /&gt;
y_1(0)=0\\y_2(0)=0&lt;br /&gt;
      \end{matrix}&lt;br /&gt;
   \right \}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
Donde &amp;lt;math&amp;gt;a_0&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;b_0&amp;lt;/math&amp;gt; representan las concentraciones iniciales de &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;B&amp;lt;/math&amp;gt; respectivamente, &amp;lt;math&amp;gt;k_1&amp;lt;/math&amp;gt; es la constante de proporcionalidad que rige la primera reacción y &amp;lt;math&amp;gt;k_2&amp;lt;/math&amp;gt; la que rige la segunda reacción o reacción consecutiva. &amp;lt;math&amp;gt;y_1’(t)&amp;lt;/math&amp;gt; e  &amp;lt;math&amp;gt;y_2’(t)&amp;lt;/math&amp;gt; representan las velocidades de las reacciones, es decir, las velocidades con que se forman los productos &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt;. &amp;lt;math&amp;gt;y_2(t)&amp;lt;/math&amp;gt; representa la concentración del producto &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; pero es importante apreciar que en este caso &amp;lt;math&amp;gt;y_1(t)&amp;lt;/math&amp;gt; no nos da el valor de la concentración de &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; directamente, sino que ésta será &amp;lt;math&amp;gt;y_1(t)&amp;lt;/math&amp;gt;- &amp;lt;math&amp;gt;y_2(t)&amp;lt;/math&amp;gt;, la cantidad que se forma en la primera reacción menos la que se emplea para formar el producto &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; en la segunda.&lt;br /&gt;
&lt;br /&gt;
Este problema se va a resolver para dos casos diferentes. Uno en el cual se considera que la segunda reacción es más rápida que la primera, lo que supone tomar un valor de la constante &amp;lt;math&amp;gt;k_2&amp;lt;/math&amp;gt;  mayor que &amp;lt;math&amp;gt;k_1&amp;lt;/math&amp;gt;. Y otro en el cual se considera que es más lenta, lo que implica que &amp;lt;math&amp;gt;k_2&amp;lt;/math&amp;gt; es menor que &amp;lt;math&amp;gt;k_1&amp;lt;/math&amp;gt;. Concretamente vamos a tomar los siguientes valores para resolver el problema numéricamente; &amp;lt;math&amp;gt;a_0&amp;lt;/math&amp;gt;=3 ,  &amp;lt;math&amp;gt;b_0&amp;lt;/math&amp;gt;=1, &amp;lt;math&amp;gt;k_1&amp;lt;/math&amp;gt;=1,  &amp;lt;math&amp;gt;k_2&amp;lt;/math&amp;gt;=5, &amp;lt;math&amp;gt;k_2&amp;lt;/math&amp;gt;=1/5, .En ambos casos se resuelve para los primeros 10 segundos.&lt;br /&gt;
&lt;br /&gt;
==La reacción D es más rápida que la reacción C==&lt;br /&gt;
CASO    &amp;lt;math&amp;gt;k_1=5  &amp;lt;/math&amp;gt;   '''h=0.1''' &lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
&lt;br /&gt;
%datos&lt;br /&gt;
y0=[0;0];&lt;br /&gt;
z0=[0;0];&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;
%matriz de las soluciones&lt;br /&gt;
y=zeros(2,length(t)); %euler&lt;br /&gt;
y(:,1)=y0;&lt;br /&gt;
 &lt;br /&gt;
z=zeros(2,length(t)); %runge-kutta&lt;br /&gt;
z(:,1)=y0;&lt;br /&gt;
 &lt;br /&gt;
for i=1:length(t)-1&lt;br /&gt;
 %euler&lt;br /&gt;
 y(:,i+1)=y(:,i)+h*[1*(3-y(1,i))*(1-y(1,i)); 5*(y(1,i)-y(2,i))];&lt;br /&gt;
 %runge-kutta&lt;br /&gt;
 K1=[1*(3-z(1,i))*(1-z(1,i)); 5*(z(1,i)-z(2,i))];&lt;br /&gt;
 K2=[1*(3-(z(1,i)+h/2*K1(1)))*(1-(z(1,i)+h/2*K1(1))); 5*((y(1,i)+h/2*K1(2))-(y(2,i)+h/2*K1(2)))];&lt;br /&gt;
 K3=[1*(3-(z(1,i)+h/2*K2(1)))*(1-(z(1,i)+h/2*K2(1))); 5*((y(1,i)+h/2*K2(2))-(y(2,i)+h/2*K2(2)))];&lt;br /&gt;
 K4=[1*(3-(z(1,i)+h*K3(1)))*(1-(z(1,i)+h*K3(1))); 5*((y(1,i)+h*K3(2))-(y(2,i)+h*K3(2)))];&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;
% se calcula la concentración de C=y1t)-y2(t)&lt;br /&gt;
Ay=y(1,:)-y(2,:); %euler&lt;br /&gt;
Az=z(1,:)-z(2,:); %runge-kutta&lt;br /&gt;
 &lt;br /&gt;
figure(1)&lt;br /&gt;
hold on&lt;br /&gt;
plot(t,Ay) %concentración de C por euler&lt;br /&gt;
plot(t,y(2,:),'r') %concentración de D por euler&lt;br /&gt;
plot(t,Az,'k') %concentración de C por runge-kutta&lt;br /&gt;
plot(t,z(2,:),'g') %concentración de D por runge-kutta&lt;br /&gt;
legend('concentración de C por euler','concentración de D por euler','concentración de C por runge-kutta','concentración de D por runge-kutta','Location','best')&lt;br /&gt;
hold off&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:graficoa.jpeg|500px|miniaturadeimagen|center|Reacción compleja]]&lt;br /&gt;
&lt;br /&gt;
Se observa que en en los primeros instantes aumentan las concentraciones de &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; aumentan sus concentraciones. Antes de que pase 1 segundo, la concentración &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; alcanza un máximo (de unos 0.3 molar) y va disminuyendo progresivamente hasta alcanzar un valor de 0 molar. La concentración &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; sigue creciendo hasta llegar a 1 molar. Una vez que tanto &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; como &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; alcanzan estos valores, se estabiliza la reacción. &lt;br /&gt;
&lt;br /&gt;
Como hemos impuesto que la reacción &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; es más rápida que &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt;, se observa que &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; empieza creciendo más rápidamente, pero como reacciona más despacio que &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; su concentración disminuye progresivamente, mientras que la de &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; aumenta.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''CASO'''  &amp;lt;math&amp;gt;k_2=5  &amp;lt;/math&amp;gt;   '''h=0.3''' &lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
&lt;br /&gt;
%datos&lt;br /&gt;
y0=[0;0];&lt;br /&gt;
z0=[0;0];&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=10;&lt;br /&gt;
h=0.3;&lt;br /&gt;
 &lt;br /&gt;
%variable independiente t&lt;br /&gt;
t=t0:h:tN;&lt;br /&gt;
 &lt;br /&gt;
%matriz de las soluciones&lt;br /&gt;
y=zeros(2,length(t)); %euler&lt;br /&gt;
y(:,1)=y0;&lt;br /&gt;
 &lt;br /&gt;
z=zeros(2,length(t)); %runge-kutta&lt;br /&gt;
z(:,1)=y0;&lt;br /&gt;
 &lt;br /&gt;
for i=1:length(t)-1&lt;br /&gt;
 %euler&lt;br /&gt;
 y(:,i+1)=y(:,i)+h*[1*(3-y(1,i))*(1-y(1,i)); 5*(y(1,i)-y(2,i))];&lt;br /&gt;
 %runge-kutta&lt;br /&gt;
 K1=[1*(3-z(1,i))*(1-z(1,i)); 5*(z(1,i)-z(2,i))];&lt;br /&gt;
 K2=[1*(3-(z(1,i)+h/2*K1(1)))*(1-(z(1,i)+h/2*K1(1))); 5*((y(1,i)+h/2*K1(2))-(y(2,i)+h/2*K1(2)))];&lt;br /&gt;
 K3=[1*(3-(z(1,i)+h/2*K2(1)))*(1-(z(1,i)+h/2*K2(1))); 5*((y(1,i)+h/2*K2(2))-(y(2,i)+h/2*K2(2)))];&lt;br /&gt;
 K4=[1*(3-(z(1,i)+h*K3(1)))*(1-(z(1,i)+h*K3(1))); 5*((y(1,i)+h*K3(2))-(y(2,i)+h*K3(2)))];&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;
% se calcula la concentración de C=y1t)-y2(t)&lt;br /&gt;
Ay=y(1,:)-y(2,:); %euler&lt;br /&gt;
Az=z(1,:)-z(2,:); %runge-kutta&lt;br /&gt;
 &lt;br /&gt;
figure(1)&lt;br /&gt;
hold on&lt;br /&gt;
plot(t,Ay) %concentración de C por euler&lt;br /&gt;
plot(t,y(2,:),'r') %concentración de D por euler&lt;br /&gt;
plot(t,Az,'k') %concentración de C por runge-kutta&lt;br /&gt;
plot(t,z(2,:),'g') %concentración de D por runge-kutta&lt;br /&gt;
legend('concentración de C por euler','concentración de D por euler','concentración de C por runge-kutta','concentración de D por runge-kutta','Location','best')&lt;br /&gt;
hold off&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:graficob.jpeg|500px|miniaturadeimagen|center|Reacción compleja]]&lt;br /&gt;
&lt;br /&gt;
Repetimos el programa pero para un tamaño de paso mayor, de '''h=0.3''', y observamos que no  es suficientemente preciso, sobre todo al principio, no se puede analizar bien lo que está pasando en la reacción.&lt;br /&gt;
&lt;br /&gt;
==La reacción D es más lenta que la reacción C==&lt;br /&gt;
&lt;br /&gt;
CASO  &amp;lt;math&amp;gt;k_1 &amp;lt;/math&amp;gt;=1,   &amp;lt;math&amp;gt;k_2 &amp;lt;/math&amp;gt;=1/5&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
&lt;br /&gt;
%datos&lt;br /&gt;
y0=[0;0];&lt;br /&gt;
z0=[0;0];&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;
%matriz de las soluciones&lt;br /&gt;
y=zeros(2,length(t)); %euler&lt;br /&gt;
y(:,1)=y0;&lt;br /&gt;
 &lt;br /&gt;
z=zeros(2,length(t)); %runge-kutta&lt;br /&gt;
z(:,1)=y0;&lt;br /&gt;
 &lt;br /&gt;
for i=1:length(t)-1&lt;br /&gt;
 %euler&lt;br /&gt;
 y(:,i+1)=y(:,i)+h*[1*(3-y(1,i))*(1-y(1,i)); 1/5*(y(1,i)-y(2,i))];&lt;br /&gt;
 %runge-kutta&lt;br /&gt;
 K1=[1*(3-z(1,i))*(1-z(1,i)); 1/5*(z(1,i)-z(2,i))];&lt;br /&gt;
 K2=[1*(3-(z(1,i)+h/2*K1(1)))*(1-(z(1,i)+h/2*K1(1))); 1/5*((y(1,i)+h/2*K1(2))-(y(2,i)+h/2*K1(2)))];&lt;br /&gt;
 K3=[1*(3-(z(1,i)+h/2*K2(1)))*(1-(z(1,i)+h/2*K2(1))); 1/5*((y(1,i)+h/2*K2(2))-(y(2,i)+h/2*K2(2)))];&lt;br /&gt;
 K4=[1*(3-(z(1,i)+h*K3(1)))*(1-(z(1,i)+h*K3(1))); 1/5*((y(1,i)+h*K3(2))-(y(2,i)+h*K3(2)))];&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;
% se calcula la concentración de C=y1t)-y2(t)&lt;br /&gt;
Ay=y(1,:)-y(2,:); %euler&lt;br /&gt;
Az=z(1,:)-z(2,:); %runge-kutta&lt;br /&gt;
 &lt;br /&gt;
figure(1)&lt;br /&gt;
hold on&lt;br /&gt;
plot(t,Ay) %concentración de C por euler&lt;br /&gt;
plot(t,y(2,:),'r') %concentración de D por euler&lt;br /&gt;
plot(t,Az,'k') %concentración de C por runge-kutta&lt;br /&gt;
plot(t,z(2,:),'g') %concentración de D por runge-kutta&lt;br /&gt;
legend('concentración de C por euler','concentración de D por euler','concentración de C por runge-kutta','concentración de D por runge-kutta','Location','best')&lt;br /&gt;
hold off&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:graficoc.jpeg|500px|miniaturadeimagen|center|Reacción compleja]]&lt;br /&gt;
&lt;br /&gt;
Si ahora imponemos que la reacción  &amp;lt;math&amp;gt;C &amp;lt;/math&amp;gt; es más rápida que  &amp;lt;math&amp;gt;D &amp;lt;/math&amp;gt;, obtenemos lo siguiente. Se parece a la gráfica que obtuvimos en el programa anterior, pero  más extendida en el tiempo, más lenta.  &amp;lt;math&amp;gt;C &amp;lt;/math&amp;gt; alcanza una concentración máxima de unos 0.8 molar antes de empezar a decrecer a medida que avanza el tiempo y acercándose a un valor de '''0''' molar.  &amp;lt;math&amp;gt;D &amp;lt;/math&amp;gt; crece más lentamente que en la gráfica anterior, pero se aproxima al mismo valor, '''1''' molar.&lt;br /&gt;
Se observa que aunque hagamos la reacción  &amp;lt;math&amp;gt;C &amp;lt;/math&amp;gt; más rápida, tenemos las mismas concentraciones finales, pero tardan más tiempo en obtenerse, ya que la reacción tarda más en estabilizarse.&lt;br /&gt;
&lt;br /&gt;
&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>Joseva</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Reacciones_complejas_(Grupo_D1)&amp;diff=27573</id>
		<title>Reacciones complejas (Grupo D1)</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Reacciones_complejas_(Grupo_D1)&amp;diff=27573"/>
				<updated>2015-03-06T10:36:09Z</updated>
		
		<summary type="html">&lt;p&gt;Joseva: /* Método de Euler */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{ TrabajoED | Reacciones complejas (Grupo D1) | [[:Categoría:Ecuaciones Diferenciales|Ecuaciones Diferenciales]]|[[:Categoría:ED14/15|Curso 2014-15]] | Rincón Crespo, Kevin&lt;br /&gt;
&lt;br /&gt;
Rodríguez Gómez, Javier&lt;br /&gt;
&lt;br /&gt;
Sans Jiménez, Alejandro&lt;br /&gt;
&lt;br /&gt;
Sesto Muñoz, María Victoria&lt;br /&gt;
&lt;br /&gt;
Vallejo Asín, José Manuel &lt;br /&gt;
&lt;br /&gt;
Villarino Redondo, Álvaro }}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=Introducción=&lt;br /&gt;
Se considera una reacción química irreversible en una solución bien mezclada. Supondremos que la reacción ocurre para un volumen y temperatura constantes. Al inicio se encuentran dos reactivos &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;B&amp;lt;/math&amp;gt;, que van formando un producto &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; en lo que se conoce como una reacción bimolecular, es decir, una molécula de &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt; y una de &amp;lt;math&amp;gt;B&amp;lt;/math&amp;gt; producen una de &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt;.: &lt;br /&gt;
                                                                     &amp;lt;math&amp;gt;A + B → C&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Supondremos también que se satisface la ley de acción de masas, que establece que la velocidad de reacción es proporcional al producto de las concentraciones de los reactivos.&lt;br /&gt;
&lt;br /&gt;
=Concentración del reactivo &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; a lo largo del tiempo=&lt;br /&gt;
En primer lugar, suponiendo que la reacción es irreversible, es decir, que &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; no puede volver a formar &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;B&amp;lt;/math&amp;gt;, se puede expresar la situación mediante el siguiente problema de valor inicial, cuando t&amp;gt;0.:&lt;br /&gt;
   &amp;lt;math&amp;gt;&lt;br /&gt;
   \left . &lt;br /&gt;
      \begin{matrix} &lt;br /&gt;
         y'(t)={k_{1}}({a_{0}}-y(t))({b_{0}}-y(t))=0\\&lt;br /&gt;
         y(0)=0&lt;br /&gt;
      \end{matrix}&lt;br /&gt;
   \right \}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Donde &amp;lt;math&amp;gt; {a_{0}}&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;{b_{0}}&amp;lt;/math&amp;gt; representan las concentraciones iniciales de '''A''' y '''B''' respectivamente y &amp;lt;math&amp;gt;{k_{1}}&amp;lt;/math&amp;gt; es la constante de proporcionalidad que indica la ley de acción de masas. &amp;lt;math&amp;gt;y’(t)&amp;lt;/math&amp;gt; representa la velocidad de reacción, es decir, la velocidad con que se forma el producto &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; ; mientras que la solución de la ecuación diferencial, &amp;lt;math&amp;gt;y(t)&amp;lt;/math&amp;gt; , representa la concentración de &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt;, la cantidad de compuesto que se ha formado. Para comprobar que la solución de este problema de Cauchy es única, comenzamos definiendo.:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;math&amp;gt;f(t,y)={k_{1}}({a_{0}}-y(t))({b_{0}}-y(t))=0,   t&amp;gt;0 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Observamos que &amp;lt;math&amp;gt;f(t,y)&amp;lt;/math&amp;gt; es continua en el intervalo &amp;lt;math&amp;gt; I=(0,∞)∩B((0,0),r&amp;gt;0)&amp;lt;/math&amp;gt;, por lo que ya aseguramos la existencia de al menos una solución. Examinando la derivada parcial.:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\frac{∂f}{∂y}=k_1(-a_0-b_0+2y)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Se deduce que al ser un polinomio no va a haber problemas de continuidad para ninguna bola. De esta forma, podemos asegurar que existe una única solución.&lt;br /&gt;
&lt;br /&gt;
==Concentración del reactivo C a lo largo del tiempo en un proceso reversible==&lt;br /&gt;
&lt;br /&gt;
Ahora bien, ¿qué pasaría si la reacción fuese reversible? Con esto lo que queremos indicar es que además de formarse  &amp;lt;math&amp;gt;C &amp;lt;/math&amp;gt;, este también se descompone de nuevo en  &amp;lt;math&amp;gt;A &amp;lt;/math&amp;gt; y  &amp;lt;math&amp;gt;B &amp;lt;/math&amp;gt;. Por lo tanto, nos quedaría una ecuación diferencial con la siguiente forma, cuando &amp;lt;math&amp;gt;t&amp;gt;0 &amp;lt;/math&amp;gt;. :&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; y'(t)={k_{1}}({a_{0}}-y(t))({b_{0}}-y(t))-Cy(t)&amp;lt;/math&amp;gt;  &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Si nos fijamos, la modificación es sencillamente restar  &amp;lt;math&amp;gt;y(t) &amp;lt;/math&amp;gt; multiplicada por una constante, la cual refleja qué porcentaje de  &amp;lt;math&amp;gt;C &amp;lt;/math&amp;gt; se va descomponiendo a medida que se da, simultáneamente, la reacción  &amp;lt;math&amp;gt;A + B → C &amp;lt;/math&amp;gt;. Sin embargo, esta constante no puede tener cualquier valor, ya que en una reacción se cumple la conservación de masa. Por ello, a  &amp;lt;math&amp;gt;C &amp;lt;/math&amp;gt; le asociaremos el siguiente dominio::&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;C∈(0,1)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Obsérvese que  &amp;lt;math&amp;gt;C &amp;lt;/math&amp;gt; tiene que ser mayor que 0 para que sea reversible, pero al mismo tiempo inferior que 1, ya que si no se estaría descomponiendo más compuesto  &amp;lt;math&amp;gt;C &amp;lt;/math&amp;gt; del que realmente se ha formado, en otras palabras, estaría apareciendo masa de la nada.&lt;br /&gt;
&lt;br /&gt;
=Método de Euler=&lt;br /&gt;
&lt;br /&gt;
Una vez llegados a este punto, se procede a ver una interpretación gráfica de la reacción. Para ello, se refleja en la gráfica (en un intervalo de 2 segundos), cómo varían las concentraciones tanto de &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt; (&amp;lt;math&amp;gt;a_0&amp;lt;/math&amp;gt;=3 mol/L) y &amp;lt;math&amp;gt;B&amp;lt;/math&amp;gt; (&amp;lt;math&amp;gt;b_0&amp;lt;/math&amp;gt;=1 mol/L) como de &amp;lt;math&amp;gt; C&amp;lt;/math&amp;gt;, para una &amp;lt;math&amp;gt;k_1&amp;lt;/math&amp;gt;=1 mol/s. Se comienza, por el momento, aplicando el método de Euler. Posteriormente se utilizarán métodos más precisos.&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo= &lt;br /&gt;
% Euler&lt;br /&gt;
clear all&lt;br /&gt;
% datos del problema&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=2;&lt;br /&gt;
y0=0;&lt;br /&gt;
h=0.1;&lt;br /&gt;
k1=1;&lt;br /&gt;
a0=3;&lt;br /&gt;
b0=1;&lt;br /&gt;
% Definimos la variable independiente&lt;br /&gt;
t=t0:h:tN;&lt;br /&gt;
% Guardamos los valores de la solución aproximada en el vector &amp;quot;y1&amp;quot; y&lt;br /&gt;
% establecemos los vectores de concentraciones A y B&lt;br /&gt;
y1=zeros(1,length(t)); &lt;br /&gt;
y1(1)=y0;&lt;br /&gt;
a1=zeros(1,length(t));&lt;br /&gt;
a1(1)=a0;&lt;br /&gt;
b1=zeros(1,length(t));&lt;br /&gt;
b1(1)=b0;&lt;br /&gt;
% A continuación, calculamos las componentes de los vectores y1, a1 y b1&lt;br /&gt;
for i=1:length(t)-1&lt;br /&gt;
    y1(i+1)=y1(i)+h*(k1*(a0-y1(i))*(b0-y1(i)));    %Euler&lt;br /&gt;
    a1(i+1)=a0-y1(i+1); % evolución de la concentración de A&lt;br /&gt;
    b1(i+1)=b0-y1(i+1); % evolución de la concentración de B&lt;br /&gt;
end&lt;br /&gt;
%grafico &lt;br /&gt;
figure(1)&lt;br /&gt;
hold on&lt;br /&gt;
plot(t,y1,'g')&lt;br /&gt;
plot(t,a1,'r')&lt;br /&gt;
plot(t,b1,'b')&lt;br /&gt;
legend('concentración de C','concentración de A','concentración de B','location','best')&lt;br /&gt;
hold off &lt;br /&gt;
%en verde se muestra la concentración de C, en rojo la de A, y en azul la de B&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Archivo:3euler.jpeg|500px|miniaturadeimagen|center|Reacción compleja]]&lt;br /&gt;
&lt;br /&gt;
Aunque con observar los resultados ya podemos decir con casi absoluta seguridad cuáles son los límites de las concentraciones de cada reactivo &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;B&amp;lt;/math&amp;gt; y del producto &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt;, se ha diseñado un programa que, mediante diferencia de valores sucesivos de la variable &amp;lt;math&amp;gt;y(t)&amp;lt;/math&amp;gt;, nos devuelve el valor de la función cuando dicha diferencia es muy pequeña '''(se ha puesto una diferencia de 0.001)''', es decir, cuando tenemos una asíntota al tender &amp;lt;math&amp;gt;t→∞&amp;lt;/math&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
%Estudio de las asíntotas&lt;br /&gt;
t1=t0:h:10;%se aumenta la longitud de t, y se estima que se alcanzarán las asíntotas antes de t=10&lt;br /&gt;
y_=zeros(1,length(t1)); %se define un vector y_ idéntico a y1 pero con t hasta 10&lt;br /&gt;
a_=y_;&lt;br /&gt;
b_=y_;&lt;br /&gt;
y_(1)=y0;&lt;br /&gt;
a_(1)=a0;&lt;br /&gt;
b_(1)=b0;&lt;br /&gt;
for i=1:length(t1)-1&lt;br /&gt;
    y_(i+1)=y_(i)+h*(k1*(a0-y_(i))*(b0-y_(i)));&lt;br /&gt;
    diferencia=y_(i+1)-y_(i);&lt;br /&gt;
    if abs(diferencia)&amp;lt;=0.001&lt;br /&gt;
        limC=y_(i+1)&lt;br /&gt;
        break&lt;br /&gt;
    end&lt;br /&gt;
end&lt;br /&gt;
for i=1:length(t1)-1&lt;br /&gt;
    y_(i+1)=y_(i)+h*(k1*(a0-y_(i))*(b0-y_(i)));    &lt;br /&gt;
    a_(i+1)=a0-y_(i+1);&lt;br /&gt;
    diferencia2=a_(i+1)-a_(i);&lt;br /&gt;
    if abs(diferencia2)&amp;lt;=0.001&lt;br /&gt;
        limA=a_(i+1)&lt;br /&gt;
        break&lt;br /&gt;
    end&lt;br /&gt;
end&lt;br /&gt;
for i=1:length(t1)-1&lt;br /&gt;
    y_(i+1)=y_(i)+h*(k1*(a0-y_(i))*(b0-y_(i)));    &lt;br /&gt;
    b_(i+1)=b0-y_(i+1);&lt;br /&gt;
    diferencia3=b_(i+1)-b_(i);&lt;br /&gt;
    if abs(diferencia3)&amp;lt;=0.001&lt;br /&gt;
        limB=b_(i+1)&lt;br /&gt;
        break&lt;br /&gt;
    end&lt;br /&gt;
end&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
Que nos devuelve unos valores de las concentraciones para el límite de:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\lim A=2,0036≈2 mol/L&amp;lt;/math&amp;gt;:     &lt;br /&gt;
&amp;lt;math&amp;gt;\lim B=0,0036≈0mol/L&amp;lt;/math&amp;gt;:         &lt;br /&gt;
&amp;lt;math&amp;gt;\lim C=0,9964≈1mol/L&amp;lt;/math&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
Lo cual es lógico, ya que &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;B&amp;lt;/math&amp;gt; se combinan en una proporción de 1:1, luego &amp;lt;math&amp;gt;B&amp;lt;/math&amp;gt;, que tiene una concentración inicial de &amp;lt;math&amp;gt;b_0&amp;lt;/math&amp;gt;=1, será el reactivo limitante (el que desaparecerá por completo), mientras que &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt;, con &amp;lt;math&amp;gt;a_0&amp;lt;/math&amp;gt;=3, acabará con una concentración molar final igual a 2, y &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt;, del que no habia nada,alcanza una concentraccion de &amp;lt;math&amp;gt;1mol/L&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
= Método del Trapecio y Método de Runge-Kutta=&lt;br /&gt;
&lt;br /&gt;
A continuación, para obtener con más precisión las representaciones gráficas de las respectivas concentraciones, se opta por utilizar los métodos de los &amp;lt;math&amp;gt;Trapecios&amp;lt;/math&amp;gt; (segundo orden) y de &amp;lt;math&amp;gt;Runge-Kutta&amp;lt;/math&amp;gt; (cuarto orden). Desgraciadamente, no es posible comparar los errores cometidos por cada método con la expresión real de la concentración de C, ya que la ecuación diferencial no es de fácil resolución analítica, luego resulta imposible alcanzar una expresión explícita de la concentración en términos de nuestros datos conocidos; &amp;lt;math&amp;gt;a_0&amp;lt;/math&amp;gt;,&amp;lt;math&amp;gt;b_0&amp;lt;/math&amp;gt;,&amp;lt;math&amp;gt;k_1&amp;lt;/math&amp;gt;,&amp;lt;math&amp;gt;t (tiempo)&amp;lt;/math&amp;gt;.  Sin embargo, podemos confiar con bastante seguridad en el método sobre todo de &amp;lt;math&amp;gt;Runge-Kutta&amp;lt;/math&amp;gt;, debido a su cuarto orden. &lt;br /&gt;
&lt;br /&gt;
Para los trapecios, al ser un método implícito, es necesario despejar la componente &amp;lt;math&amp;gt;y_{n+1}&amp;lt;/math&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;y_{n+1}=\frac{(1+\frac{h}{2}∙k_1∙(a_0+b_0))-\sqrt{(1+\frac{h}{2}∙k_1∙(a_0+b_0))^2 -2∙h∙k_1(y_n+\frac{h}{2}∙k_1∙(a_0-y_n )∙(b_0-y_n)+\frac{h}{2}∙k_1∙a_0∙b_0) }}{k_1∙h}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Cabe destacar que este programa parte de los datos ya establecidos en el programa de Euler para '''t0, tN, y0, a0, b0, k1 y h''':&lt;br /&gt;
{{matlab|codigo= &lt;br /&gt;
%Trapecios&lt;br /&gt;
y2=zeros(1,length(t)); &lt;br /&gt;
a2=y2;&lt;br /&gt;
b2=y2;&lt;br /&gt;
y2(1)=y0;&lt;br /&gt;
a2(1)=a0;&lt;br /&gt;
b2(1)=b0;&lt;br /&gt;
for i=1:length(t)-1&lt;br /&gt;
    y2(i+1)=((1+0.5*h*k1*(a0+b0))-sqrt((1+0.5*h*k1*(a0+b0))^2-2*h*k1*(y2(i)+0.5*h*k1*(a0-y2(i))*(b0-y2(i))+0.5*h*k1*a0*b0)))/(k1*h);&lt;br /&gt;
    a2(i+1)=a0-y2(i+1);&lt;br /&gt;
    b2(i+1)=b0-y2(i+1);&lt;br /&gt;
end&lt;br /&gt;
 &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
%Runge-Kutta&lt;br /&gt;
y3=zeros(1,length(t)); &lt;br /&gt;
a3=y3;&lt;br /&gt;
b3=y3;&lt;br /&gt;
y3(1)=y0;&lt;br /&gt;
a3(1)=a0;&lt;br /&gt;
b3(1)=b0;&lt;br /&gt;
for i=1:length(t)-1 &lt;br /&gt;
    r1=k1*(a0-y3(i))*(b0-y3(i));&lt;br /&gt;
    r2=k1*(a0-y3(i)-0.5*r1*h)*(b0-y3(i)-0.5*r1*h);&lt;br /&gt;
    r3=k1*(a0-y3(i)-0.5*r2*h)*(b0-y3(i)-0.5*r2*h);&lt;br /&gt;
    r4=k1*(a0-y3(i)-r3*h)*(b0-y3(i)-r3*h);&lt;br /&gt;
    y3(i+1)=y3(i)+h/6*(r1+2*r2+2*r3+r4);&lt;br /&gt;
    a3(i+1)=a0-y3(i+1);&lt;br /&gt;
    b3(i+1)=b0-y3(i+1);&lt;br /&gt;
end&lt;br /&gt;
%se pintan las dos, en azul las soluciones de los Trapecios, y en negro las&lt;br /&gt;
%de Runge-Kutta. &lt;br /&gt;
figure(2)&lt;br /&gt;
hold on&lt;br /&gt;
plot(t,y2)&lt;br /&gt;
plot(t,a2)&lt;br /&gt;
plot(t,b2)&lt;br /&gt;
plot(t,y3,'k')&lt;br /&gt;
plot(t,a3,'k')&lt;br /&gt;
plot(t,b3,'k')&lt;br /&gt;
hold off&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
Que proporciona el resultado que se puede observar en la primera gráfica adjunta. Como podemos ver, es prácticamente indistinguible una gráfica de la otra. Sin embargo, si la juntamos con las gráficas proporcionadas por el método de Euler, que se representa ahora en rojo, la diferencia es palpable (ver gráfica 2), lo cual evidencia la peor precisión del método de Euler.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:4trapeciokung.jpeg|500px|miniaturadeimagen|center|Reacción compleja]]&lt;br /&gt;
&lt;br /&gt;
[[Archivo:4comparacion.jpeg|500px|miniaturadeimagen|center|Gráfico 2]]&lt;br /&gt;
&lt;br /&gt;
=Reacción consecutiva=&lt;br /&gt;
&lt;br /&gt;
Consideremos ahora que se produce una reacción consecutiva de la forma.: &lt;br /&gt;
&lt;br /&gt;
                                                                   &amp;lt;math&amp;gt;A + B → k_1C → k_2D&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
De tal modo que los reactivos &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;B&amp;lt;/math&amp;gt; se combinan en la proporción 1:1 para formar compuesto &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt;, el cual, a su vez, se va descomponiendo para formar compuesto &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt;. Al igual que se ha hecho antes al analizar las otras reacciones, se considerará que se cumple la ley de acción de masas. Es decir, la velocidad con la que se forma compuesto &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; es proporcional a las concentraciones existentes de &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt; y de &amp;lt;math&amp;gt;B&amp;lt;/math&amp;gt; y del mismo modo la de formación de la sustancia &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; lo es a la concentración de &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; que se ha ido formando.&lt;br /&gt;
&lt;br /&gt;
Esta reacción consecutiva está representada por el siguiente problema de valor inicial::&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;&lt;br /&gt;
   \left . &lt;br /&gt;
      \begin{matrix} &lt;br /&gt;
         y'_1(t)={k_{1}}({a_{0}}-y_1(t))({b_{0}}-y_1(t))\\&lt;br /&gt;
         y'_2(t)={k_{2}}(y_1(t)-y_2(t))\\&lt;br /&gt;
y_1(0)=0\\y_2(0)=0&lt;br /&gt;
      \end{matrix}&lt;br /&gt;
   \right \}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
Donde &amp;lt;math&amp;gt;a_0&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;b_0&amp;lt;/math&amp;gt; representan las concentraciones iniciales de &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;B&amp;lt;/math&amp;gt; respectivamente, &amp;lt;math&amp;gt;k_1&amp;lt;/math&amp;gt; es la constante de proporcionalidad que rige la primera reacción y &amp;lt;math&amp;gt;k_2&amp;lt;/math&amp;gt; la que rige la segunda reacción o reacción consecutiva. &amp;lt;math&amp;gt;y_1’(t)&amp;lt;/math&amp;gt; e  &amp;lt;math&amp;gt;y_2’(t)&amp;lt;/math&amp;gt; representan las velocidades de las reacciones, es decir, las velocidades con que se forman los productos &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt;. &amp;lt;math&amp;gt;y_2(t)&amp;lt;/math&amp;gt; representa la concentración del producto &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; pero es importante apreciar que en este caso &amp;lt;math&amp;gt;y_1(t)&amp;lt;/math&amp;gt; no nos da el valor de la concentración de &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; directamente, sino que ésta será &amp;lt;math&amp;gt;y_1(t)&amp;lt;/math&amp;gt;- &amp;lt;math&amp;gt;y_2(t)&amp;lt;/math&amp;gt;, la cantidad que se forma en la primera reacción menos la que se emplea para formar el producto &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; en la segunda.&lt;br /&gt;
&lt;br /&gt;
Este problema se va a resolver para dos casos diferentes. Uno en el cual se considera que la segunda reacción es más rápida que la primera, lo que supone tomar un valor de la constante &amp;lt;math&amp;gt;k_2&amp;lt;/math&amp;gt;  mayor que &amp;lt;math&amp;gt;k_1&amp;lt;/math&amp;gt;. Y otro en el cual se considera que es más lenta, lo que implica que &amp;lt;math&amp;gt;k_2&amp;lt;/math&amp;gt; es menor que &amp;lt;math&amp;gt;k_1&amp;lt;/math&amp;gt;. Concretamente vamos a tomar los siguientes valores para resolver el problema numéricamente; &amp;lt;math&amp;gt;a_0&amp;lt;/math&amp;gt;=3 ,  &amp;lt;math&amp;gt;b_0&amp;lt;/math&amp;gt;=1, &amp;lt;math&amp;gt;k_1&amp;lt;/math&amp;gt;=1,  &amp;lt;math&amp;gt;k_2&amp;lt;/math&amp;gt;=5, &amp;lt;math&amp;gt;k_2&amp;lt;/math&amp;gt;=1/5, .En ambos casos se resuelve para los primeros 10 segundos.&lt;br /&gt;
&lt;br /&gt;
==La reacción D es más rápida que la reacción C==&lt;br /&gt;
CASO    &amp;lt;math&amp;gt;k_1=5  &amp;lt;/math&amp;gt;   '''h=0.1''' &lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
&lt;br /&gt;
%datos&lt;br /&gt;
y0=[0;0];&lt;br /&gt;
z0=[0;0];&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;
%matriz de las soluciones&lt;br /&gt;
y=zeros(2,length(t)); %euler&lt;br /&gt;
y(:,1)=y0;&lt;br /&gt;
 &lt;br /&gt;
z=zeros(2,length(t)); %runge-kutta&lt;br /&gt;
z(:,1)=y0;&lt;br /&gt;
 &lt;br /&gt;
for i=1:length(t)-1&lt;br /&gt;
 %euler&lt;br /&gt;
 y(:,i+1)=y(:,i)+h*[1*(3-y(1,i))*(1-y(1,i)); 5*(y(1,i)-y(2,i))];&lt;br /&gt;
 %runge-kutta&lt;br /&gt;
 K1=[1*(3-z(1,i))*(1-z(1,i)); 5*(z(1,i)-z(2,i))];&lt;br /&gt;
 K2=[1*(3-(z(1,i)+h/2*K1(1)))*(1-(z(1,i)+h/2*K1(1))); 5*((y(1,i)+h/2*K1(2))-(y(2,i)+h/2*K1(2)))];&lt;br /&gt;
 K3=[1*(3-(z(1,i)+h/2*K2(1)))*(1-(z(1,i)+h/2*K2(1))); 5*((y(1,i)+h/2*K2(2))-(y(2,i)+h/2*K2(2)))];&lt;br /&gt;
 K4=[1*(3-(z(1,i)+h*K3(1)))*(1-(z(1,i)+h*K3(1))); 5*((y(1,i)+h*K3(2))-(y(2,i)+h*K3(2)))];&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;
% se calcula la concentración de C=y1t)-y2(t)&lt;br /&gt;
Ay=y(1,:)-y(2,:); %euler&lt;br /&gt;
Az=z(1,:)-z(2,:); %runge-kutta&lt;br /&gt;
 &lt;br /&gt;
figure(1)&lt;br /&gt;
hold on&lt;br /&gt;
plot(t,Ay) %concentración de C por euler&lt;br /&gt;
plot(t,y(2,:),'r') %concentración de D por euler&lt;br /&gt;
plot(t,Az,'k') %concentración de C por runge-kutta&lt;br /&gt;
plot(t,z(2,:),'g') %concentración de D por runge-kutta&lt;br /&gt;
legend('concentración de C por euler','concentración de D por euler','concentración de C por runge-kutta','concentración de D por runge-kutta','Location','best')&lt;br /&gt;
hold off&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:graficoa.jpeg|500px|miniaturadeimagen|center|Reacción compleja]]&lt;br /&gt;
&lt;br /&gt;
Se observa que en en los primeros instantes aumentan las concentraciones de &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; aumentan sus concentraciones. Antes de que pase 1 segundo, la concentración &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; alcanza un máximo (de unos 0.3 molar) y va disminuyendo progresivamente hasta alcanzar un valor de 0 molar. La concentración &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; sigue creciendo hasta llegar a 1 molar. Una vez que tanto &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; como &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; alcanzan estos valores, se estabiliza la reacción. &lt;br /&gt;
&lt;br /&gt;
Como hemos impuesto que la reacción &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; es más rápida que &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt;, se observa que &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; empieza creciendo más rápidamente, pero como reacciona más despacio que &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; su concentración disminuye progresivamente, mientras que la de &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; aumenta.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''CASO'''  &amp;lt;math&amp;gt;k_2=5  &amp;lt;/math&amp;gt;   '''h=0.3''' &lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
&lt;br /&gt;
%datos&lt;br /&gt;
y0=[0;0];&lt;br /&gt;
z0=[0;0];&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=10;&lt;br /&gt;
h=0.3;&lt;br /&gt;
 &lt;br /&gt;
%variable independiente t&lt;br /&gt;
t=t0:h:tN;&lt;br /&gt;
 &lt;br /&gt;
%matriz de las soluciones&lt;br /&gt;
y=zeros(2,length(t)); %euler&lt;br /&gt;
y(:,1)=y0;&lt;br /&gt;
 &lt;br /&gt;
z=zeros(2,length(t)); %runge-kutta&lt;br /&gt;
z(:,1)=y0;&lt;br /&gt;
 &lt;br /&gt;
for i=1:length(t)-1&lt;br /&gt;
 %euler&lt;br /&gt;
 y(:,i+1)=y(:,i)+h*[1*(3-y(1,i))*(1-y(1,i)); 5*(y(1,i)-y(2,i))];&lt;br /&gt;
 %runge-kutta&lt;br /&gt;
 K1=[1*(3-z(1,i))*(1-z(1,i)); 5*(z(1,i)-z(2,i))];&lt;br /&gt;
 K2=[1*(3-(z(1,i)+h/2*K1(1)))*(1-(z(1,i)+h/2*K1(1))); 5*((y(1,i)+h/2*K1(2))-(y(2,i)+h/2*K1(2)))];&lt;br /&gt;
 K3=[1*(3-(z(1,i)+h/2*K2(1)))*(1-(z(1,i)+h/2*K2(1))); 5*((y(1,i)+h/2*K2(2))-(y(2,i)+h/2*K2(2)))];&lt;br /&gt;
 K4=[1*(3-(z(1,i)+h*K3(1)))*(1-(z(1,i)+h*K3(1))); 5*((y(1,i)+h*K3(2))-(y(2,i)+h*K3(2)))];&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;
% se calcula la concentración de C=y1t)-y2(t)&lt;br /&gt;
Ay=y(1,:)-y(2,:); %euler&lt;br /&gt;
Az=z(1,:)-z(2,:); %runge-kutta&lt;br /&gt;
 &lt;br /&gt;
figure(1)&lt;br /&gt;
hold on&lt;br /&gt;
plot(t,Ay) %concentración de C por euler&lt;br /&gt;
plot(t,y(2,:),'r') %concentración de D por euler&lt;br /&gt;
plot(t,Az,'k') %concentración de C por runge-kutta&lt;br /&gt;
plot(t,z(2,:),'g') %concentración de D por runge-kutta&lt;br /&gt;
legend('concentración de C por euler','concentración de D por euler','concentración de C por runge-kutta','concentración de D por runge-kutta','Location','best')&lt;br /&gt;
hold off&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:graficob.jpeg|500px|miniaturadeimagen|center|Reacción compleja]]&lt;br /&gt;
&lt;br /&gt;
Repetimos el programa pero para un tamaño de paso mayor, de '''h=0.3''', y observamos que no  es suficientemente preciso, sobre todo al principio, no se puede analizar bien lo que está pasando en la reacción.&lt;br /&gt;
&lt;br /&gt;
==La reacción D es más lenta que la reacción C==&lt;br /&gt;
&lt;br /&gt;
CASO  &amp;lt;math&amp;gt;k_1 &amp;lt;/math&amp;gt;=1,   &amp;lt;math&amp;gt;k_2 &amp;lt;/math&amp;gt;=1/5&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
&lt;br /&gt;
%datos&lt;br /&gt;
y0=[0;0];&lt;br /&gt;
z0=[0;0];&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;
%matriz de las soluciones&lt;br /&gt;
y=zeros(2,length(t)); %euler&lt;br /&gt;
y(:,1)=y0;&lt;br /&gt;
 &lt;br /&gt;
z=zeros(2,length(t)); %runge-kutta&lt;br /&gt;
z(:,1)=y0;&lt;br /&gt;
 &lt;br /&gt;
for i=1:length(t)-1&lt;br /&gt;
 %euler&lt;br /&gt;
 y(:,i+1)=y(:,i)+h*[1*(3-y(1,i))*(1-y(1,i)); 1/5*(y(1,i)-y(2,i))];&lt;br /&gt;
 %runge-kutta&lt;br /&gt;
 K1=[1*(3-z(1,i))*(1-z(1,i)); 1/5*(z(1,i)-z(2,i))];&lt;br /&gt;
 K2=[1*(3-(z(1,i)+h/2*K1(1)))*(1-(z(1,i)+h/2*K1(1))); 1/5*((y(1,i)+h/2*K1(2))-(y(2,i)+h/2*K1(2)))];&lt;br /&gt;
 K3=[1*(3-(z(1,i)+h/2*K2(1)))*(1-(z(1,i)+h/2*K2(1))); 1/5*((y(1,i)+h/2*K2(2))-(y(2,i)+h/2*K2(2)))];&lt;br /&gt;
 K4=[1*(3-(z(1,i)+h*K3(1)))*(1-(z(1,i)+h*K3(1))); 1/5*((y(1,i)+h*K3(2))-(y(2,i)+h*K3(2)))];&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;
% se calcula la concentración de C=y1t)-y2(t)&lt;br /&gt;
Ay=y(1,:)-y(2,:); %euler&lt;br /&gt;
Az=z(1,:)-z(2,:); %runge-kutta&lt;br /&gt;
 &lt;br /&gt;
figure(1)&lt;br /&gt;
hold on&lt;br /&gt;
plot(t,Ay) %concentración de C por euler&lt;br /&gt;
plot(t,y(2,:),'r') %concentración de D por euler&lt;br /&gt;
plot(t,Az,'k') %concentración de C por runge-kutta&lt;br /&gt;
plot(t,z(2,:),'g') %concentración de D por runge-kutta&lt;br /&gt;
legend('concentración de C por euler','concentración de D por euler','concentración de C por runge-kutta','concentración de D por runge-kutta','Location','best')&lt;br /&gt;
hold off&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:graficoc.jpeg|500px|miniaturadeimagen|center|Reacción compleja]]&lt;br /&gt;
&lt;br /&gt;
Si ahora imponemos que la reacción  &amp;lt;math&amp;gt;C &amp;lt;/math&amp;gt; es más rápida que  &amp;lt;math&amp;gt;D &amp;lt;/math&amp;gt;, obtenemos lo siguiente. Se parece a la gráfica que obtuvimos en el programa anterior, pero  más extendida en el tiempo, más lenta.  &amp;lt;math&amp;gt;C &amp;lt;/math&amp;gt; alcanza una concentración máxima de unos 0.8 molar antes de empezar a decrecer a medida que avanza el tiempo y acercándose a un valor de '''0''' molar.  &amp;lt;math&amp;gt;D &amp;lt;/math&amp;gt; crece más lentamente que en la gráfica anterior, pero se aproxima al mismo valor, '''1''' molar.&lt;br /&gt;
Se observa que aunque hagamos la reacción  &amp;lt;math&amp;gt;C &amp;lt;/math&amp;gt; más rápida, tenemos las mismas concentraciones finales, pero tardan más tiempo en obtenerse, ya que la reacción tarda más en estabilizarse.&lt;br /&gt;
&lt;br /&gt;
&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>Joseva</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Reacciones_complejas_(Grupo_D1)&amp;diff=27571</id>
		<title>Reacciones complejas (Grupo D1)</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Reacciones_complejas_(Grupo_D1)&amp;diff=27571"/>
				<updated>2015-03-06T10:35:04Z</updated>
		
		<summary type="html">&lt;p&gt;Joseva: /* Método de Euler */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{ TrabajoED | Reacciones complejas (Grupo D1) | [[:Categoría:Ecuaciones Diferenciales|Ecuaciones Diferenciales]]|[[:Categoría:ED14/15|Curso 2014-15]] | Rincón Crespo, Kevin&lt;br /&gt;
&lt;br /&gt;
Rodríguez Gómez, Javier&lt;br /&gt;
&lt;br /&gt;
Sans Jiménez, Alejandro&lt;br /&gt;
&lt;br /&gt;
Sesto Muñoz, María Victoria&lt;br /&gt;
&lt;br /&gt;
Vallejo Asín, José Manuel &lt;br /&gt;
&lt;br /&gt;
Villarino Redondo, Álvaro }}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=Introducción=&lt;br /&gt;
Se considera una reacción química irreversible en una solución bien mezclada. Supondremos que la reacción ocurre para un volumen y temperatura constantes. Al inicio se encuentran dos reactivos &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;B&amp;lt;/math&amp;gt;, que van formando un producto &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; en lo que se conoce como una reacción bimolecular, es decir, una molécula de &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt; y una de &amp;lt;math&amp;gt;B&amp;lt;/math&amp;gt; producen una de &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt;.: &lt;br /&gt;
                                                                     &amp;lt;math&amp;gt;A + B → C&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Supondremos también que se satisface la ley de acción de masas, que establece que la velocidad de reacción es proporcional al producto de las concentraciones de los reactivos.&lt;br /&gt;
&lt;br /&gt;
=Concentración del reactivo &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; a lo largo del tiempo=&lt;br /&gt;
En primer lugar, suponiendo que la reacción es irreversible, es decir, que &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; no puede volver a formar &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;B&amp;lt;/math&amp;gt;, se puede expresar la situación mediante el siguiente problema de valor inicial, cuando t&amp;gt;0.:&lt;br /&gt;
   &amp;lt;math&amp;gt;&lt;br /&gt;
   \left . &lt;br /&gt;
      \begin{matrix} &lt;br /&gt;
         y'(t)={k_{1}}({a_{0}}-y(t))({b_{0}}-y(t))=0\\&lt;br /&gt;
         y(0)=0&lt;br /&gt;
      \end{matrix}&lt;br /&gt;
   \right \}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Donde &amp;lt;math&amp;gt; {a_{0}}&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;{b_{0}}&amp;lt;/math&amp;gt; representan las concentraciones iniciales de '''A''' y '''B''' respectivamente y &amp;lt;math&amp;gt;{k_{1}}&amp;lt;/math&amp;gt; es la constante de proporcionalidad que indica la ley de acción de masas. &amp;lt;math&amp;gt;y’(t)&amp;lt;/math&amp;gt; representa la velocidad de reacción, es decir, la velocidad con que se forma el producto &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; ; mientras que la solución de la ecuación diferencial, &amp;lt;math&amp;gt;y(t)&amp;lt;/math&amp;gt; , representa la concentración de &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt;, la cantidad de compuesto que se ha formado. Para comprobar que la solución de este problema de Cauchy es única, comenzamos definiendo.:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;math&amp;gt;f(t,y)={k_{1}}({a_{0}}-y(t))({b_{0}}-y(t))=0,   t&amp;gt;0 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Observamos que &amp;lt;math&amp;gt;f(t,y)&amp;lt;/math&amp;gt; es continua en el intervalo &amp;lt;math&amp;gt; I=(0,∞)∩B((0,0),r&amp;gt;0)&amp;lt;/math&amp;gt;, por lo que ya aseguramos la existencia de al menos una solución. Examinando la derivada parcial.:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\frac{∂f}{∂y}=k_1(-a_0-b_0+2y)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Se deduce que al ser un polinomio no va a haber problemas de continuidad para ninguna bola. De esta forma, podemos asegurar que existe una única solución.&lt;br /&gt;
&lt;br /&gt;
==Concentración del reactivo C a lo largo del tiempo en un proceso reversible==&lt;br /&gt;
&lt;br /&gt;
Ahora bien, ¿qué pasaría si la reacción fuese reversible? Con esto lo que queremos indicar es que además de formarse  &amp;lt;math&amp;gt;C &amp;lt;/math&amp;gt;, este también se descompone de nuevo en  &amp;lt;math&amp;gt;A &amp;lt;/math&amp;gt; y  &amp;lt;math&amp;gt;B &amp;lt;/math&amp;gt;. Por lo tanto, nos quedaría una ecuación diferencial con la siguiente forma, cuando &amp;lt;math&amp;gt;t&amp;gt;0 &amp;lt;/math&amp;gt;. :&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; y'(t)={k_{1}}({a_{0}}-y(t))({b_{0}}-y(t))-Cy(t)&amp;lt;/math&amp;gt;  &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Si nos fijamos, la modificación es sencillamente restar  &amp;lt;math&amp;gt;y(t) &amp;lt;/math&amp;gt; multiplicada por una constante, la cual refleja qué porcentaje de  &amp;lt;math&amp;gt;C &amp;lt;/math&amp;gt; se va descomponiendo a medida que se da, simultáneamente, la reacción  &amp;lt;math&amp;gt;A + B → C &amp;lt;/math&amp;gt;. Sin embargo, esta constante no puede tener cualquier valor, ya que en una reacción se cumple la conservación de masa. Por ello, a  &amp;lt;math&amp;gt;C &amp;lt;/math&amp;gt; le asociaremos el siguiente dominio::&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;C∈(0,1)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Obsérvese que  &amp;lt;math&amp;gt;C &amp;lt;/math&amp;gt; tiene que ser mayor que 0 para que sea reversible, pero al mismo tiempo inferior que 1, ya que si no se estaría descomponiendo más compuesto  &amp;lt;math&amp;gt;C &amp;lt;/math&amp;gt; del que realmente se ha formado, en otras palabras, estaría apareciendo masa de la nada.&lt;br /&gt;
&lt;br /&gt;
=Método de Euler=&lt;br /&gt;
&lt;br /&gt;
Una vez llegados a este punto, se procede a ver una interpretación gráfica de la reacción. Para ello, se refleja en la gráfica (en un intervalo de 2 segundos), cómo varían las concentraciones tanto de &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt; (&amp;lt;math&amp;gt;a_0&amp;lt;/math&amp;gt;=3 mol/L) y &amp;lt;math&amp;gt;B&amp;lt;/math&amp;gt; (&amp;lt;math&amp;gt;b_0&amp;lt;/math&amp;gt;=1 mol/L) como de &amp;lt;math&amp;gt; C&amp;lt;/math&amp;gt;, para una &amp;lt;math&amp;gt;k_1&amp;lt;/math&amp;gt;=1 mol/s. Se comienza, por el momento, aplicando el método de Euler. Posteriormente se utilizarán métodos más precisos.&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo= &lt;br /&gt;
% Euler&lt;br /&gt;
clear all&lt;br /&gt;
% datos del problema&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=2;&lt;br /&gt;
y0=0;&lt;br /&gt;
h=0.1;&lt;br /&gt;
k1=1;&lt;br /&gt;
a0=3;&lt;br /&gt;
b0=1;&lt;br /&gt;
% Definimos la variable independiente&lt;br /&gt;
t=t0:h:tN;&lt;br /&gt;
% Guardamos los valores de la solución aproximada en el vector &amp;quot;y1&amp;quot; y&lt;br /&gt;
% establecemos los vectores de concentraciones A y B&lt;br /&gt;
y1=zeros(1,length(t)); &lt;br /&gt;
y1(1)=y0;&lt;br /&gt;
a1=zeros(1,length(t));&lt;br /&gt;
a1(1)=a0;&lt;br /&gt;
b1=zeros(1,length(t));&lt;br /&gt;
b1(1)=b0;&lt;br /&gt;
% A continuación, calculamos las componentes de los vectores y1, a1 y b1&lt;br /&gt;
for i=1:length(t)-1&lt;br /&gt;
    y1(i+1)=y1(i)+h*(k1*(a0-y1(i))*(b0-y1(i)));    %Euler&lt;br /&gt;
    a1(i+1)=a0-y1(i+1); % evolución de la concentración de A&lt;br /&gt;
    b1(i+1)=b0-y1(i+1); % evolución de la concentración de B&lt;br /&gt;
end&lt;br /&gt;
%grafico &lt;br /&gt;
figure(1)&lt;br /&gt;
hold on&lt;br /&gt;
plot(t,y1,'g')&lt;br /&gt;
plot(t,a1,'r')&lt;br /&gt;
plot(t,b1,'b')&lt;br /&gt;
legend('concentración de C','concentración de A','concentración de B','location','best')&lt;br /&gt;
hold off &lt;br /&gt;
%en verde se muestra la concentración de C, en rojo la de A, y en azul la de B&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Archivo:3euler.jpeg|500px|miniaturadeimagen|center|Reacción compleja]]&lt;br /&gt;
&lt;br /&gt;
Aunque con observar los resultados ya podemos decir con casi absoluta seguridad cuáles son los límites de las concentraciones de cada reactivo &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;B&amp;lt;/math&amp;gt; y del producto &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt;, se ha diseñado un programa que, mediante diferencia de valores sucesivos de la variable &amp;lt;math&amp;gt;y(t)&amp;lt;/math&amp;gt;, nos devuelve el valor de la función cuando dicha diferencia es muy pequeña '''(se ha puesto una diferencia de 0.001)''', es decir, cuando tenemos una asíntota al tender &amp;lt;math&amp;gt;t→∞&amp;lt;/math&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
%Estudio de las asíntotas&lt;br /&gt;
t1=t0:h:10;%se aumenta la longitud de t, y se estima que se alcanzarán las asíntotas antes de t=10&lt;br /&gt;
y_=zeros(1,length(t1)); %se define un vector y_ idéntico a y1 pero con t hasta 10&lt;br /&gt;
a_=y_;&lt;br /&gt;
b_=y_;&lt;br /&gt;
y_(1)=y0;&lt;br /&gt;
a_(1)=a0;&lt;br /&gt;
b_(1)=b0;&lt;br /&gt;
for i=1:length(t1)-1&lt;br /&gt;
    y_(i+1)=y_(i)+h*(k1*(a0-y_(i))*(b0-y_(i)));&lt;br /&gt;
    diferencia=y_(i+1)-y_(i);&lt;br /&gt;
    if abs(diferencia)&amp;lt;=0.001&lt;br /&gt;
        limiteC=y_(i+1)&lt;br /&gt;
        break&lt;br /&gt;
    end&lt;br /&gt;
end&lt;br /&gt;
for i=1:length(t1)-1&lt;br /&gt;
    y_(i+1)=y_(i)+h*(k1*(a0-y_(i))*(b0-y_(i)));    &lt;br /&gt;
    a_(i+1)=a0-y_(i+1);&lt;br /&gt;
    diferencia2=a_(i+1)-a_(i);&lt;br /&gt;
    if abs(diferencia2)&amp;lt;=0.001&lt;br /&gt;
        limiteA=a_(i+1)&lt;br /&gt;
        break&lt;br /&gt;
    end&lt;br /&gt;
end&lt;br /&gt;
for i=1:length(t1)-1&lt;br /&gt;
    y_(i+1)=y_(i)+h*(k1*(a0-y_(i))*(b0-y_(i)));    &lt;br /&gt;
    b_(i+1)=b0-y_(i+1);&lt;br /&gt;
    diferencia3=b_(i+1)-b_(i);&lt;br /&gt;
    if abs(diferencia3)&amp;lt;=0.001&lt;br /&gt;
        limiteB=b_(i+1)&lt;br /&gt;
        break&lt;br /&gt;
    end&lt;br /&gt;
end&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
Que nos devuelve unos valores de las concentraciones para el límite de:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\lim A=2,0036≈2 mol/L&amp;lt;/math&amp;gt;:     &lt;br /&gt;
&amp;lt;math&amp;gt;\lim B=0,0036≈0mol/L&amp;lt;/math&amp;gt;:         &lt;br /&gt;
&amp;lt;math&amp;gt;\lim C=0,9964≈1mol/L&amp;lt;/math&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
Lo cual es lógico, ya que &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;B&amp;lt;/math&amp;gt; se combinan en una proporción de 1:1, luego &amp;lt;math&amp;gt;B&amp;lt;/math&amp;gt;, que tiene una concentración inicial de &amp;lt;math&amp;gt;b_0&amp;lt;/math&amp;gt;=1, será el reactivo limitante (el que desaparecerá por completo), mientras que &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt;, con &amp;lt;math&amp;gt;a_0&amp;lt;/math&amp;gt;=3, acabará con una concentración molar final igual a 2, y &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt;, del que no habia nada,alcanza una concentraccion de &amp;lt;math&amp;gt;1mol/L&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
= Método del Trapecio y Método de Runge-Kutta=&lt;br /&gt;
&lt;br /&gt;
A continuación, para obtener con más precisión las representaciones gráficas de las respectivas concentraciones, se opta por utilizar los métodos de los &amp;lt;math&amp;gt;Trapecios&amp;lt;/math&amp;gt; (segundo orden) y de &amp;lt;math&amp;gt;Runge-Kutta&amp;lt;/math&amp;gt; (cuarto orden). Desgraciadamente, no es posible comparar los errores cometidos por cada método con la expresión real de la concentración de C, ya que la ecuación diferencial no es de fácil resolución analítica, luego resulta imposible alcanzar una expresión explícita de la concentración en términos de nuestros datos conocidos; &amp;lt;math&amp;gt;a_0&amp;lt;/math&amp;gt;,&amp;lt;math&amp;gt;b_0&amp;lt;/math&amp;gt;,&amp;lt;math&amp;gt;k_1&amp;lt;/math&amp;gt;,&amp;lt;math&amp;gt;t (tiempo)&amp;lt;/math&amp;gt;.  Sin embargo, podemos confiar con bastante seguridad en el método sobre todo de &amp;lt;math&amp;gt;Runge-Kutta&amp;lt;/math&amp;gt;, debido a su cuarto orden. &lt;br /&gt;
&lt;br /&gt;
Para los trapecios, al ser un método implícito, es necesario despejar la componente &amp;lt;math&amp;gt;y_{n+1}&amp;lt;/math&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;y_{n+1}=\frac{(1+\frac{h}{2}∙k_1∙(a_0+b_0))-\sqrt{(1+\frac{h}{2}∙k_1∙(a_0+b_0))^2 -2∙h∙k_1(y_n+\frac{h}{2}∙k_1∙(a_0-y_n )∙(b_0-y_n)+\frac{h}{2}∙k_1∙a_0∙b_0) }}{k_1∙h}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Cabe destacar que este programa parte de los datos ya establecidos en el programa de Euler para '''t0, tN, y0, a0, b0, k1 y h''':&lt;br /&gt;
{{matlab|codigo= &lt;br /&gt;
%Trapecios&lt;br /&gt;
y2=zeros(1,length(t)); &lt;br /&gt;
a2=y2;&lt;br /&gt;
b2=y2;&lt;br /&gt;
y2(1)=y0;&lt;br /&gt;
a2(1)=a0;&lt;br /&gt;
b2(1)=b0;&lt;br /&gt;
for i=1:length(t)-1&lt;br /&gt;
    y2(i+1)=((1+0.5*h*k1*(a0+b0))-sqrt((1+0.5*h*k1*(a0+b0))^2-2*h*k1*(y2(i)+0.5*h*k1*(a0-y2(i))*(b0-y2(i))+0.5*h*k1*a0*b0)))/(k1*h);&lt;br /&gt;
    a2(i+1)=a0-y2(i+1);&lt;br /&gt;
    b2(i+1)=b0-y2(i+1);&lt;br /&gt;
end&lt;br /&gt;
 &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
%Runge-Kutta&lt;br /&gt;
y3=zeros(1,length(t)); &lt;br /&gt;
a3=y3;&lt;br /&gt;
b3=y3;&lt;br /&gt;
y3(1)=y0;&lt;br /&gt;
a3(1)=a0;&lt;br /&gt;
b3(1)=b0;&lt;br /&gt;
for i=1:length(t)-1 &lt;br /&gt;
    r1=k1*(a0-y3(i))*(b0-y3(i));&lt;br /&gt;
    r2=k1*(a0-y3(i)-0.5*r1*h)*(b0-y3(i)-0.5*r1*h);&lt;br /&gt;
    r3=k1*(a0-y3(i)-0.5*r2*h)*(b0-y3(i)-0.5*r2*h);&lt;br /&gt;
    r4=k1*(a0-y3(i)-r3*h)*(b0-y3(i)-r3*h);&lt;br /&gt;
    y3(i+1)=y3(i)+h/6*(r1+2*r2+2*r3+r4);&lt;br /&gt;
    a3(i+1)=a0-y3(i+1);&lt;br /&gt;
    b3(i+1)=b0-y3(i+1);&lt;br /&gt;
end&lt;br /&gt;
%se pintan las dos, en azul las soluciones de los Trapecios, y en negro las&lt;br /&gt;
%de Runge-Kutta. &lt;br /&gt;
figure(2)&lt;br /&gt;
hold on&lt;br /&gt;
plot(t,y2)&lt;br /&gt;
plot(t,a2)&lt;br /&gt;
plot(t,b2)&lt;br /&gt;
plot(t,y3,'k')&lt;br /&gt;
plot(t,a3,'k')&lt;br /&gt;
plot(t,b3,'k')&lt;br /&gt;
hold off&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
Que proporciona el resultado que se puede observar en la primera gráfica adjunta. Como podemos ver, es prácticamente indistinguible una gráfica de la otra. Sin embargo, si la juntamos con las gráficas proporcionadas por el método de Euler, que se representa ahora en rojo, la diferencia es palpable (ver gráfica 2), lo cual evidencia la peor precisión del método de Euler.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:4trapeciokung.jpeg|500px|miniaturadeimagen|center|Reacción compleja]]&lt;br /&gt;
&lt;br /&gt;
[[Archivo:4comparacion.jpeg|500px|miniaturadeimagen|center|Gráfico 2]]&lt;br /&gt;
&lt;br /&gt;
=Reacción consecutiva=&lt;br /&gt;
&lt;br /&gt;
Consideremos ahora que se produce una reacción consecutiva de la forma.: &lt;br /&gt;
&lt;br /&gt;
                                                                   &amp;lt;math&amp;gt;A + B → k_1C → k_2D&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
De tal modo que los reactivos &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;B&amp;lt;/math&amp;gt; se combinan en la proporción 1:1 para formar compuesto &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt;, el cual, a su vez, se va descomponiendo para formar compuesto &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt;. Al igual que se ha hecho antes al analizar las otras reacciones, se considerará que se cumple la ley de acción de masas. Es decir, la velocidad con la que se forma compuesto &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; es proporcional a las concentraciones existentes de &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt; y de &amp;lt;math&amp;gt;B&amp;lt;/math&amp;gt; y del mismo modo la de formación de la sustancia &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; lo es a la concentración de &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; que se ha ido formando.&lt;br /&gt;
&lt;br /&gt;
Esta reacción consecutiva está representada por el siguiente problema de valor inicial::&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;&lt;br /&gt;
   \left . &lt;br /&gt;
      \begin{matrix} &lt;br /&gt;
         y'_1(t)={k_{1}}({a_{0}}-y_1(t))({b_{0}}-y_1(t))\\&lt;br /&gt;
         y'_2(t)={k_{2}}(y_1(t)-y_2(t))\\&lt;br /&gt;
y_1(0)=0\\y_2(0)=0&lt;br /&gt;
      \end{matrix}&lt;br /&gt;
   \right \}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
Donde &amp;lt;math&amp;gt;a_0&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;b_0&amp;lt;/math&amp;gt; representan las concentraciones iniciales de &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;B&amp;lt;/math&amp;gt; respectivamente, &amp;lt;math&amp;gt;k_1&amp;lt;/math&amp;gt; es la constante de proporcionalidad que rige la primera reacción y &amp;lt;math&amp;gt;k_2&amp;lt;/math&amp;gt; la que rige la segunda reacción o reacción consecutiva. &amp;lt;math&amp;gt;y_1’(t)&amp;lt;/math&amp;gt; e  &amp;lt;math&amp;gt;y_2’(t)&amp;lt;/math&amp;gt; representan las velocidades de las reacciones, es decir, las velocidades con que se forman los productos &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt;. &amp;lt;math&amp;gt;y_2(t)&amp;lt;/math&amp;gt; representa la concentración del producto &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; pero es importante apreciar que en este caso &amp;lt;math&amp;gt;y_1(t)&amp;lt;/math&amp;gt; no nos da el valor de la concentración de &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; directamente, sino que ésta será &amp;lt;math&amp;gt;y_1(t)&amp;lt;/math&amp;gt;- &amp;lt;math&amp;gt;y_2(t)&amp;lt;/math&amp;gt;, la cantidad que se forma en la primera reacción menos la que se emplea para formar el producto &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; en la segunda.&lt;br /&gt;
&lt;br /&gt;
Este problema se va a resolver para dos casos diferentes. Uno en el cual se considera que la segunda reacción es más rápida que la primera, lo que supone tomar un valor de la constante &amp;lt;math&amp;gt;k_2&amp;lt;/math&amp;gt;  mayor que &amp;lt;math&amp;gt;k_1&amp;lt;/math&amp;gt;. Y otro en el cual se considera que es más lenta, lo que implica que &amp;lt;math&amp;gt;k_2&amp;lt;/math&amp;gt; es menor que &amp;lt;math&amp;gt;k_1&amp;lt;/math&amp;gt;. Concretamente vamos a tomar los siguientes valores para resolver el problema numéricamente; &amp;lt;math&amp;gt;a_0&amp;lt;/math&amp;gt;=3 ,  &amp;lt;math&amp;gt;b_0&amp;lt;/math&amp;gt;=1, &amp;lt;math&amp;gt;k_1&amp;lt;/math&amp;gt;=1,  &amp;lt;math&amp;gt;k_2&amp;lt;/math&amp;gt;=5, &amp;lt;math&amp;gt;k_2&amp;lt;/math&amp;gt;=1/5, .En ambos casos se resuelve para los primeros 10 segundos.&lt;br /&gt;
&lt;br /&gt;
==La reacción D es más rápida que la reacción C==&lt;br /&gt;
CASO    &amp;lt;math&amp;gt;k_1=5  &amp;lt;/math&amp;gt;   '''h=0.1''' &lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
&lt;br /&gt;
%datos&lt;br /&gt;
y0=[0;0];&lt;br /&gt;
z0=[0;0];&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;
%matriz de las soluciones&lt;br /&gt;
y=zeros(2,length(t)); %euler&lt;br /&gt;
y(:,1)=y0;&lt;br /&gt;
 &lt;br /&gt;
z=zeros(2,length(t)); %runge-kutta&lt;br /&gt;
z(:,1)=y0;&lt;br /&gt;
 &lt;br /&gt;
for i=1:length(t)-1&lt;br /&gt;
 %euler&lt;br /&gt;
 y(:,i+1)=y(:,i)+h*[1*(3-y(1,i))*(1-y(1,i)); 5*(y(1,i)-y(2,i))];&lt;br /&gt;
 %runge-kutta&lt;br /&gt;
 K1=[1*(3-z(1,i))*(1-z(1,i)); 5*(z(1,i)-z(2,i))];&lt;br /&gt;
 K2=[1*(3-(z(1,i)+h/2*K1(1)))*(1-(z(1,i)+h/2*K1(1))); 5*((y(1,i)+h/2*K1(2))-(y(2,i)+h/2*K1(2)))];&lt;br /&gt;
 K3=[1*(3-(z(1,i)+h/2*K2(1)))*(1-(z(1,i)+h/2*K2(1))); 5*((y(1,i)+h/2*K2(2))-(y(2,i)+h/2*K2(2)))];&lt;br /&gt;
 K4=[1*(3-(z(1,i)+h*K3(1)))*(1-(z(1,i)+h*K3(1))); 5*((y(1,i)+h*K3(2))-(y(2,i)+h*K3(2)))];&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;
% se calcula la concentración de C=y1t)-y2(t)&lt;br /&gt;
Ay=y(1,:)-y(2,:); %euler&lt;br /&gt;
Az=z(1,:)-z(2,:); %runge-kutta&lt;br /&gt;
 &lt;br /&gt;
figure(1)&lt;br /&gt;
hold on&lt;br /&gt;
plot(t,Ay) %concentración de C por euler&lt;br /&gt;
plot(t,y(2,:),'r') %concentración de D por euler&lt;br /&gt;
plot(t,Az,'k') %concentración de C por runge-kutta&lt;br /&gt;
plot(t,z(2,:),'g') %concentración de D por runge-kutta&lt;br /&gt;
legend('concentración de C por euler','concentración de D por euler','concentración de C por runge-kutta','concentración de D por runge-kutta','Location','best')&lt;br /&gt;
hold off&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:graficoa.jpeg|500px|miniaturadeimagen|center|Reacción compleja]]&lt;br /&gt;
&lt;br /&gt;
Se observa que en en los primeros instantes aumentan las concentraciones de &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; aumentan sus concentraciones. Antes de que pase 1 segundo, la concentración &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; alcanza un máximo (de unos 0.3 molar) y va disminuyendo progresivamente hasta alcanzar un valor de 0 molar. La concentración &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; sigue creciendo hasta llegar a 1 molar. Una vez que tanto &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; como &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; alcanzan estos valores, se estabiliza la reacción. &lt;br /&gt;
&lt;br /&gt;
Como hemos impuesto que la reacción &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; es más rápida que &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt;, se observa que &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; empieza creciendo más rápidamente, pero como reacciona más despacio que &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; su concentración disminuye progresivamente, mientras que la de &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; aumenta.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''CASO'''  &amp;lt;math&amp;gt;k_2=5  &amp;lt;/math&amp;gt;   '''h=0.3''' &lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
&lt;br /&gt;
%datos&lt;br /&gt;
y0=[0;0];&lt;br /&gt;
z0=[0;0];&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=10;&lt;br /&gt;
h=0.3;&lt;br /&gt;
 &lt;br /&gt;
%variable independiente t&lt;br /&gt;
t=t0:h:tN;&lt;br /&gt;
 &lt;br /&gt;
%matriz de las soluciones&lt;br /&gt;
y=zeros(2,length(t)); %euler&lt;br /&gt;
y(:,1)=y0;&lt;br /&gt;
 &lt;br /&gt;
z=zeros(2,length(t)); %runge-kutta&lt;br /&gt;
z(:,1)=y0;&lt;br /&gt;
 &lt;br /&gt;
for i=1:length(t)-1&lt;br /&gt;
 %euler&lt;br /&gt;
 y(:,i+1)=y(:,i)+h*[1*(3-y(1,i))*(1-y(1,i)); 5*(y(1,i)-y(2,i))];&lt;br /&gt;
 %runge-kutta&lt;br /&gt;
 K1=[1*(3-z(1,i))*(1-z(1,i)); 5*(z(1,i)-z(2,i))];&lt;br /&gt;
 K2=[1*(3-(z(1,i)+h/2*K1(1)))*(1-(z(1,i)+h/2*K1(1))); 5*((y(1,i)+h/2*K1(2))-(y(2,i)+h/2*K1(2)))];&lt;br /&gt;
 K3=[1*(3-(z(1,i)+h/2*K2(1)))*(1-(z(1,i)+h/2*K2(1))); 5*((y(1,i)+h/2*K2(2))-(y(2,i)+h/2*K2(2)))];&lt;br /&gt;
 K4=[1*(3-(z(1,i)+h*K3(1)))*(1-(z(1,i)+h*K3(1))); 5*((y(1,i)+h*K3(2))-(y(2,i)+h*K3(2)))];&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;
% se calcula la concentración de C=y1t)-y2(t)&lt;br /&gt;
Ay=y(1,:)-y(2,:); %euler&lt;br /&gt;
Az=z(1,:)-z(2,:); %runge-kutta&lt;br /&gt;
 &lt;br /&gt;
figure(1)&lt;br /&gt;
hold on&lt;br /&gt;
plot(t,Ay) %concentración de C por euler&lt;br /&gt;
plot(t,y(2,:),'r') %concentración de D por euler&lt;br /&gt;
plot(t,Az,'k') %concentración de C por runge-kutta&lt;br /&gt;
plot(t,z(2,:),'g') %concentración de D por runge-kutta&lt;br /&gt;
legend('concentración de C por euler','concentración de D por euler','concentración de C por runge-kutta','concentración de D por runge-kutta','Location','best')&lt;br /&gt;
hold off&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:graficob.jpeg|500px|miniaturadeimagen|center|Reacción compleja]]&lt;br /&gt;
&lt;br /&gt;
Repetimos el programa pero para un tamaño de paso mayor, de '''h=0.3''', y observamos que no  es suficientemente preciso, sobre todo al principio, no se puede analizar bien lo que está pasando en la reacción.&lt;br /&gt;
&lt;br /&gt;
==La reacción D es más lenta que la reacción C==&lt;br /&gt;
&lt;br /&gt;
CASO  &amp;lt;math&amp;gt;k_1 &amp;lt;/math&amp;gt;=1,   &amp;lt;math&amp;gt;k_2 &amp;lt;/math&amp;gt;=1/5&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
&lt;br /&gt;
%datos&lt;br /&gt;
y0=[0;0];&lt;br /&gt;
z0=[0;0];&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;
%matriz de las soluciones&lt;br /&gt;
y=zeros(2,length(t)); %euler&lt;br /&gt;
y(:,1)=y0;&lt;br /&gt;
 &lt;br /&gt;
z=zeros(2,length(t)); %runge-kutta&lt;br /&gt;
z(:,1)=y0;&lt;br /&gt;
 &lt;br /&gt;
for i=1:length(t)-1&lt;br /&gt;
 %euler&lt;br /&gt;
 y(:,i+1)=y(:,i)+h*[1*(3-y(1,i))*(1-y(1,i)); 1/5*(y(1,i)-y(2,i))];&lt;br /&gt;
 %runge-kutta&lt;br /&gt;
 K1=[1*(3-z(1,i))*(1-z(1,i)); 1/5*(z(1,i)-z(2,i))];&lt;br /&gt;
 K2=[1*(3-(z(1,i)+h/2*K1(1)))*(1-(z(1,i)+h/2*K1(1))); 1/5*((y(1,i)+h/2*K1(2))-(y(2,i)+h/2*K1(2)))];&lt;br /&gt;
 K3=[1*(3-(z(1,i)+h/2*K2(1)))*(1-(z(1,i)+h/2*K2(1))); 1/5*((y(1,i)+h/2*K2(2))-(y(2,i)+h/2*K2(2)))];&lt;br /&gt;
 K4=[1*(3-(z(1,i)+h*K3(1)))*(1-(z(1,i)+h*K3(1))); 1/5*((y(1,i)+h*K3(2))-(y(2,i)+h*K3(2)))];&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;
% se calcula la concentración de C=y1t)-y2(t)&lt;br /&gt;
Ay=y(1,:)-y(2,:); %euler&lt;br /&gt;
Az=z(1,:)-z(2,:); %runge-kutta&lt;br /&gt;
 &lt;br /&gt;
figure(1)&lt;br /&gt;
hold on&lt;br /&gt;
plot(t,Ay) %concentración de C por euler&lt;br /&gt;
plot(t,y(2,:),'r') %concentración de D por euler&lt;br /&gt;
plot(t,Az,'k') %concentración de C por runge-kutta&lt;br /&gt;
plot(t,z(2,:),'g') %concentración de D por runge-kutta&lt;br /&gt;
legend('concentración de C por euler','concentración de D por euler','concentración de C por runge-kutta','concentración de D por runge-kutta','Location','best')&lt;br /&gt;
hold off&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:graficoc.jpeg|500px|miniaturadeimagen|center|Reacción compleja]]&lt;br /&gt;
&lt;br /&gt;
Si ahora imponemos que la reacción  &amp;lt;math&amp;gt;C &amp;lt;/math&amp;gt; es más rápida que  &amp;lt;math&amp;gt;D &amp;lt;/math&amp;gt;, obtenemos lo siguiente. Se parece a la gráfica que obtuvimos en el programa anterior, pero  más extendida en el tiempo, más lenta.  &amp;lt;math&amp;gt;C &amp;lt;/math&amp;gt; alcanza una concentración máxima de unos 0.8 molar antes de empezar a decrecer a medida que avanza el tiempo y acercándose a un valor de '''0''' molar.  &amp;lt;math&amp;gt;D &amp;lt;/math&amp;gt; crece más lentamente que en la gráfica anterior, pero se aproxima al mismo valor, '''1''' molar.&lt;br /&gt;
Se observa que aunque hagamos la reacción  &amp;lt;math&amp;gt;C &amp;lt;/math&amp;gt; más rápida, tenemos las mismas concentraciones finales, pero tardan más tiempo en obtenerse, ya que la reacción tarda más en estabilizarse.&lt;br /&gt;
&lt;br /&gt;
&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>Joseva</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Reacciones_complejas_(Grupo_D1)&amp;diff=27201</id>
		<title>Reacciones complejas (Grupo D1)</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Reacciones_complejas_(Grupo_D1)&amp;diff=27201"/>
				<updated>2015-03-05T23:11:46Z</updated>
		
		<summary type="html">&lt;p&gt;Joseva: /* Reacción consecutiva */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{ TrabajoED | Reacciones complejas (Grupo D1) | [[:Categoría:Ecuaciones Diferenciales|Ecuaciones Diferenciales]]|[[:Categoría:ED14/15|Curso 2014-15]] | Rincón Crespo, Kevin&lt;br /&gt;
&lt;br /&gt;
Rodríguez Gómez, Javier&lt;br /&gt;
&lt;br /&gt;
Sans Jiménez, Alejandro&lt;br /&gt;
&lt;br /&gt;
Sesto Muñoz, María Victoria&lt;br /&gt;
&lt;br /&gt;
Vallejo Asín, José Manuel &lt;br /&gt;
&lt;br /&gt;
Villarino Redondo, Álvaro }}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=Introducción=&lt;br /&gt;
Se considera una reacción química irreversible en una solución bien mezclada. Supondremos que la reacción ocurre para un volumen y temperatura constantes. Al inicio se encuentran dos reactivos &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;B&amp;lt;/math&amp;gt;, que van formando un producto &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; en lo que se conoce como una reacción bimolecular, es decir, una molécula de &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt; y una de &amp;lt;math&amp;gt;B&amp;lt;/math&amp;gt; producen una de &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt;.: &lt;br /&gt;
                                                                     &amp;lt;math&amp;gt;A + B → C&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Supondremos también que se satisface la ley de acción de masas, que establece que la velocidad de reacción es proporcional al producto de las concentraciones de los reactivos.&lt;br /&gt;
&lt;br /&gt;
=Concentración del reactivo &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; a lo largo del tiempo=&lt;br /&gt;
En primer lugar, suponiendo que la reacción es irreversible, es decir, que &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; no puede volver a formar &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;B&amp;lt;/math&amp;gt;, se puede expresar la situación mediante el siguiente problema de valor inicial, cuando t&amp;gt;0.:&lt;br /&gt;
   &amp;lt;math&amp;gt;&lt;br /&gt;
   \left . &lt;br /&gt;
      \begin{matrix} &lt;br /&gt;
         y'(t)={k_{1}}({a_{0}}-y(t))({b_{0}}-y(t))=0\\&lt;br /&gt;
         y(0)=0&lt;br /&gt;
      \end{matrix}&lt;br /&gt;
   \right \}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Donde &amp;lt;math&amp;gt; {a_{0}}&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;{b_{0}}&amp;lt;/math&amp;gt; representan las concentraciones iniciales de '''A''' y '''B''' respectivamente y &amp;lt;math&amp;gt;{k_{1}}&amp;lt;/math&amp;gt; es la constante de proporcionalidad que indica la ley de acción de masas. &amp;lt;math&amp;gt;y’(t)&amp;lt;/math&amp;gt; representa la velocidad de reacción, es decir, la velocidad con que se forma el producto &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; ; mientras que la solución de la ecuación diferencial, &amp;lt;math&amp;gt;y(t)&amp;lt;/math&amp;gt; , representa la concentración de &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt;, la cantidad de compuesto que se ha formado. Para comprobar que la solución de este problema de Cauchy es única, comenzamos definiendo.:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;math&amp;gt;f(t,y)={k_{1}}({a_{0}}-y(t))({b_{0}}-y(t))=0,   t&amp;gt;0 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Observamos que &amp;lt;math&amp;gt;f(t,y)&amp;lt;/math&amp;gt; es continua en el intervalo &amp;lt;math&amp;gt; I=(0,∞)∩B((0,0),r&amp;gt;0)&amp;lt;/math&amp;gt;, por lo que ya aseguramos la existencia de al menos una solución. Examinando la derivada parcial.:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\frac{∂f}{∂y}=k_1(-a_0-b_0+2y)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Se deduce que al ser un polinomio no va a haber problemas de continuidad para ninguna bola. De esta forma, podemos asegurar que existe una única solución.&lt;br /&gt;
&lt;br /&gt;
==Concentración del reactivo C a lo largo del tiempo en un proceso reversible==&lt;br /&gt;
&lt;br /&gt;
Ahora bien, ¿qué pasaría si la reacción fuese reversible? Con esto lo que queremos indicar es que además de formarse  &amp;lt;math&amp;gt;C &amp;lt;/math&amp;gt;, este también se descompone de nuevo en  &amp;lt;math&amp;gt;A &amp;lt;/math&amp;gt; y  &amp;lt;math&amp;gt;B &amp;lt;/math&amp;gt;. Por lo tanto, nos quedaría una ecuación diferencial con la siguiente forma, cuando &amp;lt;math&amp;gt;t&amp;gt;0 &amp;lt;/math&amp;gt;. :&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; y'(t)={k_{1}}({a_{0}}-y(t))({b_{0}}-y(t))-Cy(t)&amp;lt;/math&amp;gt;  &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Si nos fijamos, la modificación es sencillamente restar  &amp;lt;math&amp;gt;y(t) &amp;lt;/math&amp;gt; multiplicada por una constante, la cual refleja qué porcentaje de  &amp;lt;math&amp;gt;C &amp;lt;/math&amp;gt; se va descomponiendo a medida que se da, simultáneamente, la reacción  &amp;lt;math&amp;gt;A + B → C &amp;lt;/math&amp;gt;. Sin embargo, esta constante no puede tener cualquier valor, ya que en una reacción se cumple la conservación de masa. Por ello, a  &amp;lt;math&amp;gt;C &amp;lt;/math&amp;gt; le asociaremos el siguiente dominio::&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;C∈(0,1)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Obsérvese que  &amp;lt;math&amp;gt;C &amp;lt;/math&amp;gt; tiene que ser mayor que 0 para que sea reversible, pero al mismo tiempo inferior que 1, ya que si no se estaría descomponiendo más compuesto  &amp;lt;math&amp;gt;C &amp;lt;/math&amp;gt; del que realmente se ha formado, en otras palabras, estaría apareciendo masa de la nada.&lt;br /&gt;
&lt;br /&gt;
=Método de Euler=&lt;br /&gt;
&lt;br /&gt;
Una vez llegados a este punto, se procede a ver una interpretación gráfica de la reacción. Para ello, se refleja en la gráfica (en un intervalo de 2 segundos), cómo varían las concentraciones tanto de &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt; (&amp;lt;math&amp;gt;a_0&amp;lt;/math&amp;gt;=3 mol/L) y &amp;lt;math&amp;gt;B&amp;lt;/math&amp;gt; (&amp;lt;math&amp;gt;b_0&amp;lt;/math&amp;gt;=1 mol/L) como de &amp;lt;math&amp;gt; C&amp;lt;/math&amp;gt;, para una &amp;lt;math&amp;gt;k_1&amp;lt;/math&amp;gt;=1 mol/s. Se comienza, por el momento, aplicando el método de Euler. Posteriormente se utilizarán métodos más precisos.&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo= &lt;br /&gt;
% Euler&lt;br /&gt;
clear all&lt;br /&gt;
% datos del problema&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=2;&lt;br /&gt;
y0=0;&lt;br /&gt;
h=0.1;&lt;br /&gt;
k1=1;&lt;br /&gt;
a0=3;&lt;br /&gt;
b0=1;&lt;br /&gt;
% Definimos la variable independiente&lt;br /&gt;
t=t0:h:tN;&lt;br /&gt;
% Guardamos los valores de la solución aproximada en el vector &amp;quot;y1&amp;quot; y&lt;br /&gt;
% establecemos los vectores de concentraciones A y B&lt;br /&gt;
y1=zeros(1,length(t)); &lt;br /&gt;
y1(1)=y0;&lt;br /&gt;
a1=zeros(1,length(t));&lt;br /&gt;
a1(1)=a0;&lt;br /&gt;
b1=zeros(1,length(t));&lt;br /&gt;
b1(1)=b0;&lt;br /&gt;
% A continuación, calculamos las componentes de los vectores y1, a y b&lt;br /&gt;
for i=1:length(t)-1&lt;br /&gt;
    y1(i+1)=y1(i)+h*(k1*(a0-y1(i))*(b0-y1(i)));    %Euler&lt;br /&gt;
    a1(i+1)=a0-y1(i+1); % evolución de la concentración de A&lt;br /&gt;
    b1(i+1)=b0-y1(i+1); % evolución de la concentración de B&lt;br /&gt;
end&lt;br /&gt;
%grafico &lt;br /&gt;
figure(1)&lt;br /&gt;
hold on&lt;br /&gt;
plot(t,y1,'g')&lt;br /&gt;
plot(t,a1,'r')&lt;br /&gt;
plot(t,b1,'b')&lt;br /&gt;
legend('concentración de C','concentración de A','concentración de B','location','best')&lt;br /&gt;
hold off &lt;br /&gt;
%en verde se muestra la concentración de C, en rojo la de A, y en azul la de B&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Archivo:3euler.jpeg|500px|miniaturadeimagen|center|Reacción compleja]]&lt;br /&gt;
&lt;br /&gt;
Aunque con observar los resultados ya podemos decir con casi absoluta seguridad cuáles son los límites de las concentraciones de cada reactivo &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;B&amp;lt;/math&amp;gt; y del producto &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt;, se ha diseñado un programa que, mediante diferencia de valores sucesivos de la variable &amp;lt;math&amp;gt;y(t)&amp;lt;/math&amp;gt;, nos devuelve el valor de la función cuando dicha diferencia es muy pequeña '''(se ha puesto una diferencia de 0.001)''', es decir, cuando tenemos una asíntota al tender &amp;lt;math&amp;gt;t→∞&amp;lt;/math&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
%Estudio de las asíntotas&lt;br /&gt;
t1=t0:h:10;%se aumenta la longitud de t, y se estima que se alcanzarán las asíntotas antes de t=10&lt;br /&gt;
y_=zeros(1,length(t1)); %se define un vector y_ idéntico a y1 pero con t hasta 10&lt;br /&gt;
a_=y_;&lt;br /&gt;
b_=y_;&lt;br /&gt;
y_(1)=y0;&lt;br /&gt;
a_(1)=a0;&lt;br /&gt;
b_(1)=b0;&lt;br /&gt;
for i=1:length(t1)-1&lt;br /&gt;
    y_(i+1)=y_(i)+h*(k1*(a0-y_(i))*(b0-y_(i)));&lt;br /&gt;
    diferencia=y_(i+1)-y_(i);&lt;br /&gt;
    if abs(diferencia)&amp;lt;=0.001&lt;br /&gt;
        limiteC=y_(i+1)&lt;br /&gt;
        break&lt;br /&gt;
    end&lt;br /&gt;
end&lt;br /&gt;
for i=1:length(t1)-1&lt;br /&gt;
    y_(i+1)=y_(i)+h*(k1*(a0-y_(i))*(b0-y_(i)));    &lt;br /&gt;
    a_(i+1)=a0-y_(i+1);&lt;br /&gt;
    diferencia2=a_(i+1)-a_(i);&lt;br /&gt;
    if abs(diferencia2)&amp;lt;=0.001&lt;br /&gt;
        limiteA=a_(i+1)&lt;br /&gt;
        break&lt;br /&gt;
    end&lt;br /&gt;
end&lt;br /&gt;
for i=1:length(t1)-1&lt;br /&gt;
    y_(i+1)=y_(i)+h*(k1*(a0-y_(i))*(b0-y_(i)));    &lt;br /&gt;
    b_(i+1)=b0-y_(i+1);&lt;br /&gt;
    diferencia3=b_(i+1)-b_(i);&lt;br /&gt;
    if abs(diferencia3)&amp;lt;=0.001&lt;br /&gt;
        limiteB=b_(i+1)&lt;br /&gt;
        break&lt;br /&gt;
    end&lt;br /&gt;
end&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
Que nos devuelve unos valores de las concentraciones para el límite de:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\lim A=2,0036≈2 mol/L&amp;lt;/math&amp;gt;:     &lt;br /&gt;
&amp;lt;math&amp;gt;\lim B=0,0036≈0mol/L&amp;lt;/math&amp;gt;:         &lt;br /&gt;
&amp;lt;math&amp;gt;\lim C=0,9964≈1mol/L&amp;lt;/math&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
Lo cual es lógico, ya que &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;B&amp;lt;/math&amp;gt; se combinan en una proporción de 1:1, luego &amp;lt;math&amp;gt;B&amp;lt;/math&amp;gt;, que tiene una concentración inicial de &amp;lt;math&amp;gt;b_0&amp;lt;/math&amp;gt;=1, será el reactivo limitante (el que desaparecerá por completo), mientras que &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt;, con &amp;lt;math&amp;gt;a_0&amp;lt;/math&amp;gt;=3, acabará con una concentración molar final igual a 2, y &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt;, del que no habia nada,alcanza una concentraccion de &amp;lt;math&amp;gt;1mol/L&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
= Método del Trapecio y Método de Runge-Kutta=&lt;br /&gt;
&lt;br /&gt;
A continuación, para obtener con más precisión las representaciones gráficas de las respectivas concentraciones, se opta por utilizar los métodos de los &amp;lt;math&amp;gt;Trapecios&amp;lt;/math&amp;gt; (segundo orden) y de &amp;lt;math&amp;gt;Runge-Kutta&amp;lt;/math&amp;gt; (cuarto orden). Desgraciadamente, no es posible comparar los errores cometidos por cada método con la expresión real de la concentración de C, ya que la ecuación diferencial no es de fácil resolución analítica, luego resulta imposible alcanzar una expresión explícita de la concentración en términos de nuestros datos conocidos; &amp;lt;math&amp;gt;a_0&amp;lt;/math&amp;gt;,&amp;lt;math&amp;gt;b_0&amp;lt;/math&amp;gt;,&amp;lt;math&amp;gt;k_1&amp;lt;/math&amp;gt;,&amp;lt;math&amp;gt;t (tiempo)&amp;lt;/math&amp;gt;.  Sin embargo, podemos confiar con bastante seguridad en el método sobre todo de &amp;lt;math&amp;gt;Runge-Kutta&amp;lt;/math&amp;gt;, debido a su cuarto orden. &lt;br /&gt;
&lt;br /&gt;
Para los trapecios, al ser un método implícito, es necesario despejar la componente &amp;lt;math&amp;gt;y_{n+1}&amp;lt;/math&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;y_{n+1}=\frac{(1+\frac{h}{2}∙k_1∙(a_0+b_0))-\sqrt{(1+\frac{h}{2}∙k_1∙(a_0+b_0))^2 -2∙h∙k_1(y_n+\frac{h}{2}∙k_1∙(a_0-y_n )∙(b_0-y_n)+\frac{h}{2}∙k_1∙a_0∙b_0) }}{k_1∙h}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Cabe destacar que este programa parte de los datos ya establecidos en el programa de Euler para '''t0, tN, y0, a0, b0, k1 y h''':&lt;br /&gt;
{{matlab|codigo= &lt;br /&gt;
%Trapecios&lt;br /&gt;
y2=zeros(1,length(t)); &lt;br /&gt;
a2=y2;&lt;br /&gt;
b2=y2;&lt;br /&gt;
y2(1)=y0;&lt;br /&gt;
a2(1)=a0;&lt;br /&gt;
b2(1)=b0;&lt;br /&gt;
for i=1:length(t)-1&lt;br /&gt;
    y2(i+1)=((1+0.5*h*k1*(a0+b0))-sqrt((1+0.5*h*k1*(a0+b0))^2-2*h*k1*(y2(i)+0.5*h*k1*(a0-y2(i))*(b0-y2(i))+0.5*h*k1*a0*b0)))/(k1*h);&lt;br /&gt;
    a2(i+1)=a0-y2(i+1);&lt;br /&gt;
    b2(i+1)=b0-y2(i+1);&lt;br /&gt;
end&lt;br /&gt;
 &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
%Runge-Kutta&lt;br /&gt;
y3=zeros(1,length(t)); &lt;br /&gt;
a3=y3;&lt;br /&gt;
b3=y3;&lt;br /&gt;
y3(1)=y0;&lt;br /&gt;
a3(1)=a0;&lt;br /&gt;
b3(1)=b0;&lt;br /&gt;
for i=1:length(t)-1 &lt;br /&gt;
    r1=k1*(a0-y3(i))*(b0-y3(i));&lt;br /&gt;
    r2=k1*(a0-y3(i)-0.5*r1*h)*(b0-y3(i)-0.5*r1*h);&lt;br /&gt;
    r3=k1*(a0-y3(i)-0.5*r2*h)*(b0-y3(i)-0.5*r2*h);&lt;br /&gt;
    r4=k1*(a0-y3(i)-r3*h)*(b0-y3(i)-r3*h);&lt;br /&gt;
    y3(i+1)=y3(i)+h/6*(r1+2*r2+2*r3+r4);&lt;br /&gt;
    a3(i+1)=a0-y3(i+1);&lt;br /&gt;
    b3(i+1)=b0-y3(i+1);&lt;br /&gt;
end&lt;br /&gt;
%se pintan las dos, en azul las soluciones de los Trapecios, y en negro las&lt;br /&gt;
%de Runge-Kutta. &lt;br /&gt;
figure(2)&lt;br /&gt;
hold on&lt;br /&gt;
plot(t,y2)&lt;br /&gt;
plot(t,a2)&lt;br /&gt;
plot(t,b2)&lt;br /&gt;
plot(t,y3,'k')&lt;br /&gt;
plot(t,a3,'k')&lt;br /&gt;
plot(t,b3,'k')&lt;br /&gt;
hold off&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
Que proporciona el resultado que se puede observar en la primera gráfica adjunta. Como podemos ver, es prácticamente indistinguible una gráfica de la otra. Sin embargo, si la juntamos con las gráficas proporcionadas por el método de Euler, que se representa ahora en rojo, la diferencia es palpable (ver gráfica 2), lo cual evidencia la peor precisión del método de Euler.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:4trapeciokung.jpeg|500px|miniaturadeimagen|center|Reacción compleja]]&lt;br /&gt;
&lt;br /&gt;
[[Archivo:4comparacion.jpeg|500px|miniaturadeimagen|center|Gráfico 2]]&lt;br /&gt;
&lt;br /&gt;
=Reacción consecutiva=&lt;br /&gt;
&lt;br /&gt;
Consideremos ahora que se produce una reacción consecutiva de la forma.: &lt;br /&gt;
&lt;br /&gt;
                                                                   &amp;lt;math&amp;gt;A + B → k_1C → k_2D&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
De tal modo que los reactivos &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;B&amp;lt;/math&amp;gt; se combinan en la proporción 1:1 para formar compuesto &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt;, el cual, a su vez, se va descomponiendo para formar compuesto &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt;. Al igual que se ha hecho antes al analizar las otras reacciones, se considerará que se cumple la ley de acción de masas. Es decir, la velocidad con la que se forma compuesto &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; es proporcional a las concentraciones existentes de &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt; y de &amp;lt;math&amp;gt;B&amp;lt;/math&amp;gt; y del mismo modo la de formación de la sustancia &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; lo es a la concentración de &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; que se ha ido formando.&lt;br /&gt;
&lt;br /&gt;
Esta reacción consecutiva está representada por el siguiente problema de valor inicial::&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;&lt;br /&gt;
   \left . &lt;br /&gt;
      \begin{matrix} &lt;br /&gt;
         y'_1(t)={k_{1}}({a_{0}}-y_1(t))({b_{0}}-y_1(t))\\&lt;br /&gt;
         y'_2(t)={k_{2}}(y_1(t)-y_2(t))\\&lt;br /&gt;
y_1(0)=0\\y_2(0)=0&lt;br /&gt;
      \end{matrix}&lt;br /&gt;
   \right \}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
Donde &amp;lt;math&amp;gt;a_0&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;b_0&amp;lt;/math&amp;gt; representan las concentraciones iniciales de &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;B&amp;lt;/math&amp;gt; respectivamente, &amp;lt;math&amp;gt;k_1&amp;lt;/math&amp;gt; es la constante de proporcionalidad que rige la primera reacción y &amp;lt;math&amp;gt;k_2&amp;lt;/math&amp;gt; la que rige la segunda reacción o reacción consecutiva. &amp;lt;math&amp;gt;y_1’(t)&amp;lt;/math&amp;gt; e  &amp;lt;math&amp;gt;y_2’(t)&amp;lt;/math&amp;gt; representan las velocidades de las reacciones, es decir, las velocidades con que se forman los productos &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt;. &amp;lt;math&amp;gt;y_2(t)&amp;lt;/math&amp;gt; representa la concentración del producto &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; pero es importante apreciar que en este caso &amp;lt;math&amp;gt;y_1(t)&amp;lt;/math&amp;gt; no nos da el valor de la concentración de &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; directamente, sino que ésta será &amp;lt;math&amp;gt;y_1(t)&amp;lt;/math&amp;gt;- &amp;lt;math&amp;gt;y_2(t)&amp;lt;/math&amp;gt;, la cantidad que se forma en la primera reacción menos la que se emplea para formar el producto &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; en la segunda.&lt;br /&gt;
&lt;br /&gt;
Este problema se va a resolver para dos casos diferentes. Uno en el cual se considera que la segunda reacción es más rápida que la primera, lo que supone tomar un valor de la constante &amp;lt;math&amp;gt;k_2&amp;lt;/math&amp;gt;  mayor que &amp;lt;math&amp;gt;k_1&amp;lt;/math&amp;gt;. Y otro en el cual se considera que es más lenta, lo que implica que &amp;lt;math&amp;gt;k_2&amp;lt;/math&amp;gt; es menor que &amp;lt;math&amp;gt;k_1&amp;lt;/math&amp;gt;. Concretamente vamos a tomar los siguientes valores para resolver el problema numéricamente; &amp;lt;math&amp;gt;a_0&amp;lt;/math&amp;gt;=3 ,  &amp;lt;math&amp;gt;b_0&amp;lt;/math&amp;gt;=1, &amp;lt;math&amp;gt;k_1&amp;lt;/math&amp;gt;=1,  &amp;lt;math&amp;gt;k_2&amp;lt;/math&amp;gt;=5, &amp;lt;math&amp;gt;k_2&amp;lt;/math&amp;gt;=1/5, .En ambos casos se resuelve para los primeros 10 segundos.&lt;br /&gt;
&lt;br /&gt;
==La reacción D es más rápida que la reacción C==&lt;br /&gt;
CASO    &amp;lt;math&amp;gt;k_1=5  &amp;lt;/math&amp;gt;   '''h=0.1''' &lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
&lt;br /&gt;
%datos&lt;br /&gt;
y0=[0;0];&lt;br /&gt;
z0=[0;0];&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;
%matriz de las soluciones&lt;br /&gt;
y=zeros(2,length(t)); %euler&lt;br /&gt;
y(:,1)=y0;&lt;br /&gt;
 &lt;br /&gt;
z=zeros(2,length(t)); %runge-kutta&lt;br /&gt;
z(:,1)=y0;&lt;br /&gt;
 &lt;br /&gt;
for i=1:length(t)-1&lt;br /&gt;
 %euler&lt;br /&gt;
 y(:,i+1)=y(:,i)+h*[1*(3-y(1,i))*(1-y(1,i)); 5*(y(1,i)-y(2,i))];&lt;br /&gt;
 %runge-kutta&lt;br /&gt;
 K1=[1*(3-z(1,i))*(1-z(1,i)); 5*(z(1,i)-z(2,i))];&lt;br /&gt;
 K2=[1*(3-(z(1,i)+h/2*K1(1)))*(1-(z(1,i)+h/2*K1(1))); 5*((y(1,i)+h/2*K1(2))-(y(2,i)+h/2*K1(2)))];&lt;br /&gt;
 K3=[1*(3-(z(1,i)+h/2*K2(1)))*(1-(z(1,i)+h/2*K2(1))); 5*((y(1,i)+h/2*K2(2))-(y(2,i)+h/2*K2(2)))];&lt;br /&gt;
 K4=[1*(3-(z(1,i)+h*K3(1)))*(1-(z(1,i)+h*K3(1))); 5*((y(1,i)+h*K3(2))-(y(2,i)+h*K3(2)))];&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;
% se calcula la concentración de C=y1t)-y2(t)&lt;br /&gt;
Ay=y(1,:)-y(2,:); %euler&lt;br /&gt;
Az=z(1,:)-z(2,:); %runge-kutta&lt;br /&gt;
 &lt;br /&gt;
figure(1)&lt;br /&gt;
hold on&lt;br /&gt;
plot(t,Ay) %concentración de C por euler&lt;br /&gt;
plot(t,y(2,:),'r') %concentración de D por euler&lt;br /&gt;
plot(t,Az,'k') %concentración de C por runge-kutta&lt;br /&gt;
plot(t,z(2,:),'g') %concentración de D por runge-kutta&lt;br /&gt;
legend('concentración de C por euler','concentración de D por euler','concentración de C por runge-kutta','concentración de D por runge-kutta','Location','best')&lt;br /&gt;
hold off&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:graficoa.jpeg|500px|miniaturadeimagen|center|Reacción compleja]]&lt;br /&gt;
&lt;br /&gt;
Se observa que en en los primeros instantes aumentan las concentraciones de &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; aumentan sus concentraciones. Antes de que pase 1 segundo, la concentración &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; alcanza un máximo (de unos 0.3 molar) y va disminuyendo progresivamente hasta alcanzar un valor de 0 molar. La concentración &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; sigue creciendo hasta llegar a 1 molar. Una vez que tanto &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; como &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; alcanzan estos valores, se estabiliza la reacción. &lt;br /&gt;
&lt;br /&gt;
Como hemos impuesto que la reacción &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; es más rápida que &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt;, se observa que &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; empieza creciendo más rápidamente, pero como reacciona más despacio que &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; su concentración disminuye progresivamente, mientras que la de &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; aumenta.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''CASO'''  &amp;lt;math&amp;gt;k_2=5  &amp;lt;/math&amp;gt;   '''h=0.3''' &lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
&lt;br /&gt;
%datos&lt;br /&gt;
y0=[0;0];&lt;br /&gt;
z0=[0;0];&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=10;&lt;br /&gt;
h=0.3;&lt;br /&gt;
 &lt;br /&gt;
%variable independiente t&lt;br /&gt;
t=t0:h:tN;&lt;br /&gt;
 &lt;br /&gt;
%matriz de las soluciones&lt;br /&gt;
y=zeros(2,length(t)); %euler&lt;br /&gt;
y(:,1)=y0;&lt;br /&gt;
 &lt;br /&gt;
z=zeros(2,length(t)); %runge-kutta&lt;br /&gt;
z(:,1)=y0;&lt;br /&gt;
 &lt;br /&gt;
for i=1:length(t)-1&lt;br /&gt;
 %euler&lt;br /&gt;
 y(:,i+1)=y(:,i)+h*[1*(3-y(1,i))*(1-y(1,i)); 5*(y(1,i)-y(2,i))];&lt;br /&gt;
 %runge-kutta&lt;br /&gt;
 K1=[1*(3-z(1,i))*(1-z(1,i)); 5*(z(1,i)-z(2,i))];&lt;br /&gt;
 K2=[1*(3-(z(1,i)+h/2*K1(1)))*(1-(z(1,i)+h/2*K1(1))); 5*((y(1,i)+h/2*K1(2))-(y(2,i)+h/2*K1(2)))];&lt;br /&gt;
 K3=[1*(3-(z(1,i)+h/2*K2(1)))*(1-(z(1,i)+h/2*K2(1))); 5*((y(1,i)+h/2*K2(2))-(y(2,i)+h/2*K2(2)))];&lt;br /&gt;
 K4=[1*(3-(z(1,i)+h*K3(1)))*(1-(z(1,i)+h*K3(1))); 5*((y(1,i)+h*K3(2))-(y(2,i)+h*K3(2)))];&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;
% se calcula la concentración de C=y1t)-y2(t)&lt;br /&gt;
Ay=y(1,:)-y(2,:); %euler&lt;br /&gt;
Az=z(1,:)-z(2,:); %runge-kutta&lt;br /&gt;
 &lt;br /&gt;
figure(1)&lt;br /&gt;
hold on&lt;br /&gt;
plot(t,Ay) %concentración de C por euler&lt;br /&gt;
plot(t,y(2,:),'r') %concentración de D por euler&lt;br /&gt;
plot(t,Az,'k') %concentración de C por runge-kutta&lt;br /&gt;
plot(t,z(2,:),'g') %concentración de D por runge-kutta&lt;br /&gt;
legend('concentración de C por euler','concentración de D por euler','concentración de C por runge-kutta','concentración de D por runge-kutta','Location','best')&lt;br /&gt;
hold off&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:graficob.jpeg|500px|miniaturadeimagen|center|Reacción compleja]]&lt;br /&gt;
&lt;br /&gt;
Repetimos el programa pero para un tamaño de paso mayor, de '''h=0.3''', y observamos que no  es suficientemente preciso, sobre todo al principio, no se puede analizar bien lo que está pasando en la reacción.&lt;br /&gt;
&lt;br /&gt;
==La reacción D es más lenta que la reacción C==&lt;br /&gt;
&lt;br /&gt;
CASO  &amp;lt;math&amp;gt;k_1 &amp;lt;/math&amp;gt;=1,   &amp;lt;math&amp;gt;k_2 &amp;lt;/math&amp;gt;=1/5&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
&lt;br /&gt;
%datos&lt;br /&gt;
y0=[0;0];&lt;br /&gt;
z0=[0;0];&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;
%matriz de las soluciones&lt;br /&gt;
y=zeros(2,length(t)); %euler&lt;br /&gt;
y(:,1)=y0;&lt;br /&gt;
 &lt;br /&gt;
z=zeros(2,length(t)); %runge-kutta&lt;br /&gt;
z(:,1)=y0;&lt;br /&gt;
 &lt;br /&gt;
for i=1:length(t)-1&lt;br /&gt;
 %euler&lt;br /&gt;
 y(:,i+1)=y(:,i)+h*[1*(3-y(1,i))*(1-y(1,i)); 1/5*(y(1,i)-y(2,i))];&lt;br /&gt;
 %runge-kutta&lt;br /&gt;
 K1=[1*(3-z(1,i))*(1-z(1,i)); 1/5*(z(1,i)-z(2,i))];&lt;br /&gt;
 K2=[1*(3-(z(1,i)+h/2*K1(1)))*(1-(z(1,i)+h/2*K1(1))); 1/5*((y(1,i)+h/2*K1(2))-(y(2,i)+h/2*K1(2)))];&lt;br /&gt;
 K3=[1*(3-(z(1,i)+h/2*K2(1)))*(1-(z(1,i)+h/2*K2(1))); 1/5*((y(1,i)+h/2*K2(2))-(y(2,i)+h/2*K2(2)))];&lt;br /&gt;
 K4=[1*(3-(z(1,i)+h*K3(1)))*(1-(z(1,i)+h*K3(1))); 1/5*((y(1,i)+h*K3(2))-(y(2,i)+h*K3(2)))];&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;
% se calcula la concentración de C=y1t)-y2(t)&lt;br /&gt;
Ay=y(1,:)-y(2,:); %euler&lt;br /&gt;
Az=z(1,:)-z(2,:); %runge-kutta&lt;br /&gt;
 &lt;br /&gt;
figure(1)&lt;br /&gt;
hold on&lt;br /&gt;
plot(t,Ay) %concentración de C por euler&lt;br /&gt;
plot(t,y(2,:),'r') %concentración de D por euler&lt;br /&gt;
plot(t,Az,'k') %concentración de C por runge-kutta&lt;br /&gt;
plot(t,z(2,:),'g') %concentración de D por runge-kutta&lt;br /&gt;
legend('concentración de C por euler','concentración de D por euler','concentración de C por runge-kutta','concentración de D por runge-kutta','Location','best')&lt;br /&gt;
hold off&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:graficoc.jpeg|500px|miniaturadeimagen|center|Reacción compleja]]&lt;br /&gt;
&lt;br /&gt;
Si ahora imponemos que la reacción  &amp;lt;math&amp;gt;C &amp;lt;/math&amp;gt; es más rápida que  &amp;lt;math&amp;gt;D &amp;lt;/math&amp;gt;, obtenemos lo siguiente. Se parece a la gráfica que obtuvimos en el programa anterior, pero  más extendida en el tiempo, más lenta.  &amp;lt;math&amp;gt;C &amp;lt;/math&amp;gt; alcanza una concentración máxima de unos 0.8 molar antes de empezar a decrecer a medida que avanza el tiempo y acercándose a un valor de '''0''' molar.  &amp;lt;math&amp;gt;D &amp;lt;/math&amp;gt; crece más lentamente que en la gráfica anterior, pero se aproxima al mismo valor, '''1''' molar.&lt;br /&gt;
Se observa que aunque hagamos la reacción  &amp;lt;math&amp;gt;C &amp;lt;/math&amp;gt; más rápida, tenemos las mismas concentraciones finales, pero tardan más tiempo en obtenerse, ya que la reacción tarda más en estabilizarse.&lt;br /&gt;
&lt;br /&gt;
&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>Joseva</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Reacciones_complejas_(Grupo_D1)&amp;diff=27199</id>
		<title>Reacciones complejas (Grupo D1)</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Reacciones_complejas_(Grupo_D1)&amp;diff=27199"/>
				<updated>2015-03-05T23:11:28Z</updated>
		
		<summary type="html">&lt;p&gt;Joseva: /* Reacción consecutiva */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{ TrabajoED | Reacciones complejas (Grupo D1) | [[:Categoría:Ecuaciones Diferenciales|Ecuaciones Diferenciales]]|[[:Categoría:ED14/15|Curso 2014-15]] | Rincón Crespo, Kevin&lt;br /&gt;
&lt;br /&gt;
Rodríguez Gómez, Javier&lt;br /&gt;
&lt;br /&gt;
Sans Jiménez, Alejandro&lt;br /&gt;
&lt;br /&gt;
Sesto Muñoz, María Victoria&lt;br /&gt;
&lt;br /&gt;
Vallejo Asín, José Manuel &lt;br /&gt;
&lt;br /&gt;
Villarino Redondo, Álvaro }}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=Introducción=&lt;br /&gt;
Se considera una reacción química irreversible en una solución bien mezclada. Supondremos que la reacción ocurre para un volumen y temperatura constantes. Al inicio se encuentran dos reactivos &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;B&amp;lt;/math&amp;gt;, que van formando un producto &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; en lo que se conoce como una reacción bimolecular, es decir, una molécula de &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt; y una de &amp;lt;math&amp;gt;B&amp;lt;/math&amp;gt; producen una de &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt;.: &lt;br /&gt;
                                                                     &amp;lt;math&amp;gt;A + B → C&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Supondremos también que se satisface la ley de acción de masas, que establece que la velocidad de reacción es proporcional al producto de las concentraciones de los reactivos.&lt;br /&gt;
&lt;br /&gt;
=Concentración del reactivo &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; a lo largo del tiempo=&lt;br /&gt;
En primer lugar, suponiendo que la reacción es irreversible, es decir, que &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; no puede volver a formar &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;B&amp;lt;/math&amp;gt;, se puede expresar la situación mediante el siguiente problema de valor inicial, cuando t&amp;gt;0.:&lt;br /&gt;
   &amp;lt;math&amp;gt;&lt;br /&gt;
   \left . &lt;br /&gt;
      \begin{matrix} &lt;br /&gt;
         y'(t)={k_{1}}({a_{0}}-y(t))({b_{0}}-y(t))=0\\&lt;br /&gt;
         y(0)=0&lt;br /&gt;
      \end{matrix}&lt;br /&gt;
   \right \}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Donde &amp;lt;math&amp;gt; {a_{0}}&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;{b_{0}}&amp;lt;/math&amp;gt; representan las concentraciones iniciales de '''A''' y '''B''' respectivamente y &amp;lt;math&amp;gt;{k_{1}}&amp;lt;/math&amp;gt; es la constante de proporcionalidad que indica la ley de acción de masas. &amp;lt;math&amp;gt;y’(t)&amp;lt;/math&amp;gt; representa la velocidad de reacción, es decir, la velocidad con que se forma el producto &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; ; mientras que la solución de la ecuación diferencial, &amp;lt;math&amp;gt;y(t)&amp;lt;/math&amp;gt; , representa la concentración de &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt;, la cantidad de compuesto que se ha formado. Para comprobar que la solución de este problema de Cauchy es única, comenzamos definiendo.:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;math&amp;gt;f(t,y)={k_{1}}({a_{0}}-y(t))({b_{0}}-y(t))=0,   t&amp;gt;0 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Observamos que &amp;lt;math&amp;gt;f(t,y)&amp;lt;/math&amp;gt; es continua en el intervalo &amp;lt;math&amp;gt; I=(0,∞)∩B((0,0),r&amp;gt;0)&amp;lt;/math&amp;gt;, por lo que ya aseguramos la existencia de al menos una solución. Examinando la derivada parcial.:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\frac{∂f}{∂y}=k_1(-a_0-b_0+2y)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Se deduce que al ser un polinomio no va a haber problemas de continuidad para ninguna bola. De esta forma, podemos asegurar que existe una única solución.&lt;br /&gt;
&lt;br /&gt;
==Concentración del reactivo C a lo largo del tiempo en un proceso reversible==&lt;br /&gt;
&lt;br /&gt;
Ahora bien, ¿qué pasaría si la reacción fuese reversible? Con esto lo que queremos indicar es que además de formarse  &amp;lt;math&amp;gt;C &amp;lt;/math&amp;gt;, este también se descompone de nuevo en  &amp;lt;math&amp;gt;A &amp;lt;/math&amp;gt; y  &amp;lt;math&amp;gt;B &amp;lt;/math&amp;gt;. Por lo tanto, nos quedaría una ecuación diferencial con la siguiente forma, cuando &amp;lt;math&amp;gt;t&amp;gt;0 &amp;lt;/math&amp;gt;. :&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; y'(t)={k_{1}}({a_{0}}-y(t))({b_{0}}-y(t))-Cy(t)&amp;lt;/math&amp;gt;  &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Si nos fijamos, la modificación es sencillamente restar  &amp;lt;math&amp;gt;y(t) &amp;lt;/math&amp;gt; multiplicada por una constante, la cual refleja qué porcentaje de  &amp;lt;math&amp;gt;C &amp;lt;/math&amp;gt; se va descomponiendo a medida que se da, simultáneamente, la reacción  &amp;lt;math&amp;gt;A + B → C &amp;lt;/math&amp;gt;. Sin embargo, esta constante no puede tener cualquier valor, ya que en una reacción se cumple la conservación de masa. Por ello, a  &amp;lt;math&amp;gt;C &amp;lt;/math&amp;gt; le asociaremos el siguiente dominio::&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;C∈(0,1)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Obsérvese que  &amp;lt;math&amp;gt;C &amp;lt;/math&amp;gt; tiene que ser mayor que 0 para que sea reversible, pero al mismo tiempo inferior que 1, ya que si no se estaría descomponiendo más compuesto  &amp;lt;math&amp;gt;C &amp;lt;/math&amp;gt; del que realmente se ha formado, en otras palabras, estaría apareciendo masa de la nada.&lt;br /&gt;
&lt;br /&gt;
=Método de Euler=&lt;br /&gt;
&lt;br /&gt;
Una vez llegados a este punto, se procede a ver una interpretación gráfica de la reacción. Para ello, se refleja en la gráfica (en un intervalo de 2 segundos), cómo varían las concentraciones tanto de &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt; (&amp;lt;math&amp;gt;a_0&amp;lt;/math&amp;gt;=3 mol/L) y &amp;lt;math&amp;gt;B&amp;lt;/math&amp;gt; (&amp;lt;math&amp;gt;b_0&amp;lt;/math&amp;gt;=1 mol/L) como de &amp;lt;math&amp;gt; C&amp;lt;/math&amp;gt;, para una &amp;lt;math&amp;gt;k_1&amp;lt;/math&amp;gt;=1 mol/s. Se comienza, por el momento, aplicando el método de Euler. Posteriormente se utilizarán métodos más precisos.&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo= &lt;br /&gt;
% Euler&lt;br /&gt;
clear all&lt;br /&gt;
% datos del problema&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=2;&lt;br /&gt;
y0=0;&lt;br /&gt;
h=0.1;&lt;br /&gt;
k1=1;&lt;br /&gt;
a0=3;&lt;br /&gt;
b0=1;&lt;br /&gt;
% Definimos la variable independiente&lt;br /&gt;
t=t0:h:tN;&lt;br /&gt;
% Guardamos los valores de la solución aproximada en el vector &amp;quot;y1&amp;quot; y&lt;br /&gt;
% establecemos los vectores de concentraciones A y B&lt;br /&gt;
y1=zeros(1,length(t)); &lt;br /&gt;
y1(1)=y0;&lt;br /&gt;
a1=zeros(1,length(t));&lt;br /&gt;
a1(1)=a0;&lt;br /&gt;
b1=zeros(1,length(t));&lt;br /&gt;
b1(1)=b0;&lt;br /&gt;
% A continuación, calculamos las componentes de los vectores y1, a y b&lt;br /&gt;
for i=1:length(t)-1&lt;br /&gt;
    y1(i+1)=y1(i)+h*(k1*(a0-y1(i))*(b0-y1(i)));    %Euler&lt;br /&gt;
    a1(i+1)=a0-y1(i+1); % evolución de la concentración de A&lt;br /&gt;
    b1(i+1)=b0-y1(i+1); % evolución de la concentración de B&lt;br /&gt;
end&lt;br /&gt;
%grafico &lt;br /&gt;
figure(1)&lt;br /&gt;
hold on&lt;br /&gt;
plot(t,y1,'g')&lt;br /&gt;
plot(t,a1,'r')&lt;br /&gt;
plot(t,b1,'b')&lt;br /&gt;
legend('concentración de C','concentración de A','concentración de B','location','best')&lt;br /&gt;
hold off &lt;br /&gt;
%en verde se muestra la concentración de C, en rojo la de A, y en azul la de B&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Archivo:3euler.jpeg|500px|miniaturadeimagen|center|Reacción compleja]]&lt;br /&gt;
&lt;br /&gt;
Aunque con observar los resultados ya podemos decir con casi absoluta seguridad cuáles son los límites de las concentraciones de cada reactivo &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;B&amp;lt;/math&amp;gt; y del producto &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt;, se ha diseñado un programa que, mediante diferencia de valores sucesivos de la variable &amp;lt;math&amp;gt;y(t)&amp;lt;/math&amp;gt;, nos devuelve el valor de la función cuando dicha diferencia es muy pequeña '''(se ha puesto una diferencia de 0.001)''', es decir, cuando tenemos una asíntota al tender &amp;lt;math&amp;gt;t→∞&amp;lt;/math&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
%Estudio de las asíntotas&lt;br /&gt;
t1=t0:h:10;%se aumenta la longitud de t, y se estima que se alcanzarán las asíntotas antes de t=10&lt;br /&gt;
y_=zeros(1,length(t1)); %se define un vector y_ idéntico a y1 pero con t hasta 10&lt;br /&gt;
a_=y_;&lt;br /&gt;
b_=y_;&lt;br /&gt;
y_(1)=y0;&lt;br /&gt;
a_(1)=a0;&lt;br /&gt;
b_(1)=b0;&lt;br /&gt;
for i=1:length(t1)-1&lt;br /&gt;
    y_(i+1)=y_(i)+h*(k1*(a0-y_(i))*(b0-y_(i)));&lt;br /&gt;
    diferencia=y_(i+1)-y_(i);&lt;br /&gt;
    if abs(diferencia)&amp;lt;=0.001&lt;br /&gt;
        limiteC=y_(i+1)&lt;br /&gt;
        break&lt;br /&gt;
    end&lt;br /&gt;
end&lt;br /&gt;
for i=1:length(t1)-1&lt;br /&gt;
    y_(i+1)=y_(i)+h*(k1*(a0-y_(i))*(b0-y_(i)));    &lt;br /&gt;
    a_(i+1)=a0-y_(i+1);&lt;br /&gt;
    diferencia2=a_(i+1)-a_(i);&lt;br /&gt;
    if abs(diferencia2)&amp;lt;=0.001&lt;br /&gt;
        limiteA=a_(i+1)&lt;br /&gt;
        break&lt;br /&gt;
    end&lt;br /&gt;
end&lt;br /&gt;
for i=1:length(t1)-1&lt;br /&gt;
    y_(i+1)=y_(i)+h*(k1*(a0-y_(i))*(b0-y_(i)));    &lt;br /&gt;
    b_(i+1)=b0-y_(i+1);&lt;br /&gt;
    diferencia3=b_(i+1)-b_(i);&lt;br /&gt;
    if abs(diferencia3)&amp;lt;=0.001&lt;br /&gt;
        limiteB=b_(i+1)&lt;br /&gt;
        break&lt;br /&gt;
    end&lt;br /&gt;
end&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
Que nos devuelve unos valores de las concentraciones para el límite de:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\lim A=2,0036≈2 mol/L&amp;lt;/math&amp;gt;:     &lt;br /&gt;
&amp;lt;math&amp;gt;\lim B=0,0036≈0mol/L&amp;lt;/math&amp;gt;:         &lt;br /&gt;
&amp;lt;math&amp;gt;\lim C=0,9964≈1mol/L&amp;lt;/math&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
Lo cual es lógico, ya que &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;B&amp;lt;/math&amp;gt; se combinan en una proporción de 1:1, luego &amp;lt;math&amp;gt;B&amp;lt;/math&amp;gt;, que tiene una concentración inicial de &amp;lt;math&amp;gt;b_0&amp;lt;/math&amp;gt;=1, será el reactivo limitante (el que desaparecerá por completo), mientras que &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt;, con &amp;lt;math&amp;gt;a_0&amp;lt;/math&amp;gt;=3, acabará con una concentración molar final igual a 2, y &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt;, del que no habia nada,alcanza una concentraccion de &amp;lt;math&amp;gt;1mol/L&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
= Método del Trapecio y Método de Runge-Kutta=&lt;br /&gt;
&lt;br /&gt;
A continuación, para obtener con más precisión las representaciones gráficas de las respectivas concentraciones, se opta por utilizar los métodos de los &amp;lt;math&amp;gt;Trapecios&amp;lt;/math&amp;gt; (segundo orden) y de &amp;lt;math&amp;gt;Runge-Kutta&amp;lt;/math&amp;gt; (cuarto orden). Desgraciadamente, no es posible comparar los errores cometidos por cada método con la expresión real de la concentración de C, ya que la ecuación diferencial no es de fácil resolución analítica, luego resulta imposible alcanzar una expresión explícita de la concentración en términos de nuestros datos conocidos; &amp;lt;math&amp;gt;a_0&amp;lt;/math&amp;gt;,&amp;lt;math&amp;gt;b_0&amp;lt;/math&amp;gt;,&amp;lt;math&amp;gt;k_1&amp;lt;/math&amp;gt;,&amp;lt;math&amp;gt;t (tiempo)&amp;lt;/math&amp;gt;.  Sin embargo, podemos confiar con bastante seguridad en el método sobre todo de &amp;lt;math&amp;gt;Runge-Kutta&amp;lt;/math&amp;gt;, debido a su cuarto orden. &lt;br /&gt;
&lt;br /&gt;
Para los trapecios, al ser un método implícito, es necesario despejar la componente &amp;lt;math&amp;gt;y_{n+1}&amp;lt;/math&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;y_{n+1}=\frac{(1+\frac{h}{2}∙k_1∙(a_0+b_0))-\sqrt{(1+\frac{h}{2}∙k_1∙(a_0+b_0))^2 -2∙h∙k_1(y_n+\frac{h}{2}∙k_1∙(a_0-y_n )∙(b_0-y_n)+\frac{h}{2}∙k_1∙a_0∙b_0) }}{k_1∙h}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Cabe destacar que este programa parte de los datos ya establecidos en el programa de Euler para '''t0, tN, y0, a0, b0, k1 y h''':&lt;br /&gt;
{{matlab|codigo= &lt;br /&gt;
%Trapecios&lt;br /&gt;
y2=zeros(1,length(t)); &lt;br /&gt;
a2=y2;&lt;br /&gt;
b2=y2;&lt;br /&gt;
y2(1)=y0;&lt;br /&gt;
a2(1)=a0;&lt;br /&gt;
b2(1)=b0;&lt;br /&gt;
for i=1:length(t)-1&lt;br /&gt;
    y2(i+1)=((1+0.5*h*k1*(a0+b0))-sqrt((1+0.5*h*k1*(a0+b0))^2-2*h*k1*(y2(i)+0.5*h*k1*(a0-y2(i))*(b0-y2(i))+0.5*h*k1*a0*b0)))/(k1*h);&lt;br /&gt;
    a2(i+1)=a0-y2(i+1);&lt;br /&gt;
    b2(i+1)=b0-y2(i+1);&lt;br /&gt;
end&lt;br /&gt;
 &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
%Runge-Kutta&lt;br /&gt;
y3=zeros(1,length(t)); &lt;br /&gt;
a3=y3;&lt;br /&gt;
b3=y3;&lt;br /&gt;
y3(1)=y0;&lt;br /&gt;
a3(1)=a0;&lt;br /&gt;
b3(1)=b0;&lt;br /&gt;
for i=1:length(t)-1 &lt;br /&gt;
    r1=k1*(a0-y3(i))*(b0-y3(i));&lt;br /&gt;
    r2=k1*(a0-y3(i)-0.5*r1*h)*(b0-y3(i)-0.5*r1*h);&lt;br /&gt;
    r3=k1*(a0-y3(i)-0.5*r2*h)*(b0-y3(i)-0.5*r2*h);&lt;br /&gt;
    r4=k1*(a0-y3(i)-r3*h)*(b0-y3(i)-r3*h);&lt;br /&gt;
    y3(i+1)=y3(i)+h/6*(r1+2*r2+2*r3+r4);&lt;br /&gt;
    a3(i+1)=a0-y3(i+1);&lt;br /&gt;
    b3(i+1)=b0-y3(i+1);&lt;br /&gt;
end&lt;br /&gt;
%se pintan las dos, en azul las soluciones de los Trapecios, y en negro las&lt;br /&gt;
%de Runge-Kutta. &lt;br /&gt;
figure(2)&lt;br /&gt;
hold on&lt;br /&gt;
plot(t,y2)&lt;br /&gt;
plot(t,a2)&lt;br /&gt;
plot(t,b2)&lt;br /&gt;
plot(t,y3,'k')&lt;br /&gt;
plot(t,a3,'k')&lt;br /&gt;
plot(t,b3,'k')&lt;br /&gt;
hold off&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
Que proporciona el resultado que se puede observar en la primera gráfica adjunta. Como podemos ver, es prácticamente indistinguible una gráfica de la otra. Sin embargo, si la juntamos con las gráficas proporcionadas por el método de Euler, que se representa ahora en rojo, la diferencia es palpable (ver gráfica 2), lo cual evidencia la peor precisión del método de Euler.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:4trapeciokung.jpeg|500px|miniaturadeimagen|center|Reacción compleja]]&lt;br /&gt;
&lt;br /&gt;
[[Archivo:4comparacion.jpeg|500px|miniaturadeimagen|center|Gráfico 2]]&lt;br /&gt;
&lt;br /&gt;
=Reacción consecutiva=&lt;br /&gt;
&lt;br /&gt;
Consideremos ahora que se produce una reacción consecutiva de la forma.: &lt;br /&gt;
&lt;br /&gt;
                                                                   &amp;lt;math&amp;gt;A + B → k_1C → k_2D&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
De tal modo que los reactivos &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;B&amp;lt;/math&amp;gt; se combinan en la proporción 1:1 para formar compuesto &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt;, el cual, a su vez, se va descomponiendo para formar compuesto &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt;. Al igual que se ha hecho antes al analizar las otras reacciones, se considerará que se cumple la ley de acción de masas. Es decir, la velocidad con la que se forma compuesto &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; es proporcional a las concentraciones existentes de &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt; y de &amp;lt;math&amp;gt;B&amp;lt;/math&amp;gt; y del mismo modo la de formación de la sustancia &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; lo es a la concentración de &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; que se ha ido formando.&lt;br /&gt;
&lt;br /&gt;
Esta reacción consecutiva está representada por el siguiente problema de valor inicial:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;&lt;br /&gt;
   \left . &lt;br /&gt;
      \begin{matrix} &lt;br /&gt;
         y'_1(t)={k_{1}}({a_{0}}-y_1(t))({b_{0}}-y_1(t))\\&lt;br /&gt;
         y'_2(t)={k_{2}}(y_1(t)-y_2(t))\\&lt;br /&gt;
y_1(0)=0\\y_2(0)=0&lt;br /&gt;
      \end{matrix}&lt;br /&gt;
   \right \}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
Donde &amp;lt;math&amp;gt;a_0&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;b_0&amp;lt;/math&amp;gt; representan las concentraciones iniciales de &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;B&amp;lt;/math&amp;gt; respectivamente, &amp;lt;math&amp;gt;k_1&amp;lt;/math&amp;gt; es la constante de proporcionalidad que rige la primera reacción y &amp;lt;math&amp;gt;k_2&amp;lt;/math&amp;gt; la que rige la segunda reacción o reacción consecutiva. &amp;lt;math&amp;gt;y_1’(t)&amp;lt;/math&amp;gt; e  &amp;lt;math&amp;gt;y_2’(t)&amp;lt;/math&amp;gt; representan las velocidades de las reacciones, es decir, las velocidades con que se forman los productos &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt;. &amp;lt;math&amp;gt;y_2(t)&amp;lt;/math&amp;gt; representa la concentración del producto &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; pero es importante apreciar que en este caso &amp;lt;math&amp;gt;y_1(t)&amp;lt;/math&amp;gt; no nos da el valor de la concentración de &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; directamente, sino que ésta será &amp;lt;math&amp;gt;y_1(t)&amp;lt;/math&amp;gt;- &amp;lt;math&amp;gt;y_2(t)&amp;lt;/math&amp;gt;, la cantidad que se forma en la primera reacción menos la que se emplea para formar el producto &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; en la segunda.&lt;br /&gt;
&lt;br /&gt;
Este problema se va a resolver para dos casos diferentes. Uno en el cual se considera que la segunda reacción es más rápida que la primera, lo que supone tomar un valor de la constante &amp;lt;math&amp;gt;k_2&amp;lt;/math&amp;gt;  mayor que &amp;lt;math&amp;gt;k_1&amp;lt;/math&amp;gt;. Y otro en el cual se considera que es más lenta, lo que implica que &amp;lt;math&amp;gt;k_2&amp;lt;/math&amp;gt; es menor que &amp;lt;math&amp;gt;k_1&amp;lt;/math&amp;gt;. Concretamente vamos a tomar los siguientes valores para resolver el problema numéricamente; &amp;lt;math&amp;gt;a_0&amp;lt;/math&amp;gt;=3 ,  &amp;lt;math&amp;gt;b_0&amp;lt;/math&amp;gt;=1, &amp;lt;math&amp;gt;k_1&amp;lt;/math&amp;gt;=1,  &amp;lt;math&amp;gt;k_2&amp;lt;/math&amp;gt;=5, &amp;lt;math&amp;gt;k_2&amp;lt;/math&amp;gt;=1/5, .En ambos casos se resuelve para los primeros 10 segundos.&lt;br /&gt;
&lt;br /&gt;
==La reacción D es más rápida que la reacción C==&lt;br /&gt;
CASO    &amp;lt;math&amp;gt;k_1=5  &amp;lt;/math&amp;gt;   '''h=0.1''' &lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
&lt;br /&gt;
%datos&lt;br /&gt;
y0=[0;0];&lt;br /&gt;
z0=[0;0];&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;
%matriz de las soluciones&lt;br /&gt;
y=zeros(2,length(t)); %euler&lt;br /&gt;
y(:,1)=y0;&lt;br /&gt;
 &lt;br /&gt;
z=zeros(2,length(t)); %runge-kutta&lt;br /&gt;
z(:,1)=y0;&lt;br /&gt;
 &lt;br /&gt;
for i=1:length(t)-1&lt;br /&gt;
 %euler&lt;br /&gt;
 y(:,i+1)=y(:,i)+h*[1*(3-y(1,i))*(1-y(1,i)); 5*(y(1,i)-y(2,i))];&lt;br /&gt;
 %runge-kutta&lt;br /&gt;
 K1=[1*(3-z(1,i))*(1-z(1,i)); 5*(z(1,i)-z(2,i))];&lt;br /&gt;
 K2=[1*(3-(z(1,i)+h/2*K1(1)))*(1-(z(1,i)+h/2*K1(1))); 5*((y(1,i)+h/2*K1(2))-(y(2,i)+h/2*K1(2)))];&lt;br /&gt;
 K3=[1*(3-(z(1,i)+h/2*K2(1)))*(1-(z(1,i)+h/2*K2(1))); 5*((y(1,i)+h/2*K2(2))-(y(2,i)+h/2*K2(2)))];&lt;br /&gt;
 K4=[1*(3-(z(1,i)+h*K3(1)))*(1-(z(1,i)+h*K3(1))); 5*((y(1,i)+h*K3(2))-(y(2,i)+h*K3(2)))];&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;
% se calcula la concentración de C=y1t)-y2(t)&lt;br /&gt;
Ay=y(1,:)-y(2,:); %euler&lt;br /&gt;
Az=z(1,:)-z(2,:); %runge-kutta&lt;br /&gt;
 &lt;br /&gt;
figure(1)&lt;br /&gt;
hold on&lt;br /&gt;
plot(t,Ay) %concentración de C por euler&lt;br /&gt;
plot(t,y(2,:),'r') %concentración de D por euler&lt;br /&gt;
plot(t,Az,'k') %concentración de C por runge-kutta&lt;br /&gt;
plot(t,z(2,:),'g') %concentración de D por runge-kutta&lt;br /&gt;
legend('concentración de C por euler','concentración de D por euler','concentración de C por runge-kutta','concentración de D por runge-kutta','Location','best')&lt;br /&gt;
hold off&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:graficoa.jpeg|500px|miniaturadeimagen|center|Reacción compleja]]&lt;br /&gt;
&lt;br /&gt;
Se observa que en en los primeros instantes aumentan las concentraciones de &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; aumentan sus concentraciones. Antes de que pase 1 segundo, la concentración &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; alcanza un máximo (de unos 0.3 molar) y va disminuyendo progresivamente hasta alcanzar un valor de 0 molar. La concentración &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; sigue creciendo hasta llegar a 1 molar. Una vez que tanto &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; como &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; alcanzan estos valores, se estabiliza la reacción. &lt;br /&gt;
&lt;br /&gt;
Como hemos impuesto que la reacción &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; es más rápida que &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt;, se observa que &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; empieza creciendo más rápidamente, pero como reacciona más despacio que &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; su concentración disminuye progresivamente, mientras que la de &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; aumenta.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''CASO'''  &amp;lt;math&amp;gt;k_2=5  &amp;lt;/math&amp;gt;   '''h=0.3''' &lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
&lt;br /&gt;
%datos&lt;br /&gt;
y0=[0;0];&lt;br /&gt;
z0=[0;0];&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=10;&lt;br /&gt;
h=0.3;&lt;br /&gt;
 &lt;br /&gt;
%variable independiente t&lt;br /&gt;
t=t0:h:tN;&lt;br /&gt;
 &lt;br /&gt;
%matriz de las soluciones&lt;br /&gt;
y=zeros(2,length(t)); %euler&lt;br /&gt;
y(:,1)=y0;&lt;br /&gt;
 &lt;br /&gt;
z=zeros(2,length(t)); %runge-kutta&lt;br /&gt;
z(:,1)=y0;&lt;br /&gt;
 &lt;br /&gt;
for i=1:length(t)-1&lt;br /&gt;
 %euler&lt;br /&gt;
 y(:,i+1)=y(:,i)+h*[1*(3-y(1,i))*(1-y(1,i)); 5*(y(1,i)-y(2,i))];&lt;br /&gt;
 %runge-kutta&lt;br /&gt;
 K1=[1*(3-z(1,i))*(1-z(1,i)); 5*(z(1,i)-z(2,i))];&lt;br /&gt;
 K2=[1*(3-(z(1,i)+h/2*K1(1)))*(1-(z(1,i)+h/2*K1(1))); 5*((y(1,i)+h/2*K1(2))-(y(2,i)+h/2*K1(2)))];&lt;br /&gt;
 K3=[1*(3-(z(1,i)+h/2*K2(1)))*(1-(z(1,i)+h/2*K2(1))); 5*((y(1,i)+h/2*K2(2))-(y(2,i)+h/2*K2(2)))];&lt;br /&gt;
 K4=[1*(3-(z(1,i)+h*K3(1)))*(1-(z(1,i)+h*K3(1))); 5*((y(1,i)+h*K3(2))-(y(2,i)+h*K3(2)))];&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;
% se calcula la concentración de C=y1t)-y2(t)&lt;br /&gt;
Ay=y(1,:)-y(2,:); %euler&lt;br /&gt;
Az=z(1,:)-z(2,:); %runge-kutta&lt;br /&gt;
 &lt;br /&gt;
figure(1)&lt;br /&gt;
hold on&lt;br /&gt;
plot(t,Ay) %concentración de C por euler&lt;br /&gt;
plot(t,y(2,:),'r') %concentración de D por euler&lt;br /&gt;
plot(t,Az,'k') %concentración de C por runge-kutta&lt;br /&gt;
plot(t,z(2,:),'g') %concentración de D por runge-kutta&lt;br /&gt;
legend('concentración de C por euler','concentración de D por euler','concentración de C por runge-kutta','concentración de D por runge-kutta','Location','best')&lt;br /&gt;
hold off&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:graficob.jpeg|500px|miniaturadeimagen|center|Reacción compleja]]&lt;br /&gt;
&lt;br /&gt;
Repetimos el programa pero para un tamaño de paso mayor, de '''h=0.3''', y observamos que no  es suficientemente preciso, sobre todo al principio, no se puede analizar bien lo que está pasando en la reacción.&lt;br /&gt;
&lt;br /&gt;
==La reacción D es más lenta que la reacción C==&lt;br /&gt;
&lt;br /&gt;
CASO  &amp;lt;math&amp;gt;k_1 &amp;lt;/math&amp;gt;=1,   &amp;lt;math&amp;gt;k_2 &amp;lt;/math&amp;gt;=1/5&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
&lt;br /&gt;
%datos&lt;br /&gt;
y0=[0;0];&lt;br /&gt;
z0=[0;0];&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;
%matriz de las soluciones&lt;br /&gt;
y=zeros(2,length(t)); %euler&lt;br /&gt;
y(:,1)=y0;&lt;br /&gt;
 &lt;br /&gt;
z=zeros(2,length(t)); %runge-kutta&lt;br /&gt;
z(:,1)=y0;&lt;br /&gt;
 &lt;br /&gt;
for i=1:length(t)-1&lt;br /&gt;
 %euler&lt;br /&gt;
 y(:,i+1)=y(:,i)+h*[1*(3-y(1,i))*(1-y(1,i)); 1/5*(y(1,i)-y(2,i))];&lt;br /&gt;
 %runge-kutta&lt;br /&gt;
 K1=[1*(3-z(1,i))*(1-z(1,i)); 1/5*(z(1,i)-z(2,i))];&lt;br /&gt;
 K2=[1*(3-(z(1,i)+h/2*K1(1)))*(1-(z(1,i)+h/2*K1(1))); 1/5*((y(1,i)+h/2*K1(2))-(y(2,i)+h/2*K1(2)))];&lt;br /&gt;
 K3=[1*(3-(z(1,i)+h/2*K2(1)))*(1-(z(1,i)+h/2*K2(1))); 1/5*((y(1,i)+h/2*K2(2))-(y(2,i)+h/2*K2(2)))];&lt;br /&gt;
 K4=[1*(3-(z(1,i)+h*K3(1)))*(1-(z(1,i)+h*K3(1))); 1/5*((y(1,i)+h*K3(2))-(y(2,i)+h*K3(2)))];&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;
% se calcula la concentración de C=y1t)-y2(t)&lt;br /&gt;
Ay=y(1,:)-y(2,:); %euler&lt;br /&gt;
Az=z(1,:)-z(2,:); %runge-kutta&lt;br /&gt;
 &lt;br /&gt;
figure(1)&lt;br /&gt;
hold on&lt;br /&gt;
plot(t,Ay) %concentración de C por euler&lt;br /&gt;
plot(t,y(2,:),'r') %concentración de D por euler&lt;br /&gt;
plot(t,Az,'k') %concentración de C por runge-kutta&lt;br /&gt;
plot(t,z(2,:),'g') %concentración de D por runge-kutta&lt;br /&gt;
legend('concentración de C por euler','concentración de D por euler','concentración de C por runge-kutta','concentración de D por runge-kutta','Location','best')&lt;br /&gt;
hold off&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:graficoc.jpeg|500px|miniaturadeimagen|center|Reacción compleja]]&lt;br /&gt;
&lt;br /&gt;
Si ahora imponemos que la reacción  &amp;lt;math&amp;gt;C &amp;lt;/math&amp;gt; es más rápida que  &amp;lt;math&amp;gt;D &amp;lt;/math&amp;gt;, obtenemos lo siguiente. Se parece a la gráfica que obtuvimos en el programa anterior, pero  más extendida en el tiempo, más lenta.  &amp;lt;math&amp;gt;C &amp;lt;/math&amp;gt; alcanza una concentración máxima de unos 0.8 molar antes de empezar a decrecer a medida que avanza el tiempo y acercándose a un valor de '''0''' molar.  &amp;lt;math&amp;gt;D &amp;lt;/math&amp;gt; crece más lentamente que en la gráfica anterior, pero se aproxima al mismo valor, '''1''' molar.&lt;br /&gt;
Se observa que aunque hagamos la reacción  &amp;lt;math&amp;gt;C &amp;lt;/math&amp;gt; más rápida, tenemos las mismas concentraciones finales, pero tardan más tiempo en obtenerse, ya que la reacción tarda más en estabilizarse.&lt;br /&gt;
&lt;br /&gt;
&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>Joseva</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Reacciones_complejas_(Grupo_D1)&amp;diff=27196</id>
		<title>Reacciones complejas (Grupo D1)</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Reacciones_complejas_(Grupo_D1)&amp;diff=27196"/>
				<updated>2015-03-05T23:10:51Z</updated>
		
		<summary type="html">&lt;p&gt;Joseva: /* Concentración del reactivo C a lo largo del tiempo en un proceso reversible */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{ TrabajoED | Reacciones complejas (Grupo D1) | [[:Categoría:Ecuaciones Diferenciales|Ecuaciones Diferenciales]]|[[:Categoría:ED14/15|Curso 2014-15]] | Rincón Crespo, Kevin&lt;br /&gt;
&lt;br /&gt;
Rodríguez Gómez, Javier&lt;br /&gt;
&lt;br /&gt;
Sans Jiménez, Alejandro&lt;br /&gt;
&lt;br /&gt;
Sesto Muñoz, María Victoria&lt;br /&gt;
&lt;br /&gt;
Vallejo Asín, José Manuel &lt;br /&gt;
&lt;br /&gt;
Villarino Redondo, Álvaro }}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=Introducción=&lt;br /&gt;
Se considera una reacción química irreversible en una solución bien mezclada. Supondremos que la reacción ocurre para un volumen y temperatura constantes. Al inicio se encuentran dos reactivos &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;B&amp;lt;/math&amp;gt;, que van formando un producto &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; en lo que se conoce como una reacción bimolecular, es decir, una molécula de &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt; y una de &amp;lt;math&amp;gt;B&amp;lt;/math&amp;gt; producen una de &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt;.: &lt;br /&gt;
                                                                     &amp;lt;math&amp;gt;A + B → C&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Supondremos también que se satisface la ley de acción de masas, que establece que la velocidad de reacción es proporcional al producto de las concentraciones de los reactivos.&lt;br /&gt;
&lt;br /&gt;
=Concentración del reactivo &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; a lo largo del tiempo=&lt;br /&gt;
En primer lugar, suponiendo que la reacción es irreversible, es decir, que &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; no puede volver a formar &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;B&amp;lt;/math&amp;gt;, se puede expresar la situación mediante el siguiente problema de valor inicial, cuando t&amp;gt;0.:&lt;br /&gt;
   &amp;lt;math&amp;gt;&lt;br /&gt;
   \left . &lt;br /&gt;
      \begin{matrix} &lt;br /&gt;
         y'(t)={k_{1}}({a_{0}}-y(t))({b_{0}}-y(t))=0\\&lt;br /&gt;
         y(0)=0&lt;br /&gt;
      \end{matrix}&lt;br /&gt;
   \right \}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Donde &amp;lt;math&amp;gt; {a_{0}}&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;{b_{0}}&amp;lt;/math&amp;gt; representan las concentraciones iniciales de '''A''' y '''B''' respectivamente y &amp;lt;math&amp;gt;{k_{1}}&amp;lt;/math&amp;gt; es la constante de proporcionalidad que indica la ley de acción de masas. &amp;lt;math&amp;gt;y’(t)&amp;lt;/math&amp;gt; representa la velocidad de reacción, es decir, la velocidad con que se forma el producto &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; ; mientras que la solución de la ecuación diferencial, &amp;lt;math&amp;gt;y(t)&amp;lt;/math&amp;gt; , representa la concentración de &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt;, la cantidad de compuesto que se ha formado. Para comprobar que la solución de este problema de Cauchy es única, comenzamos definiendo.:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;math&amp;gt;f(t,y)={k_{1}}({a_{0}}-y(t))({b_{0}}-y(t))=0,   t&amp;gt;0 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Observamos que &amp;lt;math&amp;gt;f(t,y)&amp;lt;/math&amp;gt; es continua en el intervalo &amp;lt;math&amp;gt; I=(0,∞)∩B((0,0),r&amp;gt;0)&amp;lt;/math&amp;gt;, por lo que ya aseguramos la existencia de al menos una solución. Examinando la derivada parcial.:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\frac{∂f}{∂y}=k_1(-a_0-b_0+2y)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Se deduce que al ser un polinomio no va a haber problemas de continuidad para ninguna bola. De esta forma, podemos asegurar que existe una única solución.&lt;br /&gt;
&lt;br /&gt;
==Concentración del reactivo C a lo largo del tiempo en un proceso reversible==&lt;br /&gt;
&lt;br /&gt;
Ahora bien, ¿qué pasaría si la reacción fuese reversible? Con esto lo que queremos indicar es que además de formarse  &amp;lt;math&amp;gt;C &amp;lt;/math&amp;gt;, este también se descompone de nuevo en  &amp;lt;math&amp;gt;A &amp;lt;/math&amp;gt; y  &amp;lt;math&amp;gt;B &amp;lt;/math&amp;gt;. Por lo tanto, nos quedaría una ecuación diferencial con la siguiente forma, cuando &amp;lt;math&amp;gt;t&amp;gt;0 &amp;lt;/math&amp;gt;. :&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; y'(t)={k_{1}}({a_{0}}-y(t))({b_{0}}-y(t))-Cy(t)&amp;lt;/math&amp;gt;  &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Si nos fijamos, la modificación es sencillamente restar  &amp;lt;math&amp;gt;y(t) &amp;lt;/math&amp;gt; multiplicada por una constante, la cual refleja qué porcentaje de  &amp;lt;math&amp;gt;C &amp;lt;/math&amp;gt; se va descomponiendo a medida que se da, simultáneamente, la reacción  &amp;lt;math&amp;gt;A + B → C &amp;lt;/math&amp;gt;. Sin embargo, esta constante no puede tener cualquier valor, ya que en una reacción se cumple la conservación de masa. Por ello, a  &amp;lt;math&amp;gt;C &amp;lt;/math&amp;gt; le asociaremos el siguiente dominio::&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;C∈(0,1)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Obsérvese que  &amp;lt;math&amp;gt;C &amp;lt;/math&amp;gt; tiene que ser mayor que 0 para que sea reversible, pero al mismo tiempo inferior que 1, ya que si no se estaría descomponiendo más compuesto  &amp;lt;math&amp;gt;C &amp;lt;/math&amp;gt; del que realmente se ha formado, en otras palabras, estaría apareciendo masa de la nada.&lt;br /&gt;
&lt;br /&gt;
=Método de Euler=&lt;br /&gt;
&lt;br /&gt;
Una vez llegados a este punto, se procede a ver una interpretación gráfica de la reacción. Para ello, se refleja en la gráfica (en un intervalo de 2 segundos), cómo varían las concentraciones tanto de &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt; (&amp;lt;math&amp;gt;a_0&amp;lt;/math&amp;gt;=3 mol/L) y &amp;lt;math&amp;gt;B&amp;lt;/math&amp;gt; (&amp;lt;math&amp;gt;b_0&amp;lt;/math&amp;gt;=1 mol/L) como de &amp;lt;math&amp;gt; C&amp;lt;/math&amp;gt;, para una &amp;lt;math&amp;gt;k_1&amp;lt;/math&amp;gt;=1 mol/s. Se comienza, por el momento, aplicando el método de Euler. Posteriormente se utilizarán métodos más precisos.&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo= &lt;br /&gt;
% Euler&lt;br /&gt;
clear all&lt;br /&gt;
% datos del problema&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=2;&lt;br /&gt;
y0=0;&lt;br /&gt;
h=0.1;&lt;br /&gt;
k1=1;&lt;br /&gt;
a0=3;&lt;br /&gt;
b0=1;&lt;br /&gt;
% Definimos la variable independiente&lt;br /&gt;
t=t0:h:tN;&lt;br /&gt;
% Guardamos los valores de la solución aproximada en el vector &amp;quot;y1&amp;quot; y&lt;br /&gt;
% establecemos los vectores de concentraciones A y B&lt;br /&gt;
y1=zeros(1,length(t)); &lt;br /&gt;
y1(1)=y0;&lt;br /&gt;
a1=zeros(1,length(t));&lt;br /&gt;
a1(1)=a0;&lt;br /&gt;
b1=zeros(1,length(t));&lt;br /&gt;
b1(1)=b0;&lt;br /&gt;
% A continuación, calculamos las componentes de los vectores y1, a y b&lt;br /&gt;
for i=1:length(t)-1&lt;br /&gt;
    y1(i+1)=y1(i)+h*(k1*(a0-y1(i))*(b0-y1(i)));    %Euler&lt;br /&gt;
    a1(i+1)=a0-y1(i+1); % evolución de la concentración de A&lt;br /&gt;
    b1(i+1)=b0-y1(i+1); % evolución de la concentración de B&lt;br /&gt;
end&lt;br /&gt;
%grafico &lt;br /&gt;
figure(1)&lt;br /&gt;
hold on&lt;br /&gt;
plot(t,y1,'g')&lt;br /&gt;
plot(t,a1,'r')&lt;br /&gt;
plot(t,b1,'b')&lt;br /&gt;
legend('concentración de C','concentración de A','concentración de B','location','best')&lt;br /&gt;
hold off &lt;br /&gt;
%en verde se muestra la concentración de C, en rojo la de A, y en azul la de B&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Archivo:3euler.jpeg|500px|miniaturadeimagen|center|Reacción compleja]]&lt;br /&gt;
&lt;br /&gt;
Aunque con observar los resultados ya podemos decir con casi absoluta seguridad cuáles son los límites de las concentraciones de cada reactivo &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;B&amp;lt;/math&amp;gt; y del producto &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt;, se ha diseñado un programa que, mediante diferencia de valores sucesivos de la variable &amp;lt;math&amp;gt;y(t)&amp;lt;/math&amp;gt;, nos devuelve el valor de la función cuando dicha diferencia es muy pequeña '''(se ha puesto una diferencia de 0.001)''', es decir, cuando tenemos una asíntota al tender &amp;lt;math&amp;gt;t→∞&amp;lt;/math&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
%Estudio de las asíntotas&lt;br /&gt;
t1=t0:h:10;%se aumenta la longitud de t, y se estima que se alcanzarán las asíntotas antes de t=10&lt;br /&gt;
y_=zeros(1,length(t1)); %se define un vector y_ idéntico a y1 pero con t hasta 10&lt;br /&gt;
a_=y_;&lt;br /&gt;
b_=y_;&lt;br /&gt;
y_(1)=y0;&lt;br /&gt;
a_(1)=a0;&lt;br /&gt;
b_(1)=b0;&lt;br /&gt;
for i=1:length(t1)-1&lt;br /&gt;
    y_(i+1)=y_(i)+h*(k1*(a0-y_(i))*(b0-y_(i)));&lt;br /&gt;
    diferencia=y_(i+1)-y_(i);&lt;br /&gt;
    if abs(diferencia)&amp;lt;=0.001&lt;br /&gt;
        limiteC=y_(i+1)&lt;br /&gt;
        break&lt;br /&gt;
    end&lt;br /&gt;
end&lt;br /&gt;
for i=1:length(t1)-1&lt;br /&gt;
    y_(i+1)=y_(i)+h*(k1*(a0-y_(i))*(b0-y_(i)));    &lt;br /&gt;
    a_(i+1)=a0-y_(i+1);&lt;br /&gt;
    diferencia2=a_(i+1)-a_(i);&lt;br /&gt;
    if abs(diferencia2)&amp;lt;=0.001&lt;br /&gt;
        limiteA=a_(i+1)&lt;br /&gt;
        break&lt;br /&gt;
    end&lt;br /&gt;
end&lt;br /&gt;
for i=1:length(t1)-1&lt;br /&gt;
    y_(i+1)=y_(i)+h*(k1*(a0-y_(i))*(b0-y_(i)));    &lt;br /&gt;
    b_(i+1)=b0-y_(i+1);&lt;br /&gt;
    diferencia3=b_(i+1)-b_(i);&lt;br /&gt;
    if abs(diferencia3)&amp;lt;=0.001&lt;br /&gt;
        limiteB=b_(i+1)&lt;br /&gt;
        break&lt;br /&gt;
    end&lt;br /&gt;
end&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
Que nos devuelve unos valores de las concentraciones para el límite de:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\lim A=2,0036≈2 mol/L&amp;lt;/math&amp;gt;:     &lt;br /&gt;
&amp;lt;math&amp;gt;\lim B=0,0036≈0mol/L&amp;lt;/math&amp;gt;:         &lt;br /&gt;
&amp;lt;math&amp;gt;\lim C=0,9964≈1mol/L&amp;lt;/math&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
Lo cual es lógico, ya que &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;B&amp;lt;/math&amp;gt; se combinan en una proporción de 1:1, luego &amp;lt;math&amp;gt;B&amp;lt;/math&amp;gt;, que tiene una concentración inicial de &amp;lt;math&amp;gt;b_0&amp;lt;/math&amp;gt;=1, será el reactivo limitante (el que desaparecerá por completo), mientras que &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt;, con &amp;lt;math&amp;gt;a_0&amp;lt;/math&amp;gt;=3, acabará con una concentración molar final igual a 2, y &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt;, del que no habia nada,alcanza una concentraccion de &amp;lt;math&amp;gt;1mol/L&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
= Método del Trapecio y Método de Runge-Kutta=&lt;br /&gt;
&lt;br /&gt;
A continuación, para obtener con más precisión las representaciones gráficas de las respectivas concentraciones, se opta por utilizar los métodos de los &amp;lt;math&amp;gt;Trapecios&amp;lt;/math&amp;gt; (segundo orden) y de &amp;lt;math&amp;gt;Runge-Kutta&amp;lt;/math&amp;gt; (cuarto orden). Desgraciadamente, no es posible comparar los errores cometidos por cada método con la expresión real de la concentración de C, ya que la ecuación diferencial no es de fácil resolución analítica, luego resulta imposible alcanzar una expresión explícita de la concentración en términos de nuestros datos conocidos; &amp;lt;math&amp;gt;a_0&amp;lt;/math&amp;gt;,&amp;lt;math&amp;gt;b_0&amp;lt;/math&amp;gt;,&amp;lt;math&amp;gt;k_1&amp;lt;/math&amp;gt;,&amp;lt;math&amp;gt;t (tiempo)&amp;lt;/math&amp;gt;.  Sin embargo, podemos confiar con bastante seguridad en el método sobre todo de &amp;lt;math&amp;gt;Runge-Kutta&amp;lt;/math&amp;gt;, debido a su cuarto orden. &lt;br /&gt;
&lt;br /&gt;
Para los trapecios, al ser un método implícito, es necesario despejar la componente &amp;lt;math&amp;gt;y_{n+1}&amp;lt;/math&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;y_{n+1}=\frac{(1+\frac{h}{2}∙k_1∙(a_0+b_0))-\sqrt{(1+\frac{h}{2}∙k_1∙(a_0+b_0))^2 -2∙h∙k_1(y_n+\frac{h}{2}∙k_1∙(a_0-y_n )∙(b_0-y_n)+\frac{h}{2}∙k_1∙a_0∙b_0) }}{k_1∙h}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Cabe destacar que este programa parte de los datos ya establecidos en el programa de Euler para '''t0, tN, y0, a0, b0, k1 y h''':&lt;br /&gt;
{{matlab|codigo= &lt;br /&gt;
%Trapecios&lt;br /&gt;
y2=zeros(1,length(t)); &lt;br /&gt;
a2=y2;&lt;br /&gt;
b2=y2;&lt;br /&gt;
y2(1)=y0;&lt;br /&gt;
a2(1)=a0;&lt;br /&gt;
b2(1)=b0;&lt;br /&gt;
for i=1:length(t)-1&lt;br /&gt;
    y2(i+1)=((1+0.5*h*k1*(a0+b0))-sqrt((1+0.5*h*k1*(a0+b0))^2-2*h*k1*(y2(i)+0.5*h*k1*(a0-y2(i))*(b0-y2(i))+0.5*h*k1*a0*b0)))/(k1*h);&lt;br /&gt;
    a2(i+1)=a0-y2(i+1);&lt;br /&gt;
    b2(i+1)=b0-y2(i+1);&lt;br /&gt;
end&lt;br /&gt;
 &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
%Runge-Kutta&lt;br /&gt;
y3=zeros(1,length(t)); &lt;br /&gt;
a3=y3;&lt;br /&gt;
b3=y3;&lt;br /&gt;
y3(1)=y0;&lt;br /&gt;
a3(1)=a0;&lt;br /&gt;
b3(1)=b0;&lt;br /&gt;
for i=1:length(t)-1 &lt;br /&gt;
    r1=k1*(a0-y3(i))*(b0-y3(i));&lt;br /&gt;
    r2=k1*(a0-y3(i)-0.5*r1*h)*(b0-y3(i)-0.5*r1*h);&lt;br /&gt;
    r3=k1*(a0-y3(i)-0.5*r2*h)*(b0-y3(i)-0.5*r2*h);&lt;br /&gt;
    r4=k1*(a0-y3(i)-r3*h)*(b0-y3(i)-r3*h);&lt;br /&gt;
    y3(i+1)=y3(i)+h/6*(r1+2*r2+2*r3+r4);&lt;br /&gt;
    a3(i+1)=a0-y3(i+1);&lt;br /&gt;
    b3(i+1)=b0-y3(i+1);&lt;br /&gt;
end&lt;br /&gt;
%se pintan las dos, en azul las soluciones de los Trapecios, y en negro las&lt;br /&gt;
%de Runge-Kutta. &lt;br /&gt;
figure(2)&lt;br /&gt;
hold on&lt;br /&gt;
plot(t,y2)&lt;br /&gt;
plot(t,a2)&lt;br /&gt;
plot(t,b2)&lt;br /&gt;
plot(t,y3,'k')&lt;br /&gt;
plot(t,a3,'k')&lt;br /&gt;
plot(t,b3,'k')&lt;br /&gt;
hold off&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
Que proporciona el resultado que se puede observar en la primera gráfica adjunta. Como podemos ver, es prácticamente indistinguible una gráfica de la otra. Sin embargo, si la juntamos con las gráficas proporcionadas por el método de Euler, que se representa ahora en rojo, la diferencia es palpable (ver gráfica 2), lo cual evidencia la peor precisión del método de Euler.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:4trapeciokung.jpeg|500px|miniaturadeimagen|center|Reacción compleja]]&lt;br /&gt;
&lt;br /&gt;
[[Archivo:4comparacion.jpeg|500px|miniaturadeimagen|center|Gráfico 2]]&lt;br /&gt;
&lt;br /&gt;
=Reacción consecutiva=&lt;br /&gt;
&lt;br /&gt;
Consideremos ahora que se produce una reacción consecutiva de la forma, &lt;br /&gt;
&lt;br /&gt;
                                                                   &amp;lt;math&amp;gt;A + B → k_1C → k_2D&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
De tal modo que los reactivos &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;B&amp;lt;/math&amp;gt; se combinan en la proporción 1:1 para formar compuesto &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt;, el cual, a su vez, se va descomponiendo para formar compuesto &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt;. Al igual que se ha hecho antes al analizar las otras reacciones, se considerará que se cumple la ley de acción de masas. Es decir, la velocidad con la que se forma compuesto &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; es proporcional a las concentraciones existentes de &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt; y de &amp;lt;math&amp;gt;B&amp;lt;/math&amp;gt; y del mismo modo la de formación de la sustancia &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; lo es a la concentración de &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; que se ha ido formando.&lt;br /&gt;
&lt;br /&gt;
Esta reacción consecutiva está representada por el siguiente problema de valor inicial:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;&lt;br /&gt;
   \left . &lt;br /&gt;
      \begin{matrix} &lt;br /&gt;
         y'_1(t)={k_{1}}({a_{0}}-y_1(t))({b_{0}}-y_1(t))\\&lt;br /&gt;
         y'_2(t)={k_{2}}(y_1(t)-y_2(t))\\&lt;br /&gt;
y_1(0)=0\\y_2(0)=0&lt;br /&gt;
      \end{matrix}&lt;br /&gt;
   \right \}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
Donde &amp;lt;math&amp;gt;a_0&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;b_0&amp;lt;/math&amp;gt; representan las concentraciones iniciales de &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;B&amp;lt;/math&amp;gt; respectivamente, &amp;lt;math&amp;gt;k_1&amp;lt;/math&amp;gt; es la constante de proporcionalidad que rige la primera reacción y &amp;lt;math&amp;gt;k_2&amp;lt;/math&amp;gt; la que rige la segunda reacción o reacción consecutiva. &amp;lt;math&amp;gt;y_1’(t)&amp;lt;/math&amp;gt; e  &amp;lt;math&amp;gt;y_2’(t)&amp;lt;/math&amp;gt; representan las velocidades de las reacciones, es decir, las velocidades con que se forman los productos &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt;. &amp;lt;math&amp;gt;y_2(t)&amp;lt;/math&amp;gt; representa la concentración del producto &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; pero es importante apreciar que en este caso &amp;lt;math&amp;gt;y_1(t)&amp;lt;/math&amp;gt; no nos da el valor de la concentración de &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; directamente, sino que ésta será &amp;lt;math&amp;gt;y_1(t)&amp;lt;/math&amp;gt;- &amp;lt;math&amp;gt;y_2(t)&amp;lt;/math&amp;gt;, la cantidad que se forma en la primera reacción menos la que se emplea para formar el producto &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; en la segunda.&lt;br /&gt;
&lt;br /&gt;
Este problema se va a resolver para dos casos diferentes. Uno en el cual se considera que la segunda reacción es más rápida que la primera, lo que supone tomar un valor de la constante &amp;lt;math&amp;gt;k_2&amp;lt;/math&amp;gt;  mayor que &amp;lt;math&amp;gt;k_1&amp;lt;/math&amp;gt;. Y otro en el cual se considera que es más lenta, lo que implica que &amp;lt;math&amp;gt;k_2&amp;lt;/math&amp;gt; es menor que &amp;lt;math&amp;gt;k_1&amp;lt;/math&amp;gt;. Concretamente vamos a tomar los siguientes valores para resolver el problema numéricamente; &amp;lt;math&amp;gt;a_0&amp;lt;/math&amp;gt;=3 ,  &amp;lt;math&amp;gt;b_0&amp;lt;/math&amp;gt;=1, &amp;lt;math&amp;gt;k_1&amp;lt;/math&amp;gt;=1,  &amp;lt;math&amp;gt;k_2&amp;lt;/math&amp;gt;=5, &amp;lt;math&amp;gt;k_2&amp;lt;/math&amp;gt;=1/5, .En ambos casos se resuelve para los primeros 10 segundos.&lt;br /&gt;
&lt;br /&gt;
==La reacción D es más rápida que la reacción C==&lt;br /&gt;
CASO    &amp;lt;math&amp;gt;k_1=5  &amp;lt;/math&amp;gt;   '''h=0.1''' &lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
&lt;br /&gt;
%datos&lt;br /&gt;
y0=[0;0];&lt;br /&gt;
z0=[0;0];&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;
%matriz de las soluciones&lt;br /&gt;
y=zeros(2,length(t)); %euler&lt;br /&gt;
y(:,1)=y0;&lt;br /&gt;
 &lt;br /&gt;
z=zeros(2,length(t)); %runge-kutta&lt;br /&gt;
z(:,1)=y0;&lt;br /&gt;
 &lt;br /&gt;
for i=1:length(t)-1&lt;br /&gt;
 %euler&lt;br /&gt;
 y(:,i+1)=y(:,i)+h*[1*(3-y(1,i))*(1-y(1,i)); 5*(y(1,i)-y(2,i))];&lt;br /&gt;
 %runge-kutta&lt;br /&gt;
 K1=[1*(3-z(1,i))*(1-z(1,i)); 5*(z(1,i)-z(2,i))];&lt;br /&gt;
 K2=[1*(3-(z(1,i)+h/2*K1(1)))*(1-(z(1,i)+h/2*K1(1))); 5*((y(1,i)+h/2*K1(2))-(y(2,i)+h/2*K1(2)))];&lt;br /&gt;
 K3=[1*(3-(z(1,i)+h/2*K2(1)))*(1-(z(1,i)+h/2*K2(1))); 5*((y(1,i)+h/2*K2(2))-(y(2,i)+h/2*K2(2)))];&lt;br /&gt;
 K4=[1*(3-(z(1,i)+h*K3(1)))*(1-(z(1,i)+h*K3(1))); 5*((y(1,i)+h*K3(2))-(y(2,i)+h*K3(2)))];&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;
% se calcula la concentración de C=y1t)-y2(t)&lt;br /&gt;
Ay=y(1,:)-y(2,:); %euler&lt;br /&gt;
Az=z(1,:)-z(2,:); %runge-kutta&lt;br /&gt;
 &lt;br /&gt;
figure(1)&lt;br /&gt;
hold on&lt;br /&gt;
plot(t,Ay) %concentración de C por euler&lt;br /&gt;
plot(t,y(2,:),'r') %concentración de D por euler&lt;br /&gt;
plot(t,Az,'k') %concentración de C por runge-kutta&lt;br /&gt;
plot(t,z(2,:),'g') %concentración de D por runge-kutta&lt;br /&gt;
legend('concentración de C por euler','concentración de D por euler','concentración de C por runge-kutta','concentración de D por runge-kutta','Location','best')&lt;br /&gt;
hold off&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:graficoa.jpeg|500px|miniaturadeimagen|center|Reacción compleja]]&lt;br /&gt;
&lt;br /&gt;
Se observa que en en los primeros instantes aumentan las concentraciones de &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; aumentan sus concentraciones. Antes de que pase 1 segundo, la concentración &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; alcanza un máximo (de unos 0.3 molar) y va disminuyendo progresivamente hasta alcanzar un valor de 0 molar. La concentración &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; sigue creciendo hasta llegar a 1 molar. Una vez que tanto &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; como &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; alcanzan estos valores, se estabiliza la reacción. &lt;br /&gt;
&lt;br /&gt;
Como hemos impuesto que la reacción &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; es más rápida que &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt;, se observa que &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; empieza creciendo más rápidamente, pero como reacciona más despacio que &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; su concentración disminuye progresivamente, mientras que la de &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; aumenta.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''CASO'''  &amp;lt;math&amp;gt;k_2=5  &amp;lt;/math&amp;gt;   '''h=0.3''' &lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
&lt;br /&gt;
%datos&lt;br /&gt;
y0=[0;0];&lt;br /&gt;
z0=[0;0];&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=10;&lt;br /&gt;
h=0.3;&lt;br /&gt;
 &lt;br /&gt;
%variable independiente t&lt;br /&gt;
t=t0:h:tN;&lt;br /&gt;
 &lt;br /&gt;
%matriz de las soluciones&lt;br /&gt;
y=zeros(2,length(t)); %euler&lt;br /&gt;
y(:,1)=y0;&lt;br /&gt;
 &lt;br /&gt;
z=zeros(2,length(t)); %runge-kutta&lt;br /&gt;
z(:,1)=y0;&lt;br /&gt;
 &lt;br /&gt;
for i=1:length(t)-1&lt;br /&gt;
 %euler&lt;br /&gt;
 y(:,i+1)=y(:,i)+h*[1*(3-y(1,i))*(1-y(1,i)); 5*(y(1,i)-y(2,i))];&lt;br /&gt;
 %runge-kutta&lt;br /&gt;
 K1=[1*(3-z(1,i))*(1-z(1,i)); 5*(z(1,i)-z(2,i))];&lt;br /&gt;
 K2=[1*(3-(z(1,i)+h/2*K1(1)))*(1-(z(1,i)+h/2*K1(1))); 5*((y(1,i)+h/2*K1(2))-(y(2,i)+h/2*K1(2)))];&lt;br /&gt;
 K3=[1*(3-(z(1,i)+h/2*K2(1)))*(1-(z(1,i)+h/2*K2(1))); 5*((y(1,i)+h/2*K2(2))-(y(2,i)+h/2*K2(2)))];&lt;br /&gt;
 K4=[1*(3-(z(1,i)+h*K3(1)))*(1-(z(1,i)+h*K3(1))); 5*((y(1,i)+h*K3(2))-(y(2,i)+h*K3(2)))];&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;
% se calcula la concentración de C=y1t)-y2(t)&lt;br /&gt;
Ay=y(1,:)-y(2,:); %euler&lt;br /&gt;
Az=z(1,:)-z(2,:); %runge-kutta&lt;br /&gt;
 &lt;br /&gt;
figure(1)&lt;br /&gt;
hold on&lt;br /&gt;
plot(t,Ay) %concentración de C por euler&lt;br /&gt;
plot(t,y(2,:),'r') %concentración de D por euler&lt;br /&gt;
plot(t,Az,'k') %concentración de C por runge-kutta&lt;br /&gt;
plot(t,z(2,:),'g') %concentración de D por runge-kutta&lt;br /&gt;
legend('concentración de C por euler','concentración de D por euler','concentración de C por runge-kutta','concentración de D por runge-kutta','Location','best')&lt;br /&gt;
hold off&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:graficob.jpeg|500px|miniaturadeimagen|center|Reacción compleja]]&lt;br /&gt;
&lt;br /&gt;
Repetimos el programa pero para un tamaño de paso mayor, de '''h=0.3''', y observamos que no  es suficientemente preciso, sobre todo al principio, no se puede analizar bien lo que está pasando en la reacción.&lt;br /&gt;
&lt;br /&gt;
==La reacción D es más lenta que la reacción C==&lt;br /&gt;
&lt;br /&gt;
CASO  &amp;lt;math&amp;gt;k_1 &amp;lt;/math&amp;gt;=1,   &amp;lt;math&amp;gt;k_2 &amp;lt;/math&amp;gt;=1/5&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
&lt;br /&gt;
%datos&lt;br /&gt;
y0=[0;0];&lt;br /&gt;
z0=[0;0];&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;
%matriz de las soluciones&lt;br /&gt;
y=zeros(2,length(t)); %euler&lt;br /&gt;
y(:,1)=y0;&lt;br /&gt;
 &lt;br /&gt;
z=zeros(2,length(t)); %runge-kutta&lt;br /&gt;
z(:,1)=y0;&lt;br /&gt;
 &lt;br /&gt;
for i=1:length(t)-1&lt;br /&gt;
 %euler&lt;br /&gt;
 y(:,i+1)=y(:,i)+h*[1*(3-y(1,i))*(1-y(1,i)); 1/5*(y(1,i)-y(2,i))];&lt;br /&gt;
 %runge-kutta&lt;br /&gt;
 K1=[1*(3-z(1,i))*(1-z(1,i)); 1/5*(z(1,i)-z(2,i))];&lt;br /&gt;
 K2=[1*(3-(z(1,i)+h/2*K1(1)))*(1-(z(1,i)+h/2*K1(1))); 1/5*((y(1,i)+h/2*K1(2))-(y(2,i)+h/2*K1(2)))];&lt;br /&gt;
 K3=[1*(3-(z(1,i)+h/2*K2(1)))*(1-(z(1,i)+h/2*K2(1))); 1/5*((y(1,i)+h/2*K2(2))-(y(2,i)+h/2*K2(2)))];&lt;br /&gt;
 K4=[1*(3-(z(1,i)+h*K3(1)))*(1-(z(1,i)+h*K3(1))); 1/5*((y(1,i)+h*K3(2))-(y(2,i)+h*K3(2)))];&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;
% se calcula la concentración de C=y1t)-y2(t)&lt;br /&gt;
Ay=y(1,:)-y(2,:); %euler&lt;br /&gt;
Az=z(1,:)-z(2,:); %runge-kutta&lt;br /&gt;
 &lt;br /&gt;
figure(1)&lt;br /&gt;
hold on&lt;br /&gt;
plot(t,Ay) %concentración de C por euler&lt;br /&gt;
plot(t,y(2,:),'r') %concentración de D por euler&lt;br /&gt;
plot(t,Az,'k') %concentración de C por runge-kutta&lt;br /&gt;
plot(t,z(2,:),'g') %concentración de D por runge-kutta&lt;br /&gt;
legend('concentración de C por euler','concentración de D por euler','concentración de C por runge-kutta','concentración de D por runge-kutta','Location','best')&lt;br /&gt;
hold off&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:graficoc.jpeg|500px|miniaturadeimagen|center|Reacción compleja]]&lt;br /&gt;
&lt;br /&gt;
Si ahora imponemos que la reacción  &amp;lt;math&amp;gt;C &amp;lt;/math&amp;gt; es más rápida que  &amp;lt;math&amp;gt;D &amp;lt;/math&amp;gt;, obtenemos lo siguiente. Se parece a la gráfica que obtuvimos en el programa anterior, pero  más extendida en el tiempo, más lenta.  &amp;lt;math&amp;gt;C &amp;lt;/math&amp;gt; alcanza una concentración máxima de unos 0.8 molar antes de empezar a decrecer a medida que avanza el tiempo y acercándose a un valor de '''0''' molar.  &amp;lt;math&amp;gt;D &amp;lt;/math&amp;gt; crece más lentamente que en la gráfica anterior, pero se aproxima al mismo valor, '''1''' molar.&lt;br /&gt;
Se observa que aunque hagamos la reacción  &amp;lt;math&amp;gt;C &amp;lt;/math&amp;gt; más rápida, tenemos las mismas concentraciones finales, pero tardan más tiempo en obtenerse, ya que la reacción tarda más en estabilizarse.&lt;br /&gt;
&lt;br /&gt;
&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>Joseva</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Reacciones_complejas_(Grupo_D1)&amp;diff=27193</id>
		<title>Reacciones complejas (Grupo D1)</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Reacciones_complejas_(Grupo_D1)&amp;diff=27193"/>
				<updated>2015-03-05T23:10:23Z</updated>
		
		<summary type="html">&lt;p&gt;Joseva: /* Introducción */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{ TrabajoED | Reacciones complejas (Grupo D1) | [[:Categoría:Ecuaciones Diferenciales|Ecuaciones Diferenciales]]|[[:Categoría:ED14/15|Curso 2014-15]] | Rincón Crespo, Kevin&lt;br /&gt;
&lt;br /&gt;
Rodríguez Gómez, Javier&lt;br /&gt;
&lt;br /&gt;
Sans Jiménez, Alejandro&lt;br /&gt;
&lt;br /&gt;
Sesto Muñoz, María Victoria&lt;br /&gt;
&lt;br /&gt;
Vallejo Asín, José Manuel &lt;br /&gt;
&lt;br /&gt;
Villarino Redondo, Álvaro }}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=Introducción=&lt;br /&gt;
Se considera una reacción química irreversible en una solución bien mezclada. Supondremos que la reacción ocurre para un volumen y temperatura constantes. Al inicio se encuentran dos reactivos &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;B&amp;lt;/math&amp;gt;, que van formando un producto &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; en lo que se conoce como una reacción bimolecular, es decir, una molécula de &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt; y una de &amp;lt;math&amp;gt;B&amp;lt;/math&amp;gt; producen una de &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt;.: &lt;br /&gt;
                                                                     &amp;lt;math&amp;gt;A + B → C&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Supondremos también que se satisface la ley de acción de masas, que establece que la velocidad de reacción es proporcional al producto de las concentraciones de los reactivos.&lt;br /&gt;
&lt;br /&gt;
=Concentración del reactivo &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; a lo largo del tiempo=&lt;br /&gt;
En primer lugar, suponiendo que la reacción es irreversible, es decir, que &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; no puede volver a formar &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;B&amp;lt;/math&amp;gt;, se puede expresar la situación mediante el siguiente problema de valor inicial, cuando t&amp;gt;0.:&lt;br /&gt;
   &amp;lt;math&amp;gt;&lt;br /&gt;
   \left . &lt;br /&gt;
      \begin{matrix} &lt;br /&gt;
         y'(t)={k_{1}}({a_{0}}-y(t))({b_{0}}-y(t))=0\\&lt;br /&gt;
         y(0)=0&lt;br /&gt;
      \end{matrix}&lt;br /&gt;
   \right \}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Donde &amp;lt;math&amp;gt; {a_{0}}&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;{b_{0}}&amp;lt;/math&amp;gt; representan las concentraciones iniciales de '''A''' y '''B''' respectivamente y &amp;lt;math&amp;gt;{k_{1}}&amp;lt;/math&amp;gt; es la constante de proporcionalidad que indica la ley de acción de masas. &amp;lt;math&amp;gt;y’(t)&amp;lt;/math&amp;gt; representa la velocidad de reacción, es decir, la velocidad con que se forma el producto &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; ; mientras que la solución de la ecuación diferencial, &amp;lt;math&amp;gt;y(t)&amp;lt;/math&amp;gt; , representa la concentración de &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt;, la cantidad de compuesto que se ha formado. Para comprobar que la solución de este problema de Cauchy es única, comenzamos definiendo.:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;math&amp;gt;f(t,y)={k_{1}}({a_{0}}-y(t))({b_{0}}-y(t))=0,   t&amp;gt;0 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Observamos que &amp;lt;math&amp;gt;f(t,y)&amp;lt;/math&amp;gt; es continua en el intervalo &amp;lt;math&amp;gt; I=(0,∞)∩B((0,0),r&amp;gt;0)&amp;lt;/math&amp;gt;, por lo que ya aseguramos la existencia de al menos una solución. Examinando la derivada parcial.:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\frac{∂f}{∂y}=k_1(-a_0-b_0+2y)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Se deduce que al ser un polinomio no va a haber problemas de continuidad para ninguna bola. De esta forma, podemos asegurar que existe una única solución.&lt;br /&gt;
&lt;br /&gt;
==Concentración del reactivo C a lo largo del tiempo en un proceso reversible==&lt;br /&gt;
&lt;br /&gt;
Ahora bien, ¿qué pasaría si la reacción fuese reversible? Con esto lo que queremos indicar es que además de formarse  &amp;lt;math&amp;gt;C &amp;lt;/math&amp;gt;, este también se descompone de nuevo en  &amp;lt;math&amp;gt;A &amp;lt;/math&amp;gt; y  &amp;lt;math&amp;gt;B &amp;lt;/math&amp;gt;. Por lo tanto, nos quedaría una ecuación diferencial con la siguiente forma, cuando &amp;lt;math&amp;gt;t&amp;gt;0 &amp;lt;/math&amp;gt; :&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; y'(t)={k_{1}}({a_{0}}-y(t))({b_{0}}-y(t))-Cy(t)&amp;lt;/math&amp;gt;  &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Si nos fijamos, la modificación es sencillamente restar  &amp;lt;math&amp;gt;y(t) &amp;lt;/math&amp;gt; multiplicada por una constante, la cual refleja qué porcentaje de  &amp;lt;math&amp;gt;C &amp;lt;/math&amp;gt; se va descomponiendo a medida que se da, simultáneamente, la reacción  &amp;lt;math&amp;gt;A + B → C &amp;lt;/math&amp;gt;. Sin embargo, esta constante no puede tener cualquier valor, ya que en una reacción se cumple la conservación de masa. Por ello, a  &amp;lt;math&amp;gt;C &amp;lt;/math&amp;gt; le asociaremos el siguiente dominio:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;C∈(0,1)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Obsérvese que  &amp;lt;math&amp;gt;C &amp;lt;/math&amp;gt; tiene que ser mayor que 0 para que sea reversible, pero al mismo tiempo inferior que 1, ya que si no se estaría descomponiendo más compuesto  &amp;lt;math&amp;gt;C &amp;lt;/math&amp;gt; del que realmente se ha formado, en otras palabras, estaría apareciendo masa de la nada.&lt;br /&gt;
&lt;br /&gt;
=Método de Euler=&lt;br /&gt;
&lt;br /&gt;
Una vez llegados a este punto, se procede a ver una interpretación gráfica de la reacción. Para ello, se refleja en la gráfica (en un intervalo de 2 segundos), cómo varían las concentraciones tanto de &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt; (&amp;lt;math&amp;gt;a_0&amp;lt;/math&amp;gt;=3 mol/L) y &amp;lt;math&amp;gt;B&amp;lt;/math&amp;gt; (&amp;lt;math&amp;gt;b_0&amp;lt;/math&amp;gt;=1 mol/L) como de &amp;lt;math&amp;gt; C&amp;lt;/math&amp;gt;, para una &amp;lt;math&amp;gt;k_1&amp;lt;/math&amp;gt;=1 mol/s. Se comienza, por el momento, aplicando el método de Euler. Posteriormente se utilizarán métodos más precisos.&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo= &lt;br /&gt;
% Euler&lt;br /&gt;
clear all&lt;br /&gt;
% datos del problema&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=2;&lt;br /&gt;
y0=0;&lt;br /&gt;
h=0.1;&lt;br /&gt;
k1=1;&lt;br /&gt;
a0=3;&lt;br /&gt;
b0=1;&lt;br /&gt;
% Definimos la variable independiente&lt;br /&gt;
t=t0:h:tN;&lt;br /&gt;
% Guardamos los valores de la solución aproximada en el vector &amp;quot;y1&amp;quot; y&lt;br /&gt;
% establecemos los vectores de concentraciones A y B&lt;br /&gt;
y1=zeros(1,length(t)); &lt;br /&gt;
y1(1)=y0;&lt;br /&gt;
a1=zeros(1,length(t));&lt;br /&gt;
a1(1)=a0;&lt;br /&gt;
b1=zeros(1,length(t));&lt;br /&gt;
b1(1)=b0;&lt;br /&gt;
% A continuación, calculamos las componentes de los vectores y1, a y b&lt;br /&gt;
for i=1:length(t)-1&lt;br /&gt;
    y1(i+1)=y1(i)+h*(k1*(a0-y1(i))*(b0-y1(i)));    %Euler&lt;br /&gt;
    a1(i+1)=a0-y1(i+1); % evolución de la concentración de A&lt;br /&gt;
    b1(i+1)=b0-y1(i+1); % evolución de la concentración de B&lt;br /&gt;
end&lt;br /&gt;
%grafico &lt;br /&gt;
figure(1)&lt;br /&gt;
hold on&lt;br /&gt;
plot(t,y1,'g')&lt;br /&gt;
plot(t,a1,'r')&lt;br /&gt;
plot(t,b1,'b')&lt;br /&gt;
legend('concentración de C','concentración de A','concentración de B','location','best')&lt;br /&gt;
hold off &lt;br /&gt;
%en verde se muestra la concentración de C, en rojo la de A, y en azul la de B&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Archivo:3euler.jpeg|500px|miniaturadeimagen|center|Reacción compleja]]&lt;br /&gt;
&lt;br /&gt;
Aunque con observar los resultados ya podemos decir con casi absoluta seguridad cuáles son los límites de las concentraciones de cada reactivo &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;B&amp;lt;/math&amp;gt; y del producto &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt;, se ha diseñado un programa que, mediante diferencia de valores sucesivos de la variable &amp;lt;math&amp;gt;y(t)&amp;lt;/math&amp;gt;, nos devuelve el valor de la función cuando dicha diferencia es muy pequeña '''(se ha puesto una diferencia de 0.001)''', es decir, cuando tenemos una asíntota al tender &amp;lt;math&amp;gt;t→∞&amp;lt;/math&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
%Estudio de las asíntotas&lt;br /&gt;
t1=t0:h:10;%se aumenta la longitud de t, y se estima que se alcanzarán las asíntotas antes de t=10&lt;br /&gt;
y_=zeros(1,length(t1)); %se define un vector y_ idéntico a y1 pero con t hasta 10&lt;br /&gt;
a_=y_;&lt;br /&gt;
b_=y_;&lt;br /&gt;
y_(1)=y0;&lt;br /&gt;
a_(1)=a0;&lt;br /&gt;
b_(1)=b0;&lt;br /&gt;
for i=1:length(t1)-1&lt;br /&gt;
    y_(i+1)=y_(i)+h*(k1*(a0-y_(i))*(b0-y_(i)));&lt;br /&gt;
    diferencia=y_(i+1)-y_(i);&lt;br /&gt;
    if abs(diferencia)&amp;lt;=0.001&lt;br /&gt;
        limiteC=y_(i+1)&lt;br /&gt;
        break&lt;br /&gt;
    end&lt;br /&gt;
end&lt;br /&gt;
for i=1:length(t1)-1&lt;br /&gt;
    y_(i+1)=y_(i)+h*(k1*(a0-y_(i))*(b0-y_(i)));    &lt;br /&gt;
    a_(i+1)=a0-y_(i+1);&lt;br /&gt;
    diferencia2=a_(i+1)-a_(i);&lt;br /&gt;
    if abs(diferencia2)&amp;lt;=0.001&lt;br /&gt;
        limiteA=a_(i+1)&lt;br /&gt;
        break&lt;br /&gt;
    end&lt;br /&gt;
end&lt;br /&gt;
for i=1:length(t1)-1&lt;br /&gt;
    y_(i+1)=y_(i)+h*(k1*(a0-y_(i))*(b0-y_(i)));    &lt;br /&gt;
    b_(i+1)=b0-y_(i+1);&lt;br /&gt;
    diferencia3=b_(i+1)-b_(i);&lt;br /&gt;
    if abs(diferencia3)&amp;lt;=0.001&lt;br /&gt;
        limiteB=b_(i+1)&lt;br /&gt;
        break&lt;br /&gt;
    end&lt;br /&gt;
end&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
Que nos devuelve unos valores de las concentraciones para el límite de:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\lim A=2,0036≈2 mol/L&amp;lt;/math&amp;gt;:     &lt;br /&gt;
&amp;lt;math&amp;gt;\lim B=0,0036≈0mol/L&amp;lt;/math&amp;gt;:         &lt;br /&gt;
&amp;lt;math&amp;gt;\lim C=0,9964≈1mol/L&amp;lt;/math&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
Lo cual es lógico, ya que &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;B&amp;lt;/math&amp;gt; se combinan en una proporción de 1:1, luego &amp;lt;math&amp;gt;B&amp;lt;/math&amp;gt;, que tiene una concentración inicial de &amp;lt;math&amp;gt;b_0&amp;lt;/math&amp;gt;=1, será el reactivo limitante (el que desaparecerá por completo), mientras que &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt;, con &amp;lt;math&amp;gt;a_0&amp;lt;/math&amp;gt;=3, acabará con una concentración molar final igual a 2, y &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt;, del que no habia nada,alcanza una concentraccion de &amp;lt;math&amp;gt;1mol/L&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
= Método del Trapecio y Método de Runge-Kutta=&lt;br /&gt;
&lt;br /&gt;
A continuación, para obtener con más precisión las representaciones gráficas de las respectivas concentraciones, se opta por utilizar los métodos de los &amp;lt;math&amp;gt;Trapecios&amp;lt;/math&amp;gt; (segundo orden) y de &amp;lt;math&amp;gt;Runge-Kutta&amp;lt;/math&amp;gt; (cuarto orden). Desgraciadamente, no es posible comparar los errores cometidos por cada método con la expresión real de la concentración de C, ya que la ecuación diferencial no es de fácil resolución analítica, luego resulta imposible alcanzar una expresión explícita de la concentración en términos de nuestros datos conocidos; &amp;lt;math&amp;gt;a_0&amp;lt;/math&amp;gt;,&amp;lt;math&amp;gt;b_0&amp;lt;/math&amp;gt;,&amp;lt;math&amp;gt;k_1&amp;lt;/math&amp;gt;,&amp;lt;math&amp;gt;t (tiempo)&amp;lt;/math&amp;gt;.  Sin embargo, podemos confiar con bastante seguridad en el método sobre todo de &amp;lt;math&amp;gt;Runge-Kutta&amp;lt;/math&amp;gt;, debido a su cuarto orden. &lt;br /&gt;
&lt;br /&gt;
Para los trapecios, al ser un método implícito, es necesario despejar la componente &amp;lt;math&amp;gt;y_{n+1}&amp;lt;/math&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;y_{n+1}=\frac{(1+\frac{h}{2}∙k_1∙(a_0+b_0))-\sqrt{(1+\frac{h}{2}∙k_1∙(a_0+b_0))^2 -2∙h∙k_1(y_n+\frac{h}{2}∙k_1∙(a_0-y_n )∙(b_0-y_n)+\frac{h}{2}∙k_1∙a_0∙b_0) }}{k_1∙h}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Cabe destacar que este programa parte de los datos ya establecidos en el programa de Euler para '''t0, tN, y0, a0, b0, k1 y h''':&lt;br /&gt;
{{matlab|codigo= &lt;br /&gt;
%Trapecios&lt;br /&gt;
y2=zeros(1,length(t)); &lt;br /&gt;
a2=y2;&lt;br /&gt;
b2=y2;&lt;br /&gt;
y2(1)=y0;&lt;br /&gt;
a2(1)=a0;&lt;br /&gt;
b2(1)=b0;&lt;br /&gt;
for i=1:length(t)-1&lt;br /&gt;
    y2(i+1)=((1+0.5*h*k1*(a0+b0))-sqrt((1+0.5*h*k1*(a0+b0))^2-2*h*k1*(y2(i)+0.5*h*k1*(a0-y2(i))*(b0-y2(i))+0.5*h*k1*a0*b0)))/(k1*h);&lt;br /&gt;
    a2(i+1)=a0-y2(i+1);&lt;br /&gt;
    b2(i+1)=b0-y2(i+1);&lt;br /&gt;
end&lt;br /&gt;
 &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
%Runge-Kutta&lt;br /&gt;
y3=zeros(1,length(t)); &lt;br /&gt;
a3=y3;&lt;br /&gt;
b3=y3;&lt;br /&gt;
y3(1)=y0;&lt;br /&gt;
a3(1)=a0;&lt;br /&gt;
b3(1)=b0;&lt;br /&gt;
for i=1:length(t)-1 &lt;br /&gt;
    r1=k1*(a0-y3(i))*(b0-y3(i));&lt;br /&gt;
    r2=k1*(a0-y3(i)-0.5*r1*h)*(b0-y3(i)-0.5*r1*h);&lt;br /&gt;
    r3=k1*(a0-y3(i)-0.5*r2*h)*(b0-y3(i)-0.5*r2*h);&lt;br /&gt;
    r4=k1*(a0-y3(i)-r3*h)*(b0-y3(i)-r3*h);&lt;br /&gt;
    y3(i+1)=y3(i)+h/6*(r1+2*r2+2*r3+r4);&lt;br /&gt;
    a3(i+1)=a0-y3(i+1);&lt;br /&gt;
    b3(i+1)=b0-y3(i+1);&lt;br /&gt;
end&lt;br /&gt;
%se pintan las dos, en azul las soluciones de los Trapecios, y en negro las&lt;br /&gt;
%de Runge-Kutta. &lt;br /&gt;
figure(2)&lt;br /&gt;
hold on&lt;br /&gt;
plot(t,y2)&lt;br /&gt;
plot(t,a2)&lt;br /&gt;
plot(t,b2)&lt;br /&gt;
plot(t,y3,'k')&lt;br /&gt;
plot(t,a3,'k')&lt;br /&gt;
plot(t,b3,'k')&lt;br /&gt;
hold off&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
Que proporciona el resultado que se puede observar en la primera gráfica adjunta. Como podemos ver, es prácticamente indistinguible una gráfica de la otra. Sin embargo, si la juntamos con las gráficas proporcionadas por el método de Euler, que se representa ahora en rojo, la diferencia es palpable (ver gráfica 2), lo cual evidencia la peor precisión del método de Euler.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:4trapeciokung.jpeg|500px|miniaturadeimagen|center|Reacción compleja]]&lt;br /&gt;
&lt;br /&gt;
[[Archivo:4comparacion.jpeg|500px|miniaturadeimagen|center|Gráfico 2]]&lt;br /&gt;
&lt;br /&gt;
=Reacción consecutiva=&lt;br /&gt;
&lt;br /&gt;
Consideremos ahora que se produce una reacción consecutiva de la forma, &lt;br /&gt;
&lt;br /&gt;
                                                                   &amp;lt;math&amp;gt;A + B → k_1C → k_2D&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
De tal modo que los reactivos &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;B&amp;lt;/math&amp;gt; se combinan en la proporción 1:1 para formar compuesto &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt;, el cual, a su vez, se va descomponiendo para formar compuesto &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt;. Al igual que se ha hecho antes al analizar las otras reacciones, se considerará que se cumple la ley de acción de masas. Es decir, la velocidad con la que se forma compuesto &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; es proporcional a las concentraciones existentes de &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt; y de &amp;lt;math&amp;gt;B&amp;lt;/math&amp;gt; y del mismo modo la de formación de la sustancia &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; lo es a la concentración de &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; que se ha ido formando.&lt;br /&gt;
&lt;br /&gt;
Esta reacción consecutiva está representada por el siguiente problema de valor inicial:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;&lt;br /&gt;
   \left . &lt;br /&gt;
      \begin{matrix} &lt;br /&gt;
         y'_1(t)={k_{1}}({a_{0}}-y_1(t))({b_{0}}-y_1(t))\\&lt;br /&gt;
         y'_2(t)={k_{2}}(y_1(t)-y_2(t))\\&lt;br /&gt;
y_1(0)=0\\y_2(0)=0&lt;br /&gt;
      \end{matrix}&lt;br /&gt;
   \right \}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
Donde &amp;lt;math&amp;gt;a_0&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;b_0&amp;lt;/math&amp;gt; representan las concentraciones iniciales de &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;B&amp;lt;/math&amp;gt; respectivamente, &amp;lt;math&amp;gt;k_1&amp;lt;/math&amp;gt; es la constante de proporcionalidad que rige la primera reacción y &amp;lt;math&amp;gt;k_2&amp;lt;/math&amp;gt; la que rige la segunda reacción o reacción consecutiva. &amp;lt;math&amp;gt;y_1’(t)&amp;lt;/math&amp;gt; e  &amp;lt;math&amp;gt;y_2’(t)&amp;lt;/math&amp;gt; representan las velocidades de las reacciones, es decir, las velocidades con que se forman los productos &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt;. &amp;lt;math&amp;gt;y_2(t)&amp;lt;/math&amp;gt; representa la concentración del producto &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; pero es importante apreciar que en este caso &amp;lt;math&amp;gt;y_1(t)&amp;lt;/math&amp;gt; no nos da el valor de la concentración de &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; directamente, sino que ésta será &amp;lt;math&amp;gt;y_1(t)&amp;lt;/math&amp;gt;- &amp;lt;math&amp;gt;y_2(t)&amp;lt;/math&amp;gt;, la cantidad que se forma en la primera reacción menos la que se emplea para formar el producto &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; en la segunda.&lt;br /&gt;
&lt;br /&gt;
Este problema se va a resolver para dos casos diferentes. Uno en el cual se considera que la segunda reacción es más rápida que la primera, lo que supone tomar un valor de la constante &amp;lt;math&amp;gt;k_2&amp;lt;/math&amp;gt;  mayor que &amp;lt;math&amp;gt;k_1&amp;lt;/math&amp;gt;. Y otro en el cual se considera que es más lenta, lo que implica que &amp;lt;math&amp;gt;k_2&amp;lt;/math&amp;gt; es menor que &amp;lt;math&amp;gt;k_1&amp;lt;/math&amp;gt;. Concretamente vamos a tomar los siguientes valores para resolver el problema numéricamente; &amp;lt;math&amp;gt;a_0&amp;lt;/math&amp;gt;=3 ,  &amp;lt;math&amp;gt;b_0&amp;lt;/math&amp;gt;=1, &amp;lt;math&amp;gt;k_1&amp;lt;/math&amp;gt;=1,  &amp;lt;math&amp;gt;k_2&amp;lt;/math&amp;gt;=5, &amp;lt;math&amp;gt;k_2&amp;lt;/math&amp;gt;=1/5, .En ambos casos se resuelve para los primeros 10 segundos.&lt;br /&gt;
&lt;br /&gt;
==La reacción D es más rápida que la reacción C==&lt;br /&gt;
CASO    &amp;lt;math&amp;gt;k_1=5  &amp;lt;/math&amp;gt;   '''h=0.1''' &lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
&lt;br /&gt;
%datos&lt;br /&gt;
y0=[0;0];&lt;br /&gt;
z0=[0;0];&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;
%matriz de las soluciones&lt;br /&gt;
y=zeros(2,length(t)); %euler&lt;br /&gt;
y(:,1)=y0;&lt;br /&gt;
 &lt;br /&gt;
z=zeros(2,length(t)); %runge-kutta&lt;br /&gt;
z(:,1)=y0;&lt;br /&gt;
 &lt;br /&gt;
for i=1:length(t)-1&lt;br /&gt;
 %euler&lt;br /&gt;
 y(:,i+1)=y(:,i)+h*[1*(3-y(1,i))*(1-y(1,i)); 5*(y(1,i)-y(2,i))];&lt;br /&gt;
 %runge-kutta&lt;br /&gt;
 K1=[1*(3-z(1,i))*(1-z(1,i)); 5*(z(1,i)-z(2,i))];&lt;br /&gt;
 K2=[1*(3-(z(1,i)+h/2*K1(1)))*(1-(z(1,i)+h/2*K1(1))); 5*((y(1,i)+h/2*K1(2))-(y(2,i)+h/2*K1(2)))];&lt;br /&gt;
 K3=[1*(3-(z(1,i)+h/2*K2(1)))*(1-(z(1,i)+h/2*K2(1))); 5*((y(1,i)+h/2*K2(2))-(y(2,i)+h/2*K2(2)))];&lt;br /&gt;
 K4=[1*(3-(z(1,i)+h*K3(1)))*(1-(z(1,i)+h*K3(1))); 5*((y(1,i)+h*K3(2))-(y(2,i)+h*K3(2)))];&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;
% se calcula la concentración de C=y1t)-y2(t)&lt;br /&gt;
Ay=y(1,:)-y(2,:); %euler&lt;br /&gt;
Az=z(1,:)-z(2,:); %runge-kutta&lt;br /&gt;
 &lt;br /&gt;
figure(1)&lt;br /&gt;
hold on&lt;br /&gt;
plot(t,Ay) %concentración de C por euler&lt;br /&gt;
plot(t,y(2,:),'r') %concentración de D por euler&lt;br /&gt;
plot(t,Az,'k') %concentración de C por runge-kutta&lt;br /&gt;
plot(t,z(2,:),'g') %concentración de D por runge-kutta&lt;br /&gt;
legend('concentración de C por euler','concentración de D por euler','concentración de C por runge-kutta','concentración de D por runge-kutta','Location','best')&lt;br /&gt;
hold off&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:graficoa.jpeg|500px|miniaturadeimagen|center|Reacción compleja]]&lt;br /&gt;
&lt;br /&gt;
Se observa que en en los primeros instantes aumentan las concentraciones de &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; aumentan sus concentraciones. Antes de que pase 1 segundo, la concentración &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; alcanza un máximo (de unos 0.3 molar) y va disminuyendo progresivamente hasta alcanzar un valor de 0 molar. La concentración &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; sigue creciendo hasta llegar a 1 molar. Una vez que tanto &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; como &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; alcanzan estos valores, se estabiliza la reacción. &lt;br /&gt;
&lt;br /&gt;
Como hemos impuesto que la reacción &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; es más rápida que &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt;, se observa que &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; empieza creciendo más rápidamente, pero como reacciona más despacio que &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; su concentración disminuye progresivamente, mientras que la de &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; aumenta.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''CASO'''  &amp;lt;math&amp;gt;k_2=5  &amp;lt;/math&amp;gt;   '''h=0.3''' &lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
&lt;br /&gt;
%datos&lt;br /&gt;
y0=[0;0];&lt;br /&gt;
z0=[0;0];&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=10;&lt;br /&gt;
h=0.3;&lt;br /&gt;
 &lt;br /&gt;
%variable independiente t&lt;br /&gt;
t=t0:h:tN;&lt;br /&gt;
 &lt;br /&gt;
%matriz de las soluciones&lt;br /&gt;
y=zeros(2,length(t)); %euler&lt;br /&gt;
y(:,1)=y0;&lt;br /&gt;
 &lt;br /&gt;
z=zeros(2,length(t)); %runge-kutta&lt;br /&gt;
z(:,1)=y0;&lt;br /&gt;
 &lt;br /&gt;
for i=1:length(t)-1&lt;br /&gt;
 %euler&lt;br /&gt;
 y(:,i+1)=y(:,i)+h*[1*(3-y(1,i))*(1-y(1,i)); 5*(y(1,i)-y(2,i))];&lt;br /&gt;
 %runge-kutta&lt;br /&gt;
 K1=[1*(3-z(1,i))*(1-z(1,i)); 5*(z(1,i)-z(2,i))];&lt;br /&gt;
 K2=[1*(3-(z(1,i)+h/2*K1(1)))*(1-(z(1,i)+h/2*K1(1))); 5*((y(1,i)+h/2*K1(2))-(y(2,i)+h/2*K1(2)))];&lt;br /&gt;
 K3=[1*(3-(z(1,i)+h/2*K2(1)))*(1-(z(1,i)+h/2*K2(1))); 5*((y(1,i)+h/2*K2(2))-(y(2,i)+h/2*K2(2)))];&lt;br /&gt;
 K4=[1*(3-(z(1,i)+h*K3(1)))*(1-(z(1,i)+h*K3(1))); 5*((y(1,i)+h*K3(2))-(y(2,i)+h*K3(2)))];&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;
% se calcula la concentración de C=y1t)-y2(t)&lt;br /&gt;
Ay=y(1,:)-y(2,:); %euler&lt;br /&gt;
Az=z(1,:)-z(2,:); %runge-kutta&lt;br /&gt;
 &lt;br /&gt;
figure(1)&lt;br /&gt;
hold on&lt;br /&gt;
plot(t,Ay) %concentración de C por euler&lt;br /&gt;
plot(t,y(2,:),'r') %concentración de D por euler&lt;br /&gt;
plot(t,Az,'k') %concentración de C por runge-kutta&lt;br /&gt;
plot(t,z(2,:),'g') %concentración de D por runge-kutta&lt;br /&gt;
legend('concentración de C por euler','concentración de D por euler','concentración de C por runge-kutta','concentración de D por runge-kutta','Location','best')&lt;br /&gt;
hold off&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:graficob.jpeg|500px|miniaturadeimagen|center|Reacción compleja]]&lt;br /&gt;
&lt;br /&gt;
Repetimos el programa pero para un tamaño de paso mayor, de '''h=0.3''', y observamos que no  es suficientemente preciso, sobre todo al principio, no se puede analizar bien lo que está pasando en la reacción.&lt;br /&gt;
&lt;br /&gt;
==La reacción D es más lenta que la reacción C==&lt;br /&gt;
&lt;br /&gt;
CASO  &amp;lt;math&amp;gt;k_1 &amp;lt;/math&amp;gt;=1,   &amp;lt;math&amp;gt;k_2 &amp;lt;/math&amp;gt;=1/5&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
&lt;br /&gt;
%datos&lt;br /&gt;
y0=[0;0];&lt;br /&gt;
z0=[0;0];&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;
%matriz de las soluciones&lt;br /&gt;
y=zeros(2,length(t)); %euler&lt;br /&gt;
y(:,1)=y0;&lt;br /&gt;
 &lt;br /&gt;
z=zeros(2,length(t)); %runge-kutta&lt;br /&gt;
z(:,1)=y0;&lt;br /&gt;
 &lt;br /&gt;
for i=1:length(t)-1&lt;br /&gt;
 %euler&lt;br /&gt;
 y(:,i+1)=y(:,i)+h*[1*(3-y(1,i))*(1-y(1,i)); 1/5*(y(1,i)-y(2,i))];&lt;br /&gt;
 %runge-kutta&lt;br /&gt;
 K1=[1*(3-z(1,i))*(1-z(1,i)); 1/5*(z(1,i)-z(2,i))];&lt;br /&gt;
 K2=[1*(3-(z(1,i)+h/2*K1(1)))*(1-(z(1,i)+h/2*K1(1))); 1/5*((y(1,i)+h/2*K1(2))-(y(2,i)+h/2*K1(2)))];&lt;br /&gt;
 K3=[1*(3-(z(1,i)+h/2*K2(1)))*(1-(z(1,i)+h/2*K2(1))); 1/5*((y(1,i)+h/2*K2(2))-(y(2,i)+h/2*K2(2)))];&lt;br /&gt;
 K4=[1*(3-(z(1,i)+h*K3(1)))*(1-(z(1,i)+h*K3(1))); 1/5*((y(1,i)+h*K3(2))-(y(2,i)+h*K3(2)))];&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;
% se calcula la concentración de C=y1t)-y2(t)&lt;br /&gt;
Ay=y(1,:)-y(2,:); %euler&lt;br /&gt;
Az=z(1,:)-z(2,:); %runge-kutta&lt;br /&gt;
 &lt;br /&gt;
figure(1)&lt;br /&gt;
hold on&lt;br /&gt;
plot(t,Ay) %concentración de C por euler&lt;br /&gt;
plot(t,y(2,:),'r') %concentración de D por euler&lt;br /&gt;
plot(t,Az,'k') %concentración de C por runge-kutta&lt;br /&gt;
plot(t,z(2,:),'g') %concentración de D por runge-kutta&lt;br /&gt;
legend('concentración de C por euler','concentración de D por euler','concentración de C por runge-kutta','concentración de D por runge-kutta','Location','best')&lt;br /&gt;
hold off&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:graficoc.jpeg|500px|miniaturadeimagen|center|Reacción compleja]]&lt;br /&gt;
&lt;br /&gt;
Si ahora imponemos que la reacción  &amp;lt;math&amp;gt;C &amp;lt;/math&amp;gt; es más rápida que  &amp;lt;math&amp;gt;D &amp;lt;/math&amp;gt;, obtenemos lo siguiente. Se parece a la gráfica que obtuvimos en el programa anterior, pero  más extendida en el tiempo, más lenta.  &amp;lt;math&amp;gt;C &amp;lt;/math&amp;gt; alcanza una concentración máxima de unos 0.8 molar antes de empezar a decrecer a medida que avanza el tiempo y acercándose a un valor de '''0''' molar.  &amp;lt;math&amp;gt;D &amp;lt;/math&amp;gt; crece más lentamente que en la gráfica anterior, pero se aproxima al mismo valor, '''1''' molar.&lt;br /&gt;
Se observa que aunque hagamos la reacción  &amp;lt;math&amp;gt;C &amp;lt;/math&amp;gt; más rápida, tenemos las mismas concentraciones finales, pero tardan más tiempo en obtenerse, ya que la reacción tarda más en estabilizarse.&lt;br /&gt;
&lt;br /&gt;
&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>Joseva</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Reacciones_complejas_(Grupo_D1)&amp;diff=27191</id>
		<title>Reacciones complejas (Grupo D1)</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Reacciones_complejas_(Grupo_D1)&amp;diff=27191"/>
				<updated>2015-03-05T23:10:00Z</updated>
		
		<summary type="html">&lt;p&gt;Joseva: /* Introducción */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{ TrabajoED | Reacciones complejas (Grupo D1) | [[:Categoría:Ecuaciones Diferenciales|Ecuaciones Diferenciales]]|[[:Categoría:ED14/15|Curso 2014-15]] | Rincón Crespo, Kevin&lt;br /&gt;
&lt;br /&gt;
Rodríguez Gómez, Javier&lt;br /&gt;
&lt;br /&gt;
Sans Jiménez, Alejandro&lt;br /&gt;
&lt;br /&gt;
Sesto Muñoz, María Victoria&lt;br /&gt;
&lt;br /&gt;
Vallejo Asín, José Manuel &lt;br /&gt;
&lt;br /&gt;
Villarino Redondo, Álvaro }}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=Introducción=&lt;br /&gt;
Se considera una reacción química irreversible en una solución bien mezclada. Supondremos que la reacción ocurre para un volumen y temperatura constantes. Al inicio se encuentran dos reactivos &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;B&amp;lt;/math&amp;gt;, que van formando un producto &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; en lo que se conoce como una reacción bimolecular, es decir, una molécula de &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt; y una de &amp;lt;math&amp;gt;B&amp;lt;/math&amp;gt; producen una de &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt;., &lt;br /&gt;
                                                                     &amp;lt;math&amp;gt;A + B → C&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Supondremos también que se satisface la ley de acción de masas, que establece que la velocidad de reacción es proporcional al producto de las concentraciones de los reactivos.&lt;br /&gt;
&lt;br /&gt;
=Concentración del reactivo &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; a lo largo del tiempo=&lt;br /&gt;
En primer lugar, suponiendo que la reacción es irreversible, es decir, que &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; no puede volver a formar &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;B&amp;lt;/math&amp;gt;, se puede expresar la situación mediante el siguiente problema de valor inicial, cuando t&amp;gt;0.:&lt;br /&gt;
   &amp;lt;math&amp;gt;&lt;br /&gt;
   \left . &lt;br /&gt;
      \begin{matrix} &lt;br /&gt;
         y'(t)={k_{1}}({a_{0}}-y(t))({b_{0}}-y(t))=0\\&lt;br /&gt;
         y(0)=0&lt;br /&gt;
      \end{matrix}&lt;br /&gt;
   \right \}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Donde &amp;lt;math&amp;gt; {a_{0}}&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;{b_{0}}&amp;lt;/math&amp;gt; representan las concentraciones iniciales de '''A''' y '''B''' respectivamente y &amp;lt;math&amp;gt;{k_{1}}&amp;lt;/math&amp;gt; es la constante de proporcionalidad que indica la ley de acción de masas. &amp;lt;math&amp;gt;y’(t)&amp;lt;/math&amp;gt; representa la velocidad de reacción, es decir, la velocidad con que se forma el producto &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; ; mientras que la solución de la ecuación diferencial, &amp;lt;math&amp;gt;y(t)&amp;lt;/math&amp;gt; , representa la concentración de &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt;, la cantidad de compuesto que se ha formado. Para comprobar que la solución de este problema de Cauchy es única, comenzamos definiendo.:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;math&amp;gt;f(t,y)={k_{1}}({a_{0}}-y(t))({b_{0}}-y(t))=0,   t&amp;gt;0 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Observamos que &amp;lt;math&amp;gt;f(t,y)&amp;lt;/math&amp;gt; es continua en el intervalo &amp;lt;math&amp;gt; I=(0,∞)∩B((0,0),r&amp;gt;0)&amp;lt;/math&amp;gt;, por lo que ya aseguramos la existencia de al menos una solución. Examinando la derivada parcial.:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\frac{∂f}{∂y}=k_1(-a_0-b_0+2y)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Se deduce que al ser un polinomio no va a haber problemas de continuidad para ninguna bola. De esta forma, podemos asegurar que existe una única solución.&lt;br /&gt;
&lt;br /&gt;
==Concentración del reactivo C a lo largo del tiempo en un proceso reversible==&lt;br /&gt;
&lt;br /&gt;
Ahora bien, ¿qué pasaría si la reacción fuese reversible? Con esto lo que queremos indicar es que además de formarse  &amp;lt;math&amp;gt;C &amp;lt;/math&amp;gt;, este también se descompone de nuevo en  &amp;lt;math&amp;gt;A &amp;lt;/math&amp;gt; y  &amp;lt;math&amp;gt;B &amp;lt;/math&amp;gt;. Por lo tanto, nos quedaría una ecuación diferencial con la siguiente forma, cuando &amp;lt;math&amp;gt;t&amp;gt;0 &amp;lt;/math&amp;gt; :&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; y'(t)={k_{1}}({a_{0}}-y(t))({b_{0}}-y(t))-Cy(t)&amp;lt;/math&amp;gt;  &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Si nos fijamos, la modificación es sencillamente restar  &amp;lt;math&amp;gt;y(t) &amp;lt;/math&amp;gt; multiplicada por una constante, la cual refleja qué porcentaje de  &amp;lt;math&amp;gt;C &amp;lt;/math&amp;gt; se va descomponiendo a medida que se da, simultáneamente, la reacción  &amp;lt;math&amp;gt;A + B → C &amp;lt;/math&amp;gt;. Sin embargo, esta constante no puede tener cualquier valor, ya que en una reacción se cumple la conservación de masa. Por ello, a  &amp;lt;math&amp;gt;C &amp;lt;/math&amp;gt; le asociaremos el siguiente dominio:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;C∈(0,1)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Obsérvese que  &amp;lt;math&amp;gt;C &amp;lt;/math&amp;gt; tiene que ser mayor que 0 para que sea reversible, pero al mismo tiempo inferior que 1, ya que si no se estaría descomponiendo más compuesto  &amp;lt;math&amp;gt;C &amp;lt;/math&amp;gt; del que realmente se ha formado, en otras palabras, estaría apareciendo masa de la nada.&lt;br /&gt;
&lt;br /&gt;
=Método de Euler=&lt;br /&gt;
&lt;br /&gt;
Una vez llegados a este punto, se procede a ver una interpretación gráfica de la reacción. Para ello, se refleja en la gráfica (en un intervalo de 2 segundos), cómo varían las concentraciones tanto de &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt; (&amp;lt;math&amp;gt;a_0&amp;lt;/math&amp;gt;=3 mol/L) y &amp;lt;math&amp;gt;B&amp;lt;/math&amp;gt; (&amp;lt;math&amp;gt;b_0&amp;lt;/math&amp;gt;=1 mol/L) como de &amp;lt;math&amp;gt; C&amp;lt;/math&amp;gt;, para una &amp;lt;math&amp;gt;k_1&amp;lt;/math&amp;gt;=1 mol/s. Se comienza, por el momento, aplicando el método de Euler. Posteriormente se utilizarán métodos más precisos.&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo= &lt;br /&gt;
% Euler&lt;br /&gt;
clear all&lt;br /&gt;
% datos del problema&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=2;&lt;br /&gt;
y0=0;&lt;br /&gt;
h=0.1;&lt;br /&gt;
k1=1;&lt;br /&gt;
a0=3;&lt;br /&gt;
b0=1;&lt;br /&gt;
% Definimos la variable independiente&lt;br /&gt;
t=t0:h:tN;&lt;br /&gt;
% Guardamos los valores de la solución aproximada en el vector &amp;quot;y1&amp;quot; y&lt;br /&gt;
% establecemos los vectores de concentraciones A y B&lt;br /&gt;
y1=zeros(1,length(t)); &lt;br /&gt;
y1(1)=y0;&lt;br /&gt;
a1=zeros(1,length(t));&lt;br /&gt;
a1(1)=a0;&lt;br /&gt;
b1=zeros(1,length(t));&lt;br /&gt;
b1(1)=b0;&lt;br /&gt;
% A continuación, calculamos las componentes de los vectores y1, a y b&lt;br /&gt;
for i=1:length(t)-1&lt;br /&gt;
    y1(i+1)=y1(i)+h*(k1*(a0-y1(i))*(b0-y1(i)));    %Euler&lt;br /&gt;
    a1(i+1)=a0-y1(i+1); % evolución de la concentración de A&lt;br /&gt;
    b1(i+1)=b0-y1(i+1); % evolución de la concentración de B&lt;br /&gt;
end&lt;br /&gt;
%grafico &lt;br /&gt;
figure(1)&lt;br /&gt;
hold on&lt;br /&gt;
plot(t,y1,'g')&lt;br /&gt;
plot(t,a1,'r')&lt;br /&gt;
plot(t,b1,'b')&lt;br /&gt;
legend('concentración de C','concentración de A','concentración de B','location','best')&lt;br /&gt;
hold off &lt;br /&gt;
%en verde se muestra la concentración de C, en rojo la de A, y en azul la de B&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Archivo:3euler.jpeg|500px|miniaturadeimagen|center|Reacción compleja]]&lt;br /&gt;
&lt;br /&gt;
Aunque con observar los resultados ya podemos decir con casi absoluta seguridad cuáles son los límites de las concentraciones de cada reactivo &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;B&amp;lt;/math&amp;gt; y del producto &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt;, se ha diseñado un programa que, mediante diferencia de valores sucesivos de la variable &amp;lt;math&amp;gt;y(t)&amp;lt;/math&amp;gt;, nos devuelve el valor de la función cuando dicha diferencia es muy pequeña '''(se ha puesto una diferencia de 0.001)''', es decir, cuando tenemos una asíntota al tender &amp;lt;math&amp;gt;t→∞&amp;lt;/math&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
%Estudio de las asíntotas&lt;br /&gt;
t1=t0:h:10;%se aumenta la longitud de t, y se estima que se alcanzarán las asíntotas antes de t=10&lt;br /&gt;
y_=zeros(1,length(t1)); %se define un vector y_ idéntico a y1 pero con t hasta 10&lt;br /&gt;
a_=y_;&lt;br /&gt;
b_=y_;&lt;br /&gt;
y_(1)=y0;&lt;br /&gt;
a_(1)=a0;&lt;br /&gt;
b_(1)=b0;&lt;br /&gt;
for i=1:length(t1)-1&lt;br /&gt;
    y_(i+1)=y_(i)+h*(k1*(a0-y_(i))*(b0-y_(i)));&lt;br /&gt;
    diferencia=y_(i+1)-y_(i);&lt;br /&gt;
    if abs(diferencia)&amp;lt;=0.001&lt;br /&gt;
        limiteC=y_(i+1)&lt;br /&gt;
        break&lt;br /&gt;
    end&lt;br /&gt;
end&lt;br /&gt;
for i=1:length(t1)-1&lt;br /&gt;
    y_(i+1)=y_(i)+h*(k1*(a0-y_(i))*(b0-y_(i)));    &lt;br /&gt;
    a_(i+1)=a0-y_(i+1);&lt;br /&gt;
    diferencia2=a_(i+1)-a_(i);&lt;br /&gt;
    if abs(diferencia2)&amp;lt;=0.001&lt;br /&gt;
        limiteA=a_(i+1)&lt;br /&gt;
        break&lt;br /&gt;
    end&lt;br /&gt;
end&lt;br /&gt;
for i=1:length(t1)-1&lt;br /&gt;
    y_(i+1)=y_(i)+h*(k1*(a0-y_(i))*(b0-y_(i)));    &lt;br /&gt;
    b_(i+1)=b0-y_(i+1);&lt;br /&gt;
    diferencia3=b_(i+1)-b_(i);&lt;br /&gt;
    if abs(diferencia3)&amp;lt;=0.001&lt;br /&gt;
        limiteB=b_(i+1)&lt;br /&gt;
        break&lt;br /&gt;
    end&lt;br /&gt;
end&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
Que nos devuelve unos valores de las concentraciones para el límite de:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\lim A=2,0036≈2 mol/L&amp;lt;/math&amp;gt;:     &lt;br /&gt;
&amp;lt;math&amp;gt;\lim B=0,0036≈0mol/L&amp;lt;/math&amp;gt;:         &lt;br /&gt;
&amp;lt;math&amp;gt;\lim C=0,9964≈1mol/L&amp;lt;/math&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
Lo cual es lógico, ya que &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;B&amp;lt;/math&amp;gt; se combinan en una proporción de 1:1, luego &amp;lt;math&amp;gt;B&amp;lt;/math&amp;gt;, que tiene una concentración inicial de &amp;lt;math&amp;gt;b_0&amp;lt;/math&amp;gt;=1, será el reactivo limitante (el que desaparecerá por completo), mientras que &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt;, con &amp;lt;math&amp;gt;a_0&amp;lt;/math&amp;gt;=3, acabará con una concentración molar final igual a 2, y &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt;, del que no habia nada,alcanza una concentraccion de &amp;lt;math&amp;gt;1mol/L&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
= Método del Trapecio y Método de Runge-Kutta=&lt;br /&gt;
&lt;br /&gt;
A continuación, para obtener con más precisión las representaciones gráficas de las respectivas concentraciones, se opta por utilizar los métodos de los &amp;lt;math&amp;gt;Trapecios&amp;lt;/math&amp;gt; (segundo orden) y de &amp;lt;math&amp;gt;Runge-Kutta&amp;lt;/math&amp;gt; (cuarto orden). Desgraciadamente, no es posible comparar los errores cometidos por cada método con la expresión real de la concentración de C, ya que la ecuación diferencial no es de fácil resolución analítica, luego resulta imposible alcanzar una expresión explícita de la concentración en términos de nuestros datos conocidos; &amp;lt;math&amp;gt;a_0&amp;lt;/math&amp;gt;,&amp;lt;math&amp;gt;b_0&amp;lt;/math&amp;gt;,&amp;lt;math&amp;gt;k_1&amp;lt;/math&amp;gt;,&amp;lt;math&amp;gt;t (tiempo)&amp;lt;/math&amp;gt;.  Sin embargo, podemos confiar con bastante seguridad en el método sobre todo de &amp;lt;math&amp;gt;Runge-Kutta&amp;lt;/math&amp;gt;, debido a su cuarto orden. &lt;br /&gt;
&lt;br /&gt;
Para los trapecios, al ser un método implícito, es necesario despejar la componente &amp;lt;math&amp;gt;y_{n+1}&amp;lt;/math&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;y_{n+1}=\frac{(1+\frac{h}{2}∙k_1∙(a_0+b_0))-\sqrt{(1+\frac{h}{2}∙k_1∙(a_0+b_0))^2 -2∙h∙k_1(y_n+\frac{h}{2}∙k_1∙(a_0-y_n )∙(b_0-y_n)+\frac{h}{2}∙k_1∙a_0∙b_0) }}{k_1∙h}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Cabe destacar que este programa parte de los datos ya establecidos en el programa de Euler para '''t0, tN, y0, a0, b0, k1 y h''':&lt;br /&gt;
{{matlab|codigo= &lt;br /&gt;
%Trapecios&lt;br /&gt;
y2=zeros(1,length(t)); &lt;br /&gt;
a2=y2;&lt;br /&gt;
b2=y2;&lt;br /&gt;
y2(1)=y0;&lt;br /&gt;
a2(1)=a0;&lt;br /&gt;
b2(1)=b0;&lt;br /&gt;
for i=1:length(t)-1&lt;br /&gt;
    y2(i+1)=((1+0.5*h*k1*(a0+b0))-sqrt((1+0.5*h*k1*(a0+b0))^2-2*h*k1*(y2(i)+0.5*h*k1*(a0-y2(i))*(b0-y2(i))+0.5*h*k1*a0*b0)))/(k1*h);&lt;br /&gt;
    a2(i+1)=a0-y2(i+1);&lt;br /&gt;
    b2(i+1)=b0-y2(i+1);&lt;br /&gt;
end&lt;br /&gt;
 &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
%Runge-Kutta&lt;br /&gt;
y3=zeros(1,length(t)); &lt;br /&gt;
a3=y3;&lt;br /&gt;
b3=y3;&lt;br /&gt;
y3(1)=y0;&lt;br /&gt;
a3(1)=a0;&lt;br /&gt;
b3(1)=b0;&lt;br /&gt;
for i=1:length(t)-1 &lt;br /&gt;
    r1=k1*(a0-y3(i))*(b0-y3(i));&lt;br /&gt;
    r2=k1*(a0-y3(i)-0.5*r1*h)*(b0-y3(i)-0.5*r1*h);&lt;br /&gt;
    r3=k1*(a0-y3(i)-0.5*r2*h)*(b0-y3(i)-0.5*r2*h);&lt;br /&gt;
    r4=k1*(a0-y3(i)-r3*h)*(b0-y3(i)-r3*h);&lt;br /&gt;
    y3(i+1)=y3(i)+h/6*(r1+2*r2+2*r3+r4);&lt;br /&gt;
    a3(i+1)=a0-y3(i+1);&lt;br /&gt;
    b3(i+1)=b0-y3(i+1);&lt;br /&gt;
end&lt;br /&gt;
%se pintan las dos, en azul las soluciones de los Trapecios, y en negro las&lt;br /&gt;
%de Runge-Kutta. &lt;br /&gt;
figure(2)&lt;br /&gt;
hold on&lt;br /&gt;
plot(t,y2)&lt;br /&gt;
plot(t,a2)&lt;br /&gt;
plot(t,b2)&lt;br /&gt;
plot(t,y3,'k')&lt;br /&gt;
plot(t,a3,'k')&lt;br /&gt;
plot(t,b3,'k')&lt;br /&gt;
hold off&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
Que proporciona el resultado que se puede observar en la primera gráfica adjunta. Como podemos ver, es prácticamente indistinguible una gráfica de la otra. Sin embargo, si la juntamos con las gráficas proporcionadas por el método de Euler, que se representa ahora en rojo, la diferencia es palpable (ver gráfica 2), lo cual evidencia la peor precisión del método de Euler.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:4trapeciokung.jpeg|500px|miniaturadeimagen|center|Reacción compleja]]&lt;br /&gt;
&lt;br /&gt;
[[Archivo:4comparacion.jpeg|500px|miniaturadeimagen|center|Gráfico 2]]&lt;br /&gt;
&lt;br /&gt;
=Reacción consecutiva=&lt;br /&gt;
&lt;br /&gt;
Consideremos ahora que se produce una reacción consecutiva de la forma, &lt;br /&gt;
&lt;br /&gt;
                                                                   &amp;lt;math&amp;gt;A + B → k_1C → k_2D&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
De tal modo que los reactivos &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;B&amp;lt;/math&amp;gt; se combinan en la proporción 1:1 para formar compuesto &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt;, el cual, a su vez, se va descomponiendo para formar compuesto &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt;. Al igual que se ha hecho antes al analizar las otras reacciones, se considerará que se cumple la ley de acción de masas. Es decir, la velocidad con la que se forma compuesto &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; es proporcional a las concentraciones existentes de &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt; y de &amp;lt;math&amp;gt;B&amp;lt;/math&amp;gt; y del mismo modo la de formación de la sustancia &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; lo es a la concentración de &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; que se ha ido formando.&lt;br /&gt;
&lt;br /&gt;
Esta reacción consecutiva está representada por el siguiente problema de valor inicial:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;&lt;br /&gt;
   \left . &lt;br /&gt;
      \begin{matrix} &lt;br /&gt;
         y'_1(t)={k_{1}}({a_{0}}-y_1(t))({b_{0}}-y_1(t))\\&lt;br /&gt;
         y'_2(t)={k_{2}}(y_1(t)-y_2(t))\\&lt;br /&gt;
y_1(0)=0\\y_2(0)=0&lt;br /&gt;
      \end{matrix}&lt;br /&gt;
   \right \}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
Donde &amp;lt;math&amp;gt;a_0&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;b_0&amp;lt;/math&amp;gt; representan las concentraciones iniciales de &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;B&amp;lt;/math&amp;gt; respectivamente, &amp;lt;math&amp;gt;k_1&amp;lt;/math&amp;gt; es la constante de proporcionalidad que rige la primera reacción y &amp;lt;math&amp;gt;k_2&amp;lt;/math&amp;gt; la que rige la segunda reacción o reacción consecutiva. &amp;lt;math&amp;gt;y_1’(t)&amp;lt;/math&amp;gt; e  &amp;lt;math&amp;gt;y_2’(t)&amp;lt;/math&amp;gt; representan las velocidades de las reacciones, es decir, las velocidades con que se forman los productos &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt;. &amp;lt;math&amp;gt;y_2(t)&amp;lt;/math&amp;gt; representa la concentración del producto &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; pero es importante apreciar que en este caso &amp;lt;math&amp;gt;y_1(t)&amp;lt;/math&amp;gt; no nos da el valor de la concentración de &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; directamente, sino que ésta será &amp;lt;math&amp;gt;y_1(t)&amp;lt;/math&amp;gt;- &amp;lt;math&amp;gt;y_2(t)&amp;lt;/math&amp;gt;, la cantidad que se forma en la primera reacción menos la que se emplea para formar el producto &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; en la segunda.&lt;br /&gt;
&lt;br /&gt;
Este problema se va a resolver para dos casos diferentes. Uno en el cual se considera que la segunda reacción es más rápida que la primera, lo que supone tomar un valor de la constante &amp;lt;math&amp;gt;k_2&amp;lt;/math&amp;gt;  mayor que &amp;lt;math&amp;gt;k_1&amp;lt;/math&amp;gt;. Y otro en el cual se considera que es más lenta, lo que implica que &amp;lt;math&amp;gt;k_2&amp;lt;/math&amp;gt; es menor que &amp;lt;math&amp;gt;k_1&amp;lt;/math&amp;gt;. Concretamente vamos a tomar los siguientes valores para resolver el problema numéricamente; &amp;lt;math&amp;gt;a_0&amp;lt;/math&amp;gt;=3 ,  &amp;lt;math&amp;gt;b_0&amp;lt;/math&amp;gt;=1, &amp;lt;math&amp;gt;k_1&amp;lt;/math&amp;gt;=1,  &amp;lt;math&amp;gt;k_2&amp;lt;/math&amp;gt;=5, &amp;lt;math&amp;gt;k_2&amp;lt;/math&amp;gt;=1/5, .En ambos casos se resuelve para los primeros 10 segundos.&lt;br /&gt;
&lt;br /&gt;
==La reacción D es más rápida que la reacción C==&lt;br /&gt;
CASO    &amp;lt;math&amp;gt;k_1=5  &amp;lt;/math&amp;gt;   '''h=0.1''' &lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
&lt;br /&gt;
%datos&lt;br /&gt;
y0=[0;0];&lt;br /&gt;
z0=[0;0];&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;
%matriz de las soluciones&lt;br /&gt;
y=zeros(2,length(t)); %euler&lt;br /&gt;
y(:,1)=y0;&lt;br /&gt;
 &lt;br /&gt;
z=zeros(2,length(t)); %runge-kutta&lt;br /&gt;
z(:,1)=y0;&lt;br /&gt;
 &lt;br /&gt;
for i=1:length(t)-1&lt;br /&gt;
 %euler&lt;br /&gt;
 y(:,i+1)=y(:,i)+h*[1*(3-y(1,i))*(1-y(1,i)); 5*(y(1,i)-y(2,i))];&lt;br /&gt;
 %runge-kutta&lt;br /&gt;
 K1=[1*(3-z(1,i))*(1-z(1,i)); 5*(z(1,i)-z(2,i))];&lt;br /&gt;
 K2=[1*(3-(z(1,i)+h/2*K1(1)))*(1-(z(1,i)+h/2*K1(1))); 5*((y(1,i)+h/2*K1(2))-(y(2,i)+h/2*K1(2)))];&lt;br /&gt;
 K3=[1*(3-(z(1,i)+h/2*K2(1)))*(1-(z(1,i)+h/2*K2(1))); 5*((y(1,i)+h/2*K2(2))-(y(2,i)+h/2*K2(2)))];&lt;br /&gt;
 K4=[1*(3-(z(1,i)+h*K3(1)))*(1-(z(1,i)+h*K3(1))); 5*((y(1,i)+h*K3(2))-(y(2,i)+h*K3(2)))];&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;
% se calcula la concentración de C=y1t)-y2(t)&lt;br /&gt;
Ay=y(1,:)-y(2,:); %euler&lt;br /&gt;
Az=z(1,:)-z(2,:); %runge-kutta&lt;br /&gt;
 &lt;br /&gt;
figure(1)&lt;br /&gt;
hold on&lt;br /&gt;
plot(t,Ay) %concentración de C por euler&lt;br /&gt;
plot(t,y(2,:),'r') %concentración de D por euler&lt;br /&gt;
plot(t,Az,'k') %concentración de C por runge-kutta&lt;br /&gt;
plot(t,z(2,:),'g') %concentración de D por runge-kutta&lt;br /&gt;
legend('concentración de C por euler','concentración de D por euler','concentración de C por runge-kutta','concentración de D por runge-kutta','Location','best')&lt;br /&gt;
hold off&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:graficoa.jpeg|500px|miniaturadeimagen|center|Reacción compleja]]&lt;br /&gt;
&lt;br /&gt;
Se observa que en en los primeros instantes aumentan las concentraciones de &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; aumentan sus concentraciones. Antes de que pase 1 segundo, la concentración &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; alcanza un máximo (de unos 0.3 molar) y va disminuyendo progresivamente hasta alcanzar un valor de 0 molar. La concentración &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; sigue creciendo hasta llegar a 1 molar. Una vez que tanto &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; como &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; alcanzan estos valores, se estabiliza la reacción. &lt;br /&gt;
&lt;br /&gt;
Como hemos impuesto que la reacción &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; es más rápida que &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt;, se observa que &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; empieza creciendo más rápidamente, pero como reacciona más despacio que &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; su concentración disminuye progresivamente, mientras que la de &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; aumenta.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''CASO'''  &amp;lt;math&amp;gt;k_2=5  &amp;lt;/math&amp;gt;   '''h=0.3''' &lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
&lt;br /&gt;
%datos&lt;br /&gt;
y0=[0;0];&lt;br /&gt;
z0=[0;0];&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=10;&lt;br /&gt;
h=0.3;&lt;br /&gt;
 &lt;br /&gt;
%variable independiente t&lt;br /&gt;
t=t0:h:tN;&lt;br /&gt;
 &lt;br /&gt;
%matriz de las soluciones&lt;br /&gt;
y=zeros(2,length(t)); %euler&lt;br /&gt;
y(:,1)=y0;&lt;br /&gt;
 &lt;br /&gt;
z=zeros(2,length(t)); %runge-kutta&lt;br /&gt;
z(:,1)=y0;&lt;br /&gt;
 &lt;br /&gt;
for i=1:length(t)-1&lt;br /&gt;
 %euler&lt;br /&gt;
 y(:,i+1)=y(:,i)+h*[1*(3-y(1,i))*(1-y(1,i)); 5*(y(1,i)-y(2,i))];&lt;br /&gt;
 %runge-kutta&lt;br /&gt;
 K1=[1*(3-z(1,i))*(1-z(1,i)); 5*(z(1,i)-z(2,i))];&lt;br /&gt;
 K2=[1*(3-(z(1,i)+h/2*K1(1)))*(1-(z(1,i)+h/2*K1(1))); 5*((y(1,i)+h/2*K1(2))-(y(2,i)+h/2*K1(2)))];&lt;br /&gt;
 K3=[1*(3-(z(1,i)+h/2*K2(1)))*(1-(z(1,i)+h/2*K2(1))); 5*((y(1,i)+h/2*K2(2))-(y(2,i)+h/2*K2(2)))];&lt;br /&gt;
 K4=[1*(3-(z(1,i)+h*K3(1)))*(1-(z(1,i)+h*K3(1))); 5*((y(1,i)+h*K3(2))-(y(2,i)+h*K3(2)))];&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;
% se calcula la concentración de C=y1t)-y2(t)&lt;br /&gt;
Ay=y(1,:)-y(2,:); %euler&lt;br /&gt;
Az=z(1,:)-z(2,:); %runge-kutta&lt;br /&gt;
 &lt;br /&gt;
figure(1)&lt;br /&gt;
hold on&lt;br /&gt;
plot(t,Ay) %concentración de C por euler&lt;br /&gt;
plot(t,y(2,:),'r') %concentración de D por euler&lt;br /&gt;
plot(t,Az,'k') %concentración de C por runge-kutta&lt;br /&gt;
plot(t,z(2,:),'g') %concentración de D por runge-kutta&lt;br /&gt;
legend('concentración de C por euler','concentración de D por euler','concentración de C por runge-kutta','concentración de D por runge-kutta','Location','best')&lt;br /&gt;
hold off&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:graficob.jpeg|500px|miniaturadeimagen|center|Reacción compleja]]&lt;br /&gt;
&lt;br /&gt;
Repetimos el programa pero para un tamaño de paso mayor, de '''h=0.3''', y observamos que no  es suficientemente preciso, sobre todo al principio, no se puede analizar bien lo que está pasando en la reacción.&lt;br /&gt;
&lt;br /&gt;
==La reacción D es más lenta que la reacción C==&lt;br /&gt;
&lt;br /&gt;
CASO  &amp;lt;math&amp;gt;k_1 &amp;lt;/math&amp;gt;=1,   &amp;lt;math&amp;gt;k_2 &amp;lt;/math&amp;gt;=1/5&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
&lt;br /&gt;
%datos&lt;br /&gt;
y0=[0;0];&lt;br /&gt;
z0=[0;0];&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;
%matriz de las soluciones&lt;br /&gt;
y=zeros(2,length(t)); %euler&lt;br /&gt;
y(:,1)=y0;&lt;br /&gt;
 &lt;br /&gt;
z=zeros(2,length(t)); %runge-kutta&lt;br /&gt;
z(:,1)=y0;&lt;br /&gt;
 &lt;br /&gt;
for i=1:length(t)-1&lt;br /&gt;
 %euler&lt;br /&gt;
 y(:,i+1)=y(:,i)+h*[1*(3-y(1,i))*(1-y(1,i)); 1/5*(y(1,i)-y(2,i))];&lt;br /&gt;
 %runge-kutta&lt;br /&gt;
 K1=[1*(3-z(1,i))*(1-z(1,i)); 1/5*(z(1,i)-z(2,i))];&lt;br /&gt;
 K2=[1*(3-(z(1,i)+h/2*K1(1)))*(1-(z(1,i)+h/2*K1(1))); 1/5*((y(1,i)+h/2*K1(2))-(y(2,i)+h/2*K1(2)))];&lt;br /&gt;
 K3=[1*(3-(z(1,i)+h/2*K2(1)))*(1-(z(1,i)+h/2*K2(1))); 1/5*((y(1,i)+h/2*K2(2))-(y(2,i)+h/2*K2(2)))];&lt;br /&gt;
 K4=[1*(3-(z(1,i)+h*K3(1)))*(1-(z(1,i)+h*K3(1))); 1/5*((y(1,i)+h*K3(2))-(y(2,i)+h*K3(2)))];&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;
% se calcula la concentración de C=y1t)-y2(t)&lt;br /&gt;
Ay=y(1,:)-y(2,:); %euler&lt;br /&gt;
Az=z(1,:)-z(2,:); %runge-kutta&lt;br /&gt;
 &lt;br /&gt;
figure(1)&lt;br /&gt;
hold on&lt;br /&gt;
plot(t,Ay) %concentración de C por euler&lt;br /&gt;
plot(t,y(2,:),'r') %concentración de D por euler&lt;br /&gt;
plot(t,Az,'k') %concentración de C por runge-kutta&lt;br /&gt;
plot(t,z(2,:),'g') %concentración de D por runge-kutta&lt;br /&gt;
legend('concentración de C por euler','concentración de D por euler','concentración de C por runge-kutta','concentración de D por runge-kutta','Location','best')&lt;br /&gt;
hold off&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:graficoc.jpeg|500px|miniaturadeimagen|center|Reacción compleja]]&lt;br /&gt;
&lt;br /&gt;
Si ahora imponemos que la reacción  &amp;lt;math&amp;gt;C &amp;lt;/math&amp;gt; es más rápida que  &amp;lt;math&amp;gt;D &amp;lt;/math&amp;gt;, obtenemos lo siguiente. Se parece a la gráfica que obtuvimos en el programa anterior, pero  más extendida en el tiempo, más lenta.  &amp;lt;math&amp;gt;C &amp;lt;/math&amp;gt; alcanza una concentración máxima de unos 0.8 molar antes de empezar a decrecer a medida que avanza el tiempo y acercándose a un valor de '''0''' molar.  &amp;lt;math&amp;gt;D &amp;lt;/math&amp;gt; crece más lentamente que en la gráfica anterior, pero se aproxima al mismo valor, '''1''' molar.&lt;br /&gt;
Se observa que aunque hagamos la reacción  &amp;lt;math&amp;gt;C &amp;lt;/math&amp;gt; más rápida, tenemos las mismas concentraciones finales, pero tardan más tiempo en obtenerse, ya que la reacción tarda más en estabilizarse.&lt;br /&gt;
&lt;br /&gt;
&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>Joseva</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Reacciones_complejas_(Grupo_D1)&amp;diff=27189</id>
		<title>Reacciones complejas (Grupo D1)</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Reacciones_complejas_(Grupo_D1)&amp;diff=27189"/>
				<updated>2015-03-05T23:09:45Z</updated>
		
		<summary type="html">&lt;p&gt;Joseva: /* Concentración del reactivo C a lo largo del tiempo */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{ TrabajoED | Reacciones complejas (Grupo D1) | [[:Categoría:Ecuaciones Diferenciales|Ecuaciones Diferenciales]]|[[:Categoría:ED14/15|Curso 2014-15]] | Rincón Crespo, Kevin&lt;br /&gt;
&lt;br /&gt;
Rodríguez Gómez, Javier&lt;br /&gt;
&lt;br /&gt;
Sans Jiménez, Alejandro&lt;br /&gt;
&lt;br /&gt;
Sesto Muñoz, María Victoria&lt;br /&gt;
&lt;br /&gt;
Vallejo Asín, José Manuel &lt;br /&gt;
&lt;br /&gt;
Villarino Redondo, Álvaro }}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=Introducción=&lt;br /&gt;
Se considera una reacción química irreversible en una solución bien mezclada. Supondremos que la reacción ocurre para un volumen y temperatura constantes. Al inicio se encuentran dos reactivos &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;B&amp;lt;/math&amp;gt;, que van formando un producto &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; en lo que se conoce como una reacción bimolecular, es decir, una molécula de &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt; y una de &amp;lt;math&amp;gt;B&amp;lt;/math&amp;gt; producen una de &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt;, &lt;br /&gt;
                                                                     &amp;lt;math&amp;gt;A + B → C&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Supondremos también que se satisface la ley de acción de masas, que establece que la velocidad de reacción es proporcional al producto de las concentraciones de los reactivos.&lt;br /&gt;
&lt;br /&gt;
=Concentración del reactivo &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; a lo largo del tiempo=&lt;br /&gt;
En primer lugar, suponiendo que la reacción es irreversible, es decir, que &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; no puede volver a formar &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;B&amp;lt;/math&amp;gt;, se puede expresar la situación mediante el siguiente problema de valor inicial, cuando t&amp;gt;0.:&lt;br /&gt;
   &amp;lt;math&amp;gt;&lt;br /&gt;
   \left . &lt;br /&gt;
      \begin{matrix} &lt;br /&gt;
         y'(t)={k_{1}}({a_{0}}-y(t))({b_{0}}-y(t))=0\\&lt;br /&gt;
         y(0)=0&lt;br /&gt;
      \end{matrix}&lt;br /&gt;
   \right \}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Donde &amp;lt;math&amp;gt; {a_{0}}&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;{b_{0}}&amp;lt;/math&amp;gt; representan las concentraciones iniciales de '''A''' y '''B''' respectivamente y &amp;lt;math&amp;gt;{k_{1}}&amp;lt;/math&amp;gt; es la constante de proporcionalidad que indica la ley de acción de masas. &amp;lt;math&amp;gt;y’(t)&amp;lt;/math&amp;gt; representa la velocidad de reacción, es decir, la velocidad con que se forma el producto &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; ; mientras que la solución de la ecuación diferencial, &amp;lt;math&amp;gt;y(t)&amp;lt;/math&amp;gt; , representa la concentración de &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt;, la cantidad de compuesto que se ha formado. Para comprobar que la solución de este problema de Cauchy es única, comenzamos definiendo.:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;math&amp;gt;f(t,y)={k_{1}}({a_{0}}-y(t))({b_{0}}-y(t))=0,   t&amp;gt;0 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Observamos que &amp;lt;math&amp;gt;f(t,y)&amp;lt;/math&amp;gt; es continua en el intervalo &amp;lt;math&amp;gt; I=(0,∞)∩B((0,0),r&amp;gt;0)&amp;lt;/math&amp;gt;, por lo que ya aseguramos la existencia de al menos una solución. Examinando la derivada parcial.:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\frac{∂f}{∂y}=k_1(-a_0-b_0+2y)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Se deduce que al ser un polinomio no va a haber problemas de continuidad para ninguna bola. De esta forma, podemos asegurar que existe una única solución.&lt;br /&gt;
&lt;br /&gt;
==Concentración del reactivo C a lo largo del tiempo en un proceso reversible==&lt;br /&gt;
&lt;br /&gt;
Ahora bien, ¿qué pasaría si la reacción fuese reversible? Con esto lo que queremos indicar es que además de formarse  &amp;lt;math&amp;gt;C &amp;lt;/math&amp;gt;, este también se descompone de nuevo en  &amp;lt;math&amp;gt;A &amp;lt;/math&amp;gt; y  &amp;lt;math&amp;gt;B &amp;lt;/math&amp;gt;. Por lo tanto, nos quedaría una ecuación diferencial con la siguiente forma, cuando &amp;lt;math&amp;gt;t&amp;gt;0 &amp;lt;/math&amp;gt; :&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; y'(t)={k_{1}}({a_{0}}-y(t))({b_{0}}-y(t))-Cy(t)&amp;lt;/math&amp;gt;  &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Si nos fijamos, la modificación es sencillamente restar  &amp;lt;math&amp;gt;y(t) &amp;lt;/math&amp;gt; multiplicada por una constante, la cual refleja qué porcentaje de  &amp;lt;math&amp;gt;C &amp;lt;/math&amp;gt; se va descomponiendo a medida que se da, simultáneamente, la reacción  &amp;lt;math&amp;gt;A + B → C &amp;lt;/math&amp;gt;. Sin embargo, esta constante no puede tener cualquier valor, ya que en una reacción se cumple la conservación de masa. Por ello, a  &amp;lt;math&amp;gt;C &amp;lt;/math&amp;gt; le asociaremos el siguiente dominio:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;C∈(0,1)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Obsérvese que  &amp;lt;math&amp;gt;C &amp;lt;/math&amp;gt; tiene que ser mayor que 0 para que sea reversible, pero al mismo tiempo inferior que 1, ya que si no se estaría descomponiendo más compuesto  &amp;lt;math&amp;gt;C &amp;lt;/math&amp;gt; del que realmente se ha formado, en otras palabras, estaría apareciendo masa de la nada.&lt;br /&gt;
&lt;br /&gt;
=Método de Euler=&lt;br /&gt;
&lt;br /&gt;
Una vez llegados a este punto, se procede a ver una interpretación gráfica de la reacción. Para ello, se refleja en la gráfica (en un intervalo de 2 segundos), cómo varían las concentraciones tanto de &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt; (&amp;lt;math&amp;gt;a_0&amp;lt;/math&amp;gt;=3 mol/L) y &amp;lt;math&amp;gt;B&amp;lt;/math&amp;gt; (&amp;lt;math&amp;gt;b_0&amp;lt;/math&amp;gt;=1 mol/L) como de &amp;lt;math&amp;gt; C&amp;lt;/math&amp;gt;, para una &amp;lt;math&amp;gt;k_1&amp;lt;/math&amp;gt;=1 mol/s. Se comienza, por el momento, aplicando el método de Euler. Posteriormente se utilizarán métodos más precisos.&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo= &lt;br /&gt;
% Euler&lt;br /&gt;
clear all&lt;br /&gt;
% datos del problema&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=2;&lt;br /&gt;
y0=0;&lt;br /&gt;
h=0.1;&lt;br /&gt;
k1=1;&lt;br /&gt;
a0=3;&lt;br /&gt;
b0=1;&lt;br /&gt;
% Definimos la variable independiente&lt;br /&gt;
t=t0:h:tN;&lt;br /&gt;
% Guardamos los valores de la solución aproximada en el vector &amp;quot;y1&amp;quot; y&lt;br /&gt;
% establecemos los vectores de concentraciones A y B&lt;br /&gt;
y1=zeros(1,length(t)); &lt;br /&gt;
y1(1)=y0;&lt;br /&gt;
a1=zeros(1,length(t));&lt;br /&gt;
a1(1)=a0;&lt;br /&gt;
b1=zeros(1,length(t));&lt;br /&gt;
b1(1)=b0;&lt;br /&gt;
% A continuación, calculamos las componentes de los vectores y1, a y b&lt;br /&gt;
for i=1:length(t)-1&lt;br /&gt;
    y1(i+1)=y1(i)+h*(k1*(a0-y1(i))*(b0-y1(i)));    %Euler&lt;br /&gt;
    a1(i+1)=a0-y1(i+1); % evolución de la concentración de A&lt;br /&gt;
    b1(i+1)=b0-y1(i+1); % evolución de la concentración de B&lt;br /&gt;
end&lt;br /&gt;
%grafico &lt;br /&gt;
figure(1)&lt;br /&gt;
hold on&lt;br /&gt;
plot(t,y1,'g')&lt;br /&gt;
plot(t,a1,'r')&lt;br /&gt;
plot(t,b1,'b')&lt;br /&gt;
legend('concentración de C','concentración de A','concentración de B','location','best')&lt;br /&gt;
hold off &lt;br /&gt;
%en verde se muestra la concentración de C, en rojo la de A, y en azul la de B&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Archivo:3euler.jpeg|500px|miniaturadeimagen|center|Reacción compleja]]&lt;br /&gt;
&lt;br /&gt;
Aunque con observar los resultados ya podemos decir con casi absoluta seguridad cuáles son los límites de las concentraciones de cada reactivo &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;B&amp;lt;/math&amp;gt; y del producto &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt;, se ha diseñado un programa que, mediante diferencia de valores sucesivos de la variable &amp;lt;math&amp;gt;y(t)&amp;lt;/math&amp;gt;, nos devuelve el valor de la función cuando dicha diferencia es muy pequeña '''(se ha puesto una diferencia de 0.001)''', es decir, cuando tenemos una asíntota al tender &amp;lt;math&amp;gt;t→∞&amp;lt;/math&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
%Estudio de las asíntotas&lt;br /&gt;
t1=t0:h:10;%se aumenta la longitud de t, y se estima que se alcanzarán las asíntotas antes de t=10&lt;br /&gt;
y_=zeros(1,length(t1)); %se define un vector y_ idéntico a y1 pero con t hasta 10&lt;br /&gt;
a_=y_;&lt;br /&gt;
b_=y_;&lt;br /&gt;
y_(1)=y0;&lt;br /&gt;
a_(1)=a0;&lt;br /&gt;
b_(1)=b0;&lt;br /&gt;
for i=1:length(t1)-1&lt;br /&gt;
    y_(i+1)=y_(i)+h*(k1*(a0-y_(i))*(b0-y_(i)));&lt;br /&gt;
    diferencia=y_(i+1)-y_(i);&lt;br /&gt;
    if abs(diferencia)&amp;lt;=0.001&lt;br /&gt;
        limiteC=y_(i+1)&lt;br /&gt;
        break&lt;br /&gt;
    end&lt;br /&gt;
end&lt;br /&gt;
for i=1:length(t1)-1&lt;br /&gt;
    y_(i+1)=y_(i)+h*(k1*(a0-y_(i))*(b0-y_(i)));    &lt;br /&gt;
    a_(i+1)=a0-y_(i+1);&lt;br /&gt;
    diferencia2=a_(i+1)-a_(i);&lt;br /&gt;
    if abs(diferencia2)&amp;lt;=0.001&lt;br /&gt;
        limiteA=a_(i+1)&lt;br /&gt;
        break&lt;br /&gt;
    end&lt;br /&gt;
end&lt;br /&gt;
for i=1:length(t1)-1&lt;br /&gt;
    y_(i+1)=y_(i)+h*(k1*(a0-y_(i))*(b0-y_(i)));    &lt;br /&gt;
    b_(i+1)=b0-y_(i+1);&lt;br /&gt;
    diferencia3=b_(i+1)-b_(i);&lt;br /&gt;
    if abs(diferencia3)&amp;lt;=0.001&lt;br /&gt;
        limiteB=b_(i+1)&lt;br /&gt;
        break&lt;br /&gt;
    end&lt;br /&gt;
end&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
Que nos devuelve unos valores de las concentraciones para el límite de:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\lim A=2,0036≈2 mol/L&amp;lt;/math&amp;gt;:     &lt;br /&gt;
&amp;lt;math&amp;gt;\lim B=0,0036≈0mol/L&amp;lt;/math&amp;gt;:         &lt;br /&gt;
&amp;lt;math&amp;gt;\lim C=0,9964≈1mol/L&amp;lt;/math&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
Lo cual es lógico, ya que &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;B&amp;lt;/math&amp;gt; se combinan en una proporción de 1:1, luego &amp;lt;math&amp;gt;B&amp;lt;/math&amp;gt;, que tiene una concentración inicial de &amp;lt;math&amp;gt;b_0&amp;lt;/math&amp;gt;=1, será el reactivo limitante (el que desaparecerá por completo), mientras que &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt;, con &amp;lt;math&amp;gt;a_0&amp;lt;/math&amp;gt;=3, acabará con una concentración molar final igual a 2, y &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt;, del que no habia nada,alcanza una concentraccion de &amp;lt;math&amp;gt;1mol/L&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
= Método del Trapecio y Método de Runge-Kutta=&lt;br /&gt;
&lt;br /&gt;
A continuación, para obtener con más precisión las representaciones gráficas de las respectivas concentraciones, se opta por utilizar los métodos de los &amp;lt;math&amp;gt;Trapecios&amp;lt;/math&amp;gt; (segundo orden) y de &amp;lt;math&amp;gt;Runge-Kutta&amp;lt;/math&amp;gt; (cuarto orden). Desgraciadamente, no es posible comparar los errores cometidos por cada método con la expresión real de la concentración de C, ya que la ecuación diferencial no es de fácil resolución analítica, luego resulta imposible alcanzar una expresión explícita de la concentración en términos de nuestros datos conocidos; &amp;lt;math&amp;gt;a_0&amp;lt;/math&amp;gt;,&amp;lt;math&amp;gt;b_0&amp;lt;/math&amp;gt;,&amp;lt;math&amp;gt;k_1&amp;lt;/math&amp;gt;,&amp;lt;math&amp;gt;t (tiempo)&amp;lt;/math&amp;gt;.  Sin embargo, podemos confiar con bastante seguridad en el método sobre todo de &amp;lt;math&amp;gt;Runge-Kutta&amp;lt;/math&amp;gt;, debido a su cuarto orden. &lt;br /&gt;
&lt;br /&gt;
Para los trapecios, al ser un método implícito, es necesario despejar la componente &amp;lt;math&amp;gt;y_{n+1}&amp;lt;/math&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;y_{n+1}=\frac{(1+\frac{h}{2}∙k_1∙(a_0+b_0))-\sqrt{(1+\frac{h}{2}∙k_1∙(a_0+b_0))^2 -2∙h∙k_1(y_n+\frac{h}{2}∙k_1∙(a_0-y_n )∙(b_0-y_n)+\frac{h}{2}∙k_1∙a_0∙b_0) }}{k_1∙h}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Cabe destacar que este programa parte de los datos ya establecidos en el programa de Euler para '''t0, tN, y0, a0, b0, k1 y h''':&lt;br /&gt;
{{matlab|codigo= &lt;br /&gt;
%Trapecios&lt;br /&gt;
y2=zeros(1,length(t)); &lt;br /&gt;
a2=y2;&lt;br /&gt;
b2=y2;&lt;br /&gt;
y2(1)=y0;&lt;br /&gt;
a2(1)=a0;&lt;br /&gt;
b2(1)=b0;&lt;br /&gt;
for i=1:length(t)-1&lt;br /&gt;
    y2(i+1)=((1+0.5*h*k1*(a0+b0))-sqrt((1+0.5*h*k1*(a0+b0))^2-2*h*k1*(y2(i)+0.5*h*k1*(a0-y2(i))*(b0-y2(i))+0.5*h*k1*a0*b0)))/(k1*h);&lt;br /&gt;
    a2(i+1)=a0-y2(i+1);&lt;br /&gt;
    b2(i+1)=b0-y2(i+1);&lt;br /&gt;
end&lt;br /&gt;
 &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
%Runge-Kutta&lt;br /&gt;
y3=zeros(1,length(t)); &lt;br /&gt;
a3=y3;&lt;br /&gt;
b3=y3;&lt;br /&gt;
y3(1)=y0;&lt;br /&gt;
a3(1)=a0;&lt;br /&gt;
b3(1)=b0;&lt;br /&gt;
for i=1:length(t)-1 &lt;br /&gt;
    r1=k1*(a0-y3(i))*(b0-y3(i));&lt;br /&gt;
    r2=k1*(a0-y3(i)-0.5*r1*h)*(b0-y3(i)-0.5*r1*h);&lt;br /&gt;
    r3=k1*(a0-y3(i)-0.5*r2*h)*(b0-y3(i)-0.5*r2*h);&lt;br /&gt;
    r4=k1*(a0-y3(i)-r3*h)*(b0-y3(i)-r3*h);&lt;br /&gt;
    y3(i+1)=y3(i)+h/6*(r1+2*r2+2*r3+r4);&lt;br /&gt;
    a3(i+1)=a0-y3(i+1);&lt;br /&gt;
    b3(i+1)=b0-y3(i+1);&lt;br /&gt;
end&lt;br /&gt;
%se pintan las dos, en azul las soluciones de los Trapecios, y en negro las&lt;br /&gt;
%de Runge-Kutta. &lt;br /&gt;
figure(2)&lt;br /&gt;
hold on&lt;br /&gt;
plot(t,y2)&lt;br /&gt;
plot(t,a2)&lt;br /&gt;
plot(t,b2)&lt;br /&gt;
plot(t,y3,'k')&lt;br /&gt;
plot(t,a3,'k')&lt;br /&gt;
plot(t,b3,'k')&lt;br /&gt;
hold off&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
Que proporciona el resultado que se puede observar en la primera gráfica adjunta. Como podemos ver, es prácticamente indistinguible una gráfica de la otra. Sin embargo, si la juntamos con las gráficas proporcionadas por el método de Euler, que se representa ahora en rojo, la diferencia es palpable (ver gráfica 2), lo cual evidencia la peor precisión del método de Euler.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:4trapeciokung.jpeg|500px|miniaturadeimagen|center|Reacción compleja]]&lt;br /&gt;
&lt;br /&gt;
[[Archivo:4comparacion.jpeg|500px|miniaturadeimagen|center|Gráfico 2]]&lt;br /&gt;
&lt;br /&gt;
=Reacción consecutiva=&lt;br /&gt;
&lt;br /&gt;
Consideremos ahora que se produce una reacción consecutiva de la forma, &lt;br /&gt;
&lt;br /&gt;
                                                                   &amp;lt;math&amp;gt;A + B → k_1C → k_2D&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
De tal modo que los reactivos &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;B&amp;lt;/math&amp;gt; se combinan en la proporción 1:1 para formar compuesto &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt;, el cual, a su vez, se va descomponiendo para formar compuesto &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt;. Al igual que se ha hecho antes al analizar las otras reacciones, se considerará que se cumple la ley de acción de masas. Es decir, la velocidad con la que se forma compuesto &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; es proporcional a las concentraciones existentes de &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt; y de &amp;lt;math&amp;gt;B&amp;lt;/math&amp;gt; y del mismo modo la de formación de la sustancia &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; lo es a la concentración de &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; que se ha ido formando.&lt;br /&gt;
&lt;br /&gt;
Esta reacción consecutiva está representada por el siguiente problema de valor inicial:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;&lt;br /&gt;
   \left . &lt;br /&gt;
      \begin{matrix} &lt;br /&gt;
         y'_1(t)={k_{1}}({a_{0}}-y_1(t))({b_{0}}-y_1(t))\\&lt;br /&gt;
         y'_2(t)={k_{2}}(y_1(t)-y_2(t))\\&lt;br /&gt;
y_1(0)=0\\y_2(0)=0&lt;br /&gt;
      \end{matrix}&lt;br /&gt;
   \right \}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
Donde &amp;lt;math&amp;gt;a_0&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;b_0&amp;lt;/math&amp;gt; representan las concentraciones iniciales de &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;B&amp;lt;/math&amp;gt; respectivamente, &amp;lt;math&amp;gt;k_1&amp;lt;/math&amp;gt; es la constante de proporcionalidad que rige la primera reacción y &amp;lt;math&amp;gt;k_2&amp;lt;/math&amp;gt; la que rige la segunda reacción o reacción consecutiva. &amp;lt;math&amp;gt;y_1’(t)&amp;lt;/math&amp;gt; e  &amp;lt;math&amp;gt;y_2’(t)&amp;lt;/math&amp;gt; representan las velocidades de las reacciones, es decir, las velocidades con que se forman los productos &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt;. &amp;lt;math&amp;gt;y_2(t)&amp;lt;/math&amp;gt; representa la concentración del producto &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; pero es importante apreciar que en este caso &amp;lt;math&amp;gt;y_1(t)&amp;lt;/math&amp;gt; no nos da el valor de la concentración de &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; directamente, sino que ésta será &amp;lt;math&amp;gt;y_1(t)&amp;lt;/math&amp;gt;- &amp;lt;math&amp;gt;y_2(t)&amp;lt;/math&amp;gt;, la cantidad que se forma en la primera reacción menos la que se emplea para formar el producto &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; en la segunda.&lt;br /&gt;
&lt;br /&gt;
Este problema se va a resolver para dos casos diferentes. Uno en el cual se considera que la segunda reacción es más rápida que la primera, lo que supone tomar un valor de la constante &amp;lt;math&amp;gt;k_2&amp;lt;/math&amp;gt;  mayor que &amp;lt;math&amp;gt;k_1&amp;lt;/math&amp;gt;. Y otro en el cual se considera que es más lenta, lo que implica que &amp;lt;math&amp;gt;k_2&amp;lt;/math&amp;gt; es menor que &amp;lt;math&amp;gt;k_1&amp;lt;/math&amp;gt;. Concretamente vamos a tomar los siguientes valores para resolver el problema numéricamente; &amp;lt;math&amp;gt;a_0&amp;lt;/math&amp;gt;=3 ,  &amp;lt;math&amp;gt;b_0&amp;lt;/math&amp;gt;=1, &amp;lt;math&amp;gt;k_1&amp;lt;/math&amp;gt;=1,  &amp;lt;math&amp;gt;k_2&amp;lt;/math&amp;gt;=5, &amp;lt;math&amp;gt;k_2&amp;lt;/math&amp;gt;=1/5, .En ambos casos se resuelve para los primeros 10 segundos.&lt;br /&gt;
&lt;br /&gt;
==La reacción D es más rápida que la reacción C==&lt;br /&gt;
CASO    &amp;lt;math&amp;gt;k_1=5  &amp;lt;/math&amp;gt;   '''h=0.1''' &lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
&lt;br /&gt;
%datos&lt;br /&gt;
y0=[0;0];&lt;br /&gt;
z0=[0;0];&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;
%matriz de las soluciones&lt;br /&gt;
y=zeros(2,length(t)); %euler&lt;br /&gt;
y(:,1)=y0;&lt;br /&gt;
 &lt;br /&gt;
z=zeros(2,length(t)); %runge-kutta&lt;br /&gt;
z(:,1)=y0;&lt;br /&gt;
 &lt;br /&gt;
for i=1:length(t)-1&lt;br /&gt;
 %euler&lt;br /&gt;
 y(:,i+1)=y(:,i)+h*[1*(3-y(1,i))*(1-y(1,i)); 5*(y(1,i)-y(2,i))];&lt;br /&gt;
 %runge-kutta&lt;br /&gt;
 K1=[1*(3-z(1,i))*(1-z(1,i)); 5*(z(1,i)-z(2,i))];&lt;br /&gt;
 K2=[1*(3-(z(1,i)+h/2*K1(1)))*(1-(z(1,i)+h/2*K1(1))); 5*((y(1,i)+h/2*K1(2))-(y(2,i)+h/2*K1(2)))];&lt;br /&gt;
 K3=[1*(3-(z(1,i)+h/2*K2(1)))*(1-(z(1,i)+h/2*K2(1))); 5*((y(1,i)+h/2*K2(2))-(y(2,i)+h/2*K2(2)))];&lt;br /&gt;
 K4=[1*(3-(z(1,i)+h*K3(1)))*(1-(z(1,i)+h*K3(1))); 5*((y(1,i)+h*K3(2))-(y(2,i)+h*K3(2)))];&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;
% se calcula la concentración de C=y1t)-y2(t)&lt;br /&gt;
Ay=y(1,:)-y(2,:); %euler&lt;br /&gt;
Az=z(1,:)-z(2,:); %runge-kutta&lt;br /&gt;
 &lt;br /&gt;
figure(1)&lt;br /&gt;
hold on&lt;br /&gt;
plot(t,Ay) %concentración de C por euler&lt;br /&gt;
plot(t,y(2,:),'r') %concentración de D por euler&lt;br /&gt;
plot(t,Az,'k') %concentración de C por runge-kutta&lt;br /&gt;
plot(t,z(2,:),'g') %concentración de D por runge-kutta&lt;br /&gt;
legend('concentración de C por euler','concentración de D por euler','concentración de C por runge-kutta','concentración de D por runge-kutta','Location','best')&lt;br /&gt;
hold off&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:graficoa.jpeg|500px|miniaturadeimagen|center|Reacción compleja]]&lt;br /&gt;
&lt;br /&gt;
Se observa que en en los primeros instantes aumentan las concentraciones de &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; aumentan sus concentraciones. Antes de que pase 1 segundo, la concentración &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; alcanza un máximo (de unos 0.3 molar) y va disminuyendo progresivamente hasta alcanzar un valor de 0 molar. La concentración &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; sigue creciendo hasta llegar a 1 molar. Una vez que tanto &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; como &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; alcanzan estos valores, se estabiliza la reacción. &lt;br /&gt;
&lt;br /&gt;
Como hemos impuesto que la reacción &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; es más rápida que &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt;, se observa que &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; empieza creciendo más rápidamente, pero como reacciona más despacio que &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; su concentración disminuye progresivamente, mientras que la de &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; aumenta.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''CASO'''  &amp;lt;math&amp;gt;k_2=5  &amp;lt;/math&amp;gt;   '''h=0.3''' &lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
&lt;br /&gt;
%datos&lt;br /&gt;
y0=[0;0];&lt;br /&gt;
z0=[0;0];&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=10;&lt;br /&gt;
h=0.3;&lt;br /&gt;
 &lt;br /&gt;
%variable independiente t&lt;br /&gt;
t=t0:h:tN;&lt;br /&gt;
 &lt;br /&gt;
%matriz de las soluciones&lt;br /&gt;
y=zeros(2,length(t)); %euler&lt;br /&gt;
y(:,1)=y0;&lt;br /&gt;
 &lt;br /&gt;
z=zeros(2,length(t)); %runge-kutta&lt;br /&gt;
z(:,1)=y0;&lt;br /&gt;
 &lt;br /&gt;
for i=1:length(t)-1&lt;br /&gt;
 %euler&lt;br /&gt;
 y(:,i+1)=y(:,i)+h*[1*(3-y(1,i))*(1-y(1,i)); 5*(y(1,i)-y(2,i))];&lt;br /&gt;
 %runge-kutta&lt;br /&gt;
 K1=[1*(3-z(1,i))*(1-z(1,i)); 5*(z(1,i)-z(2,i))];&lt;br /&gt;
 K2=[1*(3-(z(1,i)+h/2*K1(1)))*(1-(z(1,i)+h/2*K1(1))); 5*((y(1,i)+h/2*K1(2))-(y(2,i)+h/2*K1(2)))];&lt;br /&gt;
 K3=[1*(3-(z(1,i)+h/2*K2(1)))*(1-(z(1,i)+h/2*K2(1))); 5*((y(1,i)+h/2*K2(2))-(y(2,i)+h/2*K2(2)))];&lt;br /&gt;
 K4=[1*(3-(z(1,i)+h*K3(1)))*(1-(z(1,i)+h*K3(1))); 5*((y(1,i)+h*K3(2))-(y(2,i)+h*K3(2)))];&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;
% se calcula la concentración de C=y1t)-y2(t)&lt;br /&gt;
Ay=y(1,:)-y(2,:); %euler&lt;br /&gt;
Az=z(1,:)-z(2,:); %runge-kutta&lt;br /&gt;
 &lt;br /&gt;
figure(1)&lt;br /&gt;
hold on&lt;br /&gt;
plot(t,Ay) %concentración de C por euler&lt;br /&gt;
plot(t,y(2,:),'r') %concentración de D por euler&lt;br /&gt;
plot(t,Az,'k') %concentración de C por runge-kutta&lt;br /&gt;
plot(t,z(2,:),'g') %concentración de D por runge-kutta&lt;br /&gt;
legend('concentración de C por euler','concentración de D por euler','concentración de C por runge-kutta','concentración de D por runge-kutta','Location','best')&lt;br /&gt;
hold off&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:graficob.jpeg|500px|miniaturadeimagen|center|Reacción compleja]]&lt;br /&gt;
&lt;br /&gt;
Repetimos el programa pero para un tamaño de paso mayor, de '''h=0.3''', y observamos que no  es suficientemente preciso, sobre todo al principio, no se puede analizar bien lo que está pasando en la reacción.&lt;br /&gt;
&lt;br /&gt;
==La reacción D es más lenta que la reacción C==&lt;br /&gt;
&lt;br /&gt;
CASO  &amp;lt;math&amp;gt;k_1 &amp;lt;/math&amp;gt;=1,   &amp;lt;math&amp;gt;k_2 &amp;lt;/math&amp;gt;=1/5&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
&lt;br /&gt;
%datos&lt;br /&gt;
y0=[0;0];&lt;br /&gt;
z0=[0;0];&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;
%matriz de las soluciones&lt;br /&gt;
y=zeros(2,length(t)); %euler&lt;br /&gt;
y(:,1)=y0;&lt;br /&gt;
 &lt;br /&gt;
z=zeros(2,length(t)); %runge-kutta&lt;br /&gt;
z(:,1)=y0;&lt;br /&gt;
 &lt;br /&gt;
for i=1:length(t)-1&lt;br /&gt;
 %euler&lt;br /&gt;
 y(:,i+1)=y(:,i)+h*[1*(3-y(1,i))*(1-y(1,i)); 1/5*(y(1,i)-y(2,i))];&lt;br /&gt;
 %runge-kutta&lt;br /&gt;
 K1=[1*(3-z(1,i))*(1-z(1,i)); 1/5*(z(1,i)-z(2,i))];&lt;br /&gt;
 K2=[1*(3-(z(1,i)+h/2*K1(1)))*(1-(z(1,i)+h/2*K1(1))); 1/5*((y(1,i)+h/2*K1(2))-(y(2,i)+h/2*K1(2)))];&lt;br /&gt;
 K3=[1*(3-(z(1,i)+h/2*K2(1)))*(1-(z(1,i)+h/2*K2(1))); 1/5*((y(1,i)+h/2*K2(2))-(y(2,i)+h/2*K2(2)))];&lt;br /&gt;
 K4=[1*(3-(z(1,i)+h*K3(1)))*(1-(z(1,i)+h*K3(1))); 1/5*((y(1,i)+h*K3(2))-(y(2,i)+h*K3(2)))];&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;
% se calcula la concentración de C=y1t)-y2(t)&lt;br /&gt;
Ay=y(1,:)-y(2,:); %euler&lt;br /&gt;
Az=z(1,:)-z(2,:); %runge-kutta&lt;br /&gt;
 &lt;br /&gt;
figure(1)&lt;br /&gt;
hold on&lt;br /&gt;
plot(t,Ay) %concentración de C por euler&lt;br /&gt;
plot(t,y(2,:),'r') %concentración de D por euler&lt;br /&gt;
plot(t,Az,'k') %concentración de C por runge-kutta&lt;br /&gt;
plot(t,z(2,:),'g') %concentración de D por runge-kutta&lt;br /&gt;
legend('concentración de C por euler','concentración de D por euler','concentración de C por runge-kutta','concentración de D por runge-kutta','Location','best')&lt;br /&gt;
hold off&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:graficoc.jpeg|500px|miniaturadeimagen|center|Reacción compleja]]&lt;br /&gt;
&lt;br /&gt;
Si ahora imponemos que la reacción  &amp;lt;math&amp;gt;C &amp;lt;/math&amp;gt; es más rápida que  &amp;lt;math&amp;gt;D &amp;lt;/math&amp;gt;, obtenemos lo siguiente. Se parece a la gráfica que obtuvimos en el programa anterior, pero  más extendida en el tiempo, más lenta.  &amp;lt;math&amp;gt;C &amp;lt;/math&amp;gt; alcanza una concentración máxima de unos 0.8 molar antes de empezar a decrecer a medida que avanza el tiempo y acercándose a un valor de '''0''' molar.  &amp;lt;math&amp;gt;D &amp;lt;/math&amp;gt; crece más lentamente que en la gráfica anterior, pero se aproxima al mismo valor, '''1''' molar.&lt;br /&gt;
Se observa que aunque hagamos la reacción  &amp;lt;math&amp;gt;C &amp;lt;/math&amp;gt; más rápida, tenemos las mismas concentraciones finales, pero tardan más tiempo en obtenerse, ya que la reacción tarda más en estabilizarse.&lt;br /&gt;
&lt;br /&gt;
&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>Joseva</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Reacciones_complejas_(Grupo_D1)&amp;diff=27188</id>
		<title>Reacciones complejas (Grupo D1)</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Reacciones_complejas_(Grupo_D1)&amp;diff=27188"/>
				<updated>2015-03-05T23:09:20Z</updated>
		
		<summary type="html">&lt;p&gt;Joseva: /* Concentración del reactivo C a lo largo del tiempo */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{ TrabajoED | Reacciones complejas (Grupo D1) | [[:Categoría:Ecuaciones Diferenciales|Ecuaciones Diferenciales]]|[[:Categoría:ED14/15|Curso 2014-15]] | Rincón Crespo, Kevin&lt;br /&gt;
&lt;br /&gt;
Rodríguez Gómez, Javier&lt;br /&gt;
&lt;br /&gt;
Sans Jiménez, Alejandro&lt;br /&gt;
&lt;br /&gt;
Sesto Muñoz, María Victoria&lt;br /&gt;
&lt;br /&gt;
Vallejo Asín, José Manuel &lt;br /&gt;
&lt;br /&gt;
Villarino Redondo, Álvaro }}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=Introducción=&lt;br /&gt;
Se considera una reacción química irreversible en una solución bien mezclada. Supondremos que la reacción ocurre para un volumen y temperatura constantes. Al inicio se encuentran dos reactivos &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;B&amp;lt;/math&amp;gt;, que van formando un producto &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; en lo que se conoce como una reacción bimolecular, es decir, una molécula de &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt; y una de &amp;lt;math&amp;gt;B&amp;lt;/math&amp;gt; producen una de &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt;, &lt;br /&gt;
                                                                     &amp;lt;math&amp;gt;A + B → C&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Supondremos también que se satisface la ley de acción de masas, que establece que la velocidad de reacción es proporcional al producto de las concentraciones de los reactivos.&lt;br /&gt;
&lt;br /&gt;
=Concentración del reactivo &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; a lo largo del tiempo=&lt;br /&gt;
En primer lugar, suponiendo que la reacción es irreversible, es decir, que &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; no puede volver a formar &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;B&amp;lt;/math&amp;gt;, se puede expresar la situación mediante el siguiente problema de valor inicial, cuando t&amp;gt;0:&lt;br /&gt;
   &amp;lt;math&amp;gt;&lt;br /&gt;
   \left . &lt;br /&gt;
      \begin{matrix} &lt;br /&gt;
         y'(t)={k_{1}}({a_{0}}-y(t))({b_{0}}-y(t))=0\\&lt;br /&gt;
         y(0)=0&lt;br /&gt;
      \end{matrix}&lt;br /&gt;
   \right \}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Donde &amp;lt;math&amp;gt; {a_{0}}&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;{b_{0}}&amp;lt;/math&amp;gt; representan las concentraciones iniciales de '''A''' y '''B''' respectivamente y &amp;lt;math&amp;gt;{k_{1}}&amp;lt;/math&amp;gt; es la constante de proporcionalidad que indica la ley de acción de masas. &amp;lt;math&amp;gt;y’(t)&amp;lt;/math&amp;gt; representa la velocidad de reacción, es decir, la velocidad con que se forma el producto &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; ; mientras que la solución de la ecuación diferencial, &amp;lt;math&amp;gt;y(t)&amp;lt;/math&amp;gt; , representa la concentración de &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt;, la cantidad de compuesto que se ha formado. Para comprobar que la solución de este problema de Cauchy es única, comenzamos definiendo.:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;math&amp;gt;f(t,y)={k_{1}}({a_{0}}-y(t))({b_{0}}-y(t))=0,   t&amp;gt;0 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Observamos que &amp;lt;math&amp;gt;f(t,y)&amp;lt;/math&amp;gt; es continua en el intervalo &amp;lt;math&amp;gt; I=(0,∞)∩B((0,0),r&amp;gt;0)&amp;lt;/math&amp;gt;, por lo que ya aseguramos la existencia de al menos una solución. Examinando la derivada parcial.:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\frac{∂f}{∂y}=k_1(-a_0-b_0+2y)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Se deduce que al ser un polinomio no va a haber problemas de continuidad para ninguna bola. De esta forma, podemos asegurar que existe una única solución.&lt;br /&gt;
&lt;br /&gt;
==Concentración del reactivo C a lo largo del tiempo en un proceso reversible==&lt;br /&gt;
&lt;br /&gt;
Ahora bien, ¿qué pasaría si la reacción fuese reversible? Con esto lo que queremos indicar es que además de formarse  &amp;lt;math&amp;gt;C &amp;lt;/math&amp;gt;, este también se descompone de nuevo en  &amp;lt;math&amp;gt;A &amp;lt;/math&amp;gt; y  &amp;lt;math&amp;gt;B &amp;lt;/math&amp;gt;. Por lo tanto, nos quedaría una ecuación diferencial con la siguiente forma, cuando &amp;lt;math&amp;gt;t&amp;gt;0 &amp;lt;/math&amp;gt; :&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; y'(t)={k_{1}}({a_{0}}-y(t))({b_{0}}-y(t))-Cy(t)&amp;lt;/math&amp;gt;  &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Si nos fijamos, la modificación es sencillamente restar  &amp;lt;math&amp;gt;y(t) &amp;lt;/math&amp;gt; multiplicada por una constante, la cual refleja qué porcentaje de  &amp;lt;math&amp;gt;C &amp;lt;/math&amp;gt; se va descomponiendo a medida que se da, simultáneamente, la reacción  &amp;lt;math&amp;gt;A + B → C &amp;lt;/math&amp;gt;. Sin embargo, esta constante no puede tener cualquier valor, ya que en una reacción se cumple la conservación de masa. Por ello, a  &amp;lt;math&amp;gt;C &amp;lt;/math&amp;gt; le asociaremos el siguiente dominio:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;C∈(0,1)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Obsérvese que  &amp;lt;math&amp;gt;C &amp;lt;/math&amp;gt; tiene que ser mayor que 0 para que sea reversible, pero al mismo tiempo inferior que 1, ya que si no se estaría descomponiendo más compuesto  &amp;lt;math&amp;gt;C &amp;lt;/math&amp;gt; del que realmente se ha formado, en otras palabras, estaría apareciendo masa de la nada.&lt;br /&gt;
&lt;br /&gt;
=Método de Euler=&lt;br /&gt;
&lt;br /&gt;
Una vez llegados a este punto, se procede a ver una interpretación gráfica de la reacción. Para ello, se refleja en la gráfica (en un intervalo de 2 segundos), cómo varían las concentraciones tanto de &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt; (&amp;lt;math&amp;gt;a_0&amp;lt;/math&amp;gt;=3 mol/L) y &amp;lt;math&amp;gt;B&amp;lt;/math&amp;gt; (&amp;lt;math&amp;gt;b_0&amp;lt;/math&amp;gt;=1 mol/L) como de &amp;lt;math&amp;gt; C&amp;lt;/math&amp;gt;, para una &amp;lt;math&amp;gt;k_1&amp;lt;/math&amp;gt;=1 mol/s. Se comienza, por el momento, aplicando el método de Euler. Posteriormente se utilizarán métodos más precisos.&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo= &lt;br /&gt;
% Euler&lt;br /&gt;
clear all&lt;br /&gt;
% datos del problema&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=2;&lt;br /&gt;
y0=0;&lt;br /&gt;
h=0.1;&lt;br /&gt;
k1=1;&lt;br /&gt;
a0=3;&lt;br /&gt;
b0=1;&lt;br /&gt;
% Definimos la variable independiente&lt;br /&gt;
t=t0:h:tN;&lt;br /&gt;
% Guardamos los valores de la solución aproximada en el vector &amp;quot;y1&amp;quot; y&lt;br /&gt;
% establecemos los vectores de concentraciones A y B&lt;br /&gt;
y1=zeros(1,length(t)); &lt;br /&gt;
y1(1)=y0;&lt;br /&gt;
a1=zeros(1,length(t));&lt;br /&gt;
a1(1)=a0;&lt;br /&gt;
b1=zeros(1,length(t));&lt;br /&gt;
b1(1)=b0;&lt;br /&gt;
% A continuación, calculamos las componentes de los vectores y1, a y b&lt;br /&gt;
for i=1:length(t)-1&lt;br /&gt;
    y1(i+1)=y1(i)+h*(k1*(a0-y1(i))*(b0-y1(i)));    %Euler&lt;br /&gt;
    a1(i+1)=a0-y1(i+1); % evolución de la concentración de A&lt;br /&gt;
    b1(i+1)=b0-y1(i+1); % evolución de la concentración de B&lt;br /&gt;
end&lt;br /&gt;
%grafico &lt;br /&gt;
figure(1)&lt;br /&gt;
hold on&lt;br /&gt;
plot(t,y1,'g')&lt;br /&gt;
plot(t,a1,'r')&lt;br /&gt;
plot(t,b1,'b')&lt;br /&gt;
legend('concentración de C','concentración de A','concentración de B','location','best')&lt;br /&gt;
hold off &lt;br /&gt;
%en verde se muestra la concentración de C, en rojo la de A, y en azul la de B&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Archivo:3euler.jpeg|500px|miniaturadeimagen|center|Reacción compleja]]&lt;br /&gt;
&lt;br /&gt;
Aunque con observar los resultados ya podemos decir con casi absoluta seguridad cuáles son los límites de las concentraciones de cada reactivo &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;B&amp;lt;/math&amp;gt; y del producto &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt;, se ha diseñado un programa que, mediante diferencia de valores sucesivos de la variable &amp;lt;math&amp;gt;y(t)&amp;lt;/math&amp;gt;, nos devuelve el valor de la función cuando dicha diferencia es muy pequeña '''(se ha puesto una diferencia de 0.001)''', es decir, cuando tenemos una asíntota al tender &amp;lt;math&amp;gt;t→∞&amp;lt;/math&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
%Estudio de las asíntotas&lt;br /&gt;
t1=t0:h:10;%se aumenta la longitud de t, y se estima que se alcanzarán las asíntotas antes de t=10&lt;br /&gt;
y_=zeros(1,length(t1)); %se define un vector y_ idéntico a y1 pero con t hasta 10&lt;br /&gt;
a_=y_;&lt;br /&gt;
b_=y_;&lt;br /&gt;
y_(1)=y0;&lt;br /&gt;
a_(1)=a0;&lt;br /&gt;
b_(1)=b0;&lt;br /&gt;
for i=1:length(t1)-1&lt;br /&gt;
    y_(i+1)=y_(i)+h*(k1*(a0-y_(i))*(b0-y_(i)));&lt;br /&gt;
    diferencia=y_(i+1)-y_(i);&lt;br /&gt;
    if abs(diferencia)&amp;lt;=0.001&lt;br /&gt;
        limiteC=y_(i+1)&lt;br /&gt;
        break&lt;br /&gt;
    end&lt;br /&gt;
end&lt;br /&gt;
for i=1:length(t1)-1&lt;br /&gt;
    y_(i+1)=y_(i)+h*(k1*(a0-y_(i))*(b0-y_(i)));    &lt;br /&gt;
    a_(i+1)=a0-y_(i+1);&lt;br /&gt;
    diferencia2=a_(i+1)-a_(i);&lt;br /&gt;
    if abs(diferencia2)&amp;lt;=0.001&lt;br /&gt;
        limiteA=a_(i+1)&lt;br /&gt;
        break&lt;br /&gt;
    end&lt;br /&gt;
end&lt;br /&gt;
for i=1:length(t1)-1&lt;br /&gt;
    y_(i+1)=y_(i)+h*(k1*(a0-y_(i))*(b0-y_(i)));    &lt;br /&gt;
    b_(i+1)=b0-y_(i+1);&lt;br /&gt;
    diferencia3=b_(i+1)-b_(i);&lt;br /&gt;
    if abs(diferencia3)&amp;lt;=0.001&lt;br /&gt;
        limiteB=b_(i+1)&lt;br /&gt;
        break&lt;br /&gt;
    end&lt;br /&gt;
end&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
Que nos devuelve unos valores de las concentraciones para el límite de:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\lim A=2,0036≈2 mol/L&amp;lt;/math&amp;gt;:     &lt;br /&gt;
&amp;lt;math&amp;gt;\lim B=0,0036≈0mol/L&amp;lt;/math&amp;gt;:         &lt;br /&gt;
&amp;lt;math&amp;gt;\lim C=0,9964≈1mol/L&amp;lt;/math&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
Lo cual es lógico, ya que &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;B&amp;lt;/math&amp;gt; se combinan en una proporción de 1:1, luego &amp;lt;math&amp;gt;B&amp;lt;/math&amp;gt;, que tiene una concentración inicial de &amp;lt;math&amp;gt;b_0&amp;lt;/math&amp;gt;=1, será el reactivo limitante (el que desaparecerá por completo), mientras que &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt;, con &amp;lt;math&amp;gt;a_0&amp;lt;/math&amp;gt;=3, acabará con una concentración molar final igual a 2, y &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt;, del que no habia nada,alcanza una concentraccion de &amp;lt;math&amp;gt;1mol/L&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
= Método del Trapecio y Método de Runge-Kutta=&lt;br /&gt;
&lt;br /&gt;
A continuación, para obtener con más precisión las representaciones gráficas de las respectivas concentraciones, se opta por utilizar los métodos de los &amp;lt;math&amp;gt;Trapecios&amp;lt;/math&amp;gt; (segundo orden) y de &amp;lt;math&amp;gt;Runge-Kutta&amp;lt;/math&amp;gt; (cuarto orden). Desgraciadamente, no es posible comparar los errores cometidos por cada método con la expresión real de la concentración de C, ya que la ecuación diferencial no es de fácil resolución analítica, luego resulta imposible alcanzar una expresión explícita de la concentración en términos de nuestros datos conocidos; &amp;lt;math&amp;gt;a_0&amp;lt;/math&amp;gt;,&amp;lt;math&amp;gt;b_0&amp;lt;/math&amp;gt;,&amp;lt;math&amp;gt;k_1&amp;lt;/math&amp;gt;,&amp;lt;math&amp;gt;t (tiempo)&amp;lt;/math&amp;gt;.  Sin embargo, podemos confiar con bastante seguridad en el método sobre todo de &amp;lt;math&amp;gt;Runge-Kutta&amp;lt;/math&amp;gt;, debido a su cuarto orden. &lt;br /&gt;
&lt;br /&gt;
Para los trapecios, al ser un método implícito, es necesario despejar la componente &amp;lt;math&amp;gt;y_{n+1}&amp;lt;/math&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;y_{n+1}=\frac{(1+\frac{h}{2}∙k_1∙(a_0+b_0))-\sqrt{(1+\frac{h}{2}∙k_1∙(a_0+b_0))^2 -2∙h∙k_1(y_n+\frac{h}{2}∙k_1∙(a_0-y_n )∙(b_0-y_n)+\frac{h}{2}∙k_1∙a_0∙b_0) }}{k_1∙h}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Cabe destacar que este programa parte de los datos ya establecidos en el programa de Euler para '''t0, tN, y0, a0, b0, k1 y h''':&lt;br /&gt;
{{matlab|codigo= &lt;br /&gt;
%Trapecios&lt;br /&gt;
y2=zeros(1,length(t)); &lt;br /&gt;
a2=y2;&lt;br /&gt;
b2=y2;&lt;br /&gt;
y2(1)=y0;&lt;br /&gt;
a2(1)=a0;&lt;br /&gt;
b2(1)=b0;&lt;br /&gt;
for i=1:length(t)-1&lt;br /&gt;
    y2(i+1)=((1+0.5*h*k1*(a0+b0))-sqrt((1+0.5*h*k1*(a0+b0))^2-2*h*k1*(y2(i)+0.5*h*k1*(a0-y2(i))*(b0-y2(i))+0.5*h*k1*a0*b0)))/(k1*h);&lt;br /&gt;
    a2(i+1)=a0-y2(i+1);&lt;br /&gt;
    b2(i+1)=b0-y2(i+1);&lt;br /&gt;
end&lt;br /&gt;
 &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
%Runge-Kutta&lt;br /&gt;
y3=zeros(1,length(t)); &lt;br /&gt;
a3=y3;&lt;br /&gt;
b3=y3;&lt;br /&gt;
y3(1)=y0;&lt;br /&gt;
a3(1)=a0;&lt;br /&gt;
b3(1)=b0;&lt;br /&gt;
for i=1:length(t)-1 &lt;br /&gt;
    r1=k1*(a0-y3(i))*(b0-y3(i));&lt;br /&gt;
    r2=k1*(a0-y3(i)-0.5*r1*h)*(b0-y3(i)-0.5*r1*h);&lt;br /&gt;
    r3=k1*(a0-y3(i)-0.5*r2*h)*(b0-y3(i)-0.5*r2*h);&lt;br /&gt;
    r4=k1*(a0-y3(i)-r3*h)*(b0-y3(i)-r3*h);&lt;br /&gt;
    y3(i+1)=y3(i)+h/6*(r1+2*r2+2*r3+r4);&lt;br /&gt;
    a3(i+1)=a0-y3(i+1);&lt;br /&gt;
    b3(i+1)=b0-y3(i+1);&lt;br /&gt;
end&lt;br /&gt;
%se pintan las dos, en azul las soluciones de los Trapecios, y en negro las&lt;br /&gt;
%de Runge-Kutta. &lt;br /&gt;
figure(2)&lt;br /&gt;
hold on&lt;br /&gt;
plot(t,y2)&lt;br /&gt;
plot(t,a2)&lt;br /&gt;
plot(t,b2)&lt;br /&gt;
plot(t,y3,'k')&lt;br /&gt;
plot(t,a3,'k')&lt;br /&gt;
plot(t,b3,'k')&lt;br /&gt;
hold off&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
Que proporciona el resultado que se puede observar en la primera gráfica adjunta. Como podemos ver, es prácticamente indistinguible una gráfica de la otra. Sin embargo, si la juntamos con las gráficas proporcionadas por el método de Euler, que se representa ahora en rojo, la diferencia es palpable (ver gráfica 2), lo cual evidencia la peor precisión del método de Euler.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:4trapeciokung.jpeg|500px|miniaturadeimagen|center|Reacción compleja]]&lt;br /&gt;
&lt;br /&gt;
[[Archivo:4comparacion.jpeg|500px|miniaturadeimagen|center|Gráfico 2]]&lt;br /&gt;
&lt;br /&gt;
=Reacción consecutiva=&lt;br /&gt;
&lt;br /&gt;
Consideremos ahora que se produce una reacción consecutiva de la forma, &lt;br /&gt;
&lt;br /&gt;
                                                                   &amp;lt;math&amp;gt;A + B → k_1C → k_2D&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
De tal modo que los reactivos &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;B&amp;lt;/math&amp;gt; se combinan en la proporción 1:1 para formar compuesto &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt;, el cual, a su vez, se va descomponiendo para formar compuesto &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt;. Al igual que se ha hecho antes al analizar las otras reacciones, se considerará que se cumple la ley de acción de masas. Es decir, la velocidad con la que se forma compuesto &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; es proporcional a las concentraciones existentes de &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt; y de &amp;lt;math&amp;gt;B&amp;lt;/math&amp;gt; y del mismo modo la de formación de la sustancia &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; lo es a la concentración de &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; que se ha ido formando.&lt;br /&gt;
&lt;br /&gt;
Esta reacción consecutiva está representada por el siguiente problema de valor inicial:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;&lt;br /&gt;
   \left . &lt;br /&gt;
      \begin{matrix} &lt;br /&gt;
         y'_1(t)={k_{1}}({a_{0}}-y_1(t))({b_{0}}-y_1(t))\\&lt;br /&gt;
         y'_2(t)={k_{2}}(y_1(t)-y_2(t))\\&lt;br /&gt;
y_1(0)=0\\y_2(0)=0&lt;br /&gt;
      \end{matrix}&lt;br /&gt;
   \right \}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
Donde &amp;lt;math&amp;gt;a_0&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;b_0&amp;lt;/math&amp;gt; representan las concentraciones iniciales de &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;B&amp;lt;/math&amp;gt; respectivamente, &amp;lt;math&amp;gt;k_1&amp;lt;/math&amp;gt; es la constante de proporcionalidad que rige la primera reacción y &amp;lt;math&amp;gt;k_2&amp;lt;/math&amp;gt; la que rige la segunda reacción o reacción consecutiva. &amp;lt;math&amp;gt;y_1’(t)&amp;lt;/math&amp;gt; e  &amp;lt;math&amp;gt;y_2’(t)&amp;lt;/math&amp;gt; representan las velocidades de las reacciones, es decir, las velocidades con que se forman los productos &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt;. &amp;lt;math&amp;gt;y_2(t)&amp;lt;/math&amp;gt; representa la concentración del producto &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; pero es importante apreciar que en este caso &amp;lt;math&amp;gt;y_1(t)&amp;lt;/math&amp;gt; no nos da el valor de la concentración de &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; directamente, sino que ésta será &amp;lt;math&amp;gt;y_1(t)&amp;lt;/math&amp;gt;- &amp;lt;math&amp;gt;y_2(t)&amp;lt;/math&amp;gt;, la cantidad que se forma en la primera reacción menos la que se emplea para formar el producto &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; en la segunda.&lt;br /&gt;
&lt;br /&gt;
Este problema se va a resolver para dos casos diferentes. Uno en el cual se considera que la segunda reacción es más rápida que la primera, lo que supone tomar un valor de la constante &amp;lt;math&amp;gt;k_2&amp;lt;/math&amp;gt;  mayor que &amp;lt;math&amp;gt;k_1&amp;lt;/math&amp;gt;. Y otro en el cual se considera que es más lenta, lo que implica que &amp;lt;math&amp;gt;k_2&amp;lt;/math&amp;gt; es menor que &amp;lt;math&amp;gt;k_1&amp;lt;/math&amp;gt;. Concretamente vamos a tomar los siguientes valores para resolver el problema numéricamente; &amp;lt;math&amp;gt;a_0&amp;lt;/math&amp;gt;=3 ,  &amp;lt;math&amp;gt;b_0&amp;lt;/math&amp;gt;=1, &amp;lt;math&amp;gt;k_1&amp;lt;/math&amp;gt;=1,  &amp;lt;math&amp;gt;k_2&amp;lt;/math&amp;gt;=5, &amp;lt;math&amp;gt;k_2&amp;lt;/math&amp;gt;=1/5, .En ambos casos se resuelve para los primeros 10 segundos.&lt;br /&gt;
&lt;br /&gt;
==La reacción D es más rápida que la reacción C==&lt;br /&gt;
CASO    &amp;lt;math&amp;gt;k_1=5  &amp;lt;/math&amp;gt;   '''h=0.1''' &lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
&lt;br /&gt;
%datos&lt;br /&gt;
y0=[0;0];&lt;br /&gt;
z0=[0;0];&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;
%matriz de las soluciones&lt;br /&gt;
y=zeros(2,length(t)); %euler&lt;br /&gt;
y(:,1)=y0;&lt;br /&gt;
 &lt;br /&gt;
z=zeros(2,length(t)); %runge-kutta&lt;br /&gt;
z(:,1)=y0;&lt;br /&gt;
 &lt;br /&gt;
for i=1:length(t)-1&lt;br /&gt;
 %euler&lt;br /&gt;
 y(:,i+1)=y(:,i)+h*[1*(3-y(1,i))*(1-y(1,i)); 5*(y(1,i)-y(2,i))];&lt;br /&gt;
 %runge-kutta&lt;br /&gt;
 K1=[1*(3-z(1,i))*(1-z(1,i)); 5*(z(1,i)-z(2,i))];&lt;br /&gt;
 K2=[1*(3-(z(1,i)+h/2*K1(1)))*(1-(z(1,i)+h/2*K1(1))); 5*((y(1,i)+h/2*K1(2))-(y(2,i)+h/2*K1(2)))];&lt;br /&gt;
 K3=[1*(3-(z(1,i)+h/2*K2(1)))*(1-(z(1,i)+h/2*K2(1))); 5*((y(1,i)+h/2*K2(2))-(y(2,i)+h/2*K2(2)))];&lt;br /&gt;
 K4=[1*(3-(z(1,i)+h*K3(1)))*(1-(z(1,i)+h*K3(1))); 5*((y(1,i)+h*K3(2))-(y(2,i)+h*K3(2)))];&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;
% se calcula la concentración de C=y1t)-y2(t)&lt;br /&gt;
Ay=y(1,:)-y(2,:); %euler&lt;br /&gt;
Az=z(1,:)-z(2,:); %runge-kutta&lt;br /&gt;
 &lt;br /&gt;
figure(1)&lt;br /&gt;
hold on&lt;br /&gt;
plot(t,Ay) %concentración de C por euler&lt;br /&gt;
plot(t,y(2,:),'r') %concentración de D por euler&lt;br /&gt;
plot(t,Az,'k') %concentración de C por runge-kutta&lt;br /&gt;
plot(t,z(2,:),'g') %concentración de D por runge-kutta&lt;br /&gt;
legend('concentración de C por euler','concentración de D por euler','concentración de C por runge-kutta','concentración de D por runge-kutta','Location','best')&lt;br /&gt;
hold off&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:graficoa.jpeg|500px|miniaturadeimagen|center|Reacción compleja]]&lt;br /&gt;
&lt;br /&gt;
Se observa que en en los primeros instantes aumentan las concentraciones de &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; aumentan sus concentraciones. Antes de que pase 1 segundo, la concentración &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; alcanza un máximo (de unos 0.3 molar) y va disminuyendo progresivamente hasta alcanzar un valor de 0 molar. La concentración &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; sigue creciendo hasta llegar a 1 molar. Una vez que tanto &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; como &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; alcanzan estos valores, se estabiliza la reacción. &lt;br /&gt;
&lt;br /&gt;
Como hemos impuesto que la reacción &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; es más rápida que &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt;, se observa que &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; empieza creciendo más rápidamente, pero como reacciona más despacio que &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; su concentración disminuye progresivamente, mientras que la de &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; aumenta.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''CASO'''  &amp;lt;math&amp;gt;k_2=5  &amp;lt;/math&amp;gt;   '''h=0.3''' &lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
&lt;br /&gt;
%datos&lt;br /&gt;
y0=[0;0];&lt;br /&gt;
z0=[0;0];&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=10;&lt;br /&gt;
h=0.3;&lt;br /&gt;
 &lt;br /&gt;
%variable independiente t&lt;br /&gt;
t=t0:h:tN;&lt;br /&gt;
 &lt;br /&gt;
%matriz de las soluciones&lt;br /&gt;
y=zeros(2,length(t)); %euler&lt;br /&gt;
y(:,1)=y0;&lt;br /&gt;
 &lt;br /&gt;
z=zeros(2,length(t)); %runge-kutta&lt;br /&gt;
z(:,1)=y0;&lt;br /&gt;
 &lt;br /&gt;
for i=1:length(t)-1&lt;br /&gt;
 %euler&lt;br /&gt;
 y(:,i+1)=y(:,i)+h*[1*(3-y(1,i))*(1-y(1,i)); 5*(y(1,i)-y(2,i))];&lt;br /&gt;
 %runge-kutta&lt;br /&gt;
 K1=[1*(3-z(1,i))*(1-z(1,i)); 5*(z(1,i)-z(2,i))];&lt;br /&gt;
 K2=[1*(3-(z(1,i)+h/2*K1(1)))*(1-(z(1,i)+h/2*K1(1))); 5*((y(1,i)+h/2*K1(2))-(y(2,i)+h/2*K1(2)))];&lt;br /&gt;
 K3=[1*(3-(z(1,i)+h/2*K2(1)))*(1-(z(1,i)+h/2*K2(1))); 5*((y(1,i)+h/2*K2(2))-(y(2,i)+h/2*K2(2)))];&lt;br /&gt;
 K4=[1*(3-(z(1,i)+h*K3(1)))*(1-(z(1,i)+h*K3(1))); 5*((y(1,i)+h*K3(2))-(y(2,i)+h*K3(2)))];&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;
% se calcula la concentración de C=y1t)-y2(t)&lt;br /&gt;
Ay=y(1,:)-y(2,:); %euler&lt;br /&gt;
Az=z(1,:)-z(2,:); %runge-kutta&lt;br /&gt;
 &lt;br /&gt;
figure(1)&lt;br /&gt;
hold on&lt;br /&gt;
plot(t,Ay) %concentración de C por euler&lt;br /&gt;
plot(t,y(2,:),'r') %concentración de D por euler&lt;br /&gt;
plot(t,Az,'k') %concentración de C por runge-kutta&lt;br /&gt;
plot(t,z(2,:),'g') %concentración de D por runge-kutta&lt;br /&gt;
legend('concentración de C por euler','concentración de D por euler','concentración de C por runge-kutta','concentración de D por runge-kutta','Location','best')&lt;br /&gt;
hold off&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:graficob.jpeg|500px|miniaturadeimagen|center|Reacción compleja]]&lt;br /&gt;
&lt;br /&gt;
Repetimos el programa pero para un tamaño de paso mayor, de '''h=0.3''', y observamos que no  es suficientemente preciso, sobre todo al principio, no se puede analizar bien lo que está pasando en la reacción.&lt;br /&gt;
&lt;br /&gt;
==La reacción D es más lenta que la reacción C==&lt;br /&gt;
&lt;br /&gt;
CASO  &amp;lt;math&amp;gt;k_1 &amp;lt;/math&amp;gt;=1,   &amp;lt;math&amp;gt;k_2 &amp;lt;/math&amp;gt;=1/5&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
&lt;br /&gt;
%datos&lt;br /&gt;
y0=[0;0];&lt;br /&gt;
z0=[0;0];&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;
%matriz de las soluciones&lt;br /&gt;
y=zeros(2,length(t)); %euler&lt;br /&gt;
y(:,1)=y0;&lt;br /&gt;
 &lt;br /&gt;
z=zeros(2,length(t)); %runge-kutta&lt;br /&gt;
z(:,1)=y0;&lt;br /&gt;
 &lt;br /&gt;
for i=1:length(t)-1&lt;br /&gt;
 %euler&lt;br /&gt;
 y(:,i+1)=y(:,i)+h*[1*(3-y(1,i))*(1-y(1,i)); 1/5*(y(1,i)-y(2,i))];&lt;br /&gt;
 %runge-kutta&lt;br /&gt;
 K1=[1*(3-z(1,i))*(1-z(1,i)); 1/5*(z(1,i)-z(2,i))];&lt;br /&gt;
 K2=[1*(3-(z(1,i)+h/2*K1(1)))*(1-(z(1,i)+h/2*K1(1))); 1/5*((y(1,i)+h/2*K1(2))-(y(2,i)+h/2*K1(2)))];&lt;br /&gt;
 K3=[1*(3-(z(1,i)+h/2*K2(1)))*(1-(z(1,i)+h/2*K2(1))); 1/5*((y(1,i)+h/2*K2(2))-(y(2,i)+h/2*K2(2)))];&lt;br /&gt;
 K4=[1*(3-(z(1,i)+h*K3(1)))*(1-(z(1,i)+h*K3(1))); 1/5*((y(1,i)+h*K3(2))-(y(2,i)+h*K3(2)))];&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;
% se calcula la concentración de C=y1t)-y2(t)&lt;br /&gt;
Ay=y(1,:)-y(2,:); %euler&lt;br /&gt;
Az=z(1,:)-z(2,:); %runge-kutta&lt;br /&gt;
 &lt;br /&gt;
figure(1)&lt;br /&gt;
hold on&lt;br /&gt;
plot(t,Ay) %concentración de C por euler&lt;br /&gt;
plot(t,y(2,:),'r') %concentración de D por euler&lt;br /&gt;
plot(t,Az,'k') %concentración de C por runge-kutta&lt;br /&gt;
plot(t,z(2,:),'g') %concentración de D por runge-kutta&lt;br /&gt;
legend('concentración de C por euler','concentración de D por euler','concentración de C por runge-kutta','concentración de D por runge-kutta','Location','best')&lt;br /&gt;
hold off&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:graficoc.jpeg|500px|miniaturadeimagen|center|Reacción compleja]]&lt;br /&gt;
&lt;br /&gt;
Si ahora imponemos que la reacción  &amp;lt;math&amp;gt;C &amp;lt;/math&amp;gt; es más rápida que  &amp;lt;math&amp;gt;D &amp;lt;/math&amp;gt;, obtenemos lo siguiente. Se parece a la gráfica que obtuvimos en el programa anterior, pero  más extendida en el tiempo, más lenta.  &amp;lt;math&amp;gt;C &amp;lt;/math&amp;gt; alcanza una concentración máxima de unos 0.8 molar antes de empezar a decrecer a medida que avanza el tiempo y acercándose a un valor de '''0''' molar.  &amp;lt;math&amp;gt;D &amp;lt;/math&amp;gt; crece más lentamente que en la gráfica anterior, pero se aproxima al mismo valor, '''1''' molar.&lt;br /&gt;
Se observa que aunque hagamos la reacción  &amp;lt;math&amp;gt;C &amp;lt;/math&amp;gt; más rápida, tenemos las mismas concentraciones finales, pero tardan más tiempo en obtenerse, ya que la reacción tarda más en estabilizarse.&lt;br /&gt;
&lt;br /&gt;
&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>Joseva</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Reacciones_complejas_(Grupo_D1)&amp;diff=27180</id>
		<title>Reacciones complejas (Grupo D1)</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Reacciones_complejas_(Grupo_D1)&amp;diff=27180"/>
				<updated>2015-03-05T23:05:08Z</updated>
		
		<summary type="html">&lt;p&gt;Joseva: /* Reacción consecutiva */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{ TrabajoED | Reacciones complejas (Grupo D1) | [[:Categoría:Ecuaciones Diferenciales|Ecuaciones Diferenciales]]|[[:Categoría:ED14/15|Curso 2014-15]] | Rincón Crespo, Kevin&lt;br /&gt;
&lt;br /&gt;
Rodríguez Gómez, Javier&lt;br /&gt;
&lt;br /&gt;
Sans Jiménez, Alejandro&lt;br /&gt;
&lt;br /&gt;
Sesto Muñoz, María Victoria&lt;br /&gt;
&lt;br /&gt;
Vallejo Asín, José Manuel &lt;br /&gt;
&lt;br /&gt;
Villarino Redondo, Álvaro }}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=Introducción=&lt;br /&gt;
Se considera una reacción química irreversible en una solución bien mezclada. Supondremos que la reacción ocurre para un volumen y temperatura constantes. Al inicio se encuentran dos reactivos &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;B&amp;lt;/math&amp;gt;, que van formando un producto &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; en lo que se conoce como una reacción bimolecular, es decir, una molécula de &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt; y una de &amp;lt;math&amp;gt;B&amp;lt;/math&amp;gt; producen una de &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt;, &lt;br /&gt;
                                                                     &amp;lt;math&amp;gt;A + B → C&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Supondremos también que se satisface la ley de acción de masas, que establece que la velocidad de reacción es proporcional al producto de las concentraciones de los reactivos.&lt;br /&gt;
&lt;br /&gt;
=Concentración del reactivo &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; a lo largo del tiempo=&lt;br /&gt;
En primer lugar, suponiendo que la reacción es irreversible, es decir, que &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; no puede volver a formar &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;B&amp;lt;/math&amp;gt;, se puede expresar la situación mediante el siguiente problema de valor inicial, cuando t&amp;gt;0:&lt;br /&gt;
   &amp;lt;math&amp;gt;&lt;br /&gt;
   \left . &lt;br /&gt;
      \begin{matrix} &lt;br /&gt;
         y'(t)={k_{1}}({a_{0}}-y(t))({b_{0}}-y(t))=0\\&lt;br /&gt;
         y(0)=0&lt;br /&gt;
      \end{matrix}&lt;br /&gt;
   \right \}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Donde &amp;lt;math&amp;gt; {a_{0}}&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;{b_{0}}&amp;lt;/math&amp;gt; representan las concentraciones iniciales de '''A''' y '''B''' respectivamente y &amp;lt;math&amp;gt;{k_{1}}&amp;lt;/math&amp;gt; es la constante de proporcionalidad que indica la ley de acción de masas. &amp;lt;math&amp;gt;y’(t)&amp;lt;/math&amp;gt; representa la velocidad de reacción, es decir, la velocidad con que se forma el producto &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; ; mientras que la solución de la ecuación diferencial, &amp;lt;math&amp;gt;y(t)&amp;lt;/math&amp;gt; , representa la concentración de &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt;, la cantidad de compuesto que se ha formado. Para comprobar que la solución de este problema de Cauchy es única, comenzamos definiendo:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;math&amp;gt;f(t,y)={k_{1}}({a_{0}}-y(t))({b_{0}}-y(t))=0,   t&amp;gt;0 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Observamos que &amp;lt;math&amp;gt;f(t,y)&amp;lt;/math&amp;gt; es continua en el intervalo &amp;lt;math&amp;gt; I=(0,∞)∩B((0,0),r&amp;gt;0)&amp;lt;/math&amp;gt;, por lo que ya aseguramos la existencia de al menos una solución. Examinando la derivada parcial:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\frac{∂f}{∂y}=k_1(-a_0-b_0+2y)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Se deduce que al ser un polinomio no va a haber problemas de continuidad para ninguna bola. De esta forma, podemos asegurar que existe una única solución.&lt;br /&gt;
&lt;br /&gt;
==Concentración del reactivo C a lo largo del tiempo en un proceso reversible==&lt;br /&gt;
&lt;br /&gt;
Ahora bien, ¿qué pasaría si la reacción fuese reversible? Con esto lo que queremos indicar es que además de formarse  &amp;lt;math&amp;gt;C &amp;lt;/math&amp;gt;, este también se descompone de nuevo en  &amp;lt;math&amp;gt;A &amp;lt;/math&amp;gt; y  &amp;lt;math&amp;gt;B &amp;lt;/math&amp;gt;. Por lo tanto, nos quedaría una ecuación diferencial con la siguiente forma, cuando &amp;lt;math&amp;gt;t&amp;gt;0 &amp;lt;/math&amp;gt; :&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; y'(t)={k_{1}}({a_{0}}-y(t))({b_{0}}-y(t))-Cy(t)&amp;lt;/math&amp;gt;  &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Si nos fijamos, la modificación es sencillamente restar  &amp;lt;math&amp;gt;y(t) &amp;lt;/math&amp;gt; multiplicada por una constante, la cual refleja qué porcentaje de  &amp;lt;math&amp;gt;C &amp;lt;/math&amp;gt; se va descomponiendo a medida que se da, simultáneamente, la reacción  &amp;lt;math&amp;gt;A + B → C &amp;lt;/math&amp;gt;. Sin embargo, esta constante no puede tener cualquier valor, ya que en una reacción se cumple la conservación de masa. Por ello, a  &amp;lt;math&amp;gt;C &amp;lt;/math&amp;gt; le asociaremos el siguiente dominio:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;C∈(0,1)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Obsérvese que  &amp;lt;math&amp;gt;C &amp;lt;/math&amp;gt; tiene que ser mayor que 0 para que sea reversible, pero al mismo tiempo inferior que 1, ya que si no se estaría descomponiendo más compuesto  &amp;lt;math&amp;gt;C &amp;lt;/math&amp;gt; del que realmente se ha formado, en otras palabras, estaría apareciendo masa de la nada.&lt;br /&gt;
&lt;br /&gt;
=Método de Euler=&lt;br /&gt;
&lt;br /&gt;
Una vez llegados a este punto, se procede a ver una interpretación gráfica de la reacción. Para ello, se refleja en la gráfica (en un intervalo de 2 segundos), cómo varían las concentraciones tanto de &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt; (&amp;lt;math&amp;gt;a_0&amp;lt;/math&amp;gt;=3 mol/L) y &amp;lt;math&amp;gt;B&amp;lt;/math&amp;gt; (&amp;lt;math&amp;gt;b_0&amp;lt;/math&amp;gt;=1 mol/L) como de &amp;lt;math&amp;gt; C&amp;lt;/math&amp;gt;, para una &amp;lt;math&amp;gt;k_1&amp;lt;/math&amp;gt;=1 mol/s. Se comienza, por el momento, aplicando el método de Euler. Posteriormente se utilizarán métodos más precisos.&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo= &lt;br /&gt;
% Euler&lt;br /&gt;
clear all&lt;br /&gt;
% datos del problema&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=2;&lt;br /&gt;
y0=0;&lt;br /&gt;
h=0.1;&lt;br /&gt;
k1=1;&lt;br /&gt;
a0=3;&lt;br /&gt;
b0=1;&lt;br /&gt;
% Definimos la variable independiente&lt;br /&gt;
t=t0:h:tN;&lt;br /&gt;
% Guardamos los valores de la solución aproximada en el vector &amp;quot;y1&amp;quot; y&lt;br /&gt;
% establecemos los vectores de concentraciones A y B&lt;br /&gt;
y1=zeros(1,length(t)); &lt;br /&gt;
y1(1)=y0;&lt;br /&gt;
a1=zeros(1,length(t));&lt;br /&gt;
a1(1)=a0;&lt;br /&gt;
b1=zeros(1,length(t));&lt;br /&gt;
b1(1)=b0;&lt;br /&gt;
% A continuación, calculamos las componentes de los vectores y1, a y b&lt;br /&gt;
for i=1:length(t)-1&lt;br /&gt;
    y1(i+1)=y1(i)+h*(k1*(a0-y1(i))*(b0-y1(i)));    %Euler&lt;br /&gt;
    a1(i+1)=a0-y1(i+1); % evolución de la concentración de A&lt;br /&gt;
    b1(i+1)=b0-y1(i+1); % evolución de la concentración de B&lt;br /&gt;
end&lt;br /&gt;
%grafico &lt;br /&gt;
figure(1)&lt;br /&gt;
hold on&lt;br /&gt;
plot(t,y1,'g')&lt;br /&gt;
plot(t,a1,'r')&lt;br /&gt;
plot(t,b1,'b')&lt;br /&gt;
legend('concentración de C','concentración de A','concentración de B','location','best')&lt;br /&gt;
hold off &lt;br /&gt;
%en verde se muestra la concentración de C, en rojo la de A, y en azul la de B&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Archivo:3euler.jpeg|500px|miniaturadeimagen|center|Reacción compleja]]&lt;br /&gt;
&lt;br /&gt;
Aunque con observar los resultados ya podemos decir con casi absoluta seguridad cuáles son los límites de las concentraciones de cada reactivo &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;B&amp;lt;/math&amp;gt; y del producto &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt;, se ha diseñado un programa que, mediante diferencia de valores sucesivos de la variable &amp;lt;math&amp;gt;y(t)&amp;lt;/math&amp;gt;, nos devuelve el valor de la función cuando dicha diferencia es muy pequeña '''(se ha puesto una diferencia de 0.001)''', es decir, cuando tenemos una asíntota al tender &amp;lt;math&amp;gt;t→∞&amp;lt;/math&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
%Estudio de las asíntotas&lt;br /&gt;
t1=t0:h:10;%se aumenta la longitud de t, y se estima que se alcanzarán las asíntotas antes de t=10&lt;br /&gt;
y_=zeros(1,length(t1)); %se define un vector y_ idéntico a y1 pero con t hasta 10&lt;br /&gt;
a_=y_;&lt;br /&gt;
b_=y_;&lt;br /&gt;
y_(1)=y0;&lt;br /&gt;
a_(1)=a0;&lt;br /&gt;
b_(1)=b0;&lt;br /&gt;
for i=1:length(t1)-1&lt;br /&gt;
    y_(i+1)=y_(i)+h*(k1*(a0-y_(i))*(b0-y_(i)));&lt;br /&gt;
    diferencia=y_(i+1)-y_(i);&lt;br /&gt;
    if abs(diferencia)&amp;lt;=0.001&lt;br /&gt;
        limiteC=y_(i+1)&lt;br /&gt;
        break&lt;br /&gt;
    end&lt;br /&gt;
end&lt;br /&gt;
for i=1:length(t1)-1&lt;br /&gt;
    y_(i+1)=y_(i)+h*(k1*(a0-y_(i))*(b0-y_(i)));    &lt;br /&gt;
    a_(i+1)=a0-y_(i+1);&lt;br /&gt;
    diferencia2=a_(i+1)-a_(i);&lt;br /&gt;
    if abs(diferencia2)&amp;lt;=0.001&lt;br /&gt;
        limiteA=a_(i+1)&lt;br /&gt;
        break&lt;br /&gt;
    end&lt;br /&gt;
end&lt;br /&gt;
for i=1:length(t1)-1&lt;br /&gt;
    y_(i+1)=y_(i)+h*(k1*(a0-y_(i))*(b0-y_(i)));    &lt;br /&gt;
    b_(i+1)=b0-y_(i+1);&lt;br /&gt;
    diferencia3=b_(i+1)-b_(i);&lt;br /&gt;
    if abs(diferencia3)&amp;lt;=0.001&lt;br /&gt;
        limiteB=b_(i+1)&lt;br /&gt;
        break&lt;br /&gt;
    end&lt;br /&gt;
end&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
Que nos devuelve unos valores de las concentraciones para el límite de:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\lim A=2,0036≈2 mol/L&amp;lt;/math&amp;gt;:     &lt;br /&gt;
&amp;lt;math&amp;gt;\lim B=0,0036≈0mol/L&amp;lt;/math&amp;gt;:         &lt;br /&gt;
&amp;lt;math&amp;gt;\lim C=0,9964≈1mol/L&amp;lt;/math&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
Lo cual es lógico, ya que &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;B&amp;lt;/math&amp;gt; se combinan en una proporción de 1:1, luego &amp;lt;math&amp;gt;B&amp;lt;/math&amp;gt;, que tiene una concentración inicial de &amp;lt;math&amp;gt;b_0&amp;lt;/math&amp;gt;=1, será el reactivo limitante (el que desaparecerá por completo), mientras que &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt;, con &amp;lt;math&amp;gt;a_0&amp;lt;/math&amp;gt;=3, acabará con una concentración molar final igual a 2, y &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt;, del que no habia nada,alcanza una concentraccion de &amp;lt;math&amp;gt;1mol/L&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
= Método del Trapecio y Método de Runge-Kutta=&lt;br /&gt;
&lt;br /&gt;
A continuación, para obtener con más precisión las representaciones gráficas de las respectivas concentraciones, se opta por utilizar los métodos de los &amp;lt;math&amp;gt;Trapecios&amp;lt;/math&amp;gt; (segundo orden) y de &amp;lt;math&amp;gt;Runge-Kutta&amp;lt;/math&amp;gt; (cuarto orden). Desgraciadamente, no es posible comparar los errores cometidos por cada método con la expresión real de la concentración de C, ya que la ecuación diferencial no es de fácil resolución analítica, luego resulta imposible alcanzar una expresión explícita de la concentración en términos de nuestros datos conocidos; &amp;lt;math&amp;gt;a_0&amp;lt;/math&amp;gt;,&amp;lt;math&amp;gt;b_0&amp;lt;/math&amp;gt;,&amp;lt;math&amp;gt;k_1&amp;lt;/math&amp;gt;,&amp;lt;math&amp;gt;t (tiempo)&amp;lt;/math&amp;gt;.  Sin embargo, podemos confiar con bastante seguridad en el método sobre todo de &amp;lt;math&amp;gt;Runge-Kutta&amp;lt;/math&amp;gt;, debido a su cuarto orden. &lt;br /&gt;
&lt;br /&gt;
Para los trapecios, al ser un método implícito, es necesario despejar la componente &amp;lt;math&amp;gt;y_{n+1}&amp;lt;/math&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;y_{n+1}=\frac{(1+\frac{h}{2}∙k_1∙(a_0+b_0))-\sqrt{(1+\frac{h}{2}∙k_1∙(a_0+b_0))^2 -2∙h∙k_1(y_n+\frac{h}{2}∙k_1∙(a_0-y_n )∙(b_0-y_n)+\frac{h}{2}∙k_1∙a_0∙b_0) }}{k_1∙h}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Cabe destacar que este programa parte de los datos ya establecidos en el programa de Euler para '''t0, tN, y0, a0, b0, k1 y h''':&lt;br /&gt;
{{matlab|codigo= &lt;br /&gt;
%Trapecios&lt;br /&gt;
y2=zeros(1,length(t)); &lt;br /&gt;
a2=y2;&lt;br /&gt;
b2=y2;&lt;br /&gt;
y2(1)=y0;&lt;br /&gt;
a2(1)=a0;&lt;br /&gt;
b2(1)=b0;&lt;br /&gt;
for i=1:length(t)-1&lt;br /&gt;
    y2(i+1)=((1+0.5*h*k1*(a0+b0))-sqrt((1+0.5*h*k1*(a0+b0))^2-2*h*k1*(y2(i)+0.5*h*k1*(a0-y2(i))*(b0-y2(i))+0.5*h*k1*a0*b0)))/(k1*h);&lt;br /&gt;
    a2(i+1)=a0-y2(i+1);&lt;br /&gt;
    b2(i+1)=b0-y2(i+1);&lt;br /&gt;
end&lt;br /&gt;
 &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
%Runge-Kutta&lt;br /&gt;
y3=zeros(1,length(t)); &lt;br /&gt;
a3=y3;&lt;br /&gt;
b3=y3;&lt;br /&gt;
y3(1)=y0;&lt;br /&gt;
a3(1)=a0;&lt;br /&gt;
b3(1)=b0;&lt;br /&gt;
for i=1:length(t)-1 &lt;br /&gt;
    r1=k1*(a0-y3(i))*(b0-y3(i));&lt;br /&gt;
    r2=k1*(a0-y3(i)-0.5*r1*h)*(b0-y3(i)-0.5*r1*h);&lt;br /&gt;
    r3=k1*(a0-y3(i)-0.5*r2*h)*(b0-y3(i)-0.5*r2*h);&lt;br /&gt;
    r4=k1*(a0-y3(i)-r3*h)*(b0-y3(i)-r3*h);&lt;br /&gt;
    y3(i+1)=y3(i)+h/6*(r1+2*r2+2*r3+r4);&lt;br /&gt;
    a3(i+1)=a0-y3(i+1);&lt;br /&gt;
    b3(i+1)=b0-y3(i+1);&lt;br /&gt;
end&lt;br /&gt;
%se pintan las dos, en azul las soluciones de los Trapecios, y en negro las&lt;br /&gt;
%de Runge-Kutta. &lt;br /&gt;
figure(2)&lt;br /&gt;
hold on&lt;br /&gt;
plot(t,y2)&lt;br /&gt;
plot(t,a2)&lt;br /&gt;
plot(t,b2)&lt;br /&gt;
plot(t,y3,'k')&lt;br /&gt;
plot(t,a3,'k')&lt;br /&gt;
plot(t,b3,'k')&lt;br /&gt;
hold off&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
Que proporciona el resultado que se puede observar en la primera gráfica adjunta. Como podemos ver, es prácticamente indistinguible una gráfica de la otra. Sin embargo, si la juntamos con las gráficas proporcionadas por el método de Euler, que se representa ahora en rojo, la diferencia es palpable (ver gráfica 2), lo cual evidencia la peor precisión del método de Euler.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:4trapeciokung.jpeg|500px|miniaturadeimagen|center|Reacción compleja]]&lt;br /&gt;
&lt;br /&gt;
[[Archivo:4comparacion.jpeg|500px|miniaturadeimagen|center|Gráfico 2]]&lt;br /&gt;
&lt;br /&gt;
=Reacción consecutiva=&lt;br /&gt;
&lt;br /&gt;
Consideremos ahora que se produce una reacción consecutiva de la forma, &lt;br /&gt;
&lt;br /&gt;
                                                                   &amp;lt;math&amp;gt;A + B → k_1C → k_2D&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
De tal modo que los reactivos &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;B&amp;lt;/math&amp;gt; se combinan en la proporción 1:1 para formar compuesto &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt;, el cual, a su vez, se va descomponiendo para formar compuesto &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt;. Al igual que se ha hecho antes al analizar las otras reacciones, se considerará que se cumple la ley de acción de masas. Es decir, la velocidad con la que se forma compuesto &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; es proporcional a las concentraciones existentes de &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt; y de &amp;lt;math&amp;gt;B&amp;lt;/math&amp;gt; y del mismo modo la de formación de la sustancia &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; lo es a la concentración de &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; que se ha ido formando.&lt;br /&gt;
&lt;br /&gt;
Esta reacción consecutiva está representada por el siguiente problema de valor inicial:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;&lt;br /&gt;
   \left . &lt;br /&gt;
      \begin{matrix} &lt;br /&gt;
         y'_1(t)={k_{1}}({a_{0}}-y_1(t))({b_{0}}-y_1(t))\\&lt;br /&gt;
         y'_2(t)={k_{2}}(y_1(t)-y_2(t))\\&lt;br /&gt;
y_1(0)=0\\y_2(0)=0&lt;br /&gt;
      \end{matrix}&lt;br /&gt;
   \right \}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
Donde &amp;lt;math&amp;gt;a_0&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;b_0&amp;lt;/math&amp;gt; representan las concentraciones iniciales de &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;B&amp;lt;/math&amp;gt; respectivamente, &amp;lt;math&amp;gt;k_1&amp;lt;/math&amp;gt; es la constante de proporcionalidad que rige la primera reacción y &amp;lt;math&amp;gt;k_2&amp;lt;/math&amp;gt; la que rige la segunda reacción o reacción consecutiva. &amp;lt;math&amp;gt;y_1’(t)&amp;lt;/math&amp;gt; e  &amp;lt;math&amp;gt;y_2’(t)&amp;lt;/math&amp;gt; representan las velocidades de las reacciones, es decir, las velocidades con que se forman los productos &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt;. &amp;lt;math&amp;gt;y_2(t)&amp;lt;/math&amp;gt; representa la concentración del producto &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; pero es importante apreciar que en este caso &amp;lt;math&amp;gt;y_1(t)&amp;lt;/math&amp;gt; no nos da el valor de la concentración de &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; directamente, sino que ésta será &amp;lt;math&amp;gt;y_1(t)&amp;lt;/math&amp;gt;- &amp;lt;math&amp;gt;y_2(t)&amp;lt;/math&amp;gt;, la cantidad que se forma en la primera reacción menos la que se emplea para formar el producto &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; en la segunda.&lt;br /&gt;
&lt;br /&gt;
Este problema se va a resolver para dos casos diferentes. Uno en el cual se considera que la segunda reacción es más rápida que la primera, lo que supone tomar un valor de la constante &amp;lt;math&amp;gt;k_2&amp;lt;/math&amp;gt;  mayor que &amp;lt;math&amp;gt;k_1&amp;lt;/math&amp;gt;. Y otro en el cual se considera que es más lenta, lo que implica que &amp;lt;math&amp;gt;k_2&amp;lt;/math&amp;gt; es menor que &amp;lt;math&amp;gt;k_1&amp;lt;/math&amp;gt;. Concretamente vamos a tomar los siguientes valores para resolver el problema numéricamente; &amp;lt;math&amp;gt;a_0&amp;lt;/math&amp;gt;=3 ,  &amp;lt;math&amp;gt;b_0&amp;lt;/math&amp;gt;=1, &amp;lt;math&amp;gt;k_1&amp;lt;/math&amp;gt;=1,  &amp;lt;math&amp;gt;k_2&amp;lt;/math&amp;gt;=5, &amp;lt;math&amp;gt;k_2&amp;lt;/math&amp;gt;=1/5, .En ambos casos se resuelve para los primeros 10 segundos.&lt;br /&gt;
&lt;br /&gt;
==La reacción D es más rápida que la reacción C==&lt;br /&gt;
CASO    &amp;lt;math&amp;gt;k_1=5  &amp;lt;/math&amp;gt;   '''h=0.1''' &lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
&lt;br /&gt;
%datos&lt;br /&gt;
y0=[0;0];&lt;br /&gt;
z0=[0;0];&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;
%matriz de las soluciones&lt;br /&gt;
y=zeros(2,length(t)); %euler&lt;br /&gt;
y(:,1)=y0;&lt;br /&gt;
 &lt;br /&gt;
z=zeros(2,length(t)); %runge-kutta&lt;br /&gt;
z(:,1)=y0;&lt;br /&gt;
 &lt;br /&gt;
for i=1:length(t)-1&lt;br /&gt;
 %euler&lt;br /&gt;
 y(:,i+1)=y(:,i)+h*[1*(3-y(1,i))*(1-y(1,i)); 5*(y(1,i)-y(2,i))];&lt;br /&gt;
 %runge-kutta&lt;br /&gt;
 K1=[1*(3-z(1,i))*(1-z(1,i)); 5*(z(1,i)-z(2,i))];&lt;br /&gt;
 K2=[1*(3-(z(1,i)+h/2*K1(1)))*(1-(z(1,i)+h/2*K1(1))); 5*((y(1,i)+h/2*K1(2))-(y(2,i)+h/2*K1(2)))];&lt;br /&gt;
 K3=[1*(3-(z(1,i)+h/2*K2(1)))*(1-(z(1,i)+h/2*K2(1))); 5*((y(1,i)+h/2*K2(2))-(y(2,i)+h/2*K2(2)))];&lt;br /&gt;
 K4=[1*(3-(z(1,i)+h*K3(1)))*(1-(z(1,i)+h*K3(1))); 5*((y(1,i)+h*K3(2))-(y(2,i)+h*K3(2)))];&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;
% se calcula la concentración de C=y1t)-y2(t)&lt;br /&gt;
Ay=y(1,:)-y(2,:); %euler&lt;br /&gt;
Az=z(1,:)-z(2,:); %runge-kutta&lt;br /&gt;
 &lt;br /&gt;
figure(1)&lt;br /&gt;
hold on&lt;br /&gt;
plot(t,Ay) %concentración de C por euler&lt;br /&gt;
plot(t,y(2,:),'r') %concentración de D por euler&lt;br /&gt;
plot(t,Az,'k') %concentración de C por runge-kutta&lt;br /&gt;
plot(t,z(2,:),'g') %concentración de D por runge-kutta&lt;br /&gt;
legend('concentración de C por euler','concentración de D por euler','concentración de C por runge-kutta','concentración de D por runge-kutta','Location','best')&lt;br /&gt;
hold off&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:graficoa.jpeg|500px|miniaturadeimagen|center|Reacción compleja]]&lt;br /&gt;
&lt;br /&gt;
Se observa que en en los primeros instantes aumentan las concentraciones de &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; aumentan sus concentraciones. Antes de que pase 1 segundo, la concentración &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; alcanza un máximo (de unos 0.3 molar) y va disminuyendo progresivamente hasta alcanzar un valor de 0 molar. La concentración &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; sigue creciendo hasta llegar a 1 molar. Una vez que tanto &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; como &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; alcanzan estos valores, se estabiliza la reacción. &lt;br /&gt;
&lt;br /&gt;
Como hemos impuesto que la reacción &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; es más rápida que &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt;, se observa que &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; empieza creciendo más rápidamente, pero como reacciona más despacio que &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; su concentración disminuye progresivamente, mientras que la de &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; aumenta.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''CASO'''  &amp;lt;math&amp;gt;k_2=5  &amp;lt;/math&amp;gt;   '''h=0.3''' &lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
&lt;br /&gt;
%datos&lt;br /&gt;
y0=[0;0];&lt;br /&gt;
z0=[0;0];&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=10;&lt;br /&gt;
h=0.3;&lt;br /&gt;
 &lt;br /&gt;
%variable independiente t&lt;br /&gt;
t=t0:h:tN;&lt;br /&gt;
 &lt;br /&gt;
%matriz de las soluciones&lt;br /&gt;
y=zeros(2,length(t)); %euler&lt;br /&gt;
y(:,1)=y0;&lt;br /&gt;
 &lt;br /&gt;
z=zeros(2,length(t)); %runge-kutta&lt;br /&gt;
z(:,1)=y0;&lt;br /&gt;
 &lt;br /&gt;
for i=1:length(t)-1&lt;br /&gt;
 %euler&lt;br /&gt;
 y(:,i+1)=y(:,i)+h*[1*(3-y(1,i))*(1-y(1,i)); 5*(y(1,i)-y(2,i))];&lt;br /&gt;
 %runge-kutta&lt;br /&gt;
 K1=[1*(3-z(1,i))*(1-z(1,i)); 5*(z(1,i)-z(2,i))];&lt;br /&gt;
 K2=[1*(3-(z(1,i)+h/2*K1(1)))*(1-(z(1,i)+h/2*K1(1))); 5*((y(1,i)+h/2*K1(2))-(y(2,i)+h/2*K1(2)))];&lt;br /&gt;
 K3=[1*(3-(z(1,i)+h/2*K2(1)))*(1-(z(1,i)+h/2*K2(1))); 5*((y(1,i)+h/2*K2(2))-(y(2,i)+h/2*K2(2)))];&lt;br /&gt;
 K4=[1*(3-(z(1,i)+h*K3(1)))*(1-(z(1,i)+h*K3(1))); 5*((y(1,i)+h*K3(2))-(y(2,i)+h*K3(2)))];&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;
% se calcula la concentración de C=y1t)-y2(t)&lt;br /&gt;
Ay=y(1,:)-y(2,:); %euler&lt;br /&gt;
Az=z(1,:)-z(2,:); %runge-kutta&lt;br /&gt;
 &lt;br /&gt;
figure(1)&lt;br /&gt;
hold on&lt;br /&gt;
plot(t,Ay) %concentración de C por euler&lt;br /&gt;
plot(t,y(2,:),'r') %concentración de D por euler&lt;br /&gt;
plot(t,Az,'k') %concentración de C por runge-kutta&lt;br /&gt;
plot(t,z(2,:),'g') %concentración de D por runge-kutta&lt;br /&gt;
legend('concentración de C por euler','concentración de D por euler','concentración de C por runge-kutta','concentración de D por runge-kutta','Location','best')&lt;br /&gt;
hold off&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:graficob.jpeg|500px|miniaturadeimagen|center|Reacción compleja]]&lt;br /&gt;
&lt;br /&gt;
Repetimos el programa pero para un tamaño de paso mayor, de '''h=0.3''', y observamos que no  es suficientemente preciso, sobre todo al principio, no se puede analizar bien lo que está pasando en la reacción.&lt;br /&gt;
&lt;br /&gt;
==La reacción D es más lenta que la reacción C==&lt;br /&gt;
&lt;br /&gt;
CASO  &amp;lt;math&amp;gt;k_1 &amp;lt;/math&amp;gt;=1,   &amp;lt;math&amp;gt;k_2 &amp;lt;/math&amp;gt;=1/5&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
&lt;br /&gt;
%datos&lt;br /&gt;
y0=[0;0];&lt;br /&gt;
z0=[0;0];&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;
%matriz de las soluciones&lt;br /&gt;
y=zeros(2,length(t)); %euler&lt;br /&gt;
y(:,1)=y0;&lt;br /&gt;
 &lt;br /&gt;
z=zeros(2,length(t)); %runge-kutta&lt;br /&gt;
z(:,1)=y0;&lt;br /&gt;
 &lt;br /&gt;
for i=1:length(t)-1&lt;br /&gt;
 %euler&lt;br /&gt;
 y(:,i+1)=y(:,i)+h*[1*(3-y(1,i))*(1-y(1,i)); 1/5*(y(1,i)-y(2,i))];&lt;br /&gt;
 %runge-kutta&lt;br /&gt;
 K1=[1*(3-z(1,i))*(1-z(1,i)); 1/5*(z(1,i)-z(2,i))];&lt;br /&gt;
 K2=[1*(3-(z(1,i)+h/2*K1(1)))*(1-(z(1,i)+h/2*K1(1))); 1/5*((y(1,i)+h/2*K1(2))-(y(2,i)+h/2*K1(2)))];&lt;br /&gt;
 K3=[1*(3-(z(1,i)+h/2*K2(1)))*(1-(z(1,i)+h/2*K2(1))); 1/5*((y(1,i)+h/2*K2(2))-(y(2,i)+h/2*K2(2)))];&lt;br /&gt;
 K4=[1*(3-(z(1,i)+h*K3(1)))*(1-(z(1,i)+h*K3(1))); 1/5*((y(1,i)+h*K3(2))-(y(2,i)+h*K3(2)))];&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;
% se calcula la concentración de C=y1t)-y2(t)&lt;br /&gt;
Ay=y(1,:)-y(2,:); %euler&lt;br /&gt;
Az=z(1,:)-z(2,:); %runge-kutta&lt;br /&gt;
 &lt;br /&gt;
figure(1)&lt;br /&gt;
hold on&lt;br /&gt;
plot(t,Ay) %concentración de C por euler&lt;br /&gt;
plot(t,y(2,:),'r') %concentración de D por euler&lt;br /&gt;
plot(t,Az,'k') %concentración de C por runge-kutta&lt;br /&gt;
plot(t,z(2,:),'g') %concentración de D por runge-kutta&lt;br /&gt;
legend('concentración de C por euler','concentración de D por euler','concentración de C por runge-kutta','concentración de D por runge-kutta','Location','best')&lt;br /&gt;
hold off&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:graficoc.jpeg|500px|miniaturadeimagen|center|Reacción compleja]]&lt;br /&gt;
&lt;br /&gt;
Si ahora imponemos que la reacción  &amp;lt;math&amp;gt;C &amp;lt;/math&amp;gt; es más rápida que  &amp;lt;math&amp;gt;D &amp;lt;/math&amp;gt;, obtenemos lo siguiente. Se parece a la gráfica que obtuvimos en el programa anterior, pero  más extendida en el tiempo, más lenta.  &amp;lt;math&amp;gt;C &amp;lt;/math&amp;gt; alcanza una concentración máxima de unos 0.8 molar antes de empezar a decrecer a medida que avanza el tiempo y acercándose a un valor de '''0''' molar.  &amp;lt;math&amp;gt;D &amp;lt;/math&amp;gt; crece más lentamente que en la gráfica anterior, pero se aproxima al mismo valor, '''1''' molar.&lt;br /&gt;
Se observa que aunque hagamos la reacción  &amp;lt;math&amp;gt;C &amp;lt;/math&amp;gt; más rápida, tenemos las mismas concentraciones finales, pero tardan más tiempo en obtenerse, ya que la reacción tarda más en estabilizarse.&lt;br /&gt;
&lt;br /&gt;
&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>Joseva</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Reacciones_complejas_(Grupo_D1)&amp;diff=27175</id>
		<title>Reacciones complejas (Grupo D1)</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Reacciones_complejas_(Grupo_D1)&amp;diff=27175"/>
				<updated>2015-03-05T23:04:22Z</updated>
		
		<summary type="html">&lt;p&gt;Joseva: /* Concentración del reactivo C a lo largo del tiempo */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{ TrabajoED | Reacciones complejas (Grupo D1) | [[:Categoría:Ecuaciones Diferenciales|Ecuaciones Diferenciales]]|[[:Categoría:ED14/15|Curso 2014-15]] | Rincón Crespo, Kevin&lt;br /&gt;
&lt;br /&gt;
Rodríguez Gómez, Javier&lt;br /&gt;
&lt;br /&gt;
Sans Jiménez, Alejandro&lt;br /&gt;
&lt;br /&gt;
Sesto Muñoz, María Victoria&lt;br /&gt;
&lt;br /&gt;
Vallejo Asín, José Manuel &lt;br /&gt;
&lt;br /&gt;
Villarino Redondo, Álvaro }}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=Introducción=&lt;br /&gt;
Se considera una reacción química irreversible en una solución bien mezclada. Supondremos que la reacción ocurre para un volumen y temperatura constantes. Al inicio se encuentran dos reactivos &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;B&amp;lt;/math&amp;gt;, que van formando un producto &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; en lo que se conoce como una reacción bimolecular, es decir, una molécula de &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt; y una de &amp;lt;math&amp;gt;B&amp;lt;/math&amp;gt; producen una de &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt;, &lt;br /&gt;
                                                                     &amp;lt;math&amp;gt;A + B → C&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Supondremos también que se satisface la ley de acción de masas, que establece que la velocidad de reacción es proporcional al producto de las concentraciones de los reactivos.&lt;br /&gt;
&lt;br /&gt;
=Concentración del reactivo &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; a lo largo del tiempo=&lt;br /&gt;
En primer lugar, suponiendo que la reacción es irreversible, es decir, que &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; no puede volver a formar &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;B&amp;lt;/math&amp;gt;, se puede expresar la situación mediante el siguiente problema de valor inicial, cuando t&amp;gt;0:&lt;br /&gt;
   &amp;lt;math&amp;gt;&lt;br /&gt;
   \left . &lt;br /&gt;
      \begin{matrix} &lt;br /&gt;
         y'(t)={k_{1}}({a_{0}}-y(t))({b_{0}}-y(t))=0\\&lt;br /&gt;
         y(0)=0&lt;br /&gt;
      \end{matrix}&lt;br /&gt;
   \right \}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Donde &amp;lt;math&amp;gt; {a_{0}}&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;{b_{0}}&amp;lt;/math&amp;gt; representan las concentraciones iniciales de '''A''' y '''B''' respectivamente y &amp;lt;math&amp;gt;{k_{1}}&amp;lt;/math&amp;gt; es la constante de proporcionalidad que indica la ley de acción de masas. &amp;lt;math&amp;gt;y’(t)&amp;lt;/math&amp;gt; representa la velocidad de reacción, es decir, la velocidad con que se forma el producto &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; ; mientras que la solución de la ecuación diferencial, &amp;lt;math&amp;gt;y(t)&amp;lt;/math&amp;gt; , representa la concentración de &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt;, la cantidad de compuesto que se ha formado. Para comprobar que la solución de este problema de Cauchy es única, comenzamos definiendo:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;math&amp;gt;f(t,y)={k_{1}}({a_{0}}-y(t))({b_{0}}-y(t))=0,   t&amp;gt;0 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Observamos que &amp;lt;math&amp;gt;f(t,y)&amp;lt;/math&amp;gt; es continua en el intervalo &amp;lt;math&amp;gt; I=(0,∞)∩B((0,0),r&amp;gt;0)&amp;lt;/math&amp;gt;, por lo que ya aseguramos la existencia de al menos una solución. Examinando la derivada parcial:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\frac{∂f}{∂y}=k_1(-a_0-b_0+2y)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Se deduce que al ser un polinomio no va a haber problemas de continuidad para ninguna bola. De esta forma, podemos asegurar que existe una única solución.&lt;br /&gt;
&lt;br /&gt;
==Concentración del reactivo C a lo largo del tiempo en un proceso reversible==&lt;br /&gt;
&lt;br /&gt;
Ahora bien, ¿qué pasaría si la reacción fuese reversible? Con esto lo que queremos indicar es que además de formarse  &amp;lt;math&amp;gt;C &amp;lt;/math&amp;gt;, este también se descompone de nuevo en  &amp;lt;math&amp;gt;A &amp;lt;/math&amp;gt; y  &amp;lt;math&amp;gt;B &amp;lt;/math&amp;gt;. Por lo tanto, nos quedaría una ecuación diferencial con la siguiente forma, cuando &amp;lt;math&amp;gt;t&amp;gt;0 &amp;lt;/math&amp;gt; :&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; y'(t)={k_{1}}({a_{0}}-y(t))({b_{0}}-y(t))-Cy(t)&amp;lt;/math&amp;gt;  &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Si nos fijamos, la modificación es sencillamente restar  &amp;lt;math&amp;gt;y(t) &amp;lt;/math&amp;gt; multiplicada por una constante, la cual refleja qué porcentaje de  &amp;lt;math&amp;gt;C &amp;lt;/math&amp;gt; se va descomponiendo a medida que se da, simultáneamente, la reacción  &amp;lt;math&amp;gt;A + B → C &amp;lt;/math&amp;gt;. Sin embargo, esta constante no puede tener cualquier valor, ya que en una reacción se cumple la conservación de masa. Por ello, a  &amp;lt;math&amp;gt;C &amp;lt;/math&amp;gt; le asociaremos el siguiente dominio:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;C∈(0,1)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Obsérvese que  &amp;lt;math&amp;gt;C &amp;lt;/math&amp;gt; tiene que ser mayor que 0 para que sea reversible, pero al mismo tiempo inferior que 1, ya que si no se estaría descomponiendo más compuesto  &amp;lt;math&amp;gt;C &amp;lt;/math&amp;gt; del que realmente se ha formado, en otras palabras, estaría apareciendo masa de la nada.&lt;br /&gt;
&lt;br /&gt;
=Método de Euler=&lt;br /&gt;
&lt;br /&gt;
Una vez llegados a este punto, se procede a ver una interpretación gráfica de la reacción. Para ello, se refleja en la gráfica (en un intervalo de 2 segundos), cómo varían las concentraciones tanto de &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt; (&amp;lt;math&amp;gt;a_0&amp;lt;/math&amp;gt;=3 mol/L) y &amp;lt;math&amp;gt;B&amp;lt;/math&amp;gt; (&amp;lt;math&amp;gt;b_0&amp;lt;/math&amp;gt;=1 mol/L) como de &amp;lt;math&amp;gt; C&amp;lt;/math&amp;gt;, para una &amp;lt;math&amp;gt;k_1&amp;lt;/math&amp;gt;=1 mol/s. Se comienza, por el momento, aplicando el método de Euler. Posteriormente se utilizarán métodos más precisos.&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo= &lt;br /&gt;
% Euler&lt;br /&gt;
clear all&lt;br /&gt;
% datos del problema&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=2;&lt;br /&gt;
y0=0;&lt;br /&gt;
h=0.1;&lt;br /&gt;
k1=1;&lt;br /&gt;
a0=3;&lt;br /&gt;
b0=1;&lt;br /&gt;
% Definimos la variable independiente&lt;br /&gt;
t=t0:h:tN;&lt;br /&gt;
% Guardamos los valores de la solución aproximada en el vector &amp;quot;y1&amp;quot; y&lt;br /&gt;
% establecemos los vectores de concentraciones A y B&lt;br /&gt;
y1=zeros(1,length(t)); &lt;br /&gt;
y1(1)=y0;&lt;br /&gt;
a1=zeros(1,length(t));&lt;br /&gt;
a1(1)=a0;&lt;br /&gt;
b1=zeros(1,length(t));&lt;br /&gt;
b1(1)=b0;&lt;br /&gt;
% A continuación, calculamos las componentes de los vectores y1, a y b&lt;br /&gt;
for i=1:length(t)-1&lt;br /&gt;
    y1(i+1)=y1(i)+h*(k1*(a0-y1(i))*(b0-y1(i)));    %Euler&lt;br /&gt;
    a1(i+1)=a0-y1(i+1); % evolución de la concentración de A&lt;br /&gt;
    b1(i+1)=b0-y1(i+1); % evolución de la concentración de B&lt;br /&gt;
end&lt;br /&gt;
%grafico &lt;br /&gt;
figure(1)&lt;br /&gt;
hold on&lt;br /&gt;
plot(t,y1,'g')&lt;br /&gt;
plot(t,a1,'r')&lt;br /&gt;
plot(t,b1,'b')&lt;br /&gt;
legend('concentración de C','concentración de A','concentración de B','location','best')&lt;br /&gt;
hold off &lt;br /&gt;
%en verde se muestra la concentración de C, en rojo la de A, y en azul la de B&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Archivo:3euler.jpeg|500px|miniaturadeimagen|center|Reacción compleja]]&lt;br /&gt;
&lt;br /&gt;
Aunque con observar los resultados ya podemos decir con casi absoluta seguridad cuáles son los límites de las concentraciones de cada reactivo &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;B&amp;lt;/math&amp;gt; y del producto &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt;, se ha diseñado un programa que, mediante diferencia de valores sucesivos de la variable &amp;lt;math&amp;gt;y(t)&amp;lt;/math&amp;gt;, nos devuelve el valor de la función cuando dicha diferencia es muy pequeña '''(se ha puesto una diferencia de 0.001)''', es decir, cuando tenemos una asíntota al tender &amp;lt;math&amp;gt;t→∞&amp;lt;/math&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
%Estudio de las asíntotas&lt;br /&gt;
t1=t0:h:10;%se aumenta la longitud de t, y se estima que se alcanzarán las asíntotas antes de t=10&lt;br /&gt;
y_=zeros(1,length(t1)); %se define un vector y_ idéntico a y1 pero con t hasta 10&lt;br /&gt;
a_=y_;&lt;br /&gt;
b_=y_;&lt;br /&gt;
y_(1)=y0;&lt;br /&gt;
a_(1)=a0;&lt;br /&gt;
b_(1)=b0;&lt;br /&gt;
for i=1:length(t1)-1&lt;br /&gt;
    y_(i+1)=y_(i)+h*(k1*(a0-y_(i))*(b0-y_(i)));&lt;br /&gt;
    diferencia=y_(i+1)-y_(i);&lt;br /&gt;
    if abs(diferencia)&amp;lt;=0.001&lt;br /&gt;
        limiteC=y_(i+1)&lt;br /&gt;
        break&lt;br /&gt;
    end&lt;br /&gt;
end&lt;br /&gt;
for i=1:length(t1)-1&lt;br /&gt;
    y_(i+1)=y_(i)+h*(k1*(a0-y_(i))*(b0-y_(i)));    &lt;br /&gt;
    a_(i+1)=a0-y_(i+1);&lt;br /&gt;
    diferencia2=a_(i+1)-a_(i);&lt;br /&gt;
    if abs(diferencia2)&amp;lt;=0.001&lt;br /&gt;
        limiteA=a_(i+1)&lt;br /&gt;
        break&lt;br /&gt;
    end&lt;br /&gt;
end&lt;br /&gt;
for i=1:length(t1)-1&lt;br /&gt;
    y_(i+1)=y_(i)+h*(k1*(a0-y_(i))*(b0-y_(i)));    &lt;br /&gt;
    b_(i+1)=b0-y_(i+1);&lt;br /&gt;
    diferencia3=b_(i+1)-b_(i);&lt;br /&gt;
    if abs(diferencia3)&amp;lt;=0.001&lt;br /&gt;
        limiteB=b_(i+1)&lt;br /&gt;
        break&lt;br /&gt;
    end&lt;br /&gt;
end&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
Que nos devuelve unos valores de las concentraciones para el límite de:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\lim A=2,0036≈2 mol/L&amp;lt;/math&amp;gt;:     &lt;br /&gt;
&amp;lt;math&amp;gt;\lim B=0,0036≈0mol/L&amp;lt;/math&amp;gt;:         &lt;br /&gt;
&amp;lt;math&amp;gt;\lim C=0,9964≈1mol/L&amp;lt;/math&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
Lo cual es lógico, ya que &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;B&amp;lt;/math&amp;gt; se combinan en una proporción de 1:1, luego &amp;lt;math&amp;gt;B&amp;lt;/math&amp;gt;, que tiene una concentración inicial de &amp;lt;math&amp;gt;b_0&amp;lt;/math&amp;gt;=1, será el reactivo limitante (el que desaparecerá por completo), mientras que &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt;, con &amp;lt;math&amp;gt;a_0&amp;lt;/math&amp;gt;=3, acabará con una concentración molar final igual a 2, y &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt;, del que no habia nada,alcanza una concentraccion de &amp;lt;math&amp;gt;1mol/L&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
= Método del Trapecio y Método de Runge-Kutta=&lt;br /&gt;
&lt;br /&gt;
A continuación, para obtener con más precisión las representaciones gráficas de las respectivas concentraciones, se opta por utilizar los métodos de los &amp;lt;math&amp;gt;Trapecios&amp;lt;/math&amp;gt; (segundo orden) y de &amp;lt;math&amp;gt;Runge-Kutta&amp;lt;/math&amp;gt; (cuarto orden). Desgraciadamente, no es posible comparar los errores cometidos por cada método con la expresión real de la concentración de C, ya que la ecuación diferencial no es de fácil resolución analítica, luego resulta imposible alcanzar una expresión explícita de la concentración en términos de nuestros datos conocidos; &amp;lt;math&amp;gt;a_0&amp;lt;/math&amp;gt;,&amp;lt;math&amp;gt;b_0&amp;lt;/math&amp;gt;,&amp;lt;math&amp;gt;k_1&amp;lt;/math&amp;gt;,&amp;lt;math&amp;gt;t (tiempo)&amp;lt;/math&amp;gt;.  Sin embargo, podemos confiar con bastante seguridad en el método sobre todo de &amp;lt;math&amp;gt;Runge-Kutta&amp;lt;/math&amp;gt;, debido a su cuarto orden. &lt;br /&gt;
&lt;br /&gt;
Para los trapecios, al ser un método implícito, es necesario despejar la componente &amp;lt;math&amp;gt;y_{n+1}&amp;lt;/math&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;y_{n+1}=\frac{(1+\frac{h}{2}∙k_1∙(a_0+b_0))-\sqrt{(1+\frac{h}{2}∙k_1∙(a_0+b_0))^2 -2∙h∙k_1(y_n+\frac{h}{2}∙k_1∙(a_0-y_n )∙(b_0-y_n)+\frac{h}{2}∙k_1∙a_0∙b_0) }}{k_1∙h}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Cabe destacar que este programa parte de los datos ya establecidos en el programa de Euler para '''t0, tN, y0, a0, b0, k1 y h''':&lt;br /&gt;
{{matlab|codigo= &lt;br /&gt;
%Trapecios&lt;br /&gt;
y2=zeros(1,length(t)); &lt;br /&gt;
a2=y2;&lt;br /&gt;
b2=y2;&lt;br /&gt;
y2(1)=y0;&lt;br /&gt;
a2(1)=a0;&lt;br /&gt;
b2(1)=b0;&lt;br /&gt;
for i=1:length(t)-1&lt;br /&gt;
    y2(i+1)=((1+0.5*h*k1*(a0+b0))-sqrt((1+0.5*h*k1*(a0+b0))^2-2*h*k1*(y2(i)+0.5*h*k1*(a0-y2(i))*(b0-y2(i))+0.5*h*k1*a0*b0)))/(k1*h);&lt;br /&gt;
    a2(i+1)=a0-y2(i+1);&lt;br /&gt;
    b2(i+1)=b0-y2(i+1);&lt;br /&gt;
end&lt;br /&gt;
 &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
%Runge-Kutta&lt;br /&gt;
y3=zeros(1,length(t)); &lt;br /&gt;
a3=y3;&lt;br /&gt;
b3=y3;&lt;br /&gt;
y3(1)=y0;&lt;br /&gt;
a3(1)=a0;&lt;br /&gt;
b3(1)=b0;&lt;br /&gt;
for i=1:length(t)-1 &lt;br /&gt;
    r1=k1*(a0-y3(i))*(b0-y3(i));&lt;br /&gt;
    r2=k1*(a0-y3(i)-0.5*r1*h)*(b0-y3(i)-0.5*r1*h);&lt;br /&gt;
    r3=k1*(a0-y3(i)-0.5*r2*h)*(b0-y3(i)-0.5*r2*h);&lt;br /&gt;
    r4=k1*(a0-y3(i)-r3*h)*(b0-y3(i)-r3*h);&lt;br /&gt;
    y3(i+1)=y3(i)+h/6*(r1+2*r2+2*r3+r4);&lt;br /&gt;
    a3(i+1)=a0-y3(i+1);&lt;br /&gt;
    b3(i+1)=b0-y3(i+1);&lt;br /&gt;
end&lt;br /&gt;
%se pintan las dos, en azul las soluciones de los Trapecios, y en negro las&lt;br /&gt;
%de Runge-Kutta. &lt;br /&gt;
figure(2)&lt;br /&gt;
hold on&lt;br /&gt;
plot(t,y2)&lt;br /&gt;
plot(t,a2)&lt;br /&gt;
plot(t,b2)&lt;br /&gt;
plot(t,y3,'k')&lt;br /&gt;
plot(t,a3,'k')&lt;br /&gt;
plot(t,b3,'k')&lt;br /&gt;
hold off&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
Que proporciona el resultado que se puede observar en la primera gráfica adjunta. Como podemos ver, es prácticamente indistinguible una gráfica de la otra. Sin embargo, si la juntamos con las gráficas proporcionadas por el método de Euler, que se representa ahora en rojo, la diferencia es palpable (ver gráfica 2), lo cual evidencia la peor precisión del método de Euler.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:4trapeciokung.jpeg|500px|miniaturadeimagen|center|Reacción compleja]]&lt;br /&gt;
&lt;br /&gt;
[[Archivo:4comparacion.jpeg|500px|miniaturadeimagen|center|Gráfico 2]]&lt;br /&gt;
&lt;br /&gt;
=Reacción consecutiva=&lt;br /&gt;
&lt;br /&gt;
Consideremos ahora que se produce una reacción consecutiva de la forma: &lt;br /&gt;
&lt;br /&gt;
                                                                   &amp;lt;math&amp;gt;A + B → k_1C → k_2D&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
De tal modo que los reactivos &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;B&amp;lt;/math&amp;gt; se combinan en la proporción 1:1 para formar compuesto &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt;, el cual, a su vez, se va descomponiendo para formar compuesto &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt;. Al igual que se ha hecho antes al analizar las otras reacciones, se considerará que se cumple la ley de acción de masas. Es decir, la velocidad con la que se forma compuesto &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; es proporcional a las concentraciones existentes de &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt; y de &amp;lt;math&amp;gt;B&amp;lt;/math&amp;gt; y del mismo modo la de formación de la sustancia &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; lo es a la concentración de &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; que se ha ido formando.&lt;br /&gt;
&lt;br /&gt;
Esta reacción consecutiva está representada por el siguiente problema de valor inicial:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;&lt;br /&gt;
   \left . &lt;br /&gt;
      \begin{matrix} &lt;br /&gt;
         y'_1(t)={k_{1}}({a_{0}}-y_1(t))({b_{0}}-y_1(t))\\&lt;br /&gt;
         y'_2(t)={k_{2}}(y_1(t)-y_2(t))\\&lt;br /&gt;
y_1(0)=0\\y_2(0)=0&lt;br /&gt;
      \end{matrix}&lt;br /&gt;
   \right \}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
Donde &amp;lt;math&amp;gt;a_0&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;b_0&amp;lt;/math&amp;gt; representan las concentraciones iniciales de &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;B&amp;lt;/math&amp;gt; respectivamente, &amp;lt;math&amp;gt;k_1&amp;lt;/math&amp;gt; es la constante de proporcionalidad que rige la primera reacción y &amp;lt;math&amp;gt;k_2&amp;lt;/math&amp;gt; la que rige la segunda reacción o reacción consecutiva. &amp;lt;math&amp;gt;y_1’(t)&amp;lt;/math&amp;gt; e  &amp;lt;math&amp;gt;y_2’(t)&amp;lt;/math&amp;gt; representan las velocidades de las reacciones, es decir, las velocidades con que se forman los productos &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt;. &amp;lt;math&amp;gt;y_2(t)&amp;lt;/math&amp;gt; representa la concentración del producto &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; pero es importante apreciar que en este caso &amp;lt;math&amp;gt;y_1(t)&amp;lt;/math&amp;gt; no nos da el valor de la concentración de &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; directamente, sino que ésta será &amp;lt;math&amp;gt;y_1(t)&amp;lt;/math&amp;gt;- &amp;lt;math&amp;gt;y_2(t)&amp;lt;/math&amp;gt;, la cantidad que se forma en la primera reacción menos la que se emplea para formar el producto &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; en la segunda.&lt;br /&gt;
&lt;br /&gt;
Este problema se va a resolver para dos casos diferentes. Uno en el cual se considera que la segunda reacción es más rápida que la primera, lo que supone tomar un valor de la constante &amp;lt;math&amp;gt;k_2&amp;lt;/math&amp;gt;  mayor que &amp;lt;math&amp;gt;k_1&amp;lt;/math&amp;gt;. Y otro en el cual se considera que es más lenta, lo que implica que &amp;lt;math&amp;gt;k_2&amp;lt;/math&amp;gt; es menor que &amp;lt;math&amp;gt;k_1&amp;lt;/math&amp;gt;. Concretamente vamos a tomar los siguientes valores para resolver el problema numéricamente; &amp;lt;math&amp;gt;a_0&amp;lt;/math&amp;gt;=3 ,  &amp;lt;math&amp;gt;b_0&amp;lt;/math&amp;gt;=1, &amp;lt;math&amp;gt;k_1&amp;lt;/math&amp;gt;=1,  &amp;lt;math&amp;gt;k_2&amp;lt;/math&amp;gt;=5, &amp;lt;math&amp;gt;k_2&amp;lt;/math&amp;gt;=1/5, .En ambos casos se resuelve para los primeros 10 segundos.&lt;br /&gt;
&lt;br /&gt;
==La reacción D es más rápida que la reacción C==&lt;br /&gt;
CASO    &amp;lt;math&amp;gt;k_1=5  &amp;lt;/math&amp;gt;   '''h=0.1''' &lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
&lt;br /&gt;
%datos&lt;br /&gt;
y0=[0;0];&lt;br /&gt;
z0=[0;0];&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;
%matriz de las soluciones&lt;br /&gt;
y=zeros(2,length(t)); %euler&lt;br /&gt;
y(:,1)=y0;&lt;br /&gt;
 &lt;br /&gt;
z=zeros(2,length(t)); %runge-kutta&lt;br /&gt;
z(:,1)=y0;&lt;br /&gt;
 &lt;br /&gt;
for i=1:length(t)-1&lt;br /&gt;
 %euler&lt;br /&gt;
 y(:,i+1)=y(:,i)+h*[1*(3-y(1,i))*(1-y(1,i)); 5*(y(1,i)-y(2,i))];&lt;br /&gt;
 %runge-kutta&lt;br /&gt;
 K1=[1*(3-z(1,i))*(1-z(1,i)); 5*(z(1,i)-z(2,i))];&lt;br /&gt;
 K2=[1*(3-(z(1,i)+h/2*K1(1)))*(1-(z(1,i)+h/2*K1(1))); 5*((y(1,i)+h/2*K1(2))-(y(2,i)+h/2*K1(2)))];&lt;br /&gt;
 K3=[1*(3-(z(1,i)+h/2*K2(1)))*(1-(z(1,i)+h/2*K2(1))); 5*((y(1,i)+h/2*K2(2))-(y(2,i)+h/2*K2(2)))];&lt;br /&gt;
 K4=[1*(3-(z(1,i)+h*K3(1)))*(1-(z(1,i)+h*K3(1))); 5*((y(1,i)+h*K3(2))-(y(2,i)+h*K3(2)))];&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;
% se calcula la concentración de C=y1t)-y2(t)&lt;br /&gt;
Ay=y(1,:)-y(2,:); %euler&lt;br /&gt;
Az=z(1,:)-z(2,:); %runge-kutta&lt;br /&gt;
 &lt;br /&gt;
figure(1)&lt;br /&gt;
hold on&lt;br /&gt;
plot(t,Ay) %concentración de C por euler&lt;br /&gt;
plot(t,y(2,:),'r') %concentración de D por euler&lt;br /&gt;
plot(t,Az,'k') %concentración de C por runge-kutta&lt;br /&gt;
plot(t,z(2,:),'g') %concentración de D por runge-kutta&lt;br /&gt;
legend('concentración de C por euler','concentración de D por euler','concentración de C por runge-kutta','concentración de D por runge-kutta','Location','best')&lt;br /&gt;
hold off&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:graficoa.jpeg|500px|miniaturadeimagen|center|Reacción compleja]]&lt;br /&gt;
&lt;br /&gt;
Se observa que en en los primeros instantes aumentan las concentraciones de &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; aumentan sus concentraciones. Antes de que pase 1 segundo, la concentración &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; alcanza un máximo (de unos 0.3 molar) y va disminuyendo progresivamente hasta alcanzar un valor de 0 molar. La concentración &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; sigue creciendo hasta llegar a 1 molar. Una vez que tanto &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; como &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; alcanzan estos valores, se estabiliza la reacción. &lt;br /&gt;
&lt;br /&gt;
Como hemos impuesto que la reacción &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; es más rápida que &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt;, se observa que &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; empieza creciendo más rápidamente, pero como reacciona más despacio que &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; su concentración disminuye progresivamente, mientras que la de &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; aumenta.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''CASO'''  &amp;lt;math&amp;gt;k_2=5  &amp;lt;/math&amp;gt;   '''h=0.3''' &lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
&lt;br /&gt;
%datos&lt;br /&gt;
y0=[0;0];&lt;br /&gt;
z0=[0;0];&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=10;&lt;br /&gt;
h=0.3;&lt;br /&gt;
 &lt;br /&gt;
%variable independiente t&lt;br /&gt;
t=t0:h:tN;&lt;br /&gt;
 &lt;br /&gt;
%matriz de las soluciones&lt;br /&gt;
y=zeros(2,length(t)); %euler&lt;br /&gt;
y(:,1)=y0;&lt;br /&gt;
 &lt;br /&gt;
z=zeros(2,length(t)); %runge-kutta&lt;br /&gt;
z(:,1)=y0;&lt;br /&gt;
 &lt;br /&gt;
for i=1:length(t)-1&lt;br /&gt;
 %euler&lt;br /&gt;
 y(:,i+1)=y(:,i)+h*[1*(3-y(1,i))*(1-y(1,i)); 5*(y(1,i)-y(2,i))];&lt;br /&gt;
 %runge-kutta&lt;br /&gt;
 K1=[1*(3-z(1,i))*(1-z(1,i)); 5*(z(1,i)-z(2,i))];&lt;br /&gt;
 K2=[1*(3-(z(1,i)+h/2*K1(1)))*(1-(z(1,i)+h/2*K1(1))); 5*((y(1,i)+h/2*K1(2))-(y(2,i)+h/2*K1(2)))];&lt;br /&gt;
 K3=[1*(3-(z(1,i)+h/2*K2(1)))*(1-(z(1,i)+h/2*K2(1))); 5*((y(1,i)+h/2*K2(2))-(y(2,i)+h/2*K2(2)))];&lt;br /&gt;
 K4=[1*(3-(z(1,i)+h*K3(1)))*(1-(z(1,i)+h*K3(1))); 5*((y(1,i)+h*K3(2))-(y(2,i)+h*K3(2)))];&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;
% se calcula la concentración de C=y1t)-y2(t)&lt;br /&gt;
Ay=y(1,:)-y(2,:); %euler&lt;br /&gt;
Az=z(1,:)-z(2,:); %runge-kutta&lt;br /&gt;
 &lt;br /&gt;
figure(1)&lt;br /&gt;
hold on&lt;br /&gt;
plot(t,Ay) %concentración de C por euler&lt;br /&gt;
plot(t,y(2,:),'r') %concentración de D por euler&lt;br /&gt;
plot(t,Az,'k') %concentración de C por runge-kutta&lt;br /&gt;
plot(t,z(2,:),'g') %concentración de D por runge-kutta&lt;br /&gt;
legend('concentración de C por euler','concentración de D por euler','concentración de C por runge-kutta','concentración de D por runge-kutta','Location','best')&lt;br /&gt;
hold off&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:graficob.jpeg|500px|miniaturadeimagen|center|Reacción compleja]]&lt;br /&gt;
&lt;br /&gt;
Repetimos el programa pero para un tamaño de paso mayor, de '''h=0.3''', y observamos que no  es suficientemente preciso, sobre todo al principio, no se puede analizar bien lo que está pasando en la reacción.&lt;br /&gt;
&lt;br /&gt;
==La reacción D es más lenta que la reacción C==&lt;br /&gt;
&lt;br /&gt;
CASO  &amp;lt;math&amp;gt;k_1 &amp;lt;/math&amp;gt;=1,   &amp;lt;math&amp;gt;k_2 &amp;lt;/math&amp;gt;=1/5&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
&lt;br /&gt;
%datos&lt;br /&gt;
y0=[0;0];&lt;br /&gt;
z0=[0;0];&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;
%matriz de las soluciones&lt;br /&gt;
y=zeros(2,length(t)); %euler&lt;br /&gt;
y(:,1)=y0;&lt;br /&gt;
 &lt;br /&gt;
z=zeros(2,length(t)); %runge-kutta&lt;br /&gt;
z(:,1)=y0;&lt;br /&gt;
 &lt;br /&gt;
for i=1:length(t)-1&lt;br /&gt;
 %euler&lt;br /&gt;
 y(:,i+1)=y(:,i)+h*[1*(3-y(1,i))*(1-y(1,i)); 1/5*(y(1,i)-y(2,i))];&lt;br /&gt;
 %runge-kutta&lt;br /&gt;
 K1=[1*(3-z(1,i))*(1-z(1,i)); 1/5*(z(1,i)-z(2,i))];&lt;br /&gt;
 K2=[1*(3-(z(1,i)+h/2*K1(1)))*(1-(z(1,i)+h/2*K1(1))); 1/5*((y(1,i)+h/2*K1(2))-(y(2,i)+h/2*K1(2)))];&lt;br /&gt;
 K3=[1*(3-(z(1,i)+h/2*K2(1)))*(1-(z(1,i)+h/2*K2(1))); 1/5*((y(1,i)+h/2*K2(2))-(y(2,i)+h/2*K2(2)))];&lt;br /&gt;
 K4=[1*(3-(z(1,i)+h*K3(1)))*(1-(z(1,i)+h*K3(1))); 1/5*((y(1,i)+h*K3(2))-(y(2,i)+h*K3(2)))];&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;
% se calcula la concentración de C=y1t)-y2(t)&lt;br /&gt;
Ay=y(1,:)-y(2,:); %euler&lt;br /&gt;
Az=z(1,:)-z(2,:); %runge-kutta&lt;br /&gt;
 &lt;br /&gt;
figure(1)&lt;br /&gt;
hold on&lt;br /&gt;
plot(t,Ay) %concentración de C por euler&lt;br /&gt;
plot(t,y(2,:),'r') %concentración de D por euler&lt;br /&gt;
plot(t,Az,'k') %concentración de C por runge-kutta&lt;br /&gt;
plot(t,z(2,:),'g') %concentración de D por runge-kutta&lt;br /&gt;
legend('concentración de C por euler','concentración de D por euler','concentración de C por runge-kutta','concentración de D por runge-kutta','Location','best')&lt;br /&gt;
hold off&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:graficoc.jpeg|500px|miniaturadeimagen|center|Reacción compleja]]&lt;br /&gt;
&lt;br /&gt;
Si ahora imponemos que la reacción  &amp;lt;math&amp;gt;C &amp;lt;/math&amp;gt; es más rápida que  &amp;lt;math&amp;gt;D &amp;lt;/math&amp;gt;, obtenemos lo siguiente. Se parece a la gráfica que obtuvimos en el programa anterior, pero  más extendida en el tiempo, más lenta.  &amp;lt;math&amp;gt;C &amp;lt;/math&amp;gt; alcanza una concentración máxima de unos 0.8 molar antes de empezar a decrecer a medida que avanza el tiempo y acercándose a un valor de '''0''' molar.  &amp;lt;math&amp;gt;D &amp;lt;/math&amp;gt; crece más lentamente que en la gráfica anterior, pero se aproxima al mismo valor, '''1''' molar.&lt;br /&gt;
Se observa que aunque hagamos la reacción  &amp;lt;math&amp;gt;C &amp;lt;/math&amp;gt; más rápida, tenemos las mismas concentraciones finales, pero tardan más tiempo en obtenerse, ya que la reacción tarda más en estabilizarse.&lt;br /&gt;
&lt;br /&gt;
&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>Joseva</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Reacciones_complejas_(Grupo_D1)&amp;diff=27171</id>
		<title>Reacciones complejas (Grupo D1)</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Reacciones_complejas_(Grupo_D1)&amp;diff=27171"/>
				<updated>2015-03-05T23:03:14Z</updated>
		
		<summary type="html">&lt;p&gt;Joseva: /* Introducción */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{ TrabajoED | Reacciones complejas (Grupo D1) | [[:Categoría:Ecuaciones Diferenciales|Ecuaciones Diferenciales]]|[[:Categoría:ED14/15|Curso 2014-15]] | Rincón Crespo, Kevin&lt;br /&gt;
&lt;br /&gt;
Rodríguez Gómez, Javier&lt;br /&gt;
&lt;br /&gt;
Sans Jiménez, Alejandro&lt;br /&gt;
&lt;br /&gt;
Sesto Muñoz, María Victoria&lt;br /&gt;
&lt;br /&gt;
Vallejo Asín, José Manuel &lt;br /&gt;
&lt;br /&gt;
Villarino Redondo, Álvaro }}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=Introducción=&lt;br /&gt;
Se considera una reacción química irreversible en una solución bien mezclada. Supondremos que la reacción ocurre para un volumen y temperatura constantes. Al inicio se encuentran dos reactivos &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;B&amp;lt;/math&amp;gt;, que van formando un producto &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; en lo que se conoce como una reacción bimolecular, es decir, una molécula de &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt; y una de &amp;lt;math&amp;gt;B&amp;lt;/math&amp;gt; producen una de &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt;, &lt;br /&gt;
                                                                     &amp;lt;math&amp;gt;A + B → C&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Supondremos también que se satisface la ley de acción de masas, que establece que la velocidad de reacción es proporcional al producto de las concentraciones de los reactivos.&lt;br /&gt;
&lt;br /&gt;
=Concentración del reactivo C a lo largo del tiempo=&lt;br /&gt;
En primer lugar, suponiendo que la reacción es irreversible, es decir, que C no puede volver a formar A y B, se puede expresar la situación mediante el siguiente problema de valor inicial, cuando t&amp;gt;0:&lt;br /&gt;
   &amp;lt;math&amp;gt;&lt;br /&gt;
   \left . &lt;br /&gt;
      \begin{matrix} &lt;br /&gt;
         y'(t)={k_{1}}({a_{0}}-y(t))({b_{0}}-y(t))=0\\&lt;br /&gt;
         y(0)=0&lt;br /&gt;
      \end{matrix}&lt;br /&gt;
   \right \}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Donde &amp;lt;math&amp;gt; {a_{0}}&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;{b_{0}}&amp;lt;/math&amp;gt; representan las concentraciones iniciales de '''A''' y '''B''' respectivamente y &amp;lt;math&amp;gt;{k_{1}}&amp;lt;/math&amp;gt; es la constante de proporcionalidad que indica la ley de acción de masas. &amp;lt;math&amp;gt;y’(t)&amp;lt;/math&amp;gt; representa la velocidad de reacción, es decir, la velocidad con que se forma el producto &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; ; mientras que la solución de la ecuación diferencial, &amp;lt;math&amp;gt;y(t)&amp;lt;/math&amp;gt; , representa la concentración de &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt;, la cantidad de compuesto que se ha formado. Para comprobar que la solución de este problema de Cauchy es única, comenzamos definiendo:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;math&amp;gt;f(t,y)={k_{1}}({a_{0}}-y(t))({b_{0}}-y(t))=0,   t&amp;gt;0 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Observamos que &amp;lt;math&amp;gt;f(t,y)&amp;lt;/math&amp;gt; es continua en el intervalo &amp;lt;math&amp;gt; I=(0,∞)∩B((0,0),r&amp;gt;0)&amp;lt;/math&amp;gt;, por lo que ya aseguramos la existencia de al menos una solución. Examinando la derivada parcial:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\frac{∂f}{∂y}=k_1(-a_0-b_0+2y)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Se deduce que al ser un polinomio no va a haber problemas de continuidad para ninguna bola. De esta forma, podemos asegurar que existe una única solución.&lt;br /&gt;
&lt;br /&gt;
==Concentración del reactivo C a lo largo del tiempo en un proceso reversible==&lt;br /&gt;
&lt;br /&gt;
Ahora bien, ¿qué pasaría si la reacción fuese reversible? Con esto lo que queremos indicar es que además de formarse  &amp;lt;math&amp;gt;C &amp;lt;/math&amp;gt;, este también se descompone de nuevo en  &amp;lt;math&amp;gt;A &amp;lt;/math&amp;gt; y  &amp;lt;math&amp;gt;B &amp;lt;/math&amp;gt;. Por lo tanto, nos quedaría una ecuación diferencial con la siguiente forma, cuando &amp;lt;math&amp;gt;t&amp;gt;0 &amp;lt;/math&amp;gt; :&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; y'(t)={k_{1}}({a_{0}}-y(t))({b_{0}}-y(t))-Cy(t)&amp;lt;/math&amp;gt;  &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Si nos fijamos, la modificación es sencillamente restar  &amp;lt;math&amp;gt;y(t) &amp;lt;/math&amp;gt; multiplicada por una constante, la cual refleja qué porcentaje de  &amp;lt;math&amp;gt;C &amp;lt;/math&amp;gt; se va descomponiendo a medida que se da, simultáneamente, la reacción  &amp;lt;math&amp;gt;A + B → C &amp;lt;/math&amp;gt;. Sin embargo, esta constante no puede tener cualquier valor, ya que en una reacción se cumple la conservación de masa. Por ello, a  &amp;lt;math&amp;gt;C &amp;lt;/math&amp;gt; le asociaremos el siguiente dominio:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;C∈(0,1)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Obsérvese que  &amp;lt;math&amp;gt;C &amp;lt;/math&amp;gt; tiene que ser mayor que 0 para que sea reversible, pero al mismo tiempo inferior que 1, ya que si no se estaría descomponiendo más compuesto  &amp;lt;math&amp;gt;C &amp;lt;/math&amp;gt; del que realmente se ha formado, en otras palabras, estaría apareciendo masa de la nada.&lt;br /&gt;
&lt;br /&gt;
=Método de Euler=&lt;br /&gt;
&lt;br /&gt;
Una vez llegados a este punto, se procede a ver una interpretación gráfica de la reacción. Para ello, se refleja en la gráfica (en un intervalo de 2 segundos), cómo varían las concentraciones tanto de &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt; (&amp;lt;math&amp;gt;a_0&amp;lt;/math&amp;gt;=3 mol/L) y &amp;lt;math&amp;gt;B&amp;lt;/math&amp;gt; (&amp;lt;math&amp;gt;b_0&amp;lt;/math&amp;gt;=1 mol/L) como de &amp;lt;math&amp;gt; C&amp;lt;/math&amp;gt;, para una &amp;lt;math&amp;gt;k_1&amp;lt;/math&amp;gt;=1 mol/s. Se comienza, por el momento, aplicando el método de Euler. Posteriormente se utilizarán métodos más precisos.&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo= &lt;br /&gt;
% Euler&lt;br /&gt;
clear all&lt;br /&gt;
% datos del problema&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=2;&lt;br /&gt;
y0=0;&lt;br /&gt;
h=0.1;&lt;br /&gt;
k1=1;&lt;br /&gt;
a0=3;&lt;br /&gt;
b0=1;&lt;br /&gt;
% Definimos la variable independiente&lt;br /&gt;
t=t0:h:tN;&lt;br /&gt;
% Guardamos los valores de la solución aproximada en el vector &amp;quot;y1&amp;quot; y&lt;br /&gt;
% establecemos los vectores de concentraciones A y B&lt;br /&gt;
y1=zeros(1,length(t)); &lt;br /&gt;
y1(1)=y0;&lt;br /&gt;
a1=zeros(1,length(t));&lt;br /&gt;
a1(1)=a0;&lt;br /&gt;
b1=zeros(1,length(t));&lt;br /&gt;
b1(1)=b0;&lt;br /&gt;
% A continuación, calculamos las componentes de los vectores y1, a y b&lt;br /&gt;
for i=1:length(t)-1&lt;br /&gt;
    y1(i+1)=y1(i)+h*(k1*(a0-y1(i))*(b0-y1(i)));    %Euler&lt;br /&gt;
    a1(i+1)=a0-y1(i+1); % evolución de la concentración de A&lt;br /&gt;
    b1(i+1)=b0-y1(i+1); % evolución de la concentración de B&lt;br /&gt;
end&lt;br /&gt;
%grafico &lt;br /&gt;
figure(1)&lt;br /&gt;
hold on&lt;br /&gt;
plot(t,y1,'g')&lt;br /&gt;
plot(t,a1,'r')&lt;br /&gt;
plot(t,b1,'b')&lt;br /&gt;
legend('concentración de C','concentración de A','concentración de B','location','best')&lt;br /&gt;
hold off &lt;br /&gt;
%en verde se muestra la concentración de C, en rojo la de A, y en azul la de B&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Archivo:3euler.jpeg|500px|miniaturadeimagen|center|Reacción compleja]]&lt;br /&gt;
&lt;br /&gt;
Aunque con observar los resultados ya podemos decir con casi absoluta seguridad cuáles son los límites de las concentraciones de cada reactivo &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;B&amp;lt;/math&amp;gt; y del producto &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt;, se ha diseñado un programa que, mediante diferencia de valores sucesivos de la variable &amp;lt;math&amp;gt;y(t)&amp;lt;/math&amp;gt;, nos devuelve el valor de la función cuando dicha diferencia es muy pequeña '''(se ha puesto una diferencia de 0.001)''', es decir, cuando tenemos una asíntota al tender &amp;lt;math&amp;gt;t→∞&amp;lt;/math&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
%Estudio de las asíntotas&lt;br /&gt;
t1=t0:h:10;%se aumenta la longitud de t, y se estima que se alcanzarán las asíntotas antes de t=10&lt;br /&gt;
y_=zeros(1,length(t1)); %se define un vector y_ idéntico a y1 pero con t hasta 10&lt;br /&gt;
a_=y_;&lt;br /&gt;
b_=y_;&lt;br /&gt;
y_(1)=y0;&lt;br /&gt;
a_(1)=a0;&lt;br /&gt;
b_(1)=b0;&lt;br /&gt;
for i=1:length(t1)-1&lt;br /&gt;
    y_(i+1)=y_(i)+h*(k1*(a0-y_(i))*(b0-y_(i)));&lt;br /&gt;
    diferencia=y_(i+1)-y_(i);&lt;br /&gt;
    if abs(diferencia)&amp;lt;=0.001&lt;br /&gt;
        limiteC=y_(i+1)&lt;br /&gt;
        break&lt;br /&gt;
    end&lt;br /&gt;
end&lt;br /&gt;
for i=1:length(t1)-1&lt;br /&gt;
    y_(i+1)=y_(i)+h*(k1*(a0-y_(i))*(b0-y_(i)));    &lt;br /&gt;
    a_(i+1)=a0-y_(i+1);&lt;br /&gt;
    diferencia2=a_(i+1)-a_(i);&lt;br /&gt;
    if abs(diferencia2)&amp;lt;=0.001&lt;br /&gt;
        limiteA=a_(i+1)&lt;br /&gt;
        break&lt;br /&gt;
    end&lt;br /&gt;
end&lt;br /&gt;
for i=1:length(t1)-1&lt;br /&gt;
    y_(i+1)=y_(i)+h*(k1*(a0-y_(i))*(b0-y_(i)));    &lt;br /&gt;
    b_(i+1)=b0-y_(i+1);&lt;br /&gt;
    diferencia3=b_(i+1)-b_(i);&lt;br /&gt;
    if abs(diferencia3)&amp;lt;=0.001&lt;br /&gt;
        limiteB=b_(i+1)&lt;br /&gt;
        break&lt;br /&gt;
    end&lt;br /&gt;
end&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
Que nos devuelve unos valores de las concentraciones para el límite de:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\lim A=2,0036≈2 mol/L&amp;lt;/math&amp;gt;:     &lt;br /&gt;
&amp;lt;math&amp;gt;\lim B=0,0036≈0mol/L&amp;lt;/math&amp;gt;:         &lt;br /&gt;
&amp;lt;math&amp;gt;\lim C=0,9964≈1mol/L&amp;lt;/math&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
Lo cual es lógico, ya que &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;B&amp;lt;/math&amp;gt; se combinan en una proporción de 1:1, luego &amp;lt;math&amp;gt;B&amp;lt;/math&amp;gt;, que tiene una concentración inicial de &amp;lt;math&amp;gt;b_0&amp;lt;/math&amp;gt;=1, será el reactivo limitante (el que desaparecerá por completo), mientras que &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt;, con &amp;lt;math&amp;gt;a_0&amp;lt;/math&amp;gt;=3, acabará con una concentración molar final igual a 2, y &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt;, del que no habia nada,alcanza una concentraccion de &amp;lt;math&amp;gt;1mol/L&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
= Método del Trapecio y Método de Runge-Kutta=&lt;br /&gt;
&lt;br /&gt;
A continuación, para obtener con más precisión las representaciones gráficas de las respectivas concentraciones, se opta por utilizar los métodos de los &amp;lt;math&amp;gt;Trapecios&amp;lt;/math&amp;gt; (segundo orden) y de &amp;lt;math&amp;gt;Runge-Kutta&amp;lt;/math&amp;gt; (cuarto orden). Desgraciadamente, no es posible comparar los errores cometidos por cada método con la expresión real de la concentración de C, ya que la ecuación diferencial no es de fácil resolución analítica, luego resulta imposible alcanzar una expresión explícita de la concentración en términos de nuestros datos conocidos; &amp;lt;math&amp;gt;a_0&amp;lt;/math&amp;gt;,&amp;lt;math&amp;gt;b_0&amp;lt;/math&amp;gt;,&amp;lt;math&amp;gt;k_1&amp;lt;/math&amp;gt;,&amp;lt;math&amp;gt;t (tiempo)&amp;lt;/math&amp;gt;.  Sin embargo, podemos confiar con bastante seguridad en el método sobre todo de &amp;lt;math&amp;gt;Runge-Kutta&amp;lt;/math&amp;gt;, debido a su cuarto orden. &lt;br /&gt;
&lt;br /&gt;
Para los trapecios, al ser un método implícito, es necesario despejar la componente &amp;lt;math&amp;gt;y_{n+1}&amp;lt;/math&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;y_{n+1}=\frac{(1+\frac{h}{2}∙k_1∙(a_0+b_0))-\sqrt{(1+\frac{h}{2}∙k_1∙(a_0+b_0))^2 -2∙h∙k_1(y_n+\frac{h}{2}∙k_1∙(a_0-y_n )∙(b_0-y_n)+\frac{h}{2}∙k_1∙a_0∙b_0) }}{k_1∙h}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Cabe destacar que este programa parte de los datos ya establecidos en el programa de Euler para '''t0, tN, y0, a0, b0, k1 y h''':&lt;br /&gt;
{{matlab|codigo= &lt;br /&gt;
%Trapecios&lt;br /&gt;
y2=zeros(1,length(t)); &lt;br /&gt;
a2=y2;&lt;br /&gt;
b2=y2;&lt;br /&gt;
y2(1)=y0;&lt;br /&gt;
a2(1)=a0;&lt;br /&gt;
b2(1)=b0;&lt;br /&gt;
for i=1:length(t)-1&lt;br /&gt;
    y2(i+1)=((1+0.5*h*k1*(a0+b0))-sqrt((1+0.5*h*k1*(a0+b0))^2-2*h*k1*(y2(i)+0.5*h*k1*(a0-y2(i))*(b0-y2(i))+0.5*h*k1*a0*b0)))/(k1*h);&lt;br /&gt;
    a2(i+1)=a0-y2(i+1);&lt;br /&gt;
    b2(i+1)=b0-y2(i+1);&lt;br /&gt;
end&lt;br /&gt;
 &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
%Runge-Kutta&lt;br /&gt;
y3=zeros(1,length(t)); &lt;br /&gt;
a3=y3;&lt;br /&gt;
b3=y3;&lt;br /&gt;
y3(1)=y0;&lt;br /&gt;
a3(1)=a0;&lt;br /&gt;
b3(1)=b0;&lt;br /&gt;
for i=1:length(t)-1 &lt;br /&gt;
    r1=k1*(a0-y3(i))*(b0-y3(i));&lt;br /&gt;
    r2=k1*(a0-y3(i)-0.5*r1*h)*(b0-y3(i)-0.5*r1*h);&lt;br /&gt;
    r3=k1*(a0-y3(i)-0.5*r2*h)*(b0-y3(i)-0.5*r2*h);&lt;br /&gt;
    r4=k1*(a0-y3(i)-r3*h)*(b0-y3(i)-r3*h);&lt;br /&gt;
    y3(i+1)=y3(i)+h/6*(r1+2*r2+2*r3+r4);&lt;br /&gt;
    a3(i+1)=a0-y3(i+1);&lt;br /&gt;
    b3(i+1)=b0-y3(i+1);&lt;br /&gt;
end&lt;br /&gt;
%se pintan las dos, en azul las soluciones de los Trapecios, y en negro las&lt;br /&gt;
%de Runge-Kutta. &lt;br /&gt;
figure(2)&lt;br /&gt;
hold on&lt;br /&gt;
plot(t,y2)&lt;br /&gt;
plot(t,a2)&lt;br /&gt;
plot(t,b2)&lt;br /&gt;
plot(t,y3,'k')&lt;br /&gt;
plot(t,a3,'k')&lt;br /&gt;
plot(t,b3,'k')&lt;br /&gt;
hold off&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
Que proporciona el resultado que se puede observar en la primera gráfica adjunta. Como podemos ver, es prácticamente indistinguible una gráfica de la otra. Sin embargo, si la juntamos con las gráficas proporcionadas por el método de Euler, que se representa ahora en rojo, la diferencia es palpable (ver gráfica 2), lo cual evidencia la peor precisión del método de Euler.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:4trapeciokung.jpeg|500px|miniaturadeimagen|center|Reacción compleja]]&lt;br /&gt;
&lt;br /&gt;
[[Archivo:4comparacion.jpeg|500px|miniaturadeimagen|center|Gráfico 2]]&lt;br /&gt;
&lt;br /&gt;
=Reacción consecutiva=&lt;br /&gt;
&lt;br /&gt;
Consideremos ahora que se produce una reacción consecutiva de la forma: &lt;br /&gt;
&lt;br /&gt;
                                                                   &amp;lt;math&amp;gt;A + B → k_1C → k_2D&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
De tal modo que los reactivos &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;B&amp;lt;/math&amp;gt; se combinan en la proporción 1:1 para formar compuesto &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt;, el cual, a su vez, se va descomponiendo para formar compuesto &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt;. Al igual que se ha hecho antes al analizar las otras reacciones, se considerará que se cumple la ley de acción de masas. Es decir, la velocidad con la que se forma compuesto &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; es proporcional a las concentraciones existentes de &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt; y de &amp;lt;math&amp;gt;B&amp;lt;/math&amp;gt; y del mismo modo la de formación de la sustancia &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; lo es a la concentración de &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; que se ha ido formando.&lt;br /&gt;
&lt;br /&gt;
Esta reacción consecutiva está representada por el siguiente problema de valor inicial:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;&lt;br /&gt;
   \left . &lt;br /&gt;
      \begin{matrix} &lt;br /&gt;
         y'_1(t)={k_{1}}({a_{0}}-y_1(t))({b_{0}}-y_1(t))\\&lt;br /&gt;
         y'_2(t)={k_{2}}(y_1(t)-y_2(t))\\&lt;br /&gt;
y_1(0)=0\\y_2(0)=0&lt;br /&gt;
      \end{matrix}&lt;br /&gt;
   \right \}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
Donde &amp;lt;math&amp;gt;a_0&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;b_0&amp;lt;/math&amp;gt; representan las concentraciones iniciales de &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;B&amp;lt;/math&amp;gt; respectivamente, &amp;lt;math&amp;gt;k_1&amp;lt;/math&amp;gt; es la constante de proporcionalidad que rige la primera reacción y &amp;lt;math&amp;gt;k_2&amp;lt;/math&amp;gt; la que rige la segunda reacción o reacción consecutiva. &amp;lt;math&amp;gt;y_1’(t)&amp;lt;/math&amp;gt; e  &amp;lt;math&amp;gt;y_2’(t)&amp;lt;/math&amp;gt; representan las velocidades de las reacciones, es decir, las velocidades con que se forman los productos &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt;. &amp;lt;math&amp;gt;y_2(t)&amp;lt;/math&amp;gt; representa la concentración del producto &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; pero es importante apreciar que en este caso &amp;lt;math&amp;gt;y_1(t)&amp;lt;/math&amp;gt; no nos da el valor de la concentración de &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; directamente, sino que ésta será &amp;lt;math&amp;gt;y_1(t)&amp;lt;/math&amp;gt;- &amp;lt;math&amp;gt;y_2(t)&amp;lt;/math&amp;gt;, la cantidad que se forma en la primera reacción menos la que se emplea para formar el producto &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; en la segunda.&lt;br /&gt;
&lt;br /&gt;
Este problema se va a resolver para dos casos diferentes. Uno en el cual se considera que la segunda reacción es más rápida que la primera, lo que supone tomar un valor de la constante &amp;lt;math&amp;gt;k_2&amp;lt;/math&amp;gt;  mayor que &amp;lt;math&amp;gt;k_1&amp;lt;/math&amp;gt;. Y otro en el cual se considera que es más lenta, lo que implica que &amp;lt;math&amp;gt;k_2&amp;lt;/math&amp;gt; es menor que &amp;lt;math&amp;gt;k_1&amp;lt;/math&amp;gt;. Concretamente vamos a tomar los siguientes valores para resolver el problema numéricamente; &amp;lt;math&amp;gt;a_0&amp;lt;/math&amp;gt;=3 ,  &amp;lt;math&amp;gt;b_0&amp;lt;/math&amp;gt;=1, &amp;lt;math&amp;gt;k_1&amp;lt;/math&amp;gt;=1,  &amp;lt;math&amp;gt;k_2&amp;lt;/math&amp;gt;=5, &amp;lt;math&amp;gt;k_2&amp;lt;/math&amp;gt;=1/5, .En ambos casos se resuelve para los primeros 10 segundos.&lt;br /&gt;
&lt;br /&gt;
==La reacción D es más rápida que la reacción C==&lt;br /&gt;
CASO    &amp;lt;math&amp;gt;k_1=5  &amp;lt;/math&amp;gt;   '''h=0.1''' &lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
&lt;br /&gt;
%datos&lt;br /&gt;
y0=[0;0];&lt;br /&gt;
z0=[0;0];&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;
%matriz de las soluciones&lt;br /&gt;
y=zeros(2,length(t)); %euler&lt;br /&gt;
y(:,1)=y0;&lt;br /&gt;
 &lt;br /&gt;
z=zeros(2,length(t)); %runge-kutta&lt;br /&gt;
z(:,1)=y0;&lt;br /&gt;
 &lt;br /&gt;
for i=1:length(t)-1&lt;br /&gt;
 %euler&lt;br /&gt;
 y(:,i+1)=y(:,i)+h*[1*(3-y(1,i))*(1-y(1,i)); 5*(y(1,i)-y(2,i))];&lt;br /&gt;
 %runge-kutta&lt;br /&gt;
 K1=[1*(3-z(1,i))*(1-z(1,i)); 5*(z(1,i)-z(2,i))];&lt;br /&gt;
 K2=[1*(3-(z(1,i)+h/2*K1(1)))*(1-(z(1,i)+h/2*K1(1))); 5*((y(1,i)+h/2*K1(2))-(y(2,i)+h/2*K1(2)))];&lt;br /&gt;
 K3=[1*(3-(z(1,i)+h/2*K2(1)))*(1-(z(1,i)+h/2*K2(1))); 5*((y(1,i)+h/2*K2(2))-(y(2,i)+h/2*K2(2)))];&lt;br /&gt;
 K4=[1*(3-(z(1,i)+h*K3(1)))*(1-(z(1,i)+h*K3(1))); 5*((y(1,i)+h*K3(2))-(y(2,i)+h*K3(2)))];&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;
% se calcula la concentración de C=y1t)-y2(t)&lt;br /&gt;
Ay=y(1,:)-y(2,:); %euler&lt;br /&gt;
Az=z(1,:)-z(2,:); %runge-kutta&lt;br /&gt;
 &lt;br /&gt;
figure(1)&lt;br /&gt;
hold on&lt;br /&gt;
plot(t,Ay) %concentración de C por euler&lt;br /&gt;
plot(t,y(2,:),'r') %concentración de D por euler&lt;br /&gt;
plot(t,Az,'k') %concentración de C por runge-kutta&lt;br /&gt;
plot(t,z(2,:),'g') %concentración de D por runge-kutta&lt;br /&gt;
legend('concentración de C por euler','concentración de D por euler','concentración de C por runge-kutta','concentración de D por runge-kutta','Location','best')&lt;br /&gt;
hold off&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:graficoa.jpeg|500px|miniaturadeimagen|center|Reacción compleja]]&lt;br /&gt;
&lt;br /&gt;
Se observa que en en los primeros instantes aumentan las concentraciones de &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; aumentan sus concentraciones. Antes de que pase 1 segundo, la concentración &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; alcanza un máximo (de unos 0.3 molar) y va disminuyendo progresivamente hasta alcanzar un valor de 0 molar. La concentración &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; sigue creciendo hasta llegar a 1 molar. Una vez que tanto &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; como &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; alcanzan estos valores, se estabiliza la reacción. &lt;br /&gt;
&lt;br /&gt;
Como hemos impuesto que la reacción &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; es más rápida que &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt;, se observa que &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; empieza creciendo más rápidamente, pero como reacciona más despacio que &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; su concentración disminuye progresivamente, mientras que la de &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; aumenta.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''CASO'''  &amp;lt;math&amp;gt;k_2=5  &amp;lt;/math&amp;gt;   '''h=0.3''' &lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
&lt;br /&gt;
%datos&lt;br /&gt;
y0=[0;0];&lt;br /&gt;
z0=[0;0];&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=10;&lt;br /&gt;
h=0.3;&lt;br /&gt;
 &lt;br /&gt;
%variable independiente t&lt;br /&gt;
t=t0:h:tN;&lt;br /&gt;
 &lt;br /&gt;
%matriz de las soluciones&lt;br /&gt;
y=zeros(2,length(t)); %euler&lt;br /&gt;
y(:,1)=y0;&lt;br /&gt;
 &lt;br /&gt;
z=zeros(2,length(t)); %runge-kutta&lt;br /&gt;
z(:,1)=y0;&lt;br /&gt;
 &lt;br /&gt;
for i=1:length(t)-1&lt;br /&gt;
 %euler&lt;br /&gt;
 y(:,i+1)=y(:,i)+h*[1*(3-y(1,i))*(1-y(1,i)); 5*(y(1,i)-y(2,i))];&lt;br /&gt;
 %runge-kutta&lt;br /&gt;
 K1=[1*(3-z(1,i))*(1-z(1,i)); 5*(z(1,i)-z(2,i))];&lt;br /&gt;
 K2=[1*(3-(z(1,i)+h/2*K1(1)))*(1-(z(1,i)+h/2*K1(1))); 5*((y(1,i)+h/2*K1(2))-(y(2,i)+h/2*K1(2)))];&lt;br /&gt;
 K3=[1*(3-(z(1,i)+h/2*K2(1)))*(1-(z(1,i)+h/2*K2(1))); 5*((y(1,i)+h/2*K2(2))-(y(2,i)+h/2*K2(2)))];&lt;br /&gt;
 K4=[1*(3-(z(1,i)+h*K3(1)))*(1-(z(1,i)+h*K3(1))); 5*((y(1,i)+h*K3(2))-(y(2,i)+h*K3(2)))];&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;
% se calcula la concentración de C=y1t)-y2(t)&lt;br /&gt;
Ay=y(1,:)-y(2,:); %euler&lt;br /&gt;
Az=z(1,:)-z(2,:); %runge-kutta&lt;br /&gt;
 &lt;br /&gt;
figure(1)&lt;br /&gt;
hold on&lt;br /&gt;
plot(t,Ay) %concentración de C por euler&lt;br /&gt;
plot(t,y(2,:),'r') %concentración de D por euler&lt;br /&gt;
plot(t,Az,'k') %concentración de C por runge-kutta&lt;br /&gt;
plot(t,z(2,:),'g') %concentración de D por runge-kutta&lt;br /&gt;
legend('concentración de C por euler','concentración de D por euler','concentración de C por runge-kutta','concentración de D por runge-kutta','Location','best')&lt;br /&gt;
hold off&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:graficob.jpeg|500px|miniaturadeimagen|center|Reacción compleja]]&lt;br /&gt;
&lt;br /&gt;
Repetimos el programa pero para un tamaño de paso mayor, de '''h=0.3''', y observamos que no  es suficientemente preciso, sobre todo al principio, no se puede analizar bien lo que está pasando en la reacción.&lt;br /&gt;
&lt;br /&gt;
==La reacción D es más lenta que la reacción C==&lt;br /&gt;
&lt;br /&gt;
CASO  &amp;lt;math&amp;gt;k_1 &amp;lt;/math&amp;gt;=1,   &amp;lt;math&amp;gt;k_2 &amp;lt;/math&amp;gt;=1/5&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
&lt;br /&gt;
%datos&lt;br /&gt;
y0=[0;0];&lt;br /&gt;
z0=[0;0];&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;
%matriz de las soluciones&lt;br /&gt;
y=zeros(2,length(t)); %euler&lt;br /&gt;
y(:,1)=y0;&lt;br /&gt;
 &lt;br /&gt;
z=zeros(2,length(t)); %runge-kutta&lt;br /&gt;
z(:,1)=y0;&lt;br /&gt;
 &lt;br /&gt;
for i=1:length(t)-1&lt;br /&gt;
 %euler&lt;br /&gt;
 y(:,i+1)=y(:,i)+h*[1*(3-y(1,i))*(1-y(1,i)); 1/5*(y(1,i)-y(2,i))];&lt;br /&gt;
 %runge-kutta&lt;br /&gt;
 K1=[1*(3-z(1,i))*(1-z(1,i)); 1/5*(z(1,i)-z(2,i))];&lt;br /&gt;
 K2=[1*(3-(z(1,i)+h/2*K1(1)))*(1-(z(1,i)+h/2*K1(1))); 1/5*((y(1,i)+h/2*K1(2))-(y(2,i)+h/2*K1(2)))];&lt;br /&gt;
 K3=[1*(3-(z(1,i)+h/2*K2(1)))*(1-(z(1,i)+h/2*K2(1))); 1/5*((y(1,i)+h/2*K2(2))-(y(2,i)+h/2*K2(2)))];&lt;br /&gt;
 K4=[1*(3-(z(1,i)+h*K3(1)))*(1-(z(1,i)+h*K3(1))); 1/5*((y(1,i)+h*K3(2))-(y(2,i)+h*K3(2)))];&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;
% se calcula la concentración de C=y1t)-y2(t)&lt;br /&gt;
Ay=y(1,:)-y(2,:); %euler&lt;br /&gt;
Az=z(1,:)-z(2,:); %runge-kutta&lt;br /&gt;
 &lt;br /&gt;
figure(1)&lt;br /&gt;
hold on&lt;br /&gt;
plot(t,Ay) %concentración de C por euler&lt;br /&gt;
plot(t,y(2,:),'r') %concentración de D por euler&lt;br /&gt;
plot(t,Az,'k') %concentración de C por runge-kutta&lt;br /&gt;
plot(t,z(2,:),'g') %concentración de D por runge-kutta&lt;br /&gt;
legend('concentración de C por euler','concentración de D por euler','concentración de C por runge-kutta','concentración de D por runge-kutta','Location','best')&lt;br /&gt;
hold off&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:graficoc.jpeg|500px|miniaturadeimagen|center|Reacción compleja]]&lt;br /&gt;
&lt;br /&gt;
Si ahora imponemos que la reacción  &amp;lt;math&amp;gt;C &amp;lt;/math&amp;gt; es más rápida que  &amp;lt;math&amp;gt;D &amp;lt;/math&amp;gt;, obtenemos lo siguiente. Se parece a la gráfica que obtuvimos en el programa anterior, pero  más extendida en el tiempo, más lenta.  &amp;lt;math&amp;gt;C &amp;lt;/math&amp;gt; alcanza una concentración máxima de unos 0.8 molar antes de empezar a decrecer a medida que avanza el tiempo y acercándose a un valor de '''0''' molar.  &amp;lt;math&amp;gt;D &amp;lt;/math&amp;gt; crece más lentamente que en la gráfica anterior, pero se aproxima al mismo valor, '''1''' molar.&lt;br /&gt;
Se observa que aunque hagamos la reacción  &amp;lt;math&amp;gt;C &amp;lt;/math&amp;gt; más rápida, tenemos las mismas concentraciones finales, pero tardan más tiempo en obtenerse, ya que la reacción tarda más en estabilizarse.&lt;br /&gt;
&lt;br /&gt;
&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>Joseva</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Reacciones_complejas_(Grupo_D1)&amp;diff=27170</id>
		<title>Reacciones complejas (Grupo D1)</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Reacciones_complejas_(Grupo_D1)&amp;diff=27170"/>
				<updated>2015-03-05T23:02:55Z</updated>
		
		<summary type="html">&lt;p&gt;Joseva: /* Introducción */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{ TrabajoED | Reacciones complejas (Grupo D1) | [[:Categoría:Ecuaciones Diferenciales|Ecuaciones Diferenciales]]|[[:Categoría:ED14/15|Curso 2014-15]] | Rincón Crespo, Kevin&lt;br /&gt;
&lt;br /&gt;
Rodríguez Gómez, Javier&lt;br /&gt;
&lt;br /&gt;
Sans Jiménez, Alejandro&lt;br /&gt;
&lt;br /&gt;
Sesto Muñoz, María Victoria&lt;br /&gt;
&lt;br /&gt;
Vallejo Asín, José Manuel &lt;br /&gt;
&lt;br /&gt;
Villarino Redondo, Álvaro }}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=Introducción=&lt;br /&gt;
Se considera una reacción química irreversible en una solución bien mezclada. Supondremos que la reacción ocurre para un volumen y temperatura constantes. Al inicio se encuentran dos reactivos &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;B&amp;lt;/math&amp;gt;, que van formando un producto &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; en lo que se conoce como una reacción bimolecular, es decir, una molécula de &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt; y una de &amp;lt;math&amp;gt;B producen una de &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt;, &lt;br /&gt;
                                                                     &amp;lt;math&amp;gt;A + B → C&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Supondremos también que se satisface la ley de acción de masas, que establece que la velocidad de reacción es proporcional al producto de las concentraciones de los reactivos.&lt;br /&gt;
&lt;br /&gt;
=Concentración del reactivo C a lo largo del tiempo=&lt;br /&gt;
En primer lugar, suponiendo que la reacción es irreversible, es decir, que C no puede volver a formar A y B, se puede expresar la situación mediante el siguiente problema de valor inicial, cuando t&amp;gt;0:&lt;br /&gt;
   &amp;lt;math&amp;gt;&lt;br /&gt;
   \left . &lt;br /&gt;
      \begin{matrix} &lt;br /&gt;
         y'(t)={k_{1}}({a_{0}}-y(t))({b_{0}}-y(t))=0\\&lt;br /&gt;
         y(0)=0&lt;br /&gt;
      \end{matrix}&lt;br /&gt;
   \right \}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Donde &amp;lt;math&amp;gt; {a_{0}}&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;{b_{0}}&amp;lt;/math&amp;gt; representan las concentraciones iniciales de '''A''' y '''B''' respectivamente y &amp;lt;math&amp;gt;{k_{1}}&amp;lt;/math&amp;gt; es la constante de proporcionalidad que indica la ley de acción de masas. &amp;lt;math&amp;gt;y’(t)&amp;lt;/math&amp;gt; representa la velocidad de reacción, es decir, la velocidad con que se forma el producto &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; ; mientras que la solución de la ecuación diferencial, &amp;lt;math&amp;gt;y(t)&amp;lt;/math&amp;gt; , representa la concentración de &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt;, la cantidad de compuesto que se ha formado. Para comprobar que la solución de este problema de Cauchy es única, comenzamos definiendo:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;math&amp;gt;f(t,y)={k_{1}}({a_{0}}-y(t))({b_{0}}-y(t))=0,   t&amp;gt;0 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Observamos que &amp;lt;math&amp;gt;f(t,y)&amp;lt;/math&amp;gt; es continua en el intervalo &amp;lt;math&amp;gt; I=(0,∞)∩B((0,0),r&amp;gt;0)&amp;lt;/math&amp;gt;, por lo que ya aseguramos la existencia de al menos una solución. Examinando la derivada parcial:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\frac{∂f}{∂y}=k_1(-a_0-b_0+2y)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Se deduce que al ser un polinomio no va a haber problemas de continuidad para ninguna bola. De esta forma, podemos asegurar que existe una única solución.&lt;br /&gt;
&lt;br /&gt;
==Concentración del reactivo C a lo largo del tiempo en un proceso reversible==&lt;br /&gt;
&lt;br /&gt;
Ahora bien, ¿qué pasaría si la reacción fuese reversible? Con esto lo que queremos indicar es que además de formarse  &amp;lt;math&amp;gt;C &amp;lt;/math&amp;gt;, este también se descompone de nuevo en  &amp;lt;math&amp;gt;A &amp;lt;/math&amp;gt; y  &amp;lt;math&amp;gt;B &amp;lt;/math&amp;gt;. Por lo tanto, nos quedaría una ecuación diferencial con la siguiente forma, cuando &amp;lt;math&amp;gt;t&amp;gt;0 &amp;lt;/math&amp;gt; :&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; y'(t)={k_{1}}({a_{0}}-y(t))({b_{0}}-y(t))-Cy(t)&amp;lt;/math&amp;gt;  &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Si nos fijamos, la modificación es sencillamente restar  &amp;lt;math&amp;gt;y(t) &amp;lt;/math&amp;gt; multiplicada por una constante, la cual refleja qué porcentaje de  &amp;lt;math&amp;gt;C &amp;lt;/math&amp;gt; se va descomponiendo a medida que se da, simultáneamente, la reacción  &amp;lt;math&amp;gt;A + B → C &amp;lt;/math&amp;gt;. Sin embargo, esta constante no puede tener cualquier valor, ya que en una reacción se cumple la conservación de masa. Por ello, a  &amp;lt;math&amp;gt;C &amp;lt;/math&amp;gt; le asociaremos el siguiente dominio:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;C∈(0,1)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Obsérvese que  &amp;lt;math&amp;gt;C &amp;lt;/math&amp;gt; tiene que ser mayor que 0 para que sea reversible, pero al mismo tiempo inferior que 1, ya que si no se estaría descomponiendo más compuesto  &amp;lt;math&amp;gt;C &amp;lt;/math&amp;gt; del que realmente se ha formado, en otras palabras, estaría apareciendo masa de la nada.&lt;br /&gt;
&lt;br /&gt;
=Método de Euler=&lt;br /&gt;
&lt;br /&gt;
Una vez llegados a este punto, se procede a ver una interpretación gráfica de la reacción. Para ello, se refleja en la gráfica (en un intervalo de 2 segundos), cómo varían las concentraciones tanto de &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt; (&amp;lt;math&amp;gt;a_0&amp;lt;/math&amp;gt;=3 mol/L) y &amp;lt;math&amp;gt;B&amp;lt;/math&amp;gt; (&amp;lt;math&amp;gt;b_0&amp;lt;/math&amp;gt;=1 mol/L) como de &amp;lt;math&amp;gt; C&amp;lt;/math&amp;gt;, para una &amp;lt;math&amp;gt;k_1&amp;lt;/math&amp;gt;=1 mol/s. Se comienza, por el momento, aplicando el método de Euler. Posteriormente se utilizarán métodos más precisos.&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo= &lt;br /&gt;
% Euler&lt;br /&gt;
clear all&lt;br /&gt;
% datos del problema&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=2;&lt;br /&gt;
y0=0;&lt;br /&gt;
h=0.1;&lt;br /&gt;
k1=1;&lt;br /&gt;
a0=3;&lt;br /&gt;
b0=1;&lt;br /&gt;
% Definimos la variable independiente&lt;br /&gt;
t=t0:h:tN;&lt;br /&gt;
% Guardamos los valores de la solución aproximada en el vector &amp;quot;y1&amp;quot; y&lt;br /&gt;
% establecemos los vectores de concentraciones A y B&lt;br /&gt;
y1=zeros(1,length(t)); &lt;br /&gt;
y1(1)=y0;&lt;br /&gt;
a1=zeros(1,length(t));&lt;br /&gt;
a1(1)=a0;&lt;br /&gt;
b1=zeros(1,length(t));&lt;br /&gt;
b1(1)=b0;&lt;br /&gt;
% A continuación, calculamos las componentes de los vectores y1, a y b&lt;br /&gt;
for i=1:length(t)-1&lt;br /&gt;
    y1(i+1)=y1(i)+h*(k1*(a0-y1(i))*(b0-y1(i)));    %Euler&lt;br /&gt;
    a1(i+1)=a0-y1(i+1); % evolución de la concentración de A&lt;br /&gt;
    b1(i+1)=b0-y1(i+1); % evolución de la concentración de B&lt;br /&gt;
end&lt;br /&gt;
%grafico &lt;br /&gt;
figure(1)&lt;br /&gt;
hold on&lt;br /&gt;
plot(t,y1,'g')&lt;br /&gt;
plot(t,a1,'r')&lt;br /&gt;
plot(t,b1,'b')&lt;br /&gt;
legend('concentración de C','concentración de A','concentración de B','location','best')&lt;br /&gt;
hold off &lt;br /&gt;
%en verde se muestra la concentración de C, en rojo la de A, y en azul la de B&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Archivo:3euler.jpeg|500px|miniaturadeimagen|center|Reacción compleja]]&lt;br /&gt;
&lt;br /&gt;
Aunque con observar los resultados ya podemos decir con casi absoluta seguridad cuáles son los límites de las concentraciones de cada reactivo &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;B&amp;lt;/math&amp;gt; y del producto &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt;, se ha diseñado un programa que, mediante diferencia de valores sucesivos de la variable &amp;lt;math&amp;gt;y(t)&amp;lt;/math&amp;gt;, nos devuelve el valor de la función cuando dicha diferencia es muy pequeña '''(se ha puesto una diferencia de 0.001)''', es decir, cuando tenemos una asíntota al tender &amp;lt;math&amp;gt;t→∞&amp;lt;/math&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
%Estudio de las asíntotas&lt;br /&gt;
t1=t0:h:10;%se aumenta la longitud de t, y se estima que se alcanzarán las asíntotas antes de t=10&lt;br /&gt;
y_=zeros(1,length(t1)); %se define un vector y_ idéntico a y1 pero con t hasta 10&lt;br /&gt;
a_=y_;&lt;br /&gt;
b_=y_;&lt;br /&gt;
y_(1)=y0;&lt;br /&gt;
a_(1)=a0;&lt;br /&gt;
b_(1)=b0;&lt;br /&gt;
for i=1:length(t1)-1&lt;br /&gt;
    y_(i+1)=y_(i)+h*(k1*(a0-y_(i))*(b0-y_(i)));&lt;br /&gt;
    diferencia=y_(i+1)-y_(i);&lt;br /&gt;
    if abs(diferencia)&amp;lt;=0.001&lt;br /&gt;
        limiteC=y_(i+1)&lt;br /&gt;
        break&lt;br /&gt;
    end&lt;br /&gt;
end&lt;br /&gt;
for i=1:length(t1)-1&lt;br /&gt;
    y_(i+1)=y_(i)+h*(k1*(a0-y_(i))*(b0-y_(i)));    &lt;br /&gt;
    a_(i+1)=a0-y_(i+1);&lt;br /&gt;
    diferencia2=a_(i+1)-a_(i);&lt;br /&gt;
    if abs(diferencia2)&amp;lt;=0.001&lt;br /&gt;
        limiteA=a_(i+1)&lt;br /&gt;
        break&lt;br /&gt;
    end&lt;br /&gt;
end&lt;br /&gt;
for i=1:length(t1)-1&lt;br /&gt;
    y_(i+1)=y_(i)+h*(k1*(a0-y_(i))*(b0-y_(i)));    &lt;br /&gt;
    b_(i+1)=b0-y_(i+1);&lt;br /&gt;
    diferencia3=b_(i+1)-b_(i);&lt;br /&gt;
    if abs(diferencia3)&amp;lt;=0.001&lt;br /&gt;
        limiteB=b_(i+1)&lt;br /&gt;
        break&lt;br /&gt;
    end&lt;br /&gt;
end&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
Que nos devuelve unos valores de las concentraciones para el límite de:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\lim A=2,0036≈2 mol/L&amp;lt;/math&amp;gt;:     &lt;br /&gt;
&amp;lt;math&amp;gt;\lim B=0,0036≈0mol/L&amp;lt;/math&amp;gt;:         &lt;br /&gt;
&amp;lt;math&amp;gt;\lim C=0,9964≈1mol/L&amp;lt;/math&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
Lo cual es lógico, ya que &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;B&amp;lt;/math&amp;gt; se combinan en una proporción de 1:1, luego &amp;lt;math&amp;gt;B&amp;lt;/math&amp;gt;, que tiene una concentración inicial de &amp;lt;math&amp;gt;b_0&amp;lt;/math&amp;gt;=1, será el reactivo limitante (el que desaparecerá por completo), mientras que &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt;, con &amp;lt;math&amp;gt;a_0&amp;lt;/math&amp;gt;=3, acabará con una concentración molar final igual a 2, y &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt;, del que no habia nada,alcanza una concentraccion de &amp;lt;math&amp;gt;1mol/L&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
= Método del Trapecio y Método de Runge-Kutta=&lt;br /&gt;
&lt;br /&gt;
A continuación, para obtener con más precisión las representaciones gráficas de las respectivas concentraciones, se opta por utilizar los métodos de los &amp;lt;math&amp;gt;Trapecios&amp;lt;/math&amp;gt; (segundo orden) y de &amp;lt;math&amp;gt;Runge-Kutta&amp;lt;/math&amp;gt; (cuarto orden). Desgraciadamente, no es posible comparar los errores cometidos por cada método con la expresión real de la concentración de C, ya que la ecuación diferencial no es de fácil resolución analítica, luego resulta imposible alcanzar una expresión explícita de la concentración en términos de nuestros datos conocidos; &amp;lt;math&amp;gt;a_0&amp;lt;/math&amp;gt;,&amp;lt;math&amp;gt;b_0&amp;lt;/math&amp;gt;,&amp;lt;math&amp;gt;k_1&amp;lt;/math&amp;gt;,&amp;lt;math&amp;gt;t (tiempo)&amp;lt;/math&amp;gt;.  Sin embargo, podemos confiar con bastante seguridad en el método sobre todo de &amp;lt;math&amp;gt;Runge-Kutta&amp;lt;/math&amp;gt;, debido a su cuarto orden. &lt;br /&gt;
&lt;br /&gt;
Para los trapecios, al ser un método implícito, es necesario despejar la componente &amp;lt;math&amp;gt;y_{n+1}&amp;lt;/math&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;y_{n+1}=\frac{(1+\frac{h}{2}∙k_1∙(a_0+b_0))-\sqrt{(1+\frac{h}{2}∙k_1∙(a_0+b_0))^2 -2∙h∙k_1(y_n+\frac{h}{2}∙k_1∙(a_0-y_n )∙(b_0-y_n)+\frac{h}{2}∙k_1∙a_0∙b_0) }}{k_1∙h}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Cabe destacar que este programa parte de los datos ya establecidos en el programa de Euler para '''t0, tN, y0, a0, b0, k1 y h''':&lt;br /&gt;
{{matlab|codigo= &lt;br /&gt;
%Trapecios&lt;br /&gt;
y2=zeros(1,length(t)); &lt;br /&gt;
a2=y2;&lt;br /&gt;
b2=y2;&lt;br /&gt;
y2(1)=y0;&lt;br /&gt;
a2(1)=a0;&lt;br /&gt;
b2(1)=b0;&lt;br /&gt;
for i=1:length(t)-1&lt;br /&gt;
    y2(i+1)=((1+0.5*h*k1*(a0+b0))-sqrt((1+0.5*h*k1*(a0+b0))^2-2*h*k1*(y2(i)+0.5*h*k1*(a0-y2(i))*(b0-y2(i))+0.5*h*k1*a0*b0)))/(k1*h);&lt;br /&gt;
    a2(i+1)=a0-y2(i+1);&lt;br /&gt;
    b2(i+1)=b0-y2(i+1);&lt;br /&gt;
end&lt;br /&gt;
 &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
%Runge-Kutta&lt;br /&gt;
y3=zeros(1,length(t)); &lt;br /&gt;
a3=y3;&lt;br /&gt;
b3=y3;&lt;br /&gt;
y3(1)=y0;&lt;br /&gt;
a3(1)=a0;&lt;br /&gt;
b3(1)=b0;&lt;br /&gt;
for i=1:length(t)-1 &lt;br /&gt;
    r1=k1*(a0-y3(i))*(b0-y3(i));&lt;br /&gt;
    r2=k1*(a0-y3(i)-0.5*r1*h)*(b0-y3(i)-0.5*r1*h);&lt;br /&gt;
    r3=k1*(a0-y3(i)-0.5*r2*h)*(b0-y3(i)-0.5*r2*h);&lt;br /&gt;
    r4=k1*(a0-y3(i)-r3*h)*(b0-y3(i)-r3*h);&lt;br /&gt;
    y3(i+1)=y3(i)+h/6*(r1+2*r2+2*r3+r4);&lt;br /&gt;
    a3(i+1)=a0-y3(i+1);&lt;br /&gt;
    b3(i+1)=b0-y3(i+1);&lt;br /&gt;
end&lt;br /&gt;
%se pintan las dos, en azul las soluciones de los Trapecios, y en negro las&lt;br /&gt;
%de Runge-Kutta. &lt;br /&gt;
figure(2)&lt;br /&gt;
hold on&lt;br /&gt;
plot(t,y2)&lt;br /&gt;
plot(t,a2)&lt;br /&gt;
plot(t,b2)&lt;br /&gt;
plot(t,y3,'k')&lt;br /&gt;
plot(t,a3,'k')&lt;br /&gt;
plot(t,b3,'k')&lt;br /&gt;
hold off&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
Que proporciona el resultado que se puede observar en la primera gráfica adjunta. Como podemos ver, es prácticamente indistinguible una gráfica de la otra. Sin embargo, si la juntamos con las gráficas proporcionadas por el método de Euler, que se representa ahora en rojo, la diferencia es palpable (ver gráfica 2), lo cual evidencia la peor precisión del método de Euler.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:4trapeciokung.jpeg|500px|miniaturadeimagen|center|Reacción compleja]]&lt;br /&gt;
&lt;br /&gt;
[[Archivo:4comparacion.jpeg|500px|miniaturadeimagen|center|Gráfico 2]]&lt;br /&gt;
&lt;br /&gt;
=Reacción consecutiva=&lt;br /&gt;
&lt;br /&gt;
Consideremos ahora que se produce una reacción consecutiva de la forma: &lt;br /&gt;
&lt;br /&gt;
                                                                   &amp;lt;math&amp;gt;A + B → k_1C → k_2D&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
De tal modo que los reactivos &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;B&amp;lt;/math&amp;gt; se combinan en la proporción 1:1 para formar compuesto &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt;, el cual, a su vez, se va descomponiendo para formar compuesto &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt;. Al igual que se ha hecho antes al analizar las otras reacciones, se considerará que se cumple la ley de acción de masas. Es decir, la velocidad con la que se forma compuesto &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; es proporcional a las concentraciones existentes de &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt; y de &amp;lt;math&amp;gt;B&amp;lt;/math&amp;gt; y del mismo modo la de formación de la sustancia &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; lo es a la concentración de &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; que se ha ido formando.&lt;br /&gt;
&lt;br /&gt;
Esta reacción consecutiva está representada por el siguiente problema de valor inicial:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;&lt;br /&gt;
   \left . &lt;br /&gt;
      \begin{matrix} &lt;br /&gt;
         y'_1(t)={k_{1}}({a_{0}}-y_1(t))({b_{0}}-y_1(t))\\&lt;br /&gt;
         y'_2(t)={k_{2}}(y_1(t)-y_2(t))\\&lt;br /&gt;
y_1(0)=0\\y_2(0)=0&lt;br /&gt;
      \end{matrix}&lt;br /&gt;
   \right \}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
Donde &amp;lt;math&amp;gt;a_0&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;b_0&amp;lt;/math&amp;gt; representan las concentraciones iniciales de &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;B&amp;lt;/math&amp;gt; respectivamente, &amp;lt;math&amp;gt;k_1&amp;lt;/math&amp;gt; es la constante de proporcionalidad que rige la primera reacción y &amp;lt;math&amp;gt;k_2&amp;lt;/math&amp;gt; la que rige la segunda reacción o reacción consecutiva. &amp;lt;math&amp;gt;y_1’(t)&amp;lt;/math&amp;gt; e  &amp;lt;math&amp;gt;y_2’(t)&amp;lt;/math&amp;gt; representan las velocidades de las reacciones, es decir, las velocidades con que se forman los productos &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt;. &amp;lt;math&amp;gt;y_2(t)&amp;lt;/math&amp;gt; representa la concentración del producto &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; pero es importante apreciar que en este caso &amp;lt;math&amp;gt;y_1(t)&amp;lt;/math&amp;gt; no nos da el valor de la concentración de &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; directamente, sino que ésta será &amp;lt;math&amp;gt;y_1(t)&amp;lt;/math&amp;gt;- &amp;lt;math&amp;gt;y_2(t)&amp;lt;/math&amp;gt;, la cantidad que se forma en la primera reacción menos la que se emplea para formar el producto &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; en la segunda.&lt;br /&gt;
&lt;br /&gt;
Este problema se va a resolver para dos casos diferentes. Uno en el cual se considera que la segunda reacción es más rápida que la primera, lo que supone tomar un valor de la constante &amp;lt;math&amp;gt;k_2&amp;lt;/math&amp;gt;  mayor que &amp;lt;math&amp;gt;k_1&amp;lt;/math&amp;gt;. Y otro en el cual se considera que es más lenta, lo que implica que &amp;lt;math&amp;gt;k_2&amp;lt;/math&amp;gt; es menor que &amp;lt;math&amp;gt;k_1&amp;lt;/math&amp;gt;. Concretamente vamos a tomar los siguientes valores para resolver el problema numéricamente; &amp;lt;math&amp;gt;a_0&amp;lt;/math&amp;gt;=3 ,  &amp;lt;math&amp;gt;b_0&amp;lt;/math&amp;gt;=1, &amp;lt;math&amp;gt;k_1&amp;lt;/math&amp;gt;=1,  &amp;lt;math&amp;gt;k_2&amp;lt;/math&amp;gt;=5, &amp;lt;math&amp;gt;k_2&amp;lt;/math&amp;gt;=1/5, .En ambos casos se resuelve para los primeros 10 segundos.&lt;br /&gt;
&lt;br /&gt;
==La reacción D es más rápida que la reacción C==&lt;br /&gt;
CASO    &amp;lt;math&amp;gt;k_1=5  &amp;lt;/math&amp;gt;   '''h=0.1''' &lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
&lt;br /&gt;
%datos&lt;br /&gt;
y0=[0;0];&lt;br /&gt;
z0=[0;0];&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;
%matriz de las soluciones&lt;br /&gt;
y=zeros(2,length(t)); %euler&lt;br /&gt;
y(:,1)=y0;&lt;br /&gt;
 &lt;br /&gt;
z=zeros(2,length(t)); %runge-kutta&lt;br /&gt;
z(:,1)=y0;&lt;br /&gt;
 &lt;br /&gt;
for i=1:length(t)-1&lt;br /&gt;
 %euler&lt;br /&gt;
 y(:,i+1)=y(:,i)+h*[1*(3-y(1,i))*(1-y(1,i)); 5*(y(1,i)-y(2,i))];&lt;br /&gt;
 %runge-kutta&lt;br /&gt;
 K1=[1*(3-z(1,i))*(1-z(1,i)); 5*(z(1,i)-z(2,i))];&lt;br /&gt;
 K2=[1*(3-(z(1,i)+h/2*K1(1)))*(1-(z(1,i)+h/2*K1(1))); 5*((y(1,i)+h/2*K1(2))-(y(2,i)+h/2*K1(2)))];&lt;br /&gt;
 K3=[1*(3-(z(1,i)+h/2*K2(1)))*(1-(z(1,i)+h/2*K2(1))); 5*((y(1,i)+h/2*K2(2))-(y(2,i)+h/2*K2(2)))];&lt;br /&gt;
 K4=[1*(3-(z(1,i)+h*K3(1)))*(1-(z(1,i)+h*K3(1))); 5*((y(1,i)+h*K3(2))-(y(2,i)+h*K3(2)))];&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;
% se calcula la concentración de C=y1t)-y2(t)&lt;br /&gt;
Ay=y(1,:)-y(2,:); %euler&lt;br /&gt;
Az=z(1,:)-z(2,:); %runge-kutta&lt;br /&gt;
 &lt;br /&gt;
figure(1)&lt;br /&gt;
hold on&lt;br /&gt;
plot(t,Ay) %concentración de C por euler&lt;br /&gt;
plot(t,y(2,:),'r') %concentración de D por euler&lt;br /&gt;
plot(t,Az,'k') %concentración de C por runge-kutta&lt;br /&gt;
plot(t,z(2,:),'g') %concentración de D por runge-kutta&lt;br /&gt;
legend('concentración de C por euler','concentración de D por euler','concentración de C por runge-kutta','concentración de D por runge-kutta','Location','best')&lt;br /&gt;
hold off&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:graficoa.jpeg|500px|miniaturadeimagen|center|Reacción compleja]]&lt;br /&gt;
&lt;br /&gt;
Se observa que en en los primeros instantes aumentan las concentraciones de &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; aumentan sus concentraciones. Antes de que pase 1 segundo, la concentración &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; alcanza un máximo (de unos 0.3 molar) y va disminuyendo progresivamente hasta alcanzar un valor de 0 molar. La concentración &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; sigue creciendo hasta llegar a 1 molar. Una vez que tanto &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; como &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; alcanzan estos valores, se estabiliza la reacción. &lt;br /&gt;
&lt;br /&gt;
Como hemos impuesto que la reacción &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; es más rápida que &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt;, se observa que &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; empieza creciendo más rápidamente, pero como reacciona más despacio que &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; su concentración disminuye progresivamente, mientras que la de &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; aumenta.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''CASO'''  &amp;lt;math&amp;gt;k_2=5  &amp;lt;/math&amp;gt;   '''h=0.3''' &lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
&lt;br /&gt;
%datos&lt;br /&gt;
y0=[0;0];&lt;br /&gt;
z0=[0;0];&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=10;&lt;br /&gt;
h=0.3;&lt;br /&gt;
 &lt;br /&gt;
%variable independiente t&lt;br /&gt;
t=t0:h:tN;&lt;br /&gt;
 &lt;br /&gt;
%matriz de las soluciones&lt;br /&gt;
y=zeros(2,length(t)); %euler&lt;br /&gt;
y(:,1)=y0;&lt;br /&gt;
 &lt;br /&gt;
z=zeros(2,length(t)); %runge-kutta&lt;br /&gt;
z(:,1)=y0;&lt;br /&gt;
 &lt;br /&gt;
for i=1:length(t)-1&lt;br /&gt;
 %euler&lt;br /&gt;
 y(:,i+1)=y(:,i)+h*[1*(3-y(1,i))*(1-y(1,i)); 5*(y(1,i)-y(2,i))];&lt;br /&gt;
 %runge-kutta&lt;br /&gt;
 K1=[1*(3-z(1,i))*(1-z(1,i)); 5*(z(1,i)-z(2,i))];&lt;br /&gt;
 K2=[1*(3-(z(1,i)+h/2*K1(1)))*(1-(z(1,i)+h/2*K1(1))); 5*((y(1,i)+h/2*K1(2))-(y(2,i)+h/2*K1(2)))];&lt;br /&gt;
 K3=[1*(3-(z(1,i)+h/2*K2(1)))*(1-(z(1,i)+h/2*K2(1))); 5*((y(1,i)+h/2*K2(2))-(y(2,i)+h/2*K2(2)))];&lt;br /&gt;
 K4=[1*(3-(z(1,i)+h*K3(1)))*(1-(z(1,i)+h*K3(1))); 5*((y(1,i)+h*K3(2))-(y(2,i)+h*K3(2)))];&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;
% se calcula la concentración de C=y1t)-y2(t)&lt;br /&gt;
Ay=y(1,:)-y(2,:); %euler&lt;br /&gt;
Az=z(1,:)-z(2,:); %runge-kutta&lt;br /&gt;
 &lt;br /&gt;
figure(1)&lt;br /&gt;
hold on&lt;br /&gt;
plot(t,Ay) %concentración de C por euler&lt;br /&gt;
plot(t,y(2,:),'r') %concentración de D por euler&lt;br /&gt;
plot(t,Az,'k') %concentración de C por runge-kutta&lt;br /&gt;
plot(t,z(2,:),'g') %concentración de D por runge-kutta&lt;br /&gt;
legend('concentración de C por euler','concentración de D por euler','concentración de C por runge-kutta','concentración de D por runge-kutta','Location','best')&lt;br /&gt;
hold off&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:graficob.jpeg|500px|miniaturadeimagen|center|Reacción compleja]]&lt;br /&gt;
&lt;br /&gt;
Repetimos el programa pero para un tamaño de paso mayor, de '''h=0.3''', y observamos que no  es suficientemente preciso, sobre todo al principio, no se puede analizar bien lo que está pasando en la reacción.&lt;br /&gt;
&lt;br /&gt;
==La reacción D es más lenta que la reacción C==&lt;br /&gt;
&lt;br /&gt;
CASO  &amp;lt;math&amp;gt;k_1 &amp;lt;/math&amp;gt;=1,   &amp;lt;math&amp;gt;k_2 &amp;lt;/math&amp;gt;=1/5&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
&lt;br /&gt;
%datos&lt;br /&gt;
y0=[0;0];&lt;br /&gt;
z0=[0;0];&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;
%matriz de las soluciones&lt;br /&gt;
y=zeros(2,length(t)); %euler&lt;br /&gt;
y(:,1)=y0;&lt;br /&gt;
 &lt;br /&gt;
z=zeros(2,length(t)); %runge-kutta&lt;br /&gt;
z(:,1)=y0;&lt;br /&gt;
 &lt;br /&gt;
for i=1:length(t)-1&lt;br /&gt;
 %euler&lt;br /&gt;
 y(:,i+1)=y(:,i)+h*[1*(3-y(1,i))*(1-y(1,i)); 1/5*(y(1,i)-y(2,i))];&lt;br /&gt;
 %runge-kutta&lt;br /&gt;
 K1=[1*(3-z(1,i))*(1-z(1,i)); 1/5*(z(1,i)-z(2,i))];&lt;br /&gt;
 K2=[1*(3-(z(1,i)+h/2*K1(1)))*(1-(z(1,i)+h/2*K1(1))); 1/5*((y(1,i)+h/2*K1(2))-(y(2,i)+h/2*K1(2)))];&lt;br /&gt;
 K3=[1*(3-(z(1,i)+h/2*K2(1)))*(1-(z(1,i)+h/2*K2(1))); 1/5*((y(1,i)+h/2*K2(2))-(y(2,i)+h/2*K2(2)))];&lt;br /&gt;
 K4=[1*(3-(z(1,i)+h*K3(1)))*(1-(z(1,i)+h*K3(1))); 1/5*((y(1,i)+h*K3(2))-(y(2,i)+h*K3(2)))];&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;
% se calcula la concentración de C=y1t)-y2(t)&lt;br /&gt;
Ay=y(1,:)-y(2,:); %euler&lt;br /&gt;
Az=z(1,:)-z(2,:); %runge-kutta&lt;br /&gt;
 &lt;br /&gt;
figure(1)&lt;br /&gt;
hold on&lt;br /&gt;
plot(t,Ay) %concentración de C por euler&lt;br /&gt;
plot(t,y(2,:),'r') %concentración de D por euler&lt;br /&gt;
plot(t,Az,'k') %concentración de C por runge-kutta&lt;br /&gt;
plot(t,z(2,:),'g') %concentración de D por runge-kutta&lt;br /&gt;
legend('concentración de C por euler','concentración de D por euler','concentración de C por runge-kutta','concentración de D por runge-kutta','Location','best')&lt;br /&gt;
hold off&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:graficoc.jpeg|500px|miniaturadeimagen|center|Reacción compleja]]&lt;br /&gt;
&lt;br /&gt;
Si ahora imponemos que la reacción  &amp;lt;math&amp;gt;C &amp;lt;/math&amp;gt; es más rápida que  &amp;lt;math&amp;gt;D &amp;lt;/math&amp;gt;, obtenemos lo siguiente. Se parece a la gráfica que obtuvimos en el programa anterior, pero  más extendida en el tiempo, más lenta.  &amp;lt;math&amp;gt;C &amp;lt;/math&amp;gt; alcanza una concentración máxima de unos 0.8 molar antes de empezar a decrecer a medida que avanza el tiempo y acercándose a un valor de '''0''' molar.  &amp;lt;math&amp;gt;D &amp;lt;/math&amp;gt; crece más lentamente que en la gráfica anterior, pero se aproxima al mismo valor, '''1''' molar.&lt;br /&gt;
Se observa que aunque hagamos la reacción  &amp;lt;math&amp;gt;C &amp;lt;/math&amp;gt; más rápida, tenemos las mismas concentraciones finales, pero tardan más tiempo en obtenerse, ya que la reacción tarda más en estabilizarse.&lt;br /&gt;
&lt;br /&gt;
&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>Joseva</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Reacciones_complejas_(Grupo_D1)&amp;diff=27167</id>
		<title>Reacciones complejas (Grupo D1)</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Reacciones_complejas_(Grupo_D1)&amp;diff=27167"/>
				<updated>2015-03-05T23:02:28Z</updated>
		
		<summary type="html">&lt;p&gt;Joseva: /* Introducción */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{ TrabajoED | Reacciones complejas (Grupo D1) | [[:Categoría:Ecuaciones Diferenciales|Ecuaciones Diferenciales]]|[[:Categoría:ED14/15|Curso 2014-15]] | Rincón Crespo, Kevin&lt;br /&gt;
&lt;br /&gt;
Rodríguez Gómez, Javier&lt;br /&gt;
&lt;br /&gt;
Sans Jiménez, Alejandro&lt;br /&gt;
&lt;br /&gt;
Sesto Muñoz, María Victoria&lt;br /&gt;
&lt;br /&gt;
Vallejo Asín, José Manuel &lt;br /&gt;
&lt;br /&gt;
Villarino Redondo, Álvaro }}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=Introducción=&lt;br /&gt;
Se considera una reacción química irreversible en una solución bien mezclada. Supondremos que la reacción ocurre para un volumen y temperatura constantes. Al inicio se encuentran dos reactivos &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;B&amp;lt;/math&amp;gt;, que van formando un producto &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; en lo que se conoce como una reacción bimolecular, es decir, una molécula de &amp;lt;math&amp;gt;A y una de &amp;lt;math&amp;gt;B producen una de &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt;, &lt;br /&gt;
                                                                     &amp;lt;math&amp;gt;A + B → C&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Supondremos también que se satisface la ley de acción de masas, que establece que la velocidad de reacción es proporcional al producto de las concentraciones de los reactivos.&lt;br /&gt;
&lt;br /&gt;
=Concentración del reactivo C a lo largo del tiempo=&lt;br /&gt;
En primer lugar, suponiendo que la reacción es irreversible, es decir, que C no puede volver a formar A y B, se puede expresar la situación mediante el siguiente problema de valor inicial, cuando t&amp;gt;0:&lt;br /&gt;
   &amp;lt;math&amp;gt;&lt;br /&gt;
   \left . &lt;br /&gt;
      \begin{matrix} &lt;br /&gt;
         y'(t)={k_{1}}({a_{0}}-y(t))({b_{0}}-y(t))=0\\&lt;br /&gt;
         y(0)=0&lt;br /&gt;
      \end{matrix}&lt;br /&gt;
   \right \}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Donde &amp;lt;math&amp;gt; {a_{0}}&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;{b_{0}}&amp;lt;/math&amp;gt; representan las concentraciones iniciales de '''A''' y '''B''' respectivamente y &amp;lt;math&amp;gt;{k_{1}}&amp;lt;/math&amp;gt; es la constante de proporcionalidad que indica la ley de acción de masas. &amp;lt;math&amp;gt;y’(t)&amp;lt;/math&amp;gt; representa la velocidad de reacción, es decir, la velocidad con que se forma el producto &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; ; mientras que la solución de la ecuación diferencial, &amp;lt;math&amp;gt;y(t)&amp;lt;/math&amp;gt; , representa la concentración de &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt;, la cantidad de compuesto que se ha formado. Para comprobar que la solución de este problema de Cauchy es única, comenzamos definiendo:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;math&amp;gt;f(t,y)={k_{1}}({a_{0}}-y(t))({b_{0}}-y(t))=0,   t&amp;gt;0 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Observamos que &amp;lt;math&amp;gt;f(t,y)&amp;lt;/math&amp;gt; es continua en el intervalo &amp;lt;math&amp;gt; I=(0,∞)∩B((0,0),r&amp;gt;0)&amp;lt;/math&amp;gt;, por lo que ya aseguramos la existencia de al menos una solución. Examinando la derivada parcial:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\frac{∂f}{∂y}=k_1(-a_0-b_0+2y)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Se deduce que al ser un polinomio no va a haber problemas de continuidad para ninguna bola. De esta forma, podemos asegurar que existe una única solución.&lt;br /&gt;
&lt;br /&gt;
==Concentración del reactivo C a lo largo del tiempo en un proceso reversible==&lt;br /&gt;
&lt;br /&gt;
Ahora bien, ¿qué pasaría si la reacción fuese reversible? Con esto lo que queremos indicar es que además de formarse  &amp;lt;math&amp;gt;C &amp;lt;/math&amp;gt;, este también se descompone de nuevo en  &amp;lt;math&amp;gt;A &amp;lt;/math&amp;gt; y  &amp;lt;math&amp;gt;B &amp;lt;/math&amp;gt;. Por lo tanto, nos quedaría una ecuación diferencial con la siguiente forma, cuando &amp;lt;math&amp;gt;t&amp;gt;0 &amp;lt;/math&amp;gt; :&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; y'(t)={k_{1}}({a_{0}}-y(t))({b_{0}}-y(t))-Cy(t)&amp;lt;/math&amp;gt;  &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Si nos fijamos, la modificación es sencillamente restar  &amp;lt;math&amp;gt;y(t) &amp;lt;/math&amp;gt; multiplicada por una constante, la cual refleja qué porcentaje de  &amp;lt;math&amp;gt;C &amp;lt;/math&amp;gt; se va descomponiendo a medida que se da, simultáneamente, la reacción  &amp;lt;math&amp;gt;A + B → C &amp;lt;/math&amp;gt;. Sin embargo, esta constante no puede tener cualquier valor, ya que en una reacción se cumple la conservación de masa. Por ello, a  &amp;lt;math&amp;gt;C &amp;lt;/math&amp;gt; le asociaremos el siguiente dominio:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;C∈(0,1)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Obsérvese que  &amp;lt;math&amp;gt;C &amp;lt;/math&amp;gt; tiene que ser mayor que 0 para que sea reversible, pero al mismo tiempo inferior que 1, ya que si no se estaría descomponiendo más compuesto  &amp;lt;math&amp;gt;C &amp;lt;/math&amp;gt; del que realmente se ha formado, en otras palabras, estaría apareciendo masa de la nada.&lt;br /&gt;
&lt;br /&gt;
=Método de Euler=&lt;br /&gt;
&lt;br /&gt;
Una vez llegados a este punto, se procede a ver una interpretación gráfica de la reacción. Para ello, se refleja en la gráfica (en un intervalo de 2 segundos), cómo varían las concentraciones tanto de &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt; (&amp;lt;math&amp;gt;a_0&amp;lt;/math&amp;gt;=3 mol/L) y &amp;lt;math&amp;gt;B&amp;lt;/math&amp;gt; (&amp;lt;math&amp;gt;b_0&amp;lt;/math&amp;gt;=1 mol/L) como de &amp;lt;math&amp;gt; C&amp;lt;/math&amp;gt;, para una &amp;lt;math&amp;gt;k_1&amp;lt;/math&amp;gt;=1 mol/s. Se comienza, por el momento, aplicando el método de Euler. Posteriormente se utilizarán métodos más precisos.&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo= &lt;br /&gt;
% Euler&lt;br /&gt;
clear all&lt;br /&gt;
% datos del problema&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=2;&lt;br /&gt;
y0=0;&lt;br /&gt;
h=0.1;&lt;br /&gt;
k1=1;&lt;br /&gt;
a0=3;&lt;br /&gt;
b0=1;&lt;br /&gt;
% Definimos la variable independiente&lt;br /&gt;
t=t0:h:tN;&lt;br /&gt;
% Guardamos los valores de la solución aproximada en el vector &amp;quot;y1&amp;quot; y&lt;br /&gt;
% establecemos los vectores de concentraciones A y B&lt;br /&gt;
y1=zeros(1,length(t)); &lt;br /&gt;
y1(1)=y0;&lt;br /&gt;
a1=zeros(1,length(t));&lt;br /&gt;
a1(1)=a0;&lt;br /&gt;
b1=zeros(1,length(t));&lt;br /&gt;
b1(1)=b0;&lt;br /&gt;
% A continuación, calculamos las componentes de los vectores y1, a y b&lt;br /&gt;
for i=1:length(t)-1&lt;br /&gt;
    y1(i+1)=y1(i)+h*(k1*(a0-y1(i))*(b0-y1(i)));    %Euler&lt;br /&gt;
    a1(i+1)=a0-y1(i+1); % evolución de la concentración de A&lt;br /&gt;
    b1(i+1)=b0-y1(i+1); % evolución de la concentración de B&lt;br /&gt;
end&lt;br /&gt;
%grafico &lt;br /&gt;
figure(1)&lt;br /&gt;
hold on&lt;br /&gt;
plot(t,y1,'g')&lt;br /&gt;
plot(t,a1,'r')&lt;br /&gt;
plot(t,b1,'b')&lt;br /&gt;
legend('concentración de C','concentración de A','concentración de B','location','best')&lt;br /&gt;
hold off &lt;br /&gt;
%en verde se muestra la concentración de C, en rojo la de A, y en azul la de B&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Archivo:3euler.jpeg|500px|miniaturadeimagen|center|Reacción compleja]]&lt;br /&gt;
&lt;br /&gt;
Aunque con observar los resultados ya podemos decir con casi absoluta seguridad cuáles son los límites de las concentraciones de cada reactivo &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;B&amp;lt;/math&amp;gt; y del producto &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt;, se ha diseñado un programa que, mediante diferencia de valores sucesivos de la variable &amp;lt;math&amp;gt;y(t)&amp;lt;/math&amp;gt;, nos devuelve el valor de la función cuando dicha diferencia es muy pequeña '''(se ha puesto una diferencia de 0.001)''', es decir, cuando tenemos una asíntota al tender &amp;lt;math&amp;gt;t→∞&amp;lt;/math&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
%Estudio de las asíntotas&lt;br /&gt;
t1=t0:h:10;%se aumenta la longitud de t, y se estima que se alcanzarán las asíntotas antes de t=10&lt;br /&gt;
y_=zeros(1,length(t1)); %se define un vector y_ idéntico a y1 pero con t hasta 10&lt;br /&gt;
a_=y_;&lt;br /&gt;
b_=y_;&lt;br /&gt;
y_(1)=y0;&lt;br /&gt;
a_(1)=a0;&lt;br /&gt;
b_(1)=b0;&lt;br /&gt;
for i=1:length(t1)-1&lt;br /&gt;
    y_(i+1)=y_(i)+h*(k1*(a0-y_(i))*(b0-y_(i)));&lt;br /&gt;
    diferencia=y_(i+1)-y_(i);&lt;br /&gt;
    if abs(diferencia)&amp;lt;=0.001&lt;br /&gt;
        limiteC=y_(i+1)&lt;br /&gt;
        break&lt;br /&gt;
    end&lt;br /&gt;
end&lt;br /&gt;
for i=1:length(t1)-1&lt;br /&gt;
    y_(i+1)=y_(i)+h*(k1*(a0-y_(i))*(b0-y_(i)));    &lt;br /&gt;
    a_(i+1)=a0-y_(i+1);&lt;br /&gt;
    diferencia2=a_(i+1)-a_(i);&lt;br /&gt;
    if abs(diferencia2)&amp;lt;=0.001&lt;br /&gt;
        limiteA=a_(i+1)&lt;br /&gt;
        break&lt;br /&gt;
    end&lt;br /&gt;
end&lt;br /&gt;
for i=1:length(t1)-1&lt;br /&gt;
    y_(i+1)=y_(i)+h*(k1*(a0-y_(i))*(b0-y_(i)));    &lt;br /&gt;
    b_(i+1)=b0-y_(i+1);&lt;br /&gt;
    diferencia3=b_(i+1)-b_(i);&lt;br /&gt;
    if abs(diferencia3)&amp;lt;=0.001&lt;br /&gt;
        limiteB=b_(i+1)&lt;br /&gt;
        break&lt;br /&gt;
    end&lt;br /&gt;
end&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
Que nos devuelve unos valores de las concentraciones para el límite de:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\lim A=2,0036≈2 mol/L&amp;lt;/math&amp;gt;:     &lt;br /&gt;
&amp;lt;math&amp;gt;\lim B=0,0036≈0mol/L&amp;lt;/math&amp;gt;:         &lt;br /&gt;
&amp;lt;math&amp;gt;\lim C=0,9964≈1mol/L&amp;lt;/math&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
Lo cual es lógico, ya que &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;B&amp;lt;/math&amp;gt; se combinan en una proporción de 1:1, luego &amp;lt;math&amp;gt;B&amp;lt;/math&amp;gt;, que tiene una concentración inicial de &amp;lt;math&amp;gt;b_0&amp;lt;/math&amp;gt;=1, será el reactivo limitante (el que desaparecerá por completo), mientras que &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt;, con &amp;lt;math&amp;gt;a_0&amp;lt;/math&amp;gt;=3, acabará con una concentración molar final igual a 2, y &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt;, del que no habia nada,alcanza una concentraccion de &amp;lt;math&amp;gt;1mol/L&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
= Método del Trapecio y Método de Runge-Kutta=&lt;br /&gt;
&lt;br /&gt;
A continuación, para obtener con más precisión las representaciones gráficas de las respectivas concentraciones, se opta por utilizar los métodos de los &amp;lt;math&amp;gt;Trapecios&amp;lt;/math&amp;gt; (segundo orden) y de &amp;lt;math&amp;gt;Runge-Kutta&amp;lt;/math&amp;gt; (cuarto orden). Desgraciadamente, no es posible comparar los errores cometidos por cada método con la expresión real de la concentración de C, ya que la ecuación diferencial no es de fácil resolución analítica, luego resulta imposible alcanzar una expresión explícita de la concentración en términos de nuestros datos conocidos; &amp;lt;math&amp;gt;a_0&amp;lt;/math&amp;gt;,&amp;lt;math&amp;gt;b_0&amp;lt;/math&amp;gt;,&amp;lt;math&amp;gt;k_1&amp;lt;/math&amp;gt;,&amp;lt;math&amp;gt;t (tiempo)&amp;lt;/math&amp;gt;.  Sin embargo, podemos confiar con bastante seguridad en el método sobre todo de &amp;lt;math&amp;gt;Runge-Kutta&amp;lt;/math&amp;gt;, debido a su cuarto orden. &lt;br /&gt;
&lt;br /&gt;
Para los trapecios, al ser un método implícito, es necesario despejar la componente &amp;lt;math&amp;gt;y_{n+1}&amp;lt;/math&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;y_{n+1}=\frac{(1+\frac{h}{2}∙k_1∙(a_0+b_0))-\sqrt{(1+\frac{h}{2}∙k_1∙(a_0+b_0))^2 -2∙h∙k_1(y_n+\frac{h}{2}∙k_1∙(a_0-y_n )∙(b_0-y_n)+\frac{h}{2}∙k_1∙a_0∙b_0) }}{k_1∙h}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Cabe destacar que este programa parte de los datos ya establecidos en el programa de Euler para '''t0, tN, y0, a0, b0, k1 y h''':&lt;br /&gt;
{{matlab|codigo= &lt;br /&gt;
%Trapecios&lt;br /&gt;
y2=zeros(1,length(t)); &lt;br /&gt;
a2=y2;&lt;br /&gt;
b2=y2;&lt;br /&gt;
y2(1)=y0;&lt;br /&gt;
a2(1)=a0;&lt;br /&gt;
b2(1)=b0;&lt;br /&gt;
for i=1:length(t)-1&lt;br /&gt;
    y2(i+1)=((1+0.5*h*k1*(a0+b0))-sqrt((1+0.5*h*k1*(a0+b0))^2-2*h*k1*(y2(i)+0.5*h*k1*(a0-y2(i))*(b0-y2(i))+0.5*h*k1*a0*b0)))/(k1*h);&lt;br /&gt;
    a2(i+1)=a0-y2(i+1);&lt;br /&gt;
    b2(i+1)=b0-y2(i+1);&lt;br /&gt;
end&lt;br /&gt;
 &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
%Runge-Kutta&lt;br /&gt;
y3=zeros(1,length(t)); &lt;br /&gt;
a3=y3;&lt;br /&gt;
b3=y3;&lt;br /&gt;
y3(1)=y0;&lt;br /&gt;
a3(1)=a0;&lt;br /&gt;
b3(1)=b0;&lt;br /&gt;
for i=1:length(t)-1 &lt;br /&gt;
    r1=k1*(a0-y3(i))*(b0-y3(i));&lt;br /&gt;
    r2=k1*(a0-y3(i)-0.5*r1*h)*(b0-y3(i)-0.5*r1*h);&lt;br /&gt;
    r3=k1*(a0-y3(i)-0.5*r2*h)*(b0-y3(i)-0.5*r2*h);&lt;br /&gt;
    r4=k1*(a0-y3(i)-r3*h)*(b0-y3(i)-r3*h);&lt;br /&gt;
    y3(i+1)=y3(i)+h/6*(r1+2*r2+2*r3+r4);&lt;br /&gt;
    a3(i+1)=a0-y3(i+1);&lt;br /&gt;
    b3(i+1)=b0-y3(i+1);&lt;br /&gt;
end&lt;br /&gt;
%se pintan las dos, en azul las soluciones de los Trapecios, y en negro las&lt;br /&gt;
%de Runge-Kutta. &lt;br /&gt;
figure(2)&lt;br /&gt;
hold on&lt;br /&gt;
plot(t,y2)&lt;br /&gt;
plot(t,a2)&lt;br /&gt;
plot(t,b2)&lt;br /&gt;
plot(t,y3,'k')&lt;br /&gt;
plot(t,a3,'k')&lt;br /&gt;
plot(t,b3,'k')&lt;br /&gt;
hold off&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
Que proporciona el resultado que se puede observar en la primera gráfica adjunta. Como podemos ver, es prácticamente indistinguible una gráfica de la otra. Sin embargo, si la juntamos con las gráficas proporcionadas por el método de Euler, que se representa ahora en rojo, la diferencia es palpable (ver gráfica 2), lo cual evidencia la peor precisión del método de Euler.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:4trapeciokung.jpeg|500px|miniaturadeimagen|center|Reacción compleja]]&lt;br /&gt;
&lt;br /&gt;
[[Archivo:4comparacion.jpeg|500px|miniaturadeimagen|center|Gráfico 2]]&lt;br /&gt;
&lt;br /&gt;
=Reacción consecutiva=&lt;br /&gt;
&lt;br /&gt;
Consideremos ahora que se produce una reacción consecutiva de la forma: &lt;br /&gt;
&lt;br /&gt;
                                                                   &amp;lt;math&amp;gt;A + B → k_1C → k_2D&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
De tal modo que los reactivos &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;B&amp;lt;/math&amp;gt; se combinan en la proporción 1:1 para formar compuesto &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt;, el cual, a su vez, se va descomponiendo para formar compuesto &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt;. Al igual que se ha hecho antes al analizar las otras reacciones, se considerará que se cumple la ley de acción de masas. Es decir, la velocidad con la que se forma compuesto &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; es proporcional a las concentraciones existentes de &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt; y de &amp;lt;math&amp;gt;B&amp;lt;/math&amp;gt; y del mismo modo la de formación de la sustancia &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; lo es a la concentración de &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; que se ha ido formando.&lt;br /&gt;
&lt;br /&gt;
Esta reacción consecutiva está representada por el siguiente problema de valor inicial:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;&lt;br /&gt;
   \left . &lt;br /&gt;
      \begin{matrix} &lt;br /&gt;
         y'_1(t)={k_{1}}({a_{0}}-y_1(t))({b_{0}}-y_1(t))\\&lt;br /&gt;
         y'_2(t)={k_{2}}(y_1(t)-y_2(t))\\&lt;br /&gt;
y_1(0)=0\\y_2(0)=0&lt;br /&gt;
      \end{matrix}&lt;br /&gt;
   \right \}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
Donde &amp;lt;math&amp;gt;a_0&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;b_0&amp;lt;/math&amp;gt; representan las concentraciones iniciales de &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;B&amp;lt;/math&amp;gt; respectivamente, &amp;lt;math&amp;gt;k_1&amp;lt;/math&amp;gt; es la constante de proporcionalidad que rige la primera reacción y &amp;lt;math&amp;gt;k_2&amp;lt;/math&amp;gt; la que rige la segunda reacción o reacción consecutiva. &amp;lt;math&amp;gt;y_1’(t)&amp;lt;/math&amp;gt; e  &amp;lt;math&amp;gt;y_2’(t)&amp;lt;/math&amp;gt; representan las velocidades de las reacciones, es decir, las velocidades con que se forman los productos &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt;. &amp;lt;math&amp;gt;y_2(t)&amp;lt;/math&amp;gt; representa la concentración del producto &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; pero es importante apreciar que en este caso &amp;lt;math&amp;gt;y_1(t)&amp;lt;/math&amp;gt; no nos da el valor de la concentración de &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; directamente, sino que ésta será &amp;lt;math&amp;gt;y_1(t)&amp;lt;/math&amp;gt;- &amp;lt;math&amp;gt;y_2(t)&amp;lt;/math&amp;gt;, la cantidad que se forma en la primera reacción menos la que se emplea para formar el producto &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; en la segunda.&lt;br /&gt;
&lt;br /&gt;
Este problema se va a resolver para dos casos diferentes. Uno en el cual se considera que la segunda reacción es más rápida que la primera, lo que supone tomar un valor de la constante &amp;lt;math&amp;gt;k_2&amp;lt;/math&amp;gt;  mayor que &amp;lt;math&amp;gt;k_1&amp;lt;/math&amp;gt;. Y otro en el cual se considera que es más lenta, lo que implica que &amp;lt;math&amp;gt;k_2&amp;lt;/math&amp;gt; es menor que &amp;lt;math&amp;gt;k_1&amp;lt;/math&amp;gt;. Concretamente vamos a tomar los siguientes valores para resolver el problema numéricamente; &amp;lt;math&amp;gt;a_0&amp;lt;/math&amp;gt;=3 ,  &amp;lt;math&amp;gt;b_0&amp;lt;/math&amp;gt;=1, &amp;lt;math&amp;gt;k_1&amp;lt;/math&amp;gt;=1,  &amp;lt;math&amp;gt;k_2&amp;lt;/math&amp;gt;=5, &amp;lt;math&amp;gt;k_2&amp;lt;/math&amp;gt;=1/5, .En ambos casos se resuelve para los primeros 10 segundos.&lt;br /&gt;
&lt;br /&gt;
==La reacción D es más rápida que la reacción C==&lt;br /&gt;
CASO    &amp;lt;math&amp;gt;k_1=5  &amp;lt;/math&amp;gt;   '''h=0.1''' &lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
&lt;br /&gt;
%datos&lt;br /&gt;
y0=[0;0];&lt;br /&gt;
z0=[0;0];&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;
%matriz de las soluciones&lt;br /&gt;
y=zeros(2,length(t)); %euler&lt;br /&gt;
y(:,1)=y0;&lt;br /&gt;
 &lt;br /&gt;
z=zeros(2,length(t)); %runge-kutta&lt;br /&gt;
z(:,1)=y0;&lt;br /&gt;
 &lt;br /&gt;
for i=1:length(t)-1&lt;br /&gt;
 %euler&lt;br /&gt;
 y(:,i+1)=y(:,i)+h*[1*(3-y(1,i))*(1-y(1,i)); 5*(y(1,i)-y(2,i))];&lt;br /&gt;
 %runge-kutta&lt;br /&gt;
 K1=[1*(3-z(1,i))*(1-z(1,i)); 5*(z(1,i)-z(2,i))];&lt;br /&gt;
 K2=[1*(3-(z(1,i)+h/2*K1(1)))*(1-(z(1,i)+h/2*K1(1))); 5*((y(1,i)+h/2*K1(2))-(y(2,i)+h/2*K1(2)))];&lt;br /&gt;
 K3=[1*(3-(z(1,i)+h/2*K2(1)))*(1-(z(1,i)+h/2*K2(1))); 5*((y(1,i)+h/2*K2(2))-(y(2,i)+h/2*K2(2)))];&lt;br /&gt;
 K4=[1*(3-(z(1,i)+h*K3(1)))*(1-(z(1,i)+h*K3(1))); 5*((y(1,i)+h*K3(2))-(y(2,i)+h*K3(2)))];&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;
% se calcula la concentración de C=y1t)-y2(t)&lt;br /&gt;
Ay=y(1,:)-y(2,:); %euler&lt;br /&gt;
Az=z(1,:)-z(2,:); %runge-kutta&lt;br /&gt;
 &lt;br /&gt;
figure(1)&lt;br /&gt;
hold on&lt;br /&gt;
plot(t,Ay) %concentración de C por euler&lt;br /&gt;
plot(t,y(2,:),'r') %concentración de D por euler&lt;br /&gt;
plot(t,Az,'k') %concentración de C por runge-kutta&lt;br /&gt;
plot(t,z(2,:),'g') %concentración de D por runge-kutta&lt;br /&gt;
legend('concentración de C por euler','concentración de D por euler','concentración de C por runge-kutta','concentración de D por runge-kutta','Location','best')&lt;br /&gt;
hold off&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:graficoa.jpeg|500px|miniaturadeimagen|center|Reacción compleja]]&lt;br /&gt;
&lt;br /&gt;
Se observa que en en los primeros instantes aumentan las concentraciones de &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; aumentan sus concentraciones. Antes de que pase 1 segundo, la concentración &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; alcanza un máximo (de unos 0.3 molar) y va disminuyendo progresivamente hasta alcanzar un valor de 0 molar. La concentración &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; sigue creciendo hasta llegar a 1 molar. Una vez que tanto &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; como &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; alcanzan estos valores, se estabiliza la reacción. &lt;br /&gt;
&lt;br /&gt;
Como hemos impuesto que la reacción &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; es más rápida que &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt;, se observa que &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; empieza creciendo más rápidamente, pero como reacciona más despacio que &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; su concentración disminuye progresivamente, mientras que la de &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; aumenta.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''CASO'''  &amp;lt;math&amp;gt;k_2=5  &amp;lt;/math&amp;gt;   '''h=0.3''' &lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
&lt;br /&gt;
%datos&lt;br /&gt;
y0=[0;0];&lt;br /&gt;
z0=[0;0];&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=10;&lt;br /&gt;
h=0.3;&lt;br /&gt;
 &lt;br /&gt;
%variable independiente t&lt;br /&gt;
t=t0:h:tN;&lt;br /&gt;
 &lt;br /&gt;
%matriz de las soluciones&lt;br /&gt;
y=zeros(2,length(t)); %euler&lt;br /&gt;
y(:,1)=y0;&lt;br /&gt;
 &lt;br /&gt;
z=zeros(2,length(t)); %runge-kutta&lt;br /&gt;
z(:,1)=y0;&lt;br /&gt;
 &lt;br /&gt;
for i=1:length(t)-1&lt;br /&gt;
 %euler&lt;br /&gt;
 y(:,i+1)=y(:,i)+h*[1*(3-y(1,i))*(1-y(1,i)); 5*(y(1,i)-y(2,i))];&lt;br /&gt;
 %runge-kutta&lt;br /&gt;
 K1=[1*(3-z(1,i))*(1-z(1,i)); 5*(z(1,i)-z(2,i))];&lt;br /&gt;
 K2=[1*(3-(z(1,i)+h/2*K1(1)))*(1-(z(1,i)+h/2*K1(1))); 5*((y(1,i)+h/2*K1(2))-(y(2,i)+h/2*K1(2)))];&lt;br /&gt;
 K3=[1*(3-(z(1,i)+h/2*K2(1)))*(1-(z(1,i)+h/2*K2(1))); 5*((y(1,i)+h/2*K2(2))-(y(2,i)+h/2*K2(2)))];&lt;br /&gt;
 K4=[1*(3-(z(1,i)+h*K3(1)))*(1-(z(1,i)+h*K3(1))); 5*((y(1,i)+h*K3(2))-(y(2,i)+h*K3(2)))];&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;
% se calcula la concentración de C=y1t)-y2(t)&lt;br /&gt;
Ay=y(1,:)-y(2,:); %euler&lt;br /&gt;
Az=z(1,:)-z(2,:); %runge-kutta&lt;br /&gt;
 &lt;br /&gt;
figure(1)&lt;br /&gt;
hold on&lt;br /&gt;
plot(t,Ay) %concentración de C por euler&lt;br /&gt;
plot(t,y(2,:),'r') %concentración de D por euler&lt;br /&gt;
plot(t,Az,'k') %concentración de C por runge-kutta&lt;br /&gt;
plot(t,z(2,:),'g') %concentración de D por runge-kutta&lt;br /&gt;
legend('concentración de C por euler','concentración de D por euler','concentración de C por runge-kutta','concentración de D por runge-kutta','Location','best')&lt;br /&gt;
hold off&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:graficob.jpeg|500px|miniaturadeimagen|center|Reacción compleja]]&lt;br /&gt;
&lt;br /&gt;
Repetimos el programa pero para un tamaño de paso mayor, de '''h=0.3''', y observamos que no  es suficientemente preciso, sobre todo al principio, no se puede analizar bien lo que está pasando en la reacción.&lt;br /&gt;
&lt;br /&gt;
==La reacción D es más lenta que la reacción C==&lt;br /&gt;
&lt;br /&gt;
CASO  &amp;lt;math&amp;gt;k_1 &amp;lt;/math&amp;gt;=1,   &amp;lt;math&amp;gt;k_2 &amp;lt;/math&amp;gt;=1/5&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
&lt;br /&gt;
%datos&lt;br /&gt;
y0=[0;0];&lt;br /&gt;
z0=[0;0];&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;
%matriz de las soluciones&lt;br /&gt;
y=zeros(2,length(t)); %euler&lt;br /&gt;
y(:,1)=y0;&lt;br /&gt;
 &lt;br /&gt;
z=zeros(2,length(t)); %runge-kutta&lt;br /&gt;
z(:,1)=y0;&lt;br /&gt;
 &lt;br /&gt;
for i=1:length(t)-1&lt;br /&gt;
 %euler&lt;br /&gt;
 y(:,i+1)=y(:,i)+h*[1*(3-y(1,i))*(1-y(1,i)); 1/5*(y(1,i)-y(2,i))];&lt;br /&gt;
 %runge-kutta&lt;br /&gt;
 K1=[1*(3-z(1,i))*(1-z(1,i)); 1/5*(z(1,i)-z(2,i))];&lt;br /&gt;
 K2=[1*(3-(z(1,i)+h/2*K1(1)))*(1-(z(1,i)+h/2*K1(1))); 1/5*((y(1,i)+h/2*K1(2))-(y(2,i)+h/2*K1(2)))];&lt;br /&gt;
 K3=[1*(3-(z(1,i)+h/2*K2(1)))*(1-(z(1,i)+h/2*K2(1))); 1/5*((y(1,i)+h/2*K2(2))-(y(2,i)+h/2*K2(2)))];&lt;br /&gt;
 K4=[1*(3-(z(1,i)+h*K3(1)))*(1-(z(1,i)+h*K3(1))); 1/5*((y(1,i)+h*K3(2))-(y(2,i)+h*K3(2)))];&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;
% se calcula la concentración de C=y1t)-y2(t)&lt;br /&gt;
Ay=y(1,:)-y(2,:); %euler&lt;br /&gt;
Az=z(1,:)-z(2,:); %runge-kutta&lt;br /&gt;
 &lt;br /&gt;
figure(1)&lt;br /&gt;
hold on&lt;br /&gt;
plot(t,Ay) %concentración de C por euler&lt;br /&gt;
plot(t,y(2,:),'r') %concentración de D por euler&lt;br /&gt;
plot(t,Az,'k') %concentración de C por runge-kutta&lt;br /&gt;
plot(t,z(2,:),'g') %concentración de D por runge-kutta&lt;br /&gt;
legend('concentración de C por euler','concentración de D por euler','concentración de C por runge-kutta','concentración de D por runge-kutta','Location','best')&lt;br /&gt;
hold off&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:graficoc.jpeg|500px|miniaturadeimagen|center|Reacción compleja]]&lt;br /&gt;
&lt;br /&gt;
Si ahora imponemos que la reacción  &amp;lt;math&amp;gt;C &amp;lt;/math&amp;gt; es más rápida que  &amp;lt;math&amp;gt;D &amp;lt;/math&amp;gt;, obtenemos lo siguiente. Se parece a la gráfica que obtuvimos en el programa anterior, pero  más extendida en el tiempo, más lenta.  &amp;lt;math&amp;gt;C &amp;lt;/math&amp;gt; alcanza una concentración máxima de unos 0.8 molar antes de empezar a decrecer a medida que avanza el tiempo y acercándose a un valor de '''0''' molar.  &amp;lt;math&amp;gt;D &amp;lt;/math&amp;gt; crece más lentamente que en la gráfica anterior, pero se aproxima al mismo valor, '''1''' molar.&lt;br /&gt;
Se observa que aunque hagamos la reacción  &amp;lt;math&amp;gt;C &amp;lt;/math&amp;gt; más rápida, tenemos las mismas concentraciones finales, pero tardan más tiempo en obtenerse, ya que la reacción tarda más en estabilizarse.&lt;br /&gt;
&lt;br /&gt;
&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>Joseva</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Reacciones_complejas_(Grupo_D1)&amp;diff=27166</id>
		<title>Reacciones complejas (Grupo D1)</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Reacciones_complejas_(Grupo_D1)&amp;diff=27166"/>
				<updated>2015-03-05T23:01:14Z</updated>
		
		<summary type="html">&lt;p&gt;Joseva: /* Método del Trapecio y Método de Runge-Kutta */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{ TrabajoED | Reacciones complejas (Grupo D1) | [[:Categoría:Ecuaciones Diferenciales|Ecuaciones Diferenciales]]|[[:Categoría:ED14/15|Curso 2014-15]] | Rincón Crespo, Kevin&lt;br /&gt;
&lt;br /&gt;
Rodríguez Gómez, Javier&lt;br /&gt;
&lt;br /&gt;
Sans Jiménez, Alejandro&lt;br /&gt;
&lt;br /&gt;
Sesto Muñoz, María Victoria&lt;br /&gt;
&lt;br /&gt;
Vallejo Asín, José Manuel &lt;br /&gt;
&lt;br /&gt;
Villarino Redondo, Álvaro }}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=Introducción=&lt;br /&gt;
Se considera una reacción química irreversible en una solución bien mezclada. Supondremos que la reacción ocurre para un volumen y temperatura constantes. Al inicio se encuentran dos reactivos A y B, que van formando un producto C en lo que se conoce como una reacción bimolecular, es decir, una molécula de A y una de B producen una de C, &lt;br /&gt;
                                                                     &amp;lt;math&amp;gt;A + B → C&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Supondremos también que se satisface la ley de acción de masas, que establece que la velocidad de reacción es proporcional al producto de las concentraciones de los reactivos.&lt;br /&gt;
&lt;br /&gt;
=Concentración del reactivo C a lo largo del tiempo=&lt;br /&gt;
En primer lugar, suponiendo que la reacción es irreversible, es decir, que C no puede volver a formar A y B, se puede expresar la situación mediante el siguiente problema de valor inicial, cuando t&amp;gt;0:&lt;br /&gt;
   &amp;lt;math&amp;gt;&lt;br /&gt;
   \left . &lt;br /&gt;
      \begin{matrix} &lt;br /&gt;
         y'(t)={k_{1}}({a_{0}}-y(t))({b_{0}}-y(t))=0\\&lt;br /&gt;
         y(0)=0&lt;br /&gt;
      \end{matrix}&lt;br /&gt;
   \right \}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Donde &amp;lt;math&amp;gt; {a_{0}}&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;{b_{0}}&amp;lt;/math&amp;gt; representan las concentraciones iniciales de '''A''' y '''B''' respectivamente y &amp;lt;math&amp;gt;{k_{1}}&amp;lt;/math&amp;gt; es la constante de proporcionalidad que indica la ley de acción de masas. &amp;lt;math&amp;gt;y’(t)&amp;lt;/math&amp;gt; representa la velocidad de reacción, es decir, la velocidad con que se forma el producto &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; ; mientras que la solución de la ecuación diferencial, &amp;lt;math&amp;gt;y(t)&amp;lt;/math&amp;gt; , representa la concentración de &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt;, la cantidad de compuesto que se ha formado. Para comprobar que la solución de este problema de Cauchy es única, comenzamos definiendo:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;math&amp;gt;f(t,y)={k_{1}}({a_{0}}-y(t))({b_{0}}-y(t))=0,   t&amp;gt;0 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Observamos que &amp;lt;math&amp;gt;f(t,y)&amp;lt;/math&amp;gt; es continua en el intervalo &amp;lt;math&amp;gt; I=(0,∞)∩B((0,0),r&amp;gt;0)&amp;lt;/math&amp;gt;, por lo que ya aseguramos la existencia de al menos una solución. Examinando la derivada parcial:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\frac{∂f}{∂y}=k_1(-a_0-b_0+2y)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Se deduce que al ser un polinomio no va a haber problemas de continuidad para ninguna bola. De esta forma, podemos asegurar que existe una única solución.&lt;br /&gt;
&lt;br /&gt;
==Concentración del reactivo C a lo largo del tiempo en un proceso reversible==&lt;br /&gt;
&lt;br /&gt;
Ahora bien, ¿qué pasaría si la reacción fuese reversible? Con esto lo que queremos indicar es que además de formarse  &amp;lt;math&amp;gt;C &amp;lt;/math&amp;gt;, este también se descompone de nuevo en  &amp;lt;math&amp;gt;A &amp;lt;/math&amp;gt; y  &amp;lt;math&amp;gt;B &amp;lt;/math&amp;gt;. Por lo tanto, nos quedaría una ecuación diferencial con la siguiente forma, cuando &amp;lt;math&amp;gt;t&amp;gt;0 &amp;lt;/math&amp;gt; :&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; y'(t)={k_{1}}({a_{0}}-y(t))({b_{0}}-y(t))-Cy(t)&amp;lt;/math&amp;gt;  &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Si nos fijamos, la modificación es sencillamente restar  &amp;lt;math&amp;gt;y(t) &amp;lt;/math&amp;gt; multiplicada por una constante, la cual refleja qué porcentaje de  &amp;lt;math&amp;gt;C &amp;lt;/math&amp;gt; se va descomponiendo a medida que se da, simultáneamente, la reacción  &amp;lt;math&amp;gt;A + B → C &amp;lt;/math&amp;gt;. Sin embargo, esta constante no puede tener cualquier valor, ya que en una reacción se cumple la conservación de masa. Por ello, a  &amp;lt;math&amp;gt;C &amp;lt;/math&amp;gt; le asociaremos el siguiente dominio:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;C∈(0,1)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Obsérvese que  &amp;lt;math&amp;gt;C &amp;lt;/math&amp;gt; tiene que ser mayor que 0 para que sea reversible, pero al mismo tiempo inferior que 1, ya que si no se estaría descomponiendo más compuesto  &amp;lt;math&amp;gt;C &amp;lt;/math&amp;gt; del que realmente se ha formado, en otras palabras, estaría apareciendo masa de la nada.&lt;br /&gt;
&lt;br /&gt;
=Método de Euler=&lt;br /&gt;
&lt;br /&gt;
Una vez llegados a este punto, se procede a ver una interpretación gráfica de la reacción. Para ello, se refleja en la gráfica (en un intervalo de 2 segundos), cómo varían las concentraciones tanto de &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt; (&amp;lt;math&amp;gt;a_0&amp;lt;/math&amp;gt;=3 mol/L) y &amp;lt;math&amp;gt;B&amp;lt;/math&amp;gt; (&amp;lt;math&amp;gt;b_0&amp;lt;/math&amp;gt;=1 mol/L) como de &amp;lt;math&amp;gt; C&amp;lt;/math&amp;gt;, para una &amp;lt;math&amp;gt;k_1&amp;lt;/math&amp;gt;=1 mol/s. Se comienza, por el momento, aplicando el método de Euler. Posteriormente se utilizarán métodos más precisos.&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo= &lt;br /&gt;
% Euler&lt;br /&gt;
clear all&lt;br /&gt;
% datos del problema&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=2;&lt;br /&gt;
y0=0;&lt;br /&gt;
h=0.1;&lt;br /&gt;
k1=1;&lt;br /&gt;
a0=3;&lt;br /&gt;
b0=1;&lt;br /&gt;
% Definimos la variable independiente&lt;br /&gt;
t=t0:h:tN;&lt;br /&gt;
% Guardamos los valores de la solución aproximada en el vector &amp;quot;y1&amp;quot; y&lt;br /&gt;
% establecemos los vectores de concentraciones A y B&lt;br /&gt;
y1=zeros(1,length(t)); &lt;br /&gt;
y1(1)=y0;&lt;br /&gt;
a1=zeros(1,length(t));&lt;br /&gt;
a1(1)=a0;&lt;br /&gt;
b1=zeros(1,length(t));&lt;br /&gt;
b1(1)=b0;&lt;br /&gt;
% A continuación, calculamos las componentes de los vectores y1, a y b&lt;br /&gt;
for i=1:length(t)-1&lt;br /&gt;
    y1(i+1)=y1(i)+h*(k1*(a0-y1(i))*(b0-y1(i)));    %Euler&lt;br /&gt;
    a1(i+1)=a0-y1(i+1); % evolución de la concentración de A&lt;br /&gt;
    b1(i+1)=b0-y1(i+1); % evolución de la concentración de B&lt;br /&gt;
end&lt;br /&gt;
%grafico &lt;br /&gt;
figure(1)&lt;br /&gt;
hold on&lt;br /&gt;
plot(t,y1,'g')&lt;br /&gt;
plot(t,a1,'r')&lt;br /&gt;
plot(t,b1,'b')&lt;br /&gt;
legend('concentración de C','concentración de A','concentración de B','location','best')&lt;br /&gt;
hold off &lt;br /&gt;
%en verde se muestra la concentración de C, en rojo la de A, y en azul la de B&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Archivo:3euler.jpeg|500px|miniaturadeimagen|center|Reacción compleja]]&lt;br /&gt;
&lt;br /&gt;
Aunque con observar los resultados ya podemos decir con casi absoluta seguridad cuáles son los límites de las concentraciones de cada reactivo &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;B&amp;lt;/math&amp;gt; y del producto &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt;, se ha diseñado un programa que, mediante diferencia de valores sucesivos de la variable &amp;lt;math&amp;gt;y(t)&amp;lt;/math&amp;gt;, nos devuelve el valor de la función cuando dicha diferencia es muy pequeña '''(se ha puesto una diferencia de 0.001)''', es decir, cuando tenemos una asíntota al tender &amp;lt;math&amp;gt;t→∞&amp;lt;/math&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
%Estudio de las asíntotas&lt;br /&gt;
t1=t0:h:10;%se aumenta la longitud de t, y se estima que se alcanzarán las asíntotas antes de t=10&lt;br /&gt;
y_=zeros(1,length(t1)); %se define un vector y_ idéntico a y1 pero con t hasta 10&lt;br /&gt;
a_=y_;&lt;br /&gt;
b_=y_;&lt;br /&gt;
y_(1)=y0;&lt;br /&gt;
a_(1)=a0;&lt;br /&gt;
b_(1)=b0;&lt;br /&gt;
for i=1:length(t1)-1&lt;br /&gt;
    y_(i+1)=y_(i)+h*(k1*(a0-y_(i))*(b0-y_(i)));&lt;br /&gt;
    diferencia=y_(i+1)-y_(i);&lt;br /&gt;
    if abs(diferencia)&amp;lt;=0.001&lt;br /&gt;
        limiteC=y_(i+1)&lt;br /&gt;
        break&lt;br /&gt;
    end&lt;br /&gt;
end&lt;br /&gt;
for i=1:length(t1)-1&lt;br /&gt;
    y_(i+1)=y_(i)+h*(k1*(a0-y_(i))*(b0-y_(i)));    &lt;br /&gt;
    a_(i+1)=a0-y_(i+1);&lt;br /&gt;
    diferencia2=a_(i+1)-a_(i);&lt;br /&gt;
    if abs(diferencia2)&amp;lt;=0.001&lt;br /&gt;
        limiteA=a_(i+1)&lt;br /&gt;
        break&lt;br /&gt;
    end&lt;br /&gt;
end&lt;br /&gt;
for i=1:length(t1)-1&lt;br /&gt;
    y_(i+1)=y_(i)+h*(k1*(a0-y_(i))*(b0-y_(i)));    &lt;br /&gt;
    b_(i+1)=b0-y_(i+1);&lt;br /&gt;
    diferencia3=b_(i+1)-b_(i);&lt;br /&gt;
    if abs(diferencia3)&amp;lt;=0.001&lt;br /&gt;
        limiteB=b_(i+1)&lt;br /&gt;
        break&lt;br /&gt;
    end&lt;br /&gt;
end&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
Que nos devuelve unos valores de las concentraciones para el límite de:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\lim A=2,0036≈2 mol/L&amp;lt;/math&amp;gt;:     &lt;br /&gt;
&amp;lt;math&amp;gt;\lim B=0,0036≈0mol/L&amp;lt;/math&amp;gt;:         &lt;br /&gt;
&amp;lt;math&amp;gt;\lim C=0,9964≈1mol/L&amp;lt;/math&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
Lo cual es lógico, ya que &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;B&amp;lt;/math&amp;gt; se combinan en una proporción de 1:1, luego &amp;lt;math&amp;gt;B&amp;lt;/math&amp;gt;, que tiene una concentración inicial de &amp;lt;math&amp;gt;b_0&amp;lt;/math&amp;gt;=1, será el reactivo limitante (el que desaparecerá por completo), mientras que &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt;, con &amp;lt;math&amp;gt;a_0&amp;lt;/math&amp;gt;=3, acabará con una concentración molar final igual a 2, y &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt;, del que no habia nada,alcanza una concentraccion de &amp;lt;math&amp;gt;1mol/L&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
= Método del Trapecio y Método de Runge-Kutta=&lt;br /&gt;
&lt;br /&gt;
A continuación, para obtener con más precisión las representaciones gráficas de las respectivas concentraciones, se opta por utilizar los métodos de los &amp;lt;math&amp;gt;Trapecios&amp;lt;/math&amp;gt; (segundo orden) y de &amp;lt;math&amp;gt;Runge-Kutta&amp;lt;/math&amp;gt; (cuarto orden). Desgraciadamente, no es posible comparar los errores cometidos por cada método con la expresión real de la concentración de C, ya que la ecuación diferencial no es de fácil resolución analítica, luego resulta imposible alcanzar una expresión explícita de la concentración en términos de nuestros datos conocidos; &amp;lt;math&amp;gt;a_0&amp;lt;/math&amp;gt;,&amp;lt;math&amp;gt;b_0&amp;lt;/math&amp;gt;,&amp;lt;math&amp;gt;k_1&amp;lt;/math&amp;gt;,&amp;lt;math&amp;gt;t (tiempo)&amp;lt;/math&amp;gt;.  Sin embargo, podemos confiar con bastante seguridad en el método sobre todo de &amp;lt;math&amp;gt;Runge-Kutta&amp;lt;/math&amp;gt;, debido a su cuarto orden. &lt;br /&gt;
&lt;br /&gt;
Para los trapecios, al ser un método implícito, es necesario despejar la componente &amp;lt;math&amp;gt;y_{n+1}&amp;lt;/math&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;y_{n+1}=\frac{(1+\frac{h}{2}∙k_1∙(a_0+b_0))-\sqrt{(1+\frac{h}{2}∙k_1∙(a_0+b_0))^2 -2∙h∙k_1(y_n+\frac{h}{2}∙k_1∙(a_0-y_n )∙(b_0-y_n)+\frac{h}{2}∙k_1∙a_0∙b_0) }}{k_1∙h}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Cabe destacar que este programa parte de los datos ya establecidos en el programa de Euler para '''t0, tN, y0, a0, b0, k1 y h''':&lt;br /&gt;
{{matlab|codigo= &lt;br /&gt;
%Trapecios&lt;br /&gt;
y2=zeros(1,length(t)); &lt;br /&gt;
a2=y2;&lt;br /&gt;
b2=y2;&lt;br /&gt;
y2(1)=y0;&lt;br /&gt;
a2(1)=a0;&lt;br /&gt;
b2(1)=b0;&lt;br /&gt;
for i=1:length(t)-1&lt;br /&gt;
    y2(i+1)=((1+0.5*h*k1*(a0+b0))-sqrt((1+0.5*h*k1*(a0+b0))^2-2*h*k1*(y2(i)+0.5*h*k1*(a0-y2(i))*(b0-y2(i))+0.5*h*k1*a0*b0)))/(k1*h);&lt;br /&gt;
    a2(i+1)=a0-y2(i+1);&lt;br /&gt;
    b2(i+1)=b0-y2(i+1);&lt;br /&gt;
end&lt;br /&gt;
 &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
%Runge-Kutta&lt;br /&gt;
y3=zeros(1,length(t)); &lt;br /&gt;
a3=y3;&lt;br /&gt;
b3=y3;&lt;br /&gt;
y3(1)=y0;&lt;br /&gt;
a3(1)=a0;&lt;br /&gt;
b3(1)=b0;&lt;br /&gt;
for i=1:length(t)-1 &lt;br /&gt;
    r1=k1*(a0-y3(i))*(b0-y3(i));&lt;br /&gt;
    r2=k1*(a0-y3(i)-0.5*r1*h)*(b0-y3(i)-0.5*r1*h);&lt;br /&gt;
    r3=k1*(a0-y3(i)-0.5*r2*h)*(b0-y3(i)-0.5*r2*h);&lt;br /&gt;
    r4=k1*(a0-y3(i)-r3*h)*(b0-y3(i)-r3*h);&lt;br /&gt;
    y3(i+1)=y3(i)+h/6*(r1+2*r2+2*r3+r4);&lt;br /&gt;
    a3(i+1)=a0-y3(i+1);&lt;br /&gt;
    b3(i+1)=b0-y3(i+1);&lt;br /&gt;
end&lt;br /&gt;
%se pintan las dos, en azul las soluciones de los Trapecios, y en negro las&lt;br /&gt;
%de Runge-Kutta. &lt;br /&gt;
figure(2)&lt;br /&gt;
hold on&lt;br /&gt;
plot(t,y2)&lt;br /&gt;
plot(t,a2)&lt;br /&gt;
plot(t,b2)&lt;br /&gt;
plot(t,y3,'k')&lt;br /&gt;
plot(t,a3,'k')&lt;br /&gt;
plot(t,b3,'k')&lt;br /&gt;
hold off&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
Que proporciona el resultado que se puede observar en la primera gráfica adjunta. Como podemos ver, es prácticamente indistinguible una gráfica de la otra. Sin embargo, si la juntamos con las gráficas proporcionadas por el método de Euler, que se representa ahora en rojo, la diferencia es palpable (ver gráfica 2), lo cual evidencia la peor precisión del método de Euler.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:4trapeciokung.jpeg|500px|miniaturadeimagen|center|Reacción compleja]]&lt;br /&gt;
&lt;br /&gt;
[[Archivo:4comparacion.jpeg|500px|miniaturadeimagen|center|Gráfico 2]]&lt;br /&gt;
&lt;br /&gt;
=Reacción consecutiva=&lt;br /&gt;
&lt;br /&gt;
Consideremos ahora que se produce una reacción consecutiva de la forma: &lt;br /&gt;
&lt;br /&gt;
                                                                   &amp;lt;math&amp;gt;A + B → k_1C → k_2D&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
De tal modo que los reactivos &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;B&amp;lt;/math&amp;gt; se combinan en la proporción 1:1 para formar compuesto &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt;, el cual, a su vez, se va descomponiendo para formar compuesto &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt;. Al igual que se ha hecho antes al analizar las otras reacciones, se considerará que se cumple la ley de acción de masas. Es decir, la velocidad con la que se forma compuesto &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; es proporcional a las concentraciones existentes de &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt; y de &amp;lt;math&amp;gt;B&amp;lt;/math&amp;gt; y del mismo modo la de formación de la sustancia &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; lo es a la concentración de &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; que se ha ido formando.&lt;br /&gt;
&lt;br /&gt;
Esta reacción consecutiva está representada por el siguiente problema de valor inicial:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;&lt;br /&gt;
   \left . &lt;br /&gt;
      \begin{matrix} &lt;br /&gt;
         y'_1(t)={k_{1}}({a_{0}}-y_1(t))({b_{0}}-y_1(t))\\&lt;br /&gt;
         y'_2(t)={k_{2}}(y_1(t)-y_2(t))\\&lt;br /&gt;
y_1(0)=0\\y_2(0)=0&lt;br /&gt;
      \end{matrix}&lt;br /&gt;
   \right \}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
Donde &amp;lt;math&amp;gt;a_0&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;b_0&amp;lt;/math&amp;gt; representan las concentraciones iniciales de &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;B&amp;lt;/math&amp;gt; respectivamente, &amp;lt;math&amp;gt;k_1&amp;lt;/math&amp;gt; es la constante de proporcionalidad que rige la primera reacción y &amp;lt;math&amp;gt;k_2&amp;lt;/math&amp;gt; la que rige la segunda reacción o reacción consecutiva. &amp;lt;math&amp;gt;y_1’(t)&amp;lt;/math&amp;gt; e  &amp;lt;math&amp;gt;y_2’(t)&amp;lt;/math&amp;gt; representan las velocidades de las reacciones, es decir, las velocidades con que se forman los productos &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt;. &amp;lt;math&amp;gt;y_2(t)&amp;lt;/math&amp;gt; representa la concentración del producto &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; pero es importante apreciar que en este caso &amp;lt;math&amp;gt;y_1(t)&amp;lt;/math&amp;gt; no nos da el valor de la concentración de &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; directamente, sino que ésta será &amp;lt;math&amp;gt;y_1(t)&amp;lt;/math&amp;gt;- &amp;lt;math&amp;gt;y_2(t)&amp;lt;/math&amp;gt;, la cantidad que se forma en la primera reacción menos la que se emplea para formar el producto &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; en la segunda.&lt;br /&gt;
&lt;br /&gt;
Este problema se va a resolver para dos casos diferentes. Uno en el cual se considera que la segunda reacción es más rápida que la primera, lo que supone tomar un valor de la constante &amp;lt;math&amp;gt;k_2&amp;lt;/math&amp;gt;  mayor que &amp;lt;math&amp;gt;k_1&amp;lt;/math&amp;gt;. Y otro en el cual se considera que es más lenta, lo que implica que &amp;lt;math&amp;gt;k_2&amp;lt;/math&amp;gt; es menor que &amp;lt;math&amp;gt;k_1&amp;lt;/math&amp;gt;. Concretamente vamos a tomar los siguientes valores para resolver el problema numéricamente; &amp;lt;math&amp;gt;a_0&amp;lt;/math&amp;gt;=3 ,  &amp;lt;math&amp;gt;b_0&amp;lt;/math&amp;gt;=1, &amp;lt;math&amp;gt;k_1&amp;lt;/math&amp;gt;=1,  &amp;lt;math&amp;gt;k_2&amp;lt;/math&amp;gt;=5, &amp;lt;math&amp;gt;k_2&amp;lt;/math&amp;gt;=1/5, .En ambos casos se resuelve para los primeros 10 segundos.&lt;br /&gt;
&lt;br /&gt;
==La reacción D es más rápida que la reacción C==&lt;br /&gt;
CASO    &amp;lt;math&amp;gt;k_1=5  &amp;lt;/math&amp;gt;   '''h=0.1''' &lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
&lt;br /&gt;
%datos&lt;br /&gt;
y0=[0;0];&lt;br /&gt;
z0=[0;0];&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;
%matriz de las soluciones&lt;br /&gt;
y=zeros(2,length(t)); %euler&lt;br /&gt;
y(:,1)=y0;&lt;br /&gt;
 &lt;br /&gt;
z=zeros(2,length(t)); %runge-kutta&lt;br /&gt;
z(:,1)=y0;&lt;br /&gt;
 &lt;br /&gt;
for i=1:length(t)-1&lt;br /&gt;
 %euler&lt;br /&gt;
 y(:,i+1)=y(:,i)+h*[1*(3-y(1,i))*(1-y(1,i)); 5*(y(1,i)-y(2,i))];&lt;br /&gt;
 %runge-kutta&lt;br /&gt;
 K1=[1*(3-z(1,i))*(1-z(1,i)); 5*(z(1,i)-z(2,i))];&lt;br /&gt;
 K2=[1*(3-(z(1,i)+h/2*K1(1)))*(1-(z(1,i)+h/2*K1(1))); 5*((y(1,i)+h/2*K1(2))-(y(2,i)+h/2*K1(2)))];&lt;br /&gt;
 K3=[1*(3-(z(1,i)+h/2*K2(1)))*(1-(z(1,i)+h/2*K2(1))); 5*((y(1,i)+h/2*K2(2))-(y(2,i)+h/2*K2(2)))];&lt;br /&gt;
 K4=[1*(3-(z(1,i)+h*K3(1)))*(1-(z(1,i)+h*K3(1))); 5*((y(1,i)+h*K3(2))-(y(2,i)+h*K3(2)))];&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;
% se calcula la concentración de C=y1t)-y2(t)&lt;br /&gt;
Ay=y(1,:)-y(2,:); %euler&lt;br /&gt;
Az=z(1,:)-z(2,:); %runge-kutta&lt;br /&gt;
 &lt;br /&gt;
figure(1)&lt;br /&gt;
hold on&lt;br /&gt;
plot(t,Ay) %concentración de C por euler&lt;br /&gt;
plot(t,y(2,:),'r') %concentración de D por euler&lt;br /&gt;
plot(t,Az,'k') %concentración de C por runge-kutta&lt;br /&gt;
plot(t,z(2,:),'g') %concentración de D por runge-kutta&lt;br /&gt;
legend('concentración de C por euler','concentración de D por euler','concentración de C por runge-kutta','concentración de D por runge-kutta','Location','best')&lt;br /&gt;
hold off&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:graficoa.jpeg|500px|miniaturadeimagen|center|Reacción compleja]]&lt;br /&gt;
&lt;br /&gt;
Se observa que en en los primeros instantes aumentan las concentraciones de &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; aumentan sus concentraciones. Antes de que pase 1 segundo, la concentración &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; alcanza un máximo (de unos 0.3 molar) y va disminuyendo progresivamente hasta alcanzar un valor de 0 molar. La concentración &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; sigue creciendo hasta llegar a 1 molar. Una vez que tanto &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; como &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; alcanzan estos valores, se estabiliza la reacción. &lt;br /&gt;
&lt;br /&gt;
Como hemos impuesto que la reacción &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; es más rápida que &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt;, se observa que &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; empieza creciendo más rápidamente, pero como reacciona más despacio que &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; su concentración disminuye progresivamente, mientras que la de &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; aumenta.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''CASO'''  &amp;lt;math&amp;gt;k_2=5  &amp;lt;/math&amp;gt;   '''h=0.3''' &lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
&lt;br /&gt;
%datos&lt;br /&gt;
y0=[0;0];&lt;br /&gt;
z0=[0;0];&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=10;&lt;br /&gt;
h=0.3;&lt;br /&gt;
 &lt;br /&gt;
%variable independiente t&lt;br /&gt;
t=t0:h:tN;&lt;br /&gt;
 &lt;br /&gt;
%matriz de las soluciones&lt;br /&gt;
y=zeros(2,length(t)); %euler&lt;br /&gt;
y(:,1)=y0;&lt;br /&gt;
 &lt;br /&gt;
z=zeros(2,length(t)); %runge-kutta&lt;br /&gt;
z(:,1)=y0;&lt;br /&gt;
 &lt;br /&gt;
for i=1:length(t)-1&lt;br /&gt;
 %euler&lt;br /&gt;
 y(:,i+1)=y(:,i)+h*[1*(3-y(1,i))*(1-y(1,i)); 5*(y(1,i)-y(2,i))];&lt;br /&gt;
 %runge-kutta&lt;br /&gt;
 K1=[1*(3-z(1,i))*(1-z(1,i)); 5*(z(1,i)-z(2,i))];&lt;br /&gt;
 K2=[1*(3-(z(1,i)+h/2*K1(1)))*(1-(z(1,i)+h/2*K1(1))); 5*((y(1,i)+h/2*K1(2))-(y(2,i)+h/2*K1(2)))];&lt;br /&gt;
 K3=[1*(3-(z(1,i)+h/2*K2(1)))*(1-(z(1,i)+h/2*K2(1))); 5*((y(1,i)+h/2*K2(2))-(y(2,i)+h/2*K2(2)))];&lt;br /&gt;
 K4=[1*(3-(z(1,i)+h*K3(1)))*(1-(z(1,i)+h*K3(1))); 5*((y(1,i)+h*K3(2))-(y(2,i)+h*K3(2)))];&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;
% se calcula la concentración de C=y1t)-y2(t)&lt;br /&gt;
Ay=y(1,:)-y(2,:); %euler&lt;br /&gt;
Az=z(1,:)-z(2,:); %runge-kutta&lt;br /&gt;
 &lt;br /&gt;
figure(1)&lt;br /&gt;
hold on&lt;br /&gt;
plot(t,Ay) %concentración de C por euler&lt;br /&gt;
plot(t,y(2,:),'r') %concentración de D por euler&lt;br /&gt;
plot(t,Az,'k') %concentración de C por runge-kutta&lt;br /&gt;
plot(t,z(2,:),'g') %concentración de D por runge-kutta&lt;br /&gt;
legend('concentración de C por euler','concentración de D por euler','concentración de C por runge-kutta','concentración de D por runge-kutta','Location','best')&lt;br /&gt;
hold off&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:graficob.jpeg|500px|miniaturadeimagen|center|Reacción compleja]]&lt;br /&gt;
&lt;br /&gt;
Repetimos el programa pero para un tamaño de paso mayor, de '''h=0.3''', y observamos que no  es suficientemente preciso, sobre todo al principio, no se puede analizar bien lo que está pasando en la reacción.&lt;br /&gt;
&lt;br /&gt;
==La reacción D es más lenta que la reacción C==&lt;br /&gt;
&lt;br /&gt;
CASO  &amp;lt;math&amp;gt;k_1 &amp;lt;/math&amp;gt;=1,   &amp;lt;math&amp;gt;k_2 &amp;lt;/math&amp;gt;=1/5&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
&lt;br /&gt;
%datos&lt;br /&gt;
y0=[0;0];&lt;br /&gt;
z0=[0;0];&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;
%matriz de las soluciones&lt;br /&gt;
y=zeros(2,length(t)); %euler&lt;br /&gt;
y(:,1)=y0;&lt;br /&gt;
 &lt;br /&gt;
z=zeros(2,length(t)); %runge-kutta&lt;br /&gt;
z(:,1)=y0;&lt;br /&gt;
 &lt;br /&gt;
for i=1:length(t)-1&lt;br /&gt;
 %euler&lt;br /&gt;
 y(:,i+1)=y(:,i)+h*[1*(3-y(1,i))*(1-y(1,i)); 1/5*(y(1,i)-y(2,i))];&lt;br /&gt;
 %runge-kutta&lt;br /&gt;
 K1=[1*(3-z(1,i))*(1-z(1,i)); 1/5*(z(1,i)-z(2,i))];&lt;br /&gt;
 K2=[1*(3-(z(1,i)+h/2*K1(1)))*(1-(z(1,i)+h/2*K1(1))); 1/5*((y(1,i)+h/2*K1(2))-(y(2,i)+h/2*K1(2)))];&lt;br /&gt;
 K3=[1*(3-(z(1,i)+h/2*K2(1)))*(1-(z(1,i)+h/2*K2(1))); 1/5*((y(1,i)+h/2*K2(2))-(y(2,i)+h/2*K2(2)))];&lt;br /&gt;
 K4=[1*(3-(z(1,i)+h*K3(1)))*(1-(z(1,i)+h*K3(1))); 1/5*((y(1,i)+h*K3(2))-(y(2,i)+h*K3(2)))];&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;
% se calcula la concentración de C=y1t)-y2(t)&lt;br /&gt;
Ay=y(1,:)-y(2,:); %euler&lt;br /&gt;
Az=z(1,:)-z(2,:); %runge-kutta&lt;br /&gt;
 &lt;br /&gt;
figure(1)&lt;br /&gt;
hold on&lt;br /&gt;
plot(t,Ay) %concentración de C por euler&lt;br /&gt;
plot(t,y(2,:),'r') %concentración de D por euler&lt;br /&gt;
plot(t,Az,'k') %concentración de C por runge-kutta&lt;br /&gt;
plot(t,z(2,:),'g') %concentración de D por runge-kutta&lt;br /&gt;
legend('concentración de C por euler','concentración de D por euler','concentración de C por runge-kutta','concentración de D por runge-kutta','Location','best')&lt;br /&gt;
hold off&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:graficoc.jpeg|500px|miniaturadeimagen|center|Reacción compleja]]&lt;br /&gt;
&lt;br /&gt;
Si ahora imponemos que la reacción  &amp;lt;math&amp;gt;C &amp;lt;/math&amp;gt; es más rápida que  &amp;lt;math&amp;gt;D &amp;lt;/math&amp;gt;, obtenemos lo siguiente. Se parece a la gráfica que obtuvimos en el programa anterior, pero  más extendida en el tiempo, más lenta.  &amp;lt;math&amp;gt;C &amp;lt;/math&amp;gt; alcanza una concentración máxima de unos 0.8 molar antes de empezar a decrecer a medida que avanza el tiempo y acercándose a un valor de '''0''' molar.  &amp;lt;math&amp;gt;D &amp;lt;/math&amp;gt; crece más lentamente que en la gráfica anterior, pero se aproxima al mismo valor, '''1''' molar.&lt;br /&gt;
Se observa que aunque hagamos la reacción  &amp;lt;math&amp;gt;C &amp;lt;/math&amp;gt; más rápida, tenemos las mismas concentraciones finales, pero tardan más tiempo en obtenerse, ya que la reacción tarda más en estabilizarse.&lt;br /&gt;
&lt;br /&gt;
&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>Joseva</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Reacciones_complejas_(Grupo_D1)&amp;diff=27163</id>
		<title>Reacciones complejas (Grupo D1)</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Reacciones_complejas_(Grupo_D1)&amp;diff=27163"/>
				<updated>2015-03-05T23:00:36Z</updated>
		
		<summary type="html">&lt;p&gt;Joseva: /* Método del Trapecio y Método de Runge-Kutta */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{ TrabajoED | Reacciones complejas (Grupo D1) | [[:Categoría:Ecuaciones Diferenciales|Ecuaciones Diferenciales]]|[[:Categoría:ED14/15|Curso 2014-15]] | Rincón Crespo, Kevin&lt;br /&gt;
&lt;br /&gt;
Rodríguez Gómez, Javier&lt;br /&gt;
&lt;br /&gt;
Sans Jiménez, Alejandro&lt;br /&gt;
&lt;br /&gt;
Sesto Muñoz, María Victoria&lt;br /&gt;
&lt;br /&gt;
Vallejo Asín, José Manuel &lt;br /&gt;
&lt;br /&gt;
Villarino Redondo, Álvaro }}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=Introducción=&lt;br /&gt;
Se considera una reacción química irreversible en una solución bien mezclada. Supondremos que la reacción ocurre para un volumen y temperatura constantes. Al inicio se encuentran dos reactivos A y B, que van formando un producto C en lo que se conoce como una reacción bimolecular, es decir, una molécula de A y una de B producen una de C, &lt;br /&gt;
                                                                     &amp;lt;math&amp;gt;A + B → C&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Supondremos también que se satisface la ley de acción de masas, que establece que la velocidad de reacción es proporcional al producto de las concentraciones de los reactivos.&lt;br /&gt;
&lt;br /&gt;
=Concentración del reactivo C a lo largo del tiempo=&lt;br /&gt;
En primer lugar, suponiendo que la reacción es irreversible, es decir, que C no puede volver a formar A y B, se puede expresar la situación mediante el siguiente problema de valor inicial, cuando t&amp;gt;0:&lt;br /&gt;
   &amp;lt;math&amp;gt;&lt;br /&gt;
   \left . &lt;br /&gt;
      \begin{matrix} &lt;br /&gt;
         y'(t)={k_{1}}({a_{0}}-y(t))({b_{0}}-y(t))=0\\&lt;br /&gt;
         y(0)=0&lt;br /&gt;
      \end{matrix}&lt;br /&gt;
   \right \}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Donde &amp;lt;math&amp;gt; {a_{0}}&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;{b_{0}}&amp;lt;/math&amp;gt; representan las concentraciones iniciales de '''A''' y '''B''' respectivamente y &amp;lt;math&amp;gt;{k_{1}}&amp;lt;/math&amp;gt; es la constante de proporcionalidad que indica la ley de acción de masas. &amp;lt;math&amp;gt;y’(t)&amp;lt;/math&amp;gt; representa la velocidad de reacción, es decir, la velocidad con que se forma el producto &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; ; mientras que la solución de la ecuación diferencial, &amp;lt;math&amp;gt;y(t)&amp;lt;/math&amp;gt; , representa la concentración de &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt;, la cantidad de compuesto que se ha formado. Para comprobar que la solución de este problema de Cauchy es única, comenzamos definiendo:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;math&amp;gt;f(t,y)={k_{1}}({a_{0}}-y(t))({b_{0}}-y(t))=0,   t&amp;gt;0 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Observamos que &amp;lt;math&amp;gt;f(t,y)&amp;lt;/math&amp;gt; es continua en el intervalo &amp;lt;math&amp;gt; I=(0,∞)∩B((0,0),r&amp;gt;0)&amp;lt;/math&amp;gt;, por lo que ya aseguramos la existencia de al menos una solución. Examinando la derivada parcial:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\frac{∂f}{∂y}=k_1(-a_0-b_0+2y)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Se deduce que al ser un polinomio no va a haber problemas de continuidad para ninguna bola. De esta forma, podemos asegurar que existe una única solución.&lt;br /&gt;
&lt;br /&gt;
==Concentración del reactivo C a lo largo del tiempo en un proceso reversible==&lt;br /&gt;
&lt;br /&gt;
Ahora bien, ¿qué pasaría si la reacción fuese reversible? Con esto lo que queremos indicar es que además de formarse  &amp;lt;math&amp;gt;C &amp;lt;/math&amp;gt;, este también se descompone de nuevo en  &amp;lt;math&amp;gt;A &amp;lt;/math&amp;gt; y  &amp;lt;math&amp;gt;B &amp;lt;/math&amp;gt;. Por lo tanto, nos quedaría una ecuación diferencial con la siguiente forma, cuando &amp;lt;math&amp;gt;t&amp;gt;0 &amp;lt;/math&amp;gt; :&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; y'(t)={k_{1}}({a_{0}}-y(t))({b_{0}}-y(t))-Cy(t)&amp;lt;/math&amp;gt;  &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Si nos fijamos, la modificación es sencillamente restar  &amp;lt;math&amp;gt;y(t) &amp;lt;/math&amp;gt; multiplicada por una constante, la cual refleja qué porcentaje de  &amp;lt;math&amp;gt;C &amp;lt;/math&amp;gt; se va descomponiendo a medida que se da, simultáneamente, la reacción  &amp;lt;math&amp;gt;A + B → C &amp;lt;/math&amp;gt;. Sin embargo, esta constante no puede tener cualquier valor, ya que en una reacción se cumple la conservación de masa. Por ello, a  &amp;lt;math&amp;gt;C &amp;lt;/math&amp;gt; le asociaremos el siguiente dominio:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;C∈(0,1)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Obsérvese que  &amp;lt;math&amp;gt;C &amp;lt;/math&amp;gt; tiene que ser mayor que 0 para que sea reversible, pero al mismo tiempo inferior que 1, ya que si no se estaría descomponiendo más compuesto  &amp;lt;math&amp;gt;C &amp;lt;/math&amp;gt; del que realmente se ha formado, en otras palabras, estaría apareciendo masa de la nada.&lt;br /&gt;
&lt;br /&gt;
=Método de Euler=&lt;br /&gt;
&lt;br /&gt;
Una vez llegados a este punto, se procede a ver una interpretación gráfica de la reacción. Para ello, se refleja en la gráfica (en un intervalo de 2 segundos), cómo varían las concentraciones tanto de &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt; (&amp;lt;math&amp;gt;a_0&amp;lt;/math&amp;gt;=3 mol/L) y &amp;lt;math&amp;gt;B&amp;lt;/math&amp;gt; (&amp;lt;math&amp;gt;b_0&amp;lt;/math&amp;gt;=1 mol/L) como de &amp;lt;math&amp;gt; C&amp;lt;/math&amp;gt;, para una &amp;lt;math&amp;gt;k_1&amp;lt;/math&amp;gt;=1 mol/s. Se comienza, por el momento, aplicando el método de Euler. Posteriormente se utilizarán métodos más precisos.&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo= &lt;br /&gt;
% Euler&lt;br /&gt;
clear all&lt;br /&gt;
% datos del problema&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=2;&lt;br /&gt;
y0=0;&lt;br /&gt;
h=0.1;&lt;br /&gt;
k1=1;&lt;br /&gt;
a0=3;&lt;br /&gt;
b0=1;&lt;br /&gt;
% Definimos la variable independiente&lt;br /&gt;
t=t0:h:tN;&lt;br /&gt;
% Guardamos los valores de la solución aproximada en el vector &amp;quot;y1&amp;quot; y&lt;br /&gt;
% establecemos los vectores de concentraciones A y B&lt;br /&gt;
y1=zeros(1,length(t)); &lt;br /&gt;
y1(1)=y0;&lt;br /&gt;
a1=zeros(1,length(t));&lt;br /&gt;
a1(1)=a0;&lt;br /&gt;
b1=zeros(1,length(t));&lt;br /&gt;
b1(1)=b0;&lt;br /&gt;
% A continuación, calculamos las componentes de los vectores y1, a y b&lt;br /&gt;
for i=1:length(t)-1&lt;br /&gt;
    y1(i+1)=y1(i)+h*(k1*(a0-y1(i))*(b0-y1(i)));    %Euler&lt;br /&gt;
    a1(i+1)=a0-y1(i+1); % evolución de la concentración de A&lt;br /&gt;
    b1(i+1)=b0-y1(i+1); % evolución de la concentración de B&lt;br /&gt;
end&lt;br /&gt;
%grafico &lt;br /&gt;
figure(1)&lt;br /&gt;
hold on&lt;br /&gt;
plot(t,y1,'g')&lt;br /&gt;
plot(t,a1,'r')&lt;br /&gt;
plot(t,b1,'b')&lt;br /&gt;
legend('concentración de C','concentración de A','concentración de B','location','best')&lt;br /&gt;
hold off &lt;br /&gt;
%en verde se muestra la concentración de C, en rojo la de A, y en azul la de B&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Archivo:3euler.jpeg|500px|miniaturadeimagen|center|Reacción compleja]]&lt;br /&gt;
&lt;br /&gt;
Aunque con observar los resultados ya podemos decir con casi absoluta seguridad cuáles son los límites de las concentraciones de cada reactivo &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;B&amp;lt;/math&amp;gt; y del producto &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt;, se ha diseñado un programa que, mediante diferencia de valores sucesivos de la variable &amp;lt;math&amp;gt;y(t)&amp;lt;/math&amp;gt;, nos devuelve el valor de la función cuando dicha diferencia es muy pequeña '''(se ha puesto una diferencia de 0.001)''', es decir, cuando tenemos una asíntota al tender &amp;lt;math&amp;gt;t→∞&amp;lt;/math&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
%Estudio de las asíntotas&lt;br /&gt;
t1=t0:h:10;%se aumenta la longitud de t, y se estima que se alcanzarán las asíntotas antes de t=10&lt;br /&gt;
y_=zeros(1,length(t1)); %se define un vector y_ idéntico a y1 pero con t hasta 10&lt;br /&gt;
a_=y_;&lt;br /&gt;
b_=y_;&lt;br /&gt;
y_(1)=y0;&lt;br /&gt;
a_(1)=a0;&lt;br /&gt;
b_(1)=b0;&lt;br /&gt;
for i=1:length(t1)-1&lt;br /&gt;
    y_(i+1)=y_(i)+h*(k1*(a0-y_(i))*(b0-y_(i)));&lt;br /&gt;
    diferencia=y_(i+1)-y_(i);&lt;br /&gt;
    if abs(diferencia)&amp;lt;=0.001&lt;br /&gt;
        limiteC=y_(i+1)&lt;br /&gt;
        break&lt;br /&gt;
    end&lt;br /&gt;
end&lt;br /&gt;
for i=1:length(t1)-1&lt;br /&gt;
    y_(i+1)=y_(i)+h*(k1*(a0-y_(i))*(b0-y_(i)));    &lt;br /&gt;
    a_(i+1)=a0-y_(i+1);&lt;br /&gt;
    diferencia2=a_(i+1)-a_(i);&lt;br /&gt;
    if abs(diferencia2)&amp;lt;=0.001&lt;br /&gt;
        limiteA=a_(i+1)&lt;br /&gt;
        break&lt;br /&gt;
    end&lt;br /&gt;
end&lt;br /&gt;
for i=1:length(t1)-1&lt;br /&gt;
    y_(i+1)=y_(i)+h*(k1*(a0-y_(i))*(b0-y_(i)));    &lt;br /&gt;
    b_(i+1)=b0-y_(i+1);&lt;br /&gt;
    diferencia3=b_(i+1)-b_(i);&lt;br /&gt;
    if abs(diferencia3)&amp;lt;=0.001&lt;br /&gt;
        limiteB=b_(i+1)&lt;br /&gt;
        break&lt;br /&gt;
    end&lt;br /&gt;
end&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
Que nos devuelve unos valores de las concentraciones para el límite de:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\lim A=2,0036≈2 mol/L&amp;lt;/math&amp;gt;:     &lt;br /&gt;
&amp;lt;math&amp;gt;\lim B=0,0036≈0mol/L&amp;lt;/math&amp;gt;:         &lt;br /&gt;
&amp;lt;math&amp;gt;\lim C=0,9964≈1mol/L&amp;lt;/math&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
Lo cual es lógico, ya que &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;B&amp;lt;/math&amp;gt; se combinan en una proporción de 1:1, luego &amp;lt;math&amp;gt;B&amp;lt;/math&amp;gt;, que tiene una concentración inicial de &amp;lt;math&amp;gt;b_0&amp;lt;/math&amp;gt;=1, será el reactivo limitante (el que desaparecerá por completo), mientras que &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt;, con &amp;lt;math&amp;gt;a_0&amp;lt;/math&amp;gt;=3, acabará con una concentración molar final igual a 2, y &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt;, del que no habia nada,alcanza una concentraccion de &amp;lt;math&amp;gt;1mol/L&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
= Método del Trapecio y Método de Runge-Kutta=&lt;br /&gt;
&lt;br /&gt;
A continuación, para obtener con más precisión las representaciones gráficas de las respectivas concentraciones, se opta por utilizar los métodos de los &amp;lt;math&amp;gt;Trapecios&amp;lt;/math&amp;gt; (segundo orden) y de &amp;lt;math&amp;gt;Runge-Kutta&amp;lt;/math&amp;gt; (cuarto orden). Desgraciadamente, no es posible comparar los errores cometidos por cada método con la expresión real de la concentración de C, ya que la ecuación diferencial no es de fácil resolución analítica, luego resulta imposible alcanzar una expresión explícita de la concentración en términos de nuestros datos conocidos; &amp;lt;math&amp;gt;a_0&amp;lt;/math&amp;gt;,&amp;lt;math&amp;gt;b_0&amp;lt;/math&amp;gt;,&amp;lt;math&amp;gt;k_1&amp;lt;/math&amp;gt;,&amp;lt;math&amp;gt;t (tiempo)&amp;lt;/math&amp;gt;.  Sin embargo, podemos confiar con bastante seguridad en el método sobre todo de &amp;lt;math&amp;gt;Runge-Kutta&amp;lt;/math&amp;gt;, debido a su cuarto orden. &lt;br /&gt;
&lt;br /&gt;
Para los trapecios, al ser un método implícito, es necesario despejar la componente &amp;lt;math&amp;gt;y_{n+1}&amp;lt;/math&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;y_{n+1}=\frac{(1+\frac{h}{2}∙k_1∙(a_0+b_0))-\sqrt{(1+\frac{h}{2}∙k_1∙(a_0+b_0))^2 -2*h∙k_1(y_n+\frac{h}{2}∙k_1∙(a_0-y_n )∙(b_0-y_n)+\frac{h}{2}∙k_1∙a_0∙b_0) }}{k_1∙h}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Cabe destacar que este programa parte de los datos ya establecidos en el programa de Euler para '''t0, tN, y0, a0, b0, k1 y h''':&lt;br /&gt;
{{matlab|codigo= &lt;br /&gt;
%Trapecios&lt;br /&gt;
y2=zeros(1,length(t)); &lt;br /&gt;
a2=y2;&lt;br /&gt;
b2=y2;&lt;br /&gt;
y2(1)=y0;&lt;br /&gt;
a2(1)=a0;&lt;br /&gt;
b2(1)=b0;&lt;br /&gt;
for i=1:length(t)-1&lt;br /&gt;
    y2(i+1)=((1+0.5*h*k1*(a0+b0))-sqrt((1+0.5*h*k1*(a0+b0))^2-2*h*k1*(y2(i)+0.5*h*k1*(a0-y2(i))*(b0-y2(i))+0.5*h*k1*a0*b0)))/(k1*h);&lt;br /&gt;
    a2(i+1)=a0-y2(i+1);&lt;br /&gt;
    b2(i+1)=b0-y2(i+1);&lt;br /&gt;
end&lt;br /&gt;
 &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
%Runge-Kutta&lt;br /&gt;
y3=zeros(1,length(t)); &lt;br /&gt;
a3=y3;&lt;br /&gt;
b3=y3;&lt;br /&gt;
y3(1)=y0;&lt;br /&gt;
a3(1)=a0;&lt;br /&gt;
b3(1)=b0;&lt;br /&gt;
for i=1:length(t)-1 &lt;br /&gt;
    r1=k1*(a0-y3(i))*(b0-y3(i));&lt;br /&gt;
    r2=k1*(a0-y3(i)-0.5*r1*h)*(b0-y3(i)-0.5*r1*h);&lt;br /&gt;
    r3=k1*(a0-y3(i)-0.5*r2*h)*(b0-y3(i)-0.5*r2*h);&lt;br /&gt;
    r4=k1*(a0-y3(i)-r3*h)*(b0-y3(i)-r3*h);&lt;br /&gt;
    y3(i+1)=y3(i)+h/6*(r1+2*r2+2*r3+r4);&lt;br /&gt;
    a3(i+1)=a0-y3(i+1);&lt;br /&gt;
    b3(i+1)=b0-y3(i+1);&lt;br /&gt;
end&lt;br /&gt;
%se pintan las dos, en azul las soluciones de los Trapecios, y en negro las&lt;br /&gt;
%de Runge-Kutta. &lt;br /&gt;
figure(2)&lt;br /&gt;
hold on&lt;br /&gt;
plot(t,y2)&lt;br /&gt;
plot(t,a2)&lt;br /&gt;
plot(t,b2)&lt;br /&gt;
plot(t,y3,'k')&lt;br /&gt;
plot(t,a3,'k')&lt;br /&gt;
plot(t,b3,'k')&lt;br /&gt;
hold off&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
Que proporciona el resultado que se puede observar en la primera gráfica adjunta. Como podemos ver, es prácticamente indistinguible una gráfica de la otra. Sin embargo, si la juntamos con las gráficas proporcionadas por el método de Euler, que se representa ahora en rojo, la diferencia es palpable (ver gráfica 2), lo cual evidencia la peor precisión del método de Euler.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:4trapeciokung.jpeg|500px|miniaturadeimagen|center|Reacción compleja]]&lt;br /&gt;
&lt;br /&gt;
[[Archivo:4comparacion.jpeg|500px|miniaturadeimagen|center|Gráfico 2]]&lt;br /&gt;
&lt;br /&gt;
=Reacción consecutiva=&lt;br /&gt;
&lt;br /&gt;
Consideremos ahora que se produce una reacción consecutiva de la forma: &lt;br /&gt;
&lt;br /&gt;
                                                                   &amp;lt;math&amp;gt;A + B → k_1C → k_2D&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
De tal modo que los reactivos &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;B&amp;lt;/math&amp;gt; se combinan en la proporción 1:1 para formar compuesto &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt;, el cual, a su vez, se va descomponiendo para formar compuesto &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt;. Al igual que se ha hecho antes al analizar las otras reacciones, se considerará que se cumple la ley de acción de masas. Es decir, la velocidad con la que se forma compuesto &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; es proporcional a las concentraciones existentes de &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt; y de &amp;lt;math&amp;gt;B&amp;lt;/math&amp;gt; y del mismo modo la de formación de la sustancia &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; lo es a la concentración de &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; que se ha ido formando.&lt;br /&gt;
&lt;br /&gt;
Esta reacción consecutiva está representada por el siguiente problema de valor inicial:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;&lt;br /&gt;
   \left . &lt;br /&gt;
      \begin{matrix} &lt;br /&gt;
         y'_1(t)={k_{1}}({a_{0}}-y_1(t))({b_{0}}-y_1(t))\\&lt;br /&gt;
         y'_2(t)={k_{2}}(y_1(t)-y_2(t))\\&lt;br /&gt;
y_1(0)=0\\y_2(0)=0&lt;br /&gt;
      \end{matrix}&lt;br /&gt;
   \right \}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
Donde &amp;lt;math&amp;gt;a_0&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;b_0&amp;lt;/math&amp;gt; representan las concentraciones iniciales de &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;B&amp;lt;/math&amp;gt; respectivamente, &amp;lt;math&amp;gt;k_1&amp;lt;/math&amp;gt; es la constante de proporcionalidad que rige la primera reacción y &amp;lt;math&amp;gt;k_2&amp;lt;/math&amp;gt; la que rige la segunda reacción o reacción consecutiva. &amp;lt;math&amp;gt;y_1’(t)&amp;lt;/math&amp;gt; e  &amp;lt;math&amp;gt;y_2’(t)&amp;lt;/math&amp;gt; representan las velocidades de las reacciones, es decir, las velocidades con que se forman los productos &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt;. &amp;lt;math&amp;gt;y_2(t)&amp;lt;/math&amp;gt; representa la concentración del producto &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; pero es importante apreciar que en este caso &amp;lt;math&amp;gt;y_1(t)&amp;lt;/math&amp;gt; no nos da el valor de la concentración de &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; directamente, sino que ésta será &amp;lt;math&amp;gt;y_1(t)&amp;lt;/math&amp;gt;- &amp;lt;math&amp;gt;y_2(t)&amp;lt;/math&amp;gt;, la cantidad que se forma en la primera reacción menos la que se emplea para formar el producto &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; en la segunda.&lt;br /&gt;
&lt;br /&gt;
Este problema se va a resolver para dos casos diferentes. Uno en el cual se considera que la segunda reacción es más rápida que la primera, lo que supone tomar un valor de la constante &amp;lt;math&amp;gt;k_2&amp;lt;/math&amp;gt;  mayor que &amp;lt;math&amp;gt;k_1&amp;lt;/math&amp;gt;. Y otro en el cual se considera que es más lenta, lo que implica que &amp;lt;math&amp;gt;k_2&amp;lt;/math&amp;gt; es menor que &amp;lt;math&amp;gt;k_1&amp;lt;/math&amp;gt;. Concretamente vamos a tomar los siguientes valores para resolver el problema numéricamente; &amp;lt;math&amp;gt;a_0&amp;lt;/math&amp;gt;=3 ,  &amp;lt;math&amp;gt;b_0&amp;lt;/math&amp;gt;=1, &amp;lt;math&amp;gt;k_1&amp;lt;/math&amp;gt;=1,  &amp;lt;math&amp;gt;k_2&amp;lt;/math&amp;gt;=5, &amp;lt;math&amp;gt;k_2&amp;lt;/math&amp;gt;=1/5, .En ambos casos se resuelve para los primeros 10 segundos.&lt;br /&gt;
&lt;br /&gt;
==La reacción D es más rápida que la reacción C==&lt;br /&gt;
CASO    &amp;lt;math&amp;gt;k_1=5  &amp;lt;/math&amp;gt;   '''h=0.1''' &lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
&lt;br /&gt;
%datos&lt;br /&gt;
y0=[0;0];&lt;br /&gt;
z0=[0;0];&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;
%matriz de las soluciones&lt;br /&gt;
y=zeros(2,length(t)); %euler&lt;br /&gt;
y(:,1)=y0;&lt;br /&gt;
 &lt;br /&gt;
z=zeros(2,length(t)); %runge-kutta&lt;br /&gt;
z(:,1)=y0;&lt;br /&gt;
 &lt;br /&gt;
for i=1:length(t)-1&lt;br /&gt;
 %euler&lt;br /&gt;
 y(:,i+1)=y(:,i)+h*[1*(3-y(1,i))*(1-y(1,i)); 5*(y(1,i)-y(2,i))];&lt;br /&gt;
 %runge-kutta&lt;br /&gt;
 K1=[1*(3-z(1,i))*(1-z(1,i)); 5*(z(1,i)-z(2,i))];&lt;br /&gt;
 K2=[1*(3-(z(1,i)+h/2*K1(1)))*(1-(z(1,i)+h/2*K1(1))); 5*((y(1,i)+h/2*K1(2))-(y(2,i)+h/2*K1(2)))];&lt;br /&gt;
 K3=[1*(3-(z(1,i)+h/2*K2(1)))*(1-(z(1,i)+h/2*K2(1))); 5*((y(1,i)+h/2*K2(2))-(y(2,i)+h/2*K2(2)))];&lt;br /&gt;
 K4=[1*(3-(z(1,i)+h*K3(1)))*(1-(z(1,i)+h*K3(1))); 5*((y(1,i)+h*K3(2))-(y(2,i)+h*K3(2)))];&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;
% se calcula la concentración de C=y1t)-y2(t)&lt;br /&gt;
Ay=y(1,:)-y(2,:); %euler&lt;br /&gt;
Az=z(1,:)-z(2,:); %runge-kutta&lt;br /&gt;
 &lt;br /&gt;
figure(1)&lt;br /&gt;
hold on&lt;br /&gt;
plot(t,Ay) %concentración de C por euler&lt;br /&gt;
plot(t,y(2,:),'r') %concentración de D por euler&lt;br /&gt;
plot(t,Az,'k') %concentración de C por runge-kutta&lt;br /&gt;
plot(t,z(2,:),'g') %concentración de D por runge-kutta&lt;br /&gt;
legend('concentración de C por euler','concentración de D por euler','concentración de C por runge-kutta','concentración de D por runge-kutta','Location','best')&lt;br /&gt;
hold off&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:graficoa.jpeg|500px|miniaturadeimagen|center|Reacción compleja]]&lt;br /&gt;
&lt;br /&gt;
Se observa que en en los primeros instantes aumentan las concentraciones de &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; aumentan sus concentraciones. Antes de que pase 1 segundo, la concentración &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; alcanza un máximo (de unos 0.3 molar) y va disminuyendo progresivamente hasta alcanzar un valor de 0 molar. La concentración &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; sigue creciendo hasta llegar a 1 molar. Una vez que tanto &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; como &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; alcanzan estos valores, se estabiliza la reacción. &lt;br /&gt;
&lt;br /&gt;
Como hemos impuesto que la reacción &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; es más rápida que &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt;, se observa que &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; empieza creciendo más rápidamente, pero como reacciona más despacio que &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; su concentración disminuye progresivamente, mientras que la de &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; aumenta.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''CASO'''  &amp;lt;math&amp;gt;k_2=5  &amp;lt;/math&amp;gt;   '''h=0.3''' &lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
&lt;br /&gt;
%datos&lt;br /&gt;
y0=[0;0];&lt;br /&gt;
z0=[0;0];&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=10;&lt;br /&gt;
h=0.3;&lt;br /&gt;
 &lt;br /&gt;
%variable independiente t&lt;br /&gt;
t=t0:h:tN;&lt;br /&gt;
 &lt;br /&gt;
%matriz de las soluciones&lt;br /&gt;
y=zeros(2,length(t)); %euler&lt;br /&gt;
y(:,1)=y0;&lt;br /&gt;
 &lt;br /&gt;
z=zeros(2,length(t)); %runge-kutta&lt;br /&gt;
z(:,1)=y0;&lt;br /&gt;
 &lt;br /&gt;
for i=1:length(t)-1&lt;br /&gt;
 %euler&lt;br /&gt;
 y(:,i+1)=y(:,i)+h*[1*(3-y(1,i))*(1-y(1,i)); 5*(y(1,i)-y(2,i))];&lt;br /&gt;
 %runge-kutta&lt;br /&gt;
 K1=[1*(3-z(1,i))*(1-z(1,i)); 5*(z(1,i)-z(2,i))];&lt;br /&gt;
 K2=[1*(3-(z(1,i)+h/2*K1(1)))*(1-(z(1,i)+h/2*K1(1))); 5*((y(1,i)+h/2*K1(2))-(y(2,i)+h/2*K1(2)))];&lt;br /&gt;
 K3=[1*(3-(z(1,i)+h/2*K2(1)))*(1-(z(1,i)+h/2*K2(1))); 5*((y(1,i)+h/2*K2(2))-(y(2,i)+h/2*K2(2)))];&lt;br /&gt;
 K4=[1*(3-(z(1,i)+h*K3(1)))*(1-(z(1,i)+h*K3(1))); 5*((y(1,i)+h*K3(2))-(y(2,i)+h*K3(2)))];&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;
% se calcula la concentración de C=y1t)-y2(t)&lt;br /&gt;
Ay=y(1,:)-y(2,:); %euler&lt;br /&gt;
Az=z(1,:)-z(2,:); %runge-kutta&lt;br /&gt;
 &lt;br /&gt;
figure(1)&lt;br /&gt;
hold on&lt;br /&gt;
plot(t,Ay) %concentración de C por euler&lt;br /&gt;
plot(t,y(2,:),'r') %concentración de D por euler&lt;br /&gt;
plot(t,Az,'k') %concentración de C por runge-kutta&lt;br /&gt;
plot(t,z(2,:),'g') %concentración de D por runge-kutta&lt;br /&gt;
legend('concentración de C por euler','concentración de D por euler','concentración de C por runge-kutta','concentración de D por runge-kutta','Location','best')&lt;br /&gt;
hold off&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:graficob.jpeg|500px|miniaturadeimagen|center|Reacción compleja]]&lt;br /&gt;
&lt;br /&gt;
Repetimos el programa pero para un tamaño de paso mayor, de '''h=0.3''', y observamos que no  es suficientemente preciso, sobre todo al principio, no se puede analizar bien lo que está pasando en la reacción.&lt;br /&gt;
&lt;br /&gt;
==La reacción D es más lenta que la reacción C==&lt;br /&gt;
&lt;br /&gt;
CASO  &amp;lt;math&amp;gt;k_1 &amp;lt;/math&amp;gt;=1,   &amp;lt;math&amp;gt;k_2 &amp;lt;/math&amp;gt;=1/5&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
&lt;br /&gt;
%datos&lt;br /&gt;
y0=[0;0];&lt;br /&gt;
z0=[0;0];&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;
%matriz de las soluciones&lt;br /&gt;
y=zeros(2,length(t)); %euler&lt;br /&gt;
y(:,1)=y0;&lt;br /&gt;
 &lt;br /&gt;
z=zeros(2,length(t)); %runge-kutta&lt;br /&gt;
z(:,1)=y0;&lt;br /&gt;
 &lt;br /&gt;
for i=1:length(t)-1&lt;br /&gt;
 %euler&lt;br /&gt;
 y(:,i+1)=y(:,i)+h*[1*(3-y(1,i))*(1-y(1,i)); 1/5*(y(1,i)-y(2,i))];&lt;br /&gt;
 %runge-kutta&lt;br /&gt;
 K1=[1*(3-z(1,i))*(1-z(1,i)); 1/5*(z(1,i)-z(2,i))];&lt;br /&gt;
 K2=[1*(3-(z(1,i)+h/2*K1(1)))*(1-(z(1,i)+h/2*K1(1))); 1/5*((y(1,i)+h/2*K1(2))-(y(2,i)+h/2*K1(2)))];&lt;br /&gt;
 K3=[1*(3-(z(1,i)+h/2*K2(1)))*(1-(z(1,i)+h/2*K2(1))); 1/5*((y(1,i)+h/2*K2(2))-(y(2,i)+h/2*K2(2)))];&lt;br /&gt;
 K4=[1*(3-(z(1,i)+h*K3(1)))*(1-(z(1,i)+h*K3(1))); 1/5*((y(1,i)+h*K3(2))-(y(2,i)+h*K3(2)))];&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;
% se calcula la concentración de C=y1t)-y2(t)&lt;br /&gt;
Ay=y(1,:)-y(2,:); %euler&lt;br /&gt;
Az=z(1,:)-z(2,:); %runge-kutta&lt;br /&gt;
 &lt;br /&gt;
figure(1)&lt;br /&gt;
hold on&lt;br /&gt;
plot(t,Ay) %concentración de C por euler&lt;br /&gt;
plot(t,y(2,:),'r') %concentración de D por euler&lt;br /&gt;
plot(t,Az,'k') %concentración de C por runge-kutta&lt;br /&gt;
plot(t,z(2,:),'g') %concentración de D por runge-kutta&lt;br /&gt;
legend('concentración de C por euler','concentración de D por euler','concentración de C por runge-kutta','concentración de D por runge-kutta','Location','best')&lt;br /&gt;
hold off&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:graficoc.jpeg|500px|miniaturadeimagen|center|Reacción compleja]]&lt;br /&gt;
&lt;br /&gt;
Si ahora imponemos que la reacción  &amp;lt;math&amp;gt;C &amp;lt;/math&amp;gt; es más rápida que  &amp;lt;math&amp;gt;D &amp;lt;/math&amp;gt;, obtenemos lo siguiente. Se parece a la gráfica que obtuvimos en el programa anterior, pero  más extendida en el tiempo, más lenta.  &amp;lt;math&amp;gt;C &amp;lt;/math&amp;gt; alcanza una concentración máxima de unos 0.8 molar antes de empezar a decrecer a medida que avanza el tiempo y acercándose a un valor de '''0''' molar.  &amp;lt;math&amp;gt;D &amp;lt;/math&amp;gt; crece más lentamente que en la gráfica anterior, pero se aproxima al mismo valor, '''1''' molar.&lt;br /&gt;
Se observa que aunque hagamos la reacción  &amp;lt;math&amp;gt;C &amp;lt;/math&amp;gt; más rápida, tenemos las mismas concentraciones finales, pero tardan más tiempo en obtenerse, ya que la reacción tarda más en estabilizarse.&lt;br /&gt;
&lt;br /&gt;
&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>Joseva</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Reacciones_complejas_(Grupo_D1)&amp;diff=27162</id>
		<title>Reacciones complejas (Grupo D1)</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Reacciones_complejas_(Grupo_D1)&amp;diff=27162"/>
				<updated>2015-03-05T22:59:48Z</updated>
		
		<summary type="html">&lt;p&gt;Joseva: /* Método del Trapecio y Método de Runge-Kutta */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{ TrabajoED | Reacciones complejas (Grupo D1) | [[:Categoría:Ecuaciones Diferenciales|Ecuaciones Diferenciales]]|[[:Categoría:ED14/15|Curso 2014-15]] | Rincón Crespo, Kevin&lt;br /&gt;
&lt;br /&gt;
Rodríguez Gómez, Javier&lt;br /&gt;
&lt;br /&gt;
Sans Jiménez, Alejandro&lt;br /&gt;
&lt;br /&gt;
Sesto Muñoz, María Victoria&lt;br /&gt;
&lt;br /&gt;
Vallejo Asín, José Manuel &lt;br /&gt;
&lt;br /&gt;
Villarino Redondo, Álvaro }}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=Introducción=&lt;br /&gt;
Se considera una reacción química irreversible en una solución bien mezclada. Supondremos que la reacción ocurre para un volumen y temperatura constantes. Al inicio se encuentran dos reactivos A y B, que van formando un producto C en lo que se conoce como una reacción bimolecular, es decir, una molécula de A y una de B producen una de C, &lt;br /&gt;
                                                                     &amp;lt;math&amp;gt;A + B → C&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Supondremos también que se satisface la ley de acción de masas, que establece que la velocidad de reacción es proporcional al producto de las concentraciones de los reactivos.&lt;br /&gt;
&lt;br /&gt;
=Concentración del reactivo C a lo largo del tiempo=&lt;br /&gt;
En primer lugar, suponiendo que la reacción es irreversible, es decir, que C no puede volver a formar A y B, se puede expresar la situación mediante el siguiente problema de valor inicial, cuando t&amp;gt;0:&lt;br /&gt;
   &amp;lt;math&amp;gt;&lt;br /&gt;
   \left . &lt;br /&gt;
      \begin{matrix} &lt;br /&gt;
         y'(t)={k_{1}}({a_{0}}-y(t))({b_{0}}-y(t))=0\\&lt;br /&gt;
         y(0)=0&lt;br /&gt;
      \end{matrix}&lt;br /&gt;
   \right \}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Donde &amp;lt;math&amp;gt; {a_{0}}&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;{b_{0}}&amp;lt;/math&amp;gt; representan las concentraciones iniciales de '''A''' y '''B''' respectivamente y &amp;lt;math&amp;gt;{k_{1}}&amp;lt;/math&amp;gt; es la constante de proporcionalidad que indica la ley de acción de masas. &amp;lt;math&amp;gt;y’(t)&amp;lt;/math&amp;gt; representa la velocidad de reacción, es decir, la velocidad con que se forma el producto &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; ; mientras que la solución de la ecuación diferencial, &amp;lt;math&amp;gt;y(t)&amp;lt;/math&amp;gt; , representa la concentración de &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt;, la cantidad de compuesto que se ha formado. Para comprobar que la solución de este problema de Cauchy es única, comenzamos definiendo:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;math&amp;gt;f(t,y)={k_{1}}({a_{0}}-y(t))({b_{0}}-y(t))=0,   t&amp;gt;0 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Observamos que &amp;lt;math&amp;gt;f(t,y)&amp;lt;/math&amp;gt; es continua en el intervalo &amp;lt;math&amp;gt; I=(0,∞)∩B((0,0),r&amp;gt;0)&amp;lt;/math&amp;gt;, por lo que ya aseguramos la existencia de al menos una solución. Examinando la derivada parcial:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\frac{∂f}{∂y}=k_1(-a_0-b_0+2y)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Se deduce que al ser un polinomio no va a haber problemas de continuidad para ninguna bola. De esta forma, podemos asegurar que existe una única solución.&lt;br /&gt;
&lt;br /&gt;
==Concentración del reactivo C a lo largo del tiempo en un proceso reversible==&lt;br /&gt;
&lt;br /&gt;
Ahora bien, ¿qué pasaría si la reacción fuese reversible? Con esto lo que queremos indicar es que además de formarse  &amp;lt;math&amp;gt;C &amp;lt;/math&amp;gt;, este también se descompone de nuevo en  &amp;lt;math&amp;gt;A &amp;lt;/math&amp;gt; y  &amp;lt;math&amp;gt;B &amp;lt;/math&amp;gt;. Por lo tanto, nos quedaría una ecuación diferencial con la siguiente forma, cuando &amp;lt;math&amp;gt;t&amp;gt;0 &amp;lt;/math&amp;gt; :&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; y'(t)={k_{1}}({a_{0}}-y(t))({b_{0}}-y(t))-Cy(t)&amp;lt;/math&amp;gt;  &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Si nos fijamos, la modificación es sencillamente restar  &amp;lt;math&amp;gt;y(t) &amp;lt;/math&amp;gt; multiplicada por una constante, la cual refleja qué porcentaje de  &amp;lt;math&amp;gt;C &amp;lt;/math&amp;gt; se va descomponiendo a medida que se da, simultáneamente, la reacción  &amp;lt;math&amp;gt;A + B → C &amp;lt;/math&amp;gt;. Sin embargo, esta constante no puede tener cualquier valor, ya que en una reacción se cumple la conservación de masa. Por ello, a  &amp;lt;math&amp;gt;C &amp;lt;/math&amp;gt; le asociaremos el siguiente dominio:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;C∈(0,1)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Obsérvese que  &amp;lt;math&amp;gt;C &amp;lt;/math&amp;gt; tiene que ser mayor que 0 para que sea reversible, pero al mismo tiempo inferior que 1, ya que si no se estaría descomponiendo más compuesto  &amp;lt;math&amp;gt;C &amp;lt;/math&amp;gt; del que realmente se ha formado, en otras palabras, estaría apareciendo masa de la nada.&lt;br /&gt;
&lt;br /&gt;
=Método de Euler=&lt;br /&gt;
&lt;br /&gt;
Una vez llegados a este punto, se procede a ver una interpretación gráfica de la reacción. Para ello, se refleja en la gráfica (en un intervalo de 2 segundos), cómo varían las concentraciones tanto de &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt; (&amp;lt;math&amp;gt;a_0&amp;lt;/math&amp;gt;=3 mol/L) y &amp;lt;math&amp;gt;B&amp;lt;/math&amp;gt; (&amp;lt;math&amp;gt;b_0&amp;lt;/math&amp;gt;=1 mol/L) como de &amp;lt;math&amp;gt; C&amp;lt;/math&amp;gt;, para una &amp;lt;math&amp;gt;k_1&amp;lt;/math&amp;gt;=1 mol/s. Se comienza, por el momento, aplicando el método de Euler. Posteriormente se utilizarán métodos más precisos.&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo= &lt;br /&gt;
% Euler&lt;br /&gt;
clear all&lt;br /&gt;
% datos del problema&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=2;&lt;br /&gt;
y0=0;&lt;br /&gt;
h=0.1;&lt;br /&gt;
k1=1;&lt;br /&gt;
a0=3;&lt;br /&gt;
b0=1;&lt;br /&gt;
% Definimos la variable independiente&lt;br /&gt;
t=t0:h:tN;&lt;br /&gt;
% Guardamos los valores de la solución aproximada en el vector &amp;quot;y1&amp;quot; y&lt;br /&gt;
% establecemos los vectores de concentraciones A y B&lt;br /&gt;
y1=zeros(1,length(t)); &lt;br /&gt;
y1(1)=y0;&lt;br /&gt;
a1=zeros(1,length(t));&lt;br /&gt;
a1(1)=a0;&lt;br /&gt;
b1=zeros(1,length(t));&lt;br /&gt;
b1(1)=b0;&lt;br /&gt;
% A continuación, calculamos las componentes de los vectores y1, a y b&lt;br /&gt;
for i=1:length(t)-1&lt;br /&gt;
    y1(i+1)=y1(i)+h*(k1*(a0-y1(i))*(b0-y1(i)));    %Euler&lt;br /&gt;
    a1(i+1)=a0-y1(i+1); % evolución de la concentración de A&lt;br /&gt;
    b1(i+1)=b0-y1(i+1); % evolución de la concentración de B&lt;br /&gt;
end&lt;br /&gt;
%grafico &lt;br /&gt;
figure(1)&lt;br /&gt;
hold on&lt;br /&gt;
plot(t,y1,'g')&lt;br /&gt;
plot(t,a1,'r')&lt;br /&gt;
plot(t,b1,'b')&lt;br /&gt;
legend('concentración de C','concentración de A','concentración de B','location','best')&lt;br /&gt;
hold off &lt;br /&gt;
%en verde se muestra la concentración de C, en rojo la de A, y en azul la de B&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Archivo:3euler.jpeg|500px|miniaturadeimagen|center|Reacción compleja]]&lt;br /&gt;
&lt;br /&gt;
Aunque con observar los resultados ya podemos decir con casi absoluta seguridad cuáles son los límites de las concentraciones de cada reactivo &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;B&amp;lt;/math&amp;gt; y del producto &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt;, se ha diseñado un programa que, mediante diferencia de valores sucesivos de la variable &amp;lt;math&amp;gt;y(t)&amp;lt;/math&amp;gt;, nos devuelve el valor de la función cuando dicha diferencia es muy pequeña '''(se ha puesto una diferencia de 0.001)''', es decir, cuando tenemos una asíntota al tender &amp;lt;math&amp;gt;t→∞&amp;lt;/math&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
%Estudio de las asíntotas&lt;br /&gt;
t1=t0:h:10;%se aumenta la longitud de t, y se estima que se alcanzarán las asíntotas antes de t=10&lt;br /&gt;
y_=zeros(1,length(t1)); %se define un vector y_ idéntico a y1 pero con t hasta 10&lt;br /&gt;
a_=y_;&lt;br /&gt;
b_=y_;&lt;br /&gt;
y_(1)=y0;&lt;br /&gt;
a_(1)=a0;&lt;br /&gt;
b_(1)=b0;&lt;br /&gt;
for i=1:length(t1)-1&lt;br /&gt;
    y_(i+1)=y_(i)+h*(k1*(a0-y_(i))*(b0-y_(i)));&lt;br /&gt;
    diferencia=y_(i+1)-y_(i);&lt;br /&gt;
    if abs(diferencia)&amp;lt;=0.001&lt;br /&gt;
        limiteC=y_(i+1)&lt;br /&gt;
        break&lt;br /&gt;
    end&lt;br /&gt;
end&lt;br /&gt;
for i=1:length(t1)-1&lt;br /&gt;
    y_(i+1)=y_(i)+h*(k1*(a0-y_(i))*(b0-y_(i)));    &lt;br /&gt;
    a_(i+1)=a0-y_(i+1);&lt;br /&gt;
    diferencia2=a_(i+1)-a_(i);&lt;br /&gt;
    if abs(diferencia2)&amp;lt;=0.001&lt;br /&gt;
        limiteA=a_(i+1)&lt;br /&gt;
        break&lt;br /&gt;
    end&lt;br /&gt;
end&lt;br /&gt;
for i=1:length(t1)-1&lt;br /&gt;
    y_(i+1)=y_(i)+h*(k1*(a0-y_(i))*(b0-y_(i)));    &lt;br /&gt;
    b_(i+1)=b0-y_(i+1);&lt;br /&gt;
    diferencia3=b_(i+1)-b_(i);&lt;br /&gt;
    if abs(diferencia3)&amp;lt;=0.001&lt;br /&gt;
        limiteB=b_(i+1)&lt;br /&gt;
        break&lt;br /&gt;
    end&lt;br /&gt;
end&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
Que nos devuelve unos valores de las concentraciones para el límite de:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\lim A=2,0036≈2 mol/L&amp;lt;/math&amp;gt;:     &lt;br /&gt;
&amp;lt;math&amp;gt;\lim B=0,0036≈0mol/L&amp;lt;/math&amp;gt;:         &lt;br /&gt;
&amp;lt;math&amp;gt;\lim C=0,9964≈1mol/L&amp;lt;/math&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
Lo cual es lógico, ya que &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;B&amp;lt;/math&amp;gt; se combinan en una proporción de 1:1, luego &amp;lt;math&amp;gt;B&amp;lt;/math&amp;gt;, que tiene una concentración inicial de &amp;lt;math&amp;gt;b_0&amp;lt;/math&amp;gt;=1, será el reactivo limitante (el que desaparecerá por completo), mientras que &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt;, con &amp;lt;math&amp;gt;a_0&amp;lt;/math&amp;gt;=3, acabará con una concentración molar final igual a 2, y &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt;, del que no habia nada,alcanza una concentraccion de &amp;lt;math&amp;gt;1mol/L&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
= Método del Trapecio y Método de Runge-Kutta=&lt;br /&gt;
&lt;br /&gt;
A continuación, para obtener con más precisión las representaciones gráficas de las respectivas concentraciones, se opta por utilizar los métodos de los &amp;lt;math&amp;gt;Trapecios&amp;lt;/math&amp;gt; (segundo orden) y de &amp;lt;math&amp;gt;Runge-Kutta&amp;lt;/math&amp;gt; (cuarto orden). Desgraciadamente, no es posible comparar los errores cometidos por cada método con la expresión real de la concentración de C, ya que la ecuación diferencial no es de fácil resolución analítica, luego resulta imposible alcanzar una expresión explícita de la concentración en términos de nuestros datos conocidos; &amp;lt;math&amp;gt;a_0&amp;lt;/math&amp;gt;,&amp;lt;math&amp;gt;b_0&amp;lt;/math&amp;gt;,&amp;lt;math&amp;gt;k_1&amp;lt;/math&amp;gt;,&amp;lt;math&amp;gt;t (tiempo)&amp;lt;/math&amp;gt;.  Sin embargo, podemos confiar con bastante seguridad en el método sobre todo de &amp;lt;math&amp;gt;Runge-Kutta&amp;lt;/math&amp;gt;, debido a su cuarto orden. &lt;br /&gt;
&lt;br /&gt;
Para los trapecios, al ser un método implícito, es necesario despejar la componente &amp;lt;math&amp;gt;y_{n+1}&amp;lt;/math&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;y_{n+1}=\frac{(1+\frac{h}{2}*k_1*(a_0+b_0))-\sqrt{(1+\frac{h}{2}*k_1*(a_0+b_0))^2 -2*h*k_1(y_n+\frac{h}{2}∙k_1∙(a_0-y_n )∙(b_0-y_n)+\frac{h}{2}∙k_1∙a_0∙b_0) }}{k_1*h}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Cabe destacar que este programa parte de los datos ya establecidos en el programa de Euler para '''t0, tN, y0, a0, b0, k1 y h''':&lt;br /&gt;
{{matlab|codigo= &lt;br /&gt;
%Trapecios&lt;br /&gt;
y2=zeros(1,length(t)); &lt;br /&gt;
a2=y2;&lt;br /&gt;
b2=y2;&lt;br /&gt;
y2(1)=y0;&lt;br /&gt;
a2(1)=a0;&lt;br /&gt;
b2(1)=b0;&lt;br /&gt;
for i=1:length(t)-1&lt;br /&gt;
    y2(i+1)=((1+0.5*h*k1*(a0+b0))-sqrt((1+0.5*h*k1*(a0+b0))^2-2*h*k1*(y2(i)+0.5*h*k1*(a0-y2(i))*(b0-y2(i))+0.5*h*k1*a0*b0)))/(k1*h);&lt;br /&gt;
    a2(i+1)=a0-y2(i+1);&lt;br /&gt;
    b2(i+1)=b0-y2(i+1);&lt;br /&gt;
end&lt;br /&gt;
 &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
%Runge-Kutta&lt;br /&gt;
y3=zeros(1,length(t)); &lt;br /&gt;
a3=y3;&lt;br /&gt;
b3=y3;&lt;br /&gt;
y3(1)=y0;&lt;br /&gt;
a3(1)=a0;&lt;br /&gt;
b3(1)=b0;&lt;br /&gt;
for i=1:length(t)-1 &lt;br /&gt;
    r1=k1*(a0-y3(i))*(b0-y3(i));&lt;br /&gt;
    r2=k1*(a0-y3(i)-0.5*r1*h)*(b0-y3(i)-0.5*r1*h);&lt;br /&gt;
    r3=k1*(a0-y3(i)-0.5*r2*h)*(b0-y3(i)-0.5*r2*h);&lt;br /&gt;
    r4=k1*(a0-y3(i)-r3*h)*(b0-y3(i)-r3*h);&lt;br /&gt;
    y3(i+1)=y3(i)+h/6*(r1+2*r2+2*r3+r4);&lt;br /&gt;
    a3(i+1)=a0-y3(i+1);&lt;br /&gt;
    b3(i+1)=b0-y3(i+1);&lt;br /&gt;
end&lt;br /&gt;
%se pintan las dos, en azul las soluciones de los Trapecios, y en negro las&lt;br /&gt;
%de Runge-Kutta. &lt;br /&gt;
figure(2)&lt;br /&gt;
hold on&lt;br /&gt;
plot(t,y2)&lt;br /&gt;
plot(t,a2)&lt;br /&gt;
plot(t,b2)&lt;br /&gt;
plot(t,y3,'k')&lt;br /&gt;
plot(t,a3,'k')&lt;br /&gt;
plot(t,b3,'k')&lt;br /&gt;
hold off&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
Que proporciona el resultado que se puede observar en la primera gráfica adjunta. Como podemos ver, es prácticamente indistinguible una gráfica de la otra. Sin embargo, si la juntamos con las gráficas proporcionadas por el método de Euler, que se representa ahora en rojo, la diferencia es palpable (ver gráfica 2), lo cual evidencia la peor precisión del método de Euler.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:4trapeciokung.jpeg|500px|miniaturadeimagen|center|Reacción compleja]]&lt;br /&gt;
&lt;br /&gt;
[[Archivo:4comparacion.jpeg|500px|miniaturadeimagen|center|Gráfico 2]]&lt;br /&gt;
&lt;br /&gt;
=Reacción consecutiva=&lt;br /&gt;
&lt;br /&gt;
Consideremos ahora que se produce una reacción consecutiva de la forma: &lt;br /&gt;
&lt;br /&gt;
                                                                   &amp;lt;math&amp;gt;A + B → k_1C → k_2D&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
De tal modo que los reactivos &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;B&amp;lt;/math&amp;gt; se combinan en la proporción 1:1 para formar compuesto &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt;, el cual, a su vez, se va descomponiendo para formar compuesto &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt;. Al igual que se ha hecho antes al analizar las otras reacciones, se considerará que se cumple la ley de acción de masas. Es decir, la velocidad con la que se forma compuesto &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; es proporcional a las concentraciones existentes de &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt; y de &amp;lt;math&amp;gt;B&amp;lt;/math&amp;gt; y del mismo modo la de formación de la sustancia &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; lo es a la concentración de &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; que se ha ido formando.&lt;br /&gt;
&lt;br /&gt;
Esta reacción consecutiva está representada por el siguiente problema de valor inicial:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;&lt;br /&gt;
   \left . &lt;br /&gt;
      \begin{matrix} &lt;br /&gt;
         y'_1(t)={k_{1}}({a_{0}}-y_1(t))({b_{0}}-y_1(t))\\&lt;br /&gt;
         y'_2(t)={k_{2}}(y_1(t)-y_2(t))\\&lt;br /&gt;
y_1(0)=0\\y_2(0)=0&lt;br /&gt;
      \end{matrix}&lt;br /&gt;
   \right \}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
Donde &amp;lt;math&amp;gt;a_0&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;b_0&amp;lt;/math&amp;gt; representan las concentraciones iniciales de &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;B&amp;lt;/math&amp;gt; respectivamente, &amp;lt;math&amp;gt;k_1&amp;lt;/math&amp;gt; es la constante de proporcionalidad que rige la primera reacción y &amp;lt;math&amp;gt;k_2&amp;lt;/math&amp;gt; la que rige la segunda reacción o reacción consecutiva. &amp;lt;math&amp;gt;y_1’(t)&amp;lt;/math&amp;gt; e  &amp;lt;math&amp;gt;y_2’(t)&amp;lt;/math&amp;gt; representan las velocidades de las reacciones, es decir, las velocidades con que se forman los productos &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt;. &amp;lt;math&amp;gt;y_2(t)&amp;lt;/math&amp;gt; representa la concentración del producto &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; pero es importante apreciar que en este caso &amp;lt;math&amp;gt;y_1(t)&amp;lt;/math&amp;gt; no nos da el valor de la concentración de &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; directamente, sino que ésta será &amp;lt;math&amp;gt;y_1(t)&amp;lt;/math&amp;gt;- &amp;lt;math&amp;gt;y_2(t)&amp;lt;/math&amp;gt;, la cantidad que se forma en la primera reacción menos la que se emplea para formar el producto &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; en la segunda.&lt;br /&gt;
&lt;br /&gt;
Este problema se va a resolver para dos casos diferentes. Uno en el cual se considera que la segunda reacción es más rápida que la primera, lo que supone tomar un valor de la constante &amp;lt;math&amp;gt;k_2&amp;lt;/math&amp;gt;  mayor que &amp;lt;math&amp;gt;k_1&amp;lt;/math&amp;gt;. Y otro en el cual se considera que es más lenta, lo que implica que &amp;lt;math&amp;gt;k_2&amp;lt;/math&amp;gt; es menor que &amp;lt;math&amp;gt;k_1&amp;lt;/math&amp;gt;. Concretamente vamos a tomar los siguientes valores para resolver el problema numéricamente; &amp;lt;math&amp;gt;a_0&amp;lt;/math&amp;gt;=3 ,  &amp;lt;math&amp;gt;b_0&amp;lt;/math&amp;gt;=1, &amp;lt;math&amp;gt;k_1&amp;lt;/math&amp;gt;=1,  &amp;lt;math&amp;gt;k_2&amp;lt;/math&amp;gt;=5, &amp;lt;math&amp;gt;k_2&amp;lt;/math&amp;gt;=1/5, .En ambos casos se resuelve para los primeros 10 segundos.&lt;br /&gt;
&lt;br /&gt;
==La reacción D es más rápida que la reacción C==&lt;br /&gt;
CASO    &amp;lt;math&amp;gt;k_1=5  &amp;lt;/math&amp;gt;   '''h=0.1''' &lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
&lt;br /&gt;
%datos&lt;br /&gt;
y0=[0;0];&lt;br /&gt;
z0=[0;0];&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;
%matriz de las soluciones&lt;br /&gt;
y=zeros(2,length(t)); %euler&lt;br /&gt;
y(:,1)=y0;&lt;br /&gt;
 &lt;br /&gt;
z=zeros(2,length(t)); %runge-kutta&lt;br /&gt;
z(:,1)=y0;&lt;br /&gt;
 &lt;br /&gt;
for i=1:length(t)-1&lt;br /&gt;
 %euler&lt;br /&gt;
 y(:,i+1)=y(:,i)+h*[1*(3-y(1,i))*(1-y(1,i)); 5*(y(1,i)-y(2,i))];&lt;br /&gt;
 %runge-kutta&lt;br /&gt;
 K1=[1*(3-z(1,i))*(1-z(1,i)); 5*(z(1,i)-z(2,i))];&lt;br /&gt;
 K2=[1*(3-(z(1,i)+h/2*K1(1)))*(1-(z(1,i)+h/2*K1(1))); 5*((y(1,i)+h/2*K1(2))-(y(2,i)+h/2*K1(2)))];&lt;br /&gt;
 K3=[1*(3-(z(1,i)+h/2*K2(1)))*(1-(z(1,i)+h/2*K2(1))); 5*((y(1,i)+h/2*K2(2))-(y(2,i)+h/2*K2(2)))];&lt;br /&gt;
 K4=[1*(3-(z(1,i)+h*K3(1)))*(1-(z(1,i)+h*K3(1))); 5*((y(1,i)+h*K3(2))-(y(2,i)+h*K3(2)))];&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;
% se calcula la concentración de C=y1t)-y2(t)&lt;br /&gt;
Ay=y(1,:)-y(2,:); %euler&lt;br /&gt;
Az=z(1,:)-z(2,:); %runge-kutta&lt;br /&gt;
 &lt;br /&gt;
figure(1)&lt;br /&gt;
hold on&lt;br /&gt;
plot(t,Ay) %concentración de C por euler&lt;br /&gt;
plot(t,y(2,:),'r') %concentración de D por euler&lt;br /&gt;
plot(t,Az,'k') %concentración de C por runge-kutta&lt;br /&gt;
plot(t,z(2,:),'g') %concentración de D por runge-kutta&lt;br /&gt;
legend('concentración de C por euler','concentración de D por euler','concentración de C por runge-kutta','concentración de D por runge-kutta','Location','best')&lt;br /&gt;
hold off&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:graficoa.jpeg|500px|miniaturadeimagen|center|Reacción compleja]]&lt;br /&gt;
&lt;br /&gt;
Se observa que en en los primeros instantes aumentan las concentraciones de &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; aumentan sus concentraciones. Antes de que pase 1 segundo, la concentración &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; alcanza un máximo (de unos 0.3 molar) y va disminuyendo progresivamente hasta alcanzar un valor de 0 molar. La concentración &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; sigue creciendo hasta llegar a 1 molar. Una vez que tanto &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; como &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; alcanzan estos valores, se estabiliza la reacción. &lt;br /&gt;
&lt;br /&gt;
Como hemos impuesto que la reacción &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; es más rápida que &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt;, se observa que &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; empieza creciendo más rápidamente, pero como reacciona más despacio que &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; su concentración disminuye progresivamente, mientras que la de &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; aumenta.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''CASO'''  &amp;lt;math&amp;gt;k_2=5  &amp;lt;/math&amp;gt;   '''h=0.3''' &lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
&lt;br /&gt;
%datos&lt;br /&gt;
y0=[0;0];&lt;br /&gt;
z0=[0;0];&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=10;&lt;br /&gt;
h=0.3;&lt;br /&gt;
 &lt;br /&gt;
%variable independiente t&lt;br /&gt;
t=t0:h:tN;&lt;br /&gt;
 &lt;br /&gt;
%matriz de las soluciones&lt;br /&gt;
y=zeros(2,length(t)); %euler&lt;br /&gt;
y(:,1)=y0;&lt;br /&gt;
 &lt;br /&gt;
z=zeros(2,length(t)); %runge-kutta&lt;br /&gt;
z(:,1)=y0;&lt;br /&gt;
 &lt;br /&gt;
for i=1:length(t)-1&lt;br /&gt;
 %euler&lt;br /&gt;
 y(:,i+1)=y(:,i)+h*[1*(3-y(1,i))*(1-y(1,i)); 5*(y(1,i)-y(2,i))];&lt;br /&gt;
 %runge-kutta&lt;br /&gt;
 K1=[1*(3-z(1,i))*(1-z(1,i)); 5*(z(1,i)-z(2,i))];&lt;br /&gt;
 K2=[1*(3-(z(1,i)+h/2*K1(1)))*(1-(z(1,i)+h/2*K1(1))); 5*((y(1,i)+h/2*K1(2))-(y(2,i)+h/2*K1(2)))];&lt;br /&gt;
 K3=[1*(3-(z(1,i)+h/2*K2(1)))*(1-(z(1,i)+h/2*K2(1))); 5*((y(1,i)+h/2*K2(2))-(y(2,i)+h/2*K2(2)))];&lt;br /&gt;
 K4=[1*(3-(z(1,i)+h*K3(1)))*(1-(z(1,i)+h*K3(1))); 5*((y(1,i)+h*K3(2))-(y(2,i)+h*K3(2)))];&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;
% se calcula la concentración de C=y1t)-y2(t)&lt;br /&gt;
Ay=y(1,:)-y(2,:); %euler&lt;br /&gt;
Az=z(1,:)-z(2,:); %runge-kutta&lt;br /&gt;
 &lt;br /&gt;
figure(1)&lt;br /&gt;
hold on&lt;br /&gt;
plot(t,Ay) %concentración de C por euler&lt;br /&gt;
plot(t,y(2,:),'r') %concentración de D por euler&lt;br /&gt;
plot(t,Az,'k') %concentración de C por runge-kutta&lt;br /&gt;
plot(t,z(2,:),'g') %concentración de D por runge-kutta&lt;br /&gt;
legend('concentración de C por euler','concentración de D por euler','concentración de C por runge-kutta','concentración de D por runge-kutta','Location','best')&lt;br /&gt;
hold off&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:graficob.jpeg|500px|miniaturadeimagen|center|Reacción compleja]]&lt;br /&gt;
&lt;br /&gt;
Repetimos el programa pero para un tamaño de paso mayor, de '''h=0.3''', y observamos que no  es suficientemente preciso, sobre todo al principio, no se puede analizar bien lo que está pasando en la reacción.&lt;br /&gt;
&lt;br /&gt;
==La reacción D es más lenta que la reacción C==&lt;br /&gt;
&lt;br /&gt;
CASO  &amp;lt;math&amp;gt;k_1 &amp;lt;/math&amp;gt;=1,   &amp;lt;math&amp;gt;k_2 &amp;lt;/math&amp;gt;=1/5&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
&lt;br /&gt;
%datos&lt;br /&gt;
y0=[0;0];&lt;br /&gt;
z0=[0;0];&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;
%matriz de las soluciones&lt;br /&gt;
y=zeros(2,length(t)); %euler&lt;br /&gt;
y(:,1)=y0;&lt;br /&gt;
 &lt;br /&gt;
z=zeros(2,length(t)); %runge-kutta&lt;br /&gt;
z(:,1)=y0;&lt;br /&gt;
 &lt;br /&gt;
for i=1:length(t)-1&lt;br /&gt;
 %euler&lt;br /&gt;
 y(:,i+1)=y(:,i)+h*[1*(3-y(1,i))*(1-y(1,i)); 1/5*(y(1,i)-y(2,i))];&lt;br /&gt;
 %runge-kutta&lt;br /&gt;
 K1=[1*(3-z(1,i))*(1-z(1,i)); 1/5*(z(1,i)-z(2,i))];&lt;br /&gt;
 K2=[1*(3-(z(1,i)+h/2*K1(1)))*(1-(z(1,i)+h/2*K1(1))); 1/5*((y(1,i)+h/2*K1(2))-(y(2,i)+h/2*K1(2)))];&lt;br /&gt;
 K3=[1*(3-(z(1,i)+h/2*K2(1)))*(1-(z(1,i)+h/2*K2(1))); 1/5*((y(1,i)+h/2*K2(2))-(y(2,i)+h/2*K2(2)))];&lt;br /&gt;
 K4=[1*(3-(z(1,i)+h*K3(1)))*(1-(z(1,i)+h*K3(1))); 1/5*((y(1,i)+h*K3(2))-(y(2,i)+h*K3(2)))];&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;
% se calcula la concentración de C=y1t)-y2(t)&lt;br /&gt;
Ay=y(1,:)-y(2,:); %euler&lt;br /&gt;
Az=z(1,:)-z(2,:); %runge-kutta&lt;br /&gt;
 &lt;br /&gt;
figure(1)&lt;br /&gt;
hold on&lt;br /&gt;
plot(t,Ay) %concentración de C por euler&lt;br /&gt;
plot(t,y(2,:),'r') %concentración de D por euler&lt;br /&gt;
plot(t,Az,'k') %concentración de C por runge-kutta&lt;br /&gt;
plot(t,z(2,:),'g') %concentración de D por runge-kutta&lt;br /&gt;
legend('concentración de C por euler','concentración de D por euler','concentración de C por runge-kutta','concentración de D por runge-kutta','Location','best')&lt;br /&gt;
hold off&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:graficoc.jpeg|500px|miniaturadeimagen|center|Reacción compleja]]&lt;br /&gt;
&lt;br /&gt;
Si ahora imponemos que la reacción  &amp;lt;math&amp;gt;C &amp;lt;/math&amp;gt; es más rápida que  &amp;lt;math&amp;gt;D &amp;lt;/math&amp;gt;, obtenemos lo siguiente. Se parece a la gráfica que obtuvimos en el programa anterior, pero  más extendida en el tiempo, más lenta.  &amp;lt;math&amp;gt;C &amp;lt;/math&amp;gt; alcanza una concentración máxima de unos 0.8 molar antes de empezar a decrecer a medida que avanza el tiempo y acercándose a un valor de '''0''' molar.  &amp;lt;math&amp;gt;D &amp;lt;/math&amp;gt; crece más lentamente que en la gráfica anterior, pero se aproxima al mismo valor, '''1''' molar.&lt;br /&gt;
Se observa que aunque hagamos la reacción  &amp;lt;math&amp;gt;C &amp;lt;/math&amp;gt; más rápida, tenemos las mismas concentraciones finales, pero tardan más tiempo en obtenerse, ya que la reacción tarda más en estabilizarse.&lt;br /&gt;
&lt;br /&gt;
&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>Joseva</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Reacciones_complejas_(Grupo_D1)&amp;diff=27161</id>
		<title>Reacciones complejas (Grupo D1)</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Reacciones_complejas_(Grupo_D1)&amp;diff=27161"/>
				<updated>2015-03-05T22:59:13Z</updated>
		
		<summary type="html">&lt;p&gt;Joseva: /* Método del Trapecio y Método de Runge-Kutta */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{ TrabajoED | Reacciones complejas (Grupo D1) | [[:Categoría:Ecuaciones Diferenciales|Ecuaciones Diferenciales]]|[[:Categoría:ED14/15|Curso 2014-15]] | Rincón Crespo, Kevin&lt;br /&gt;
&lt;br /&gt;
Rodríguez Gómez, Javier&lt;br /&gt;
&lt;br /&gt;
Sans Jiménez, Alejandro&lt;br /&gt;
&lt;br /&gt;
Sesto Muñoz, María Victoria&lt;br /&gt;
&lt;br /&gt;
Vallejo Asín, José Manuel &lt;br /&gt;
&lt;br /&gt;
Villarino Redondo, Álvaro }}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=Introducción=&lt;br /&gt;
Se considera una reacción química irreversible en una solución bien mezclada. Supondremos que la reacción ocurre para un volumen y temperatura constantes. Al inicio se encuentran dos reactivos A y B, que van formando un producto C en lo que se conoce como una reacción bimolecular, es decir, una molécula de A y una de B producen una de C, &lt;br /&gt;
                                                                     &amp;lt;math&amp;gt;A + B → C&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Supondremos también que se satisface la ley de acción de masas, que establece que la velocidad de reacción es proporcional al producto de las concentraciones de los reactivos.&lt;br /&gt;
&lt;br /&gt;
=Concentración del reactivo C a lo largo del tiempo=&lt;br /&gt;
En primer lugar, suponiendo que la reacción es irreversible, es decir, que C no puede volver a formar A y B, se puede expresar la situación mediante el siguiente problema de valor inicial, cuando t&amp;gt;0:&lt;br /&gt;
   &amp;lt;math&amp;gt;&lt;br /&gt;
   \left . &lt;br /&gt;
      \begin{matrix} &lt;br /&gt;
         y'(t)={k_{1}}({a_{0}}-y(t))({b_{0}}-y(t))=0\\&lt;br /&gt;
         y(0)=0&lt;br /&gt;
      \end{matrix}&lt;br /&gt;
   \right \}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Donde &amp;lt;math&amp;gt; {a_{0}}&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;{b_{0}}&amp;lt;/math&amp;gt; representan las concentraciones iniciales de '''A''' y '''B''' respectivamente y &amp;lt;math&amp;gt;{k_{1}}&amp;lt;/math&amp;gt; es la constante de proporcionalidad que indica la ley de acción de masas. &amp;lt;math&amp;gt;y’(t)&amp;lt;/math&amp;gt; representa la velocidad de reacción, es decir, la velocidad con que se forma el producto &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; ; mientras que la solución de la ecuación diferencial, &amp;lt;math&amp;gt;y(t)&amp;lt;/math&amp;gt; , representa la concentración de &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt;, la cantidad de compuesto que se ha formado. Para comprobar que la solución de este problema de Cauchy es única, comenzamos definiendo:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;math&amp;gt;f(t,y)={k_{1}}({a_{0}}-y(t))({b_{0}}-y(t))=0,   t&amp;gt;0 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Observamos que &amp;lt;math&amp;gt;f(t,y)&amp;lt;/math&amp;gt; es continua en el intervalo &amp;lt;math&amp;gt; I=(0,∞)∩B((0,0),r&amp;gt;0)&amp;lt;/math&amp;gt;, por lo que ya aseguramos la existencia de al menos una solución. Examinando la derivada parcial:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\frac{∂f}{∂y}=k_1(-a_0-b_0+2y)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Se deduce que al ser un polinomio no va a haber problemas de continuidad para ninguna bola. De esta forma, podemos asegurar que existe una única solución.&lt;br /&gt;
&lt;br /&gt;
==Concentración del reactivo C a lo largo del tiempo en un proceso reversible==&lt;br /&gt;
&lt;br /&gt;
Ahora bien, ¿qué pasaría si la reacción fuese reversible? Con esto lo que queremos indicar es que además de formarse  &amp;lt;math&amp;gt;C &amp;lt;/math&amp;gt;, este también se descompone de nuevo en  &amp;lt;math&amp;gt;A &amp;lt;/math&amp;gt; y  &amp;lt;math&amp;gt;B &amp;lt;/math&amp;gt;. Por lo tanto, nos quedaría una ecuación diferencial con la siguiente forma, cuando &amp;lt;math&amp;gt;t&amp;gt;0 &amp;lt;/math&amp;gt; :&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; y'(t)={k_{1}}({a_{0}}-y(t))({b_{0}}-y(t))-Cy(t)&amp;lt;/math&amp;gt;  &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Si nos fijamos, la modificación es sencillamente restar  &amp;lt;math&amp;gt;y(t) &amp;lt;/math&amp;gt; multiplicada por una constante, la cual refleja qué porcentaje de  &amp;lt;math&amp;gt;C &amp;lt;/math&amp;gt; se va descomponiendo a medida que se da, simultáneamente, la reacción  &amp;lt;math&amp;gt;A + B → C &amp;lt;/math&amp;gt;. Sin embargo, esta constante no puede tener cualquier valor, ya que en una reacción se cumple la conservación de masa. Por ello, a  &amp;lt;math&amp;gt;C &amp;lt;/math&amp;gt; le asociaremos el siguiente dominio:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;C∈(0,1)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Obsérvese que  &amp;lt;math&amp;gt;C &amp;lt;/math&amp;gt; tiene que ser mayor que 0 para que sea reversible, pero al mismo tiempo inferior que 1, ya que si no se estaría descomponiendo más compuesto  &amp;lt;math&amp;gt;C &amp;lt;/math&amp;gt; del que realmente se ha formado, en otras palabras, estaría apareciendo masa de la nada.&lt;br /&gt;
&lt;br /&gt;
=Método de Euler=&lt;br /&gt;
&lt;br /&gt;
Una vez llegados a este punto, se procede a ver una interpretación gráfica de la reacción. Para ello, se refleja en la gráfica (en un intervalo de 2 segundos), cómo varían las concentraciones tanto de &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt; (&amp;lt;math&amp;gt;a_0&amp;lt;/math&amp;gt;=3 mol/L) y &amp;lt;math&amp;gt;B&amp;lt;/math&amp;gt; (&amp;lt;math&amp;gt;b_0&amp;lt;/math&amp;gt;=1 mol/L) como de &amp;lt;math&amp;gt; C&amp;lt;/math&amp;gt;, para una &amp;lt;math&amp;gt;k_1&amp;lt;/math&amp;gt;=1 mol/s. Se comienza, por el momento, aplicando el método de Euler. Posteriormente se utilizarán métodos más precisos.&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo= &lt;br /&gt;
% Euler&lt;br /&gt;
clear all&lt;br /&gt;
% datos del problema&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=2;&lt;br /&gt;
y0=0;&lt;br /&gt;
h=0.1;&lt;br /&gt;
k1=1;&lt;br /&gt;
a0=3;&lt;br /&gt;
b0=1;&lt;br /&gt;
% Definimos la variable independiente&lt;br /&gt;
t=t0:h:tN;&lt;br /&gt;
% Guardamos los valores de la solución aproximada en el vector &amp;quot;y1&amp;quot; y&lt;br /&gt;
% establecemos los vectores de concentraciones A y B&lt;br /&gt;
y1=zeros(1,length(t)); &lt;br /&gt;
y1(1)=y0;&lt;br /&gt;
a1=zeros(1,length(t));&lt;br /&gt;
a1(1)=a0;&lt;br /&gt;
b1=zeros(1,length(t));&lt;br /&gt;
b1(1)=b0;&lt;br /&gt;
% A continuación, calculamos las componentes de los vectores y1, a y b&lt;br /&gt;
for i=1:length(t)-1&lt;br /&gt;
    y1(i+1)=y1(i)+h*(k1*(a0-y1(i))*(b0-y1(i)));    %Euler&lt;br /&gt;
    a1(i+1)=a0-y1(i+1); % evolución de la concentración de A&lt;br /&gt;
    b1(i+1)=b0-y1(i+1); % evolución de la concentración de B&lt;br /&gt;
end&lt;br /&gt;
%grafico &lt;br /&gt;
figure(1)&lt;br /&gt;
hold on&lt;br /&gt;
plot(t,y1,'g')&lt;br /&gt;
plot(t,a1,'r')&lt;br /&gt;
plot(t,b1,'b')&lt;br /&gt;
legend('concentración de C','concentración de A','concentración de B','location','best')&lt;br /&gt;
hold off &lt;br /&gt;
%en verde se muestra la concentración de C, en rojo la de A, y en azul la de B&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Archivo:3euler.jpeg|500px|miniaturadeimagen|center|Reacción compleja]]&lt;br /&gt;
&lt;br /&gt;
Aunque con observar los resultados ya podemos decir con casi absoluta seguridad cuáles son los límites de las concentraciones de cada reactivo &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;B&amp;lt;/math&amp;gt; y del producto &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt;, se ha diseñado un programa que, mediante diferencia de valores sucesivos de la variable &amp;lt;math&amp;gt;y(t)&amp;lt;/math&amp;gt;, nos devuelve el valor de la función cuando dicha diferencia es muy pequeña '''(se ha puesto una diferencia de 0.001)''', es decir, cuando tenemos una asíntota al tender &amp;lt;math&amp;gt;t→∞&amp;lt;/math&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
%Estudio de las asíntotas&lt;br /&gt;
t1=t0:h:10;%se aumenta la longitud de t, y se estima que se alcanzarán las asíntotas antes de t=10&lt;br /&gt;
y_=zeros(1,length(t1)); %se define un vector y_ idéntico a y1 pero con t hasta 10&lt;br /&gt;
a_=y_;&lt;br /&gt;
b_=y_;&lt;br /&gt;
y_(1)=y0;&lt;br /&gt;
a_(1)=a0;&lt;br /&gt;
b_(1)=b0;&lt;br /&gt;
for i=1:length(t1)-1&lt;br /&gt;
    y_(i+1)=y_(i)+h*(k1*(a0-y_(i))*(b0-y_(i)));&lt;br /&gt;
    diferencia=y_(i+1)-y_(i);&lt;br /&gt;
    if abs(diferencia)&amp;lt;=0.001&lt;br /&gt;
        limiteC=y_(i+1)&lt;br /&gt;
        break&lt;br /&gt;
    end&lt;br /&gt;
end&lt;br /&gt;
for i=1:length(t1)-1&lt;br /&gt;
    y_(i+1)=y_(i)+h*(k1*(a0-y_(i))*(b0-y_(i)));    &lt;br /&gt;
    a_(i+1)=a0-y_(i+1);&lt;br /&gt;
    diferencia2=a_(i+1)-a_(i);&lt;br /&gt;
    if abs(diferencia2)&amp;lt;=0.001&lt;br /&gt;
        limiteA=a_(i+1)&lt;br /&gt;
        break&lt;br /&gt;
    end&lt;br /&gt;
end&lt;br /&gt;
for i=1:length(t1)-1&lt;br /&gt;
    y_(i+1)=y_(i)+h*(k1*(a0-y_(i))*(b0-y_(i)));    &lt;br /&gt;
    b_(i+1)=b0-y_(i+1);&lt;br /&gt;
    diferencia3=b_(i+1)-b_(i);&lt;br /&gt;
    if abs(diferencia3)&amp;lt;=0.001&lt;br /&gt;
        limiteB=b_(i+1)&lt;br /&gt;
        break&lt;br /&gt;
    end&lt;br /&gt;
end&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
Que nos devuelve unos valores de las concentraciones para el límite de:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\lim A=2,0036≈2 mol/L&amp;lt;/math&amp;gt;:     &lt;br /&gt;
&amp;lt;math&amp;gt;\lim B=0,0036≈0mol/L&amp;lt;/math&amp;gt;:         &lt;br /&gt;
&amp;lt;math&amp;gt;\lim C=0,9964≈1mol/L&amp;lt;/math&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
Lo cual es lógico, ya que &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;B&amp;lt;/math&amp;gt; se combinan en una proporción de 1:1, luego &amp;lt;math&amp;gt;B&amp;lt;/math&amp;gt;, que tiene una concentración inicial de &amp;lt;math&amp;gt;b_0&amp;lt;/math&amp;gt;=1, será el reactivo limitante (el que desaparecerá por completo), mientras que &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt;, con &amp;lt;math&amp;gt;a_0&amp;lt;/math&amp;gt;=3, acabará con una concentración molar final igual a 2, y &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt;, del que no habia nada,alcanza una concentraccion de &amp;lt;math&amp;gt;1mol/L&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
= Método del Trapecio y Método de Runge-Kutta=&lt;br /&gt;
&lt;br /&gt;
A continuación, para obtener con más precisión las representaciones gráficas de las respectivas concentraciones, se opta por utilizar los métodos de los &amp;lt;math&amp;gt;Trapecios&amp;lt;/math&amp;gt; (segundo orden) y de &amp;lt;math&amp;gt;Runge-Kutta&amp;lt;/math&amp;gt; (cuarto orden). Desgraciadamente, no es posible comparar los errores cometidos por cada método con la expresión real de la concentración de C, ya que la ecuación diferencial no es de fácil resolución analítica, luego resulta imposible alcanzar una expresión explícita de la concentración en términos de nuestros datos conocidos; &amp;lt;math&amp;gt;a_0&amp;lt;/math&amp;gt;,&amp;lt;math&amp;gt;b_0&amp;lt;/math&amp;gt;,&amp;lt;math&amp;gt;k_1&amp;lt;/math&amp;gt;,&amp;lt;math&amp;gt;t (tiempo)&amp;lt;/math&amp;gt;.  Sin embargo, podemos confiar con bastante seguridad en el método sobre todo de &amp;lt;math&amp;gt;Runge-Kutta&amp;lt;/math&amp;gt;, debido a su cuarto orden. &lt;br /&gt;
&lt;br /&gt;
Para los trapecios, al ser un método implícito, es necesario despejar la componente &amp;lt;math&amp;gt;y_{n+1}&amp;lt;/math&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;y_{n+1}=\frac{(1+\frac{h}{2}*k_1*(a_0+b_0))-\sqrt{(1+\frac{h}{2}*k_1*(a_0+b_0))^2 -2*h*k_1(y_n+\frac{h}{2}∙k_1∙(a_0-y_n )∙(b_0-y_n)+\frac{h}{2}∙k_1∙a_0∙b_0) }}{}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Cabe destacar que este programa parte de los datos ya establecidos en el programa de Euler para '''t0, tN, y0, a0, b0, k1 y h''':&lt;br /&gt;
{{matlab|codigo= &lt;br /&gt;
%Trapecios&lt;br /&gt;
y2=zeros(1,length(t)); &lt;br /&gt;
a2=y2;&lt;br /&gt;
b2=y2;&lt;br /&gt;
y2(1)=y0;&lt;br /&gt;
a2(1)=a0;&lt;br /&gt;
b2(1)=b0;&lt;br /&gt;
for i=1:length(t)-1&lt;br /&gt;
    y2(i+1)=((1+0.5*h*k1*(a0+b0))-sqrt((1+0.5*h*k1*(a0+b0))^2-2*h*k1*(y2(i)+0.5*h*k1*(a0-y2(i))*(b0-y2(i))+0.5*h*k1*a0*b0)))/(k1*h);&lt;br /&gt;
    a2(i+1)=a0-y2(i+1);&lt;br /&gt;
    b2(i+1)=b0-y2(i+1);&lt;br /&gt;
end&lt;br /&gt;
 &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
%Runge-Kutta&lt;br /&gt;
y3=zeros(1,length(t)); &lt;br /&gt;
a3=y3;&lt;br /&gt;
b3=y3;&lt;br /&gt;
y3(1)=y0;&lt;br /&gt;
a3(1)=a0;&lt;br /&gt;
b3(1)=b0;&lt;br /&gt;
for i=1:length(t)-1 &lt;br /&gt;
    r1=k1*(a0-y3(i))*(b0-y3(i));&lt;br /&gt;
    r2=k1*(a0-y3(i)-0.5*r1*h)*(b0-y3(i)-0.5*r1*h);&lt;br /&gt;
    r3=k1*(a0-y3(i)-0.5*r2*h)*(b0-y3(i)-0.5*r2*h);&lt;br /&gt;
    r4=k1*(a0-y3(i)-r3*h)*(b0-y3(i)-r3*h);&lt;br /&gt;
    y3(i+1)=y3(i)+h/6*(r1+2*r2+2*r3+r4);&lt;br /&gt;
    a3(i+1)=a0-y3(i+1);&lt;br /&gt;
    b3(i+1)=b0-y3(i+1);&lt;br /&gt;
end&lt;br /&gt;
%se pintan las dos, en azul las soluciones de los Trapecios, y en negro las&lt;br /&gt;
%de Runge-Kutta. &lt;br /&gt;
figure(2)&lt;br /&gt;
hold on&lt;br /&gt;
plot(t,y2)&lt;br /&gt;
plot(t,a2)&lt;br /&gt;
plot(t,b2)&lt;br /&gt;
plot(t,y3,'k')&lt;br /&gt;
plot(t,a3,'k')&lt;br /&gt;
plot(t,b3,'k')&lt;br /&gt;
hold off&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
Que proporciona el resultado que se puede observar en la primera gráfica adjunta. Como podemos ver, es prácticamente indistinguible una gráfica de la otra. Sin embargo, si la juntamos con las gráficas proporcionadas por el método de Euler, que se representa ahora en rojo, la diferencia es palpable (ver gráfica 2), lo cual evidencia la peor precisión del método de Euler.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:4trapeciokung.jpeg|500px|miniaturadeimagen|center|Reacción compleja]]&lt;br /&gt;
&lt;br /&gt;
[[Archivo:4comparacion.jpeg|500px|miniaturadeimagen|center|Gráfico 2]]&lt;br /&gt;
&lt;br /&gt;
=Reacción consecutiva=&lt;br /&gt;
&lt;br /&gt;
Consideremos ahora que se produce una reacción consecutiva de la forma: &lt;br /&gt;
&lt;br /&gt;
                                                                   &amp;lt;math&amp;gt;A + B → k_1C → k_2D&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
De tal modo que los reactivos &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;B&amp;lt;/math&amp;gt; se combinan en la proporción 1:1 para formar compuesto &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt;, el cual, a su vez, se va descomponiendo para formar compuesto &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt;. Al igual que se ha hecho antes al analizar las otras reacciones, se considerará que se cumple la ley de acción de masas. Es decir, la velocidad con la que se forma compuesto &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; es proporcional a las concentraciones existentes de &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt; y de &amp;lt;math&amp;gt;B&amp;lt;/math&amp;gt; y del mismo modo la de formación de la sustancia &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; lo es a la concentración de &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; que se ha ido formando.&lt;br /&gt;
&lt;br /&gt;
Esta reacción consecutiva está representada por el siguiente problema de valor inicial:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;&lt;br /&gt;
   \left . &lt;br /&gt;
      \begin{matrix} &lt;br /&gt;
         y'_1(t)={k_{1}}({a_{0}}-y_1(t))({b_{0}}-y_1(t))\\&lt;br /&gt;
         y'_2(t)={k_{2}}(y_1(t)-y_2(t))\\&lt;br /&gt;
y_1(0)=0\\y_2(0)=0&lt;br /&gt;
      \end{matrix}&lt;br /&gt;
   \right \}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
Donde &amp;lt;math&amp;gt;a_0&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;b_0&amp;lt;/math&amp;gt; representan las concentraciones iniciales de &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;B&amp;lt;/math&amp;gt; respectivamente, &amp;lt;math&amp;gt;k_1&amp;lt;/math&amp;gt; es la constante de proporcionalidad que rige la primera reacción y &amp;lt;math&amp;gt;k_2&amp;lt;/math&amp;gt; la que rige la segunda reacción o reacción consecutiva. &amp;lt;math&amp;gt;y_1’(t)&amp;lt;/math&amp;gt; e  &amp;lt;math&amp;gt;y_2’(t)&amp;lt;/math&amp;gt; representan las velocidades de las reacciones, es decir, las velocidades con que se forman los productos &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt;. &amp;lt;math&amp;gt;y_2(t)&amp;lt;/math&amp;gt; representa la concentración del producto &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; pero es importante apreciar que en este caso &amp;lt;math&amp;gt;y_1(t)&amp;lt;/math&amp;gt; no nos da el valor de la concentración de &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; directamente, sino que ésta será &amp;lt;math&amp;gt;y_1(t)&amp;lt;/math&amp;gt;- &amp;lt;math&amp;gt;y_2(t)&amp;lt;/math&amp;gt;, la cantidad que se forma en la primera reacción menos la que se emplea para formar el producto &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; en la segunda.&lt;br /&gt;
&lt;br /&gt;
Este problema se va a resolver para dos casos diferentes. Uno en el cual se considera que la segunda reacción es más rápida que la primera, lo que supone tomar un valor de la constante &amp;lt;math&amp;gt;k_2&amp;lt;/math&amp;gt;  mayor que &amp;lt;math&amp;gt;k_1&amp;lt;/math&amp;gt;. Y otro en el cual se considera que es más lenta, lo que implica que &amp;lt;math&amp;gt;k_2&amp;lt;/math&amp;gt; es menor que &amp;lt;math&amp;gt;k_1&amp;lt;/math&amp;gt;. Concretamente vamos a tomar los siguientes valores para resolver el problema numéricamente; &amp;lt;math&amp;gt;a_0&amp;lt;/math&amp;gt;=3 ,  &amp;lt;math&amp;gt;b_0&amp;lt;/math&amp;gt;=1, &amp;lt;math&amp;gt;k_1&amp;lt;/math&amp;gt;=1,  &amp;lt;math&amp;gt;k_2&amp;lt;/math&amp;gt;=5, &amp;lt;math&amp;gt;k_2&amp;lt;/math&amp;gt;=1/5, .En ambos casos se resuelve para los primeros 10 segundos.&lt;br /&gt;
&lt;br /&gt;
==La reacción D es más rápida que la reacción C==&lt;br /&gt;
CASO    &amp;lt;math&amp;gt;k_1=5  &amp;lt;/math&amp;gt;   '''h=0.1''' &lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
&lt;br /&gt;
%datos&lt;br /&gt;
y0=[0;0];&lt;br /&gt;
z0=[0;0];&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;
%matriz de las soluciones&lt;br /&gt;
y=zeros(2,length(t)); %euler&lt;br /&gt;
y(:,1)=y0;&lt;br /&gt;
 &lt;br /&gt;
z=zeros(2,length(t)); %runge-kutta&lt;br /&gt;
z(:,1)=y0;&lt;br /&gt;
 &lt;br /&gt;
for i=1:length(t)-1&lt;br /&gt;
 %euler&lt;br /&gt;
 y(:,i+1)=y(:,i)+h*[1*(3-y(1,i))*(1-y(1,i)); 5*(y(1,i)-y(2,i))];&lt;br /&gt;
 %runge-kutta&lt;br /&gt;
 K1=[1*(3-z(1,i))*(1-z(1,i)); 5*(z(1,i)-z(2,i))];&lt;br /&gt;
 K2=[1*(3-(z(1,i)+h/2*K1(1)))*(1-(z(1,i)+h/2*K1(1))); 5*((y(1,i)+h/2*K1(2))-(y(2,i)+h/2*K1(2)))];&lt;br /&gt;
 K3=[1*(3-(z(1,i)+h/2*K2(1)))*(1-(z(1,i)+h/2*K2(1))); 5*((y(1,i)+h/2*K2(2))-(y(2,i)+h/2*K2(2)))];&lt;br /&gt;
 K4=[1*(3-(z(1,i)+h*K3(1)))*(1-(z(1,i)+h*K3(1))); 5*((y(1,i)+h*K3(2))-(y(2,i)+h*K3(2)))];&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;
% se calcula la concentración de C=y1t)-y2(t)&lt;br /&gt;
Ay=y(1,:)-y(2,:); %euler&lt;br /&gt;
Az=z(1,:)-z(2,:); %runge-kutta&lt;br /&gt;
 &lt;br /&gt;
figure(1)&lt;br /&gt;
hold on&lt;br /&gt;
plot(t,Ay) %concentración de C por euler&lt;br /&gt;
plot(t,y(2,:),'r') %concentración de D por euler&lt;br /&gt;
plot(t,Az,'k') %concentración de C por runge-kutta&lt;br /&gt;
plot(t,z(2,:),'g') %concentración de D por runge-kutta&lt;br /&gt;
legend('concentración de C por euler','concentración de D por euler','concentración de C por runge-kutta','concentración de D por runge-kutta','Location','best')&lt;br /&gt;
hold off&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:graficoa.jpeg|500px|miniaturadeimagen|center|Reacción compleja]]&lt;br /&gt;
&lt;br /&gt;
Se observa que en en los primeros instantes aumentan las concentraciones de &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; aumentan sus concentraciones. Antes de que pase 1 segundo, la concentración &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; alcanza un máximo (de unos 0.3 molar) y va disminuyendo progresivamente hasta alcanzar un valor de 0 molar. La concentración &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; sigue creciendo hasta llegar a 1 molar. Una vez que tanto &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; como &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; alcanzan estos valores, se estabiliza la reacción. &lt;br /&gt;
&lt;br /&gt;
Como hemos impuesto que la reacción &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; es más rápida que &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt;, se observa que &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; empieza creciendo más rápidamente, pero como reacciona más despacio que &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; su concentración disminuye progresivamente, mientras que la de &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; aumenta.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''CASO'''  &amp;lt;math&amp;gt;k_2=5  &amp;lt;/math&amp;gt;   '''h=0.3''' &lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
&lt;br /&gt;
%datos&lt;br /&gt;
y0=[0;0];&lt;br /&gt;
z0=[0;0];&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=10;&lt;br /&gt;
h=0.3;&lt;br /&gt;
 &lt;br /&gt;
%variable independiente t&lt;br /&gt;
t=t0:h:tN;&lt;br /&gt;
 &lt;br /&gt;
%matriz de las soluciones&lt;br /&gt;
y=zeros(2,length(t)); %euler&lt;br /&gt;
y(:,1)=y0;&lt;br /&gt;
 &lt;br /&gt;
z=zeros(2,length(t)); %runge-kutta&lt;br /&gt;
z(:,1)=y0;&lt;br /&gt;
 &lt;br /&gt;
for i=1:length(t)-1&lt;br /&gt;
 %euler&lt;br /&gt;
 y(:,i+1)=y(:,i)+h*[1*(3-y(1,i))*(1-y(1,i)); 5*(y(1,i)-y(2,i))];&lt;br /&gt;
 %runge-kutta&lt;br /&gt;
 K1=[1*(3-z(1,i))*(1-z(1,i)); 5*(z(1,i)-z(2,i))];&lt;br /&gt;
 K2=[1*(3-(z(1,i)+h/2*K1(1)))*(1-(z(1,i)+h/2*K1(1))); 5*((y(1,i)+h/2*K1(2))-(y(2,i)+h/2*K1(2)))];&lt;br /&gt;
 K3=[1*(3-(z(1,i)+h/2*K2(1)))*(1-(z(1,i)+h/2*K2(1))); 5*((y(1,i)+h/2*K2(2))-(y(2,i)+h/2*K2(2)))];&lt;br /&gt;
 K4=[1*(3-(z(1,i)+h*K3(1)))*(1-(z(1,i)+h*K3(1))); 5*((y(1,i)+h*K3(2))-(y(2,i)+h*K3(2)))];&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;
% se calcula la concentración de C=y1t)-y2(t)&lt;br /&gt;
Ay=y(1,:)-y(2,:); %euler&lt;br /&gt;
Az=z(1,:)-z(2,:); %runge-kutta&lt;br /&gt;
 &lt;br /&gt;
figure(1)&lt;br /&gt;
hold on&lt;br /&gt;
plot(t,Ay) %concentración de C por euler&lt;br /&gt;
plot(t,y(2,:),'r') %concentración de D por euler&lt;br /&gt;
plot(t,Az,'k') %concentración de C por runge-kutta&lt;br /&gt;
plot(t,z(2,:),'g') %concentración de D por runge-kutta&lt;br /&gt;
legend('concentración de C por euler','concentración de D por euler','concentración de C por runge-kutta','concentración de D por runge-kutta','Location','best')&lt;br /&gt;
hold off&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:graficob.jpeg|500px|miniaturadeimagen|center|Reacción compleja]]&lt;br /&gt;
&lt;br /&gt;
Repetimos el programa pero para un tamaño de paso mayor, de '''h=0.3''', y observamos que no  es suficientemente preciso, sobre todo al principio, no se puede analizar bien lo que está pasando en la reacción.&lt;br /&gt;
&lt;br /&gt;
==La reacción D es más lenta que la reacción C==&lt;br /&gt;
&lt;br /&gt;
CASO  &amp;lt;math&amp;gt;k_1 &amp;lt;/math&amp;gt;=1,   &amp;lt;math&amp;gt;k_2 &amp;lt;/math&amp;gt;=1/5&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
&lt;br /&gt;
%datos&lt;br /&gt;
y0=[0;0];&lt;br /&gt;
z0=[0;0];&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;
%matriz de las soluciones&lt;br /&gt;
y=zeros(2,length(t)); %euler&lt;br /&gt;
y(:,1)=y0;&lt;br /&gt;
 &lt;br /&gt;
z=zeros(2,length(t)); %runge-kutta&lt;br /&gt;
z(:,1)=y0;&lt;br /&gt;
 &lt;br /&gt;
for i=1:length(t)-1&lt;br /&gt;
 %euler&lt;br /&gt;
 y(:,i+1)=y(:,i)+h*[1*(3-y(1,i))*(1-y(1,i)); 1/5*(y(1,i)-y(2,i))];&lt;br /&gt;
 %runge-kutta&lt;br /&gt;
 K1=[1*(3-z(1,i))*(1-z(1,i)); 1/5*(z(1,i)-z(2,i))];&lt;br /&gt;
 K2=[1*(3-(z(1,i)+h/2*K1(1)))*(1-(z(1,i)+h/2*K1(1))); 1/5*((y(1,i)+h/2*K1(2))-(y(2,i)+h/2*K1(2)))];&lt;br /&gt;
 K3=[1*(3-(z(1,i)+h/2*K2(1)))*(1-(z(1,i)+h/2*K2(1))); 1/5*((y(1,i)+h/2*K2(2))-(y(2,i)+h/2*K2(2)))];&lt;br /&gt;
 K4=[1*(3-(z(1,i)+h*K3(1)))*(1-(z(1,i)+h*K3(1))); 1/5*((y(1,i)+h*K3(2))-(y(2,i)+h*K3(2)))];&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;
% se calcula la concentración de C=y1t)-y2(t)&lt;br /&gt;
Ay=y(1,:)-y(2,:); %euler&lt;br /&gt;
Az=z(1,:)-z(2,:); %runge-kutta&lt;br /&gt;
 &lt;br /&gt;
figure(1)&lt;br /&gt;
hold on&lt;br /&gt;
plot(t,Ay) %concentración de C por euler&lt;br /&gt;
plot(t,y(2,:),'r') %concentración de D por euler&lt;br /&gt;
plot(t,Az,'k') %concentración de C por runge-kutta&lt;br /&gt;
plot(t,z(2,:),'g') %concentración de D por runge-kutta&lt;br /&gt;
legend('concentración de C por euler','concentración de D por euler','concentración de C por runge-kutta','concentración de D por runge-kutta','Location','best')&lt;br /&gt;
hold off&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:graficoc.jpeg|500px|miniaturadeimagen|center|Reacción compleja]]&lt;br /&gt;
&lt;br /&gt;
Si ahora imponemos que la reacción  &amp;lt;math&amp;gt;C &amp;lt;/math&amp;gt; es más rápida que  &amp;lt;math&amp;gt;D &amp;lt;/math&amp;gt;, obtenemos lo siguiente. Se parece a la gráfica que obtuvimos en el programa anterior, pero  más extendida en el tiempo, más lenta.  &amp;lt;math&amp;gt;C &amp;lt;/math&amp;gt; alcanza una concentración máxima de unos 0.8 molar antes de empezar a decrecer a medida que avanza el tiempo y acercándose a un valor de '''0''' molar.  &amp;lt;math&amp;gt;D &amp;lt;/math&amp;gt; crece más lentamente que en la gráfica anterior, pero se aproxima al mismo valor, '''1''' molar.&lt;br /&gt;
Se observa que aunque hagamos la reacción  &amp;lt;math&amp;gt;C &amp;lt;/math&amp;gt; más rápida, tenemos las mismas concentraciones finales, pero tardan más tiempo en obtenerse, ya que la reacción tarda más en estabilizarse.&lt;br /&gt;
&lt;br /&gt;
&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>Joseva</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Reacciones_complejas_(Grupo_D1)&amp;diff=27157</id>
		<title>Reacciones complejas (Grupo D1)</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Reacciones_complejas_(Grupo_D1)&amp;diff=27157"/>
				<updated>2015-03-05T22:56:40Z</updated>
		
		<summary type="html">&lt;p&gt;Joseva: /* Método del Trapecio y Método de Runge-Kutta */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{ TrabajoED | Reacciones complejas (Grupo D1) | [[:Categoría:Ecuaciones Diferenciales|Ecuaciones Diferenciales]]|[[:Categoría:ED14/15|Curso 2014-15]] | Rincón Crespo, Kevin&lt;br /&gt;
&lt;br /&gt;
Rodríguez Gómez, Javier&lt;br /&gt;
&lt;br /&gt;
Sans Jiménez, Alejandro&lt;br /&gt;
&lt;br /&gt;
Sesto Muñoz, María Victoria&lt;br /&gt;
&lt;br /&gt;
Vallejo Asín, José Manuel &lt;br /&gt;
&lt;br /&gt;
Villarino Redondo, Álvaro }}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=Introducción=&lt;br /&gt;
Se considera una reacción química irreversible en una solución bien mezclada. Supondremos que la reacción ocurre para un volumen y temperatura constantes. Al inicio se encuentran dos reactivos A y B, que van formando un producto C en lo que se conoce como una reacción bimolecular, es decir, una molécula de A y una de B producen una de C, &lt;br /&gt;
                                                                     &amp;lt;math&amp;gt;A + B → C&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Supondremos también que se satisface la ley de acción de masas, que establece que la velocidad de reacción es proporcional al producto de las concentraciones de los reactivos.&lt;br /&gt;
&lt;br /&gt;
=Concentración del reactivo C a lo largo del tiempo=&lt;br /&gt;
En primer lugar, suponiendo que la reacción es irreversible, es decir, que C no puede volver a formar A y B, se puede expresar la situación mediante el siguiente problema de valor inicial, cuando t&amp;gt;0:&lt;br /&gt;
   &amp;lt;math&amp;gt;&lt;br /&gt;
   \left . &lt;br /&gt;
      \begin{matrix} &lt;br /&gt;
         y'(t)={k_{1}}({a_{0}}-y(t))({b_{0}}-y(t))=0\\&lt;br /&gt;
         y(0)=0&lt;br /&gt;
      \end{matrix}&lt;br /&gt;
   \right \}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Donde &amp;lt;math&amp;gt; {a_{0}}&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;{b_{0}}&amp;lt;/math&amp;gt; representan las concentraciones iniciales de '''A''' y '''B''' respectivamente y &amp;lt;math&amp;gt;{k_{1}}&amp;lt;/math&amp;gt; es la constante de proporcionalidad que indica la ley de acción de masas. &amp;lt;math&amp;gt;y’(t)&amp;lt;/math&amp;gt; representa la velocidad de reacción, es decir, la velocidad con que se forma el producto &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; ; mientras que la solución de la ecuación diferencial, &amp;lt;math&amp;gt;y(t)&amp;lt;/math&amp;gt; , representa la concentración de &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt;, la cantidad de compuesto que se ha formado. Para comprobar que la solución de este problema de Cauchy es única, comenzamos definiendo:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;math&amp;gt;f(t,y)={k_{1}}({a_{0}}-y(t))({b_{0}}-y(t))=0,   t&amp;gt;0 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Observamos que &amp;lt;math&amp;gt;f(t,y)&amp;lt;/math&amp;gt; es continua en el intervalo &amp;lt;math&amp;gt; I=(0,∞)∩B((0,0),r&amp;gt;0)&amp;lt;/math&amp;gt;, por lo que ya aseguramos la existencia de al menos una solución. Examinando la derivada parcial:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\frac{∂f}{∂y}=k_1(-a_0-b_0+2y)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Se deduce que al ser un polinomio no va a haber problemas de continuidad para ninguna bola. De esta forma, podemos asegurar que existe una única solución.&lt;br /&gt;
&lt;br /&gt;
==Concentración del reactivo C a lo largo del tiempo en un proceso reversible==&lt;br /&gt;
&lt;br /&gt;
Ahora bien, ¿qué pasaría si la reacción fuese reversible? Con esto lo que queremos indicar es que además de formarse  &amp;lt;math&amp;gt;C &amp;lt;/math&amp;gt;, este también se descompone de nuevo en  &amp;lt;math&amp;gt;A &amp;lt;/math&amp;gt; y  &amp;lt;math&amp;gt;B &amp;lt;/math&amp;gt;. Por lo tanto, nos quedaría una ecuación diferencial con la siguiente forma, cuando &amp;lt;math&amp;gt;t&amp;gt;0 &amp;lt;/math&amp;gt; :&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; y'(t)={k_{1}}({a_{0}}-y(t))({b_{0}}-y(t))-Cy(t)&amp;lt;/math&amp;gt;  &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Si nos fijamos, la modificación es sencillamente restar  &amp;lt;math&amp;gt;y(t) &amp;lt;/math&amp;gt; multiplicada por una constante, la cual refleja qué porcentaje de  &amp;lt;math&amp;gt;C &amp;lt;/math&amp;gt; se va descomponiendo a medida que se da, simultáneamente, la reacción  &amp;lt;math&amp;gt;A + B → C &amp;lt;/math&amp;gt;. Sin embargo, esta constante no puede tener cualquier valor, ya que en una reacción se cumple la conservación de masa. Por ello, a  &amp;lt;math&amp;gt;C &amp;lt;/math&amp;gt; le asociaremos el siguiente dominio:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;C∈(0,1)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Obsérvese que  &amp;lt;math&amp;gt;C &amp;lt;/math&amp;gt; tiene que ser mayor que 0 para que sea reversible, pero al mismo tiempo inferior que 1, ya que si no se estaría descomponiendo más compuesto  &amp;lt;math&amp;gt;C &amp;lt;/math&amp;gt; del que realmente se ha formado, en otras palabras, estaría apareciendo masa de la nada.&lt;br /&gt;
&lt;br /&gt;
=Método de Euler=&lt;br /&gt;
&lt;br /&gt;
Una vez llegados a este punto, se procede a ver una interpretación gráfica de la reacción. Para ello, se refleja en la gráfica (en un intervalo de 2 segundos), cómo varían las concentraciones tanto de &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt; (&amp;lt;math&amp;gt;a_0&amp;lt;/math&amp;gt;=3 mol/L) y &amp;lt;math&amp;gt;B&amp;lt;/math&amp;gt; (&amp;lt;math&amp;gt;b_0&amp;lt;/math&amp;gt;=1 mol/L) como de &amp;lt;math&amp;gt; C&amp;lt;/math&amp;gt;, para una &amp;lt;math&amp;gt;k_1&amp;lt;/math&amp;gt;=1 mol/s. Se comienza, por el momento, aplicando el método de Euler. Posteriormente se utilizarán métodos más precisos.&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo= &lt;br /&gt;
% Euler&lt;br /&gt;
clear all&lt;br /&gt;
% datos del problema&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=2;&lt;br /&gt;
y0=0;&lt;br /&gt;
h=0.1;&lt;br /&gt;
k1=1;&lt;br /&gt;
a0=3;&lt;br /&gt;
b0=1;&lt;br /&gt;
% Definimos la variable independiente&lt;br /&gt;
t=t0:h:tN;&lt;br /&gt;
% Guardamos los valores de la solución aproximada en el vector &amp;quot;y1&amp;quot; y&lt;br /&gt;
% establecemos los vectores de concentraciones A y B&lt;br /&gt;
y1=zeros(1,length(t)); &lt;br /&gt;
y1(1)=y0;&lt;br /&gt;
a1=zeros(1,length(t));&lt;br /&gt;
a1(1)=a0;&lt;br /&gt;
b1=zeros(1,length(t));&lt;br /&gt;
b1(1)=b0;&lt;br /&gt;
% A continuación, calculamos las componentes de los vectores y1, a y b&lt;br /&gt;
for i=1:length(t)-1&lt;br /&gt;
    y1(i+1)=y1(i)+h*(k1*(a0-y1(i))*(b0-y1(i)));    %Euler&lt;br /&gt;
    a1(i+1)=a0-y1(i+1); % evolución de la concentración de A&lt;br /&gt;
    b1(i+1)=b0-y1(i+1); % evolución de la concentración de B&lt;br /&gt;
end&lt;br /&gt;
%grafico &lt;br /&gt;
figure(1)&lt;br /&gt;
hold on&lt;br /&gt;
plot(t,y1,'g')&lt;br /&gt;
plot(t,a1,'r')&lt;br /&gt;
plot(t,b1,'b')&lt;br /&gt;
legend('concentración de C','concentración de A','concentración de B','location','best')&lt;br /&gt;
hold off &lt;br /&gt;
%en verde se muestra la concentración de C, en rojo la de A, y en azul la de B&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Archivo:3euler.jpeg|500px|miniaturadeimagen|center|Reacción compleja]]&lt;br /&gt;
&lt;br /&gt;
Aunque con observar los resultados ya podemos decir con casi absoluta seguridad cuáles son los límites de las concentraciones de cada reactivo &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;B&amp;lt;/math&amp;gt; y del producto &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt;, se ha diseñado un programa que, mediante diferencia de valores sucesivos de la variable &amp;lt;math&amp;gt;y(t)&amp;lt;/math&amp;gt;, nos devuelve el valor de la función cuando dicha diferencia es muy pequeña '''(se ha puesto una diferencia de 0.001)''', es decir, cuando tenemos una asíntota al tender &amp;lt;math&amp;gt;t→∞&amp;lt;/math&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
%Estudio de las asíntotas&lt;br /&gt;
t1=t0:h:10;%se aumenta la longitud de t, y se estima que se alcanzarán las asíntotas antes de t=10&lt;br /&gt;
y_=zeros(1,length(t1)); %se define un vector y_ idéntico a y1 pero con t hasta 10&lt;br /&gt;
a_=y_;&lt;br /&gt;
b_=y_;&lt;br /&gt;
y_(1)=y0;&lt;br /&gt;
a_(1)=a0;&lt;br /&gt;
b_(1)=b0;&lt;br /&gt;
for i=1:length(t1)-1&lt;br /&gt;
    y_(i+1)=y_(i)+h*(k1*(a0-y_(i))*(b0-y_(i)));&lt;br /&gt;
    diferencia=y_(i+1)-y_(i);&lt;br /&gt;
    if abs(diferencia)&amp;lt;=0.001&lt;br /&gt;
        limiteC=y_(i+1)&lt;br /&gt;
        break&lt;br /&gt;
    end&lt;br /&gt;
end&lt;br /&gt;
for i=1:length(t1)-1&lt;br /&gt;
    y_(i+1)=y_(i)+h*(k1*(a0-y_(i))*(b0-y_(i)));    &lt;br /&gt;
    a_(i+1)=a0-y_(i+1);&lt;br /&gt;
    diferencia2=a_(i+1)-a_(i);&lt;br /&gt;
    if abs(diferencia2)&amp;lt;=0.001&lt;br /&gt;
        limiteA=a_(i+1)&lt;br /&gt;
        break&lt;br /&gt;
    end&lt;br /&gt;
end&lt;br /&gt;
for i=1:length(t1)-1&lt;br /&gt;
    y_(i+1)=y_(i)+h*(k1*(a0-y_(i))*(b0-y_(i)));    &lt;br /&gt;
    b_(i+1)=b0-y_(i+1);&lt;br /&gt;
    diferencia3=b_(i+1)-b_(i);&lt;br /&gt;
    if abs(diferencia3)&amp;lt;=0.001&lt;br /&gt;
        limiteB=b_(i+1)&lt;br /&gt;
        break&lt;br /&gt;
    end&lt;br /&gt;
end&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
Que nos devuelve unos valores de las concentraciones para el límite de:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\lim A=2,0036≈2 mol/L&amp;lt;/math&amp;gt;:     &lt;br /&gt;
&amp;lt;math&amp;gt;\lim B=0,0036≈0mol/L&amp;lt;/math&amp;gt;:         &lt;br /&gt;
&amp;lt;math&amp;gt;\lim C=0,9964≈1mol/L&amp;lt;/math&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
Lo cual es lógico, ya que &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;B&amp;lt;/math&amp;gt; se combinan en una proporción de 1:1, luego &amp;lt;math&amp;gt;B&amp;lt;/math&amp;gt;, que tiene una concentración inicial de &amp;lt;math&amp;gt;b_0&amp;lt;/math&amp;gt;=1, será el reactivo limitante (el que desaparecerá por completo), mientras que &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt;, con &amp;lt;math&amp;gt;a_0&amp;lt;/math&amp;gt;=3, acabará con una concentración molar final igual a 2, y &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt;, del que no habia nada,alcanza una concentraccion de &amp;lt;math&amp;gt;1mol/L&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
= Método del Trapecio y Método de Runge-Kutta=&lt;br /&gt;
&lt;br /&gt;
A continuación, para obtener con más precisión las representaciones gráficas de las respectivas concentraciones, se opta por utilizar los métodos de los &amp;lt;math&amp;gt;Trapecios&amp;lt;/math&amp;gt; (segundo orden) y de &amp;lt;math&amp;gt;Runge-Kutta&amp;lt;/math&amp;gt; (cuarto orden). Desgraciadamente, no es posible comparar los errores cometidos por cada método con la expresión real de la concentración de C, ya que la ecuación diferencial no es de fácil resolución analítica, luego resulta imposible alcanzar una expresión explícita de la concentración en términos de nuestros datos conocidos; &amp;lt;math&amp;gt;a_0&amp;lt;/math&amp;gt;,&amp;lt;math&amp;gt;b_0&amp;lt;/math&amp;gt;,&amp;lt;math&amp;gt;k_1&amp;lt;/math&amp;gt;,&amp;lt;math&amp;gt;t (tiempo)&amp;lt;/math&amp;gt;.  Sin embargo, podemos confiar con bastante seguridad en el método sobre todo de &amp;lt;math&amp;gt;Runge-Kutta&amp;lt;/math&amp;gt;, debido a su cuarto orden. &lt;br /&gt;
&lt;br /&gt;
Para los trapecios, al ser un método implícito, es necesario despejar la componente &amp;lt;math&amp;gt;y_{n+1}&amp;lt;/math&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;y_{n+1}=\frac{(1+\frac{h}{2}*k_1*(a_0+b_0))-\sqrt{(1+\frac{h}{2}*k_1*(a_0+b_0))^2 }}{}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Cabe destacar que este programa parte de los datos ya establecidos en el programa de Euler para '''t0, tN, y0, a0, b0, k1 y h''':&lt;br /&gt;
{{matlab|codigo= &lt;br /&gt;
%Trapecios&lt;br /&gt;
y2=zeros(1,length(t)); &lt;br /&gt;
a2=y2;&lt;br /&gt;
b2=y2;&lt;br /&gt;
y2(1)=y0;&lt;br /&gt;
a2(1)=a0;&lt;br /&gt;
b2(1)=b0;&lt;br /&gt;
for i=1:length(t)-1&lt;br /&gt;
    y2(i+1)=((1+0.5*h*k1*(a0+b0))-sqrt((1+0.5*h*k1*(a0+b0))^2-2*h*k1*(y2(i)+0.5*h*k1*(a0-y2(i))*(b0-y2(i))+0.5*h*k1*a0*b0)))/(k1*h);&lt;br /&gt;
    a2(i+1)=a0-y2(i+1);&lt;br /&gt;
    b2(i+1)=b0-y2(i+1);&lt;br /&gt;
end&lt;br /&gt;
 &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
%Runge-Kutta&lt;br /&gt;
y3=zeros(1,length(t)); &lt;br /&gt;
a3=y3;&lt;br /&gt;
b3=y3;&lt;br /&gt;
y3(1)=y0;&lt;br /&gt;
a3(1)=a0;&lt;br /&gt;
b3(1)=b0;&lt;br /&gt;
for i=1:length(t)-1 &lt;br /&gt;
    r1=k1*(a0-y3(i))*(b0-y3(i));&lt;br /&gt;
    r2=k1*(a0-y3(i)-0.5*r1*h)*(b0-y3(i)-0.5*r1*h);&lt;br /&gt;
    r3=k1*(a0-y3(i)-0.5*r2*h)*(b0-y3(i)-0.5*r2*h);&lt;br /&gt;
    r4=k1*(a0-y3(i)-r3*h)*(b0-y3(i)-r3*h);&lt;br /&gt;
    y3(i+1)=y3(i)+h/6*(r1+2*r2+2*r3+r4);&lt;br /&gt;
    a3(i+1)=a0-y3(i+1);&lt;br /&gt;
    b3(i+1)=b0-y3(i+1);&lt;br /&gt;
end&lt;br /&gt;
%se pintan las dos, en azul las soluciones de los Trapecios, y en negro las&lt;br /&gt;
%de Runge-Kutta. &lt;br /&gt;
figure(2)&lt;br /&gt;
hold on&lt;br /&gt;
plot(t,y2)&lt;br /&gt;
plot(t,a2)&lt;br /&gt;
plot(t,b2)&lt;br /&gt;
plot(t,y3,'k')&lt;br /&gt;
plot(t,a3,'k')&lt;br /&gt;
plot(t,b3,'k')&lt;br /&gt;
hold off&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
Que proporciona el resultado que se puede observar en la primera gráfica adjunta. Como podemos ver, es prácticamente indistinguible una gráfica de la otra. Sin embargo, si la juntamos con las gráficas proporcionadas por el método de Euler, que se representa ahora en rojo, la diferencia es palpable (ver gráfica 2), lo cual evidencia la peor precisión del método de Euler.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:4trapeciokung.jpeg|500px|miniaturadeimagen|center|Reacción compleja]]&lt;br /&gt;
&lt;br /&gt;
[[Archivo:4comparacion.jpeg|500px|miniaturadeimagen|center|Gráfico 2]]&lt;br /&gt;
&lt;br /&gt;
=Reacción consecutiva=&lt;br /&gt;
&lt;br /&gt;
Consideremos ahora que se produce una reacción consecutiva de la forma: &lt;br /&gt;
&lt;br /&gt;
                                                                   &amp;lt;math&amp;gt;A + B → k_1C → k_2D&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
De tal modo que los reactivos &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;B&amp;lt;/math&amp;gt; se combinan en la proporción 1:1 para formar compuesto &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt;, el cual, a su vez, se va descomponiendo para formar compuesto &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt;. Al igual que se ha hecho antes al analizar las otras reacciones, se considerará que se cumple la ley de acción de masas. Es decir, la velocidad con la que se forma compuesto &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; es proporcional a las concentraciones existentes de &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt; y de &amp;lt;math&amp;gt;B&amp;lt;/math&amp;gt; y del mismo modo la de formación de la sustancia &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; lo es a la concentración de &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; que se ha ido formando.&lt;br /&gt;
&lt;br /&gt;
Esta reacción consecutiva está representada por el siguiente problema de valor inicial:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;&lt;br /&gt;
   \left . &lt;br /&gt;
      \begin{matrix} &lt;br /&gt;
         y'_1(t)={k_{1}}({a_{0}}-y_1(t))({b_{0}}-y_1(t))\\&lt;br /&gt;
         y'_2(t)={k_{2}}(y_1(t)-y_2(t))\\&lt;br /&gt;
y_1(0)=0\\y_2(0)=0&lt;br /&gt;
      \end{matrix}&lt;br /&gt;
   \right \}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
Donde &amp;lt;math&amp;gt;a_0&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;b_0&amp;lt;/math&amp;gt; representan las concentraciones iniciales de &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;B&amp;lt;/math&amp;gt; respectivamente, &amp;lt;math&amp;gt;k_1&amp;lt;/math&amp;gt; es la constante de proporcionalidad que rige la primera reacción y &amp;lt;math&amp;gt;k_2&amp;lt;/math&amp;gt; la que rige la segunda reacción o reacción consecutiva. &amp;lt;math&amp;gt;y_1’(t)&amp;lt;/math&amp;gt; e  &amp;lt;math&amp;gt;y_2’(t)&amp;lt;/math&amp;gt; representan las velocidades de las reacciones, es decir, las velocidades con que se forman los productos &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt;. &amp;lt;math&amp;gt;y_2(t)&amp;lt;/math&amp;gt; representa la concentración del producto &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; pero es importante apreciar que en este caso &amp;lt;math&amp;gt;y_1(t)&amp;lt;/math&amp;gt; no nos da el valor de la concentración de &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; directamente, sino que ésta será &amp;lt;math&amp;gt;y_1(t)&amp;lt;/math&amp;gt;- &amp;lt;math&amp;gt;y_2(t)&amp;lt;/math&amp;gt;, la cantidad que se forma en la primera reacción menos la que se emplea para formar el producto &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; en la segunda.&lt;br /&gt;
&lt;br /&gt;
Este problema se va a resolver para dos casos diferentes. Uno en el cual se considera que la segunda reacción es más rápida que la primera, lo que supone tomar un valor de la constante &amp;lt;math&amp;gt;k_2&amp;lt;/math&amp;gt;  mayor que &amp;lt;math&amp;gt;k_1&amp;lt;/math&amp;gt;. Y otro en el cual se considera que es más lenta, lo que implica que &amp;lt;math&amp;gt;k_2&amp;lt;/math&amp;gt; es menor que &amp;lt;math&amp;gt;k_1&amp;lt;/math&amp;gt;. Concretamente vamos a tomar los siguientes valores para resolver el problema numéricamente; &amp;lt;math&amp;gt;a_0&amp;lt;/math&amp;gt;=3 ,  &amp;lt;math&amp;gt;b_0&amp;lt;/math&amp;gt;=1, &amp;lt;math&amp;gt;k_1&amp;lt;/math&amp;gt;=1,  &amp;lt;math&amp;gt;k_2&amp;lt;/math&amp;gt;=5, &amp;lt;math&amp;gt;k_2&amp;lt;/math&amp;gt;=1/5, .En ambos casos se resuelve para los primeros 10 segundos.&lt;br /&gt;
&lt;br /&gt;
==La reacción D es más rápida que la reacción C==&lt;br /&gt;
CASO    &amp;lt;math&amp;gt;k_1=5  &amp;lt;/math&amp;gt;   '''h=0.1''' &lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
&lt;br /&gt;
%datos&lt;br /&gt;
y0=[0;0];&lt;br /&gt;
z0=[0;0];&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;
%matriz de las soluciones&lt;br /&gt;
y=zeros(2,length(t)); %euler&lt;br /&gt;
y(:,1)=y0;&lt;br /&gt;
 &lt;br /&gt;
z=zeros(2,length(t)); %runge-kutta&lt;br /&gt;
z(:,1)=y0;&lt;br /&gt;
 &lt;br /&gt;
for i=1:length(t)-1&lt;br /&gt;
 %euler&lt;br /&gt;
 y(:,i+1)=y(:,i)+h*[1*(3-y(1,i))*(1-y(1,i)); 5*(y(1,i)-y(2,i))];&lt;br /&gt;
 %runge-kutta&lt;br /&gt;
 K1=[1*(3-z(1,i))*(1-z(1,i)); 5*(z(1,i)-z(2,i))];&lt;br /&gt;
 K2=[1*(3-(z(1,i)+h/2*K1(1)))*(1-(z(1,i)+h/2*K1(1))); 5*((y(1,i)+h/2*K1(2))-(y(2,i)+h/2*K1(2)))];&lt;br /&gt;
 K3=[1*(3-(z(1,i)+h/2*K2(1)))*(1-(z(1,i)+h/2*K2(1))); 5*((y(1,i)+h/2*K2(2))-(y(2,i)+h/2*K2(2)))];&lt;br /&gt;
 K4=[1*(3-(z(1,i)+h*K3(1)))*(1-(z(1,i)+h*K3(1))); 5*((y(1,i)+h*K3(2))-(y(2,i)+h*K3(2)))];&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;
% se calcula la concentración de C=y1t)-y2(t)&lt;br /&gt;
Ay=y(1,:)-y(2,:); %euler&lt;br /&gt;
Az=z(1,:)-z(2,:); %runge-kutta&lt;br /&gt;
 &lt;br /&gt;
figure(1)&lt;br /&gt;
hold on&lt;br /&gt;
plot(t,Ay) %concentración de C por euler&lt;br /&gt;
plot(t,y(2,:),'r') %concentración de D por euler&lt;br /&gt;
plot(t,Az,'k') %concentración de C por runge-kutta&lt;br /&gt;
plot(t,z(2,:),'g') %concentración de D por runge-kutta&lt;br /&gt;
legend('concentración de C por euler','concentración de D por euler','concentración de C por runge-kutta','concentración de D por runge-kutta','Location','best')&lt;br /&gt;
hold off&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:graficoa.jpeg|500px|miniaturadeimagen|center|Reacción compleja]]&lt;br /&gt;
&lt;br /&gt;
Se observa que en en los primeros instantes aumentan las concentraciones de &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; aumentan sus concentraciones. Antes de que pase 1 segundo, la concentración &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; alcanza un máximo (de unos 0.3 molar) y va disminuyendo progresivamente hasta alcanzar un valor de 0 molar. La concentración &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; sigue creciendo hasta llegar a 1 molar. Una vez que tanto &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; como &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; alcanzan estos valores, se estabiliza la reacción. &lt;br /&gt;
&lt;br /&gt;
Como hemos impuesto que la reacción &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; es más rápida que &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt;, se observa que &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; empieza creciendo más rápidamente, pero como reacciona más despacio que &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; su concentración disminuye progresivamente, mientras que la de &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; aumenta.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''CASO'''  &amp;lt;math&amp;gt;k_2=5  &amp;lt;/math&amp;gt;   '''h=0.3''' &lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
&lt;br /&gt;
%datos&lt;br /&gt;
y0=[0;0];&lt;br /&gt;
z0=[0;0];&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=10;&lt;br /&gt;
h=0.3;&lt;br /&gt;
 &lt;br /&gt;
%variable independiente t&lt;br /&gt;
t=t0:h:tN;&lt;br /&gt;
 &lt;br /&gt;
%matriz de las soluciones&lt;br /&gt;
y=zeros(2,length(t)); %euler&lt;br /&gt;
y(:,1)=y0;&lt;br /&gt;
 &lt;br /&gt;
z=zeros(2,length(t)); %runge-kutta&lt;br /&gt;
z(:,1)=y0;&lt;br /&gt;
 &lt;br /&gt;
for i=1:length(t)-1&lt;br /&gt;
 %euler&lt;br /&gt;
 y(:,i+1)=y(:,i)+h*[1*(3-y(1,i))*(1-y(1,i)); 5*(y(1,i)-y(2,i))];&lt;br /&gt;
 %runge-kutta&lt;br /&gt;
 K1=[1*(3-z(1,i))*(1-z(1,i)); 5*(z(1,i)-z(2,i))];&lt;br /&gt;
 K2=[1*(3-(z(1,i)+h/2*K1(1)))*(1-(z(1,i)+h/2*K1(1))); 5*((y(1,i)+h/2*K1(2))-(y(2,i)+h/2*K1(2)))];&lt;br /&gt;
 K3=[1*(3-(z(1,i)+h/2*K2(1)))*(1-(z(1,i)+h/2*K2(1))); 5*((y(1,i)+h/2*K2(2))-(y(2,i)+h/2*K2(2)))];&lt;br /&gt;
 K4=[1*(3-(z(1,i)+h*K3(1)))*(1-(z(1,i)+h*K3(1))); 5*((y(1,i)+h*K3(2))-(y(2,i)+h*K3(2)))];&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;
% se calcula la concentración de C=y1t)-y2(t)&lt;br /&gt;
Ay=y(1,:)-y(2,:); %euler&lt;br /&gt;
Az=z(1,:)-z(2,:); %runge-kutta&lt;br /&gt;
 &lt;br /&gt;
figure(1)&lt;br /&gt;
hold on&lt;br /&gt;
plot(t,Ay) %concentración de C por euler&lt;br /&gt;
plot(t,y(2,:),'r') %concentración de D por euler&lt;br /&gt;
plot(t,Az,'k') %concentración de C por runge-kutta&lt;br /&gt;
plot(t,z(2,:),'g') %concentración de D por runge-kutta&lt;br /&gt;
legend('concentración de C por euler','concentración de D por euler','concentración de C por runge-kutta','concentración de D por runge-kutta','Location','best')&lt;br /&gt;
hold off&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:graficob.jpeg|500px|miniaturadeimagen|center|Reacción compleja]]&lt;br /&gt;
&lt;br /&gt;
Repetimos el programa pero para un tamaño de paso mayor, de '''h=0.3''', y observamos que no  es suficientemente preciso, sobre todo al principio, no se puede analizar bien lo que está pasando en la reacción.&lt;br /&gt;
&lt;br /&gt;
==La reacción D es más lenta que la reacción C==&lt;br /&gt;
&lt;br /&gt;
CASO  &amp;lt;math&amp;gt;k_1 &amp;lt;/math&amp;gt;=1,   &amp;lt;math&amp;gt;k_2 &amp;lt;/math&amp;gt;=1/5&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
&lt;br /&gt;
%datos&lt;br /&gt;
y0=[0;0];&lt;br /&gt;
z0=[0;0];&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;
%matriz de las soluciones&lt;br /&gt;
y=zeros(2,length(t)); %euler&lt;br /&gt;
y(:,1)=y0;&lt;br /&gt;
 &lt;br /&gt;
z=zeros(2,length(t)); %runge-kutta&lt;br /&gt;
z(:,1)=y0;&lt;br /&gt;
 &lt;br /&gt;
for i=1:length(t)-1&lt;br /&gt;
 %euler&lt;br /&gt;
 y(:,i+1)=y(:,i)+h*[1*(3-y(1,i))*(1-y(1,i)); 1/5*(y(1,i)-y(2,i))];&lt;br /&gt;
 %runge-kutta&lt;br /&gt;
 K1=[1*(3-z(1,i))*(1-z(1,i)); 1/5*(z(1,i)-z(2,i))];&lt;br /&gt;
 K2=[1*(3-(z(1,i)+h/2*K1(1)))*(1-(z(1,i)+h/2*K1(1))); 1/5*((y(1,i)+h/2*K1(2))-(y(2,i)+h/2*K1(2)))];&lt;br /&gt;
 K3=[1*(3-(z(1,i)+h/2*K2(1)))*(1-(z(1,i)+h/2*K2(1))); 1/5*((y(1,i)+h/2*K2(2))-(y(2,i)+h/2*K2(2)))];&lt;br /&gt;
 K4=[1*(3-(z(1,i)+h*K3(1)))*(1-(z(1,i)+h*K3(1))); 1/5*((y(1,i)+h*K3(2))-(y(2,i)+h*K3(2)))];&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;
% se calcula la concentración de C=y1t)-y2(t)&lt;br /&gt;
Ay=y(1,:)-y(2,:); %euler&lt;br /&gt;
Az=z(1,:)-z(2,:); %runge-kutta&lt;br /&gt;
 &lt;br /&gt;
figure(1)&lt;br /&gt;
hold on&lt;br /&gt;
plot(t,Ay) %concentración de C por euler&lt;br /&gt;
plot(t,y(2,:),'r') %concentración de D por euler&lt;br /&gt;
plot(t,Az,'k') %concentración de C por runge-kutta&lt;br /&gt;
plot(t,z(2,:),'g') %concentración de D por runge-kutta&lt;br /&gt;
legend('concentración de C por euler','concentración de D por euler','concentración de C por runge-kutta','concentración de D por runge-kutta','Location','best')&lt;br /&gt;
hold off&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:graficoc.jpeg|500px|miniaturadeimagen|center|Reacción compleja]]&lt;br /&gt;
&lt;br /&gt;
Si ahora imponemos que la reacción  &amp;lt;math&amp;gt;C &amp;lt;/math&amp;gt; es más rápida que  &amp;lt;math&amp;gt;D &amp;lt;/math&amp;gt;, obtenemos lo siguiente. Se parece a la gráfica que obtuvimos en el programa anterior, pero  más extendida en el tiempo, más lenta.  &amp;lt;math&amp;gt;C &amp;lt;/math&amp;gt; alcanza una concentración máxima de unos 0.8 molar antes de empezar a decrecer a medida que avanza el tiempo y acercándose a un valor de '''0''' molar.  &amp;lt;math&amp;gt;D &amp;lt;/math&amp;gt; crece más lentamente que en la gráfica anterior, pero se aproxima al mismo valor, '''1''' molar.&lt;br /&gt;
Se observa que aunque hagamos la reacción  &amp;lt;math&amp;gt;C &amp;lt;/math&amp;gt; más rápida, tenemos las mismas concentraciones finales, pero tardan más tiempo en obtenerse, ya que la reacción tarda más en estabilizarse.&lt;br /&gt;
&lt;br /&gt;
&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>Joseva</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Reacciones_complejas_(Grupo_D1)&amp;diff=27156</id>
		<title>Reacciones complejas (Grupo D1)</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Reacciones_complejas_(Grupo_D1)&amp;diff=27156"/>
				<updated>2015-03-05T22:56:16Z</updated>
		
		<summary type="html">&lt;p&gt;Joseva: /* Método del Trapecio y Método de Runge-Kutta */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{ TrabajoED | Reacciones complejas (Grupo D1) | [[:Categoría:Ecuaciones Diferenciales|Ecuaciones Diferenciales]]|[[:Categoría:ED14/15|Curso 2014-15]] | Rincón Crespo, Kevin&lt;br /&gt;
&lt;br /&gt;
Rodríguez Gómez, Javier&lt;br /&gt;
&lt;br /&gt;
Sans Jiménez, Alejandro&lt;br /&gt;
&lt;br /&gt;
Sesto Muñoz, María Victoria&lt;br /&gt;
&lt;br /&gt;
Vallejo Asín, José Manuel &lt;br /&gt;
&lt;br /&gt;
Villarino Redondo, Álvaro }}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=Introducción=&lt;br /&gt;
Se considera una reacción química irreversible en una solución bien mezclada. Supondremos que la reacción ocurre para un volumen y temperatura constantes. Al inicio se encuentran dos reactivos A y B, que van formando un producto C en lo que se conoce como una reacción bimolecular, es decir, una molécula de A y una de B producen una de C, &lt;br /&gt;
                                                                     &amp;lt;math&amp;gt;A + B → C&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Supondremos también que se satisface la ley de acción de masas, que establece que la velocidad de reacción es proporcional al producto de las concentraciones de los reactivos.&lt;br /&gt;
&lt;br /&gt;
=Concentración del reactivo C a lo largo del tiempo=&lt;br /&gt;
En primer lugar, suponiendo que la reacción es irreversible, es decir, que C no puede volver a formar A y B, se puede expresar la situación mediante el siguiente problema de valor inicial, cuando t&amp;gt;0:&lt;br /&gt;
   &amp;lt;math&amp;gt;&lt;br /&gt;
   \left . &lt;br /&gt;
      \begin{matrix} &lt;br /&gt;
         y'(t)={k_{1}}({a_{0}}-y(t))({b_{0}}-y(t))=0\\&lt;br /&gt;
         y(0)=0&lt;br /&gt;
      \end{matrix}&lt;br /&gt;
   \right \}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Donde &amp;lt;math&amp;gt; {a_{0}}&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;{b_{0}}&amp;lt;/math&amp;gt; representan las concentraciones iniciales de '''A''' y '''B''' respectivamente y &amp;lt;math&amp;gt;{k_{1}}&amp;lt;/math&amp;gt; es la constante de proporcionalidad que indica la ley de acción de masas. &amp;lt;math&amp;gt;y’(t)&amp;lt;/math&amp;gt; representa la velocidad de reacción, es decir, la velocidad con que se forma el producto &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; ; mientras que la solución de la ecuación diferencial, &amp;lt;math&amp;gt;y(t)&amp;lt;/math&amp;gt; , representa la concentración de &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt;, la cantidad de compuesto que se ha formado. Para comprobar que la solución de este problema de Cauchy es única, comenzamos definiendo:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;math&amp;gt;f(t,y)={k_{1}}({a_{0}}-y(t))({b_{0}}-y(t))=0,   t&amp;gt;0 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Observamos que &amp;lt;math&amp;gt;f(t,y)&amp;lt;/math&amp;gt; es continua en el intervalo &amp;lt;math&amp;gt; I=(0,∞)∩B((0,0),r&amp;gt;0)&amp;lt;/math&amp;gt;, por lo que ya aseguramos la existencia de al menos una solución. Examinando la derivada parcial:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\frac{∂f}{∂y}=k_1(-a_0-b_0+2y)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Se deduce que al ser un polinomio no va a haber problemas de continuidad para ninguna bola. De esta forma, podemos asegurar que existe una única solución.&lt;br /&gt;
&lt;br /&gt;
==Concentración del reactivo C a lo largo del tiempo en un proceso reversible==&lt;br /&gt;
&lt;br /&gt;
Ahora bien, ¿qué pasaría si la reacción fuese reversible? Con esto lo que queremos indicar es que además de formarse  &amp;lt;math&amp;gt;C &amp;lt;/math&amp;gt;, este también se descompone de nuevo en  &amp;lt;math&amp;gt;A &amp;lt;/math&amp;gt; y  &amp;lt;math&amp;gt;B &amp;lt;/math&amp;gt;. Por lo tanto, nos quedaría una ecuación diferencial con la siguiente forma, cuando &amp;lt;math&amp;gt;t&amp;gt;0 &amp;lt;/math&amp;gt; :&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; y'(t)={k_{1}}({a_{0}}-y(t))({b_{0}}-y(t))-Cy(t)&amp;lt;/math&amp;gt;  &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Si nos fijamos, la modificación es sencillamente restar  &amp;lt;math&amp;gt;y(t) &amp;lt;/math&amp;gt; multiplicada por una constante, la cual refleja qué porcentaje de  &amp;lt;math&amp;gt;C &amp;lt;/math&amp;gt; se va descomponiendo a medida que se da, simultáneamente, la reacción  &amp;lt;math&amp;gt;A + B → C &amp;lt;/math&amp;gt;. Sin embargo, esta constante no puede tener cualquier valor, ya que en una reacción se cumple la conservación de masa. Por ello, a  &amp;lt;math&amp;gt;C &amp;lt;/math&amp;gt; le asociaremos el siguiente dominio:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;C∈(0,1)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Obsérvese que  &amp;lt;math&amp;gt;C &amp;lt;/math&amp;gt; tiene que ser mayor que 0 para que sea reversible, pero al mismo tiempo inferior que 1, ya que si no se estaría descomponiendo más compuesto  &amp;lt;math&amp;gt;C &amp;lt;/math&amp;gt; del que realmente se ha formado, en otras palabras, estaría apareciendo masa de la nada.&lt;br /&gt;
&lt;br /&gt;
=Método de Euler=&lt;br /&gt;
&lt;br /&gt;
Una vez llegados a este punto, se procede a ver una interpretación gráfica de la reacción. Para ello, se refleja en la gráfica (en un intervalo de 2 segundos), cómo varían las concentraciones tanto de &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt; (&amp;lt;math&amp;gt;a_0&amp;lt;/math&amp;gt;=3 mol/L) y &amp;lt;math&amp;gt;B&amp;lt;/math&amp;gt; (&amp;lt;math&amp;gt;b_0&amp;lt;/math&amp;gt;=1 mol/L) como de &amp;lt;math&amp;gt; C&amp;lt;/math&amp;gt;, para una &amp;lt;math&amp;gt;k_1&amp;lt;/math&amp;gt;=1 mol/s. Se comienza, por el momento, aplicando el método de Euler. Posteriormente se utilizarán métodos más precisos.&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo= &lt;br /&gt;
% Euler&lt;br /&gt;
clear all&lt;br /&gt;
% datos del problema&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=2;&lt;br /&gt;
y0=0;&lt;br /&gt;
h=0.1;&lt;br /&gt;
k1=1;&lt;br /&gt;
a0=3;&lt;br /&gt;
b0=1;&lt;br /&gt;
% Definimos la variable independiente&lt;br /&gt;
t=t0:h:tN;&lt;br /&gt;
% Guardamos los valores de la solución aproximada en el vector &amp;quot;y1&amp;quot; y&lt;br /&gt;
% establecemos los vectores de concentraciones A y B&lt;br /&gt;
y1=zeros(1,length(t)); &lt;br /&gt;
y1(1)=y0;&lt;br /&gt;
a1=zeros(1,length(t));&lt;br /&gt;
a1(1)=a0;&lt;br /&gt;
b1=zeros(1,length(t));&lt;br /&gt;
b1(1)=b0;&lt;br /&gt;
% A continuación, calculamos las componentes de los vectores y1, a y b&lt;br /&gt;
for i=1:length(t)-1&lt;br /&gt;
    y1(i+1)=y1(i)+h*(k1*(a0-y1(i))*(b0-y1(i)));    %Euler&lt;br /&gt;
    a1(i+1)=a0-y1(i+1); % evolución de la concentración de A&lt;br /&gt;
    b1(i+1)=b0-y1(i+1); % evolución de la concentración de B&lt;br /&gt;
end&lt;br /&gt;
%grafico &lt;br /&gt;
figure(1)&lt;br /&gt;
hold on&lt;br /&gt;
plot(t,y1,'g')&lt;br /&gt;
plot(t,a1,'r')&lt;br /&gt;
plot(t,b1,'b')&lt;br /&gt;
legend('concentración de C','concentración de A','concentración de B','location','best')&lt;br /&gt;
hold off &lt;br /&gt;
%en verde se muestra la concentración de C, en rojo la de A, y en azul la de B&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Archivo:3euler.jpeg|500px|miniaturadeimagen|center|Reacción compleja]]&lt;br /&gt;
&lt;br /&gt;
Aunque con observar los resultados ya podemos decir con casi absoluta seguridad cuáles son los límites de las concentraciones de cada reactivo &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;B&amp;lt;/math&amp;gt; y del producto &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt;, se ha diseñado un programa que, mediante diferencia de valores sucesivos de la variable &amp;lt;math&amp;gt;y(t)&amp;lt;/math&amp;gt;, nos devuelve el valor de la función cuando dicha diferencia es muy pequeña '''(se ha puesto una diferencia de 0.001)''', es decir, cuando tenemos una asíntota al tender &amp;lt;math&amp;gt;t→∞&amp;lt;/math&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
%Estudio de las asíntotas&lt;br /&gt;
t1=t0:h:10;%se aumenta la longitud de t, y se estima que se alcanzarán las asíntotas antes de t=10&lt;br /&gt;
y_=zeros(1,length(t1)); %se define un vector y_ idéntico a y1 pero con t hasta 10&lt;br /&gt;
a_=y_;&lt;br /&gt;
b_=y_;&lt;br /&gt;
y_(1)=y0;&lt;br /&gt;
a_(1)=a0;&lt;br /&gt;
b_(1)=b0;&lt;br /&gt;
for i=1:length(t1)-1&lt;br /&gt;
    y_(i+1)=y_(i)+h*(k1*(a0-y_(i))*(b0-y_(i)));&lt;br /&gt;
    diferencia=y_(i+1)-y_(i);&lt;br /&gt;
    if abs(diferencia)&amp;lt;=0.001&lt;br /&gt;
        limiteC=y_(i+1)&lt;br /&gt;
        break&lt;br /&gt;
    end&lt;br /&gt;
end&lt;br /&gt;
for i=1:length(t1)-1&lt;br /&gt;
    y_(i+1)=y_(i)+h*(k1*(a0-y_(i))*(b0-y_(i)));    &lt;br /&gt;
    a_(i+1)=a0-y_(i+1);&lt;br /&gt;
    diferencia2=a_(i+1)-a_(i);&lt;br /&gt;
    if abs(diferencia2)&amp;lt;=0.001&lt;br /&gt;
        limiteA=a_(i+1)&lt;br /&gt;
        break&lt;br /&gt;
    end&lt;br /&gt;
end&lt;br /&gt;
for i=1:length(t1)-1&lt;br /&gt;
    y_(i+1)=y_(i)+h*(k1*(a0-y_(i))*(b0-y_(i)));    &lt;br /&gt;
    b_(i+1)=b0-y_(i+1);&lt;br /&gt;
    diferencia3=b_(i+1)-b_(i);&lt;br /&gt;
    if abs(diferencia3)&amp;lt;=0.001&lt;br /&gt;
        limiteB=b_(i+1)&lt;br /&gt;
        break&lt;br /&gt;
    end&lt;br /&gt;
end&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
Que nos devuelve unos valores de las concentraciones para el límite de:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\lim A=2,0036≈2 mol/L&amp;lt;/math&amp;gt;:     &lt;br /&gt;
&amp;lt;math&amp;gt;\lim B=0,0036≈0mol/L&amp;lt;/math&amp;gt;:         &lt;br /&gt;
&amp;lt;math&amp;gt;\lim C=0,9964≈1mol/L&amp;lt;/math&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
Lo cual es lógico, ya que &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;B&amp;lt;/math&amp;gt; se combinan en una proporción de 1:1, luego &amp;lt;math&amp;gt;B&amp;lt;/math&amp;gt;, que tiene una concentración inicial de &amp;lt;math&amp;gt;b_0&amp;lt;/math&amp;gt;=1, será el reactivo limitante (el que desaparecerá por completo), mientras que &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt;, con &amp;lt;math&amp;gt;a_0&amp;lt;/math&amp;gt;=3, acabará con una concentración molar final igual a 2, y &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt;, del que no habia nada,alcanza una concentraccion de &amp;lt;math&amp;gt;1mol/L&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
= Método del Trapecio y Método de Runge-Kutta=&lt;br /&gt;
&lt;br /&gt;
A continuación, para obtener con más precisión las representaciones gráficas de las respectivas concentraciones, se opta por utilizar los métodos de los &amp;lt;math&amp;gt;Trapecios&amp;lt;/math&amp;gt; (segundo orden) y de &amp;lt;math&amp;gt;Runge-Kutta&amp;lt;/math&amp;gt; (cuarto orden). Desgraciadamente, no es posible comparar los errores cometidos por cada método con la expresión real de la concentración de C, ya que la ecuación diferencial no es de fácil resolución analítica, luego resulta imposible alcanzar una expresión explícita de la concentración en términos de nuestros datos conocidos; &amp;lt;math&amp;gt;a_0&amp;lt;/math&amp;gt;,&amp;lt;math&amp;gt;b_0&amp;lt;/math&amp;gt;,&amp;lt;math&amp;gt;k_1&amp;lt;/math&amp;gt;,&amp;lt;math&amp;gt;t (tiempo)&amp;lt;/math&amp;gt;.  Sin embargo, podemos confiar con bastante seguridad en el método sobre todo de &amp;lt;math&amp;gt;Runge-Kutta&amp;lt;/math&amp;gt;, debido a su cuarto orden. &lt;br /&gt;
&lt;br /&gt;
Para los trapecios, al ser un método implícito, es necesario despejar la componente &amp;lt;math&amp;gt;y_{n+1}&amp;lt;/math&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;y_{n+1}=\frac{(1+\frac{h}{2}*k_1*(a_0+b_0))-\sqrt{\(1+\frac{h}{2}*k_1*(a_0+b_0)) }}{}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Cabe destacar que este programa parte de los datos ya establecidos en el programa de Euler para '''t0, tN, y0, a0, b0, k1 y h''':&lt;br /&gt;
{{matlab|codigo= &lt;br /&gt;
%Trapecios&lt;br /&gt;
y2=zeros(1,length(t)); &lt;br /&gt;
a2=y2;&lt;br /&gt;
b2=y2;&lt;br /&gt;
y2(1)=y0;&lt;br /&gt;
a2(1)=a0;&lt;br /&gt;
b2(1)=b0;&lt;br /&gt;
for i=1:length(t)-1&lt;br /&gt;
    y2(i+1)=((1+0.5*h*k1*(a0+b0))-sqrt((1+0.5*h*k1*(a0+b0))^2-2*h*k1*(y2(i)+0.5*h*k1*(a0-y2(i))*(b0-y2(i))+0.5*h*k1*a0*b0)))/(k1*h);&lt;br /&gt;
    a2(i+1)=a0-y2(i+1);&lt;br /&gt;
    b2(i+1)=b0-y2(i+1);&lt;br /&gt;
end&lt;br /&gt;
 &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
%Runge-Kutta&lt;br /&gt;
y3=zeros(1,length(t)); &lt;br /&gt;
a3=y3;&lt;br /&gt;
b3=y3;&lt;br /&gt;
y3(1)=y0;&lt;br /&gt;
a3(1)=a0;&lt;br /&gt;
b3(1)=b0;&lt;br /&gt;
for i=1:length(t)-1 &lt;br /&gt;
    r1=k1*(a0-y3(i))*(b0-y3(i));&lt;br /&gt;
    r2=k1*(a0-y3(i)-0.5*r1*h)*(b0-y3(i)-0.5*r1*h);&lt;br /&gt;
    r3=k1*(a0-y3(i)-0.5*r2*h)*(b0-y3(i)-0.5*r2*h);&lt;br /&gt;
    r4=k1*(a0-y3(i)-r3*h)*(b0-y3(i)-r3*h);&lt;br /&gt;
    y3(i+1)=y3(i)+h/6*(r1+2*r2+2*r3+r4);&lt;br /&gt;
    a3(i+1)=a0-y3(i+1);&lt;br /&gt;
    b3(i+1)=b0-y3(i+1);&lt;br /&gt;
end&lt;br /&gt;
%se pintan las dos, en azul las soluciones de los Trapecios, y en negro las&lt;br /&gt;
%de Runge-Kutta. &lt;br /&gt;
figure(2)&lt;br /&gt;
hold on&lt;br /&gt;
plot(t,y2)&lt;br /&gt;
plot(t,a2)&lt;br /&gt;
plot(t,b2)&lt;br /&gt;
plot(t,y3,'k')&lt;br /&gt;
plot(t,a3,'k')&lt;br /&gt;
plot(t,b3,'k')&lt;br /&gt;
hold off&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
Que proporciona el resultado que se puede observar en la primera gráfica adjunta. Como podemos ver, es prácticamente indistinguible una gráfica de la otra. Sin embargo, si la juntamos con las gráficas proporcionadas por el método de Euler, que se representa ahora en rojo, la diferencia es palpable (ver gráfica 2), lo cual evidencia la peor precisión del método de Euler.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:4trapeciokung.jpeg|500px|miniaturadeimagen|center|Reacción compleja]]&lt;br /&gt;
&lt;br /&gt;
[[Archivo:4comparacion.jpeg|500px|miniaturadeimagen|center|Gráfico 2]]&lt;br /&gt;
&lt;br /&gt;
=Reacción consecutiva=&lt;br /&gt;
&lt;br /&gt;
Consideremos ahora que se produce una reacción consecutiva de la forma: &lt;br /&gt;
&lt;br /&gt;
                                                                   &amp;lt;math&amp;gt;A + B → k_1C → k_2D&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
De tal modo que los reactivos &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;B&amp;lt;/math&amp;gt; se combinan en la proporción 1:1 para formar compuesto &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt;, el cual, a su vez, se va descomponiendo para formar compuesto &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt;. Al igual que se ha hecho antes al analizar las otras reacciones, se considerará que se cumple la ley de acción de masas. Es decir, la velocidad con la que se forma compuesto &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; es proporcional a las concentraciones existentes de &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt; y de &amp;lt;math&amp;gt;B&amp;lt;/math&amp;gt; y del mismo modo la de formación de la sustancia &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; lo es a la concentración de &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; que se ha ido formando.&lt;br /&gt;
&lt;br /&gt;
Esta reacción consecutiva está representada por el siguiente problema de valor inicial:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;&lt;br /&gt;
   \left . &lt;br /&gt;
      \begin{matrix} &lt;br /&gt;
         y'_1(t)={k_{1}}({a_{0}}-y_1(t))({b_{0}}-y_1(t))\\&lt;br /&gt;
         y'_2(t)={k_{2}}(y_1(t)-y_2(t))\\&lt;br /&gt;
y_1(0)=0\\y_2(0)=0&lt;br /&gt;
      \end{matrix}&lt;br /&gt;
   \right \}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
Donde &amp;lt;math&amp;gt;a_0&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;b_0&amp;lt;/math&amp;gt; representan las concentraciones iniciales de &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;B&amp;lt;/math&amp;gt; respectivamente, &amp;lt;math&amp;gt;k_1&amp;lt;/math&amp;gt; es la constante de proporcionalidad que rige la primera reacción y &amp;lt;math&amp;gt;k_2&amp;lt;/math&amp;gt; la que rige la segunda reacción o reacción consecutiva. &amp;lt;math&amp;gt;y_1’(t)&amp;lt;/math&amp;gt; e  &amp;lt;math&amp;gt;y_2’(t)&amp;lt;/math&amp;gt; representan las velocidades de las reacciones, es decir, las velocidades con que se forman los productos &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt;. &amp;lt;math&amp;gt;y_2(t)&amp;lt;/math&amp;gt; representa la concentración del producto &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; pero es importante apreciar que en este caso &amp;lt;math&amp;gt;y_1(t)&amp;lt;/math&amp;gt; no nos da el valor de la concentración de &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; directamente, sino que ésta será &amp;lt;math&amp;gt;y_1(t)&amp;lt;/math&amp;gt;- &amp;lt;math&amp;gt;y_2(t)&amp;lt;/math&amp;gt;, la cantidad que se forma en la primera reacción menos la que se emplea para formar el producto &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; en la segunda.&lt;br /&gt;
&lt;br /&gt;
Este problema se va a resolver para dos casos diferentes. Uno en el cual se considera que la segunda reacción es más rápida que la primera, lo que supone tomar un valor de la constante &amp;lt;math&amp;gt;k_2&amp;lt;/math&amp;gt;  mayor que &amp;lt;math&amp;gt;k_1&amp;lt;/math&amp;gt;. Y otro en el cual se considera que es más lenta, lo que implica que &amp;lt;math&amp;gt;k_2&amp;lt;/math&amp;gt; es menor que &amp;lt;math&amp;gt;k_1&amp;lt;/math&amp;gt;. Concretamente vamos a tomar los siguientes valores para resolver el problema numéricamente; &amp;lt;math&amp;gt;a_0&amp;lt;/math&amp;gt;=3 ,  &amp;lt;math&amp;gt;b_0&amp;lt;/math&amp;gt;=1, &amp;lt;math&amp;gt;k_1&amp;lt;/math&amp;gt;=1,  &amp;lt;math&amp;gt;k_2&amp;lt;/math&amp;gt;=5, &amp;lt;math&amp;gt;k_2&amp;lt;/math&amp;gt;=1/5, .En ambos casos se resuelve para los primeros 10 segundos.&lt;br /&gt;
&lt;br /&gt;
==La reacción D es más rápida que la reacción C==&lt;br /&gt;
CASO    &amp;lt;math&amp;gt;k_1=5  &amp;lt;/math&amp;gt;   '''h=0.1''' &lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
&lt;br /&gt;
%datos&lt;br /&gt;
y0=[0;0];&lt;br /&gt;
z0=[0;0];&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;
%matriz de las soluciones&lt;br /&gt;
y=zeros(2,length(t)); %euler&lt;br /&gt;
y(:,1)=y0;&lt;br /&gt;
 &lt;br /&gt;
z=zeros(2,length(t)); %runge-kutta&lt;br /&gt;
z(:,1)=y0;&lt;br /&gt;
 &lt;br /&gt;
for i=1:length(t)-1&lt;br /&gt;
 %euler&lt;br /&gt;
 y(:,i+1)=y(:,i)+h*[1*(3-y(1,i))*(1-y(1,i)); 5*(y(1,i)-y(2,i))];&lt;br /&gt;
 %runge-kutta&lt;br /&gt;
 K1=[1*(3-z(1,i))*(1-z(1,i)); 5*(z(1,i)-z(2,i))];&lt;br /&gt;
 K2=[1*(3-(z(1,i)+h/2*K1(1)))*(1-(z(1,i)+h/2*K1(1))); 5*((y(1,i)+h/2*K1(2))-(y(2,i)+h/2*K1(2)))];&lt;br /&gt;
 K3=[1*(3-(z(1,i)+h/2*K2(1)))*(1-(z(1,i)+h/2*K2(1))); 5*((y(1,i)+h/2*K2(2))-(y(2,i)+h/2*K2(2)))];&lt;br /&gt;
 K4=[1*(3-(z(1,i)+h*K3(1)))*(1-(z(1,i)+h*K3(1))); 5*((y(1,i)+h*K3(2))-(y(2,i)+h*K3(2)))];&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;
% se calcula la concentración de C=y1t)-y2(t)&lt;br /&gt;
Ay=y(1,:)-y(2,:); %euler&lt;br /&gt;
Az=z(1,:)-z(2,:); %runge-kutta&lt;br /&gt;
 &lt;br /&gt;
figure(1)&lt;br /&gt;
hold on&lt;br /&gt;
plot(t,Ay) %concentración de C por euler&lt;br /&gt;
plot(t,y(2,:),'r') %concentración de D por euler&lt;br /&gt;
plot(t,Az,'k') %concentración de C por runge-kutta&lt;br /&gt;
plot(t,z(2,:),'g') %concentración de D por runge-kutta&lt;br /&gt;
legend('concentración de C por euler','concentración de D por euler','concentración de C por runge-kutta','concentración de D por runge-kutta','Location','best')&lt;br /&gt;
hold off&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:graficoa.jpeg|500px|miniaturadeimagen|center|Reacción compleja]]&lt;br /&gt;
&lt;br /&gt;
Se observa que en en los primeros instantes aumentan las concentraciones de &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; aumentan sus concentraciones. Antes de que pase 1 segundo, la concentración &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; alcanza un máximo (de unos 0.3 molar) y va disminuyendo progresivamente hasta alcanzar un valor de 0 molar. La concentración &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; sigue creciendo hasta llegar a 1 molar. Una vez que tanto &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; como &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; alcanzan estos valores, se estabiliza la reacción. &lt;br /&gt;
&lt;br /&gt;
Como hemos impuesto que la reacción &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; es más rápida que &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt;, se observa que &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; empieza creciendo más rápidamente, pero como reacciona más despacio que &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; su concentración disminuye progresivamente, mientras que la de &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; aumenta.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''CASO'''  &amp;lt;math&amp;gt;k_2=5  &amp;lt;/math&amp;gt;   '''h=0.3''' &lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
&lt;br /&gt;
%datos&lt;br /&gt;
y0=[0;0];&lt;br /&gt;
z0=[0;0];&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=10;&lt;br /&gt;
h=0.3;&lt;br /&gt;
 &lt;br /&gt;
%variable independiente t&lt;br /&gt;
t=t0:h:tN;&lt;br /&gt;
 &lt;br /&gt;
%matriz de las soluciones&lt;br /&gt;
y=zeros(2,length(t)); %euler&lt;br /&gt;
y(:,1)=y0;&lt;br /&gt;
 &lt;br /&gt;
z=zeros(2,length(t)); %runge-kutta&lt;br /&gt;
z(:,1)=y0;&lt;br /&gt;
 &lt;br /&gt;
for i=1:length(t)-1&lt;br /&gt;
 %euler&lt;br /&gt;
 y(:,i+1)=y(:,i)+h*[1*(3-y(1,i))*(1-y(1,i)); 5*(y(1,i)-y(2,i))];&lt;br /&gt;
 %runge-kutta&lt;br /&gt;
 K1=[1*(3-z(1,i))*(1-z(1,i)); 5*(z(1,i)-z(2,i))];&lt;br /&gt;
 K2=[1*(3-(z(1,i)+h/2*K1(1)))*(1-(z(1,i)+h/2*K1(1))); 5*((y(1,i)+h/2*K1(2))-(y(2,i)+h/2*K1(2)))];&lt;br /&gt;
 K3=[1*(3-(z(1,i)+h/2*K2(1)))*(1-(z(1,i)+h/2*K2(1))); 5*((y(1,i)+h/2*K2(2))-(y(2,i)+h/2*K2(2)))];&lt;br /&gt;
 K4=[1*(3-(z(1,i)+h*K3(1)))*(1-(z(1,i)+h*K3(1))); 5*((y(1,i)+h*K3(2))-(y(2,i)+h*K3(2)))];&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;
% se calcula la concentración de C=y1t)-y2(t)&lt;br /&gt;
Ay=y(1,:)-y(2,:); %euler&lt;br /&gt;
Az=z(1,:)-z(2,:); %runge-kutta&lt;br /&gt;
 &lt;br /&gt;
figure(1)&lt;br /&gt;
hold on&lt;br /&gt;
plot(t,Ay) %concentración de C por euler&lt;br /&gt;
plot(t,y(2,:),'r') %concentración de D por euler&lt;br /&gt;
plot(t,Az,'k') %concentración de C por runge-kutta&lt;br /&gt;
plot(t,z(2,:),'g') %concentración de D por runge-kutta&lt;br /&gt;
legend('concentración de C por euler','concentración de D por euler','concentración de C por runge-kutta','concentración de D por runge-kutta','Location','best')&lt;br /&gt;
hold off&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:graficob.jpeg|500px|miniaturadeimagen|center|Reacción compleja]]&lt;br /&gt;
&lt;br /&gt;
Repetimos el programa pero para un tamaño de paso mayor, de '''h=0.3''', y observamos que no  es suficientemente preciso, sobre todo al principio, no se puede analizar bien lo que está pasando en la reacción.&lt;br /&gt;
&lt;br /&gt;
==La reacción D es más lenta que la reacción C==&lt;br /&gt;
&lt;br /&gt;
CASO  &amp;lt;math&amp;gt;k_1 &amp;lt;/math&amp;gt;=1,   &amp;lt;math&amp;gt;k_2 &amp;lt;/math&amp;gt;=1/5&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
&lt;br /&gt;
%datos&lt;br /&gt;
y0=[0;0];&lt;br /&gt;
z0=[0;0];&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;
%matriz de las soluciones&lt;br /&gt;
y=zeros(2,length(t)); %euler&lt;br /&gt;
y(:,1)=y0;&lt;br /&gt;
 &lt;br /&gt;
z=zeros(2,length(t)); %runge-kutta&lt;br /&gt;
z(:,1)=y0;&lt;br /&gt;
 &lt;br /&gt;
for i=1:length(t)-1&lt;br /&gt;
 %euler&lt;br /&gt;
 y(:,i+1)=y(:,i)+h*[1*(3-y(1,i))*(1-y(1,i)); 1/5*(y(1,i)-y(2,i))];&lt;br /&gt;
 %runge-kutta&lt;br /&gt;
 K1=[1*(3-z(1,i))*(1-z(1,i)); 1/5*(z(1,i)-z(2,i))];&lt;br /&gt;
 K2=[1*(3-(z(1,i)+h/2*K1(1)))*(1-(z(1,i)+h/2*K1(1))); 1/5*((y(1,i)+h/2*K1(2))-(y(2,i)+h/2*K1(2)))];&lt;br /&gt;
 K3=[1*(3-(z(1,i)+h/2*K2(1)))*(1-(z(1,i)+h/2*K2(1))); 1/5*((y(1,i)+h/2*K2(2))-(y(2,i)+h/2*K2(2)))];&lt;br /&gt;
 K4=[1*(3-(z(1,i)+h*K3(1)))*(1-(z(1,i)+h*K3(1))); 1/5*((y(1,i)+h*K3(2))-(y(2,i)+h*K3(2)))];&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;
% se calcula la concentración de C=y1t)-y2(t)&lt;br /&gt;
Ay=y(1,:)-y(2,:); %euler&lt;br /&gt;
Az=z(1,:)-z(2,:); %runge-kutta&lt;br /&gt;
 &lt;br /&gt;
figure(1)&lt;br /&gt;
hold on&lt;br /&gt;
plot(t,Ay) %concentración de C por euler&lt;br /&gt;
plot(t,y(2,:),'r') %concentración de D por euler&lt;br /&gt;
plot(t,Az,'k') %concentración de C por runge-kutta&lt;br /&gt;
plot(t,z(2,:),'g') %concentración de D por runge-kutta&lt;br /&gt;
legend('concentración de C por euler','concentración de D por euler','concentración de C por runge-kutta','concentración de D por runge-kutta','Location','best')&lt;br /&gt;
hold off&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:graficoc.jpeg|500px|miniaturadeimagen|center|Reacción compleja]]&lt;br /&gt;
&lt;br /&gt;
Si ahora imponemos que la reacción  &amp;lt;math&amp;gt;C &amp;lt;/math&amp;gt; es más rápida que  &amp;lt;math&amp;gt;D &amp;lt;/math&amp;gt;, obtenemos lo siguiente. Se parece a la gráfica que obtuvimos en el programa anterior, pero  más extendida en el tiempo, más lenta.  &amp;lt;math&amp;gt;C &amp;lt;/math&amp;gt; alcanza una concentración máxima de unos 0.8 molar antes de empezar a decrecer a medida que avanza el tiempo y acercándose a un valor de '''0''' molar.  &amp;lt;math&amp;gt;D &amp;lt;/math&amp;gt; crece más lentamente que en la gráfica anterior, pero se aproxima al mismo valor, '''1''' molar.&lt;br /&gt;
Se observa que aunque hagamos la reacción  &amp;lt;math&amp;gt;C &amp;lt;/math&amp;gt; más rápida, tenemos las mismas concentraciones finales, pero tardan más tiempo en obtenerse, ya que la reacción tarda más en estabilizarse.&lt;br /&gt;
&lt;br /&gt;
&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>Joseva</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Reacciones_complejas_(Grupo_D1)&amp;diff=27154</id>
		<title>Reacciones complejas (Grupo D1)</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Reacciones_complejas_(Grupo_D1)&amp;diff=27154"/>
				<updated>2015-03-05T22:54:30Z</updated>
		
		<summary type="html">&lt;p&gt;Joseva: /* Método del Trapecio y Método de Runge-Kutta */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{ TrabajoED | Reacciones complejas (Grupo D1) | [[:Categoría:Ecuaciones Diferenciales|Ecuaciones Diferenciales]]|[[:Categoría:ED14/15|Curso 2014-15]] | Rincón Crespo, Kevin&lt;br /&gt;
&lt;br /&gt;
Rodríguez Gómez, Javier&lt;br /&gt;
&lt;br /&gt;
Sans Jiménez, Alejandro&lt;br /&gt;
&lt;br /&gt;
Sesto Muñoz, María Victoria&lt;br /&gt;
&lt;br /&gt;
Vallejo Asín, José Manuel &lt;br /&gt;
&lt;br /&gt;
Villarino Redondo, Álvaro }}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=Introducción=&lt;br /&gt;
Se considera una reacción química irreversible en una solución bien mezclada. Supondremos que la reacción ocurre para un volumen y temperatura constantes. Al inicio se encuentran dos reactivos A y B, que van formando un producto C en lo que se conoce como una reacción bimolecular, es decir, una molécula de A y una de B producen una de C, &lt;br /&gt;
                                                                     &amp;lt;math&amp;gt;A + B → C&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Supondremos también que se satisface la ley de acción de masas, que establece que la velocidad de reacción es proporcional al producto de las concentraciones de los reactivos.&lt;br /&gt;
&lt;br /&gt;
=Concentración del reactivo C a lo largo del tiempo=&lt;br /&gt;
En primer lugar, suponiendo que la reacción es irreversible, es decir, que C no puede volver a formar A y B, se puede expresar la situación mediante el siguiente problema de valor inicial, cuando t&amp;gt;0:&lt;br /&gt;
   &amp;lt;math&amp;gt;&lt;br /&gt;
   \left . &lt;br /&gt;
      \begin{matrix} &lt;br /&gt;
         y'(t)={k_{1}}({a_{0}}-y(t))({b_{0}}-y(t))=0\\&lt;br /&gt;
         y(0)=0&lt;br /&gt;
      \end{matrix}&lt;br /&gt;
   \right \}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Donde &amp;lt;math&amp;gt; {a_{0}}&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;{b_{0}}&amp;lt;/math&amp;gt; representan las concentraciones iniciales de '''A''' y '''B''' respectivamente y &amp;lt;math&amp;gt;{k_{1}}&amp;lt;/math&amp;gt; es la constante de proporcionalidad que indica la ley de acción de masas. &amp;lt;math&amp;gt;y’(t)&amp;lt;/math&amp;gt; representa la velocidad de reacción, es decir, la velocidad con que se forma el producto &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; ; mientras que la solución de la ecuación diferencial, &amp;lt;math&amp;gt;y(t)&amp;lt;/math&amp;gt; , representa la concentración de &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt;, la cantidad de compuesto que se ha formado. Para comprobar que la solución de este problema de Cauchy es única, comenzamos definiendo:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;math&amp;gt;f(t,y)={k_{1}}({a_{0}}-y(t))({b_{0}}-y(t))=0,   t&amp;gt;0 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Observamos que &amp;lt;math&amp;gt;f(t,y)&amp;lt;/math&amp;gt; es continua en el intervalo &amp;lt;math&amp;gt; I=(0,∞)∩B((0,0),r&amp;gt;0)&amp;lt;/math&amp;gt;, por lo que ya aseguramos la existencia de al menos una solución. Examinando la derivada parcial:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\frac{∂f}{∂y}=k_1(-a_0-b_0+2y)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Se deduce que al ser un polinomio no va a haber problemas de continuidad para ninguna bola. De esta forma, podemos asegurar que existe una única solución.&lt;br /&gt;
&lt;br /&gt;
==Concentración del reactivo C a lo largo del tiempo en un proceso reversible==&lt;br /&gt;
&lt;br /&gt;
Ahora bien, ¿qué pasaría si la reacción fuese reversible? Con esto lo que queremos indicar es que además de formarse  &amp;lt;math&amp;gt;C &amp;lt;/math&amp;gt;, este también se descompone de nuevo en  &amp;lt;math&amp;gt;A &amp;lt;/math&amp;gt; y  &amp;lt;math&amp;gt;B &amp;lt;/math&amp;gt;. Por lo tanto, nos quedaría una ecuación diferencial con la siguiente forma, cuando &amp;lt;math&amp;gt;t&amp;gt;0 &amp;lt;/math&amp;gt; :&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; y'(t)={k_{1}}({a_{0}}-y(t))({b_{0}}-y(t))-Cy(t)&amp;lt;/math&amp;gt;  &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Si nos fijamos, la modificación es sencillamente restar  &amp;lt;math&amp;gt;y(t) &amp;lt;/math&amp;gt; multiplicada por una constante, la cual refleja qué porcentaje de  &amp;lt;math&amp;gt;C &amp;lt;/math&amp;gt; se va descomponiendo a medida que se da, simultáneamente, la reacción  &amp;lt;math&amp;gt;A + B → C &amp;lt;/math&amp;gt;. Sin embargo, esta constante no puede tener cualquier valor, ya que en una reacción se cumple la conservación de masa. Por ello, a  &amp;lt;math&amp;gt;C &amp;lt;/math&amp;gt; le asociaremos el siguiente dominio:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;C∈(0,1)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Obsérvese que  &amp;lt;math&amp;gt;C &amp;lt;/math&amp;gt; tiene que ser mayor que 0 para que sea reversible, pero al mismo tiempo inferior que 1, ya que si no se estaría descomponiendo más compuesto  &amp;lt;math&amp;gt;C &amp;lt;/math&amp;gt; del que realmente se ha formado, en otras palabras, estaría apareciendo masa de la nada.&lt;br /&gt;
&lt;br /&gt;
=Método de Euler=&lt;br /&gt;
&lt;br /&gt;
Una vez llegados a este punto, se procede a ver una interpretación gráfica de la reacción. Para ello, se refleja en la gráfica (en un intervalo de 2 segundos), cómo varían las concentraciones tanto de &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt; (&amp;lt;math&amp;gt;a_0&amp;lt;/math&amp;gt;=3 mol/L) y &amp;lt;math&amp;gt;B&amp;lt;/math&amp;gt; (&amp;lt;math&amp;gt;b_0&amp;lt;/math&amp;gt;=1 mol/L) como de &amp;lt;math&amp;gt; C&amp;lt;/math&amp;gt;, para una &amp;lt;math&amp;gt;k_1&amp;lt;/math&amp;gt;=1 mol/s. Se comienza, por el momento, aplicando el método de Euler. Posteriormente se utilizarán métodos más precisos.&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo= &lt;br /&gt;
% Euler&lt;br /&gt;
clear all&lt;br /&gt;
% datos del problema&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=2;&lt;br /&gt;
y0=0;&lt;br /&gt;
h=0.1;&lt;br /&gt;
k1=1;&lt;br /&gt;
a0=3;&lt;br /&gt;
b0=1;&lt;br /&gt;
% Definimos la variable independiente&lt;br /&gt;
t=t0:h:tN;&lt;br /&gt;
% Guardamos los valores de la solución aproximada en el vector &amp;quot;y1&amp;quot; y&lt;br /&gt;
% establecemos los vectores de concentraciones A y B&lt;br /&gt;
y1=zeros(1,length(t)); &lt;br /&gt;
y1(1)=y0;&lt;br /&gt;
a1=zeros(1,length(t));&lt;br /&gt;
a1(1)=a0;&lt;br /&gt;
b1=zeros(1,length(t));&lt;br /&gt;
b1(1)=b0;&lt;br /&gt;
% A continuación, calculamos las componentes de los vectores y1, a y b&lt;br /&gt;
for i=1:length(t)-1&lt;br /&gt;
    y1(i+1)=y1(i)+h*(k1*(a0-y1(i))*(b0-y1(i)));    %Euler&lt;br /&gt;
    a1(i+1)=a0-y1(i+1); % evolución de la concentración de A&lt;br /&gt;
    b1(i+1)=b0-y1(i+1); % evolución de la concentración de B&lt;br /&gt;
end&lt;br /&gt;
%grafico &lt;br /&gt;
figure(1)&lt;br /&gt;
hold on&lt;br /&gt;
plot(t,y1,'g')&lt;br /&gt;
plot(t,a1,'r')&lt;br /&gt;
plot(t,b1,'b')&lt;br /&gt;
legend('concentración de C','concentración de A','concentración de B','location','best')&lt;br /&gt;
hold off &lt;br /&gt;
%en verde se muestra la concentración de C, en rojo la de A, y en azul la de B&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Archivo:3euler.jpeg|500px|miniaturadeimagen|center|Reacción compleja]]&lt;br /&gt;
&lt;br /&gt;
Aunque con observar los resultados ya podemos decir con casi absoluta seguridad cuáles son los límites de las concentraciones de cada reactivo &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;B&amp;lt;/math&amp;gt; y del producto &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt;, se ha diseñado un programa que, mediante diferencia de valores sucesivos de la variable &amp;lt;math&amp;gt;y(t)&amp;lt;/math&amp;gt;, nos devuelve el valor de la función cuando dicha diferencia es muy pequeña '''(se ha puesto una diferencia de 0.001)''', es decir, cuando tenemos una asíntota al tender &amp;lt;math&amp;gt;t→∞&amp;lt;/math&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
%Estudio de las asíntotas&lt;br /&gt;
t1=t0:h:10;%se aumenta la longitud de t, y se estima que se alcanzarán las asíntotas antes de t=10&lt;br /&gt;
y_=zeros(1,length(t1)); %se define un vector y_ idéntico a y1 pero con t hasta 10&lt;br /&gt;
a_=y_;&lt;br /&gt;
b_=y_;&lt;br /&gt;
y_(1)=y0;&lt;br /&gt;
a_(1)=a0;&lt;br /&gt;
b_(1)=b0;&lt;br /&gt;
for i=1:length(t1)-1&lt;br /&gt;
    y_(i+1)=y_(i)+h*(k1*(a0-y_(i))*(b0-y_(i)));&lt;br /&gt;
    diferencia=y_(i+1)-y_(i);&lt;br /&gt;
    if abs(diferencia)&amp;lt;=0.001&lt;br /&gt;
        limiteC=y_(i+1)&lt;br /&gt;
        break&lt;br /&gt;
    end&lt;br /&gt;
end&lt;br /&gt;
for i=1:length(t1)-1&lt;br /&gt;
    y_(i+1)=y_(i)+h*(k1*(a0-y_(i))*(b0-y_(i)));    &lt;br /&gt;
    a_(i+1)=a0-y_(i+1);&lt;br /&gt;
    diferencia2=a_(i+1)-a_(i);&lt;br /&gt;
    if abs(diferencia2)&amp;lt;=0.001&lt;br /&gt;
        limiteA=a_(i+1)&lt;br /&gt;
        break&lt;br /&gt;
    end&lt;br /&gt;
end&lt;br /&gt;
for i=1:length(t1)-1&lt;br /&gt;
    y_(i+1)=y_(i)+h*(k1*(a0-y_(i))*(b0-y_(i)));    &lt;br /&gt;
    b_(i+1)=b0-y_(i+1);&lt;br /&gt;
    diferencia3=b_(i+1)-b_(i);&lt;br /&gt;
    if abs(diferencia3)&amp;lt;=0.001&lt;br /&gt;
        limiteB=b_(i+1)&lt;br /&gt;
        break&lt;br /&gt;
    end&lt;br /&gt;
end&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
Que nos devuelve unos valores de las concentraciones para el límite de:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\lim A=2,0036≈2 mol/L&amp;lt;/math&amp;gt;:     &lt;br /&gt;
&amp;lt;math&amp;gt;\lim B=0,0036≈0mol/L&amp;lt;/math&amp;gt;:         &lt;br /&gt;
&amp;lt;math&amp;gt;\lim C=0,9964≈1mol/L&amp;lt;/math&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
Lo cual es lógico, ya que &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;B&amp;lt;/math&amp;gt; se combinan en una proporción de 1:1, luego &amp;lt;math&amp;gt;B&amp;lt;/math&amp;gt;, que tiene una concentración inicial de &amp;lt;math&amp;gt;b_0&amp;lt;/math&amp;gt;=1, será el reactivo limitante (el que desaparecerá por completo), mientras que &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt;, con &amp;lt;math&amp;gt;a_0&amp;lt;/math&amp;gt;=3, acabará con una concentración molar final igual a 2, y &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt;, del que no habia nada,alcanza una concentraccion de &amp;lt;math&amp;gt;1mol/L&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
= Método del Trapecio y Método de Runge-Kutta=&lt;br /&gt;
&lt;br /&gt;
A continuación, para obtener con más precisión las representaciones gráficas de las respectivas concentraciones, se opta por utilizar los métodos de los &amp;lt;math&amp;gt;Trapecios&amp;lt;/math&amp;gt; (segundo orden) y de &amp;lt;math&amp;gt;Runge-Kutta&amp;lt;/math&amp;gt; (cuarto orden). Desgraciadamente, no es posible comparar los errores cometidos por cada método con la expresión real de la concentración de C, ya que la ecuación diferencial no es de fácil resolución analítica, luego resulta imposible alcanzar una expresión explícita de la concentración en términos de nuestros datos conocidos; &amp;lt;math&amp;gt;a_0&amp;lt;/math&amp;gt;,&amp;lt;math&amp;gt;b_0&amp;lt;/math&amp;gt;,&amp;lt;math&amp;gt;k_1&amp;lt;/math&amp;gt;,&amp;lt;math&amp;gt;t (tiempo)&amp;lt;/math&amp;gt;.  Sin embargo, podemos confiar con bastante seguridad en el método sobre todo de &amp;lt;math&amp;gt;Runge-Kutta&amp;lt;/math&amp;gt;, debido a su cuarto orden. &lt;br /&gt;
&lt;br /&gt;
Para los trapecios, al ser un método implícito, es necesario despejar la componente &amp;lt;math&amp;gt;y_{n+1}&amp;lt;/math&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;y_{n+1}=\frac{(1+\frac{h}{2}*k_1*(a_0+b_0))-\sqrt{\ }}{}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Cabe destacar que este programa parte de los datos ya establecidos en el programa de Euler para '''t0, tN, y0, a0, b0, k1 y h''':&lt;br /&gt;
{{matlab|codigo= &lt;br /&gt;
%Trapecios&lt;br /&gt;
y2=zeros(1,length(t)); &lt;br /&gt;
a2=y2;&lt;br /&gt;
b2=y2;&lt;br /&gt;
y2(1)=y0;&lt;br /&gt;
a2(1)=a0;&lt;br /&gt;
b2(1)=b0;&lt;br /&gt;
for i=1:length(t)-1&lt;br /&gt;
    y2(i+1)=((1+0.5*h*k1*(a0+b0))-sqrt((1+0.5*h*k1*(a0+b0))^2-2*h*k1*(y2(i)+0.5*h*k1*(a0-y2(i))*(b0-y2(i))+0.5*h*k1*a0*b0)))/(k1*h);&lt;br /&gt;
    a2(i+1)=a0-y2(i+1);&lt;br /&gt;
    b2(i+1)=b0-y2(i+1);&lt;br /&gt;
end&lt;br /&gt;
 &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
%Runge-Kutta&lt;br /&gt;
y3=zeros(1,length(t)); &lt;br /&gt;
a3=y3;&lt;br /&gt;
b3=y3;&lt;br /&gt;
y3(1)=y0;&lt;br /&gt;
a3(1)=a0;&lt;br /&gt;
b3(1)=b0;&lt;br /&gt;
for i=1:length(t)-1 &lt;br /&gt;
    r1=k1*(a0-y3(i))*(b0-y3(i));&lt;br /&gt;
    r2=k1*(a0-y3(i)-0.5*r1*h)*(b0-y3(i)-0.5*r1*h);&lt;br /&gt;
    r3=k1*(a0-y3(i)-0.5*r2*h)*(b0-y3(i)-0.5*r2*h);&lt;br /&gt;
    r4=k1*(a0-y3(i)-r3*h)*(b0-y3(i)-r3*h);&lt;br /&gt;
    y3(i+1)=y3(i)+h/6*(r1+2*r2+2*r3+r4);&lt;br /&gt;
    a3(i+1)=a0-y3(i+1);&lt;br /&gt;
    b3(i+1)=b0-y3(i+1);&lt;br /&gt;
end&lt;br /&gt;
%se pintan las dos, en azul las soluciones de los Trapecios, y en negro las&lt;br /&gt;
%de Runge-Kutta. &lt;br /&gt;
figure(2)&lt;br /&gt;
hold on&lt;br /&gt;
plot(t,y2)&lt;br /&gt;
plot(t,a2)&lt;br /&gt;
plot(t,b2)&lt;br /&gt;
plot(t,y3,'k')&lt;br /&gt;
plot(t,a3,'k')&lt;br /&gt;
plot(t,b3,'k')&lt;br /&gt;
hold off&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
Que proporciona el resultado que se puede observar en la primera gráfica adjunta. Como podemos ver, es prácticamente indistinguible una gráfica de la otra. Sin embargo, si la juntamos con las gráficas proporcionadas por el método de Euler, que se representa ahora en rojo, la diferencia es palpable (ver gráfica 2), lo cual evidencia la peor precisión del método de Euler.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:4trapeciokung.jpeg|500px|miniaturadeimagen|center|Reacción compleja]]&lt;br /&gt;
&lt;br /&gt;
[[Archivo:4comparacion.jpeg|500px|miniaturadeimagen|center|Gráfico 2]]&lt;br /&gt;
&lt;br /&gt;
=Reacción consecutiva=&lt;br /&gt;
&lt;br /&gt;
Consideremos ahora que se produce una reacción consecutiva de la forma: &lt;br /&gt;
&lt;br /&gt;
                                                                   &amp;lt;math&amp;gt;A + B → k_1C → k_2D&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
De tal modo que los reactivos &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;B&amp;lt;/math&amp;gt; se combinan en la proporción 1:1 para formar compuesto &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt;, el cual, a su vez, se va descomponiendo para formar compuesto &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt;. Al igual que se ha hecho antes al analizar las otras reacciones, se considerará que se cumple la ley de acción de masas. Es decir, la velocidad con la que se forma compuesto &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; es proporcional a las concentraciones existentes de &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt; y de &amp;lt;math&amp;gt;B&amp;lt;/math&amp;gt; y del mismo modo la de formación de la sustancia &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; lo es a la concentración de &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; que se ha ido formando.&lt;br /&gt;
&lt;br /&gt;
Esta reacción consecutiva está representada por el siguiente problema de valor inicial:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;&lt;br /&gt;
   \left . &lt;br /&gt;
      \begin{matrix} &lt;br /&gt;
         y'_1(t)={k_{1}}({a_{0}}-y_1(t))({b_{0}}-y_1(t))\\&lt;br /&gt;
         y'_2(t)={k_{2}}(y_1(t)-y_2(t))\\&lt;br /&gt;
y_1(0)=0\\y_2(0)=0&lt;br /&gt;
      \end{matrix}&lt;br /&gt;
   \right \}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
Donde &amp;lt;math&amp;gt;a_0&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;b_0&amp;lt;/math&amp;gt; representan las concentraciones iniciales de &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;B&amp;lt;/math&amp;gt; respectivamente, &amp;lt;math&amp;gt;k_1&amp;lt;/math&amp;gt; es la constante de proporcionalidad que rige la primera reacción y &amp;lt;math&amp;gt;k_2&amp;lt;/math&amp;gt; la que rige la segunda reacción o reacción consecutiva. &amp;lt;math&amp;gt;y_1’(t)&amp;lt;/math&amp;gt; e  &amp;lt;math&amp;gt;y_2’(t)&amp;lt;/math&amp;gt; representan las velocidades de las reacciones, es decir, las velocidades con que se forman los productos &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt;. &amp;lt;math&amp;gt;y_2(t)&amp;lt;/math&amp;gt; representa la concentración del producto &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; pero es importante apreciar que en este caso &amp;lt;math&amp;gt;y_1(t)&amp;lt;/math&amp;gt; no nos da el valor de la concentración de &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; directamente, sino que ésta será &amp;lt;math&amp;gt;y_1(t)&amp;lt;/math&amp;gt;- &amp;lt;math&amp;gt;y_2(t)&amp;lt;/math&amp;gt;, la cantidad que se forma en la primera reacción menos la que se emplea para formar el producto &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; en la segunda.&lt;br /&gt;
&lt;br /&gt;
Este problema se va a resolver para dos casos diferentes. Uno en el cual se considera que la segunda reacción es más rápida que la primera, lo que supone tomar un valor de la constante &amp;lt;math&amp;gt;k_2&amp;lt;/math&amp;gt;  mayor que &amp;lt;math&amp;gt;k_1&amp;lt;/math&amp;gt;. Y otro en el cual se considera que es más lenta, lo que implica que &amp;lt;math&amp;gt;k_2&amp;lt;/math&amp;gt; es menor que &amp;lt;math&amp;gt;k_1&amp;lt;/math&amp;gt;. Concretamente vamos a tomar los siguientes valores para resolver el problema numéricamente; &amp;lt;math&amp;gt;a_0&amp;lt;/math&amp;gt;=3 ,  &amp;lt;math&amp;gt;b_0&amp;lt;/math&amp;gt;=1, &amp;lt;math&amp;gt;k_1&amp;lt;/math&amp;gt;=1,  &amp;lt;math&amp;gt;k_2&amp;lt;/math&amp;gt;=5, &amp;lt;math&amp;gt;k_2&amp;lt;/math&amp;gt;=1/5, .En ambos casos se resuelve para los primeros 10 segundos.&lt;br /&gt;
&lt;br /&gt;
==La reacción D es más rápida que la reacción C==&lt;br /&gt;
CASO    &amp;lt;math&amp;gt;k_1=5  &amp;lt;/math&amp;gt;   '''h=0.1''' &lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
&lt;br /&gt;
%datos&lt;br /&gt;
y0=[0;0];&lt;br /&gt;
z0=[0;0];&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;
%matriz de las soluciones&lt;br /&gt;
y=zeros(2,length(t)); %euler&lt;br /&gt;
y(:,1)=y0;&lt;br /&gt;
 &lt;br /&gt;
z=zeros(2,length(t)); %runge-kutta&lt;br /&gt;
z(:,1)=y0;&lt;br /&gt;
 &lt;br /&gt;
for i=1:length(t)-1&lt;br /&gt;
 %euler&lt;br /&gt;
 y(:,i+1)=y(:,i)+h*[1*(3-y(1,i))*(1-y(1,i)); 5*(y(1,i)-y(2,i))];&lt;br /&gt;
 %runge-kutta&lt;br /&gt;
 K1=[1*(3-z(1,i))*(1-z(1,i)); 5*(z(1,i)-z(2,i))];&lt;br /&gt;
 K2=[1*(3-(z(1,i)+h/2*K1(1)))*(1-(z(1,i)+h/2*K1(1))); 5*((y(1,i)+h/2*K1(2))-(y(2,i)+h/2*K1(2)))];&lt;br /&gt;
 K3=[1*(3-(z(1,i)+h/2*K2(1)))*(1-(z(1,i)+h/2*K2(1))); 5*((y(1,i)+h/2*K2(2))-(y(2,i)+h/2*K2(2)))];&lt;br /&gt;
 K4=[1*(3-(z(1,i)+h*K3(1)))*(1-(z(1,i)+h*K3(1))); 5*((y(1,i)+h*K3(2))-(y(2,i)+h*K3(2)))];&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;
% se calcula la concentración de C=y1t)-y2(t)&lt;br /&gt;
Ay=y(1,:)-y(2,:); %euler&lt;br /&gt;
Az=z(1,:)-z(2,:); %runge-kutta&lt;br /&gt;
 &lt;br /&gt;
figure(1)&lt;br /&gt;
hold on&lt;br /&gt;
plot(t,Ay) %concentración de C por euler&lt;br /&gt;
plot(t,y(2,:),'r') %concentración de D por euler&lt;br /&gt;
plot(t,Az,'k') %concentración de C por runge-kutta&lt;br /&gt;
plot(t,z(2,:),'g') %concentración de D por runge-kutta&lt;br /&gt;
legend('concentración de C por euler','concentración de D por euler','concentración de C por runge-kutta','concentración de D por runge-kutta','Location','best')&lt;br /&gt;
hold off&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:graficoa.jpeg|500px|miniaturadeimagen|center|Reacción compleja]]&lt;br /&gt;
&lt;br /&gt;
Se observa que en en los primeros instantes aumentan las concentraciones de &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; aumentan sus concentraciones. Antes de que pase 1 segundo, la concentración &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; alcanza un máximo (de unos 0.3 molar) y va disminuyendo progresivamente hasta alcanzar un valor de 0 molar. La concentración &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; sigue creciendo hasta llegar a 1 molar. Una vez que tanto &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; como &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; alcanzan estos valores, se estabiliza la reacción. &lt;br /&gt;
&lt;br /&gt;
Como hemos impuesto que la reacción &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; es más rápida que &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt;, se observa que &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; empieza creciendo más rápidamente, pero como reacciona más despacio que &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; su concentración disminuye progresivamente, mientras que la de &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; aumenta.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''CASO'''  &amp;lt;math&amp;gt;k_2=5  &amp;lt;/math&amp;gt;   '''h=0.3''' &lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
&lt;br /&gt;
%datos&lt;br /&gt;
y0=[0;0];&lt;br /&gt;
z0=[0;0];&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=10;&lt;br /&gt;
h=0.3;&lt;br /&gt;
 &lt;br /&gt;
%variable independiente t&lt;br /&gt;
t=t0:h:tN;&lt;br /&gt;
 &lt;br /&gt;
%matriz de las soluciones&lt;br /&gt;
y=zeros(2,length(t)); %euler&lt;br /&gt;
y(:,1)=y0;&lt;br /&gt;
 &lt;br /&gt;
z=zeros(2,length(t)); %runge-kutta&lt;br /&gt;
z(:,1)=y0;&lt;br /&gt;
 &lt;br /&gt;
for i=1:length(t)-1&lt;br /&gt;
 %euler&lt;br /&gt;
 y(:,i+1)=y(:,i)+h*[1*(3-y(1,i))*(1-y(1,i)); 5*(y(1,i)-y(2,i))];&lt;br /&gt;
 %runge-kutta&lt;br /&gt;
 K1=[1*(3-z(1,i))*(1-z(1,i)); 5*(z(1,i)-z(2,i))];&lt;br /&gt;
 K2=[1*(3-(z(1,i)+h/2*K1(1)))*(1-(z(1,i)+h/2*K1(1))); 5*((y(1,i)+h/2*K1(2))-(y(2,i)+h/2*K1(2)))];&lt;br /&gt;
 K3=[1*(3-(z(1,i)+h/2*K2(1)))*(1-(z(1,i)+h/2*K2(1))); 5*((y(1,i)+h/2*K2(2))-(y(2,i)+h/2*K2(2)))];&lt;br /&gt;
 K4=[1*(3-(z(1,i)+h*K3(1)))*(1-(z(1,i)+h*K3(1))); 5*((y(1,i)+h*K3(2))-(y(2,i)+h*K3(2)))];&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;
% se calcula la concentración de C=y1t)-y2(t)&lt;br /&gt;
Ay=y(1,:)-y(2,:); %euler&lt;br /&gt;
Az=z(1,:)-z(2,:); %runge-kutta&lt;br /&gt;
 &lt;br /&gt;
figure(1)&lt;br /&gt;
hold on&lt;br /&gt;
plot(t,Ay) %concentración de C por euler&lt;br /&gt;
plot(t,y(2,:),'r') %concentración de D por euler&lt;br /&gt;
plot(t,Az,'k') %concentración de C por runge-kutta&lt;br /&gt;
plot(t,z(2,:),'g') %concentración de D por runge-kutta&lt;br /&gt;
legend('concentración de C por euler','concentración de D por euler','concentración de C por runge-kutta','concentración de D por runge-kutta','Location','best')&lt;br /&gt;
hold off&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:graficob.jpeg|500px|miniaturadeimagen|center|Reacción compleja]]&lt;br /&gt;
&lt;br /&gt;
Repetimos el programa pero para un tamaño de paso mayor, de '''h=0.3''', y observamos que no  es suficientemente preciso, sobre todo al principio, no se puede analizar bien lo que está pasando en la reacción.&lt;br /&gt;
&lt;br /&gt;
==La reacción D es más lenta que la reacción C==&lt;br /&gt;
&lt;br /&gt;
CASO  &amp;lt;math&amp;gt;k_1 &amp;lt;/math&amp;gt;=1,   &amp;lt;math&amp;gt;k_2 &amp;lt;/math&amp;gt;=1/5&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
&lt;br /&gt;
%datos&lt;br /&gt;
y0=[0;0];&lt;br /&gt;
z0=[0;0];&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;
%matriz de las soluciones&lt;br /&gt;
y=zeros(2,length(t)); %euler&lt;br /&gt;
y(:,1)=y0;&lt;br /&gt;
 &lt;br /&gt;
z=zeros(2,length(t)); %runge-kutta&lt;br /&gt;
z(:,1)=y0;&lt;br /&gt;
 &lt;br /&gt;
for i=1:length(t)-1&lt;br /&gt;
 %euler&lt;br /&gt;
 y(:,i+1)=y(:,i)+h*[1*(3-y(1,i))*(1-y(1,i)); 1/5*(y(1,i)-y(2,i))];&lt;br /&gt;
 %runge-kutta&lt;br /&gt;
 K1=[1*(3-z(1,i))*(1-z(1,i)); 1/5*(z(1,i)-z(2,i))];&lt;br /&gt;
 K2=[1*(3-(z(1,i)+h/2*K1(1)))*(1-(z(1,i)+h/2*K1(1))); 1/5*((y(1,i)+h/2*K1(2))-(y(2,i)+h/2*K1(2)))];&lt;br /&gt;
 K3=[1*(3-(z(1,i)+h/2*K2(1)))*(1-(z(1,i)+h/2*K2(1))); 1/5*((y(1,i)+h/2*K2(2))-(y(2,i)+h/2*K2(2)))];&lt;br /&gt;
 K4=[1*(3-(z(1,i)+h*K3(1)))*(1-(z(1,i)+h*K3(1))); 1/5*((y(1,i)+h*K3(2))-(y(2,i)+h*K3(2)))];&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;
% se calcula la concentración de C=y1t)-y2(t)&lt;br /&gt;
Ay=y(1,:)-y(2,:); %euler&lt;br /&gt;
Az=z(1,:)-z(2,:); %runge-kutta&lt;br /&gt;
 &lt;br /&gt;
figure(1)&lt;br /&gt;
hold on&lt;br /&gt;
plot(t,Ay) %concentración de C por euler&lt;br /&gt;
plot(t,y(2,:),'r') %concentración de D por euler&lt;br /&gt;
plot(t,Az,'k') %concentración de C por runge-kutta&lt;br /&gt;
plot(t,z(2,:),'g') %concentración de D por runge-kutta&lt;br /&gt;
legend('concentración de C por euler','concentración de D por euler','concentración de C por runge-kutta','concentración de D por runge-kutta','Location','best')&lt;br /&gt;
hold off&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:graficoc.jpeg|500px|miniaturadeimagen|center|Reacción compleja]]&lt;br /&gt;
&lt;br /&gt;
Si ahora imponemos que la reacción  &amp;lt;math&amp;gt;C &amp;lt;/math&amp;gt; es más rápida que  &amp;lt;math&amp;gt;D &amp;lt;/math&amp;gt;, obtenemos lo siguiente. Se parece a la gráfica que obtuvimos en el programa anterior, pero  más extendida en el tiempo, más lenta.  &amp;lt;math&amp;gt;C &amp;lt;/math&amp;gt; alcanza una concentración máxima de unos 0.8 molar antes de empezar a decrecer a medida que avanza el tiempo y acercándose a un valor de '''0''' molar.  &amp;lt;math&amp;gt;D &amp;lt;/math&amp;gt; crece más lentamente que en la gráfica anterior, pero se aproxima al mismo valor, '''1''' molar.&lt;br /&gt;
Se observa que aunque hagamos la reacción  &amp;lt;math&amp;gt;C &amp;lt;/math&amp;gt; más rápida, tenemos las mismas concentraciones finales, pero tardan más tiempo en obtenerse, ya que la reacción tarda más en estabilizarse.&lt;br /&gt;
&lt;br /&gt;
&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>Joseva</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Reacciones_complejas_(Grupo_D1)&amp;diff=27151</id>
		<title>Reacciones complejas (Grupo D1)</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Reacciones_complejas_(Grupo_D1)&amp;diff=27151"/>
				<updated>2015-03-05T22:51:58Z</updated>
		
		<summary type="html">&lt;p&gt;Joseva: /* Método del Trapecio y Método de Runge-Kutta */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{ TrabajoED | Reacciones complejas (Grupo D1) | [[:Categoría:Ecuaciones Diferenciales|Ecuaciones Diferenciales]]|[[:Categoría:ED14/15|Curso 2014-15]] | Rincón Crespo, Kevin&lt;br /&gt;
&lt;br /&gt;
Rodríguez Gómez, Javier&lt;br /&gt;
&lt;br /&gt;
Sans Jiménez, Alejandro&lt;br /&gt;
&lt;br /&gt;
Sesto Muñoz, María Victoria&lt;br /&gt;
&lt;br /&gt;
Vallejo Asín, José Manuel &lt;br /&gt;
&lt;br /&gt;
Villarino Redondo, Álvaro }}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=Introducción=&lt;br /&gt;
Se considera una reacción química irreversible en una solución bien mezclada. Supondremos que la reacción ocurre para un volumen y temperatura constantes. Al inicio se encuentran dos reactivos A y B, que van formando un producto C en lo que se conoce como una reacción bimolecular, es decir, una molécula de A y una de B producen una de C, &lt;br /&gt;
                                                                     &amp;lt;math&amp;gt;A + B → C&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Supondremos también que se satisface la ley de acción de masas, que establece que la velocidad de reacción es proporcional al producto de las concentraciones de los reactivos.&lt;br /&gt;
&lt;br /&gt;
=Concentración del reactivo C a lo largo del tiempo=&lt;br /&gt;
En primer lugar, suponiendo que la reacción es irreversible, es decir, que C no puede volver a formar A y B, se puede expresar la situación mediante el siguiente problema de valor inicial, cuando t&amp;gt;0:&lt;br /&gt;
   &amp;lt;math&amp;gt;&lt;br /&gt;
   \left . &lt;br /&gt;
      \begin{matrix} &lt;br /&gt;
         y'(t)={k_{1}}({a_{0}}-y(t))({b_{0}}-y(t))=0\\&lt;br /&gt;
         y(0)=0&lt;br /&gt;
      \end{matrix}&lt;br /&gt;
   \right \}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Donde &amp;lt;math&amp;gt; {a_{0}}&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;{b_{0}}&amp;lt;/math&amp;gt; representan las concentraciones iniciales de '''A''' y '''B''' respectivamente y &amp;lt;math&amp;gt;{k_{1}}&amp;lt;/math&amp;gt; es la constante de proporcionalidad que indica la ley de acción de masas. &amp;lt;math&amp;gt;y’(t)&amp;lt;/math&amp;gt; representa la velocidad de reacción, es decir, la velocidad con que se forma el producto &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; ; mientras que la solución de la ecuación diferencial, &amp;lt;math&amp;gt;y(t)&amp;lt;/math&amp;gt; , representa la concentración de &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt;, la cantidad de compuesto que se ha formado. Para comprobar que la solución de este problema de Cauchy es única, comenzamos definiendo:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;math&amp;gt;f(t,y)={k_{1}}({a_{0}}-y(t))({b_{0}}-y(t))=0,   t&amp;gt;0 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Observamos que &amp;lt;math&amp;gt;f(t,y)&amp;lt;/math&amp;gt; es continua en el intervalo &amp;lt;math&amp;gt; I=(0,∞)∩B((0,0),r&amp;gt;0)&amp;lt;/math&amp;gt;, por lo que ya aseguramos la existencia de al menos una solución. Examinando la derivada parcial:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\frac{∂f}{∂y}=k_1(-a_0-b_0+2y)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Se deduce que al ser un polinomio no va a haber problemas de continuidad para ninguna bola. De esta forma, podemos asegurar que existe una única solución.&lt;br /&gt;
&lt;br /&gt;
==Concentración del reactivo C a lo largo del tiempo en un proceso reversible==&lt;br /&gt;
&lt;br /&gt;
Ahora bien, ¿qué pasaría si la reacción fuese reversible? Con esto lo que queremos indicar es que además de formarse  &amp;lt;math&amp;gt;C &amp;lt;/math&amp;gt;, este también se descompone de nuevo en  &amp;lt;math&amp;gt;A &amp;lt;/math&amp;gt; y  &amp;lt;math&amp;gt;B &amp;lt;/math&amp;gt;. Por lo tanto, nos quedaría una ecuación diferencial con la siguiente forma, cuando &amp;lt;math&amp;gt;t&amp;gt;0 &amp;lt;/math&amp;gt; :&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; y'(t)={k_{1}}({a_{0}}-y(t))({b_{0}}-y(t))-Cy(t)&amp;lt;/math&amp;gt;  &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Si nos fijamos, la modificación es sencillamente restar  &amp;lt;math&amp;gt;y(t) &amp;lt;/math&amp;gt; multiplicada por una constante, la cual refleja qué porcentaje de  &amp;lt;math&amp;gt;C &amp;lt;/math&amp;gt; se va descomponiendo a medida que se da, simultáneamente, la reacción  &amp;lt;math&amp;gt;A + B → C &amp;lt;/math&amp;gt;. Sin embargo, esta constante no puede tener cualquier valor, ya que en una reacción se cumple la conservación de masa. Por ello, a  &amp;lt;math&amp;gt;C &amp;lt;/math&amp;gt; le asociaremos el siguiente dominio:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;C∈(0,1)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Obsérvese que  &amp;lt;math&amp;gt;C &amp;lt;/math&amp;gt; tiene que ser mayor que 0 para que sea reversible, pero al mismo tiempo inferior que 1, ya que si no se estaría descomponiendo más compuesto  &amp;lt;math&amp;gt;C &amp;lt;/math&amp;gt; del que realmente se ha formado, en otras palabras, estaría apareciendo masa de la nada.&lt;br /&gt;
&lt;br /&gt;
=Método de Euler=&lt;br /&gt;
&lt;br /&gt;
Una vez llegados a este punto, se procede a ver una interpretación gráfica de la reacción. Para ello, se refleja en la gráfica (en un intervalo de 2 segundos), cómo varían las concentraciones tanto de &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt; (&amp;lt;math&amp;gt;a_0&amp;lt;/math&amp;gt;=3 mol/L) y &amp;lt;math&amp;gt;B&amp;lt;/math&amp;gt; (&amp;lt;math&amp;gt;b_0&amp;lt;/math&amp;gt;=1 mol/L) como de &amp;lt;math&amp;gt; C&amp;lt;/math&amp;gt;, para una &amp;lt;math&amp;gt;k_1&amp;lt;/math&amp;gt;=1 mol/s. Se comienza, por el momento, aplicando el método de Euler. Posteriormente se utilizarán métodos más precisos.&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo= &lt;br /&gt;
% Euler&lt;br /&gt;
clear all&lt;br /&gt;
% datos del problema&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=2;&lt;br /&gt;
y0=0;&lt;br /&gt;
h=0.1;&lt;br /&gt;
k1=1;&lt;br /&gt;
a0=3;&lt;br /&gt;
b0=1;&lt;br /&gt;
% Definimos la variable independiente&lt;br /&gt;
t=t0:h:tN;&lt;br /&gt;
% Guardamos los valores de la solución aproximada en el vector &amp;quot;y1&amp;quot; y&lt;br /&gt;
% establecemos los vectores de concentraciones A y B&lt;br /&gt;
y1=zeros(1,length(t)); &lt;br /&gt;
y1(1)=y0;&lt;br /&gt;
a1=zeros(1,length(t));&lt;br /&gt;
a1(1)=a0;&lt;br /&gt;
b1=zeros(1,length(t));&lt;br /&gt;
b1(1)=b0;&lt;br /&gt;
% A continuación, calculamos las componentes de los vectores y1, a y b&lt;br /&gt;
for i=1:length(t)-1&lt;br /&gt;
    y1(i+1)=y1(i)+h*(k1*(a0-y1(i))*(b0-y1(i)));    %Euler&lt;br /&gt;
    a1(i+1)=a0-y1(i+1); % evolución de la concentración de A&lt;br /&gt;
    b1(i+1)=b0-y1(i+1); % evolución de la concentración de B&lt;br /&gt;
end&lt;br /&gt;
%grafico &lt;br /&gt;
figure(1)&lt;br /&gt;
hold on&lt;br /&gt;
plot(t,y1,'g')&lt;br /&gt;
plot(t,a1,'r')&lt;br /&gt;
plot(t,b1,'b')&lt;br /&gt;
legend('concentración de C','concentración de A','concentración de B','location','best')&lt;br /&gt;
hold off &lt;br /&gt;
%en verde se muestra la concentración de C, en rojo la de A, y en azul la de B&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Archivo:3euler.jpeg|500px|miniaturadeimagen|center|Reacción compleja]]&lt;br /&gt;
&lt;br /&gt;
Aunque con observar los resultados ya podemos decir con casi absoluta seguridad cuáles son los límites de las concentraciones de cada reactivo &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;B&amp;lt;/math&amp;gt; y del producto &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt;, se ha diseñado un programa que, mediante diferencia de valores sucesivos de la variable &amp;lt;math&amp;gt;y(t)&amp;lt;/math&amp;gt;, nos devuelve el valor de la función cuando dicha diferencia es muy pequeña '''(se ha puesto una diferencia de 0.001)''', es decir, cuando tenemos una asíntota al tender &amp;lt;math&amp;gt;t→∞&amp;lt;/math&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
%Estudio de las asíntotas&lt;br /&gt;
t1=t0:h:10;%se aumenta la longitud de t, y se estima que se alcanzarán las asíntotas antes de t=10&lt;br /&gt;
y_=zeros(1,length(t1)); %se define un vector y_ idéntico a y1 pero con t hasta 10&lt;br /&gt;
a_=y_;&lt;br /&gt;
b_=y_;&lt;br /&gt;
y_(1)=y0;&lt;br /&gt;
a_(1)=a0;&lt;br /&gt;
b_(1)=b0;&lt;br /&gt;
for i=1:length(t1)-1&lt;br /&gt;
    y_(i+1)=y_(i)+h*(k1*(a0-y_(i))*(b0-y_(i)));&lt;br /&gt;
    diferencia=y_(i+1)-y_(i);&lt;br /&gt;
    if abs(diferencia)&amp;lt;=0.001&lt;br /&gt;
        limiteC=y_(i+1)&lt;br /&gt;
        break&lt;br /&gt;
    end&lt;br /&gt;
end&lt;br /&gt;
for i=1:length(t1)-1&lt;br /&gt;
    y_(i+1)=y_(i)+h*(k1*(a0-y_(i))*(b0-y_(i)));    &lt;br /&gt;
    a_(i+1)=a0-y_(i+1);&lt;br /&gt;
    diferencia2=a_(i+1)-a_(i);&lt;br /&gt;
    if abs(diferencia2)&amp;lt;=0.001&lt;br /&gt;
        limiteA=a_(i+1)&lt;br /&gt;
        break&lt;br /&gt;
    end&lt;br /&gt;
end&lt;br /&gt;
for i=1:length(t1)-1&lt;br /&gt;
    y_(i+1)=y_(i)+h*(k1*(a0-y_(i))*(b0-y_(i)));    &lt;br /&gt;
    b_(i+1)=b0-y_(i+1);&lt;br /&gt;
    diferencia3=b_(i+1)-b_(i);&lt;br /&gt;
    if abs(diferencia3)&amp;lt;=0.001&lt;br /&gt;
        limiteB=b_(i+1)&lt;br /&gt;
        break&lt;br /&gt;
    end&lt;br /&gt;
end&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
Que nos devuelve unos valores de las concentraciones para el límite de:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\lim A=2,0036≈2 mol/L&amp;lt;/math&amp;gt;:     &lt;br /&gt;
&amp;lt;math&amp;gt;\lim B=0,0036≈0mol/L&amp;lt;/math&amp;gt;:         &lt;br /&gt;
&amp;lt;math&amp;gt;\lim C=0,9964≈1mol/L&amp;lt;/math&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
Lo cual es lógico, ya que &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;B&amp;lt;/math&amp;gt; se combinan en una proporción de 1:1, luego &amp;lt;math&amp;gt;B&amp;lt;/math&amp;gt;, que tiene una concentración inicial de &amp;lt;math&amp;gt;b_0&amp;lt;/math&amp;gt;=1, será el reactivo limitante (el que desaparecerá por completo), mientras que &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt;, con &amp;lt;math&amp;gt;a_0&amp;lt;/math&amp;gt;=3, acabará con una concentración molar final igual a 2, y &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt;, del que no habia nada,alcanza una concentraccion de &amp;lt;math&amp;gt;1mol/L&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
= Método del Trapecio y Método de Runge-Kutta=&lt;br /&gt;
&lt;br /&gt;
A continuación, para obtener con más precisión las representaciones gráficas de las respectivas concentraciones, se opta por utilizar los métodos de los &amp;lt;math&amp;gt;Trapecios&amp;lt;/math&amp;gt; (segundo orden) y de &amp;lt;math&amp;gt;Runge-Kutta&amp;lt;/math&amp;gt; (cuarto orden). Desgraciadamente, no es posible comparar los errores cometidos por cada método con la expresión real de la concentración de C, ya que la ecuación diferencial no es de fácil resolución analítica, luego resulta imposible alcanzar una expresión explícita de la concentración en términos de nuestros datos conocidos; &amp;lt;math&amp;gt;a_0&amp;lt;/math&amp;gt;,&amp;lt;math&amp;gt;b_0&amp;lt;/math&amp;gt;,&amp;lt;math&amp;gt;k_1&amp;lt;/math&amp;gt;,&amp;lt;math&amp;gt;t (tiempo)&amp;lt;/math&amp;gt;.  Sin embargo, podemos confiar con bastante seguridad en el método sobre todo de &amp;lt;math&amp;gt;Runge-Kutta&amp;lt;/math&amp;gt;, debido a su cuarto orden. &lt;br /&gt;
&lt;br /&gt;
Para los trapecios, al ser un método implícito, es necesario despejar la componente &amp;lt;math&amp;gt;y_{n+1}&amp;lt;/math&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;y_{n+1}=\frac{(1+\frac{h}{2}*k_1*(a_0+b_0))}{}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Cabe destacar que este programa parte de los datos ya establecidos en el programa de Euler para '''t0, tN, y0, a0, b0, k1 y h''':&lt;br /&gt;
{{matlab|codigo= &lt;br /&gt;
%Trapecios&lt;br /&gt;
y2=zeros(1,length(t)); &lt;br /&gt;
a2=y2;&lt;br /&gt;
b2=y2;&lt;br /&gt;
y2(1)=y0;&lt;br /&gt;
a2(1)=a0;&lt;br /&gt;
b2(1)=b0;&lt;br /&gt;
for i=1:length(t)-1&lt;br /&gt;
    y2(i+1)=((1+0.5*h*k1*(a0+b0))-sqrt((1+0.5*h*k1*(a0+b0))^2-2*h*k1*(y2(i)+0.5*h*k1*(a0-y2(i))*(b0-y2(i))+0.5*h*k1*a0*b0)))/(k1*h);&lt;br /&gt;
    a2(i+1)=a0-y2(i+1);&lt;br /&gt;
    b2(i+1)=b0-y2(i+1);&lt;br /&gt;
end&lt;br /&gt;
 &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
%Runge-Kutta&lt;br /&gt;
y3=zeros(1,length(t)); &lt;br /&gt;
a3=y3;&lt;br /&gt;
b3=y3;&lt;br /&gt;
y3(1)=y0;&lt;br /&gt;
a3(1)=a0;&lt;br /&gt;
b3(1)=b0;&lt;br /&gt;
for i=1:length(t)-1 &lt;br /&gt;
    r1=k1*(a0-y3(i))*(b0-y3(i));&lt;br /&gt;
    r2=k1*(a0-y3(i)-0.5*r1*h)*(b0-y3(i)-0.5*r1*h);&lt;br /&gt;
    r3=k1*(a0-y3(i)-0.5*r2*h)*(b0-y3(i)-0.5*r2*h);&lt;br /&gt;
    r4=k1*(a0-y3(i)-r3*h)*(b0-y3(i)-r3*h);&lt;br /&gt;
    y3(i+1)=y3(i)+h/6*(r1+2*r2+2*r3+r4);&lt;br /&gt;
    a3(i+1)=a0-y3(i+1);&lt;br /&gt;
    b3(i+1)=b0-y3(i+1);&lt;br /&gt;
end&lt;br /&gt;
%se pintan las dos, en azul las soluciones de los Trapecios, y en negro las&lt;br /&gt;
%de Runge-Kutta. &lt;br /&gt;
figure(2)&lt;br /&gt;
hold on&lt;br /&gt;
plot(t,y2)&lt;br /&gt;
plot(t,a2)&lt;br /&gt;
plot(t,b2)&lt;br /&gt;
plot(t,y3,'k')&lt;br /&gt;
plot(t,a3,'k')&lt;br /&gt;
plot(t,b3,'k')&lt;br /&gt;
hold off&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
Que proporciona el resultado que se puede observar en la primera gráfica adjunta. Como podemos ver, es prácticamente indistinguible una gráfica de la otra. Sin embargo, si la juntamos con las gráficas proporcionadas por el método de Euler, que se representa ahora en rojo, la diferencia es palpable (ver gráfica 2), lo cual evidencia la peor precisión del método de Euler.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:4trapeciokung.jpeg|500px|miniaturadeimagen|center|Reacción compleja]]&lt;br /&gt;
&lt;br /&gt;
[[Archivo:4comparacion.jpeg|500px|miniaturadeimagen|center|Gráfico 2]]&lt;br /&gt;
&lt;br /&gt;
=Reacción consecutiva=&lt;br /&gt;
&lt;br /&gt;
Consideremos ahora que se produce una reacción consecutiva de la forma: &lt;br /&gt;
&lt;br /&gt;
                                                                   &amp;lt;math&amp;gt;A + B → k_1C → k_2D&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
De tal modo que los reactivos &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;B&amp;lt;/math&amp;gt; se combinan en la proporción 1:1 para formar compuesto &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt;, el cual, a su vez, se va descomponiendo para formar compuesto &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt;. Al igual que se ha hecho antes al analizar las otras reacciones, se considerará que se cumple la ley de acción de masas. Es decir, la velocidad con la que se forma compuesto &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; es proporcional a las concentraciones existentes de &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt; y de &amp;lt;math&amp;gt;B&amp;lt;/math&amp;gt; y del mismo modo la de formación de la sustancia &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; lo es a la concentración de &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; que se ha ido formando.&lt;br /&gt;
&lt;br /&gt;
Esta reacción consecutiva está representada por el siguiente problema de valor inicial:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;&lt;br /&gt;
   \left . &lt;br /&gt;
      \begin{matrix} &lt;br /&gt;
         y'_1(t)={k_{1}}({a_{0}}-y_1(t))({b_{0}}-y_1(t))\\&lt;br /&gt;
         y'_2(t)={k_{2}}(y_1(t)-y_2(t))\\&lt;br /&gt;
y_1(0)=0\\y_2(0)=0&lt;br /&gt;
      \end{matrix}&lt;br /&gt;
   \right \}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
Donde &amp;lt;math&amp;gt;a_0&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;b_0&amp;lt;/math&amp;gt; representan las concentraciones iniciales de &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;B&amp;lt;/math&amp;gt; respectivamente, &amp;lt;math&amp;gt;k_1&amp;lt;/math&amp;gt; es la constante de proporcionalidad que rige la primera reacción y &amp;lt;math&amp;gt;k_2&amp;lt;/math&amp;gt; la que rige la segunda reacción o reacción consecutiva. &amp;lt;math&amp;gt;y_1’(t)&amp;lt;/math&amp;gt; e  &amp;lt;math&amp;gt;y_2’(t)&amp;lt;/math&amp;gt; representan las velocidades de las reacciones, es decir, las velocidades con que se forman los productos &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt;. &amp;lt;math&amp;gt;y_2(t)&amp;lt;/math&amp;gt; representa la concentración del producto &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; pero es importante apreciar que en este caso &amp;lt;math&amp;gt;y_1(t)&amp;lt;/math&amp;gt; no nos da el valor de la concentración de &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; directamente, sino que ésta será &amp;lt;math&amp;gt;y_1(t)&amp;lt;/math&amp;gt;- &amp;lt;math&amp;gt;y_2(t)&amp;lt;/math&amp;gt;, la cantidad que se forma en la primera reacción menos la que se emplea para formar el producto &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; en la segunda.&lt;br /&gt;
&lt;br /&gt;
Este problema se va a resolver para dos casos diferentes. Uno en el cual se considera que la segunda reacción es más rápida que la primera, lo que supone tomar un valor de la constante &amp;lt;math&amp;gt;k_2&amp;lt;/math&amp;gt;  mayor que &amp;lt;math&amp;gt;k_1&amp;lt;/math&amp;gt;. Y otro en el cual se considera que es más lenta, lo que implica que &amp;lt;math&amp;gt;k_2&amp;lt;/math&amp;gt; es menor que &amp;lt;math&amp;gt;k_1&amp;lt;/math&amp;gt;. Concretamente vamos a tomar los siguientes valores para resolver el problema numéricamente; &amp;lt;math&amp;gt;a_0&amp;lt;/math&amp;gt;=3 ,  &amp;lt;math&amp;gt;b_0&amp;lt;/math&amp;gt;=1, &amp;lt;math&amp;gt;k_1&amp;lt;/math&amp;gt;=1,  &amp;lt;math&amp;gt;k_2&amp;lt;/math&amp;gt;=5, &amp;lt;math&amp;gt;k_2&amp;lt;/math&amp;gt;=1/5, .En ambos casos se resuelve para los primeros 10 segundos.&lt;br /&gt;
&lt;br /&gt;
==La reacción D es más rápida que la reacción C==&lt;br /&gt;
CASO    &amp;lt;math&amp;gt;k_1=5  &amp;lt;/math&amp;gt;   '''h=0.1''' &lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
&lt;br /&gt;
%datos&lt;br /&gt;
y0=[0;0];&lt;br /&gt;
z0=[0;0];&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;
%matriz de las soluciones&lt;br /&gt;
y=zeros(2,length(t)); %euler&lt;br /&gt;
y(:,1)=y0;&lt;br /&gt;
 &lt;br /&gt;
z=zeros(2,length(t)); %runge-kutta&lt;br /&gt;
z(:,1)=y0;&lt;br /&gt;
 &lt;br /&gt;
for i=1:length(t)-1&lt;br /&gt;
 %euler&lt;br /&gt;
 y(:,i+1)=y(:,i)+h*[1*(3-y(1,i))*(1-y(1,i)); 5*(y(1,i)-y(2,i))];&lt;br /&gt;
 %runge-kutta&lt;br /&gt;
 K1=[1*(3-z(1,i))*(1-z(1,i)); 5*(z(1,i)-z(2,i))];&lt;br /&gt;
 K2=[1*(3-(z(1,i)+h/2*K1(1)))*(1-(z(1,i)+h/2*K1(1))); 5*((y(1,i)+h/2*K1(2))-(y(2,i)+h/2*K1(2)))];&lt;br /&gt;
 K3=[1*(3-(z(1,i)+h/2*K2(1)))*(1-(z(1,i)+h/2*K2(1))); 5*((y(1,i)+h/2*K2(2))-(y(2,i)+h/2*K2(2)))];&lt;br /&gt;
 K4=[1*(3-(z(1,i)+h*K3(1)))*(1-(z(1,i)+h*K3(1))); 5*((y(1,i)+h*K3(2))-(y(2,i)+h*K3(2)))];&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;
% se calcula la concentración de C=y1t)-y2(t)&lt;br /&gt;
Ay=y(1,:)-y(2,:); %euler&lt;br /&gt;
Az=z(1,:)-z(2,:); %runge-kutta&lt;br /&gt;
 &lt;br /&gt;
figure(1)&lt;br /&gt;
hold on&lt;br /&gt;
plot(t,Ay) %concentración de C por euler&lt;br /&gt;
plot(t,y(2,:),'r') %concentración de D por euler&lt;br /&gt;
plot(t,Az,'k') %concentración de C por runge-kutta&lt;br /&gt;
plot(t,z(2,:),'g') %concentración de D por runge-kutta&lt;br /&gt;
legend('concentración de C por euler','concentración de D por euler','concentración de C por runge-kutta','concentración de D por runge-kutta','Location','best')&lt;br /&gt;
hold off&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:graficoa.jpeg|500px|miniaturadeimagen|center|Reacción compleja]]&lt;br /&gt;
&lt;br /&gt;
Se observa que en en los primeros instantes aumentan las concentraciones de &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; aumentan sus concentraciones. Antes de que pase 1 segundo, la concentración &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; alcanza un máximo (de unos 0.3 molar) y va disminuyendo progresivamente hasta alcanzar un valor de 0 molar. La concentración &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; sigue creciendo hasta llegar a 1 molar. Una vez que tanto &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; como &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; alcanzan estos valores, se estabiliza la reacción. &lt;br /&gt;
&lt;br /&gt;
Como hemos impuesto que la reacción &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; es más rápida que &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt;, se observa que &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; empieza creciendo más rápidamente, pero como reacciona más despacio que &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; su concentración disminuye progresivamente, mientras que la de &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; aumenta.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''CASO'''  &amp;lt;math&amp;gt;k_2=5  &amp;lt;/math&amp;gt;   '''h=0.3''' &lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
&lt;br /&gt;
%datos&lt;br /&gt;
y0=[0;0];&lt;br /&gt;
z0=[0;0];&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=10;&lt;br /&gt;
h=0.3;&lt;br /&gt;
 &lt;br /&gt;
%variable independiente t&lt;br /&gt;
t=t0:h:tN;&lt;br /&gt;
 &lt;br /&gt;
%matriz de las soluciones&lt;br /&gt;
y=zeros(2,length(t)); %euler&lt;br /&gt;
y(:,1)=y0;&lt;br /&gt;
 &lt;br /&gt;
z=zeros(2,length(t)); %runge-kutta&lt;br /&gt;
z(:,1)=y0;&lt;br /&gt;
 &lt;br /&gt;
for i=1:length(t)-1&lt;br /&gt;
 %euler&lt;br /&gt;
 y(:,i+1)=y(:,i)+h*[1*(3-y(1,i))*(1-y(1,i)); 5*(y(1,i)-y(2,i))];&lt;br /&gt;
 %runge-kutta&lt;br /&gt;
 K1=[1*(3-z(1,i))*(1-z(1,i)); 5*(z(1,i)-z(2,i))];&lt;br /&gt;
 K2=[1*(3-(z(1,i)+h/2*K1(1)))*(1-(z(1,i)+h/2*K1(1))); 5*((y(1,i)+h/2*K1(2))-(y(2,i)+h/2*K1(2)))];&lt;br /&gt;
 K3=[1*(3-(z(1,i)+h/2*K2(1)))*(1-(z(1,i)+h/2*K2(1))); 5*((y(1,i)+h/2*K2(2))-(y(2,i)+h/2*K2(2)))];&lt;br /&gt;
 K4=[1*(3-(z(1,i)+h*K3(1)))*(1-(z(1,i)+h*K3(1))); 5*((y(1,i)+h*K3(2))-(y(2,i)+h*K3(2)))];&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;
% se calcula la concentración de C=y1t)-y2(t)&lt;br /&gt;
Ay=y(1,:)-y(2,:); %euler&lt;br /&gt;
Az=z(1,:)-z(2,:); %runge-kutta&lt;br /&gt;
 &lt;br /&gt;
figure(1)&lt;br /&gt;
hold on&lt;br /&gt;
plot(t,Ay) %concentración de C por euler&lt;br /&gt;
plot(t,y(2,:),'r') %concentración de D por euler&lt;br /&gt;
plot(t,Az,'k') %concentración de C por runge-kutta&lt;br /&gt;
plot(t,z(2,:),'g') %concentración de D por runge-kutta&lt;br /&gt;
legend('concentración de C por euler','concentración de D por euler','concentración de C por runge-kutta','concentración de D por runge-kutta','Location','best')&lt;br /&gt;
hold off&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:graficob.jpeg|500px|miniaturadeimagen|center|Reacción compleja]]&lt;br /&gt;
&lt;br /&gt;
Repetimos el programa pero para un tamaño de paso mayor, de '''h=0.3''', y observamos que no  es suficientemente preciso, sobre todo al principio, no se puede analizar bien lo que está pasando en la reacción.&lt;br /&gt;
&lt;br /&gt;
==La reacción D es más lenta que la reacción C==&lt;br /&gt;
&lt;br /&gt;
CASO  &amp;lt;math&amp;gt;k_1 &amp;lt;/math&amp;gt;=1,   &amp;lt;math&amp;gt;k_2 &amp;lt;/math&amp;gt;=1/5&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
&lt;br /&gt;
%datos&lt;br /&gt;
y0=[0;0];&lt;br /&gt;
z0=[0;0];&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;
%matriz de las soluciones&lt;br /&gt;
y=zeros(2,length(t)); %euler&lt;br /&gt;
y(:,1)=y0;&lt;br /&gt;
 &lt;br /&gt;
z=zeros(2,length(t)); %runge-kutta&lt;br /&gt;
z(:,1)=y0;&lt;br /&gt;
 &lt;br /&gt;
for i=1:length(t)-1&lt;br /&gt;
 %euler&lt;br /&gt;
 y(:,i+1)=y(:,i)+h*[1*(3-y(1,i))*(1-y(1,i)); 1/5*(y(1,i)-y(2,i))];&lt;br /&gt;
 %runge-kutta&lt;br /&gt;
 K1=[1*(3-z(1,i))*(1-z(1,i)); 1/5*(z(1,i)-z(2,i))];&lt;br /&gt;
 K2=[1*(3-(z(1,i)+h/2*K1(1)))*(1-(z(1,i)+h/2*K1(1))); 1/5*((y(1,i)+h/2*K1(2))-(y(2,i)+h/2*K1(2)))];&lt;br /&gt;
 K3=[1*(3-(z(1,i)+h/2*K2(1)))*(1-(z(1,i)+h/2*K2(1))); 1/5*((y(1,i)+h/2*K2(2))-(y(2,i)+h/2*K2(2)))];&lt;br /&gt;
 K4=[1*(3-(z(1,i)+h*K3(1)))*(1-(z(1,i)+h*K3(1))); 1/5*((y(1,i)+h*K3(2))-(y(2,i)+h*K3(2)))];&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;
% se calcula la concentración de C=y1t)-y2(t)&lt;br /&gt;
Ay=y(1,:)-y(2,:); %euler&lt;br /&gt;
Az=z(1,:)-z(2,:); %runge-kutta&lt;br /&gt;
 &lt;br /&gt;
figure(1)&lt;br /&gt;
hold on&lt;br /&gt;
plot(t,Ay) %concentración de C por euler&lt;br /&gt;
plot(t,y(2,:),'r') %concentración de D por euler&lt;br /&gt;
plot(t,Az,'k') %concentración de C por runge-kutta&lt;br /&gt;
plot(t,z(2,:),'g') %concentración de D por runge-kutta&lt;br /&gt;
legend('concentración de C por euler','concentración de D por euler','concentración de C por runge-kutta','concentración de D por runge-kutta','Location','best')&lt;br /&gt;
hold off&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:graficoc.jpeg|500px|miniaturadeimagen|center|Reacción compleja]]&lt;br /&gt;
&lt;br /&gt;
Si ahora imponemos que la reacción  &amp;lt;math&amp;gt;C &amp;lt;/math&amp;gt; es más rápida que  &amp;lt;math&amp;gt;D &amp;lt;/math&amp;gt;, obtenemos lo siguiente. Se parece a la gráfica que obtuvimos en el programa anterior, pero  más extendida en el tiempo, más lenta.  &amp;lt;math&amp;gt;C &amp;lt;/math&amp;gt; alcanza una concentración máxima de unos 0.8 molar antes de empezar a decrecer a medida que avanza el tiempo y acercándose a un valor de '''0''' molar.  &amp;lt;math&amp;gt;D &amp;lt;/math&amp;gt; crece más lentamente que en la gráfica anterior, pero se aproxima al mismo valor, '''1''' molar.&lt;br /&gt;
Se observa que aunque hagamos la reacción  &amp;lt;math&amp;gt;C &amp;lt;/math&amp;gt; más rápida, tenemos las mismas concentraciones finales, pero tardan más tiempo en obtenerse, ya que la reacción tarda más en estabilizarse.&lt;br /&gt;
&lt;br /&gt;
&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>Joseva</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Reacciones_complejas_(Grupo_D1)&amp;diff=27150</id>
		<title>Reacciones complejas (Grupo D1)</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Reacciones_complejas_(Grupo_D1)&amp;diff=27150"/>
				<updated>2015-03-05T22:51:23Z</updated>
		
		<summary type="html">&lt;p&gt;Joseva: /* Método del Trapecio y Método de Runge-Kutta */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{ TrabajoED | Reacciones complejas (Grupo D1) | [[:Categoría:Ecuaciones Diferenciales|Ecuaciones Diferenciales]]|[[:Categoría:ED14/15|Curso 2014-15]] | Rincón Crespo, Kevin&lt;br /&gt;
&lt;br /&gt;
Rodríguez Gómez, Javier&lt;br /&gt;
&lt;br /&gt;
Sans Jiménez, Alejandro&lt;br /&gt;
&lt;br /&gt;
Sesto Muñoz, María Victoria&lt;br /&gt;
&lt;br /&gt;
Vallejo Asín, José Manuel &lt;br /&gt;
&lt;br /&gt;
Villarino Redondo, Álvaro }}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=Introducción=&lt;br /&gt;
Se considera una reacción química irreversible en una solución bien mezclada. Supondremos que la reacción ocurre para un volumen y temperatura constantes. Al inicio se encuentran dos reactivos A y B, que van formando un producto C en lo que se conoce como una reacción bimolecular, es decir, una molécula de A y una de B producen una de C, &lt;br /&gt;
                                                                     &amp;lt;math&amp;gt;A + B → C&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Supondremos también que se satisface la ley de acción de masas, que establece que la velocidad de reacción es proporcional al producto de las concentraciones de los reactivos.&lt;br /&gt;
&lt;br /&gt;
=Concentración del reactivo C a lo largo del tiempo=&lt;br /&gt;
En primer lugar, suponiendo que la reacción es irreversible, es decir, que C no puede volver a formar A y B, se puede expresar la situación mediante el siguiente problema de valor inicial, cuando t&amp;gt;0:&lt;br /&gt;
   &amp;lt;math&amp;gt;&lt;br /&gt;
   \left . &lt;br /&gt;
      \begin{matrix} &lt;br /&gt;
         y'(t)={k_{1}}({a_{0}}-y(t))({b_{0}}-y(t))=0\\&lt;br /&gt;
         y(0)=0&lt;br /&gt;
      \end{matrix}&lt;br /&gt;
   \right \}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Donde &amp;lt;math&amp;gt; {a_{0}}&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;{b_{0}}&amp;lt;/math&amp;gt; representan las concentraciones iniciales de '''A''' y '''B''' respectivamente y &amp;lt;math&amp;gt;{k_{1}}&amp;lt;/math&amp;gt; es la constante de proporcionalidad que indica la ley de acción de masas. &amp;lt;math&amp;gt;y’(t)&amp;lt;/math&amp;gt; representa la velocidad de reacción, es decir, la velocidad con que se forma el producto &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; ; mientras que la solución de la ecuación diferencial, &amp;lt;math&amp;gt;y(t)&amp;lt;/math&amp;gt; , representa la concentración de &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt;, la cantidad de compuesto que se ha formado. Para comprobar que la solución de este problema de Cauchy es única, comenzamos definiendo:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;math&amp;gt;f(t,y)={k_{1}}({a_{0}}-y(t))({b_{0}}-y(t))=0,   t&amp;gt;0 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Observamos que &amp;lt;math&amp;gt;f(t,y)&amp;lt;/math&amp;gt; es continua en el intervalo &amp;lt;math&amp;gt; I=(0,∞)∩B((0,0),r&amp;gt;0)&amp;lt;/math&amp;gt;, por lo que ya aseguramos la existencia de al menos una solución. Examinando la derivada parcial:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\frac{∂f}{∂y}=k_1(-a_0-b_0+2y)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Se deduce que al ser un polinomio no va a haber problemas de continuidad para ninguna bola. De esta forma, podemos asegurar que existe una única solución.&lt;br /&gt;
&lt;br /&gt;
==Concentración del reactivo C a lo largo del tiempo en un proceso reversible==&lt;br /&gt;
&lt;br /&gt;
Ahora bien, ¿qué pasaría si la reacción fuese reversible? Con esto lo que queremos indicar es que además de formarse  &amp;lt;math&amp;gt;C &amp;lt;/math&amp;gt;, este también se descompone de nuevo en  &amp;lt;math&amp;gt;A &amp;lt;/math&amp;gt; y  &amp;lt;math&amp;gt;B &amp;lt;/math&amp;gt;. Por lo tanto, nos quedaría una ecuación diferencial con la siguiente forma, cuando &amp;lt;math&amp;gt;t&amp;gt;0 &amp;lt;/math&amp;gt; :&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; y'(t)={k_{1}}({a_{0}}-y(t))({b_{0}}-y(t))-Cy(t)&amp;lt;/math&amp;gt;  &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Si nos fijamos, la modificación es sencillamente restar  &amp;lt;math&amp;gt;y(t) &amp;lt;/math&amp;gt; multiplicada por una constante, la cual refleja qué porcentaje de  &amp;lt;math&amp;gt;C &amp;lt;/math&amp;gt; se va descomponiendo a medida que se da, simultáneamente, la reacción  &amp;lt;math&amp;gt;A + B → C &amp;lt;/math&amp;gt;. Sin embargo, esta constante no puede tener cualquier valor, ya que en una reacción se cumple la conservación de masa. Por ello, a  &amp;lt;math&amp;gt;C &amp;lt;/math&amp;gt; le asociaremos el siguiente dominio:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;C∈(0,1)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Obsérvese que  &amp;lt;math&amp;gt;C &amp;lt;/math&amp;gt; tiene que ser mayor que 0 para que sea reversible, pero al mismo tiempo inferior que 1, ya que si no se estaría descomponiendo más compuesto  &amp;lt;math&amp;gt;C &amp;lt;/math&amp;gt; del que realmente se ha formado, en otras palabras, estaría apareciendo masa de la nada.&lt;br /&gt;
&lt;br /&gt;
=Método de Euler=&lt;br /&gt;
&lt;br /&gt;
Una vez llegados a este punto, se procede a ver una interpretación gráfica de la reacción. Para ello, se refleja en la gráfica (en un intervalo de 2 segundos), cómo varían las concentraciones tanto de &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt; (&amp;lt;math&amp;gt;a_0&amp;lt;/math&amp;gt;=3 mol/L) y &amp;lt;math&amp;gt;B&amp;lt;/math&amp;gt; (&amp;lt;math&amp;gt;b_0&amp;lt;/math&amp;gt;=1 mol/L) como de &amp;lt;math&amp;gt; C&amp;lt;/math&amp;gt;, para una &amp;lt;math&amp;gt;k_1&amp;lt;/math&amp;gt;=1 mol/s. Se comienza, por el momento, aplicando el método de Euler. Posteriormente se utilizarán métodos más precisos.&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo= &lt;br /&gt;
% Euler&lt;br /&gt;
clear all&lt;br /&gt;
% datos del problema&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=2;&lt;br /&gt;
y0=0;&lt;br /&gt;
h=0.1;&lt;br /&gt;
k1=1;&lt;br /&gt;
a0=3;&lt;br /&gt;
b0=1;&lt;br /&gt;
% Definimos la variable independiente&lt;br /&gt;
t=t0:h:tN;&lt;br /&gt;
% Guardamos los valores de la solución aproximada en el vector &amp;quot;y1&amp;quot; y&lt;br /&gt;
% establecemos los vectores de concentraciones A y B&lt;br /&gt;
y1=zeros(1,length(t)); &lt;br /&gt;
y1(1)=y0;&lt;br /&gt;
a1=zeros(1,length(t));&lt;br /&gt;
a1(1)=a0;&lt;br /&gt;
b1=zeros(1,length(t));&lt;br /&gt;
b1(1)=b0;&lt;br /&gt;
% A continuación, calculamos las componentes de los vectores y1, a y b&lt;br /&gt;
for i=1:length(t)-1&lt;br /&gt;
    y1(i+1)=y1(i)+h*(k1*(a0-y1(i))*(b0-y1(i)));    %Euler&lt;br /&gt;
    a1(i+1)=a0-y1(i+1); % evolución de la concentración de A&lt;br /&gt;
    b1(i+1)=b0-y1(i+1); % evolución de la concentración de B&lt;br /&gt;
end&lt;br /&gt;
%grafico &lt;br /&gt;
figure(1)&lt;br /&gt;
hold on&lt;br /&gt;
plot(t,y1,'g')&lt;br /&gt;
plot(t,a1,'r')&lt;br /&gt;
plot(t,b1,'b')&lt;br /&gt;
legend('concentración de C','concentración de A','concentración de B','location','best')&lt;br /&gt;
hold off &lt;br /&gt;
%en verde se muestra la concentración de C, en rojo la de A, y en azul la de B&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Archivo:3euler.jpeg|500px|miniaturadeimagen|center|Reacción compleja]]&lt;br /&gt;
&lt;br /&gt;
Aunque con observar los resultados ya podemos decir con casi absoluta seguridad cuáles son los límites de las concentraciones de cada reactivo &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;B&amp;lt;/math&amp;gt; y del producto &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt;, se ha diseñado un programa que, mediante diferencia de valores sucesivos de la variable &amp;lt;math&amp;gt;y(t)&amp;lt;/math&amp;gt;, nos devuelve el valor de la función cuando dicha diferencia es muy pequeña '''(se ha puesto una diferencia de 0.001)''', es decir, cuando tenemos una asíntota al tender &amp;lt;math&amp;gt;t→∞&amp;lt;/math&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
%Estudio de las asíntotas&lt;br /&gt;
t1=t0:h:10;%se aumenta la longitud de t, y se estima que se alcanzarán las asíntotas antes de t=10&lt;br /&gt;
y_=zeros(1,length(t1)); %se define un vector y_ idéntico a y1 pero con t hasta 10&lt;br /&gt;
a_=y_;&lt;br /&gt;
b_=y_;&lt;br /&gt;
y_(1)=y0;&lt;br /&gt;
a_(1)=a0;&lt;br /&gt;
b_(1)=b0;&lt;br /&gt;
for i=1:length(t1)-1&lt;br /&gt;
    y_(i+1)=y_(i)+h*(k1*(a0-y_(i))*(b0-y_(i)));&lt;br /&gt;
    diferencia=y_(i+1)-y_(i);&lt;br /&gt;
    if abs(diferencia)&amp;lt;=0.001&lt;br /&gt;
        limiteC=y_(i+1)&lt;br /&gt;
        break&lt;br /&gt;
    end&lt;br /&gt;
end&lt;br /&gt;
for i=1:length(t1)-1&lt;br /&gt;
    y_(i+1)=y_(i)+h*(k1*(a0-y_(i))*(b0-y_(i)));    &lt;br /&gt;
    a_(i+1)=a0-y_(i+1);&lt;br /&gt;
    diferencia2=a_(i+1)-a_(i);&lt;br /&gt;
    if abs(diferencia2)&amp;lt;=0.001&lt;br /&gt;
        limiteA=a_(i+1)&lt;br /&gt;
        break&lt;br /&gt;
    end&lt;br /&gt;
end&lt;br /&gt;
for i=1:length(t1)-1&lt;br /&gt;
    y_(i+1)=y_(i)+h*(k1*(a0-y_(i))*(b0-y_(i)));    &lt;br /&gt;
    b_(i+1)=b0-y_(i+1);&lt;br /&gt;
    diferencia3=b_(i+1)-b_(i);&lt;br /&gt;
    if abs(diferencia3)&amp;lt;=0.001&lt;br /&gt;
        limiteB=b_(i+1)&lt;br /&gt;
        break&lt;br /&gt;
    end&lt;br /&gt;
end&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
Que nos devuelve unos valores de las concentraciones para el límite de:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\lim A=2,0036≈2 mol/L&amp;lt;/math&amp;gt;:     &lt;br /&gt;
&amp;lt;math&amp;gt;\lim B=0,0036≈0mol/L&amp;lt;/math&amp;gt;:         &lt;br /&gt;
&amp;lt;math&amp;gt;\lim C=0,9964≈1mol/L&amp;lt;/math&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
Lo cual es lógico, ya que &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;B&amp;lt;/math&amp;gt; se combinan en una proporción de 1:1, luego &amp;lt;math&amp;gt;B&amp;lt;/math&amp;gt;, que tiene una concentración inicial de &amp;lt;math&amp;gt;b_0&amp;lt;/math&amp;gt;=1, será el reactivo limitante (el que desaparecerá por completo), mientras que &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt;, con &amp;lt;math&amp;gt;a_0&amp;lt;/math&amp;gt;=3, acabará con una concentración molar final igual a 2, y &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt;, del que no habia nada,alcanza una concentraccion de &amp;lt;math&amp;gt;1mol/L&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
= Método del Trapecio y Método de Runge-Kutta=&lt;br /&gt;
&lt;br /&gt;
A continuación, para obtener con más precisión las representaciones gráficas de las respectivas concentraciones, se opta por utilizar los métodos de los &amp;lt;math&amp;gt;Trapecios&amp;lt;/math&amp;gt; (segundo orden) y de &amp;lt;math&amp;gt;Runge-Kutta&amp;lt;/math&amp;gt; (cuarto orden). Desgraciadamente, no es posible comparar los errores cometidos por cada método con la expresión real de la concentración de C, ya que la ecuación diferencial no es de fácil resolución analítica, luego resulta imposible alcanzar una expresión explícita de la concentración en términos de nuestros datos conocidos; &amp;lt;math&amp;gt;a_0&amp;lt;/math&amp;gt;,&amp;lt;math&amp;gt;b_0&amp;lt;/math&amp;gt;,&amp;lt;math&amp;gt;k_1&amp;lt;/math&amp;gt;,&amp;lt;math&amp;gt;t (tiempo)&amp;lt;/math&amp;gt;.  Sin embargo, podemos confiar con bastante seguridad en el método sobre todo de &amp;lt;math&amp;gt;Runge-Kutta&amp;lt;/math&amp;gt;, debido a su cuarto orden. &lt;br /&gt;
&lt;br /&gt;
Para los trapecios, al ser un método implícito, es necesario despejar la componente &amp;lt;math&amp;gt;y_{n+1}&amp;lt;/math&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;y_{n+1}=\frac{(1+\frac{h}{2}k_1(a_0+b_0)}{}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Cabe destacar que este programa parte de los datos ya establecidos en el programa de Euler para '''t0, tN, y0, a0, b0, k1 y h''':&lt;br /&gt;
{{matlab|codigo= &lt;br /&gt;
%Trapecios&lt;br /&gt;
y2=zeros(1,length(t)); &lt;br /&gt;
a2=y2;&lt;br /&gt;
b2=y2;&lt;br /&gt;
y2(1)=y0;&lt;br /&gt;
a2(1)=a0;&lt;br /&gt;
b2(1)=b0;&lt;br /&gt;
for i=1:length(t)-1&lt;br /&gt;
    y2(i+1)=((1+0.5*h*k1*(a0+b0))-sqrt((1+0.5*h*k1*(a0+b0))^2-2*h*k1*(y2(i)+0.5*h*k1*(a0-y2(i))*(b0-y2(i))+0.5*h*k1*a0*b0)))/(k1*h);&lt;br /&gt;
    a2(i+1)=a0-y2(i+1);&lt;br /&gt;
    b2(i+1)=b0-y2(i+1);&lt;br /&gt;
end&lt;br /&gt;
 &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
%Runge-Kutta&lt;br /&gt;
y3=zeros(1,length(t)); &lt;br /&gt;
a3=y3;&lt;br /&gt;
b3=y3;&lt;br /&gt;
y3(1)=y0;&lt;br /&gt;
a3(1)=a0;&lt;br /&gt;
b3(1)=b0;&lt;br /&gt;
for i=1:length(t)-1 &lt;br /&gt;
    r1=k1*(a0-y3(i))*(b0-y3(i));&lt;br /&gt;
    r2=k1*(a0-y3(i)-0.5*r1*h)*(b0-y3(i)-0.5*r1*h);&lt;br /&gt;
    r3=k1*(a0-y3(i)-0.5*r2*h)*(b0-y3(i)-0.5*r2*h);&lt;br /&gt;
    r4=k1*(a0-y3(i)-r3*h)*(b0-y3(i)-r3*h);&lt;br /&gt;
    y3(i+1)=y3(i)+h/6*(r1+2*r2+2*r3+r4);&lt;br /&gt;
    a3(i+1)=a0-y3(i+1);&lt;br /&gt;
    b3(i+1)=b0-y3(i+1);&lt;br /&gt;
end&lt;br /&gt;
%se pintan las dos, en azul las soluciones de los Trapecios, y en negro las&lt;br /&gt;
%de Runge-Kutta. &lt;br /&gt;
figure(2)&lt;br /&gt;
hold on&lt;br /&gt;
plot(t,y2)&lt;br /&gt;
plot(t,a2)&lt;br /&gt;
plot(t,b2)&lt;br /&gt;
plot(t,y3,'k')&lt;br /&gt;
plot(t,a3,'k')&lt;br /&gt;
plot(t,b3,'k')&lt;br /&gt;
hold off&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
Que proporciona el resultado que se puede observar en la primera gráfica adjunta. Como podemos ver, es prácticamente indistinguible una gráfica de la otra. Sin embargo, si la juntamos con las gráficas proporcionadas por el método de Euler, que se representa ahora en rojo, la diferencia es palpable (ver gráfica 2), lo cual evidencia la peor precisión del método de Euler.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:4trapeciokung.jpeg|500px|miniaturadeimagen|center|Reacción compleja]]&lt;br /&gt;
&lt;br /&gt;
[[Archivo:4comparacion.jpeg|500px|miniaturadeimagen|center|Gráfico 2]]&lt;br /&gt;
&lt;br /&gt;
=Reacción consecutiva=&lt;br /&gt;
&lt;br /&gt;
Consideremos ahora que se produce una reacción consecutiva de la forma: &lt;br /&gt;
&lt;br /&gt;
                                                                   &amp;lt;math&amp;gt;A + B → k_1C → k_2D&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
De tal modo que los reactivos &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;B&amp;lt;/math&amp;gt; se combinan en la proporción 1:1 para formar compuesto &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt;, el cual, a su vez, se va descomponiendo para formar compuesto &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt;. Al igual que se ha hecho antes al analizar las otras reacciones, se considerará que se cumple la ley de acción de masas. Es decir, la velocidad con la que se forma compuesto &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; es proporcional a las concentraciones existentes de &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt; y de &amp;lt;math&amp;gt;B&amp;lt;/math&amp;gt; y del mismo modo la de formación de la sustancia &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; lo es a la concentración de &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; que se ha ido formando.&lt;br /&gt;
&lt;br /&gt;
Esta reacción consecutiva está representada por el siguiente problema de valor inicial:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;&lt;br /&gt;
   \left . &lt;br /&gt;
      \begin{matrix} &lt;br /&gt;
         y'_1(t)={k_{1}}({a_{0}}-y_1(t))({b_{0}}-y_1(t))\\&lt;br /&gt;
         y'_2(t)={k_{2}}(y_1(t)-y_2(t))\\&lt;br /&gt;
y_1(0)=0\\y_2(0)=0&lt;br /&gt;
      \end{matrix}&lt;br /&gt;
   \right \}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
Donde &amp;lt;math&amp;gt;a_0&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;b_0&amp;lt;/math&amp;gt; representan las concentraciones iniciales de &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;B&amp;lt;/math&amp;gt; respectivamente, &amp;lt;math&amp;gt;k_1&amp;lt;/math&amp;gt; es la constante de proporcionalidad que rige la primera reacción y &amp;lt;math&amp;gt;k_2&amp;lt;/math&amp;gt; la que rige la segunda reacción o reacción consecutiva. &amp;lt;math&amp;gt;y_1’(t)&amp;lt;/math&amp;gt; e  &amp;lt;math&amp;gt;y_2’(t)&amp;lt;/math&amp;gt; representan las velocidades de las reacciones, es decir, las velocidades con que se forman los productos &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt;. &amp;lt;math&amp;gt;y_2(t)&amp;lt;/math&amp;gt; representa la concentración del producto &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; pero es importante apreciar que en este caso &amp;lt;math&amp;gt;y_1(t)&amp;lt;/math&amp;gt; no nos da el valor de la concentración de &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; directamente, sino que ésta será &amp;lt;math&amp;gt;y_1(t)&amp;lt;/math&amp;gt;- &amp;lt;math&amp;gt;y_2(t)&amp;lt;/math&amp;gt;, la cantidad que se forma en la primera reacción menos la que se emplea para formar el producto &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; en la segunda.&lt;br /&gt;
&lt;br /&gt;
Este problema se va a resolver para dos casos diferentes. Uno en el cual se considera que la segunda reacción es más rápida que la primera, lo que supone tomar un valor de la constante &amp;lt;math&amp;gt;k_2&amp;lt;/math&amp;gt;  mayor que &amp;lt;math&amp;gt;k_1&amp;lt;/math&amp;gt;. Y otro en el cual se considera que es más lenta, lo que implica que &amp;lt;math&amp;gt;k_2&amp;lt;/math&amp;gt; es menor que &amp;lt;math&amp;gt;k_1&amp;lt;/math&amp;gt;. Concretamente vamos a tomar los siguientes valores para resolver el problema numéricamente; &amp;lt;math&amp;gt;a_0&amp;lt;/math&amp;gt;=3 ,  &amp;lt;math&amp;gt;b_0&amp;lt;/math&amp;gt;=1, &amp;lt;math&amp;gt;k_1&amp;lt;/math&amp;gt;=1,  &amp;lt;math&amp;gt;k_2&amp;lt;/math&amp;gt;=5, &amp;lt;math&amp;gt;k_2&amp;lt;/math&amp;gt;=1/5, .En ambos casos se resuelve para los primeros 10 segundos.&lt;br /&gt;
&lt;br /&gt;
==La reacción D es más rápida que la reacción C==&lt;br /&gt;
CASO    &amp;lt;math&amp;gt;k_1=5  &amp;lt;/math&amp;gt;   '''h=0.1''' &lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
&lt;br /&gt;
%datos&lt;br /&gt;
y0=[0;0];&lt;br /&gt;
z0=[0;0];&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;
%matriz de las soluciones&lt;br /&gt;
y=zeros(2,length(t)); %euler&lt;br /&gt;
y(:,1)=y0;&lt;br /&gt;
 &lt;br /&gt;
z=zeros(2,length(t)); %runge-kutta&lt;br /&gt;
z(:,1)=y0;&lt;br /&gt;
 &lt;br /&gt;
for i=1:length(t)-1&lt;br /&gt;
 %euler&lt;br /&gt;
 y(:,i+1)=y(:,i)+h*[1*(3-y(1,i))*(1-y(1,i)); 5*(y(1,i)-y(2,i))];&lt;br /&gt;
 %runge-kutta&lt;br /&gt;
 K1=[1*(3-z(1,i))*(1-z(1,i)); 5*(z(1,i)-z(2,i))];&lt;br /&gt;
 K2=[1*(3-(z(1,i)+h/2*K1(1)))*(1-(z(1,i)+h/2*K1(1))); 5*((y(1,i)+h/2*K1(2))-(y(2,i)+h/2*K1(2)))];&lt;br /&gt;
 K3=[1*(3-(z(1,i)+h/2*K2(1)))*(1-(z(1,i)+h/2*K2(1))); 5*((y(1,i)+h/2*K2(2))-(y(2,i)+h/2*K2(2)))];&lt;br /&gt;
 K4=[1*(3-(z(1,i)+h*K3(1)))*(1-(z(1,i)+h*K3(1))); 5*((y(1,i)+h*K3(2))-(y(2,i)+h*K3(2)))];&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;
% se calcula la concentración de C=y1t)-y2(t)&lt;br /&gt;
Ay=y(1,:)-y(2,:); %euler&lt;br /&gt;
Az=z(1,:)-z(2,:); %runge-kutta&lt;br /&gt;
 &lt;br /&gt;
figure(1)&lt;br /&gt;
hold on&lt;br /&gt;
plot(t,Ay) %concentración de C por euler&lt;br /&gt;
plot(t,y(2,:),'r') %concentración de D por euler&lt;br /&gt;
plot(t,Az,'k') %concentración de C por runge-kutta&lt;br /&gt;
plot(t,z(2,:),'g') %concentración de D por runge-kutta&lt;br /&gt;
legend('concentración de C por euler','concentración de D por euler','concentración de C por runge-kutta','concentración de D por runge-kutta','Location','best')&lt;br /&gt;
hold off&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:graficoa.jpeg|500px|miniaturadeimagen|center|Reacción compleja]]&lt;br /&gt;
&lt;br /&gt;
Se observa que en en los primeros instantes aumentan las concentraciones de &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; aumentan sus concentraciones. Antes de que pase 1 segundo, la concentración &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; alcanza un máximo (de unos 0.3 molar) y va disminuyendo progresivamente hasta alcanzar un valor de 0 molar. La concentración &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; sigue creciendo hasta llegar a 1 molar. Una vez que tanto &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; como &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; alcanzan estos valores, se estabiliza la reacción. &lt;br /&gt;
&lt;br /&gt;
Como hemos impuesto que la reacción &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; es más rápida que &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt;, se observa que &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; empieza creciendo más rápidamente, pero como reacciona más despacio que &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; su concentración disminuye progresivamente, mientras que la de &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; aumenta.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''CASO'''  &amp;lt;math&amp;gt;k_2=5  &amp;lt;/math&amp;gt;   '''h=0.3''' &lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
&lt;br /&gt;
%datos&lt;br /&gt;
y0=[0;0];&lt;br /&gt;
z0=[0;0];&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=10;&lt;br /&gt;
h=0.3;&lt;br /&gt;
 &lt;br /&gt;
%variable independiente t&lt;br /&gt;
t=t0:h:tN;&lt;br /&gt;
 &lt;br /&gt;
%matriz de las soluciones&lt;br /&gt;
y=zeros(2,length(t)); %euler&lt;br /&gt;
y(:,1)=y0;&lt;br /&gt;
 &lt;br /&gt;
z=zeros(2,length(t)); %runge-kutta&lt;br /&gt;
z(:,1)=y0;&lt;br /&gt;
 &lt;br /&gt;
for i=1:length(t)-1&lt;br /&gt;
 %euler&lt;br /&gt;
 y(:,i+1)=y(:,i)+h*[1*(3-y(1,i))*(1-y(1,i)); 5*(y(1,i)-y(2,i))];&lt;br /&gt;
 %runge-kutta&lt;br /&gt;
 K1=[1*(3-z(1,i))*(1-z(1,i)); 5*(z(1,i)-z(2,i))];&lt;br /&gt;
 K2=[1*(3-(z(1,i)+h/2*K1(1)))*(1-(z(1,i)+h/2*K1(1))); 5*((y(1,i)+h/2*K1(2))-(y(2,i)+h/2*K1(2)))];&lt;br /&gt;
 K3=[1*(3-(z(1,i)+h/2*K2(1)))*(1-(z(1,i)+h/2*K2(1))); 5*((y(1,i)+h/2*K2(2))-(y(2,i)+h/2*K2(2)))];&lt;br /&gt;
 K4=[1*(3-(z(1,i)+h*K3(1)))*(1-(z(1,i)+h*K3(1))); 5*((y(1,i)+h*K3(2))-(y(2,i)+h*K3(2)))];&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;
% se calcula la concentración de C=y1t)-y2(t)&lt;br /&gt;
Ay=y(1,:)-y(2,:); %euler&lt;br /&gt;
Az=z(1,:)-z(2,:); %runge-kutta&lt;br /&gt;
 &lt;br /&gt;
figure(1)&lt;br /&gt;
hold on&lt;br /&gt;
plot(t,Ay) %concentración de C por euler&lt;br /&gt;
plot(t,y(2,:),'r') %concentración de D por euler&lt;br /&gt;
plot(t,Az,'k') %concentración de C por runge-kutta&lt;br /&gt;
plot(t,z(2,:),'g') %concentración de D por runge-kutta&lt;br /&gt;
legend('concentración de C por euler','concentración de D por euler','concentración de C por runge-kutta','concentración de D por runge-kutta','Location','best')&lt;br /&gt;
hold off&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:graficob.jpeg|500px|miniaturadeimagen|center|Reacción compleja]]&lt;br /&gt;
&lt;br /&gt;
Repetimos el programa pero para un tamaño de paso mayor, de '''h=0.3''', y observamos que no  es suficientemente preciso, sobre todo al principio, no se puede analizar bien lo que está pasando en la reacción.&lt;br /&gt;
&lt;br /&gt;
==La reacción D es más lenta que la reacción C==&lt;br /&gt;
&lt;br /&gt;
CASO  &amp;lt;math&amp;gt;k_1 &amp;lt;/math&amp;gt;=1,   &amp;lt;math&amp;gt;k_2 &amp;lt;/math&amp;gt;=1/5&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
&lt;br /&gt;
%datos&lt;br /&gt;
y0=[0;0];&lt;br /&gt;
z0=[0;0];&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;
%matriz de las soluciones&lt;br /&gt;
y=zeros(2,length(t)); %euler&lt;br /&gt;
y(:,1)=y0;&lt;br /&gt;
 &lt;br /&gt;
z=zeros(2,length(t)); %runge-kutta&lt;br /&gt;
z(:,1)=y0;&lt;br /&gt;
 &lt;br /&gt;
for i=1:length(t)-1&lt;br /&gt;
 %euler&lt;br /&gt;
 y(:,i+1)=y(:,i)+h*[1*(3-y(1,i))*(1-y(1,i)); 1/5*(y(1,i)-y(2,i))];&lt;br /&gt;
 %runge-kutta&lt;br /&gt;
 K1=[1*(3-z(1,i))*(1-z(1,i)); 1/5*(z(1,i)-z(2,i))];&lt;br /&gt;
 K2=[1*(3-(z(1,i)+h/2*K1(1)))*(1-(z(1,i)+h/2*K1(1))); 1/5*((y(1,i)+h/2*K1(2))-(y(2,i)+h/2*K1(2)))];&lt;br /&gt;
 K3=[1*(3-(z(1,i)+h/2*K2(1)))*(1-(z(1,i)+h/2*K2(1))); 1/5*((y(1,i)+h/2*K2(2))-(y(2,i)+h/2*K2(2)))];&lt;br /&gt;
 K4=[1*(3-(z(1,i)+h*K3(1)))*(1-(z(1,i)+h*K3(1))); 1/5*((y(1,i)+h*K3(2))-(y(2,i)+h*K3(2)))];&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;
% se calcula la concentración de C=y1t)-y2(t)&lt;br /&gt;
Ay=y(1,:)-y(2,:); %euler&lt;br /&gt;
Az=z(1,:)-z(2,:); %runge-kutta&lt;br /&gt;
 &lt;br /&gt;
figure(1)&lt;br /&gt;
hold on&lt;br /&gt;
plot(t,Ay) %concentración de C por euler&lt;br /&gt;
plot(t,y(2,:),'r') %concentración de D por euler&lt;br /&gt;
plot(t,Az,'k') %concentración de C por runge-kutta&lt;br /&gt;
plot(t,z(2,:),'g') %concentración de D por runge-kutta&lt;br /&gt;
legend('concentración de C por euler','concentración de D por euler','concentración de C por runge-kutta','concentración de D por runge-kutta','Location','best')&lt;br /&gt;
hold off&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:graficoc.jpeg|500px|miniaturadeimagen|center|Reacción compleja]]&lt;br /&gt;
&lt;br /&gt;
Si ahora imponemos que la reacción  &amp;lt;math&amp;gt;C &amp;lt;/math&amp;gt; es más rápida que  &amp;lt;math&amp;gt;D &amp;lt;/math&amp;gt;, obtenemos lo siguiente. Se parece a la gráfica que obtuvimos en el programa anterior, pero  más extendida en el tiempo, más lenta.  &amp;lt;math&amp;gt;C &amp;lt;/math&amp;gt; alcanza una concentración máxima de unos 0.8 molar antes de empezar a decrecer a medida que avanza el tiempo y acercándose a un valor de '''0''' molar.  &amp;lt;math&amp;gt;D &amp;lt;/math&amp;gt; crece más lentamente que en la gráfica anterior, pero se aproxima al mismo valor, '''1''' molar.&lt;br /&gt;
Se observa que aunque hagamos la reacción  &amp;lt;math&amp;gt;C &amp;lt;/math&amp;gt; más rápida, tenemos las mismas concentraciones finales, pero tardan más tiempo en obtenerse, ya que la reacción tarda más en estabilizarse.&lt;br /&gt;
&lt;br /&gt;
&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>Joseva</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Reacciones_complejas_(Grupo_D1)&amp;diff=27149</id>
		<title>Reacciones complejas (Grupo D1)</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Reacciones_complejas_(Grupo_D1)&amp;diff=27149"/>
				<updated>2015-03-05T22:50:56Z</updated>
		
		<summary type="html">&lt;p&gt;Joseva: /* Método del Trapecio y Método de Runge-Kutta */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{ TrabajoED | Reacciones complejas (Grupo D1) | [[:Categoría:Ecuaciones Diferenciales|Ecuaciones Diferenciales]]|[[:Categoría:ED14/15|Curso 2014-15]] | Rincón Crespo, Kevin&lt;br /&gt;
&lt;br /&gt;
Rodríguez Gómez, Javier&lt;br /&gt;
&lt;br /&gt;
Sans Jiménez, Alejandro&lt;br /&gt;
&lt;br /&gt;
Sesto Muñoz, María Victoria&lt;br /&gt;
&lt;br /&gt;
Vallejo Asín, José Manuel &lt;br /&gt;
&lt;br /&gt;
Villarino Redondo, Álvaro }}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=Introducción=&lt;br /&gt;
Se considera una reacción química irreversible en una solución bien mezclada. Supondremos que la reacción ocurre para un volumen y temperatura constantes. Al inicio se encuentran dos reactivos A y B, que van formando un producto C en lo que se conoce como una reacción bimolecular, es decir, una molécula de A y una de B producen una de C, &lt;br /&gt;
                                                                     &amp;lt;math&amp;gt;A + B → C&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Supondremos también que se satisface la ley de acción de masas, que establece que la velocidad de reacción es proporcional al producto de las concentraciones de los reactivos.&lt;br /&gt;
&lt;br /&gt;
=Concentración del reactivo C a lo largo del tiempo=&lt;br /&gt;
En primer lugar, suponiendo que la reacción es irreversible, es decir, que C no puede volver a formar A y B, se puede expresar la situación mediante el siguiente problema de valor inicial, cuando t&amp;gt;0:&lt;br /&gt;
   &amp;lt;math&amp;gt;&lt;br /&gt;
   \left . &lt;br /&gt;
      \begin{matrix} &lt;br /&gt;
         y'(t)={k_{1}}({a_{0}}-y(t))({b_{0}}-y(t))=0\\&lt;br /&gt;
         y(0)=0&lt;br /&gt;
      \end{matrix}&lt;br /&gt;
   \right \}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Donde &amp;lt;math&amp;gt; {a_{0}}&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;{b_{0}}&amp;lt;/math&amp;gt; representan las concentraciones iniciales de '''A''' y '''B''' respectivamente y &amp;lt;math&amp;gt;{k_{1}}&amp;lt;/math&amp;gt; es la constante de proporcionalidad que indica la ley de acción de masas. &amp;lt;math&amp;gt;y’(t)&amp;lt;/math&amp;gt; representa la velocidad de reacción, es decir, la velocidad con que se forma el producto &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; ; mientras que la solución de la ecuación diferencial, &amp;lt;math&amp;gt;y(t)&amp;lt;/math&amp;gt; , representa la concentración de &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt;, la cantidad de compuesto que se ha formado. Para comprobar que la solución de este problema de Cauchy es única, comenzamos definiendo:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;math&amp;gt;f(t,y)={k_{1}}({a_{0}}-y(t))({b_{0}}-y(t))=0,   t&amp;gt;0 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Observamos que &amp;lt;math&amp;gt;f(t,y)&amp;lt;/math&amp;gt; es continua en el intervalo &amp;lt;math&amp;gt; I=(0,∞)∩B((0,0),r&amp;gt;0)&amp;lt;/math&amp;gt;, por lo que ya aseguramos la existencia de al menos una solución. Examinando la derivada parcial:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\frac{∂f}{∂y}=k_1(-a_0-b_0+2y)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Se deduce que al ser un polinomio no va a haber problemas de continuidad para ninguna bola. De esta forma, podemos asegurar que existe una única solución.&lt;br /&gt;
&lt;br /&gt;
==Concentración del reactivo C a lo largo del tiempo en un proceso reversible==&lt;br /&gt;
&lt;br /&gt;
Ahora bien, ¿qué pasaría si la reacción fuese reversible? Con esto lo que queremos indicar es que además de formarse  &amp;lt;math&amp;gt;C &amp;lt;/math&amp;gt;, este también se descompone de nuevo en  &amp;lt;math&amp;gt;A &amp;lt;/math&amp;gt; y  &amp;lt;math&amp;gt;B &amp;lt;/math&amp;gt;. Por lo tanto, nos quedaría una ecuación diferencial con la siguiente forma, cuando &amp;lt;math&amp;gt;t&amp;gt;0 &amp;lt;/math&amp;gt; :&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; y'(t)={k_{1}}({a_{0}}-y(t))({b_{0}}-y(t))-Cy(t)&amp;lt;/math&amp;gt;  &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Si nos fijamos, la modificación es sencillamente restar  &amp;lt;math&amp;gt;y(t) &amp;lt;/math&amp;gt; multiplicada por una constante, la cual refleja qué porcentaje de  &amp;lt;math&amp;gt;C &amp;lt;/math&amp;gt; se va descomponiendo a medida que se da, simultáneamente, la reacción  &amp;lt;math&amp;gt;A + B → C &amp;lt;/math&amp;gt;. Sin embargo, esta constante no puede tener cualquier valor, ya que en una reacción se cumple la conservación de masa. Por ello, a  &amp;lt;math&amp;gt;C &amp;lt;/math&amp;gt; le asociaremos el siguiente dominio:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;C∈(0,1)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Obsérvese que  &amp;lt;math&amp;gt;C &amp;lt;/math&amp;gt; tiene que ser mayor que 0 para que sea reversible, pero al mismo tiempo inferior que 1, ya que si no se estaría descomponiendo más compuesto  &amp;lt;math&amp;gt;C &amp;lt;/math&amp;gt; del que realmente se ha formado, en otras palabras, estaría apareciendo masa de la nada.&lt;br /&gt;
&lt;br /&gt;
=Método de Euler=&lt;br /&gt;
&lt;br /&gt;
Una vez llegados a este punto, se procede a ver una interpretación gráfica de la reacción. Para ello, se refleja en la gráfica (en un intervalo de 2 segundos), cómo varían las concentraciones tanto de &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt; (&amp;lt;math&amp;gt;a_0&amp;lt;/math&amp;gt;=3 mol/L) y &amp;lt;math&amp;gt;B&amp;lt;/math&amp;gt; (&amp;lt;math&amp;gt;b_0&amp;lt;/math&amp;gt;=1 mol/L) como de &amp;lt;math&amp;gt; C&amp;lt;/math&amp;gt;, para una &amp;lt;math&amp;gt;k_1&amp;lt;/math&amp;gt;=1 mol/s. Se comienza, por el momento, aplicando el método de Euler. Posteriormente se utilizarán métodos más precisos.&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo= &lt;br /&gt;
% Euler&lt;br /&gt;
clear all&lt;br /&gt;
% datos del problema&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=2;&lt;br /&gt;
y0=0;&lt;br /&gt;
h=0.1;&lt;br /&gt;
k1=1;&lt;br /&gt;
a0=3;&lt;br /&gt;
b0=1;&lt;br /&gt;
% Definimos la variable independiente&lt;br /&gt;
t=t0:h:tN;&lt;br /&gt;
% Guardamos los valores de la solución aproximada en el vector &amp;quot;y1&amp;quot; y&lt;br /&gt;
% establecemos los vectores de concentraciones A y B&lt;br /&gt;
y1=zeros(1,length(t)); &lt;br /&gt;
y1(1)=y0;&lt;br /&gt;
a1=zeros(1,length(t));&lt;br /&gt;
a1(1)=a0;&lt;br /&gt;
b1=zeros(1,length(t));&lt;br /&gt;
b1(1)=b0;&lt;br /&gt;
% A continuación, calculamos las componentes de los vectores y1, a y b&lt;br /&gt;
for i=1:length(t)-1&lt;br /&gt;
    y1(i+1)=y1(i)+h*(k1*(a0-y1(i))*(b0-y1(i)));    %Euler&lt;br /&gt;
    a1(i+1)=a0-y1(i+1); % evolución de la concentración de A&lt;br /&gt;
    b1(i+1)=b0-y1(i+1); % evolución de la concentración de B&lt;br /&gt;
end&lt;br /&gt;
%grafico &lt;br /&gt;
figure(1)&lt;br /&gt;
hold on&lt;br /&gt;
plot(t,y1,'g')&lt;br /&gt;
plot(t,a1,'r')&lt;br /&gt;
plot(t,b1,'b')&lt;br /&gt;
legend('concentración de C','concentración de A','concentración de B','location','best')&lt;br /&gt;
hold off &lt;br /&gt;
%en verde se muestra la concentración de C, en rojo la de A, y en azul la de B&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Archivo:3euler.jpeg|500px|miniaturadeimagen|center|Reacción compleja]]&lt;br /&gt;
&lt;br /&gt;
Aunque con observar los resultados ya podemos decir con casi absoluta seguridad cuáles son los límites de las concentraciones de cada reactivo &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;B&amp;lt;/math&amp;gt; y del producto &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt;, se ha diseñado un programa que, mediante diferencia de valores sucesivos de la variable &amp;lt;math&amp;gt;y(t)&amp;lt;/math&amp;gt;, nos devuelve el valor de la función cuando dicha diferencia es muy pequeña '''(se ha puesto una diferencia de 0.001)''', es decir, cuando tenemos una asíntota al tender &amp;lt;math&amp;gt;t→∞&amp;lt;/math&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
%Estudio de las asíntotas&lt;br /&gt;
t1=t0:h:10;%se aumenta la longitud de t, y se estima que se alcanzarán las asíntotas antes de t=10&lt;br /&gt;
y_=zeros(1,length(t1)); %se define un vector y_ idéntico a y1 pero con t hasta 10&lt;br /&gt;
a_=y_;&lt;br /&gt;
b_=y_;&lt;br /&gt;
y_(1)=y0;&lt;br /&gt;
a_(1)=a0;&lt;br /&gt;
b_(1)=b0;&lt;br /&gt;
for i=1:length(t1)-1&lt;br /&gt;
    y_(i+1)=y_(i)+h*(k1*(a0-y_(i))*(b0-y_(i)));&lt;br /&gt;
    diferencia=y_(i+1)-y_(i);&lt;br /&gt;
    if abs(diferencia)&amp;lt;=0.001&lt;br /&gt;
        limiteC=y_(i+1)&lt;br /&gt;
        break&lt;br /&gt;
    end&lt;br /&gt;
end&lt;br /&gt;
for i=1:length(t1)-1&lt;br /&gt;
    y_(i+1)=y_(i)+h*(k1*(a0-y_(i))*(b0-y_(i)));    &lt;br /&gt;
    a_(i+1)=a0-y_(i+1);&lt;br /&gt;
    diferencia2=a_(i+1)-a_(i);&lt;br /&gt;
    if abs(diferencia2)&amp;lt;=0.001&lt;br /&gt;
        limiteA=a_(i+1)&lt;br /&gt;
        break&lt;br /&gt;
    end&lt;br /&gt;
end&lt;br /&gt;
for i=1:length(t1)-1&lt;br /&gt;
    y_(i+1)=y_(i)+h*(k1*(a0-y_(i))*(b0-y_(i)));    &lt;br /&gt;
    b_(i+1)=b0-y_(i+1);&lt;br /&gt;
    diferencia3=b_(i+1)-b_(i);&lt;br /&gt;
    if abs(diferencia3)&amp;lt;=0.001&lt;br /&gt;
        limiteB=b_(i+1)&lt;br /&gt;
        break&lt;br /&gt;
    end&lt;br /&gt;
end&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
Que nos devuelve unos valores de las concentraciones para el límite de:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\lim A=2,0036≈2 mol/L&amp;lt;/math&amp;gt;:     &lt;br /&gt;
&amp;lt;math&amp;gt;\lim B=0,0036≈0mol/L&amp;lt;/math&amp;gt;:         &lt;br /&gt;
&amp;lt;math&amp;gt;\lim C=0,9964≈1mol/L&amp;lt;/math&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
Lo cual es lógico, ya que &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;B&amp;lt;/math&amp;gt; se combinan en una proporción de 1:1, luego &amp;lt;math&amp;gt;B&amp;lt;/math&amp;gt;, que tiene una concentración inicial de &amp;lt;math&amp;gt;b_0&amp;lt;/math&amp;gt;=1, será el reactivo limitante (el que desaparecerá por completo), mientras que &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt;, con &amp;lt;math&amp;gt;a_0&amp;lt;/math&amp;gt;=3, acabará con una concentración molar final igual a 2, y &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt;, del que no habia nada,alcanza una concentraccion de &amp;lt;math&amp;gt;1mol/L&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
= Método del Trapecio y Método de Runge-Kutta=&lt;br /&gt;
&lt;br /&gt;
A continuación, para obtener con más precisión las representaciones gráficas de las respectivas concentraciones, se opta por utilizar los métodos de los &amp;lt;math&amp;gt;Trapecios&amp;lt;/math&amp;gt; (segundo orden) y de &amp;lt;math&amp;gt;Runge-Kutta&amp;lt;/math&amp;gt; (cuarto orden). Desgraciadamente, no es posible comparar los errores cometidos por cada método con la expresión real de la concentración de C, ya que la ecuación diferencial no es de fácil resolución analítica, luego resulta imposible alcanzar una expresión explícita de la concentración en términos de nuestros datos conocidos; &amp;lt;math&amp;gt;a_0&amp;lt;/math&amp;gt;,&amp;lt;math&amp;gt;b_0&amp;lt;/math&amp;gt;,&amp;lt;math&amp;gt;k_1&amp;lt;/math&amp;gt;,&amp;lt;math&amp;gt;t (tiempo)&amp;lt;/math&amp;gt;.  Sin embargo, podemos confiar con bastante seguridad en el método sobre todo de &amp;lt;math&amp;gt;Runge-Kutta&amp;lt;/math&amp;gt;, debido a su cuarto orden. &lt;br /&gt;
&lt;br /&gt;
Para los trapecios, al ser un método implícito, es necesario despejar la componente &amp;lt;math&amp;gt;y_{n+1}&amp;lt;/math&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;y_{n+1}=\frac{{1+\frac{h}{2}k_1(a_0+b_0)}{}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Cabe destacar que este programa parte de los datos ya establecidos en el programa de Euler para '''t0, tN, y0, a0, b0, k1 y h''':&lt;br /&gt;
{{matlab|codigo= &lt;br /&gt;
%Trapecios&lt;br /&gt;
y2=zeros(1,length(t)); &lt;br /&gt;
a2=y2;&lt;br /&gt;
b2=y2;&lt;br /&gt;
y2(1)=y0;&lt;br /&gt;
a2(1)=a0;&lt;br /&gt;
b2(1)=b0;&lt;br /&gt;
for i=1:length(t)-1&lt;br /&gt;
    y2(i+1)=((1+0.5*h*k1*(a0+b0))-sqrt((1+0.5*h*k1*(a0+b0))^2-2*h*k1*(y2(i)+0.5*h*k1*(a0-y2(i))*(b0-y2(i))+0.5*h*k1*a0*b0)))/(k1*h);&lt;br /&gt;
    a2(i+1)=a0-y2(i+1);&lt;br /&gt;
    b2(i+1)=b0-y2(i+1);&lt;br /&gt;
end&lt;br /&gt;
 &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
%Runge-Kutta&lt;br /&gt;
y3=zeros(1,length(t)); &lt;br /&gt;
a3=y3;&lt;br /&gt;
b3=y3;&lt;br /&gt;
y3(1)=y0;&lt;br /&gt;
a3(1)=a0;&lt;br /&gt;
b3(1)=b0;&lt;br /&gt;
for i=1:length(t)-1 &lt;br /&gt;
    r1=k1*(a0-y3(i))*(b0-y3(i));&lt;br /&gt;
    r2=k1*(a0-y3(i)-0.5*r1*h)*(b0-y3(i)-0.5*r1*h);&lt;br /&gt;
    r3=k1*(a0-y3(i)-0.5*r2*h)*(b0-y3(i)-0.5*r2*h);&lt;br /&gt;
    r4=k1*(a0-y3(i)-r3*h)*(b0-y3(i)-r3*h);&lt;br /&gt;
    y3(i+1)=y3(i)+h/6*(r1+2*r2+2*r3+r4);&lt;br /&gt;
    a3(i+1)=a0-y3(i+1);&lt;br /&gt;
    b3(i+1)=b0-y3(i+1);&lt;br /&gt;
end&lt;br /&gt;
%se pintan las dos, en azul las soluciones de los Trapecios, y en negro las&lt;br /&gt;
%de Runge-Kutta. &lt;br /&gt;
figure(2)&lt;br /&gt;
hold on&lt;br /&gt;
plot(t,y2)&lt;br /&gt;
plot(t,a2)&lt;br /&gt;
plot(t,b2)&lt;br /&gt;
plot(t,y3,'k')&lt;br /&gt;
plot(t,a3,'k')&lt;br /&gt;
plot(t,b3,'k')&lt;br /&gt;
hold off&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
Que proporciona el resultado que se puede observar en la primera gráfica adjunta. Como podemos ver, es prácticamente indistinguible una gráfica de la otra. Sin embargo, si la juntamos con las gráficas proporcionadas por el método de Euler, que se representa ahora en rojo, la diferencia es palpable (ver gráfica 2), lo cual evidencia la peor precisión del método de Euler.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:4trapeciokung.jpeg|500px|miniaturadeimagen|center|Reacción compleja]]&lt;br /&gt;
&lt;br /&gt;
[[Archivo:4comparacion.jpeg|500px|miniaturadeimagen|center|Gráfico 2]]&lt;br /&gt;
&lt;br /&gt;
=Reacción consecutiva=&lt;br /&gt;
&lt;br /&gt;
Consideremos ahora que se produce una reacción consecutiva de la forma: &lt;br /&gt;
&lt;br /&gt;
                                                                   &amp;lt;math&amp;gt;A + B → k_1C → k_2D&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
De tal modo que los reactivos &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;B&amp;lt;/math&amp;gt; se combinan en la proporción 1:1 para formar compuesto &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt;, el cual, a su vez, se va descomponiendo para formar compuesto &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt;. Al igual que se ha hecho antes al analizar las otras reacciones, se considerará que se cumple la ley de acción de masas. Es decir, la velocidad con la que se forma compuesto &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; es proporcional a las concentraciones existentes de &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt; y de &amp;lt;math&amp;gt;B&amp;lt;/math&amp;gt; y del mismo modo la de formación de la sustancia &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; lo es a la concentración de &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; que se ha ido formando.&lt;br /&gt;
&lt;br /&gt;
Esta reacción consecutiva está representada por el siguiente problema de valor inicial:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;&lt;br /&gt;
   \left . &lt;br /&gt;
      \begin{matrix} &lt;br /&gt;
         y'_1(t)={k_{1}}({a_{0}}-y_1(t))({b_{0}}-y_1(t))\\&lt;br /&gt;
         y'_2(t)={k_{2}}(y_1(t)-y_2(t))\\&lt;br /&gt;
y_1(0)=0\\y_2(0)=0&lt;br /&gt;
      \end{matrix}&lt;br /&gt;
   \right \}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
Donde &amp;lt;math&amp;gt;a_0&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;b_0&amp;lt;/math&amp;gt; representan las concentraciones iniciales de &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;B&amp;lt;/math&amp;gt; respectivamente, &amp;lt;math&amp;gt;k_1&amp;lt;/math&amp;gt; es la constante de proporcionalidad que rige la primera reacción y &amp;lt;math&amp;gt;k_2&amp;lt;/math&amp;gt; la que rige la segunda reacción o reacción consecutiva. &amp;lt;math&amp;gt;y_1’(t)&amp;lt;/math&amp;gt; e  &amp;lt;math&amp;gt;y_2’(t)&amp;lt;/math&amp;gt; representan las velocidades de las reacciones, es decir, las velocidades con que se forman los productos &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt;. &amp;lt;math&amp;gt;y_2(t)&amp;lt;/math&amp;gt; representa la concentración del producto &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; pero es importante apreciar que en este caso &amp;lt;math&amp;gt;y_1(t)&amp;lt;/math&amp;gt; no nos da el valor de la concentración de &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; directamente, sino que ésta será &amp;lt;math&amp;gt;y_1(t)&amp;lt;/math&amp;gt;- &amp;lt;math&amp;gt;y_2(t)&amp;lt;/math&amp;gt;, la cantidad que se forma en la primera reacción menos la que se emplea para formar el producto &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; en la segunda.&lt;br /&gt;
&lt;br /&gt;
Este problema se va a resolver para dos casos diferentes. Uno en el cual se considera que la segunda reacción es más rápida que la primera, lo que supone tomar un valor de la constante &amp;lt;math&amp;gt;k_2&amp;lt;/math&amp;gt;  mayor que &amp;lt;math&amp;gt;k_1&amp;lt;/math&amp;gt;. Y otro en el cual se considera que es más lenta, lo que implica que &amp;lt;math&amp;gt;k_2&amp;lt;/math&amp;gt; es menor que &amp;lt;math&amp;gt;k_1&amp;lt;/math&amp;gt;. Concretamente vamos a tomar los siguientes valores para resolver el problema numéricamente; &amp;lt;math&amp;gt;a_0&amp;lt;/math&amp;gt;=3 ,  &amp;lt;math&amp;gt;b_0&amp;lt;/math&amp;gt;=1, &amp;lt;math&amp;gt;k_1&amp;lt;/math&amp;gt;=1,  &amp;lt;math&amp;gt;k_2&amp;lt;/math&amp;gt;=5, &amp;lt;math&amp;gt;k_2&amp;lt;/math&amp;gt;=1/5, .En ambos casos se resuelve para los primeros 10 segundos.&lt;br /&gt;
&lt;br /&gt;
==La reacción D es más rápida que la reacción C==&lt;br /&gt;
CASO    &amp;lt;math&amp;gt;k_1=5  &amp;lt;/math&amp;gt;   '''h=0.1''' &lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
&lt;br /&gt;
%datos&lt;br /&gt;
y0=[0;0];&lt;br /&gt;
z0=[0;0];&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;
%matriz de las soluciones&lt;br /&gt;
y=zeros(2,length(t)); %euler&lt;br /&gt;
y(:,1)=y0;&lt;br /&gt;
 &lt;br /&gt;
z=zeros(2,length(t)); %runge-kutta&lt;br /&gt;
z(:,1)=y0;&lt;br /&gt;
 &lt;br /&gt;
for i=1:length(t)-1&lt;br /&gt;
 %euler&lt;br /&gt;
 y(:,i+1)=y(:,i)+h*[1*(3-y(1,i))*(1-y(1,i)); 5*(y(1,i)-y(2,i))];&lt;br /&gt;
 %runge-kutta&lt;br /&gt;
 K1=[1*(3-z(1,i))*(1-z(1,i)); 5*(z(1,i)-z(2,i))];&lt;br /&gt;
 K2=[1*(3-(z(1,i)+h/2*K1(1)))*(1-(z(1,i)+h/2*K1(1))); 5*((y(1,i)+h/2*K1(2))-(y(2,i)+h/2*K1(2)))];&lt;br /&gt;
 K3=[1*(3-(z(1,i)+h/2*K2(1)))*(1-(z(1,i)+h/2*K2(1))); 5*((y(1,i)+h/2*K2(2))-(y(2,i)+h/2*K2(2)))];&lt;br /&gt;
 K4=[1*(3-(z(1,i)+h*K3(1)))*(1-(z(1,i)+h*K3(1))); 5*((y(1,i)+h*K3(2))-(y(2,i)+h*K3(2)))];&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;
% se calcula la concentración de C=y1t)-y2(t)&lt;br /&gt;
Ay=y(1,:)-y(2,:); %euler&lt;br /&gt;
Az=z(1,:)-z(2,:); %runge-kutta&lt;br /&gt;
 &lt;br /&gt;
figure(1)&lt;br /&gt;
hold on&lt;br /&gt;
plot(t,Ay) %concentración de C por euler&lt;br /&gt;
plot(t,y(2,:),'r') %concentración de D por euler&lt;br /&gt;
plot(t,Az,'k') %concentración de C por runge-kutta&lt;br /&gt;
plot(t,z(2,:),'g') %concentración de D por runge-kutta&lt;br /&gt;
legend('concentración de C por euler','concentración de D por euler','concentración de C por runge-kutta','concentración de D por runge-kutta','Location','best')&lt;br /&gt;
hold off&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:graficoa.jpeg|500px|miniaturadeimagen|center|Reacción compleja]]&lt;br /&gt;
&lt;br /&gt;
Se observa que en en los primeros instantes aumentan las concentraciones de &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; aumentan sus concentraciones. Antes de que pase 1 segundo, la concentración &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; alcanza un máximo (de unos 0.3 molar) y va disminuyendo progresivamente hasta alcanzar un valor de 0 molar. La concentración &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; sigue creciendo hasta llegar a 1 molar. Una vez que tanto &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; como &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; alcanzan estos valores, se estabiliza la reacción. &lt;br /&gt;
&lt;br /&gt;
Como hemos impuesto que la reacción &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; es más rápida que &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt;, se observa que &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; empieza creciendo más rápidamente, pero como reacciona más despacio que &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; su concentración disminuye progresivamente, mientras que la de &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; aumenta.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''CASO'''  &amp;lt;math&amp;gt;k_2=5  &amp;lt;/math&amp;gt;   '''h=0.3''' &lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
&lt;br /&gt;
%datos&lt;br /&gt;
y0=[0;0];&lt;br /&gt;
z0=[0;0];&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=10;&lt;br /&gt;
h=0.3;&lt;br /&gt;
 &lt;br /&gt;
%variable independiente t&lt;br /&gt;
t=t0:h:tN;&lt;br /&gt;
 &lt;br /&gt;
%matriz de las soluciones&lt;br /&gt;
y=zeros(2,length(t)); %euler&lt;br /&gt;
y(:,1)=y0;&lt;br /&gt;
 &lt;br /&gt;
z=zeros(2,length(t)); %runge-kutta&lt;br /&gt;
z(:,1)=y0;&lt;br /&gt;
 &lt;br /&gt;
for i=1:length(t)-1&lt;br /&gt;
 %euler&lt;br /&gt;
 y(:,i+1)=y(:,i)+h*[1*(3-y(1,i))*(1-y(1,i)); 5*(y(1,i)-y(2,i))];&lt;br /&gt;
 %runge-kutta&lt;br /&gt;
 K1=[1*(3-z(1,i))*(1-z(1,i)); 5*(z(1,i)-z(2,i))];&lt;br /&gt;
 K2=[1*(3-(z(1,i)+h/2*K1(1)))*(1-(z(1,i)+h/2*K1(1))); 5*((y(1,i)+h/2*K1(2))-(y(2,i)+h/2*K1(2)))];&lt;br /&gt;
 K3=[1*(3-(z(1,i)+h/2*K2(1)))*(1-(z(1,i)+h/2*K2(1))); 5*((y(1,i)+h/2*K2(2))-(y(2,i)+h/2*K2(2)))];&lt;br /&gt;
 K4=[1*(3-(z(1,i)+h*K3(1)))*(1-(z(1,i)+h*K3(1))); 5*((y(1,i)+h*K3(2))-(y(2,i)+h*K3(2)))];&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;
% se calcula la concentración de C=y1t)-y2(t)&lt;br /&gt;
Ay=y(1,:)-y(2,:); %euler&lt;br /&gt;
Az=z(1,:)-z(2,:); %runge-kutta&lt;br /&gt;
 &lt;br /&gt;
figure(1)&lt;br /&gt;
hold on&lt;br /&gt;
plot(t,Ay) %concentración de C por euler&lt;br /&gt;
plot(t,y(2,:),'r') %concentración de D por euler&lt;br /&gt;
plot(t,Az,'k') %concentración de C por runge-kutta&lt;br /&gt;
plot(t,z(2,:),'g') %concentración de D por runge-kutta&lt;br /&gt;
legend('concentración de C por euler','concentración de D por euler','concentración de C por runge-kutta','concentración de D por runge-kutta','Location','best')&lt;br /&gt;
hold off&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:graficob.jpeg|500px|miniaturadeimagen|center|Reacción compleja]]&lt;br /&gt;
&lt;br /&gt;
Repetimos el programa pero para un tamaño de paso mayor, de '''h=0.3''', y observamos que no  es suficientemente preciso, sobre todo al principio, no se puede analizar bien lo que está pasando en la reacción.&lt;br /&gt;
&lt;br /&gt;
==La reacción D es más lenta que la reacción C==&lt;br /&gt;
&lt;br /&gt;
CASO  &amp;lt;math&amp;gt;k_1 &amp;lt;/math&amp;gt;=1,   &amp;lt;math&amp;gt;k_2 &amp;lt;/math&amp;gt;=1/5&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
&lt;br /&gt;
%datos&lt;br /&gt;
y0=[0;0];&lt;br /&gt;
z0=[0;0];&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;
%matriz de las soluciones&lt;br /&gt;
y=zeros(2,length(t)); %euler&lt;br /&gt;
y(:,1)=y0;&lt;br /&gt;
 &lt;br /&gt;
z=zeros(2,length(t)); %runge-kutta&lt;br /&gt;
z(:,1)=y0;&lt;br /&gt;
 &lt;br /&gt;
for i=1:length(t)-1&lt;br /&gt;
 %euler&lt;br /&gt;
 y(:,i+1)=y(:,i)+h*[1*(3-y(1,i))*(1-y(1,i)); 1/5*(y(1,i)-y(2,i))];&lt;br /&gt;
 %runge-kutta&lt;br /&gt;
 K1=[1*(3-z(1,i))*(1-z(1,i)); 1/5*(z(1,i)-z(2,i))];&lt;br /&gt;
 K2=[1*(3-(z(1,i)+h/2*K1(1)))*(1-(z(1,i)+h/2*K1(1))); 1/5*((y(1,i)+h/2*K1(2))-(y(2,i)+h/2*K1(2)))];&lt;br /&gt;
 K3=[1*(3-(z(1,i)+h/2*K2(1)))*(1-(z(1,i)+h/2*K2(1))); 1/5*((y(1,i)+h/2*K2(2))-(y(2,i)+h/2*K2(2)))];&lt;br /&gt;
 K4=[1*(3-(z(1,i)+h*K3(1)))*(1-(z(1,i)+h*K3(1))); 1/5*((y(1,i)+h*K3(2))-(y(2,i)+h*K3(2)))];&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;
% se calcula la concentración de C=y1t)-y2(t)&lt;br /&gt;
Ay=y(1,:)-y(2,:); %euler&lt;br /&gt;
Az=z(1,:)-z(2,:); %runge-kutta&lt;br /&gt;
 &lt;br /&gt;
figure(1)&lt;br /&gt;
hold on&lt;br /&gt;
plot(t,Ay) %concentración de C por euler&lt;br /&gt;
plot(t,y(2,:),'r') %concentración de D por euler&lt;br /&gt;
plot(t,Az,'k') %concentración de C por runge-kutta&lt;br /&gt;
plot(t,z(2,:),'g') %concentración de D por runge-kutta&lt;br /&gt;
legend('concentración de C por euler','concentración de D por euler','concentración de C por runge-kutta','concentración de D por runge-kutta','Location','best')&lt;br /&gt;
hold off&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:graficoc.jpeg|500px|miniaturadeimagen|center|Reacción compleja]]&lt;br /&gt;
&lt;br /&gt;
Si ahora imponemos que la reacción  &amp;lt;math&amp;gt;C &amp;lt;/math&amp;gt; es más rápida que  &amp;lt;math&amp;gt;D &amp;lt;/math&amp;gt;, obtenemos lo siguiente. Se parece a la gráfica que obtuvimos en el programa anterior, pero  más extendida en el tiempo, más lenta.  &amp;lt;math&amp;gt;C &amp;lt;/math&amp;gt; alcanza una concentración máxima de unos 0.8 molar antes de empezar a decrecer a medida que avanza el tiempo y acercándose a un valor de '''0''' molar.  &amp;lt;math&amp;gt;D &amp;lt;/math&amp;gt; crece más lentamente que en la gráfica anterior, pero se aproxima al mismo valor, '''1''' molar.&lt;br /&gt;
Se observa que aunque hagamos la reacción  &amp;lt;math&amp;gt;C &amp;lt;/math&amp;gt; más rápida, tenemos las mismas concentraciones finales, pero tardan más tiempo en obtenerse, ya que la reacción tarda más en estabilizarse.&lt;br /&gt;
&lt;br /&gt;
&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>Joseva</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Reacciones_complejas_(Grupo_D1)&amp;diff=27146</id>
		<title>Reacciones complejas (Grupo D1)</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Reacciones_complejas_(Grupo_D1)&amp;diff=27146"/>
				<updated>2015-03-05T22:46:14Z</updated>
		
		<summary type="html">&lt;p&gt;Joseva: /* Método de Euler */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{ TrabajoED | Reacciones complejas (Grupo D1) | [[:Categoría:Ecuaciones Diferenciales|Ecuaciones Diferenciales]]|[[:Categoría:ED14/15|Curso 2014-15]] | Rincón Crespo, Kevin&lt;br /&gt;
&lt;br /&gt;
Rodríguez Gómez, Javier&lt;br /&gt;
&lt;br /&gt;
Sans Jiménez, Alejandro&lt;br /&gt;
&lt;br /&gt;
Sesto Muñoz, María Victoria&lt;br /&gt;
&lt;br /&gt;
Vallejo Asín, José Manuel &lt;br /&gt;
&lt;br /&gt;
Villarino Redondo, Álvaro }}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=Introducción=&lt;br /&gt;
Se considera una reacción química irreversible en una solución bien mezclada. Supondremos que la reacción ocurre para un volumen y temperatura constantes. Al inicio se encuentran dos reactivos A y B, que van formando un producto C en lo que se conoce como una reacción bimolecular, es decir, una molécula de A y una de B producen una de C, &lt;br /&gt;
                                                                     &amp;lt;math&amp;gt;A + B → C&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Supondremos también que se satisface la ley de acción de masas, que establece que la velocidad de reacción es proporcional al producto de las concentraciones de los reactivos.&lt;br /&gt;
&lt;br /&gt;
=Concentración del reactivo C a lo largo del tiempo=&lt;br /&gt;
En primer lugar, suponiendo que la reacción es irreversible, es decir, que C no puede volver a formar A y B, se puede expresar la situación mediante el siguiente problema de valor inicial, cuando t&amp;gt;0:&lt;br /&gt;
   &amp;lt;math&amp;gt;&lt;br /&gt;
   \left . &lt;br /&gt;
      \begin{matrix} &lt;br /&gt;
         y'(t)={k_{1}}({a_{0}}-y(t))({b_{0}}-y(t))=0\\&lt;br /&gt;
         y(0)=0&lt;br /&gt;
      \end{matrix}&lt;br /&gt;
   \right \}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Donde &amp;lt;math&amp;gt; {a_{0}}&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;{b_{0}}&amp;lt;/math&amp;gt; representan las concentraciones iniciales de '''A''' y '''B''' respectivamente y &amp;lt;math&amp;gt;{k_{1}}&amp;lt;/math&amp;gt; es la constante de proporcionalidad que indica la ley de acción de masas. &amp;lt;math&amp;gt;y’(t)&amp;lt;/math&amp;gt; representa la velocidad de reacción, es decir, la velocidad con que se forma el producto &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; ; mientras que la solución de la ecuación diferencial, &amp;lt;math&amp;gt;y(t)&amp;lt;/math&amp;gt; , representa la concentración de &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt;, la cantidad de compuesto que se ha formado. Para comprobar que la solución de este problema de Cauchy es única, comenzamos definiendo:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;math&amp;gt;f(t,y)={k_{1}}({a_{0}}-y(t))({b_{0}}-y(t))=0,   t&amp;gt;0 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Observamos que &amp;lt;math&amp;gt;f(t,y)&amp;lt;/math&amp;gt; es continua en el intervalo &amp;lt;math&amp;gt; I=(0,∞)∩B((0,0),r&amp;gt;0)&amp;lt;/math&amp;gt;, por lo que ya aseguramos la existencia de al menos una solución. Examinando la derivada parcial:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\frac{∂f}{∂y}=k_1(-a_0-b_0+2y)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Se deduce que al ser un polinomio no va a haber problemas de continuidad para ninguna bola. De esta forma, podemos asegurar que existe una única solución.&lt;br /&gt;
&lt;br /&gt;
==Concentración del reactivo C a lo largo del tiempo en un proceso reversible==&lt;br /&gt;
&lt;br /&gt;
Ahora bien, ¿qué pasaría si la reacción fuese reversible? Con esto lo que queremos indicar es que además de formarse  &amp;lt;math&amp;gt;C &amp;lt;/math&amp;gt;, este también se descompone de nuevo en  &amp;lt;math&amp;gt;A &amp;lt;/math&amp;gt; y  &amp;lt;math&amp;gt;B &amp;lt;/math&amp;gt;. Por lo tanto, nos quedaría una ecuación diferencial con la siguiente forma, cuando &amp;lt;math&amp;gt;t&amp;gt;0 &amp;lt;/math&amp;gt; :&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; y'(t)={k_{1}}({a_{0}}-y(t))({b_{0}}-y(t))-Cy(t)&amp;lt;/math&amp;gt;  &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Si nos fijamos, la modificación es sencillamente restar  &amp;lt;math&amp;gt;y(t) &amp;lt;/math&amp;gt; multiplicada por una constante, la cual refleja qué porcentaje de  &amp;lt;math&amp;gt;C &amp;lt;/math&amp;gt; se va descomponiendo a medida que se da, simultáneamente, la reacción  &amp;lt;math&amp;gt;A + B → C &amp;lt;/math&amp;gt;. Sin embargo, esta constante no puede tener cualquier valor, ya que en una reacción se cumple la conservación de masa. Por ello, a  &amp;lt;math&amp;gt;C &amp;lt;/math&amp;gt; le asociaremos el siguiente dominio:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;C∈(0,1)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Obsérvese que  &amp;lt;math&amp;gt;C &amp;lt;/math&amp;gt; tiene que ser mayor que 0 para que sea reversible, pero al mismo tiempo inferior que 1, ya que si no se estaría descomponiendo más compuesto  &amp;lt;math&amp;gt;C &amp;lt;/math&amp;gt; del que realmente se ha formado, en otras palabras, estaría apareciendo masa de la nada.&lt;br /&gt;
&lt;br /&gt;
=Método de Euler=&lt;br /&gt;
&lt;br /&gt;
Una vez llegados a este punto, se procede a ver una interpretación gráfica de la reacción. Para ello, se refleja en la gráfica (en un intervalo de 2 segundos), cómo varían las concentraciones tanto de &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt; (&amp;lt;math&amp;gt;a_0&amp;lt;/math&amp;gt;=3 mol/L) y &amp;lt;math&amp;gt;B&amp;lt;/math&amp;gt; (&amp;lt;math&amp;gt;b_0&amp;lt;/math&amp;gt;=1 mol/L) como de &amp;lt;math&amp;gt; C&amp;lt;/math&amp;gt;, para una &amp;lt;math&amp;gt;k_1&amp;lt;/math&amp;gt;=1 mol/s. Se comienza, por el momento, aplicando el método de Euler. Posteriormente se utilizarán métodos más precisos.&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo= &lt;br /&gt;
% Euler&lt;br /&gt;
clear all&lt;br /&gt;
% datos del problema&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=2;&lt;br /&gt;
y0=0;&lt;br /&gt;
h=0.1;&lt;br /&gt;
k1=1;&lt;br /&gt;
a0=3;&lt;br /&gt;
b0=1;&lt;br /&gt;
% Definimos la variable independiente&lt;br /&gt;
t=t0:h:tN;&lt;br /&gt;
% Guardamos los valores de la solución aproximada en el vector &amp;quot;y1&amp;quot; y&lt;br /&gt;
% establecemos los vectores de concentraciones A y B&lt;br /&gt;
y1=zeros(1,length(t)); &lt;br /&gt;
y1(1)=y0;&lt;br /&gt;
a1=zeros(1,length(t));&lt;br /&gt;
a1(1)=a0;&lt;br /&gt;
b1=zeros(1,length(t));&lt;br /&gt;
b1(1)=b0;&lt;br /&gt;
% A continuación, calculamos las componentes de los vectores y1, a y b&lt;br /&gt;
for i=1:length(t)-1&lt;br /&gt;
    y1(i+1)=y1(i)+h*(k1*(a0-y1(i))*(b0-y1(i)));    %Euler&lt;br /&gt;
    a1(i+1)=a0-y1(i+1); % evolución de la concentración de A&lt;br /&gt;
    b1(i+1)=b0-y1(i+1); % evolución de la concentración de B&lt;br /&gt;
end&lt;br /&gt;
%grafico &lt;br /&gt;
figure(1)&lt;br /&gt;
hold on&lt;br /&gt;
plot(t,y1,'g')&lt;br /&gt;
plot(t,a1,'r')&lt;br /&gt;
plot(t,b1,'b')&lt;br /&gt;
legend('concentración de C','concentración de A','concentración de B','location','best')&lt;br /&gt;
hold off &lt;br /&gt;
%en verde se muestra la concentración de C, en rojo la de A, y en azul la de B&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Archivo:3euler.jpeg|500px|miniaturadeimagen|center|Reacción compleja]]&lt;br /&gt;
&lt;br /&gt;
Aunque con observar los resultados ya podemos decir con casi absoluta seguridad cuáles son los límites de las concentraciones de cada reactivo &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;B&amp;lt;/math&amp;gt; y del producto &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt;, se ha diseñado un programa que, mediante diferencia de valores sucesivos de la variable &amp;lt;math&amp;gt;y(t)&amp;lt;/math&amp;gt;, nos devuelve el valor de la función cuando dicha diferencia es muy pequeña '''(se ha puesto una diferencia de 0.001)''', es decir, cuando tenemos una asíntota al tender &amp;lt;math&amp;gt;t→∞&amp;lt;/math&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
%Estudio de las asíntotas&lt;br /&gt;
t1=t0:h:10;%se aumenta la longitud de t, y se estima que se alcanzarán las asíntotas antes de t=10&lt;br /&gt;
y_=zeros(1,length(t1)); %se define un vector y_ idéntico a y1 pero con t hasta 10&lt;br /&gt;
a_=y_;&lt;br /&gt;
b_=y_;&lt;br /&gt;
y_(1)=y0;&lt;br /&gt;
a_(1)=a0;&lt;br /&gt;
b_(1)=b0;&lt;br /&gt;
for i=1:length(t1)-1&lt;br /&gt;
    y_(i+1)=y_(i)+h*(k1*(a0-y_(i))*(b0-y_(i)));&lt;br /&gt;
    diferencia=y_(i+1)-y_(i);&lt;br /&gt;
    if abs(diferencia)&amp;lt;=0.001&lt;br /&gt;
        limiteC=y_(i+1)&lt;br /&gt;
        break&lt;br /&gt;
    end&lt;br /&gt;
end&lt;br /&gt;
for i=1:length(t1)-1&lt;br /&gt;
    y_(i+1)=y_(i)+h*(k1*(a0-y_(i))*(b0-y_(i)));    &lt;br /&gt;
    a_(i+1)=a0-y_(i+1);&lt;br /&gt;
    diferencia2=a_(i+1)-a_(i);&lt;br /&gt;
    if abs(diferencia2)&amp;lt;=0.001&lt;br /&gt;
        limiteA=a_(i+1)&lt;br /&gt;
        break&lt;br /&gt;
    end&lt;br /&gt;
end&lt;br /&gt;
for i=1:length(t1)-1&lt;br /&gt;
    y_(i+1)=y_(i)+h*(k1*(a0-y_(i))*(b0-y_(i)));    &lt;br /&gt;
    b_(i+1)=b0-y_(i+1);&lt;br /&gt;
    diferencia3=b_(i+1)-b_(i);&lt;br /&gt;
    if abs(diferencia3)&amp;lt;=0.001&lt;br /&gt;
        limiteB=b_(i+1)&lt;br /&gt;
        break&lt;br /&gt;
    end&lt;br /&gt;
end&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
Que nos devuelve unos valores de las concentraciones para el límite de:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\lim A=2,0036≈2 mol/L&amp;lt;/math&amp;gt;:     &lt;br /&gt;
&amp;lt;math&amp;gt;\lim B=0,0036≈0mol/L&amp;lt;/math&amp;gt;:         &lt;br /&gt;
&amp;lt;math&amp;gt;\lim C=0,9964≈1mol/L&amp;lt;/math&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
Lo cual es lógico, ya que &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;B&amp;lt;/math&amp;gt; se combinan en una proporción de 1:1, luego &amp;lt;math&amp;gt;B&amp;lt;/math&amp;gt;, que tiene una concentración inicial de &amp;lt;math&amp;gt;b_0&amp;lt;/math&amp;gt;=1, será el reactivo limitante (el que desaparecerá por completo), mientras que &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt;, con &amp;lt;math&amp;gt;a_0&amp;lt;/math&amp;gt;=3, acabará con una concentración molar final igual a 2, y &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt;, del que no habia nada,alcanza una concentraccion de &amp;lt;math&amp;gt;1mol/L&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
= Método del Trapecio y Método de Runge-Kutta=&lt;br /&gt;
&lt;br /&gt;
A continuación, para obtener con más precisión las representaciones gráficas de las respectivas concentraciones, se opta por utilizar los métodos de los &amp;lt;math&amp;gt;Trapecios&amp;lt;/math&amp;gt; (segundo orden) y de &amp;lt;math&amp;gt;Runge-Kutta&amp;lt;/math&amp;gt; (cuarto orden). Desgraciadamente, no es posible comparar los errores cometidos por cada método con la expresión real de la concentración de C, ya que la ecuación diferencial no es de fácil resolución analítica, luego resulta imposible alcanzar una expresión explícita de la concentración en términos de nuestros datos conocidos; &amp;lt;math&amp;gt;a_0&amp;lt;/math&amp;gt;,&amp;lt;math&amp;gt;b_0&amp;lt;/math&amp;gt;,&amp;lt;math&amp;gt;k_1&amp;lt;/math&amp;gt;,&amp;lt;math&amp;gt;t (tiempo)&amp;lt;/math&amp;gt;.  Sin embargo, podemos confiar con bastante seguridad en el método sobre todo de &amp;lt;math&amp;gt;Runge-Kutta&amp;lt;/math&amp;gt;, debido a su cuarto orden. &lt;br /&gt;
&lt;br /&gt;
Para los trapecios, al ser un método implícito, es necesario despejar la componente &amp;lt;math&amp;gt;y_{n+1}&amp;lt;/math&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
y&amp;lt;sub&amp;gt;(n+1)&amp;lt;/sub&amp;gt;=((1+h/2∙k&amp;lt;sub&amp;gt;1&amp;lt;/sub&amp;gt;∙(a&amp;lt;sub&amp;gt;0&amp;lt;/sub&amp;gt;+b&amp;lt;sub&amp;gt;0&amp;lt;/sub&amp;gt; ) )-√((1+h/2∙k&amp;lt;sub&amp;gt;1&amp;lt;/sub&amp;gt;∙(a&amp;lt;sub&amp;gt;0&amp;lt;/sub&amp;gt;+b&amp;lt;sub&amp;gt;0&amp;lt;/sub&amp;gt; ) )^2-2∙h∙k(&amp;lt;sub&amp;gt;1&amp;lt;/sub&amp;gt;· (y&amp;lt;sub&amp;gt;n&amp;lt;/sub&amp;gt;+h/2∙k&amp;lt;sub&amp;gt;1&amp;lt;/sub&amp;gt;∙(a&amp;lt;sub&amp;gt;0&amp;lt;/sub&amp;gt;-y&amp;lt;sub&amp;gt;n&amp;lt;/sub&amp;gt; )∙(b&amp;lt;sub&amp;gt;0&amp;lt;/sub&amp;gt;-y&amp;lt;sub&amp;gt;n&amp;lt;/sub&amp;gt; )+[h/2∙k&amp;lt;sub&amp;gt;1&amp;lt;/sub&amp;gt;]∙a&amp;lt;sub&amp;gt;0&amp;lt;/sub&amp;gt;∙b&amp;lt;sub&amp;gt;0&amp;lt;/sub&amp;gt; ) ))/(k&amp;lt;sub&amp;gt;1&amp;lt;/sub&amp;gt;*h)&lt;br /&gt;
&lt;br /&gt;
Cabe destacar que este programa parte de los datos ya establecidos en el programa de Euler para '''t0, tN, y0, a0, b0, k1 y h''':&lt;br /&gt;
{{matlab|codigo= &lt;br /&gt;
%Trapecios&lt;br /&gt;
y2=zeros(1,length(t)); &lt;br /&gt;
a2=y2;&lt;br /&gt;
b2=y2;&lt;br /&gt;
y2(1)=y0;&lt;br /&gt;
a2(1)=a0;&lt;br /&gt;
b2(1)=b0;&lt;br /&gt;
for i=1:length(t)-1&lt;br /&gt;
    y2(i+1)=((1+0.5*h*k1*(a0+b0))-sqrt((1+0.5*h*k1*(a0+b0))^2-2*h*k1*(y2(i)+0.5*h*k1*(a0-y2(i))*(b0-y2(i))+0.5*h*k1*a0*b0)))/(k1*h);&lt;br /&gt;
    a2(i+1)=a0-y2(i+1);&lt;br /&gt;
    b2(i+1)=b0-y2(i+1);&lt;br /&gt;
end&lt;br /&gt;
 &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
%Runge-Kutta&lt;br /&gt;
y3=zeros(1,length(t)); &lt;br /&gt;
a3=y3;&lt;br /&gt;
b3=y3;&lt;br /&gt;
y3(1)=y0;&lt;br /&gt;
a3(1)=a0;&lt;br /&gt;
b3(1)=b0;&lt;br /&gt;
for i=1:length(t)-1 &lt;br /&gt;
    r1=k1*(a0-y3(i))*(b0-y3(i));&lt;br /&gt;
    r2=k1*(a0-y3(i)-0.5*r1*h)*(b0-y3(i)-0.5*r1*h);&lt;br /&gt;
    r3=k1*(a0-y3(i)-0.5*r2*h)*(b0-y3(i)-0.5*r2*h);&lt;br /&gt;
    r4=k1*(a0-y3(i)-r3*h)*(b0-y3(i)-r3*h);&lt;br /&gt;
    y3(i+1)=y3(i)+h/6*(r1+2*r2+2*r3+r4);&lt;br /&gt;
    a3(i+1)=a0-y3(i+1);&lt;br /&gt;
    b3(i+1)=b0-y3(i+1);&lt;br /&gt;
end&lt;br /&gt;
%se pintan las dos, en azul las soluciones de los Trapecios, y en negro las&lt;br /&gt;
%de Runge-Kutta. &lt;br /&gt;
figure(2)&lt;br /&gt;
hold on&lt;br /&gt;
plot(t,y2)&lt;br /&gt;
plot(t,a2)&lt;br /&gt;
plot(t,b2)&lt;br /&gt;
plot(t,y3,'k')&lt;br /&gt;
plot(t,a3,'k')&lt;br /&gt;
plot(t,b3,'k')&lt;br /&gt;
hold off&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
Que proporciona el resultado que se puede observar en la primera gráfica adjunta. Como podemos ver, es prácticamente indistinguible una gráfica de la otra. Sin embargo, si la juntamos con las gráficas proporcionadas por el método de Euler, que se representa ahora en rojo, la diferencia es palpable (ver gráfica 2), lo cual evidencia la peor precisión del método de Euler.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:4trapeciokung.jpeg|500px|miniaturadeimagen|center|Reacción compleja]]&lt;br /&gt;
&lt;br /&gt;
[[Archivo:4comparacion.jpeg|500px|miniaturadeimagen|center|Gráfico 2]]&lt;br /&gt;
&lt;br /&gt;
=Reacción consecutiva=&lt;br /&gt;
&lt;br /&gt;
Consideremos ahora que se produce una reacción consecutiva de la forma: &lt;br /&gt;
&lt;br /&gt;
                                                                   &amp;lt;math&amp;gt;A + B → k_1C → k_2D&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
De tal modo que los reactivos &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;B&amp;lt;/math&amp;gt; se combinan en la proporción 1:1 para formar compuesto &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt;, el cual, a su vez, se va descomponiendo para formar compuesto &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt;. Al igual que se ha hecho antes al analizar las otras reacciones, se considerará que se cumple la ley de acción de masas. Es decir, la velocidad con la que se forma compuesto &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; es proporcional a las concentraciones existentes de &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt; y de &amp;lt;math&amp;gt;B&amp;lt;/math&amp;gt; y del mismo modo la de formación de la sustancia &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; lo es a la concentración de &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; que se ha ido formando.&lt;br /&gt;
&lt;br /&gt;
Esta reacción consecutiva está representada por el siguiente problema de valor inicial:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;&lt;br /&gt;
   \left . &lt;br /&gt;
      \begin{matrix} &lt;br /&gt;
         y'_1(t)={k_{1}}({a_{0}}-y_1(t))({b_{0}}-y_1(t))\\&lt;br /&gt;
         y'_2(t)={k_{2}}(y_1(t)-y_2(t))\\&lt;br /&gt;
y_1(0)=0\\y_2(0)=0&lt;br /&gt;
      \end{matrix}&lt;br /&gt;
   \right \}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
Donde &amp;lt;math&amp;gt;a_0&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;b_0&amp;lt;/math&amp;gt; representan las concentraciones iniciales de &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;B&amp;lt;/math&amp;gt; respectivamente, &amp;lt;math&amp;gt;k_1&amp;lt;/math&amp;gt; es la constante de proporcionalidad que rige la primera reacción y &amp;lt;math&amp;gt;k_2&amp;lt;/math&amp;gt; la que rige la segunda reacción o reacción consecutiva. &amp;lt;math&amp;gt;y_1’(t)&amp;lt;/math&amp;gt; e  &amp;lt;math&amp;gt;y_2’(t)&amp;lt;/math&amp;gt; representan las velocidades de las reacciones, es decir, las velocidades con que se forman los productos &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt;. &amp;lt;math&amp;gt;y_2(t)&amp;lt;/math&amp;gt; representa la concentración del producto &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; pero es importante apreciar que en este caso &amp;lt;math&amp;gt;y_1(t)&amp;lt;/math&amp;gt; no nos da el valor de la concentración de &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; directamente, sino que ésta será &amp;lt;math&amp;gt;y_1(t)&amp;lt;/math&amp;gt;- &amp;lt;math&amp;gt;y_2(t)&amp;lt;/math&amp;gt;, la cantidad que se forma en la primera reacción menos la que se emplea para formar el producto &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; en la segunda.&lt;br /&gt;
&lt;br /&gt;
Este problema se va a resolver para dos casos diferentes. Uno en el cual se considera que la segunda reacción es más rápida que la primera, lo que supone tomar un valor de la constante &amp;lt;math&amp;gt;k_2&amp;lt;/math&amp;gt;  mayor que &amp;lt;math&amp;gt;k_1&amp;lt;/math&amp;gt;. Y otro en el cual se considera que es más lenta, lo que implica que &amp;lt;math&amp;gt;k_2&amp;lt;/math&amp;gt; es menor que &amp;lt;math&amp;gt;k_1&amp;lt;/math&amp;gt;. Concretamente vamos a tomar los siguientes valores para resolver el problema numéricamente; &amp;lt;math&amp;gt;a_0&amp;lt;/math&amp;gt;=3 ,  &amp;lt;math&amp;gt;b_0&amp;lt;/math&amp;gt;=1, &amp;lt;math&amp;gt;k_1&amp;lt;/math&amp;gt;=1,  &amp;lt;math&amp;gt;k_2&amp;lt;/math&amp;gt;=5, &amp;lt;math&amp;gt;k_2&amp;lt;/math&amp;gt;=1/5, .En ambos casos se resuelve para los primeros 10 segundos.&lt;br /&gt;
&lt;br /&gt;
==La reacción D es más rápida que la reacción C==&lt;br /&gt;
CASO    &amp;lt;math&amp;gt;k_1=5  &amp;lt;/math&amp;gt;   '''h=0.1''' &lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
&lt;br /&gt;
%datos&lt;br /&gt;
y0=[0;0];&lt;br /&gt;
z0=[0;0];&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;
%matriz de las soluciones&lt;br /&gt;
y=zeros(2,length(t)); %euler&lt;br /&gt;
y(:,1)=y0;&lt;br /&gt;
 &lt;br /&gt;
z=zeros(2,length(t)); %runge-kutta&lt;br /&gt;
z(:,1)=y0;&lt;br /&gt;
 &lt;br /&gt;
for i=1:length(t)-1&lt;br /&gt;
 %euler&lt;br /&gt;
 y(:,i+1)=y(:,i)+h*[1*(3-y(1,i))*(1-y(1,i)); 5*(y(1,i)-y(2,i))];&lt;br /&gt;
 %runge-kutta&lt;br /&gt;
 K1=[1*(3-z(1,i))*(1-z(1,i)); 5*(z(1,i)-z(2,i))];&lt;br /&gt;
 K2=[1*(3-(z(1,i)+h/2*K1(1)))*(1-(z(1,i)+h/2*K1(1))); 5*((y(1,i)+h/2*K1(2))-(y(2,i)+h/2*K1(2)))];&lt;br /&gt;
 K3=[1*(3-(z(1,i)+h/2*K2(1)))*(1-(z(1,i)+h/2*K2(1))); 5*((y(1,i)+h/2*K2(2))-(y(2,i)+h/2*K2(2)))];&lt;br /&gt;
 K4=[1*(3-(z(1,i)+h*K3(1)))*(1-(z(1,i)+h*K3(1))); 5*((y(1,i)+h*K3(2))-(y(2,i)+h*K3(2)))];&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;
% se calcula la concentración de C=y1t)-y2(t)&lt;br /&gt;
Ay=y(1,:)-y(2,:); %euler&lt;br /&gt;
Az=z(1,:)-z(2,:); %runge-kutta&lt;br /&gt;
 &lt;br /&gt;
figure(1)&lt;br /&gt;
hold on&lt;br /&gt;
plot(t,Ay) %concentración de C por euler&lt;br /&gt;
plot(t,y(2,:),'r') %concentración de D por euler&lt;br /&gt;
plot(t,Az,'k') %concentración de C por runge-kutta&lt;br /&gt;
plot(t,z(2,:),'g') %concentración de D por runge-kutta&lt;br /&gt;
legend('concentración de C por euler','concentración de D por euler','concentración de C por runge-kutta','concentración de D por runge-kutta','Location','best')&lt;br /&gt;
hold off&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:graficoa.jpeg|500px|miniaturadeimagen|center|Reacción compleja]]&lt;br /&gt;
&lt;br /&gt;
Se observa que en en los primeros instantes aumentan las concentraciones de &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; aumentan sus concentraciones. Antes de que pase 1 segundo, la concentración &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; alcanza un máximo (de unos 0.3 molar) y va disminuyendo progresivamente hasta alcanzar un valor de 0 molar. La concentración &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; sigue creciendo hasta llegar a 1 molar. Una vez que tanto &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; como &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; alcanzan estos valores, se estabiliza la reacción. &lt;br /&gt;
&lt;br /&gt;
Como hemos impuesto que la reacción &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; es más rápida que &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt;, se observa que &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; empieza creciendo más rápidamente, pero como reacciona más despacio que &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; su concentración disminuye progresivamente, mientras que la de &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; aumenta.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''CASO'''  &amp;lt;math&amp;gt;k_2=5  &amp;lt;/math&amp;gt;   '''h=0.3''' &lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
&lt;br /&gt;
%datos&lt;br /&gt;
y0=[0;0];&lt;br /&gt;
z0=[0;0];&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=10;&lt;br /&gt;
h=0.3;&lt;br /&gt;
 &lt;br /&gt;
%variable independiente t&lt;br /&gt;
t=t0:h:tN;&lt;br /&gt;
 &lt;br /&gt;
%matriz de las soluciones&lt;br /&gt;
y=zeros(2,length(t)); %euler&lt;br /&gt;
y(:,1)=y0;&lt;br /&gt;
 &lt;br /&gt;
z=zeros(2,length(t)); %runge-kutta&lt;br /&gt;
z(:,1)=y0;&lt;br /&gt;
 &lt;br /&gt;
for i=1:length(t)-1&lt;br /&gt;
 %euler&lt;br /&gt;
 y(:,i+1)=y(:,i)+h*[1*(3-y(1,i))*(1-y(1,i)); 5*(y(1,i)-y(2,i))];&lt;br /&gt;
 %runge-kutta&lt;br /&gt;
 K1=[1*(3-z(1,i))*(1-z(1,i)); 5*(z(1,i)-z(2,i))];&lt;br /&gt;
 K2=[1*(3-(z(1,i)+h/2*K1(1)))*(1-(z(1,i)+h/2*K1(1))); 5*((y(1,i)+h/2*K1(2))-(y(2,i)+h/2*K1(2)))];&lt;br /&gt;
 K3=[1*(3-(z(1,i)+h/2*K2(1)))*(1-(z(1,i)+h/2*K2(1))); 5*((y(1,i)+h/2*K2(2))-(y(2,i)+h/2*K2(2)))];&lt;br /&gt;
 K4=[1*(3-(z(1,i)+h*K3(1)))*(1-(z(1,i)+h*K3(1))); 5*((y(1,i)+h*K3(2))-(y(2,i)+h*K3(2)))];&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;
% se calcula la concentración de C=y1t)-y2(t)&lt;br /&gt;
Ay=y(1,:)-y(2,:); %euler&lt;br /&gt;
Az=z(1,:)-z(2,:); %runge-kutta&lt;br /&gt;
 &lt;br /&gt;
figure(1)&lt;br /&gt;
hold on&lt;br /&gt;
plot(t,Ay) %concentración de C por euler&lt;br /&gt;
plot(t,y(2,:),'r') %concentración de D por euler&lt;br /&gt;
plot(t,Az,'k') %concentración de C por runge-kutta&lt;br /&gt;
plot(t,z(2,:),'g') %concentración de D por runge-kutta&lt;br /&gt;
legend('concentración de C por euler','concentración de D por euler','concentración de C por runge-kutta','concentración de D por runge-kutta','Location','best')&lt;br /&gt;
hold off&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:graficob.jpeg|500px|miniaturadeimagen|center|Reacción compleja]]&lt;br /&gt;
&lt;br /&gt;
Repetimos el programa pero para un tamaño de paso mayor, de '''h=0.3''', y observamos que no  es suficientemente preciso, sobre todo al principio, no se puede analizar bien lo que está pasando en la reacción.&lt;br /&gt;
&lt;br /&gt;
==La reacción D es más lenta que la reacción C==&lt;br /&gt;
&lt;br /&gt;
CASO  &amp;lt;math&amp;gt;k_1 &amp;lt;/math&amp;gt;=1,   &amp;lt;math&amp;gt;k_2 &amp;lt;/math&amp;gt;=1/5&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
&lt;br /&gt;
%datos&lt;br /&gt;
y0=[0;0];&lt;br /&gt;
z0=[0;0];&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;
%matriz de las soluciones&lt;br /&gt;
y=zeros(2,length(t)); %euler&lt;br /&gt;
y(:,1)=y0;&lt;br /&gt;
 &lt;br /&gt;
z=zeros(2,length(t)); %runge-kutta&lt;br /&gt;
z(:,1)=y0;&lt;br /&gt;
 &lt;br /&gt;
for i=1:length(t)-1&lt;br /&gt;
 %euler&lt;br /&gt;
 y(:,i+1)=y(:,i)+h*[1*(3-y(1,i))*(1-y(1,i)); 1/5*(y(1,i)-y(2,i))];&lt;br /&gt;
 %runge-kutta&lt;br /&gt;
 K1=[1*(3-z(1,i))*(1-z(1,i)); 1/5*(z(1,i)-z(2,i))];&lt;br /&gt;
 K2=[1*(3-(z(1,i)+h/2*K1(1)))*(1-(z(1,i)+h/2*K1(1))); 1/5*((y(1,i)+h/2*K1(2))-(y(2,i)+h/2*K1(2)))];&lt;br /&gt;
 K3=[1*(3-(z(1,i)+h/2*K2(1)))*(1-(z(1,i)+h/2*K2(1))); 1/5*((y(1,i)+h/2*K2(2))-(y(2,i)+h/2*K2(2)))];&lt;br /&gt;
 K4=[1*(3-(z(1,i)+h*K3(1)))*(1-(z(1,i)+h*K3(1))); 1/5*((y(1,i)+h*K3(2))-(y(2,i)+h*K3(2)))];&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;
% se calcula la concentración de C=y1t)-y2(t)&lt;br /&gt;
Ay=y(1,:)-y(2,:); %euler&lt;br /&gt;
Az=z(1,:)-z(2,:); %runge-kutta&lt;br /&gt;
 &lt;br /&gt;
figure(1)&lt;br /&gt;
hold on&lt;br /&gt;
plot(t,Ay) %concentración de C por euler&lt;br /&gt;
plot(t,y(2,:),'r') %concentración de D por euler&lt;br /&gt;
plot(t,Az,'k') %concentración de C por runge-kutta&lt;br /&gt;
plot(t,z(2,:),'g') %concentración de D por runge-kutta&lt;br /&gt;
legend('concentración de C por euler','concentración de D por euler','concentración de C por runge-kutta','concentración de D por runge-kutta','Location','best')&lt;br /&gt;
hold off&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:graficoc.jpeg|500px|miniaturadeimagen|center|Reacción compleja]]&lt;br /&gt;
&lt;br /&gt;
Si ahora imponemos que la reacción  &amp;lt;math&amp;gt;C &amp;lt;/math&amp;gt; es más rápida que  &amp;lt;math&amp;gt;D &amp;lt;/math&amp;gt;, obtenemos lo siguiente. Se parece a la gráfica que obtuvimos en el programa anterior, pero  más extendida en el tiempo, más lenta.  &amp;lt;math&amp;gt;C &amp;lt;/math&amp;gt; alcanza una concentración máxima de unos 0.8 molar antes de empezar a decrecer a medida que avanza el tiempo y acercándose a un valor de '''0''' molar.  &amp;lt;math&amp;gt;D &amp;lt;/math&amp;gt; crece más lentamente que en la gráfica anterior, pero se aproxima al mismo valor, '''1''' molar.&lt;br /&gt;
Se observa que aunque hagamos la reacción  &amp;lt;math&amp;gt;C &amp;lt;/math&amp;gt; más rápida, tenemos las mismas concentraciones finales, pero tardan más tiempo en obtenerse, ya que la reacción tarda más en estabilizarse.&lt;br /&gt;
&lt;br /&gt;
&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>Joseva</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Reacciones_complejas_(Grupo_D1)&amp;diff=27130</id>
		<title>Reacciones complejas (Grupo D1)</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Reacciones_complejas_(Grupo_D1)&amp;diff=27130"/>
				<updated>2015-03-05T22:40:59Z</updated>
		
		<summary type="html">&lt;p&gt;Joseva: /* Método de Euler */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{ TrabajoED | Reacciones complejas (Grupo D1) | [[:Categoría:Ecuaciones Diferenciales|Ecuaciones Diferenciales]]|[[:Categoría:ED14/15|Curso 2014-15]] | Rincón Crespo, Kevin&lt;br /&gt;
&lt;br /&gt;
Rodríguez Gómez, Javier&lt;br /&gt;
&lt;br /&gt;
Sans Jiménez, Alejandro&lt;br /&gt;
&lt;br /&gt;
Sesto Muñoz, María Victoria&lt;br /&gt;
&lt;br /&gt;
Vallejo Asín, José Manuel &lt;br /&gt;
&lt;br /&gt;
Villarino Redondo, Álvaro }}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=Introducción=&lt;br /&gt;
Se considera una reacción química irreversible en una solución bien mezclada. Supondremos que la reacción ocurre para un volumen y temperatura constantes. Al inicio se encuentran dos reactivos A y B, que van formando un producto C en lo que se conoce como una reacción bimolecular, es decir, una molécula de A y una de B producen una de C, &lt;br /&gt;
                                                                     &amp;lt;math&amp;gt;A + B → C&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Supondremos también que se satisface la ley de acción de masas, que establece que la velocidad de reacción es proporcional al producto de las concentraciones de los reactivos.&lt;br /&gt;
&lt;br /&gt;
=Concentración del reactivo C a lo largo del tiempo=&lt;br /&gt;
En primer lugar, suponiendo que la reacción es irreversible, es decir, que C no puede volver a formar A y B, se puede expresar la situación mediante el siguiente problema de valor inicial, cuando t&amp;gt;0:&lt;br /&gt;
   &amp;lt;math&amp;gt;&lt;br /&gt;
   \left . &lt;br /&gt;
      \begin{matrix} &lt;br /&gt;
         y'(t)={k_{1}}({a_{0}}-y(t))({b_{0}}-y(t))=0\\&lt;br /&gt;
         y(0)=0&lt;br /&gt;
      \end{matrix}&lt;br /&gt;
   \right \}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Donde &amp;lt;math&amp;gt; {a_{0}}&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;{b_{0}}&amp;lt;/math&amp;gt; representan las concentraciones iniciales de '''A''' y '''B''' respectivamente y &amp;lt;math&amp;gt;{k_{1}}&amp;lt;/math&amp;gt; es la constante de proporcionalidad que indica la ley de acción de masas. &amp;lt;math&amp;gt;y’(t)&amp;lt;/math&amp;gt; representa la velocidad de reacción, es decir, la velocidad con que se forma el producto &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; ; mientras que la solución de la ecuación diferencial, &amp;lt;math&amp;gt;y(t)&amp;lt;/math&amp;gt; , representa la concentración de &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt;, la cantidad de compuesto que se ha formado. Para comprobar que la solución de este problema de Cauchy es única, comenzamos definiendo:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;math&amp;gt;f(t,y)={k_{1}}({a_{0}}-y(t))({b_{0}}-y(t))=0,   t&amp;gt;0 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Observamos que &amp;lt;math&amp;gt;f(t,y)&amp;lt;/math&amp;gt; es continua en el intervalo &amp;lt;math&amp;gt; I=(0,∞)∩B((0,0),r&amp;gt;0)&amp;lt;/math&amp;gt;, por lo que ya aseguramos la existencia de al menos una solución. Examinando la derivada parcial:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\frac{∂f}{∂y}=k_1(-a_0-b_0+2y)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Se deduce que al ser un polinomio no va a haber problemas de continuidad para ninguna bola. De esta forma, podemos asegurar que existe una única solución.&lt;br /&gt;
&lt;br /&gt;
==Concentración del reactivo C a lo largo del tiempo en un proceso reversible==&lt;br /&gt;
&lt;br /&gt;
Ahora bien, ¿qué pasaría si la reacción fuese reversible? Con esto lo que queremos indicar es que además de formarse  &amp;lt;math&amp;gt;C &amp;lt;/math&amp;gt;, este también se descompone de nuevo en  &amp;lt;math&amp;gt;A &amp;lt;/math&amp;gt; y  &amp;lt;math&amp;gt;B &amp;lt;/math&amp;gt;. Por lo tanto, nos quedaría una ecuación diferencial con la siguiente forma, cuando &amp;lt;math&amp;gt;t&amp;gt;0 &amp;lt;/math&amp;gt; :&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; y'(t)={k_{1}}({a_{0}}-y(t))({b_{0}}-y(t))-Cy(t)&amp;lt;/math&amp;gt;  &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Si nos fijamos, la modificación es sencillamente restar  &amp;lt;math&amp;gt;y(t) &amp;lt;/math&amp;gt; multiplicada por una constante, la cual refleja qué porcentaje de  &amp;lt;math&amp;gt;C &amp;lt;/math&amp;gt; se va descomponiendo a medida que se da, simultáneamente, la reacción  &amp;lt;math&amp;gt;A + B → C &amp;lt;/math&amp;gt;. Sin embargo, esta constante no puede tener cualquier valor, ya que en una reacción se cumple la conservación de masa. Por ello, a  &amp;lt;math&amp;gt;C &amp;lt;/math&amp;gt; le asociaremos el siguiente dominio:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;C∈(0,1)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Obsérvese que  &amp;lt;math&amp;gt;C &amp;lt;/math&amp;gt; tiene que ser mayor que 0 para que sea reversible, pero al mismo tiempo inferior que 1, ya que si no se estaría descomponiendo más compuesto  &amp;lt;math&amp;gt;C &amp;lt;/math&amp;gt; del que realmente se ha formado, en otras palabras, estaría apareciendo masa de la nada.&lt;br /&gt;
&lt;br /&gt;
=Método de Euler=&lt;br /&gt;
&lt;br /&gt;
Una vez llegados a este punto, se procede a ver una interpretación gráfica de la reacción. Para ello, se refleja en la gráfica (en un intervalo de 2 segundos), cómo varían las concentraciones tanto de &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt; (&amp;lt;math&amp;gt;a_0&amp;lt;/math&amp;gt;=3 mol/L) y &amp;lt;math&amp;gt;B&amp;lt;/math&amp;gt; (&amp;lt;math&amp;gt;b_0&amp;lt;/math&amp;gt;=1 mol/L) como de &amp;lt;math&amp;gt; C&amp;lt;/math&amp;gt;, para una &amp;lt;math&amp;gt;k_1&amp;lt;/math&amp;gt;=1 mol/s. Se comienza, por el momento, aplicando el método de Euler. Posteriormente se utilizarán métodos más precisos.&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo= &lt;br /&gt;
% Euler&lt;br /&gt;
clear all&lt;br /&gt;
% datos del problema&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=2;&lt;br /&gt;
y0=0;&lt;br /&gt;
h=0.1;&lt;br /&gt;
k1=1;&lt;br /&gt;
a0=3;&lt;br /&gt;
b0=1;&lt;br /&gt;
% Definimos la variable independiente&lt;br /&gt;
t=t0:h:tN;&lt;br /&gt;
% Guardamos los valores de la solución aproximada en el vector &amp;quot;y1&amp;quot; y&lt;br /&gt;
% establecemos los vectores de concentraciones A y B&lt;br /&gt;
y1=zeros(1,length(t)); &lt;br /&gt;
y1(1)=y0;&lt;br /&gt;
a1=zeros(1,length(t));&lt;br /&gt;
a1(1)=a0;&lt;br /&gt;
b1=zeros(1,length(t));&lt;br /&gt;
b1(1)=b0;&lt;br /&gt;
% A continuación, calculamos las componentes de los vectores y1, a y b&lt;br /&gt;
for i=1:length(t)-1&lt;br /&gt;
    y1(i+1)=y1(i)+h*(k1*(a0-y1(i))*(b0-y1(i)));    %Euler&lt;br /&gt;
    a1(i+1)=a0-y1(i+1); % evolución de la concentración de A&lt;br /&gt;
    b1(i+1)=b0-y1(i+1); % evolución de la concentración de B&lt;br /&gt;
end&lt;br /&gt;
%grafico &lt;br /&gt;
figure(1)&lt;br /&gt;
hold on&lt;br /&gt;
plot(t,y1,'g')&lt;br /&gt;
plot(t,a1,'r')&lt;br /&gt;
plot(t,b1,'b')&lt;br /&gt;
legend('concentración de C','concentración de A','concentración de B','location','best')&lt;br /&gt;
hold off &lt;br /&gt;
%en verde se muestra la concentración de C, en rojo la de A, y en azul la de B&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Archivo:3euler.jpeg|500px|miniaturadeimagen|center|Reacción compleja]]&lt;br /&gt;
&lt;br /&gt;
Aunque con observar los resultados ya podemos decir con casi absoluta seguridad cuáles son los límites de las concentraciones de cada reactivo &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;B&amp;lt;/math&amp;gt; y del producto &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt;, se ha diseñado un programa que, mediante diferencia de valores sucesivos de la variable &amp;lt;math&amp;gt;y(t)&amp;lt;/math&amp;gt;, nos devuelve el valor de la función cuando dicha diferencia es muy pequeña '''(se ha puesto una diferencia de 0.001)''', es decir, cuando tenemos una asíntota al tender &amp;lt;math&amp;gt;t→∞&amp;lt;/math&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
%Estudio de las asíntotas&lt;br /&gt;
t1=t0:h:10;%se aumenta la longitud de t, y se estima que se alcanzarán las asíntotas antes de t=10&lt;br /&gt;
y_=zeros(1,length(t1)); %se define un vector y_ idéntico a y1 pero con t hasta 10&lt;br /&gt;
a_=y_;&lt;br /&gt;
b_=y_;&lt;br /&gt;
y_(1)=y0;&lt;br /&gt;
a_(1)=a0;&lt;br /&gt;
b_(1)=b0;&lt;br /&gt;
for i=1:length(t1)-1&lt;br /&gt;
    y_(i+1)=y_(i)+h*(k1*(a0-y_(i))*(b0-y_(i)));&lt;br /&gt;
    diferencia=y_(i+1)-y_(i);&lt;br /&gt;
    if abs(diferencia)&amp;lt;=0.001&lt;br /&gt;
        limiteC=y_(i+1)&lt;br /&gt;
        break&lt;br /&gt;
    end&lt;br /&gt;
end&lt;br /&gt;
for i=1:length(t1)-1&lt;br /&gt;
    y_(i+1)=y_(i)+h*(k1*(a0-y_(i))*(b0-y_(i)));    &lt;br /&gt;
    a_(i+1)=a0-y_(i+1);&lt;br /&gt;
    diferencia2=a_(i+1)-a_(i);&lt;br /&gt;
    if abs(diferencia2)&amp;lt;=0.001&lt;br /&gt;
        limiteA=a_(i+1)&lt;br /&gt;
        break&lt;br /&gt;
    end&lt;br /&gt;
end&lt;br /&gt;
for i=1:length(t1)-1&lt;br /&gt;
    y_(i+1)=y_(i)+h*(k1*(a0-y_(i))*(b0-y_(i)));    &lt;br /&gt;
    b_(i+1)=b0-y_(i+1);&lt;br /&gt;
    diferencia3=b_(i+1)-b_(i);&lt;br /&gt;
    if abs(diferencia3)&amp;lt;=0.001&lt;br /&gt;
        limiteB=b_(i+1)&lt;br /&gt;
        break&lt;br /&gt;
    end&lt;br /&gt;
end&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
Que nos devuelve unos valores de las concentraciones para el límite de:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\lim A=2,0036≈2 mol/L&amp;lt;/math&amp;gt;:     &lt;br /&gt;
&amp;lt;math&amp;gt;\lim B=0,0036≈0mol/L&amp;lt;/math&amp;gt;:         &lt;br /&gt;
&amp;lt;math&amp;gt;\lim C=0,9964≈1mol/L&amp;lt;/math&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
Lo cual es lógico, ya que &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;B&amp;lt;/math&amp;gt; se combinan en una proporción de 1:1, luego &amp;lt;math&amp;gt;B&amp;lt;/math&amp;gt;, que tiene una concentración inicial de &amp;lt;math&amp;gt;b_0&amp;lt;/math&amp;gt;=1, será el reactivo limitante (el que desaparecerá por completo), mientras que &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt;, con &amp;lt;math&amp;gt;a_0&amp;lt;/math&amp;gt;=3, acabará con una concentración molar final igual a 2, y C, del que no habia nada,alcanza una concentraccion de &amp;lt;math&amp;gt;1mol/L&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
= Método del Trapecio y Método de Runge-Kutta=&lt;br /&gt;
&lt;br /&gt;
A continuación, para obtener con más precisión las representaciones gráficas de las respectivas concentraciones, se opta por utilizar los métodos de los &amp;lt;math&amp;gt;Trapecios&amp;lt;/math&amp;gt; (segundo orden) y de &amp;lt;math&amp;gt;Runge-Kutta&amp;lt;/math&amp;gt; (cuarto orden). Desgraciadamente, no es posible comparar los errores cometidos por cada método con la expresión real de la concentración de C, ya que la ecuación diferencial no es de fácil resolución analítica, luego resulta imposible alcanzar una expresión explícita de la concentración en términos de nuestros datos conocidos; &amp;lt;math&amp;gt;a_0&amp;lt;/math&amp;gt;,&amp;lt;math&amp;gt;b_0&amp;lt;/math&amp;gt;,&amp;lt;math&amp;gt;k_1&amp;lt;/math&amp;gt;,&amp;lt;math&amp;gt;t (tiempo)&amp;lt;/math&amp;gt;.  Sin embargo, podemos confiar con bastante seguridad en el método sobre todo de &amp;lt;math&amp;gt;Runge-Kutta&amp;lt;/math&amp;gt;, debido a su cuarto orden. &lt;br /&gt;
&lt;br /&gt;
Para los trapecios, al ser un método implícito, es necesario despejar la componente &amp;lt;math&amp;gt;y_{n+1}&amp;lt;/math&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;y&amp;lt;sub&amp;gt;(n+1)&amp;lt;/sub&amp;gt;=((1+h/2∙k&amp;lt;sub&amp;gt;1&amp;lt;/sub&amp;gt;∙(a&amp;lt;sub&amp;gt;0&amp;lt;/sub&amp;gt;+b&amp;lt;sub&amp;gt;0&amp;lt;/sub&amp;gt; ) )-√((1+h/2∙k&amp;lt;sub&amp;gt;1&amp;lt;/sub&amp;gt;1∙(a&amp;lt;sub&amp;gt;0&amp;lt;/sub&amp;gt;+b&amp;lt;sub&amp;gt;0&amp;lt;/sub&amp;gt; ) )^2-2∙h∙k_(1∙) (y&amp;lt;sub&amp;gt;n&amp;lt;/sub&amp;gt;+h/2∙k&amp;lt;sub&amp;gt;1&amp;lt;/sub&amp;gt;∙(a&amp;lt;sub&amp;gt;0&amp;lt;/sub&amp;gt;-y&amp;lt;sub&amp;gt;n&amp;lt;/sub&amp;gt; )∙(b&amp;lt;sub&amp;gt;0&amp;lt;/sub&amp;gt;-y&amp;lt;sub&amp;gt;n&amp;lt;/sub&amp;gt; )+[h/2∙k&amp;lt;sub&amp;gt;1&amp;lt;/sub&amp;gt;]∙a&amp;lt;sub&amp;gt;0&amp;lt;/sub&amp;gt;∙b&amp;lt;sub&amp;gt;0&amp;lt;/sub&amp;gt; ) ))/(k&amp;lt;sub&amp;gt;1&amp;lt;/sub&amp;gt;*h)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Cabe destacar que este programa parte de los datos ya establecidos en el programa de Euler para '''t0, tN, y0, a0, b0, k1 y h''':&lt;br /&gt;
{{matlab|codigo= &lt;br /&gt;
%Trapecios&lt;br /&gt;
y2=zeros(1,length(t)); &lt;br /&gt;
a2=y2;&lt;br /&gt;
b2=y2;&lt;br /&gt;
y2(1)=y0;&lt;br /&gt;
a2(1)=a0;&lt;br /&gt;
b2(1)=b0;&lt;br /&gt;
for i=1:length(t)-1&lt;br /&gt;
    y2(i+1)=((1+0.5*h*k1*(a0+b0))-sqrt((1+0.5*h*k1*(a0+b0))^2-2*h*k1*(y2(i)+0.5*h*k1*(a0-y2(i))*(b0-y2(i))+0.5*h*k1*a0*b0)))/(k1*h);&lt;br /&gt;
    a2(i+1)=a0-y2(i+1);&lt;br /&gt;
    b2(i+1)=b0-y2(i+1);&lt;br /&gt;
end&lt;br /&gt;
 &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
%Runge-Kutta&lt;br /&gt;
y3=zeros(1,length(t)); &lt;br /&gt;
a3=y3;&lt;br /&gt;
b3=y3;&lt;br /&gt;
y3(1)=y0;&lt;br /&gt;
a3(1)=a0;&lt;br /&gt;
b3(1)=b0;&lt;br /&gt;
for i=1:length(t)-1 &lt;br /&gt;
    r1=k1*(a0-y3(i))*(b0-y3(i));&lt;br /&gt;
    r2=k1*(a0-y3(i)-0.5*r1*h)*(b0-y3(i)-0.5*r1*h);&lt;br /&gt;
    r3=k1*(a0-y3(i)-0.5*r2*h)*(b0-y3(i)-0.5*r2*h);&lt;br /&gt;
    r4=k1*(a0-y3(i)-r3*h)*(b0-y3(i)-r3*h);&lt;br /&gt;
    y3(i+1)=y3(i)+h/6*(r1+2*r2+2*r3+r4);&lt;br /&gt;
    a3(i+1)=a0-y3(i+1);&lt;br /&gt;
    b3(i+1)=b0-y3(i+1);&lt;br /&gt;
end&lt;br /&gt;
%se pintan las dos, en azul las soluciones de los Trapecios, y en negro las&lt;br /&gt;
%de Runge-Kutta. &lt;br /&gt;
figure(2)&lt;br /&gt;
hold on&lt;br /&gt;
plot(t,y2)&lt;br /&gt;
plot(t,a2)&lt;br /&gt;
plot(t,b2)&lt;br /&gt;
plot(t,y3,'k')&lt;br /&gt;
plot(t,a3,'k')&lt;br /&gt;
plot(t,b3,'k')&lt;br /&gt;
hold off&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
Que proporciona el resultado que se puede observar en la primera gráfica adjunta. Como podemos ver, es prácticamente indistinguible una gráfica de la otra. Sin embargo, si la juntamos con las gráficas proporcionadas por el método de Euler, que se representa ahora en rojo, la diferencia es palpable (ver gráfica 2), lo cual evidencia la peor precisión del método de Euler.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:4trapeciokung.jpeg|500px|miniaturadeimagen|center|Reacción compleja]]&lt;br /&gt;
&lt;br /&gt;
[[Archivo:4comparacion.jpeg|500px|miniaturadeimagen|center|Gráfico 2]]&lt;br /&gt;
&lt;br /&gt;
=Reacción consecutiva=&lt;br /&gt;
&lt;br /&gt;
Consideremos ahora que se produce una reacción consecutiva de la forma: &lt;br /&gt;
&lt;br /&gt;
                                                                   &amp;lt;math&amp;gt;A + B → k_1C → k_2D&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
De tal modo que los reactivos &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;B&amp;lt;/math&amp;gt; se combinan en la proporción 1:1 para formar compuesto &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt;, el cual, a su vez, se va descomponiendo para formar compuesto &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt;. Al igual que se ha hecho antes al analizar las otras reacciones, se considerará que se cumple la ley de acción de masas. Es decir, la velocidad con la que se forma compuesto &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; es proporcional a las concentraciones existentes de &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt; y de &amp;lt;math&amp;gt;B&amp;lt;/math&amp;gt; y del mismo modo la de formación de la sustancia &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; lo es a la concentración de &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; que se ha ido formando.&lt;br /&gt;
&lt;br /&gt;
Esta reacción consecutiva está representada por el siguiente problema de valor inicial:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;&lt;br /&gt;
   \left . &lt;br /&gt;
      \begin{matrix} &lt;br /&gt;
         y'_1(t)={k_{1}}({a_{0}}-y_1(t))({b_{0}}-y_1(t))\\&lt;br /&gt;
         y'_2(t)={k_{2}}(y_1(t)-y_2(t))\\&lt;br /&gt;
y_1(0)=0\\y_2(0)=0&lt;br /&gt;
      \end{matrix}&lt;br /&gt;
   \right \}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
Donde &amp;lt;math&amp;gt;a_0&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;b_0&amp;lt;/math&amp;gt; representan las concentraciones iniciales de &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;B&amp;lt;/math&amp;gt; respectivamente, &amp;lt;math&amp;gt;k_1&amp;lt;/math&amp;gt; es la constante de proporcionalidad que rige la primera reacción y &amp;lt;math&amp;gt;k_2&amp;lt;/math&amp;gt; la que rige la segunda reacción o reacción consecutiva. &amp;lt;math&amp;gt;y_1’(t)&amp;lt;/math&amp;gt; e  &amp;lt;math&amp;gt;y_2’(t)&amp;lt;/math&amp;gt; representan las velocidades de las reacciones, es decir, las velocidades con que se forman los productos &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt;. &amp;lt;math&amp;gt;y_2(t)&amp;lt;/math&amp;gt; representa la concentración del producto &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; pero es importante apreciar que en este caso &amp;lt;math&amp;gt;y_1(t)&amp;lt;/math&amp;gt; no nos da el valor de la concentración de &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; directamente, sino que ésta será &amp;lt;math&amp;gt;y_1(t)&amp;lt;/math&amp;gt;- &amp;lt;math&amp;gt;y_2(t)&amp;lt;/math&amp;gt;, la cantidad que se forma en la primera reacción menos la que se emplea para formar el producto &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; en la segunda.&lt;br /&gt;
&lt;br /&gt;
Este problema se va a resolver para dos casos diferentes. Uno en el cual se considera que la segunda reacción es más rápida que la primera, lo que supone tomar un valor de la constante &amp;lt;math&amp;gt;k_2&amp;lt;/math&amp;gt;  mayor que &amp;lt;math&amp;gt;k_1&amp;lt;/math&amp;gt;. Y otro en el cual se considera que es más lenta, lo que implica que &amp;lt;math&amp;gt;k_2&amp;lt;/math&amp;gt; es menor que &amp;lt;math&amp;gt;k_1&amp;lt;/math&amp;gt;. Concretamente vamos a tomar los siguientes valores para resolver el problema numéricamente; &amp;lt;math&amp;gt;a_0&amp;lt;/math&amp;gt;=3 ,  &amp;lt;math&amp;gt;b_0&amp;lt;/math&amp;gt;=1, &amp;lt;math&amp;gt;k_1&amp;lt;/math&amp;gt;=1,  &amp;lt;math&amp;gt;k_2&amp;lt;/math&amp;gt;=5, &amp;lt;math&amp;gt;k_2&amp;lt;/math&amp;gt;=1/5, .En ambos casos se resuelve para los primeros 10 segundos.&lt;br /&gt;
&lt;br /&gt;
==La reacción D es más rápida que la reacción C==&lt;br /&gt;
CASO    &amp;lt;math&amp;gt;k_1=5  &amp;lt;/math&amp;gt;   '''h=0.1''' &lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
&lt;br /&gt;
%datos&lt;br /&gt;
y0=[0;0];&lt;br /&gt;
z0=[0;0];&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;
%matriz de las soluciones&lt;br /&gt;
y=zeros(2,length(t)); %euler&lt;br /&gt;
y(:,1)=y0;&lt;br /&gt;
 &lt;br /&gt;
z=zeros(2,length(t)); %runge-kutta&lt;br /&gt;
z(:,1)=y0;&lt;br /&gt;
 &lt;br /&gt;
for i=1:length(t)-1&lt;br /&gt;
 %euler&lt;br /&gt;
 y(:,i+1)=y(:,i)+h*[1*(3-y(1,i))*(1-y(1,i)); 5*(y(1,i)-y(2,i))];&lt;br /&gt;
 %runge-kutta&lt;br /&gt;
 K1=[1*(3-z(1,i))*(1-z(1,i)); 5*(z(1,i)-z(2,i))];&lt;br /&gt;
 K2=[1*(3-(z(1,i)+h/2*K1(1)))*(1-(z(1,i)+h/2*K1(1))); 5*((y(1,i)+h/2*K1(2))-(y(2,i)+h/2*K1(2)))];&lt;br /&gt;
 K3=[1*(3-(z(1,i)+h/2*K2(1)))*(1-(z(1,i)+h/2*K2(1))); 5*((y(1,i)+h/2*K2(2))-(y(2,i)+h/2*K2(2)))];&lt;br /&gt;
 K4=[1*(3-(z(1,i)+h*K3(1)))*(1-(z(1,i)+h*K3(1))); 5*((y(1,i)+h*K3(2))-(y(2,i)+h*K3(2)))];&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;
% se calcula la concentración de C=y1t)-y2(t)&lt;br /&gt;
Ay=y(1,:)-y(2,:); %euler&lt;br /&gt;
Az=z(1,:)-z(2,:); %runge-kutta&lt;br /&gt;
 &lt;br /&gt;
figure(1)&lt;br /&gt;
hold on&lt;br /&gt;
plot(t,Ay) %concentración de C por euler&lt;br /&gt;
plot(t,y(2,:),'r') %concentración de D por euler&lt;br /&gt;
plot(t,Az,'k') %concentración de C por runge-kutta&lt;br /&gt;
plot(t,z(2,:),'g') %concentración de D por runge-kutta&lt;br /&gt;
legend('concentración de C por euler','concentración de D por euler','concentración de C por runge-kutta','concentración de D por runge-kutta','Location','best')&lt;br /&gt;
hold off&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:graficoa.jpeg|500px|miniaturadeimagen|center|Reacción compleja]]&lt;br /&gt;
&lt;br /&gt;
Se observa que en en los primeros instantes aumentan las concentraciones de &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; aumentan sus concentraciones. Antes de que pase 1 segundo, la concentración &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; alcanza un máximo (de unos 0.3 molar) y va disminuyendo progresivamente hasta alcanzar un valor de 0 molar. La concentración &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; sigue creciendo hasta llegar a 1 molar. Una vez que tanto &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; como &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; alcanzan estos valores, se estabiliza la reacción. &lt;br /&gt;
&lt;br /&gt;
Como hemos impuesto que la reacción &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; es más rápida que &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt;, se observa que &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; empieza creciendo más rápidamente, pero como reacciona más despacio que &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; su concentración disminuye progresivamente, mientras que la de &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; aumenta.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''CASO'''  &amp;lt;math&amp;gt;k_2=5  &amp;lt;/math&amp;gt;   '''h=0.3''' &lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
&lt;br /&gt;
%datos&lt;br /&gt;
y0=[0;0];&lt;br /&gt;
z0=[0;0];&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=10;&lt;br /&gt;
h=0.3;&lt;br /&gt;
 &lt;br /&gt;
%variable independiente t&lt;br /&gt;
t=t0:h:tN;&lt;br /&gt;
 &lt;br /&gt;
%matriz de las soluciones&lt;br /&gt;
y=zeros(2,length(t)); %euler&lt;br /&gt;
y(:,1)=y0;&lt;br /&gt;
 &lt;br /&gt;
z=zeros(2,length(t)); %runge-kutta&lt;br /&gt;
z(:,1)=y0;&lt;br /&gt;
 &lt;br /&gt;
for i=1:length(t)-1&lt;br /&gt;
 %euler&lt;br /&gt;
 y(:,i+1)=y(:,i)+h*[1*(3-y(1,i))*(1-y(1,i)); 5*(y(1,i)-y(2,i))];&lt;br /&gt;
 %runge-kutta&lt;br /&gt;
 K1=[1*(3-z(1,i))*(1-z(1,i)); 5*(z(1,i)-z(2,i))];&lt;br /&gt;
 K2=[1*(3-(z(1,i)+h/2*K1(1)))*(1-(z(1,i)+h/2*K1(1))); 5*((y(1,i)+h/2*K1(2))-(y(2,i)+h/2*K1(2)))];&lt;br /&gt;
 K3=[1*(3-(z(1,i)+h/2*K2(1)))*(1-(z(1,i)+h/2*K2(1))); 5*((y(1,i)+h/2*K2(2))-(y(2,i)+h/2*K2(2)))];&lt;br /&gt;
 K4=[1*(3-(z(1,i)+h*K3(1)))*(1-(z(1,i)+h*K3(1))); 5*((y(1,i)+h*K3(2))-(y(2,i)+h*K3(2)))];&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;
% se calcula la concentración de C=y1t)-y2(t)&lt;br /&gt;
Ay=y(1,:)-y(2,:); %euler&lt;br /&gt;
Az=z(1,:)-z(2,:); %runge-kutta&lt;br /&gt;
 &lt;br /&gt;
figure(1)&lt;br /&gt;
hold on&lt;br /&gt;
plot(t,Ay) %concentración de C por euler&lt;br /&gt;
plot(t,y(2,:),'r') %concentración de D por euler&lt;br /&gt;
plot(t,Az,'k') %concentración de C por runge-kutta&lt;br /&gt;
plot(t,z(2,:),'g') %concentración de D por runge-kutta&lt;br /&gt;
legend('concentración de C por euler','concentración de D por euler','concentración de C por runge-kutta','concentración de D por runge-kutta','Location','best')&lt;br /&gt;
hold off&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:graficob.jpeg|500px|miniaturadeimagen|center|Reacción compleja]]&lt;br /&gt;
&lt;br /&gt;
Repetimos el programa pero para un tamaño de paso mayor, de '''h=0.3''', y observamos que no  es suficientemente preciso, sobre todo al principio, no se puede analizar bien lo que está pasando en la reacción.&lt;br /&gt;
&lt;br /&gt;
==La reacción D es más lenta que la reacción C==&lt;br /&gt;
&lt;br /&gt;
CASO  &amp;lt;math&amp;gt;k_1 &amp;lt;/math&amp;gt;=1,   &amp;lt;math&amp;gt;k_2 &amp;lt;/math&amp;gt;=1/5&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
&lt;br /&gt;
%datos&lt;br /&gt;
y0=[0;0];&lt;br /&gt;
z0=[0;0];&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;
%matriz de las soluciones&lt;br /&gt;
y=zeros(2,length(t)); %euler&lt;br /&gt;
y(:,1)=y0;&lt;br /&gt;
 &lt;br /&gt;
z=zeros(2,length(t)); %runge-kutta&lt;br /&gt;
z(:,1)=y0;&lt;br /&gt;
 &lt;br /&gt;
for i=1:length(t)-1&lt;br /&gt;
 %euler&lt;br /&gt;
 y(:,i+1)=y(:,i)+h*[1*(3-y(1,i))*(1-y(1,i)); 1/5*(y(1,i)-y(2,i))];&lt;br /&gt;
 %runge-kutta&lt;br /&gt;
 K1=[1*(3-z(1,i))*(1-z(1,i)); 1/5*(z(1,i)-z(2,i))];&lt;br /&gt;
 K2=[1*(3-(z(1,i)+h/2*K1(1)))*(1-(z(1,i)+h/2*K1(1))); 1/5*((y(1,i)+h/2*K1(2))-(y(2,i)+h/2*K1(2)))];&lt;br /&gt;
 K3=[1*(3-(z(1,i)+h/2*K2(1)))*(1-(z(1,i)+h/2*K2(1))); 1/5*((y(1,i)+h/2*K2(2))-(y(2,i)+h/2*K2(2)))];&lt;br /&gt;
 K4=[1*(3-(z(1,i)+h*K3(1)))*(1-(z(1,i)+h*K3(1))); 1/5*((y(1,i)+h*K3(2))-(y(2,i)+h*K3(2)))];&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;
% se calcula la concentración de C=y1t)-y2(t)&lt;br /&gt;
Ay=y(1,:)-y(2,:); %euler&lt;br /&gt;
Az=z(1,:)-z(2,:); %runge-kutta&lt;br /&gt;
 &lt;br /&gt;
figure(1)&lt;br /&gt;
hold on&lt;br /&gt;
plot(t,Ay) %concentración de C por euler&lt;br /&gt;
plot(t,y(2,:),'r') %concentración de D por euler&lt;br /&gt;
plot(t,Az,'k') %concentración de C por runge-kutta&lt;br /&gt;
plot(t,z(2,:),'g') %concentración de D por runge-kutta&lt;br /&gt;
legend('concentración de C por euler','concentración de D por euler','concentración de C por runge-kutta','concentración de D por runge-kutta','Location','best')&lt;br /&gt;
hold off&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:graficoc.jpeg|500px|miniaturadeimagen|center|Reacción compleja]]&lt;br /&gt;
&lt;br /&gt;
Si ahora imponemos que la reacción  &amp;lt;math&amp;gt;C &amp;lt;/math&amp;gt; es más rápida que  &amp;lt;math&amp;gt;D &amp;lt;/math&amp;gt;, obtenemos lo siguiente. Se parece a la gráfica que obtuvimos en el programa anterior, pero  más extendida en el tiempo, más lenta.  &amp;lt;math&amp;gt;C &amp;lt;/math&amp;gt; alcanza una concentración máxima de unos 0.8 molar antes de empezar a decrecer a medida que avanza el tiempo y acercándose a un valor de '''0''' molar.  &amp;lt;math&amp;gt;D &amp;lt;/math&amp;gt; crece más lentamente que en la gráfica anterior, pero se aproxima al mismo valor, '''1''' molar.&lt;br /&gt;
Se observa que aunque hagamos la reacción  &amp;lt;math&amp;gt;C &amp;lt;/math&amp;gt; más rápida, tenemos las mismas concentraciones finales, pero tardan más tiempo en obtenerse, ya que la reacción tarda más en estabilizarse.&lt;br /&gt;
&lt;br /&gt;
&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>Joseva</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Reacciones_complejas_(Grupo_D1)&amp;diff=27129</id>
		<title>Reacciones complejas (Grupo D1)</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Reacciones_complejas_(Grupo_D1)&amp;diff=27129"/>
				<updated>2015-03-05T22:40:21Z</updated>
		
		<summary type="html">&lt;p&gt;Joseva: /* Método de Euler */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{ TrabajoED | Reacciones complejas (Grupo D1) | [[:Categoría:Ecuaciones Diferenciales|Ecuaciones Diferenciales]]|[[:Categoría:ED14/15|Curso 2014-15]] | Rincón Crespo, Kevin&lt;br /&gt;
&lt;br /&gt;
Rodríguez Gómez, Javier&lt;br /&gt;
&lt;br /&gt;
Sans Jiménez, Alejandro&lt;br /&gt;
&lt;br /&gt;
Sesto Muñoz, María Victoria&lt;br /&gt;
&lt;br /&gt;
Vallejo Asín, José Manuel &lt;br /&gt;
&lt;br /&gt;
Villarino Redondo, Álvaro }}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=Introducción=&lt;br /&gt;
Se considera una reacción química irreversible en una solución bien mezclada. Supondremos que la reacción ocurre para un volumen y temperatura constantes. Al inicio se encuentran dos reactivos A y B, que van formando un producto C en lo que se conoce como una reacción bimolecular, es decir, una molécula de A y una de B producen una de C, &lt;br /&gt;
                                                                     &amp;lt;math&amp;gt;A + B → C&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Supondremos también que se satisface la ley de acción de masas, que establece que la velocidad de reacción es proporcional al producto de las concentraciones de los reactivos.&lt;br /&gt;
&lt;br /&gt;
=Concentración del reactivo C a lo largo del tiempo=&lt;br /&gt;
En primer lugar, suponiendo que la reacción es irreversible, es decir, que C no puede volver a formar A y B, se puede expresar la situación mediante el siguiente problema de valor inicial, cuando t&amp;gt;0:&lt;br /&gt;
   &amp;lt;math&amp;gt;&lt;br /&gt;
   \left . &lt;br /&gt;
      \begin{matrix} &lt;br /&gt;
         y'(t)={k_{1}}({a_{0}}-y(t))({b_{0}}-y(t))=0\\&lt;br /&gt;
         y(0)=0&lt;br /&gt;
      \end{matrix}&lt;br /&gt;
   \right \}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Donde &amp;lt;math&amp;gt; {a_{0}}&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;{b_{0}}&amp;lt;/math&amp;gt; representan las concentraciones iniciales de '''A''' y '''B''' respectivamente y &amp;lt;math&amp;gt;{k_{1}}&amp;lt;/math&amp;gt; es la constante de proporcionalidad que indica la ley de acción de masas. &amp;lt;math&amp;gt;y’(t)&amp;lt;/math&amp;gt; representa la velocidad de reacción, es decir, la velocidad con que se forma el producto &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; ; mientras que la solución de la ecuación diferencial, &amp;lt;math&amp;gt;y(t)&amp;lt;/math&amp;gt; , representa la concentración de &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt;, la cantidad de compuesto que se ha formado. Para comprobar que la solución de este problema de Cauchy es única, comenzamos definiendo:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;math&amp;gt;f(t,y)={k_{1}}({a_{0}}-y(t))({b_{0}}-y(t))=0,   t&amp;gt;0 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Observamos que &amp;lt;math&amp;gt;f(t,y)&amp;lt;/math&amp;gt; es continua en el intervalo &amp;lt;math&amp;gt; I=(0,∞)∩B((0,0),r&amp;gt;0)&amp;lt;/math&amp;gt;, por lo que ya aseguramos la existencia de al menos una solución. Examinando la derivada parcial:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\frac{∂f}{∂y}=k_1(-a_0-b_0+2y)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Se deduce que al ser un polinomio no va a haber problemas de continuidad para ninguna bola. De esta forma, podemos asegurar que existe una única solución.&lt;br /&gt;
&lt;br /&gt;
==Concentración del reactivo C a lo largo del tiempo en un proceso reversible==&lt;br /&gt;
&lt;br /&gt;
Ahora bien, ¿qué pasaría si la reacción fuese reversible? Con esto lo que queremos indicar es que además de formarse  &amp;lt;math&amp;gt;C &amp;lt;/math&amp;gt;, este también se descompone de nuevo en  &amp;lt;math&amp;gt;A &amp;lt;/math&amp;gt; y  &amp;lt;math&amp;gt;B &amp;lt;/math&amp;gt;. Por lo tanto, nos quedaría una ecuación diferencial con la siguiente forma, cuando &amp;lt;math&amp;gt;t&amp;gt;0 &amp;lt;/math&amp;gt; :&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; y'(t)={k_{1}}({a_{0}}-y(t))({b_{0}}-y(t))-Cy(t)&amp;lt;/math&amp;gt;  &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Si nos fijamos, la modificación es sencillamente restar  &amp;lt;math&amp;gt;y(t) &amp;lt;/math&amp;gt; multiplicada por una constante, la cual refleja qué porcentaje de  &amp;lt;math&amp;gt;C &amp;lt;/math&amp;gt; se va descomponiendo a medida que se da, simultáneamente, la reacción  &amp;lt;math&amp;gt;A + B → C &amp;lt;/math&amp;gt;. Sin embargo, esta constante no puede tener cualquier valor, ya que en una reacción se cumple la conservación de masa. Por ello, a  &amp;lt;math&amp;gt;C &amp;lt;/math&amp;gt; le asociaremos el siguiente dominio:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;C∈(0,1)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Obsérvese que  &amp;lt;math&amp;gt;C &amp;lt;/math&amp;gt; tiene que ser mayor que 0 para que sea reversible, pero al mismo tiempo inferior que 1, ya que si no se estaría descomponiendo más compuesto  &amp;lt;math&amp;gt;C &amp;lt;/math&amp;gt; del que realmente se ha formado, en otras palabras, estaría apareciendo masa de la nada.&lt;br /&gt;
&lt;br /&gt;
=Método de Euler=&lt;br /&gt;
&lt;br /&gt;
Una vez llegados a este punto, se procede a ver una interpretación gráfica de la reacción. Para ello, se refleja en la gráfica (en un intervalo de 2 segundos), cómo varían las concentraciones tanto de &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt; (&amp;lt;math&amp;gt;a_0&amp;lt;/math&amp;gt;=3 mol/L) y &amp;lt;math&amp;gt;B&amp;lt;/math&amp;gt; (&amp;lt;math&amp;gt;b_0&amp;lt;/math&amp;gt;=1 mol/L) como de &amp;lt;math&amp;gt; C&amp;lt;/math&amp;gt;, para una &amp;lt;math&amp;gt;k_1&amp;lt;/math&amp;gt;=1 mol/s. Se comienza, por el momento, aplicando el método de Euler. Posteriormente se utilizarán métodos más precisos.&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo= &lt;br /&gt;
% Euler&lt;br /&gt;
clear all&lt;br /&gt;
% datos del problema&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=2;&lt;br /&gt;
y0=0;&lt;br /&gt;
h=0.1;&lt;br /&gt;
k1=1;&lt;br /&gt;
a0=3;&lt;br /&gt;
b0=1;&lt;br /&gt;
% Definimos la variable independiente&lt;br /&gt;
t=t0:h:tN;&lt;br /&gt;
% Guardamos los valores de la solución aproximada en el vector &amp;quot;y1&amp;quot; y&lt;br /&gt;
% establecemos los vectores de concentraciones A y B&lt;br /&gt;
y1=zeros(1,length(t)); &lt;br /&gt;
y1(1)=y0;&lt;br /&gt;
a1=zeros(1,length(t));&lt;br /&gt;
a1(1)=a0;&lt;br /&gt;
b1=zeros(1,length(t));&lt;br /&gt;
b1(1)=b0;&lt;br /&gt;
% A continuación, calculamos las componentes de los vectores y1, a y b&lt;br /&gt;
for i=1:length(t)-1&lt;br /&gt;
    y1(i+1)=y1(i)+h*(k1*(a0-y1(i))*(b0-y1(i)));    %Euler&lt;br /&gt;
    a1(i+1)=a0-y1(i+1); % evolución de la concentración de A&lt;br /&gt;
    b1(i+1)=b0-y1(i+1); % evolución de la concentración de B&lt;br /&gt;
end&lt;br /&gt;
%grafico &lt;br /&gt;
figure(1)&lt;br /&gt;
hold on&lt;br /&gt;
plot(t,y1,'g')&lt;br /&gt;
plot(t,a1,'r')&lt;br /&gt;
plot(t,b1,'b')&lt;br /&gt;
legend('concentración de C','concentración de A','concentración de B','location','best')&lt;br /&gt;
hold off &lt;br /&gt;
%en verde se muestra la concentración de C, en rojo la de A, y en azul la de B&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Archivo:3euler.jpeg|500px|miniaturadeimagen|center|Reacción compleja]]&lt;br /&gt;
&lt;br /&gt;
Aunque con observar los resultados ya podemos decir con casi absoluta seguridad cuáles son los límites de las concentraciones de cada reactivo &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;B&amp;lt;/math&amp;gt; y del producto &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt;, se ha diseñado un programa que, mediante diferencia de valores sucesivos de la variable &amp;lt;math&amp;gt;y(t)&amp;lt;/math&amp;gt;, nos devuelve el valor de la función cuando dicha diferencia es muy pequeña '''(se ha puesto una diferencia de 0.001)''', es decir, cuando tenemos una asíntota al tender &amp;lt;math&amp;gt;t→∞&amp;lt;/math&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
%Estudio de las asíntotas&lt;br /&gt;
t1=t0:h:10;%se aumenta la longitud de t, y se estima que se alcanzarán las asíntotas antes de t=10&lt;br /&gt;
y_=zeros(1,length(t1)); %se define un vector y_ idéntico a y1 pero con t hasta 10&lt;br /&gt;
a_=y_;&lt;br /&gt;
b_=y_;&lt;br /&gt;
y_(1)=y0;&lt;br /&gt;
a_(1)=a0;&lt;br /&gt;
b_(1)=b0;&lt;br /&gt;
for i=1:length(t1)-1&lt;br /&gt;
    y_(i+1)=y_(i)+h*(k1*(a0-y_(i))*(b0-y_(i)));&lt;br /&gt;
    diferencia=y_(i+1)-y_(i);&lt;br /&gt;
    if abs(diferencia)&amp;lt;=0.001&lt;br /&gt;
        limiteC=y_(i+1)&lt;br /&gt;
        break&lt;br /&gt;
    end&lt;br /&gt;
end&lt;br /&gt;
for i=1:length(t1)-1&lt;br /&gt;
    y_(i+1)=y_(i)+h*(k1*(a0-y_(i))*(b0-y_(i)));    &lt;br /&gt;
    a_(i+1)=a0-y_(i+1);&lt;br /&gt;
    diferencia2=a_(i+1)-a_(i);&lt;br /&gt;
    if abs(diferencia2)&amp;lt;=0.001&lt;br /&gt;
        limiteA=a_(i+1)&lt;br /&gt;
        break&lt;br /&gt;
    end&lt;br /&gt;
end&lt;br /&gt;
for i=1:length(t1)-1&lt;br /&gt;
    y_(i+1)=y_(i)+h*(k1*(a0-y_(i))*(b0-y_(i)));    &lt;br /&gt;
    b_(i+1)=b0-y_(i+1);&lt;br /&gt;
    diferencia3=b_(i+1)-b_(i);&lt;br /&gt;
    if abs(diferencia3)&amp;lt;=0.001&lt;br /&gt;
        limiteB=b_(i+1)&lt;br /&gt;
        break&lt;br /&gt;
    end&lt;br /&gt;
end&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
Que nos devuelve unos valores de las concentraciones para el límite de:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\lim A=2,0036≈2 mol/L&amp;lt;/math&amp;gt;:     &lt;br /&gt;
&amp;lt;math&amp;gt;\lim B=0,0036≈0mol/L&amp;lt;/math&amp;gt;:         &lt;br /&gt;
&amp;lt;math&amp;gt;\lim C=0,9964≈1mol/L&amp;lt;/math&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
Lo cual es lógico, ya que &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;B&amp;lt;/math&amp;gt; se combinan en una proporción de 1:1, luego &amp;lt;math&amp;gt;B&amp;lt;/math&amp;gt;, que tiene una concentración inicial de &amp;lt;math&amp;gt;b_0&amp;lt;/math&amp;gt;=1, será el reactivo limitante (el que desaparecerá por completo), mientras que &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt;, con &amp;lt;math&amp;gt;a_0&amp;lt;/math&amp;gt;=3, acabará con una concentración molar final igual a 2, y C, del que no habia nada,alcanza una concentraccion de 1mol/L&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
= Método del Trapecio y Método de Runge-Kutta=&lt;br /&gt;
&lt;br /&gt;
A continuación, para obtener con más precisión las representaciones gráficas de las respectivas concentraciones, se opta por utilizar los métodos de los &amp;lt;math&amp;gt;Trapecios&amp;lt;/math&amp;gt; (segundo orden) y de &amp;lt;math&amp;gt;Runge-Kutta&amp;lt;/math&amp;gt; (cuarto orden). Desgraciadamente, no es posible comparar los errores cometidos por cada método con la expresión real de la concentración de C, ya que la ecuación diferencial no es de fácil resolución analítica, luego resulta imposible alcanzar una expresión explícita de la concentración en términos de nuestros datos conocidos; &amp;lt;math&amp;gt;a_0&amp;lt;/math&amp;gt;,&amp;lt;math&amp;gt;b_0&amp;lt;/math&amp;gt;,&amp;lt;math&amp;gt;k_1&amp;lt;/math&amp;gt;,&amp;lt;math&amp;gt;t (tiempo)&amp;lt;/math&amp;gt;.  Sin embargo, podemos confiar con bastante seguridad en el método sobre todo de &amp;lt;math&amp;gt;Runge-Kutta&amp;lt;/math&amp;gt;, debido a su cuarto orden. &lt;br /&gt;
&lt;br /&gt;
Para los trapecios, al ser un método implícito, es necesario despejar la componente &amp;lt;math&amp;gt;y_{n+1}&amp;lt;/math&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;y&amp;lt;sub&amp;gt;(n+1)&amp;lt;/sub&amp;gt;=((1+h/2∙k&amp;lt;sub&amp;gt;1&amp;lt;/sub&amp;gt;∙(a&amp;lt;sub&amp;gt;0&amp;lt;/sub&amp;gt;+b&amp;lt;sub&amp;gt;0&amp;lt;/sub&amp;gt; ) )-√((1+h/2∙k&amp;lt;sub&amp;gt;1&amp;lt;/sub&amp;gt;1∙(a&amp;lt;sub&amp;gt;0&amp;lt;/sub&amp;gt;+b&amp;lt;sub&amp;gt;0&amp;lt;/sub&amp;gt; ) )^2-2∙h∙k_(1∙) (y&amp;lt;sub&amp;gt;n&amp;lt;/sub&amp;gt;+h/2∙k&amp;lt;sub&amp;gt;1&amp;lt;/sub&amp;gt;∙(a&amp;lt;sub&amp;gt;0&amp;lt;/sub&amp;gt;-y&amp;lt;sub&amp;gt;n&amp;lt;/sub&amp;gt; )∙(b&amp;lt;sub&amp;gt;0&amp;lt;/sub&amp;gt;-y&amp;lt;sub&amp;gt;n&amp;lt;/sub&amp;gt; )+[h/2∙k&amp;lt;sub&amp;gt;1&amp;lt;/sub&amp;gt;]∙a&amp;lt;sub&amp;gt;0&amp;lt;/sub&amp;gt;∙b&amp;lt;sub&amp;gt;0&amp;lt;/sub&amp;gt; ) ))/(k&amp;lt;sub&amp;gt;1&amp;lt;/sub&amp;gt;*h)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Cabe destacar que este programa parte de los datos ya establecidos en el programa de Euler para '''t0, tN, y0, a0, b0, k1 y h''':&lt;br /&gt;
{{matlab|codigo= &lt;br /&gt;
%Trapecios&lt;br /&gt;
y2=zeros(1,length(t)); &lt;br /&gt;
a2=y2;&lt;br /&gt;
b2=y2;&lt;br /&gt;
y2(1)=y0;&lt;br /&gt;
a2(1)=a0;&lt;br /&gt;
b2(1)=b0;&lt;br /&gt;
for i=1:length(t)-1&lt;br /&gt;
    y2(i+1)=((1+0.5*h*k1*(a0+b0))-sqrt((1+0.5*h*k1*(a0+b0))^2-2*h*k1*(y2(i)+0.5*h*k1*(a0-y2(i))*(b0-y2(i))+0.5*h*k1*a0*b0)))/(k1*h);&lt;br /&gt;
    a2(i+1)=a0-y2(i+1);&lt;br /&gt;
    b2(i+1)=b0-y2(i+1);&lt;br /&gt;
end&lt;br /&gt;
 &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
%Runge-Kutta&lt;br /&gt;
y3=zeros(1,length(t)); &lt;br /&gt;
a3=y3;&lt;br /&gt;
b3=y3;&lt;br /&gt;
y3(1)=y0;&lt;br /&gt;
a3(1)=a0;&lt;br /&gt;
b3(1)=b0;&lt;br /&gt;
for i=1:length(t)-1 &lt;br /&gt;
    r1=k1*(a0-y3(i))*(b0-y3(i));&lt;br /&gt;
    r2=k1*(a0-y3(i)-0.5*r1*h)*(b0-y3(i)-0.5*r1*h);&lt;br /&gt;
    r3=k1*(a0-y3(i)-0.5*r2*h)*(b0-y3(i)-0.5*r2*h);&lt;br /&gt;
    r4=k1*(a0-y3(i)-r3*h)*(b0-y3(i)-r3*h);&lt;br /&gt;
    y3(i+1)=y3(i)+h/6*(r1+2*r2+2*r3+r4);&lt;br /&gt;
    a3(i+1)=a0-y3(i+1);&lt;br /&gt;
    b3(i+1)=b0-y3(i+1);&lt;br /&gt;
end&lt;br /&gt;
%se pintan las dos, en azul las soluciones de los Trapecios, y en negro las&lt;br /&gt;
%de Runge-Kutta. &lt;br /&gt;
figure(2)&lt;br /&gt;
hold on&lt;br /&gt;
plot(t,y2)&lt;br /&gt;
plot(t,a2)&lt;br /&gt;
plot(t,b2)&lt;br /&gt;
plot(t,y3,'k')&lt;br /&gt;
plot(t,a3,'k')&lt;br /&gt;
plot(t,b3,'k')&lt;br /&gt;
hold off&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
Que proporciona el resultado que se puede observar en la primera gráfica adjunta. Como podemos ver, es prácticamente indistinguible una gráfica de la otra. Sin embargo, si la juntamos con las gráficas proporcionadas por el método de Euler, que se representa ahora en rojo, la diferencia es palpable (ver gráfica 2), lo cual evidencia la peor precisión del método de Euler.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:4trapeciokung.jpeg|500px|miniaturadeimagen|center|Reacción compleja]]&lt;br /&gt;
&lt;br /&gt;
[[Archivo:4comparacion.jpeg|500px|miniaturadeimagen|center|Gráfico 2]]&lt;br /&gt;
&lt;br /&gt;
=Reacción consecutiva=&lt;br /&gt;
&lt;br /&gt;
Consideremos ahora que se produce una reacción consecutiva de la forma: &lt;br /&gt;
&lt;br /&gt;
                                                                   &amp;lt;math&amp;gt;A + B → k_1C → k_2D&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
De tal modo que los reactivos &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;B&amp;lt;/math&amp;gt; se combinan en la proporción 1:1 para formar compuesto &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt;, el cual, a su vez, se va descomponiendo para formar compuesto &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt;. Al igual que se ha hecho antes al analizar las otras reacciones, se considerará que se cumple la ley de acción de masas. Es decir, la velocidad con la que se forma compuesto &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; es proporcional a las concentraciones existentes de &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt; y de &amp;lt;math&amp;gt;B&amp;lt;/math&amp;gt; y del mismo modo la de formación de la sustancia &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; lo es a la concentración de &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; que se ha ido formando.&lt;br /&gt;
&lt;br /&gt;
Esta reacción consecutiva está representada por el siguiente problema de valor inicial:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;&lt;br /&gt;
   \left . &lt;br /&gt;
      \begin{matrix} &lt;br /&gt;
         y'_1(t)={k_{1}}({a_{0}}-y_1(t))({b_{0}}-y_1(t))\\&lt;br /&gt;
         y'_2(t)={k_{2}}(y_1(t)-y_2(t))\\&lt;br /&gt;
y_1(0)=0\\y_2(0)=0&lt;br /&gt;
      \end{matrix}&lt;br /&gt;
   \right \}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
Donde &amp;lt;math&amp;gt;a_0&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;b_0&amp;lt;/math&amp;gt; representan las concentraciones iniciales de &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;B&amp;lt;/math&amp;gt; respectivamente, &amp;lt;math&amp;gt;k_1&amp;lt;/math&amp;gt; es la constante de proporcionalidad que rige la primera reacción y &amp;lt;math&amp;gt;k_2&amp;lt;/math&amp;gt; la que rige la segunda reacción o reacción consecutiva. &amp;lt;math&amp;gt;y_1’(t)&amp;lt;/math&amp;gt; e  &amp;lt;math&amp;gt;y_2’(t)&amp;lt;/math&amp;gt; representan las velocidades de las reacciones, es decir, las velocidades con que se forman los productos &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt;. &amp;lt;math&amp;gt;y_2(t)&amp;lt;/math&amp;gt; representa la concentración del producto &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; pero es importante apreciar que en este caso &amp;lt;math&amp;gt;y_1(t)&amp;lt;/math&amp;gt; no nos da el valor de la concentración de &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; directamente, sino que ésta será &amp;lt;math&amp;gt;y_1(t)&amp;lt;/math&amp;gt;- &amp;lt;math&amp;gt;y_2(t)&amp;lt;/math&amp;gt;, la cantidad que se forma en la primera reacción menos la que se emplea para formar el producto &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; en la segunda.&lt;br /&gt;
&lt;br /&gt;
Este problema se va a resolver para dos casos diferentes. Uno en el cual se considera que la segunda reacción es más rápida que la primera, lo que supone tomar un valor de la constante &amp;lt;math&amp;gt;k_2&amp;lt;/math&amp;gt;  mayor que &amp;lt;math&amp;gt;k_1&amp;lt;/math&amp;gt;. Y otro en el cual se considera que es más lenta, lo que implica que &amp;lt;math&amp;gt;k_2&amp;lt;/math&amp;gt; es menor que &amp;lt;math&amp;gt;k_1&amp;lt;/math&amp;gt;. Concretamente vamos a tomar los siguientes valores para resolver el problema numéricamente; &amp;lt;math&amp;gt;a_0&amp;lt;/math&amp;gt;=3 ,  &amp;lt;math&amp;gt;b_0&amp;lt;/math&amp;gt;=1, &amp;lt;math&amp;gt;k_1&amp;lt;/math&amp;gt;=1,  &amp;lt;math&amp;gt;k_2&amp;lt;/math&amp;gt;=5, &amp;lt;math&amp;gt;k_2&amp;lt;/math&amp;gt;=1/5, .En ambos casos se resuelve para los primeros 10 segundos.&lt;br /&gt;
&lt;br /&gt;
==La reacción D es más rápida que la reacción C==&lt;br /&gt;
CASO    &amp;lt;math&amp;gt;k_1=5  &amp;lt;/math&amp;gt;   '''h=0.1''' &lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
&lt;br /&gt;
%datos&lt;br /&gt;
y0=[0;0];&lt;br /&gt;
z0=[0;0];&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;
%matriz de las soluciones&lt;br /&gt;
y=zeros(2,length(t)); %euler&lt;br /&gt;
y(:,1)=y0;&lt;br /&gt;
 &lt;br /&gt;
z=zeros(2,length(t)); %runge-kutta&lt;br /&gt;
z(:,1)=y0;&lt;br /&gt;
 &lt;br /&gt;
for i=1:length(t)-1&lt;br /&gt;
 %euler&lt;br /&gt;
 y(:,i+1)=y(:,i)+h*[1*(3-y(1,i))*(1-y(1,i)); 5*(y(1,i)-y(2,i))];&lt;br /&gt;
 %runge-kutta&lt;br /&gt;
 K1=[1*(3-z(1,i))*(1-z(1,i)); 5*(z(1,i)-z(2,i))];&lt;br /&gt;
 K2=[1*(3-(z(1,i)+h/2*K1(1)))*(1-(z(1,i)+h/2*K1(1))); 5*((y(1,i)+h/2*K1(2))-(y(2,i)+h/2*K1(2)))];&lt;br /&gt;
 K3=[1*(3-(z(1,i)+h/2*K2(1)))*(1-(z(1,i)+h/2*K2(1))); 5*((y(1,i)+h/2*K2(2))-(y(2,i)+h/2*K2(2)))];&lt;br /&gt;
 K4=[1*(3-(z(1,i)+h*K3(1)))*(1-(z(1,i)+h*K3(1))); 5*((y(1,i)+h*K3(2))-(y(2,i)+h*K3(2)))];&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;
% se calcula la concentración de C=y1t)-y2(t)&lt;br /&gt;
Ay=y(1,:)-y(2,:); %euler&lt;br /&gt;
Az=z(1,:)-z(2,:); %runge-kutta&lt;br /&gt;
 &lt;br /&gt;
figure(1)&lt;br /&gt;
hold on&lt;br /&gt;
plot(t,Ay) %concentración de C por euler&lt;br /&gt;
plot(t,y(2,:),'r') %concentración de D por euler&lt;br /&gt;
plot(t,Az,'k') %concentración de C por runge-kutta&lt;br /&gt;
plot(t,z(2,:),'g') %concentración de D por runge-kutta&lt;br /&gt;
legend('concentración de C por euler','concentración de D por euler','concentración de C por runge-kutta','concentración de D por runge-kutta','Location','best')&lt;br /&gt;
hold off&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:graficoa.jpeg|500px|miniaturadeimagen|center|Reacción compleja]]&lt;br /&gt;
&lt;br /&gt;
Se observa que en en los primeros instantes aumentan las concentraciones de &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; aumentan sus concentraciones. Antes de que pase 1 segundo, la concentración &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; alcanza un máximo (de unos 0.3 molar) y va disminuyendo progresivamente hasta alcanzar un valor de 0 molar. La concentración &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; sigue creciendo hasta llegar a 1 molar. Una vez que tanto &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; como &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; alcanzan estos valores, se estabiliza la reacción. &lt;br /&gt;
&lt;br /&gt;
Como hemos impuesto que la reacción &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; es más rápida que &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt;, se observa que &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; empieza creciendo más rápidamente, pero como reacciona más despacio que &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; su concentración disminuye progresivamente, mientras que la de &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; aumenta.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''CASO'''  &amp;lt;math&amp;gt;k_2=5  &amp;lt;/math&amp;gt;   '''h=0.3''' &lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
&lt;br /&gt;
%datos&lt;br /&gt;
y0=[0;0];&lt;br /&gt;
z0=[0;0];&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=10;&lt;br /&gt;
h=0.3;&lt;br /&gt;
 &lt;br /&gt;
%variable independiente t&lt;br /&gt;
t=t0:h:tN;&lt;br /&gt;
 &lt;br /&gt;
%matriz de las soluciones&lt;br /&gt;
y=zeros(2,length(t)); %euler&lt;br /&gt;
y(:,1)=y0;&lt;br /&gt;
 &lt;br /&gt;
z=zeros(2,length(t)); %runge-kutta&lt;br /&gt;
z(:,1)=y0;&lt;br /&gt;
 &lt;br /&gt;
for i=1:length(t)-1&lt;br /&gt;
 %euler&lt;br /&gt;
 y(:,i+1)=y(:,i)+h*[1*(3-y(1,i))*(1-y(1,i)); 5*(y(1,i)-y(2,i))];&lt;br /&gt;
 %runge-kutta&lt;br /&gt;
 K1=[1*(3-z(1,i))*(1-z(1,i)); 5*(z(1,i)-z(2,i))];&lt;br /&gt;
 K2=[1*(3-(z(1,i)+h/2*K1(1)))*(1-(z(1,i)+h/2*K1(1))); 5*((y(1,i)+h/2*K1(2))-(y(2,i)+h/2*K1(2)))];&lt;br /&gt;
 K3=[1*(3-(z(1,i)+h/2*K2(1)))*(1-(z(1,i)+h/2*K2(1))); 5*((y(1,i)+h/2*K2(2))-(y(2,i)+h/2*K2(2)))];&lt;br /&gt;
 K4=[1*(3-(z(1,i)+h*K3(1)))*(1-(z(1,i)+h*K3(1))); 5*((y(1,i)+h*K3(2))-(y(2,i)+h*K3(2)))];&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;
% se calcula la concentración de C=y1t)-y2(t)&lt;br /&gt;
Ay=y(1,:)-y(2,:); %euler&lt;br /&gt;
Az=z(1,:)-z(2,:); %runge-kutta&lt;br /&gt;
 &lt;br /&gt;
figure(1)&lt;br /&gt;
hold on&lt;br /&gt;
plot(t,Ay) %concentración de C por euler&lt;br /&gt;
plot(t,y(2,:),'r') %concentración de D por euler&lt;br /&gt;
plot(t,Az,'k') %concentración de C por runge-kutta&lt;br /&gt;
plot(t,z(2,:),'g') %concentración de D por runge-kutta&lt;br /&gt;
legend('concentración de C por euler','concentración de D por euler','concentración de C por runge-kutta','concentración de D por runge-kutta','Location','best')&lt;br /&gt;
hold off&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:graficob.jpeg|500px|miniaturadeimagen|center|Reacción compleja]]&lt;br /&gt;
&lt;br /&gt;
Repetimos el programa pero para un tamaño de paso mayor, de '''h=0.3''', y observamos que no  es suficientemente preciso, sobre todo al principio, no se puede analizar bien lo que está pasando en la reacción.&lt;br /&gt;
&lt;br /&gt;
==La reacción D es más lenta que la reacción C==&lt;br /&gt;
&lt;br /&gt;
CASO  &amp;lt;math&amp;gt;k_1 &amp;lt;/math&amp;gt;=1,   &amp;lt;math&amp;gt;k_2 &amp;lt;/math&amp;gt;=1/5&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
&lt;br /&gt;
%datos&lt;br /&gt;
y0=[0;0];&lt;br /&gt;
z0=[0;0];&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;
%matriz de las soluciones&lt;br /&gt;
y=zeros(2,length(t)); %euler&lt;br /&gt;
y(:,1)=y0;&lt;br /&gt;
 &lt;br /&gt;
z=zeros(2,length(t)); %runge-kutta&lt;br /&gt;
z(:,1)=y0;&lt;br /&gt;
 &lt;br /&gt;
for i=1:length(t)-1&lt;br /&gt;
 %euler&lt;br /&gt;
 y(:,i+1)=y(:,i)+h*[1*(3-y(1,i))*(1-y(1,i)); 1/5*(y(1,i)-y(2,i))];&lt;br /&gt;
 %runge-kutta&lt;br /&gt;
 K1=[1*(3-z(1,i))*(1-z(1,i)); 1/5*(z(1,i)-z(2,i))];&lt;br /&gt;
 K2=[1*(3-(z(1,i)+h/2*K1(1)))*(1-(z(1,i)+h/2*K1(1))); 1/5*((y(1,i)+h/2*K1(2))-(y(2,i)+h/2*K1(2)))];&lt;br /&gt;
 K3=[1*(3-(z(1,i)+h/2*K2(1)))*(1-(z(1,i)+h/2*K2(1))); 1/5*((y(1,i)+h/2*K2(2))-(y(2,i)+h/2*K2(2)))];&lt;br /&gt;
 K4=[1*(3-(z(1,i)+h*K3(1)))*(1-(z(1,i)+h*K3(1))); 1/5*((y(1,i)+h*K3(2))-(y(2,i)+h*K3(2)))];&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;
% se calcula la concentración de C=y1t)-y2(t)&lt;br /&gt;
Ay=y(1,:)-y(2,:); %euler&lt;br /&gt;
Az=z(1,:)-z(2,:); %runge-kutta&lt;br /&gt;
 &lt;br /&gt;
figure(1)&lt;br /&gt;
hold on&lt;br /&gt;
plot(t,Ay) %concentración de C por euler&lt;br /&gt;
plot(t,y(2,:),'r') %concentración de D por euler&lt;br /&gt;
plot(t,Az,'k') %concentración de C por runge-kutta&lt;br /&gt;
plot(t,z(2,:),'g') %concentración de D por runge-kutta&lt;br /&gt;
legend('concentración de C por euler','concentración de D por euler','concentración de C por runge-kutta','concentración de D por runge-kutta','Location','best')&lt;br /&gt;
hold off&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:graficoc.jpeg|500px|miniaturadeimagen|center|Reacción compleja]]&lt;br /&gt;
&lt;br /&gt;
Si ahora imponemos que la reacción  &amp;lt;math&amp;gt;C &amp;lt;/math&amp;gt; es más rápida que  &amp;lt;math&amp;gt;D &amp;lt;/math&amp;gt;, obtenemos lo siguiente. Se parece a la gráfica que obtuvimos en el programa anterior, pero  más extendida en el tiempo, más lenta.  &amp;lt;math&amp;gt;C &amp;lt;/math&amp;gt; alcanza una concentración máxima de unos 0.8 molar antes de empezar a decrecer a medida que avanza el tiempo y acercándose a un valor de '''0''' molar.  &amp;lt;math&amp;gt;D &amp;lt;/math&amp;gt; crece más lentamente que en la gráfica anterior, pero se aproxima al mismo valor, '''1''' molar.&lt;br /&gt;
Se observa que aunque hagamos la reacción  &amp;lt;math&amp;gt;C &amp;lt;/math&amp;gt; más rápida, tenemos las mismas concentraciones finales, pero tardan más tiempo en obtenerse, ya que la reacción tarda más en estabilizarse.&lt;br /&gt;
&lt;br /&gt;
&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>Joseva</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Reacciones_complejas_(Grupo_D1)&amp;diff=27127</id>
		<title>Reacciones complejas (Grupo D1)</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Reacciones_complejas_(Grupo_D1)&amp;diff=27127"/>
				<updated>2015-03-05T22:38:28Z</updated>
		
		<summary type="html">&lt;p&gt;Joseva: /* La reacción D es más rápida que la reacción C */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{ TrabajoED | Reacciones complejas (Grupo D1) | [[:Categoría:Ecuaciones Diferenciales|Ecuaciones Diferenciales]]|[[:Categoría:ED14/15|Curso 2014-15]] | Rincón Crespo, Kevin&lt;br /&gt;
&lt;br /&gt;
Rodríguez Gómez, Javier&lt;br /&gt;
&lt;br /&gt;
Sans Jiménez, Alejandro&lt;br /&gt;
&lt;br /&gt;
Sesto Muñoz, María Victoria&lt;br /&gt;
&lt;br /&gt;
Vallejo Asín, José Manuel &lt;br /&gt;
&lt;br /&gt;
Villarino Redondo, Álvaro }}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=Introducción=&lt;br /&gt;
Se considera una reacción química irreversible en una solución bien mezclada. Supondremos que la reacción ocurre para un volumen y temperatura constantes. Al inicio se encuentran dos reactivos A y B, que van formando un producto C en lo que se conoce como una reacción bimolecular, es decir, una molécula de A y una de B producen una de C, &lt;br /&gt;
                                                                     &amp;lt;math&amp;gt;A + B → C&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Supondremos también que se satisface la ley de acción de masas, que establece que la velocidad de reacción es proporcional al producto de las concentraciones de los reactivos.&lt;br /&gt;
&lt;br /&gt;
=Concentración del reactivo C a lo largo del tiempo=&lt;br /&gt;
En primer lugar, suponiendo que la reacción es irreversible, es decir, que C no puede volver a formar A y B, se puede expresar la situación mediante el siguiente problema de valor inicial, cuando t&amp;gt;0:&lt;br /&gt;
   &amp;lt;math&amp;gt;&lt;br /&gt;
   \left . &lt;br /&gt;
      \begin{matrix} &lt;br /&gt;
         y'(t)={k_{1}}({a_{0}}-y(t))({b_{0}}-y(t))=0\\&lt;br /&gt;
         y(0)=0&lt;br /&gt;
      \end{matrix}&lt;br /&gt;
   \right \}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Donde &amp;lt;math&amp;gt; {a_{0}}&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;{b_{0}}&amp;lt;/math&amp;gt; representan las concentraciones iniciales de '''A''' y '''B''' respectivamente y &amp;lt;math&amp;gt;{k_{1}}&amp;lt;/math&amp;gt; es la constante de proporcionalidad que indica la ley de acción de masas. &amp;lt;math&amp;gt;y’(t)&amp;lt;/math&amp;gt; representa la velocidad de reacción, es decir, la velocidad con que se forma el producto &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; ; mientras que la solución de la ecuación diferencial, &amp;lt;math&amp;gt;y(t)&amp;lt;/math&amp;gt; , representa la concentración de &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt;, la cantidad de compuesto que se ha formado. Para comprobar que la solución de este problema de Cauchy es única, comenzamos definiendo:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;math&amp;gt;f(t,y)={k_{1}}({a_{0}}-y(t))({b_{0}}-y(t))=0,   t&amp;gt;0 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Observamos que &amp;lt;math&amp;gt;f(t,y)&amp;lt;/math&amp;gt; es continua en el intervalo &amp;lt;math&amp;gt; I=(0,∞)∩B((0,0),r&amp;gt;0)&amp;lt;/math&amp;gt;, por lo que ya aseguramos la existencia de al menos una solución. Examinando la derivada parcial:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\frac{∂f}{∂y}=k_1(-a_0-b_0+2y)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Se deduce que al ser un polinomio no va a haber problemas de continuidad para ninguna bola. De esta forma, podemos asegurar que existe una única solución.&lt;br /&gt;
&lt;br /&gt;
==Concentración del reactivo C a lo largo del tiempo en un proceso reversible==&lt;br /&gt;
&lt;br /&gt;
Ahora bien, ¿qué pasaría si la reacción fuese reversible? Con esto lo que queremos indicar es que además de formarse  &amp;lt;math&amp;gt;C &amp;lt;/math&amp;gt;, este también se descompone de nuevo en  &amp;lt;math&amp;gt;A &amp;lt;/math&amp;gt; y  &amp;lt;math&amp;gt;B &amp;lt;/math&amp;gt;. Por lo tanto, nos quedaría una ecuación diferencial con la siguiente forma, cuando &amp;lt;math&amp;gt;t&amp;gt;0 &amp;lt;/math&amp;gt; :&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; y'(t)={k_{1}}({a_{0}}-y(t))({b_{0}}-y(t))-Cy(t)&amp;lt;/math&amp;gt;  &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Si nos fijamos, la modificación es sencillamente restar  &amp;lt;math&amp;gt;y(t) &amp;lt;/math&amp;gt; multiplicada por una constante, la cual refleja qué porcentaje de  &amp;lt;math&amp;gt;C &amp;lt;/math&amp;gt; se va descomponiendo a medida que se da, simultáneamente, la reacción  &amp;lt;math&amp;gt;A + B → C &amp;lt;/math&amp;gt;. Sin embargo, esta constante no puede tener cualquier valor, ya que en una reacción se cumple la conservación de masa. Por ello, a  &amp;lt;math&amp;gt;C &amp;lt;/math&amp;gt; le asociaremos el siguiente dominio:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;C∈(0,1)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Obsérvese que  &amp;lt;math&amp;gt;C &amp;lt;/math&amp;gt; tiene que ser mayor que 0 para que sea reversible, pero al mismo tiempo inferior que 1, ya que si no se estaría descomponiendo más compuesto  &amp;lt;math&amp;gt;C &amp;lt;/math&amp;gt; del que realmente se ha formado, en otras palabras, estaría apareciendo masa de la nada.&lt;br /&gt;
&lt;br /&gt;
=Método de Euler=&lt;br /&gt;
&lt;br /&gt;
Una vez llegados a este punto, se procede a ver una interpretación gráfica de la reacción. Para ello, se refleja en la gráfica (en un intervalo de 2 segundos), cómo varían las concentraciones tanto de &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt; (&amp;lt;math&amp;gt;a_0&amp;lt;/math&amp;gt;=3 mol/L) y &amp;lt;math&amp;gt;B&amp;lt;/math&amp;gt; (&amp;lt;math&amp;gt;b_0&amp;lt;/math&amp;gt;=1 mol/L) como de &amp;lt;math&amp;gt; C&amp;lt;/math&amp;gt;, para una &amp;lt;math&amp;gt;k_1&amp;lt;/math&amp;gt;=1 mol/s. Se comienza, por el momento, aplicando el método de Euler. Posteriormente se utilizarán métodos más precisos.&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo= &lt;br /&gt;
% Euler&lt;br /&gt;
clear all&lt;br /&gt;
% datos del problema&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=2;&lt;br /&gt;
y0=0;&lt;br /&gt;
h=0.1;&lt;br /&gt;
k1=1;&lt;br /&gt;
a0=3;&lt;br /&gt;
b0=1;&lt;br /&gt;
% Definimos la variable independiente&lt;br /&gt;
t=t0:h:tN;&lt;br /&gt;
% Guardamos los valores de la solución aproximada en el vector &amp;quot;y1&amp;quot; y&lt;br /&gt;
% establecemos los vectores de concentraciones A y B&lt;br /&gt;
y1=zeros(1,length(t)); &lt;br /&gt;
y1(1)=y0;&lt;br /&gt;
a1=zeros(1,length(t));&lt;br /&gt;
a1(1)=a0;&lt;br /&gt;
b1=zeros(1,length(t));&lt;br /&gt;
b1(1)=b0;&lt;br /&gt;
% A continuación, calculamos las componentes de los vectores y1, a y b&lt;br /&gt;
for i=1:length(t)-1&lt;br /&gt;
    y1(i+1)=y1(i)+h*(k1*(a0-y1(i))*(b0-y1(i)));    %Euler&lt;br /&gt;
    a1(i+1)=a0-y1(i+1); % evolución de la concentración de A&lt;br /&gt;
    b1(i+1)=b0-y1(i+1); % evolución de la concentración de B&lt;br /&gt;
end&lt;br /&gt;
%grafico &lt;br /&gt;
figure(1)&lt;br /&gt;
hold on&lt;br /&gt;
plot(t,y1,'g')&lt;br /&gt;
plot(t,a1,'r')&lt;br /&gt;
plot(t,b1,'b')&lt;br /&gt;
legend('concentración de C','concentración de A','concentración de B','location','best')&lt;br /&gt;
hold off &lt;br /&gt;
%en verde se muestra la concentración de C, en rojo la de A, y en azul la de B&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Archivo:3euler.jpeg|500px|miniaturadeimagen|center|Reacción compleja]]&lt;br /&gt;
&lt;br /&gt;
Aunque con observar los resultados ya podemos decir con casi absoluta seguridad cuáles son los límites de las concentraciones de cada reactivo &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;B&amp;lt;/math&amp;gt; y del producto &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt;, se ha diseñado un programa que, mediante diferencia de valores sucesivos de la variable &amp;lt;math&amp;gt;y(t)&amp;lt;/math&amp;gt;, nos devuelve el valor de la función cuando dicha diferencia es muy pequeña '''(se ha puesto una diferencia de 0.001)''', es decir, cuando tenemos una asíntota al tender &amp;lt;math&amp;gt;t→∞&amp;lt;/math&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
%Estudio de las asíntotas&lt;br /&gt;
t1=t0:h:10;%se aumenta la longitud de t, y se estima que se alcanzarán las asíntotas antes de t=10&lt;br /&gt;
y_=zeros(1,length(t1)); %se define un vector y_ idéntico a y1 pero con t hasta 10&lt;br /&gt;
a_=y_;&lt;br /&gt;
b_=y_;&lt;br /&gt;
y_(1)=y0;&lt;br /&gt;
a_(1)=a0;&lt;br /&gt;
b_(1)=b0;&lt;br /&gt;
for i=1:length(t1)-1&lt;br /&gt;
    y_(i+1)=y_(i)+h*(k1*(a0-y_(i))*(b0-y_(i)));&lt;br /&gt;
    diferencia=y_(i+1)-y_(i);&lt;br /&gt;
    if abs(diferencia)&amp;lt;=0.001&lt;br /&gt;
        limiteC=y_(i+1)&lt;br /&gt;
        break&lt;br /&gt;
    end&lt;br /&gt;
end&lt;br /&gt;
for i=1:length(t1)-1&lt;br /&gt;
    y_(i+1)=y_(i)+h*(k1*(a0-y_(i))*(b0-y_(i)));    &lt;br /&gt;
    a_(i+1)=a0-y_(i+1);&lt;br /&gt;
    diferencia2=a_(i+1)-a_(i);&lt;br /&gt;
    if abs(diferencia2)&amp;lt;=0.001&lt;br /&gt;
        limiteA=a_(i+1)&lt;br /&gt;
        break&lt;br /&gt;
    end&lt;br /&gt;
end&lt;br /&gt;
for i=1:length(t1)-1&lt;br /&gt;
    y_(i+1)=y_(i)+h*(k1*(a0-y_(i))*(b0-y_(i)));    &lt;br /&gt;
    b_(i+1)=b0-y_(i+1);&lt;br /&gt;
    diferencia3=b_(i+1)-b_(i);&lt;br /&gt;
    if abs(diferencia3)&amp;lt;=0.001&lt;br /&gt;
        limiteB=b_(i+1)&lt;br /&gt;
        break&lt;br /&gt;
    end&lt;br /&gt;
end&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
Que nos devuelve unos valores de las concentraciones para el límite de:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\lim A=2,0036≈2 mol/L&amp;lt;/math&amp;gt;:     &lt;br /&gt;
&amp;lt;math&amp;gt;\lim B=0,0036≈0mol/L&amp;lt;/math&amp;gt;:         &lt;br /&gt;
&amp;lt;math&amp;gt;\lim C=0,9964≈1mol/L&amp;lt;/math&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
Lo cual es lógico, ya que &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;B&amp;lt;/math&amp;gt; se combinan en una proporción de 1:1, luego &amp;lt;math&amp;gt;B&amp;lt;/math&amp;gt;, que tiene una concentración inicial de &amp;lt;math&amp;gt;b_0&amp;lt;/math&amp;gt;=1, será el reactivo limitante (el que desaparecerá por completo), mientras que &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt;, con &amp;lt;math&amp;gt;a_0&amp;lt;/math&amp;gt;=3, acabará con una concentración molar final igual a 2.&lt;br /&gt;
&lt;br /&gt;
= Método del Trapecio y Método de Runge-Kutta=&lt;br /&gt;
&lt;br /&gt;
A continuación, para obtener con más precisión las representaciones gráficas de las respectivas concentraciones, se opta por utilizar los métodos de los &amp;lt;math&amp;gt;Trapecios&amp;lt;/math&amp;gt; (segundo orden) y de &amp;lt;math&amp;gt;Runge-Kutta&amp;lt;/math&amp;gt; (cuarto orden). Desgraciadamente, no es posible comparar los errores cometidos por cada método con la expresión real de la concentración de C, ya que la ecuación diferencial no es de fácil resolución analítica, luego resulta imposible alcanzar una expresión explícita de la concentración en términos de nuestros datos conocidos; &amp;lt;math&amp;gt;a_0&amp;lt;/math&amp;gt;,&amp;lt;math&amp;gt;b_0&amp;lt;/math&amp;gt;,&amp;lt;math&amp;gt;k_1&amp;lt;/math&amp;gt;,&amp;lt;math&amp;gt;t (tiempo)&amp;lt;/math&amp;gt;.  Sin embargo, podemos confiar con bastante seguridad en el método sobre todo de &amp;lt;math&amp;gt;Runge-Kutta&amp;lt;/math&amp;gt;, debido a su cuarto orden. &lt;br /&gt;
&lt;br /&gt;
Para los trapecios, al ser un método implícito, es necesario despejar la componente &amp;lt;math&amp;gt;y_{n+1}&amp;lt;/math&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;y&amp;lt;sub&amp;gt;(n+1)&amp;lt;/sub&amp;gt;=((1+h/2∙k&amp;lt;sub&amp;gt;1&amp;lt;/sub&amp;gt;∙(a&amp;lt;sub&amp;gt;0&amp;lt;/sub&amp;gt;+b&amp;lt;sub&amp;gt;0&amp;lt;/sub&amp;gt; ) )-√((1+h/2∙k&amp;lt;sub&amp;gt;1&amp;lt;/sub&amp;gt;1∙(a&amp;lt;sub&amp;gt;0&amp;lt;/sub&amp;gt;+b&amp;lt;sub&amp;gt;0&amp;lt;/sub&amp;gt; ) )^2-2∙h∙k_(1∙) (y&amp;lt;sub&amp;gt;n&amp;lt;/sub&amp;gt;+h/2∙k&amp;lt;sub&amp;gt;1&amp;lt;/sub&amp;gt;∙(a&amp;lt;sub&amp;gt;0&amp;lt;/sub&amp;gt;-y&amp;lt;sub&amp;gt;n&amp;lt;/sub&amp;gt; )∙(b&amp;lt;sub&amp;gt;0&amp;lt;/sub&amp;gt;-y&amp;lt;sub&amp;gt;n&amp;lt;/sub&amp;gt; )+[h/2∙k&amp;lt;sub&amp;gt;1&amp;lt;/sub&amp;gt;]∙a&amp;lt;sub&amp;gt;0&amp;lt;/sub&amp;gt;∙b&amp;lt;sub&amp;gt;0&amp;lt;/sub&amp;gt; ) ))/(k&amp;lt;sub&amp;gt;1&amp;lt;/sub&amp;gt;*h)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Cabe destacar que este programa parte de los datos ya establecidos en el programa de Euler para '''t0, tN, y0, a0, b0, k1 y h''':&lt;br /&gt;
{{matlab|codigo= &lt;br /&gt;
%Trapecios&lt;br /&gt;
y2=zeros(1,length(t)); &lt;br /&gt;
a2=y2;&lt;br /&gt;
b2=y2;&lt;br /&gt;
y2(1)=y0;&lt;br /&gt;
a2(1)=a0;&lt;br /&gt;
b2(1)=b0;&lt;br /&gt;
for i=1:length(t)-1&lt;br /&gt;
    y2(i+1)=((1+0.5*h*k1*(a0+b0))-sqrt((1+0.5*h*k1*(a0+b0))^2-2*h*k1*(y2(i)+0.5*h*k1*(a0-y2(i))*(b0-y2(i))+0.5*h*k1*a0*b0)))/(k1*h);&lt;br /&gt;
    a2(i+1)=a0-y2(i+1);&lt;br /&gt;
    b2(i+1)=b0-y2(i+1);&lt;br /&gt;
end&lt;br /&gt;
 &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
%Runge-Kutta&lt;br /&gt;
y3=zeros(1,length(t)); &lt;br /&gt;
a3=y3;&lt;br /&gt;
b3=y3;&lt;br /&gt;
y3(1)=y0;&lt;br /&gt;
a3(1)=a0;&lt;br /&gt;
b3(1)=b0;&lt;br /&gt;
for i=1:length(t)-1 &lt;br /&gt;
    r1=k1*(a0-y3(i))*(b0-y3(i));&lt;br /&gt;
    r2=k1*(a0-y3(i)-0.5*r1*h)*(b0-y3(i)-0.5*r1*h);&lt;br /&gt;
    r3=k1*(a0-y3(i)-0.5*r2*h)*(b0-y3(i)-0.5*r2*h);&lt;br /&gt;
    r4=k1*(a0-y3(i)-r3*h)*(b0-y3(i)-r3*h);&lt;br /&gt;
    y3(i+1)=y3(i)+h/6*(r1+2*r2+2*r3+r4);&lt;br /&gt;
    a3(i+1)=a0-y3(i+1);&lt;br /&gt;
    b3(i+1)=b0-y3(i+1);&lt;br /&gt;
end&lt;br /&gt;
%se pintan las dos, en azul las soluciones de los Trapecios, y en negro las&lt;br /&gt;
%de Runge-Kutta. &lt;br /&gt;
figure(2)&lt;br /&gt;
hold on&lt;br /&gt;
plot(t,y2)&lt;br /&gt;
plot(t,a2)&lt;br /&gt;
plot(t,b2)&lt;br /&gt;
plot(t,y3,'k')&lt;br /&gt;
plot(t,a3,'k')&lt;br /&gt;
plot(t,b3,'k')&lt;br /&gt;
hold off&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
Que proporciona el resultado que se puede observar en la primera gráfica adjunta. Como podemos ver, es prácticamente indistinguible una gráfica de la otra. Sin embargo, si la juntamos con las gráficas proporcionadas por el método de Euler, que se representa ahora en rojo, la diferencia es palpable (ver gráfica 2), lo cual evidencia la peor precisión del método de Euler.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:4trapeciokung.jpeg|500px|miniaturadeimagen|center|Reacción compleja]]&lt;br /&gt;
&lt;br /&gt;
[[Archivo:4comparacion.jpeg|500px|miniaturadeimagen|center|Gráfico 2]]&lt;br /&gt;
&lt;br /&gt;
=Reacción consecutiva=&lt;br /&gt;
&lt;br /&gt;
Consideremos ahora que se produce una reacción consecutiva de la forma: &lt;br /&gt;
&lt;br /&gt;
                                                                   &amp;lt;math&amp;gt;A + B → k_1C → k_2D&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
De tal modo que los reactivos &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;B&amp;lt;/math&amp;gt; se combinan en la proporción 1:1 para formar compuesto &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt;, el cual, a su vez, se va descomponiendo para formar compuesto &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt;. Al igual que se ha hecho antes al analizar las otras reacciones, se considerará que se cumple la ley de acción de masas. Es decir, la velocidad con la que se forma compuesto &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; es proporcional a las concentraciones existentes de &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt; y de &amp;lt;math&amp;gt;B&amp;lt;/math&amp;gt; y del mismo modo la de formación de la sustancia &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; lo es a la concentración de &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; que se ha ido formando.&lt;br /&gt;
&lt;br /&gt;
Esta reacción consecutiva está representada por el siguiente problema de valor inicial:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;&lt;br /&gt;
   \left . &lt;br /&gt;
      \begin{matrix} &lt;br /&gt;
         y'_1(t)={k_{1}}({a_{0}}-y_1(t))({b_{0}}-y_1(t))\\&lt;br /&gt;
         y'_2(t)={k_{2}}(y_1(t)-y_2(t))\\&lt;br /&gt;
y_1(0)=0\\y_2(0)=0&lt;br /&gt;
      \end{matrix}&lt;br /&gt;
   \right \}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
Donde &amp;lt;math&amp;gt;a_0&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;b_0&amp;lt;/math&amp;gt; representan las concentraciones iniciales de &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;B&amp;lt;/math&amp;gt; respectivamente, &amp;lt;math&amp;gt;k_1&amp;lt;/math&amp;gt; es la constante de proporcionalidad que rige la primera reacción y &amp;lt;math&amp;gt;k_2&amp;lt;/math&amp;gt; la que rige la segunda reacción o reacción consecutiva. &amp;lt;math&amp;gt;y_1’(t)&amp;lt;/math&amp;gt; e  &amp;lt;math&amp;gt;y_2’(t)&amp;lt;/math&amp;gt; representan las velocidades de las reacciones, es decir, las velocidades con que se forman los productos &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt;. &amp;lt;math&amp;gt;y_2(t)&amp;lt;/math&amp;gt; representa la concentración del producto &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; pero es importante apreciar que en este caso &amp;lt;math&amp;gt;y_1(t)&amp;lt;/math&amp;gt; no nos da el valor de la concentración de &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; directamente, sino que ésta será &amp;lt;math&amp;gt;y_1(t)&amp;lt;/math&amp;gt;- &amp;lt;math&amp;gt;y_2(t)&amp;lt;/math&amp;gt;, la cantidad que se forma en la primera reacción menos la que se emplea para formar el producto &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; en la segunda.&lt;br /&gt;
&lt;br /&gt;
Este problema se va a resolver para dos casos diferentes. Uno en el cual se considera que la segunda reacción es más rápida que la primera, lo que supone tomar un valor de la constante &amp;lt;math&amp;gt;k_2&amp;lt;/math&amp;gt;  mayor que &amp;lt;math&amp;gt;k_1&amp;lt;/math&amp;gt;. Y otro en el cual se considera que es más lenta, lo que implica que &amp;lt;math&amp;gt;k_2&amp;lt;/math&amp;gt; es menor que &amp;lt;math&amp;gt;k_1&amp;lt;/math&amp;gt;. Concretamente vamos a tomar los siguientes valores para resolver el problema numéricamente; &amp;lt;math&amp;gt;a_0&amp;lt;/math&amp;gt;=3 ,  &amp;lt;math&amp;gt;b_0&amp;lt;/math&amp;gt;=1, &amp;lt;math&amp;gt;k_1&amp;lt;/math&amp;gt;=1,  &amp;lt;math&amp;gt;k_2&amp;lt;/math&amp;gt;=5, &amp;lt;math&amp;gt;k_2&amp;lt;/math&amp;gt;=1/5, .En ambos casos se resuelve para los primeros 10 segundos.&lt;br /&gt;
&lt;br /&gt;
==La reacción D es más rápida que la reacción C==&lt;br /&gt;
CASO    &amp;lt;math&amp;gt;k_1=5  &amp;lt;/math&amp;gt;   '''h=0.1''' &lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
&lt;br /&gt;
%datos&lt;br /&gt;
y0=[0;0];&lt;br /&gt;
z0=[0;0];&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;
%matriz de las soluciones&lt;br /&gt;
y=zeros(2,length(t)); %euler&lt;br /&gt;
y(:,1)=y0;&lt;br /&gt;
 &lt;br /&gt;
z=zeros(2,length(t)); %runge-kutta&lt;br /&gt;
z(:,1)=y0;&lt;br /&gt;
 &lt;br /&gt;
for i=1:length(t)-1&lt;br /&gt;
 %euler&lt;br /&gt;
 y(:,i+1)=y(:,i)+h*[1*(3-y(1,i))*(1-y(1,i)); 5*(y(1,i)-y(2,i))];&lt;br /&gt;
 %runge-kutta&lt;br /&gt;
 K1=[1*(3-z(1,i))*(1-z(1,i)); 5*(z(1,i)-z(2,i))];&lt;br /&gt;
 K2=[1*(3-(z(1,i)+h/2*K1(1)))*(1-(z(1,i)+h/2*K1(1))); 5*((y(1,i)+h/2*K1(2))-(y(2,i)+h/2*K1(2)))];&lt;br /&gt;
 K3=[1*(3-(z(1,i)+h/2*K2(1)))*(1-(z(1,i)+h/2*K2(1))); 5*((y(1,i)+h/2*K2(2))-(y(2,i)+h/2*K2(2)))];&lt;br /&gt;
 K4=[1*(3-(z(1,i)+h*K3(1)))*(1-(z(1,i)+h*K3(1))); 5*((y(1,i)+h*K3(2))-(y(2,i)+h*K3(2)))];&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;
% se calcula la concentración de C=y1t)-y2(t)&lt;br /&gt;
Ay=y(1,:)-y(2,:); %euler&lt;br /&gt;
Az=z(1,:)-z(2,:); %runge-kutta&lt;br /&gt;
 &lt;br /&gt;
figure(1)&lt;br /&gt;
hold on&lt;br /&gt;
plot(t,Ay) %concentración de C por euler&lt;br /&gt;
plot(t,y(2,:),'r') %concentración de D por euler&lt;br /&gt;
plot(t,Az,'k') %concentración de C por runge-kutta&lt;br /&gt;
plot(t,z(2,:),'g') %concentración de D por runge-kutta&lt;br /&gt;
legend('concentración de C por euler','concentración de D por euler','concentración de C por runge-kutta','concentración de D por runge-kutta','Location','best')&lt;br /&gt;
hold off&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:graficoa.jpeg|500px|miniaturadeimagen|center|Reacción compleja]]&lt;br /&gt;
&lt;br /&gt;
Se observa que en en los primeros instantes aumentan las concentraciones de &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; aumentan sus concentraciones. Antes de que pase 1 segundo, la concentración &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; alcanza un máximo (de unos 0.3 molar) y va disminuyendo progresivamente hasta alcanzar un valor de 0 molar. La concentración &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; sigue creciendo hasta llegar a 1 molar. Una vez que tanto &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; como &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; alcanzan estos valores, se estabiliza la reacción. &lt;br /&gt;
&lt;br /&gt;
Como hemos impuesto que la reacción &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; es más rápida que &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt;, se observa que &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; empieza creciendo más rápidamente, pero como reacciona más despacio que &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; su concentración disminuye progresivamente, mientras que la de &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; aumenta.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''CASO'''  &amp;lt;math&amp;gt;k_2=5  &amp;lt;/math&amp;gt;   '''h=0.3''' &lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
&lt;br /&gt;
%datos&lt;br /&gt;
y0=[0;0];&lt;br /&gt;
z0=[0;0];&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=10;&lt;br /&gt;
h=0.3;&lt;br /&gt;
 &lt;br /&gt;
%variable independiente t&lt;br /&gt;
t=t0:h:tN;&lt;br /&gt;
 &lt;br /&gt;
%matriz de las soluciones&lt;br /&gt;
y=zeros(2,length(t)); %euler&lt;br /&gt;
y(:,1)=y0;&lt;br /&gt;
 &lt;br /&gt;
z=zeros(2,length(t)); %runge-kutta&lt;br /&gt;
z(:,1)=y0;&lt;br /&gt;
 &lt;br /&gt;
for i=1:length(t)-1&lt;br /&gt;
 %euler&lt;br /&gt;
 y(:,i+1)=y(:,i)+h*[1*(3-y(1,i))*(1-y(1,i)); 5*(y(1,i)-y(2,i))];&lt;br /&gt;
 %runge-kutta&lt;br /&gt;
 K1=[1*(3-z(1,i))*(1-z(1,i)); 5*(z(1,i)-z(2,i))];&lt;br /&gt;
 K2=[1*(3-(z(1,i)+h/2*K1(1)))*(1-(z(1,i)+h/2*K1(1))); 5*((y(1,i)+h/2*K1(2))-(y(2,i)+h/2*K1(2)))];&lt;br /&gt;
 K3=[1*(3-(z(1,i)+h/2*K2(1)))*(1-(z(1,i)+h/2*K2(1))); 5*((y(1,i)+h/2*K2(2))-(y(2,i)+h/2*K2(2)))];&lt;br /&gt;
 K4=[1*(3-(z(1,i)+h*K3(1)))*(1-(z(1,i)+h*K3(1))); 5*((y(1,i)+h*K3(2))-(y(2,i)+h*K3(2)))];&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;
% se calcula la concentración de C=y1t)-y2(t)&lt;br /&gt;
Ay=y(1,:)-y(2,:); %euler&lt;br /&gt;
Az=z(1,:)-z(2,:); %runge-kutta&lt;br /&gt;
 &lt;br /&gt;
figure(1)&lt;br /&gt;
hold on&lt;br /&gt;
plot(t,Ay) %concentración de C por euler&lt;br /&gt;
plot(t,y(2,:),'r') %concentración de D por euler&lt;br /&gt;
plot(t,Az,'k') %concentración de C por runge-kutta&lt;br /&gt;
plot(t,z(2,:),'g') %concentración de D por runge-kutta&lt;br /&gt;
legend('concentración de C por euler','concentración de D por euler','concentración de C por runge-kutta','concentración de D por runge-kutta','Location','best')&lt;br /&gt;
hold off&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:graficob.jpeg|500px|miniaturadeimagen|center|Reacción compleja]]&lt;br /&gt;
&lt;br /&gt;
Repetimos el programa pero para un tamaño de paso mayor, de '''h=0.3''', y observamos que no  es suficientemente preciso, sobre todo al principio, no se puede analizar bien lo que está pasando en la reacción.&lt;br /&gt;
&lt;br /&gt;
==La reacción D es más lenta que la reacción C==&lt;br /&gt;
&lt;br /&gt;
CASO  &amp;lt;math&amp;gt;k_1 &amp;lt;/math&amp;gt;=1,   &amp;lt;math&amp;gt;k_2 &amp;lt;/math&amp;gt;=1/5&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
&lt;br /&gt;
%datos&lt;br /&gt;
y0=[0;0];&lt;br /&gt;
z0=[0;0];&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;
%matriz de las soluciones&lt;br /&gt;
y=zeros(2,length(t)); %euler&lt;br /&gt;
y(:,1)=y0;&lt;br /&gt;
 &lt;br /&gt;
z=zeros(2,length(t)); %runge-kutta&lt;br /&gt;
z(:,1)=y0;&lt;br /&gt;
 &lt;br /&gt;
for i=1:length(t)-1&lt;br /&gt;
 %euler&lt;br /&gt;
 y(:,i+1)=y(:,i)+h*[1*(3-y(1,i))*(1-y(1,i)); 1/5*(y(1,i)-y(2,i))];&lt;br /&gt;
 %runge-kutta&lt;br /&gt;
 K1=[1*(3-z(1,i))*(1-z(1,i)); 1/5*(z(1,i)-z(2,i))];&lt;br /&gt;
 K2=[1*(3-(z(1,i)+h/2*K1(1)))*(1-(z(1,i)+h/2*K1(1))); 1/5*((y(1,i)+h/2*K1(2))-(y(2,i)+h/2*K1(2)))];&lt;br /&gt;
 K3=[1*(3-(z(1,i)+h/2*K2(1)))*(1-(z(1,i)+h/2*K2(1))); 1/5*((y(1,i)+h/2*K2(2))-(y(2,i)+h/2*K2(2)))];&lt;br /&gt;
 K4=[1*(3-(z(1,i)+h*K3(1)))*(1-(z(1,i)+h*K3(1))); 1/5*((y(1,i)+h*K3(2))-(y(2,i)+h*K3(2)))];&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;
% se calcula la concentración de C=y1t)-y2(t)&lt;br /&gt;
Ay=y(1,:)-y(2,:); %euler&lt;br /&gt;
Az=z(1,:)-z(2,:); %runge-kutta&lt;br /&gt;
 &lt;br /&gt;
figure(1)&lt;br /&gt;
hold on&lt;br /&gt;
plot(t,Ay) %concentración de C por euler&lt;br /&gt;
plot(t,y(2,:),'r') %concentración de D por euler&lt;br /&gt;
plot(t,Az,'k') %concentración de C por runge-kutta&lt;br /&gt;
plot(t,z(2,:),'g') %concentración de D por runge-kutta&lt;br /&gt;
legend('concentración de C por euler','concentración de D por euler','concentración de C por runge-kutta','concentración de D por runge-kutta','Location','best')&lt;br /&gt;
hold off&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:graficoc.jpeg|500px|miniaturadeimagen|center|Reacción compleja]]&lt;br /&gt;
&lt;br /&gt;
Si ahora imponemos que la reacción  &amp;lt;math&amp;gt;C &amp;lt;/math&amp;gt; es más rápida que  &amp;lt;math&amp;gt;D &amp;lt;/math&amp;gt;, obtenemos lo siguiente. Se parece a la gráfica que obtuvimos en el programa anterior, pero  más extendida en el tiempo, más lenta.  &amp;lt;math&amp;gt;C &amp;lt;/math&amp;gt; alcanza una concentración máxima de unos 0.8 molar antes de empezar a decrecer a medida que avanza el tiempo y acercándose a un valor de '''0''' molar.  &amp;lt;math&amp;gt;D &amp;lt;/math&amp;gt; crece más lentamente que en la gráfica anterior, pero se aproxima al mismo valor, '''1''' molar.&lt;br /&gt;
Se observa que aunque hagamos la reacción  &amp;lt;math&amp;gt;C &amp;lt;/math&amp;gt; más rápida, tenemos las mismas concentraciones finales, pero tardan más tiempo en obtenerse, ya que la reacción tarda más en estabilizarse.&lt;br /&gt;
&lt;br /&gt;
&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>Joseva</name></author>	</entry>

	</feed>