<?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=Karlo+Andr%C3%A9</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=Karlo+Andr%C3%A9"/>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/wiki/Especial:Contribuciones/Karlo_Andr%C3%A9"/>
		<updated>2026-04-28T22:02:57Z</updated>
		<subtitle>Contribuciones del usuario</subtitle>
		<generator>MediaWiki 1.26.2</generator>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Difusi%C3%B3n_de_una_sustancia_contaminante_(Grupo_10)&amp;diff=13021</id>
		<title>Difusión de una sustancia contaminante (Grupo 10)</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Difusi%C3%B3n_de_una_sustancia_contaminante_(Grupo_10)&amp;diff=13021"/>
				<updated>2014-05-19T19:46:38Z</updated>
		
		<summary type="html">&lt;p&gt;Karlo André: /* Resolución por el método de Fourier */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;''''''Texto en negrita''''''[[Archivo:nuriat.png|200px|thumb|right|Tubo con sustancia contaminante]]&lt;br /&gt;
La difusión implica un movimiento espontáneo y desordenado de moléculas individuales y, especialmente, nos interesa la difusión de moléculas de una sustancia disuelta en otra.&lt;br /&gt;
&lt;br /&gt;
La difusión de una sustancia puede considerarse análoga al flujo de calor, y la ley de Fick establece que el ritmo de difusión por unidad de superficie, en dirección perpendicular a ésta, es proporcional al gradiente de la concentración de esa sustancia en esa dirección. La concentración es la masa de la sustancia por unidad de volumen, y el gradiente de concentración es la variación de concentración por unidad de distancia.&lt;br /&gt;
&lt;br /&gt;
Para determinar como se distribuye la concentración de una sustancia contaminante tomaremos como ejemplo un tubo largo compuesto por dos sustancias de las cuáles una de ellas es contaminante.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
= Simplificación del problema =&lt;br /&gt;
&lt;br /&gt;
Para que este problema resulte más sencillo aplicaremos una serie de condiciones, facilitando el cálculo del mismo.&lt;br /&gt;
&lt;br /&gt;
En primer lugar denotaremos su concentración &amp;lt;math&amp;gt; u &amp;lt;/math&amp;gt;, concentración de contaminante en cada posición del tubo y constante en cada sección, medida en &amp;lt;math&amp;gt; \frac{mol}{m^2*s} &amp;lt;/math&amp;gt;. &lt;br /&gt;
&lt;br /&gt;
Supondremos que el tubo mide L=5 m, ocupando el intervalo &amp;lt;math&amp;gt; x \in (0,L) &amp;lt;/math&amp;gt;, y que la concentración es la misma en cualquier punto de la sección transversal del tubo. Por tanto, la concentración dependerá unicamente de dos variables &amp;lt;math&amp;gt; u = u(x,t) &amp;lt;/math&amp;gt;. En los extremos se ha colocado un aislante que hace que el flujo de contaminante al exterior del tubo sea nulo. Además, consideraremos la simplificación de que se trata de un tubo aislado por sus laterales, pero abierto por las bases del cilindro.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Ley de conservación de masa ==&lt;br /&gt;
&lt;br /&gt;
Tras una serie de experimentos realizados por Lavoisier, se pusieron de manifiesto que si tenemos en cuenta todas las sustancias que forman parte en una reacción química y todos los productos formados, nunca varía la masa. Esta ley exige que no haya una generación espontánea de materia. Es decir, en la región del espacio estudiada, no existe entrada o salida por un punto cualquiera (frontera o interior), la masa en esta región se mantiene constante. Esta es la ley de la conservación de la masa, que podemos enunciarla, pues, de la siguiente manera: &amp;lt;br /&amp;gt;&lt;br /&gt;
''&amp;quot;En toda reacción química la masa se conserva, esto es, la masa total de los reactivos es igual a la masa total de los productos&amp;quot;'' &amp;lt;br /&amp;gt;&lt;br /&gt;
La ley de conservación de masas exige que no haya una generación espontánea de materia. Es decir, en la región del espacio estudiada, no existe entrada o salida por un punto cualquiera (frontera o interior), la masa en esta región se mantiene constante.&lt;br /&gt;
&lt;br /&gt;
Esta suposición, en términos de variación de masa, puede quedar determinada como:&lt;br /&gt;
&lt;br /&gt;
''Variación de la masa en el tiempo = flujo de masa a través de la frontera por unidad de tiempo + flujo de masa generada en el interior por unidad de tiempo. ''&lt;br /&gt;
&lt;br /&gt;
== Ley de Fick ==&lt;br /&gt;
Se trata de una ley cuantitativa en forma diferencial que describe la difusión de materia o energía en un medio en el que inicialmente existe equilibrio químico o físico. Esta ley se trata de una generalización de los fenómenos descritos por la '''Ley de Fourier''', ya que esta es una consideración concreta del calor.&lt;br /&gt;
&lt;br /&gt;
La ley de Fick anuncia que en el caso de existir diferencias de concentración en cualquier especie, el paso de estas especies se llevará a cabo desde las regiones con mayor concentración a las de menor. Formulado matemáticamente:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;F(x,t)=-D\frac{\partial u}{\partial x}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Donde &amp;lt;math&amp;gt;F&amp;lt;/math&amp;gt; es el flujo de la sustancia y &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; el coeficiente de difusión, que representa la facilidad en que un soluto particular se mueve por un disolvente determinado.&lt;br /&gt;
&lt;br /&gt;
La ley de Fick establece que el flujo de difusión del contaminante es proporcional a la variación de concentración:&lt;br /&gt;
&amp;lt;math&amp;gt; F(x,t)=-D\frac{\partial u}{\partial x} &amp;lt;/math&amp;gt;&lt;br /&gt;
donde D es el coeficiente de difusión (medido en &amp;lt;math&amp;gt; \frac{m^2}{s} &amp;lt;/math&amp;gt;), que depende de las propiedades físicas de los compuestos, y que se supone constante D=1.&lt;br /&gt;
&lt;br /&gt;
= Modelización de la ecuación diferencial =&lt;br /&gt;
&lt;br /&gt;
Aplicando el principio de conservación de la masa y la ley de Fourier, definimos la variable &amp;lt;math&amp;gt; u(x,t)&amp;lt;/math&amp;gt; en unidades de sustancia por área, es decir, concentración por superficie del tubo.&lt;br /&gt;
&lt;br /&gt;
Consideramos &amp;lt;math&amp;gt; A &amp;lt;/math&amp;gt; como variable superficie, y tomamos un pequeño trozo, definido por &amp;lt;math&amp;gt;\Delta x&amp;lt;/math&amp;gt;. Entonces, para obtener la variación de la masa en el tiempo:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; A u(x,t) \Delta x &amp;lt;/math&amp;gt; &lt;br /&gt;
&lt;br /&gt;
Y derivando en el tiempo:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; A u_t(x,t) \Delta x &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
obtenemos el primer término de la igualdad anteriormente enunciada.&lt;br /&gt;
&lt;br /&gt;
En el segundo, consideramos nulo el flujo de masa en los puntos interiores por unidad de tiempo, pues suponemos la tubería perfecta y sin sumideros.&lt;br /&gt;
&lt;br /&gt;
Como la superﬁcie lateral del tubo está aislada, solamente habrá flujo de sustancia en la dirección del eje &amp;lt;math&amp;gt;x&amp;lt;/math&amp;gt;. Si &amp;lt;math&amp;gt;F(x,t)&amp;gt; 0&amp;lt;/math&amp;gt; pensamos que el ﬂujo va hacia la derecha, si &amp;lt;math&amp;gt;F(x,t)&amp;lt; 0&amp;lt;/math&amp;gt;, este va a hacia la izquierda. El ﬂujo de&lt;br /&gt;
calor en un intervalo &amp;lt;math&amp;gt;[x, x + ∆x ] &amp;lt;/math&amp;gt; viene dado dado por:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;F(x,t)A-F(x+\Delta x, t)A&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Con lo que queda &amp;lt;math&amp;gt;A u_t(x,t) \Delta x = F(x,t)A-F(x+\Delta x, t)A&amp;lt;/math&amp;gt;, y al dividir &amp;lt;math&amp;gt;A \Delta x&amp;lt;/math&amp;gt;, nos queda &amp;lt;math&amp;gt;u_t(x,t)= \frac {F(x,t)-F(x+\Delta x, t)}{\Delta x}&amp;lt;/math&amp;gt;. &amp;lt;br /&amp;gt;&lt;br /&gt;
Como &amp;lt;math&amp;gt;\Delta x \rightarrow 0 &amp;lt;/math&amp;gt;, &amp;lt;math&amp;gt;u_t(x,t)= -F_x(x,t)&amp;lt;/math&amp;gt;, y aplicando ley de Fick, &amp;lt;math&amp;gt;u_t(x,t)=-\frac{\partial }{\partial x}(-D u_x(x,t)) = D u_xx(x,t) &amp;lt;/math&amp;gt;.&amp;lt;br /&amp;gt;&lt;br /&gt;
Con lo que resulta una ecuación en derivadas parciales que determina la concentración de sustancia:&lt;br /&gt;
&amp;lt;math&amp;gt;u_t(x,t)- D u_xx(x,t)= 0 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Planteamiento del problema bien propuesto ==&lt;br /&gt;
&lt;br /&gt;
Suponemos que el flujo será nula al haber una tapa en los extremos del tubo, con lo que el problema bien propuesto quedaría::&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\begin{cases}&lt;br /&gt;
u_t(x,t)- D u_{xx}(x,t)= 0 ; x\in (0,5) \\&lt;br /&gt;
u(x,0)=u_0 , x\in (0,5) \\&lt;br /&gt;
u_x(0,t)=0 , u_x(5,t)=0 ; t\geq 0&lt;br /&gt;
\end{cases}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= Resolución numérica =&lt;br /&gt;
Para la resolución de ésta ecuación necesitaremos mínimo tres condiciones, dos de las cuales serán de contorno, y la otra será la condición inicial.Si suponemos &amp;lt;math&amp;gt;u_0(x,0)&amp;lt;/math&amp;gt;, entonces:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; u_0(x,0)=\begin{cases}&lt;br /&gt;
0,  si x\leq 3\\&lt;br /&gt;
3,  si x&amp;gt;3&lt;br /&gt;
\end{cases}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Resolución por el método de las diferencias finitas ==&lt;br /&gt;
En el primer caso particular que estudiaremos, trataremos de obtener una resolución numérica del problema anteriormente planteado, dónde tenemos las fronteras aisladas y las concentraciones iniciales conocidas:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\begin{cases}&lt;br /&gt;
u_t(x,t)- D u_{xx}(x,t)= 0; x\in (0,5), t\geq 0 \\&lt;br /&gt;
u_0(x,0), x\in (0,5) \\&lt;br /&gt;
u_x(0,t)=0, u_x(5,t)=0, t\geq 0&lt;br /&gt;
\end{cases}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
La resolución por el método de las diferencias finitas se basa en expresar el problema continuo a un sistema discreto de ecuaciones diferenciales de primer orden. Particularizando para nuestro caso con las condiciones dadas, el problema planteado sería:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\begin{cases}&lt;br /&gt;
u'_n(t)+\frac{-u_{n-1}(t)+2u_n(t)+u_{n+1}(t)}{h^2} \\&lt;br /&gt;
\frac{u_1(t)-u_-1(t)}{2h} \rightarrow u_1(t)=u_-1(t) \\&lt;br /&gt;
\frac{u_{N+1}(t)-u_{N-1}(t)}{2h} \rightarrow u_{N+1}(t)=u_{N-1}\\&lt;br /&gt;
u_n(0)=u^0(x)&lt;br /&gt;
\end{cases}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Por lo que tenemos un sistema de la forma:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\begin{cases}&lt;br /&gt;
U'(t)+KU(t)=F(t)=0\\&lt;br /&gt;
U(0)=U^0&lt;br /&gt;
\end{cases}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Con &amp;lt;math&amp;gt;N+1&amp;lt;/math&amp;gt; ecuaciones.&lt;br /&gt;
==== Resolución por método del trapecio ====&lt;br /&gt;
Suponiendo que en el instante inicial se verifica  :&amp;lt;math&amp;gt;&lt;br /&gt;
u(x,0)=\left\{\begin{matrix}\\0, x≤3\\3, x&amp;gt;3\end{matrix}\right.&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Si tomamos &amp;lt;math&amp;gt;\triangle t= \triangle x/4&amp;lt;/math&amp;gt; en &amp;lt;math&amp;gt;t\in\ [0,5]&amp;lt;/math&amp;gt;, con &amp;lt;math&amp;gt;\triangle x=0.1&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
El código en MATLAB del método sería:&lt;br /&gt;
&lt;br /&gt;
{{matlab| codigo=&lt;br /&gt;
%Datos&lt;br /&gt;
L=5; %Longitud de varilla&lt;br /&gt;
T=5; %tiempo final&lt;br /&gt;
q=1;&lt;br /&gt;
%Discretización temporal y espacial&lt;br /&gt;
dx=0.1; % Paso en espacio&lt;br /&gt;
N=L/dx; %Número de subintervalos&lt;br /&gt;
x=0:dx:L; % Vector de espacio&lt;br /&gt;
dt=dx/4; % Paso en tiempo&lt;br /&gt;
t=0:dt:T; % Vector de tiempos&lt;br /&gt;
% Matriz de coeficientes. Aproximacion de -q*u_xx&lt;br /&gt;
K=2*diag(ones(1,N+1))-diag(ones(1,N),1)-diag(ones(1,N),-1);&lt;br /&gt;
K(1,2)=-2;&lt;br /&gt;
K(N+1,N)=-2;&lt;br /&gt;
K=q*K/dx^2;&lt;br /&gt;
% Calculamos u0 condición inicial&lt;br /&gt;
u0=[zeros(1,1+N*3/5),3*ones(1,N*2/5)]';&lt;br /&gt;
% F=0 (no la consideramos)&lt;br /&gt;
sol(1,:)=u0'; % Guardamos la solucion&lt;br /&gt;
U=u0; % Inicializacion&lt;br /&gt;
% Calculamos U_n -&amp;gt; U_n+1&lt;br /&gt;
%Aplicamos método trapecio método del trapecio&lt;br /&gt;
for j=1:length(t)-1&lt;br /&gt;
U=(eye(N+1)+(dt*K)/2)\((eye(N+1)-(K*dt)/2)*U);&lt;br /&gt;
sol(j+1,:)= U'; % Guardamos solucion&lt;br /&gt;
end&lt;br /&gt;
%Dibujamos la solucion&lt;br /&gt;
[xx,tt]=meshgrid(x,t);&lt;br /&gt;
surf(xx,tt,sol);&lt;br /&gt;
}}&lt;br /&gt;
[[Archivo:nur.jpg|500px|thumb|centro|Gráfica concentración / espacio-tiempo. Resolución por el método del trapecio.]]&lt;br /&gt;
&lt;br /&gt;
==== Resolución por método de Euler explícito ====&lt;br /&gt;
{{matlab| codigo=&lt;br /&gt;
%Datos&lt;br /&gt;
L=5; %Longitud de varilla&lt;br /&gt;
T=5; %tiempo final&lt;br /&gt;
q=1;&lt;br /&gt;
%Discretización temporal y espacial&lt;br /&gt;
dx=0.1; % Paso en espacio&lt;br /&gt;
N=L/dx; %Número de subintervalos&lt;br /&gt;
x=0:dx:L; % Vector de espacio&lt;br /&gt;
dt=dx/20; % Paso en tiempo&lt;br /&gt;
t=0:dt:T; % Vector de tiempos&lt;br /&gt;
% Matriz de coeficientes. Aproximacion de -q*u_xx&lt;br /&gt;
K=2*diag(ones(1,N+1))-diag(ones(1,N),1)-diag(ones(1,N),-1);&lt;br /&gt;
K(1,2)=-2;&lt;br /&gt;
K(N+1,N)=-2;&lt;br /&gt;
K=q*K/dx^2;&lt;br /&gt;
% Calculamos u0 condición inicial&lt;br /&gt;
u0=[zeros(1,1+N*3/5),3*ones(1,N*2/5)]';&lt;br /&gt;
% F=0 (no la consideramos)&lt;br /&gt;
sol(1,:)=u0'; % Guardamos la solucion&lt;br /&gt;
U=u0; % Inicializacion&lt;br /&gt;
% Calculamos U_n -&amp;gt; U_n+1&lt;br /&gt;
%Aplicamos método Euler explícito&lt;br /&gt;
for j=1:length(t)-1 &lt;br /&gt;
k1=-K*U; % Calculamos k1=h*f(tn,yn)&lt;br /&gt;
k2=-K*(U+dt*k1); % Calculamos k2=h*f(tn+h/2,yn+1/2*k1)&lt;br /&gt;
% Meto los datos en el vector&lt;br /&gt;
U=U+(dt/2)*(k1+k2);&lt;br /&gt;
sol(j+1,:)= U'; % Guardamos solucion&lt;br /&gt;
end&lt;br /&gt;
%Dibujamos la solucion&lt;br /&gt;
[xx,tt]=meshgrid(x,t);&lt;br /&gt;
surf(xx,tt,sol);&lt;br /&gt;
}}&lt;br /&gt;
[[Archivo:mig.jpg|500px|thumb|centro|Gráfica concentración / espacio-tiempo. Resolución por el método de Euler explícito.]]&lt;br /&gt;
&lt;br /&gt;
==== Resolución por método de Euler implícito ====&lt;br /&gt;
{{matlab| codigo=&lt;br /&gt;
%Datos&lt;br /&gt;
L=5; %Longitud de varilla&lt;br /&gt;
T=5;&lt;br /&gt;
q=1;&lt;br /&gt;
%Discretización temporal y espacial&lt;br /&gt;
dx=0.1; % Paso en espacio&lt;br /&gt;
N=L/dx; %Número de subintervalos&lt;br /&gt;
h=L/N;&lt;br /&gt;
x=0:h:L; % Vector de espacio&lt;br /&gt;
dt=h/20; % Paso en tiempo&lt;br /&gt;
t=0:dt:T; % Vector de tiempos&lt;br /&gt;
% Matriz de coeficientes. Aproximacion de -q*u_xx&lt;br /&gt;
K=2*diag(ones(1,N+1))-diag(ones(1,N),1)-diag(ones(1,N),-1);&lt;br /&gt;
K(1,2)=-2;&lt;br /&gt;
K(N+1,N)=-2;&lt;br /&gt;
K=q*K/h^2;&lt;br /&gt;
% Calculamos u0 condición inicial&lt;br /&gt;
u0=[zeros(1,1+N*3/5),3*ones(1,N*2/5)]';&lt;br /&gt;
% F=0 (no la consideramos)&lt;br /&gt;
sol(1,:)=u0'; % Guardamos la solucion&lt;br /&gt;
U=u0; % Inicializacion&lt;br /&gt;
% Calculamos U_n -&amp;gt; U_n+1&lt;br /&gt;
% Aplicamos método implícito&lt;br /&gt;
for j=1:length(t)-1 &lt;br /&gt;
U=U-dt*K*U; &lt;br /&gt;
sol(j+1,:)= U'; % Guardamos solucion&lt;br /&gt;
end&lt;br /&gt;
%Dibujamos la solucion&lt;br /&gt;
[xx,tt]=meshgrid(x,t);&lt;br /&gt;
surf(xx,tt,sol);&lt;br /&gt;
}}&lt;br /&gt;
[[Archivo:migap.jpg|500px|thumb|centro|Gráfica concentración / espacio-tiempo. Resolución por el método de Euler implícito.]]&lt;br /&gt;
&lt;br /&gt;
==== Resolución por método de Euler modificado ====&lt;br /&gt;
{{matlab| codigo=&lt;br /&gt;
%Datos&lt;br /&gt;
L=5; %Longitud de varilla&lt;br /&gt;
T=5;&lt;br /&gt;
q=1;&lt;br /&gt;
%Discretización temporal y espacial&lt;br /&gt;
dx=0.1; % Paso en espacio&lt;br /&gt;
N=L/dx; %Número de subintervalos&lt;br /&gt;
h=L/N;&lt;br /&gt;
x=0:h:L; % Vector de espacio&lt;br /&gt;
dt=h/20; % Paso en tiempo&lt;br /&gt;
t=0:dt:T; % Vector de tiempos&lt;br /&gt;
% Matriz de coeficientes. Aproximacion de -q*u_xx&lt;br /&gt;
K=2*diag(ones(1,N+1))-diag(ones(1,N),1)-diag(ones(1,N),-1);&lt;br /&gt;
K(1,2)=-2;&lt;br /&gt;
K(N+1,N)=-2;&lt;br /&gt;
K=q*K/h^2;&lt;br /&gt;
% Calculamos u0 condición inicial&lt;br /&gt;
u0=[zeros(1,1+N*3/5),3*ones(1,N*2/5)]';&lt;br /&gt;
% F=0 (no la consideramos)&lt;br /&gt;
sol(1,:)=u0'; % Guardamos la solucion&lt;br /&gt;
U=u0; % Inicializacion&lt;br /&gt;
% Calculamos U_n -&amp;gt; U_n+1&lt;br /&gt;
for j=1:length(t)-1 &lt;br /&gt;
k1=-K*U; % Calculamos k1=h*f(tn,yn)&lt;br /&gt;
k2=-K*(U+dt*k1); % Calculamos k2=h*f(tn+h/2,yn+1/2*k1)&lt;br /&gt;
% Meto los datos en el vector&lt;br /&gt;
U=U+(dt/2)*(k1+k2);&lt;br /&gt;
sol(j+1,:)= U'; % Guardamos solucion&lt;br /&gt;
end&lt;br /&gt;
%Dibujamos la solucion&lt;br /&gt;
[xx,tt]=meshgrid(x,t);&lt;br /&gt;
surf(xx,tt,sol);&lt;br /&gt;
}}&lt;br /&gt;
[[Archivo: mig.jpg|500px|thumb|centro|Gráfica concentración / espacio-tiempo. Resolución por el método de Euler modificado.]]&lt;br /&gt;
&lt;br /&gt;
== Conservación de la masa total de contaminante ==&lt;br /&gt;
A continuación demostraremos que la masa total de contaminante en el tubo se conserva a lo largo del tiempo, que se puede deducir a partir de la ecuación sin tener que resolverla. Integramos la ecuación y debido a las condiciones de frontera:&lt;br /&gt;
&amp;lt;math&amp;gt;\frac d {dt} \int_0^5 u(x,t)\,dx= \int_0^5 u_{xx}(x,t)\,dx= u_x(x,t)|_0^5=0&amp;lt;/math&amp;gt;&lt;br /&gt;
{{matlab| codigo=&lt;br /&gt;
%Datos&lt;br /&gt;
L=5; %Longitud de varilla&lt;br /&gt;
T=5;&lt;br /&gt;
q=1;&lt;br /&gt;
%Discretización temporal y espacial&lt;br /&gt;
N=500; %Número de subintervalos&lt;br /&gt;
h=L/N;&lt;br /&gt;
x=0:h:L; % Vector de espacio&lt;br /&gt;
dt=h/4; % Paso en tiempo&lt;br /&gt;
t=0:dt:T; % Vector de tiempos&lt;br /&gt;
% Matriz de coeficientes. Aproximacion de -q*u_xx&lt;br /&gt;
K=2*diag(ones(1,N+1))-diag(ones(1,N),1)-diag(ones(1,N),-1);&lt;br /&gt;
K(1,2)=-2;&lt;br /&gt;
K(N+1,N)=-2;&lt;br /&gt;
K=q*K/h^2;&lt;br /&gt;
% Calculamos u0 condición inicial&lt;br /&gt;
u0=[zeros(1,1+N*3/5),3*ones(1,N*2/5)]';&lt;br /&gt;
% F=0 (no la consideramos)&lt;br /&gt;
sol(1,:)=u0'; % Guardamos la solucion&lt;br /&gt;
U=u0; % Inicializacion&lt;br /&gt;
% Calculamos U_n -&amp;gt; U_n+1&lt;br /&gt;
for j=1:length(t)-1 &lt;br /&gt;
U=(eye(N+1)+dt*K)\(U+dt*F); &lt;br /&gt;
sol(j+1,:)= U'; % Guardamos solucion&lt;br /&gt;
end&lt;br /&gt;
% Calculamos el area de la funcion en cada tiempo (area = cantidad de contaminante)&lt;br /&gt;
areas=zeros(1,length(t));&lt;br /&gt;
for i=1:length(t)&lt;br /&gt;
f=sol(i,:);&lt;br /&gt;
w=trapz(x,f);&lt;br /&gt;
area(i)=w;&lt;br /&gt;
end&lt;br /&gt;
%Dibujamos&lt;br /&gt;
plot(t,area)&lt;br /&gt;
xlabel('Tiempo')&lt;br /&gt;
ylabel('Cantidad de contaminante')&lt;br /&gt;
}}&lt;br /&gt;
[[Archivo:aleeex.jpg|500px|thumb|centro|Conservación masa total de contaminante]]&lt;br /&gt;
[[Archivo:gime.jpg|500px|thumb|centro|Conservación masa total de contaminante]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Concentración a lo largo del tiempo==&lt;br /&gt;
La concentración de la sustancia contaminante en la varilla varía con el tiempo, pero en un cierto momento esta concentración se va homogeneizando, y deja de variar, entrando en un estado estacionario::&lt;br /&gt;
&amp;lt;math&amp;gt; u_t(x,t)- D*u_{xx}(x,t)=0 &amp;lt;/math&amp;gt; :    &lt;br /&gt;
&amp;lt;math&amp;gt; u_t(x,t)=0 \rightarrow D*u_{xx}(x,t)=0 &amp;lt;/math&amp;gt; :&lt;br /&gt;
&amp;lt;math&amp;gt; u=c_1*x+c_2 &amp;lt;/math&amp;gt; &lt;br /&gt;
Utizando Matlab comprobaremos que &amp;lt;math&amp;gt; c_1=0 &amp;lt;/math&amp;gt; &amp;lt;math&amp;gt; c_2=1.17 &amp;lt;/math&amp;gt;&lt;br /&gt;
Para tiempos grandes la concentración se estabiliza en torno a 1.17 en toda la varilla, de forma que la solución se asemejará a una función lineal constante.&lt;br /&gt;
&lt;br /&gt;
{{matlab| codigo=&lt;br /&gt;
%Datos&lt;br /&gt;
L=5; %Longitud de varilla&lt;br /&gt;
T=50;&lt;br /&gt;
q=1;&lt;br /&gt;
%Discretización temporal y espacial&lt;br /&gt;
dx=0.1; % Paso en espacio&lt;br /&gt;
N=L/dx; %Número de subintervalos&lt;br /&gt;
h=L/N;&lt;br /&gt;
x=0:h:L; % Vector de espacio&lt;br /&gt;
dt=h/4; % Paso en tiempo&lt;br /&gt;
t=0:dt:T; % Vector de tiempos&lt;br /&gt;
% Matriz de coeficientes. Aproximacion de -q*u_xx&lt;br /&gt;
K=2*diag(ones(1,N+1))-diag(ones(1,N),1)-diag(ones(1,N),-1);&lt;br /&gt;
K(1,2)=-2;&lt;br /&gt;
K(N+1,N)=-2;&lt;br /&gt;
K=q*K/h^2;&lt;br /&gt;
% Calculamos u0 condición inicial&lt;br /&gt;
u0=[zeros(1,1+N*3/5),3*ones(1,N*2/5)]';&lt;br /&gt;
% F=0 (no la consideramos)&lt;br /&gt;
sol(1,:)=u0'; % Guardamos la solucion&lt;br /&gt;
U=u0; % Inicializacion&lt;br /&gt;
% Calculamos U_n -&amp;gt; U_n+1&lt;br /&gt;
%Aplicamos método trapecio método del trapecio&lt;br /&gt;
for j=1:length(t)-1&lt;br /&gt;
U=(eye(N+1)+(dt*K)/2)\((eye(N+1)-(K*dt)/2)*U);&lt;br /&gt;
sol(j+1,:)= U'; % Guardamos solucion&lt;br /&gt;
end&lt;br /&gt;
%Solución estacionaria&lt;br /&gt;
a=sol(length(t),:);&lt;br /&gt;
b=sol(1,:);&lt;br /&gt;
c=sol((length(t)-1)/50+1,:);&lt;br /&gt;
d=sol((length(t)-1)*2/50+1,:);&lt;br /&gt;
e=sol((length(t)-1)*10/50+1,:);&lt;br /&gt;
hold on&lt;br /&gt;
plot(x,a,'xk','linewidth',2);&lt;br /&gt;
plot(x,b,'-m','linewidth',1);&lt;br /&gt;
plot(x,c,'-g','linewidth',1);&lt;br /&gt;
plot(x,d,'-y','linewidth',1);&lt;br /&gt;
plot(x,e,'-b','linewidth',1);&lt;br /&gt;
legend('u(50s)','u(0s)','u(1s)','u(2s)','u(10s)');&lt;br /&gt;
xlabel('Posición en la varilla')&lt;br /&gt;
ylabel('Concentracion')&lt;br /&gt;
hold off&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Soluciones(t).jpg|500px|thumb|centro|Soluciones a lo largo del tiempo]]&lt;br /&gt;
&lt;br /&gt;
La distancia entre la solución estacionaria y las soluciones para los siguientes instantes: 0s, 1s, 2s y 10s; se puede apreciar en la imagen anterior. &lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
Una vez analizado los datos, se demuestra que la sustancia contaminante se estabiliza en t=9.98s, con un error del 5%.&lt;br /&gt;
&lt;br /&gt;
En el caso de que consideremos Δx'=Δx/10,el tiempo en el que se estabiliza la cantidad de sustancia contaminante será t=10s, dato que será más preciso debido a que el paso realizado en el programa es menor.&lt;br /&gt;
&lt;br /&gt;
==Nueva condición de frontera==&lt;br /&gt;
&lt;br /&gt;
Si colocamos un limpiador, que elimina la sustancia contaminante, en el extremo izquierdo de la varilla, varían las condiciones de contorno del problema. En este caso, en el extremo izquierdo, la condición inicial será de tipo Dirichlet ya que se esta variación esta provocada por un mecanismo físico externo que actúa sobre el extremo. &amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;math&amp;gt;\begin{cases}&lt;br /&gt;
u_t(x,t)- D u_{xx}(x,t)= 0 ; x\in (0,5) \\&lt;br /&gt;
u(x,0)=u_0 , x\in (0,5) \\&lt;br /&gt;
u(0,t)=0 , u_x(5,t)=0 ; t\geq 0&lt;br /&gt;
\end{cases}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Dadas las nuevas condiciones, resolvemos el problema por el método de diferencias finitas con la ayuda de Matlab.&lt;br /&gt;
&lt;br /&gt;
{{matlab| codigo=&lt;br /&gt;
%Datos&lt;br /&gt;
L=5; %Longitud de varilla&lt;br /&gt;
T=5; %tiempo final&lt;br /&gt;
q=1;&lt;br /&gt;
%Discretización temporal y espacial&lt;br /&gt;
dx=0.1; % Paso en espacio&lt;br /&gt;
N=L/dx; %Número de subintervalos&lt;br /&gt;
x=0:dx:L;% Vector de espacio&lt;br /&gt;
dt=dx/4; % Paso en tiempo&lt;br /&gt;
t=0:dt:T; % Vector de tiempos&lt;br /&gt;
% Matriz de coeficientes. Aproximacion de -q*u_xx&lt;br /&gt;
K=2*diag(ones(1,N))-diag(ones(1,N-1),1)-diag(ones(1,N-1),-1);&lt;br /&gt;
K(N,N-1)=-2;&lt;br /&gt;
K=q*K/dx^2;&lt;br /&gt;
% Matriz F&lt;br /&gt;
F=zeros(N,1);&lt;br /&gt;
% Calculamos u0 condición inicial&lt;br /&gt;
u0=[zeros(1,N*3/5),3*ones(1,N*2/5)]';&lt;br /&gt;
sol(1,:)=[0,u0']; &lt;br /&gt;
U=u0; % Inicializacion&lt;br /&gt;
% Calculamos U_n -&amp;gt; U_n+1&lt;br /&gt;
%Aplicamos método trapecio&lt;br /&gt;
for j=1:length(t)-1&lt;br /&gt;
U=(eye(N)+(dt*K))\(dt*F+U);&lt;br /&gt;
sol(j+1,:)= [0,U'];&lt;br /&gt;
end&lt;br /&gt;
%Dibujamos la solucion&lt;br /&gt;
[xx,tt]=meshgrid(x,t);&lt;br /&gt;
surf(xx,tt,sol);&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Xata.JPG|500px|thumb|centro|Solución al variar las condiciones de contorno del problema.]]&lt;br /&gt;
&lt;br /&gt;
Observando la gráfica, y por la presencia del limpiador en el extremo de la varilla, para tiempos grandes la cantidad de sustancia contaminante será nula en toda la varilla. En realidad, esto no es del todo cierto puesto que la sustancia no llega a eliminarse completamente, ya que el limpiador solo elimina la sustancia contaminante en el extremo izquierdo. Aunque la concentración en todos los puntos disminuye de manera exponencial, permanece asintótica a 0.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Trapotito.JPG|500px|thumb|centro|Momento en el que se estabiliza con la presencia del limpiador.]]&lt;br /&gt;
&lt;br /&gt;
==Resolución por el método de Fourier==&lt;br /&gt;
&lt;br /&gt;
Las condiciones de frontera del problema son homogéneas, por lo que podemos aplicar este método de cálculo, sin realizar ningún cambio.&lt;br /&gt;
El primer paso es resolver el problema de autovalores asociado::&lt;br /&gt;
&amp;lt;math&amp;gt;\begin{cases}&lt;br /&gt;
y''+λy=0 x \in (0,5) \\&lt;br /&gt;
y'(0)=0 \\&lt;br /&gt;
y'(5)=0&lt;br /&gt;
\end{cases}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
Realizando analíticamente el cálculo, obtenemos los siguientes autovalores y autofunciones::&lt;br /&gt;
&amp;lt;math&amp;gt; λ_k=\frac{k^2π^2}{25}  →  φ_k=sin\frac{kπ}{5}x , k=0,1,2,3... &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Las condiciones de frontera e iniciales serían las siguientes en términos de la serie de Fourier::&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \sum_{k=0}^∞c_k(t)φ_k(x)=0  ,   \sum_{k=0}^∞a_k(t)φ_k(x)\begin{cases} 0, x≤3 \\ 3, x&amp;gt;3\end{cases} &amp;lt;/math&amp;gt;&lt;br /&gt;
 &lt;br /&gt;
Y ensayamos soluciones de la forma::&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; u(x,t)=\sum_{k=0}^∞T_k(t)φ_k(x)=\sum_{k=0}^∞T_k(t)sin\frac{kπ}{5}x &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Relacionando los resultados obtenidos en el problema de autovalores y el problema de difusión de la sustancia contaminante obtenemos lo siguiente::&lt;br /&gt;
&amp;lt;math&amp;gt;\begin{cases} T'_k(t)+μ_kT_k(t)=c_k=0 \\ T_k(0)=a_k \end{cases} &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
La solución de este último problema de valor inicial es::&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;T_k(t)=a_ke^{-μ_kt}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
De esta manera obtenemos la solución final::&lt;br /&gt;
&amp;lt;math&amp;gt; u(x,t)=\sum_{k=0}^∞a_ke^{-μ_kt}sin\frac{kπ}{5}x  &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Resolveremos a través de Matlab, con una serie de Fourier de 1,3,10 y 20 términos.&lt;br /&gt;
{{matlab| codigo=&lt;br /&gt;
%Datos&lt;br /&gt;
L=5; %Longitud de varilla&lt;br /&gt;
T=0.5; %tiempo final&lt;br /&gt;
q=1;&lt;br /&gt;
%Discretización temporal y espacial&lt;br /&gt;
dx=0.1; % Paso en espacio&lt;br /&gt;
N=L/dx; %Número de subintervalos&lt;br /&gt;
x=0:dx:L;% Vector de espacio&lt;br /&gt;
dt=dx/4; % Paso en tiempo&lt;br /&gt;
t=0:dt:T; % Vector de tiempos&lt;br /&gt;
M=1; %Número de términos&lt;br /&gt;
sol=zeros(length(t),N+1);&lt;br /&gt;
%Aplicamos Fourier&lt;br /&gt;
for j=1:M&lt;br /&gt;
switch phi=sin((j*pi*x))&lt;br /&gt;
case x&amp;lt;3&lt;br /&gt;
a=(trapz(x,0*phi))/(trapz(x,phi.^2));&lt;br /&gt;
otherwise, &lt;br /&gt;
a=(trapz(x,3*phi))/(trapz(x,phi.^2));&lt;br /&gt;
end&lt;br /&gt;
TT=a*exp(-(j^2)*(pi^2)*t/25);&lt;br /&gt;
sol=sol+TT'*phi;&lt;br /&gt;
end&lt;br /&gt;
%Dibujamos la solucion&lt;br /&gt;
[xx,tt]=meshgrid(x,t);&lt;br /&gt;
surf(xx,tt,sol);&lt;br /&gt;
}}&lt;br /&gt;
Con un término en la serie de Fourier obtenemos la siguiente gráfica::&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Fotico1.JPG|500px|thumb|centro|Método de Fourier con un término en la serie.]]&lt;br /&gt;
En la anterior gráfica apreciamos que la precisión es baja con un sólo término en la serie. En cambio si tomamos 20 términos en la serie, la aproximación es mejor, como veremos en la siguiente imagen.&lt;br /&gt;
[[Archivo:Fotico2.JPG|500px|thumb|centro|Método de Fourier con 20 términos en la serie.]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Si variamos las condiciones de frontera en el problema el problema de autovalores cambia igualmente::&lt;br /&gt;
&amp;lt;math&amp;gt;\begin{cases}&lt;br /&gt;
y''+λy=0 x \in (0,5) \\&lt;br /&gt;
y'(0)=3 \\&lt;br /&gt;
y(5)=10sen(t)&lt;br /&gt;
\end{cases}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
De este problema obtenemos, operando analíticamente, nuevos autovalores y autofunciones::&lt;br /&gt;
&amp;lt;math&amp;gt; λ_k=\frac{π^2(2k-1)^2}{100}  →  φ_k=sin\frac{(2k-1)π}{10}x , k=0,1,2,3... &amp;lt;/math&amp;gt;&lt;br /&gt;
Siguiendo el mismo procedimiento que en el caso anterior, obtendremos la solución::&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; u(x,t)=\sum_{k=0}^∞a_ke^{-μ_kt}sin\frac{(2k-1)π}{10}x+10sint+3x-15 &amp;lt;/math&amp;gt;&lt;/div&gt;</summary>
		<author><name>Karlo André</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Difusi%C3%B3n_de_una_sustancia_contaminante_(Grupo_10)&amp;diff=13000</id>
		<title>Difusión de una sustancia contaminante (Grupo 10)</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Difusi%C3%B3n_de_una_sustancia_contaminante_(Grupo_10)&amp;diff=13000"/>
				<updated>2014-05-19T19:30:32Z</updated>
		
		<summary type="html">&lt;p&gt;Karlo André: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;''''''Texto en negrita''''''[[Archivo:nuriat.png|200px|thumb|right|Tubo con sustancia contaminante]]&lt;br /&gt;
La difusión implica un movimiento espontáneo y desordenado de moléculas individuales y, especialmente, nos interesa la difusión de moléculas de una sustancia disuelta en otra.&lt;br /&gt;
&lt;br /&gt;
La difusión de una sustancia puede considerarse análoga al flujo de calor, y la ley de Fick establece que el ritmo de difusión por unidad de superficie, en dirección perpendicular a ésta, es proporcional al gradiente de la concentración de esa sustancia en esa dirección. La concentración es la masa de la sustancia por unidad de volumen, y el gradiente de concentración es la variación de concentración por unidad de distancia.&lt;br /&gt;
&lt;br /&gt;
Para determinar como se distribuye la concentración de una sustancia contaminante tomaremos como ejemplo un tubo largo compuesto por dos sustancias de las cuáles una de ellas es contaminante.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
= Simplificación del problema =&lt;br /&gt;
&lt;br /&gt;
Para que este problema resulte más sencillo aplicaremos una serie de condiciones, facilitando el cálculo del mismo.&lt;br /&gt;
&lt;br /&gt;
En primer lugar denotaremos su concentración &amp;lt;math&amp;gt; u &amp;lt;/math&amp;gt;, concentración de contaminante en cada posición del tubo y constante en cada sección, medida en &amp;lt;math&amp;gt; \frac{mol}{m^2*s} &amp;lt;/math&amp;gt;. &lt;br /&gt;
&lt;br /&gt;
Supondremos que el tubo mide L=5 m, ocupando el intervalo &amp;lt;math&amp;gt; x \in (0,L) &amp;lt;/math&amp;gt;, y que la concentración es la misma en cualquier punto de la sección transversal del tubo. Por tanto, la concentración dependerá unicamente de dos variables &amp;lt;math&amp;gt; u = u(x,t) &amp;lt;/math&amp;gt;. En los extremos se ha colocado un aislante que hace que el flujo de contaminante al exterior del tubo sea nulo. Además, consideraremos la simplificación de que se trata de un tubo aislado por sus laterales, pero abierto por las bases del cilindro.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Ley de conservación de masa ==&lt;br /&gt;
&lt;br /&gt;
Tras una serie de experimentos realizados por Lavoisier, se pusieron de manifiesto que si tenemos en cuenta todas las sustancias que forman parte en una reacción química y todos los productos formados, nunca varía la masa. Esta ley exige que no haya una generación espontánea de materia. Es decir, en la región del espacio estudiada, no existe entrada o salida por un punto cualquiera (frontera o interior), la masa en esta región se mantiene constante. Esta es la ley de la conservación de la masa, que podemos enunciarla, pues, de la siguiente manera: &amp;lt;br /&amp;gt;&lt;br /&gt;
''&amp;quot;En toda reacción química la masa se conserva, esto es, la masa total de los reactivos es igual a la masa total de los productos&amp;quot;'' &amp;lt;br /&amp;gt;&lt;br /&gt;
La ley de conservación de masas exige que no haya una generación espontánea de materia. Es decir, en la región del espacio estudiada, no existe entrada o salida por un punto cualquiera (frontera o interior), la masa en esta región se mantiene constante.&lt;br /&gt;
&lt;br /&gt;
Esta suposición, en términos de variación de masa, puede quedar determinada como:&lt;br /&gt;
&lt;br /&gt;
''Variación de la masa en el tiempo = flujo de masa a través de la frontera por unidad de tiempo + flujo de masa generada en el interior por unidad de tiempo. ''&lt;br /&gt;
&lt;br /&gt;
== Ley de Fick ==&lt;br /&gt;
Se trata de una ley cuantitativa en forma diferencial que describe la difusión de materia o energía en un medio en el que inicialmente existe equilibrio químico o físico. Esta ley se trata de una generalización de los fenómenos descritos por la '''Ley de Fourier''', ya que esta es una consideración concreta del calor.&lt;br /&gt;
&lt;br /&gt;
La ley de Fick anuncia que en el caso de existir diferencias de concentración en cualquier especie, el paso de estas especies se llevará a cabo desde las regiones con mayor concentración a las de menor. Formulado matemáticamente:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;F(x,t)=-D\frac{\partial u}{\partial x}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Donde &amp;lt;math&amp;gt;F&amp;lt;/math&amp;gt; es el flujo de la sustancia y &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; el coeficiente de difusión, que representa la facilidad en que un soluto particular se mueve por un disolvente determinado.&lt;br /&gt;
&lt;br /&gt;
La ley de Fick establece que el flujo de difusión del contaminante es proporcional a la variación de concentración:&lt;br /&gt;
&amp;lt;math&amp;gt; F(x,t)=-D\frac{\partial u}{\partial x} &amp;lt;/math&amp;gt;&lt;br /&gt;
donde D es el coeficiente de difusión (medido en &amp;lt;math&amp;gt; \frac{m^2}{s} &amp;lt;/math&amp;gt;), que depende de las propiedades físicas de los compuestos, y que se supone constante D=1.&lt;br /&gt;
&lt;br /&gt;
= Modelización de la ecuación diferencial =&lt;br /&gt;
&lt;br /&gt;
Aplicando el principio de conservación de la masa y la ley de Fourier, definimos la variable &amp;lt;math&amp;gt; u(x,t)&amp;lt;/math&amp;gt; en unidades de sustancia por área, es decir, concentración por superficie del tubo.&lt;br /&gt;
&lt;br /&gt;
Consideramos &amp;lt;math&amp;gt; A &amp;lt;/math&amp;gt; como variable superficie, y tomamos un pequeño trozo, definido por &amp;lt;math&amp;gt;\Delta x&amp;lt;/math&amp;gt;. Entonces, para obtener la variación de la masa en el tiempo:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; A u(x,t) \Delta x &amp;lt;/math&amp;gt; &lt;br /&gt;
&lt;br /&gt;
Y derivando en el tiempo:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; A u_t(x,t) \Delta x &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
obtenemos el primer término de la igualdad anteriormente enunciada.&lt;br /&gt;
&lt;br /&gt;
En el segundo, consideramos nulo el flujo de masa en los puntos interiores por unidad de tiempo, pues suponemos la tubería perfecta y sin sumideros.&lt;br /&gt;
&lt;br /&gt;
Como la superﬁcie lateral del tubo está aislada, solamente habrá flujo de sustancia en la dirección del eje &amp;lt;math&amp;gt;x&amp;lt;/math&amp;gt;. Si &amp;lt;math&amp;gt;F(x,t)&amp;gt; 0&amp;lt;/math&amp;gt; pensamos que el ﬂujo va hacia la derecha, si &amp;lt;math&amp;gt;F(x,t)&amp;lt; 0&amp;lt;/math&amp;gt;, este va a hacia la izquierda. El ﬂujo de&lt;br /&gt;
calor en un intervalo &amp;lt;math&amp;gt;[x, x + ∆x ] &amp;lt;/math&amp;gt; viene dado dado por:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;F(x,t)A-F(x+\Delta x, t)A&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Con lo que queda &amp;lt;math&amp;gt;A u_t(x,t) \Delta x = F(x,t)A-F(x+\Delta x, t)A&amp;lt;/math&amp;gt;, y al dividir &amp;lt;math&amp;gt;A \Delta x&amp;lt;/math&amp;gt;, nos queda &amp;lt;math&amp;gt;u_t(x,t)= \frac {F(x,t)-F(x+\Delta x, t)}{\Delta x}&amp;lt;/math&amp;gt;. &amp;lt;br /&amp;gt;&lt;br /&gt;
Como &amp;lt;math&amp;gt;\Delta x \rightarrow 0 &amp;lt;/math&amp;gt;, &amp;lt;math&amp;gt;u_t(x,t)= -F_x(x,t)&amp;lt;/math&amp;gt;, y aplicando ley de Fick, &amp;lt;math&amp;gt;u_t(x,t)=-\frac{\partial }{\partial x}(-D u_x(x,t)) = D u_xx(x,t) &amp;lt;/math&amp;gt;.&amp;lt;br /&amp;gt;&lt;br /&gt;
Con lo que resulta una ecuación en derivadas parciales que determina la concentración de sustancia:&lt;br /&gt;
&amp;lt;math&amp;gt;u_t(x,t)- D u_xx(x,t)= 0 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Planteamiento del problema bien propuesto ==&lt;br /&gt;
&lt;br /&gt;
Suponemos que el flujo será nula al haber una tapa en los extremos del tubo, con lo que el problema bien propuesto quedaría::&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\begin{cases}&lt;br /&gt;
u_t(x,t)- D u_{xx}(x,t)= 0 ; x\in (0,5) \\&lt;br /&gt;
u(x,0)=u_0 , x\in (0,5) \\&lt;br /&gt;
u_x(0,t)=0 , u_x(5,t)=0 ; t\geq 0&lt;br /&gt;
\end{cases}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= Resolución numérica =&lt;br /&gt;
Para la resolución de ésta ecuación necesitaremos mínimo tres condiciones, dos de las cuales serán de contorno, y la otra será la condición inicial.Si suponemos &amp;lt;math&amp;gt;u_0(x,0)&amp;lt;/math&amp;gt;, entonces:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; u_0(x,0)=\begin{cases}&lt;br /&gt;
0,  si x\leq 3\\&lt;br /&gt;
3,  si x&amp;gt;3&lt;br /&gt;
\end{cases}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Resolución por el método de las diferencias finitas ==&lt;br /&gt;
En el primer caso particular que estudiaremos, trataremos de obtener una resolución numérica del problema anteriormente planteado, dónde tenemos las fronteras aisladas y las concentraciones iniciales conocidas:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\begin{cases}&lt;br /&gt;
u_t(x,t)- D u_{xx}(x,t)= 0; x\in (0,5), t\geq 0 \\&lt;br /&gt;
u_0(x,0), x\in (0,5) \\&lt;br /&gt;
u_x(0,t)=0, u_x(5,t)=0, t\geq 0&lt;br /&gt;
\end{cases}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
La resolución por el método de las diferencias finitas se basa en expresar el problema continuo a un sistema discreto de ecuaciones diferenciales de primer orden. Particularizando para nuestro caso con las condiciones dadas, el problema planteado sería:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\begin{cases}&lt;br /&gt;
u'_n(t)+\frac{-u_{n-1}(t)+2u_n(t)+u_{n+1}(t)}{h^2} \\&lt;br /&gt;
\frac{u_1(t)-u_-1(t)}{2h} \rightarrow u_1(t)=u_-1(t) \\&lt;br /&gt;
\frac{u_{N+1}(t)-u_{N-1}(t)}{2h} \rightarrow u_{N+1}(t)=u_{N-1}\\&lt;br /&gt;
u_n(0)=u^0(x)&lt;br /&gt;
\end{cases}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Por lo que tenemos un sistema de la forma:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\begin{cases}&lt;br /&gt;
U'(t)+KU(t)=F(t)=0\\&lt;br /&gt;
U(0)=U^0&lt;br /&gt;
\end{cases}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Con &amp;lt;math&amp;gt;N+1&amp;lt;/math&amp;gt; ecuaciones.&lt;br /&gt;
==== Resolución por método del trapecio ====&lt;br /&gt;
Suponiendo que en el instante inicial se verifica  :&amp;lt;math&amp;gt;&lt;br /&gt;
u(x,0)=\left\{\begin{matrix}\\0, x≤3\\3, x&amp;gt;3\end{matrix}\right.&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Si tomamos &amp;lt;math&amp;gt;\triangle t= \triangle x/4&amp;lt;/math&amp;gt; en &amp;lt;math&amp;gt;t\in\ [0,5]&amp;lt;/math&amp;gt;, con &amp;lt;math&amp;gt;\triangle x=0.1&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
El código en MATLAB del método sería:&lt;br /&gt;
&lt;br /&gt;
{{matlab| codigo=&lt;br /&gt;
%Datos&lt;br /&gt;
L=5; %Longitud de varilla&lt;br /&gt;
T=5; %tiempo final&lt;br /&gt;
q=1;&lt;br /&gt;
%Discretización temporal y espacial&lt;br /&gt;
dx=0.1; % Paso en espacio&lt;br /&gt;
N=L/dx; %Número de subintervalos&lt;br /&gt;
x=0:dx:L; % Vector de espacio&lt;br /&gt;
dt=dx/4; % Paso en tiempo&lt;br /&gt;
t=0:dt:T; % Vector de tiempos&lt;br /&gt;
% Matriz de coeficientes. Aproximacion de -q*u_xx&lt;br /&gt;
K=2*diag(ones(1,N+1))-diag(ones(1,N),1)-diag(ones(1,N),-1);&lt;br /&gt;
K(1,2)=-2;&lt;br /&gt;
K(N+1,N)=-2;&lt;br /&gt;
K=q*K/dx^2;&lt;br /&gt;
% Calculamos u0 condición inicial&lt;br /&gt;
u0=[zeros(1,1+N*3/5),3*ones(1,N*2/5)]';&lt;br /&gt;
% F=0 (no la consideramos)&lt;br /&gt;
sol(1,:)=u0'; % Guardamos la solucion&lt;br /&gt;
U=u0; % Inicializacion&lt;br /&gt;
% Calculamos U_n -&amp;gt; U_n+1&lt;br /&gt;
%Aplicamos método trapecio método del trapecio&lt;br /&gt;
for j=1:length(t)-1&lt;br /&gt;
U=(eye(N+1)+(dt*K)/2)\((eye(N+1)-(K*dt)/2)*U);&lt;br /&gt;
sol(j+1,:)= U'; % Guardamos solucion&lt;br /&gt;
end&lt;br /&gt;
%Dibujamos la solucion&lt;br /&gt;
[xx,tt]=meshgrid(x,t);&lt;br /&gt;
surf(xx,tt,sol);&lt;br /&gt;
}}&lt;br /&gt;
[[Archivo:nur.jpg|500px|thumb|centro|Gráfica concentración / espacio-tiempo. Resolución por el método del trapecio.]]&lt;br /&gt;
&lt;br /&gt;
==== Resolución por método de Euler explícito ====&lt;br /&gt;
{{matlab| codigo=&lt;br /&gt;
%Datos&lt;br /&gt;
L=5; %Longitud de varilla&lt;br /&gt;
T=5; %tiempo final&lt;br /&gt;
q=1;&lt;br /&gt;
%Discretización temporal y espacial&lt;br /&gt;
dx=0.1; % Paso en espacio&lt;br /&gt;
N=L/dx; %Número de subintervalos&lt;br /&gt;
x=0:dx:L; % Vector de espacio&lt;br /&gt;
dt=dx/20; % Paso en tiempo&lt;br /&gt;
t=0:dt:T; % Vector de tiempos&lt;br /&gt;
% Matriz de coeficientes. Aproximacion de -q*u_xx&lt;br /&gt;
K=2*diag(ones(1,N+1))-diag(ones(1,N),1)-diag(ones(1,N),-1);&lt;br /&gt;
K(1,2)=-2;&lt;br /&gt;
K(N+1,N)=-2;&lt;br /&gt;
K=q*K/dx^2;&lt;br /&gt;
% Calculamos u0 condición inicial&lt;br /&gt;
u0=[zeros(1,1+N*3/5),3*ones(1,N*2/5)]';&lt;br /&gt;
% F=0 (no la consideramos)&lt;br /&gt;
sol(1,:)=u0'; % Guardamos la solucion&lt;br /&gt;
U=u0; % Inicializacion&lt;br /&gt;
% Calculamos U_n -&amp;gt; U_n+1&lt;br /&gt;
%Aplicamos método Euler explícito&lt;br /&gt;
for j=1:length(t)-1 &lt;br /&gt;
k1=-K*U; % Calculamos k1=h*f(tn,yn)&lt;br /&gt;
k2=-K*(U+dt*k1); % Calculamos k2=h*f(tn+h/2,yn+1/2*k1)&lt;br /&gt;
% Meto los datos en el vector&lt;br /&gt;
U=U+(dt/2)*(k1+k2);&lt;br /&gt;
sol(j+1,:)= U'; % Guardamos solucion&lt;br /&gt;
end&lt;br /&gt;
%Dibujamos la solucion&lt;br /&gt;
[xx,tt]=meshgrid(x,t);&lt;br /&gt;
surf(xx,tt,sol);&lt;br /&gt;
}}&lt;br /&gt;
[[Archivo:mig.jpg|500px|thumb|centro|Gráfica concentración / espacio-tiempo. Resolución por el método de Euler explícito.]]&lt;br /&gt;
&lt;br /&gt;
==== Resolución por método de Euler implícito ====&lt;br /&gt;
{{matlab| codigo=&lt;br /&gt;
%Datos&lt;br /&gt;
L=5; %Longitud de varilla&lt;br /&gt;
T=5;&lt;br /&gt;
q=1;&lt;br /&gt;
%Discretización temporal y espacial&lt;br /&gt;
dx=0.1; % Paso en espacio&lt;br /&gt;
N=L/dx; %Número de subintervalos&lt;br /&gt;
h=L/N;&lt;br /&gt;
x=0:h:L; % Vector de espacio&lt;br /&gt;
dt=h/20; % Paso en tiempo&lt;br /&gt;
t=0:dt:T; % Vector de tiempos&lt;br /&gt;
% Matriz de coeficientes. Aproximacion de -q*u_xx&lt;br /&gt;
K=2*diag(ones(1,N+1))-diag(ones(1,N),1)-diag(ones(1,N),-1);&lt;br /&gt;
K(1,2)=-2;&lt;br /&gt;
K(N+1,N)=-2;&lt;br /&gt;
K=q*K/h^2;&lt;br /&gt;
% Calculamos u0 condición inicial&lt;br /&gt;
u0=[zeros(1,1+N*3/5),3*ones(1,N*2/5)]';&lt;br /&gt;
% F=0 (no la consideramos)&lt;br /&gt;
sol(1,:)=u0'; % Guardamos la solucion&lt;br /&gt;
U=u0; % Inicializacion&lt;br /&gt;
% Calculamos U_n -&amp;gt; U_n+1&lt;br /&gt;
% Aplicamos método implícito&lt;br /&gt;
for j=1:length(t)-1 &lt;br /&gt;
U=U-dt*K*U; &lt;br /&gt;
sol(j+1,:)= U'; % Guardamos solucion&lt;br /&gt;
end&lt;br /&gt;
%Dibujamos la solucion&lt;br /&gt;
[xx,tt]=meshgrid(x,t);&lt;br /&gt;
surf(xx,tt,sol);&lt;br /&gt;
}}&lt;br /&gt;
[[Archivo:migap.jpg|500px|thumb|centro|Gráfica concentración / espacio-tiempo. Resolución por el método de Euler implícito.]]&lt;br /&gt;
&lt;br /&gt;
==== Resolución por método de Euler modificado ====&lt;br /&gt;
{{matlab| codigo=&lt;br /&gt;
%Datos&lt;br /&gt;
L=5; %Longitud de varilla&lt;br /&gt;
T=5;&lt;br /&gt;
q=1;&lt;br /&gt;
%Discretización temporal y espacial&lt;br /&gt;
dx=0.1; % Paso en espacio&lt;br /&gt;
N=L/dx; %Número de subintervalos&lt;br /&gt;
h=L/N;&lt;br /&gt;
x=0:h:L; % Vector de espacio&lt;br /&gt;
dt=h/20; % Paso en tiempo&lt;br /&gt;
t=0:dt:T; % Vector de tiempos&lt;br /&gt;
% Matriz de coeficientes. Aproximacion de -q*u_xx&lt;br /&gt;
K=2*diag(ones(1,N+1))-diag(ones(1,N),1)-diag(ones(1,N),-1);&lt;br /&gt;
K(1,2)=-2;&lt;br /&gt;
K(N+1,N)=-2;&lt;br /&gt;
K=q*K/h^2;&lt;br /&gt;
% Calculamos u0 condición inicial&lt;br /&gt;
u0=[zeros(1,1+N*3/5),3*ones(1,N*2/5)]';&lt;br /&gt;
% F=0 (no la consideramos)&lt;br /&gt;
sol(1,:)=u0'; % Guardamos la solucion&lt;br /&gt;
U=u0; % Inicializacion&lt;br /&gt;
% Calculamos U_n -&amp;gt; U_n+1&lt;br /&gt;
for j=1:length(t)-1 &lt;br /&gt;
k1=-K*U; % Calculamos k1=h*f(tn,yn)&lt;br /&gt;
k2=-K*(U+dt*k1); % Calculamos k2=h*f(tn+h/2,yn+1/2*k1)&lt;br /&gt;
% Meto los datos en el vector&lt;br /&gt;
U=U+(dt/2)*(k1+k2);&lt;br /&gt;
sol(j+1,:)= U'; % Guardamos solucion&lt;br /&gt;
end&lt;br /&gt;
%Dibujamos la solucion&lt;br /&gt;
[xx,tt]=meshgrid(x,t);&lt;br /&gt;
surf(xx,tt,sol);&lt;br /&gt;
}}&lt;br /&gt;
[[Archivo: mig.jpg|500px|thumb|centro|Gráfica concentración / espacio-tiempo. Resolución por el método de Euler modificado.]]&lt;br /&gt;
&lt;br /&gt;
== Conservación de la masa total de contaminante ==&lt;br /&gt;
A continuación demostraremos que la masa total de contaminante en el tubo se conserva a lo largo del tiempo, que se puede deducir a partir de la ecuación sin tener que resolverla. Integramos la ecuación y debido a las condiciones de frontera:&lt;br /&gt;
&amp;lt;math&amp;gt;\frac d {dt} \int_0^5 u(x,t)\,dx= \int_0^5 u_{xx}(x,t)\,dx= u_x(x,t)|_0^5=0&amp;lt;/math&amp;gt;&lt;br /&gt;
{{matlab| codigo=&lt;br /&gt;
%Datos&lt;br /&gt;
L=5; %Longitud de varilla&lt;br /&gt;
T=5;&lt;br /&gt;
q=1;&lt;br /&gt;
%Discretización temporal y espacial&lt;br /&gt;
N=500; %Número de subintervalos&lt;br /&gt;
h=L/N;&lt;br /&gt;
x=0:h:L; % Vector de espacio&lt;br /&gt;
dt=h/4; % Paso en tiempo&lt;br /&gt;
t=0:dt:T; % Vector de tiempos&lt;br /&gt;
% Matriz de coeficientes. Aproximacion de -q*u_xx&lt;br /&gt;
K=2*diag(ones(1,N+1))-diag(ones(1,N),1)-diag(ones(1,N),-1);&lt;br /&gt;
K(1,2)=-2;&lt;br /&gt;
K(N+1,N)=-2;&lt;br /&gt;
K=q*K/h^2;&lt;br /&gt;
% Calculamos u0 condición inicial&lt;br /&gt;
u0=[zeros(1,1+N*3/5),3*ones(1,N*2/5)]';&lt;br /&gt;
% F=0 (no la consideramos)&lt;br /&gt;
sol(1,:)=u0'; % Guardamos la solucion&lt;br /&gt;
U=u0; % Inicializacion&lt;br /&gt;
% Calculamos U_n -&amp;gt; U_n+1&lt;br /&gt;
for j=1:length(t)-1 &lt;br /&gt;
U=(eye(N+1)+dt*K)\(U+dt*F); &lt;br /&gt;
sol(j+1,:)= U'; % Guardamos solucion&lt;br /&gt;
end&lt;br /&gt;
% Calculamos el area de la funcion en cada tiempo (area = cantidad de contaminante)&lt;br /&gt;
areas=zeros(1,length(t));&lt;br /&gt;
for i=1:length(t)&lt;br /&gt;
f=sol(i,:);&lt;br /&gt;
w=trapz(x,f);&lt;br /&gt;
area(i)=w;&lt;br /&gt;
end&lt;br /&gt;
%Dibujamos&lt;br /&gt;
plot(t,area)&lt;br /&gt;
xlabel('Tiempo')&lt;br /&gt;
ylabel('Cantidad de contaminante')&lt;br /&gt;
}}&lt;br /&gt;
[[Archivo:aleeex.jpg|500px|thumb|centro|Conservación masa total de contaminante]]&lt;br /&gt;
[[Archivo:gime.jpg|500px|thumb|centro|Conservación masa total de contaminante]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Concentración a lo largo del tiempo==&lt;br /&gt;
La concentración de la sustancia contaminante en la varilla varía con el tiempo, pero en un cierto momento esta concentración se va homogeneizando, y deja de variar, entrando en un estado estacionario::&lt;br /&gt;
&amp;lt;math&amp;gt; u_t(x,t)- D*u_{xx}(x,t)=0 &amp;lt;/math&amp;gt; :    &lt;br /&gt;
&amp;lt;math&amp;gt; u_t(x,t)=0 \rightarrow D*u_{xx}(x,t)=0 &amp;lt;/math&amp;gt; :&lt;br /&gt;
&amp;lt;math&amp;gt; u=c_1*x+c_2 &amp;lt;/math&amp;gt; &lt;br /&gt;
Utizando Matlab comprobaremos que &amp;lt;math&amp;gt; c_1=0 &amp;lt;/math&amp;gt; &amp;lt;math&amp;gt; c_2=1.17 &amp;lt;/math&amp;gt;&lt;br /&gt;
Para tiempos grandes la concentración se estabiliza en torno a 1.17 en toda la varilla, de forma que la solución se asemejará a una función lineal constante.&lt;br /&gt;
&lt;br /&gt;
{{matlab| codigo=&lt;br /&gt;
%Datos&lt;br /&gt;
L=5; %Longitud de varilla&lt;br /&gt;
T=50;&lt;br /&gt;
q=1;&lt;br /&gt;
%Discretización temporal y espacial&lt;br /&gt;
dx=0.1; % Paso en espacio&lt;br /&gt;
N=L/dx; %Número de subintervalos&lt;br /&gt;
h=L/N;&lt;br /&gt;
x=0:h:L; % Vector de espacio&lt;br /&gt;
dt=h/4; % Paso en tiempo&lt;br /&gt;
t=0:dt:T; % Vector de tiempos&lt;br /&gt;
% Matriz de coeficientes. Aproximacion de -q*u_xx&lt;br /&gt;
K=2*diag(ones(1,N+1))-diag(ones(1,N),1)-diag(ones(1,N),-1);&lt;br /&gt;
K(1,2)=-2;&lt;br /&gt;
K(N+1,N)=-2;&lt;br /&gt;
K=q*K/h^2;&lt;br /&gt;
% Calculamos u0 condición inicial&lt;br /&gt;
u0=[zeros(1,1+N*3/5),3*ones(1,N*2/5)]';&lt;br /&gt;
% F=0 (no la consideramos)&lt;br /&gt;
sol(1,:)=u0'; % Guardamos la solucion&lt;br /&gt;
U=u0; % Inicializacion&lt;br /&gt;
% Calculamos U_n -&amp;gt; U_n+1&lt;br /&gt;
%Aplicamos método trapecio método del trapecio&lt;br /&gt;
for j=1:length(t)-1&lt;br /&gt;
U=(eye(N+1)+(dt*K)/2)\((eye(N+1)-(K*dt)/2)*U);&lt;br /&gt;
sol(j+1,:)= U'; % Guardamos solucion&lt;br /&gt;
end&lt;br /&gt;
%Solución estacionaria&lt;br /&gt;
a=sol(length(t),:);&lt;br /&gt;
b=sol(1,:);&lt;br /&gt;
c=sol((length(t)-1)/50+1,:);&lt;br /&gt;
d=sol((length(t)-1)*2/50+1,:);&lt;br /&gt;
e=sol((length(t)-1)*10/50+1,:);&lt;br /&gt;
hold on&lt;br /&gt;
plot(x,a,'xk','linewidth',2);&lt;br /&gt;
plot(x,b,'-m','linewidth',1);&lt;br /&gt;
plot(x,c,'-g','linewidth',1);&lt;br /&gt;
plot(x,d,'-y','linewidth',1);&lt;br /&gt;
plot(x,e,'-b','linewidth',1);&lt;br /&gt;
legend('u(50s)','u(0s)','u(1s)','u(2s)','u(10s)');&lt;br /&gt;
xlabel('Posición en la varilla')&lt;br /&gt;
ylabel('Concentracion')&lt;br /&gt;
hold off&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Soluciones(t).jpg|500px|thumb|centro|Soluciones a lo largo del tiempo]]&lt;br /&gt;
&lt;br /&gt;
La distancia entre la solución estacionaria y las soluciones para los siguientes instantes: 0s, 1s, 2s y 10s; se puede apreciar en la imagen anterior. &lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
Una vez analizado los datos, se demuestra que la sustancia contaminante se estabiliza en t=9.98s, con un error del 5%.&lt;br /&gt;
&lt;br /&gt;
En el caso de que consideremos Δx'=Δx/10,el tiempo en el que se estabiliza la cantidad de sustancia contaminante será t=10s, dato que será más preciso debido a que el paso realizado en el programa es menor.&lt;br /&gt;
&lt;br /&gt;
==Nueva condición de frontera==&lt;br /&gt;
&lt;br /&gt;
Si colocamos un limpiador, que elimina la sustancia contaminante, en el extremo izquierdo de la varilla, varían las condiciones de contorno del problema. En este caso, en el extremo izquierdo, la condición inicial será de tipo Dirichlet ya que se esta variación esta provocada por un mecanismo físico externo que actúa sobre el extremo. &amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;math&amp;gt;\begin{cases}&lt;br /&gt;
u_t(x,t)- D u_{xx}(x,t)= 0 ; x\in (0,5) \\&lt;br /&gt;
u(x,0)=u_0 , x\in (0,5) \\&lt;br /&gt;
u(0,t)=0 , u_x(5,t)=0 ; t\geq 0&lt;br /&gt;
\end{cases}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Dadas las nuevas condiciones, resolvemos el problema por el método de diferencias finitas con la ayuda de Matlab.&lt;br /&gt;
&lt;br /&gt;
{{matlab| codigo=&lt;br /&gt;
%Datos&lt;br /&gt;
L=5; %Longitud de varilla&lt;br /&gt;
T=5; %tiempo final&lt;br /&gt;
q=1;&lt;br /&gt;
%Discretización temporal y espacial&lt;br /&gt;
dx=0.1; % Paso en espacio&lt;br /&gt;
N=L/dx; %Número de subintervalos&lt;br /&gt;
x=0:dx:L;% Vector de espacio&lt;br /&gt;
dt=dx/4; % Paso en tiempo&lt;br /&gt;
t=0:dt:T; % Vector de tiempos&lt;br /&gt;
% Matriz de coeficientes. Aproximacion de -q*u_xx&lt;br /&gt;
K=2*diag(ones(1,N))-diag(ones(1,N-1),1)-diag(ones(1,N-1),-1);&lt;br /&gt;
K(N,N-1)=-2;&lt;br /&gt;
K=q*K/dx^2;&lt;br /&gt;
% Matriz F&lt;br /&gt;
F=zeros(N,1);&lt;br /&gt;
% Calculamos u0 condición inicial&lt;br /&gt;
u0=[zeros(1,N*3/5),3*ones(1,N*2/5)]';&lt;br /&gt;
sol(1,:)=[0,u0']; &lt;br /&gt;
U=u0; % Inicializacion&lt;br /&gt;
% Calculamos U_n -&amp;gt; U_n+1&lt;br /&gt;
%Aplicamos método trapecio&lt;br /&gt;
for j=1:length(t)-1&lt;br /&gt;
U=(eye(N)+(dt*K))\(dt*F+U);&lt;br /&gt;
sol(j+1,:)= [0,U'];&lt;br /&gt;
end&lt;br /&gt;
%Dibujamos la solucion&lt;br /&gt;
[xx,tt]=meshgrid(x,t);&lt;br /&gt;
surf(xx,tt,sol);&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Xata.JPG|500px|thumb|centro|Solución al variar las condiciones de contorno del problema.]]&lt;br /&gt;
&lt;br /&gt;
Observando la gráfica, y por la presencia del limpiador en el extremo de la varilla, para tiempos grandes la cantidad de sustancia contaminante será nula en toda la varilla. En realidad, esto no es del todo cierto puesto que la sustancia no llega a eliminarse completamente, ya que el limpiador solo elimina la sustancia contaminante en el extremo izquierdo. Aunque la concentración en todos los puntos disminuye de manera exponencial, permanece asintótica a 0.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Trapotito.JPG|500px|thumb|centro|Momento en el que se estabiliza con la presencia del limpiador.]]&lt;br /&gt;
&lt;br /&gt;
==Resolución por el método de Fourier==&lt;br /&gt;
&lt;br /&gt;
Las condiciones de frontera del problema son homogéneas, por lo que podemos aplicar este método de cálculo, sin realizar ningún cambio.&lt;br /&gt;
El primer paso es resolver el problema de autovalores asociado::&lt;br /&gt;
&amp;lt;math&amp;gt;\begin{cases}&lt;br /&gt;
y''+λy=0 x \in (0,5) \\&lt;br /&gt;
y'(0)=0 \\&lt;br /&gt;
y'(5)=0&lt;br /&gt;
\end{cases}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
Realizando analíticamente el cálculo, obtenemos los siguientes autovalores y autofunciones::&lt;br /&gt;
&amp;lt;math&amp;gt; λ_k=\frac{k^2π^2}{25}  →  φ_k=sin\frac{kπ}{5}x , k=0,1,2,3... &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Las condiciones de frontera e iniciales serían las siguientes en términos de la serie de Fourier::&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \sum_{k=0}^∞c_k(t)φ_k(x)=0  ,   \sum_{k=0}^∞a_k(t)φ_k(x)\begin{cases} 0, x≤3 \\ 3, x&amp;gt;3\end{cases} &amp;lt;/math&amp;gt;&lt;br /&gt;
 &lt;br /&gt;
Y ensayamos soluciones de la forma::&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; u(x,t)=\sum_{k=0}^∞T_k(t)φ_k(x)=\sum_{k=0}^∞T_k(t)sin\frac{kπ}{5}x &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Relacionando los resultados obtenidos en el problema de autovalores y el problema de difusión de la sustancia contaminante obtenemos lo siguiente::&lt;br /&gt;
&amp;lt;math&amp;gt;\begin{cases} T'_k(t)+μ_kT_k(t)=c_k=0 \\ T_k(0)=a_k \end{cases} &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
La solución de este último problema de valor inicial es::&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;T_k(t)=a_ke^{-μ_kt}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
De esta manera obtenemos la solución final::&lt;br /&gt;
&amp;lt;math&amp;gt; u(x,t)=\sum_{k=0}^∞a_ke^{-μ_kt}sin\frac{kπ}{5}x  &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Resolveremos a través de Matlab, con una serie de Fourier de 1,3,10 y 20 términos.&lt;br /&gt;
{{matlab| codigo=&lt;br /&gt;
%Datos&lt;br /&gt;
L=5; %Longitud de varilla&lt;br /&gt;
T=0.5; %tiempo final&lt;br /&gt;
q=1;&lt;br /&gt;
%Discretización temporal y espacial&lt;br /&gt;
dx=0.1; % Paso en espacio&lt;br /&gt;
N=L/dx; %Número de subintervalos&lt;br /&gt;
x=0:dx:L;% Vector de espacio&lt;br /&gt;
dt=dx/4; % Paso en tiempo&lt;br /&gt;
t=0:dt:T; % Vector de tiempos&lt;br /&gt;
M=1; %Número de términos&lt;br /&gt;
sol=zeros(length(t),N+1);&lt;br /&gt;
%Aplicamos Fourier&lt;br /&gt;
for j=1:M&lt;br /&gt;
switch phi=sin((j*pi*x))&lt;br /&gt;
case x&amp;lt;3&lt;br /&gt;
a=(trapz(x,0*phi))/(trapz(x,phi.^2));&lt;br /&gt;
otherwise, &lt;br /&gt;
a=(trapz(x,3*phi))/(trapz(x,phi.^2));&lt;br /&gt;
end&lt;br /&gt;
TT=a*exp(-(j^2)*(pi^2)*t/25);&lt;br /&gt;
sol=sol+TT'*phi;&lt;br /&gt;
end&lt;br /&gt;
%Dibujamos la solucion&lt;br /&gt;
[xx,tt]=meshgrid(x,t);&lt;br /&gt;
surf(xx,tt,sol);&lt;br /&gt;
}}&lt;br /&gt;
Con un término en la serie de Fourier obtenemos la siguiente gráfica::&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Fotico1.JPG|500px|thumb|centro|Método de Fourier con un término en la serie.]]&lt;br /&gt;
En la anterior gráfica apreciamos que la precisión es baja con un sólo término en la serie. En cambio si tomamos 20 términos en la serie, la aproximación es mejor, como veremos en la siguiente imagen.&lt;br /&gt;
[[Archivo:Fotico2.JPG|500px|thumb|centro|Método de Fourier con 20 términos en la serie.]]&lt;/div&gt;</summary>
		<author><name>Karlo André</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Archivo:Fotico2.JPG&amp;diff=12992</id>
		<title>Archivo:Fotico2.JPG</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Archivo:Fotico2.JPG&amp;diff=12992"/>
				<updated>2014-05-19T19:25:50Z</updated>
		
		<summary type="html">&lt;p&gt;Karlo André: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>Karlo André</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Archivo:Fotico1.JPG&amp;diff=12991</id>
		<title>Archivo:Fotico1.JPG</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Archivo:Fotico1.JPG&amp;diff=12991"/>
				<updated>2014-05-19T19:25:17Z</updated>
		
		<summary type="html">&lt;p&gt;Karlo André: Método de Fourier con un término en la serie.&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Método de Fourier con un término en la serie.&lt;/div&gt;</summary>
		<author><name>Karlo André</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Difusi%C3%B3n_de_una_sustancia_contaminante_(Grupo_10)&amp;diff=12989</id>
		<title>Difusión de una sustancia contaminante (Grupo 10)</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Difusi%C3%B3n_de_una_sustancia_contaminante_(Grupo_10)&amp;diff=12989"/>
				<updated>2014-05-19T19:20:31Z</updated>
		
		<summary type="html">&lt;p&gt;Karlo André: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;''''''Texto en negrita''''''[[Archivo:nuriat.png|200px|thumb|right|Tubo con sustancia contaminante]]&lt;br /&gt;
La difusión implica un movimiento espontáneo y desordenado de moléculas individuales y, especialmente, nos interesa la difusión de moléculas de una sustancia disuelta en otra.&lt;br /&gt;
&lt;br /&gt;
La difusión de una sustancia puede considerarse análoga al flujo de calor, y la ley de Fick establece que el ritmo de difusión por unidad de superficie, en dirección perpendicular a ésta, es proporcional al gradiente de la concentración de esa sustancia en esa dirección. La concentración es la masa de la sustancia por unidad de volumen, y el gradiente de concentración es la variación de concentración por unidad de distancia.&lt;br /&gt;
&lt;br /&gt;
Para determinar como se distribuye la concentración de una sustancia contaminante tomaremos como ejemplo un tubo largo compuesto por dos sustancias de las cuáles una de ellas es contaminante.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
= Simplificación del problema =&lt;br /&gt;
&lt;br /&gt;
Para que este problema resulte más sencillo aplicaremos una serie de condiciones, facilitando el cálculo del mismo.&lt;br /&gt;
&lt;br /&gt;
En primer lugar denotaremos su concentración &amp;lt;math&amp;gt; u &amp;lt;/math&amp;gt;, concentración de contaminante en cada posición del tubo y constante en cada sección, medida en &amp;lt;math&amp;gt; \frac{mol}{m^2*s} &amp;lt;/math&amp;gt;. &lt;br /&gt;
&lt;br /&gt;
Supondremos que el tubo mide L=5 m, ocupando el intervalo &amp;lt;math&amp;gt; x \in (0,L) &amp;lt;/math&amp;gt;, y que la concentración es la misma en cualquier punto de la sección transversal del tubo. Por tanto, la concentración dependerá unicamente de dos variables &amp;lt;math&amp;gt; u = u(x,t) &amp;lt;/math&amp;gt;. En los extremos se ha colocado un aislante que hace que el flujo de contaminante al exterior del tubo sea nulo. Además, consideraremos la simplificación de que se trata de un tubo aislado por sus laterales, pero abierto por las bases del cilindro.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Ley de conservación de masa ==&lt;br /&gt;
&lt;br /&gt;
Tras una serie de experimentos realizados por Lavoisier, se pusieron de manifiesto que si tenemos en cuenta todas las sustancias que forman parte en una reacción química y todos los productos formados, nunca varía la masa. Esta ley exige que no haya una generación espontánea de materia. Es decir, en la región del espacio estudiada, no existe entrada o salida por un punto cualquiera (frontera o interior), la masa en esta región se mantiene constante. Esta es la ley de la conservación de la masa, que podemos enunciarla, pues, de la siguiente manera: &amp;lt;br /&amp;gt;&lt;br /&gt;
''&amp;quot;En toda reacción química la masa se conserva, esto es, la masa total de los reactivos es igual a la masa total de los productos&amp;quot;'' &amp;lt;br /&amp;gt;&lt;br /&gt;
La ley de conservación de masas exige que no haya una generación espontánea de materia. Es decir, en la región del espacio estudiada, no existe entrada o salida por un punto cualquiera (frontera o interior), la masa en esta región se mantiene constante.&lt;br /&gt;
&lt;br /&gt;
Esta suposición, en términos de variación de masa, puede quedar determinada como:&lt;br /&gt;
&lt;br /&gt;
''Variación de la masa en el tiempo = flujo de masa a través de la frontera por unidad de tiempo + flujo de masa generada en el interior por unidad de tiempo. ''&lt;br /&gt;
&lt;br /&gt;
== Ley de Fick ==&lt;br /&gt;
Se trata de una ley cuantitativa en forma diferencial que describe la difusión de materia o energía en un medio en el que inicialmente existe equilibrio químico o físico. Esta ley se trata de una generalización de los fenómenos descritos por la '''Ley de Fourier''', ya que esta es una consideración concreta del calor.&lt;br /&gt;
&lt;br /&gt;
La ley de Fick anuncia que en el caso de existir diferencias de concentración en cualquier especie, el paso de estas especies se llevará a cabo desde las regiones con mayor concentración a las de menor. Formulado matemáticamente:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;F(x,t)=-D\frac{\partial u}{\partial x}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Donde &amp;lt;math&amp;gt;F&amp;lt;/math&amp;gt; es el flujo de la sustancia y &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; el coeficiente de difusión, que representa la facilidad en que un soluto particular se mueve por un disolvente determinado.&lt;br /&gt;
&lt;br /&gt;
La ley de Fick establece que el flujo de difusión del contaminante es proporcional a la variación de concentración:&lt;br /&gt;
&amp;lt;math&amp;gt; F(x,t)=-D\frac{\partial u}{\partial x} &amp;lt;/math&amp;gt;&lt;br /&gt;
donde D es el coeficiente de difusión (medido en &amp;lt;math&amp;gt; \frac{m^2}{s} &amp;lt;/math&amp;gt;), que depende de las propiedades físicas de los compuestos, y que se supone constante D=1.&lt;br /&gt;
&lt;br /&gt;
= Modelización de la ecuación diferencial =&lt;br /&gt;
&lt;br /&gt;
Aplicando el principio de conservación de la masa y la ley de Fourier, definimos la variable &amp;lt;math&amp;gt; u(x,t)&amp;lt;/math&amp;gt; en unidades de sustancia por área, es decir, concentración por superficie del tubo.&lt;br /&gt;
&lt;br /&gt;
Consideramos &amp;lt;math&amp;gt; A &amp;lt;/math&amp;gt; como variable superficie, y tomamos un pequeño trozo, definido por &amp;lt;math&amp;gt;\Delta x&amp;lt;/math&amp;gt;. Entonces, para obtener la variación de la masa en el tiempo:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; A u(x,t) \Delta x &amp;lt;/math&amp;gt; &lt;br /&gt;
&lt;br /&gt;
Y derivando en el tiempo:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; A u_t(x,t) \Delta x &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
obtenemos el primer término de la igualdad anteriormente enunciada.&lt;br /&gt;
&lt;br /&gt;
En el segundo, consideramos nulo el flujo de masa en los puntos interiores por unidad de tiempo, pues suponemos la tubería perfecta y sin sumideros.&lt;br /&gt;
&lt;br /&gt;
Como la superﬁcie lateral del tubo está aislada, solamente habrá flujo de sustancia en la dirección del eje &amp;lt;math&amp;gt;x&amp;lt;/math&amp;gt;. Si &amp;lt;math&amp;gt;F(x,t)&amp;gt; 0&amp;lt;/math&amp;gt; pensamos que el ﬂujo va hacia la derecha, si &amp;lt;math&amp;gt;F(x,t)&amp;lt; 0&amp;lt;/math&amp;gt;, este va a hacia la izquierda. El ﬂujo de&lt;br /&gt;
calor en un intervalo &amp;lt;math&amp;gt;[x, x + ∆x ] &amp;lt;/math&amp;gt; viene dado dado por:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;F(x,t)A-F(x+\Delta x, t)A&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Con lo que queda &amp;lt;math&amp;gt;A u_t(x,t) \Delta x = F(x,t)A-F(x+\Delta x, t)A&amp;lt;/math&amp;gt;, y al dividir &amp;lt;math&amp;gt;A \Delta x&amp;lt;/math&amp;gt;, nos queda &amp;lt;math&amp;gt;u_t(x,t)= \frac {F(x,t)-F(x+\Delta x, t)}{\Delta x}&amp;lt;/math&amp;gt;. &amp;lt;br /&amp;gt;&lt;br /&gt;
Como &amp;lt;math&amp;gt;\Delta x \rightarrow 0 &amp;lt;/math&amp;gt;, &amp;lt;math&amp;gt;u_t(x,t)= -F_x(x,t)&amp;lt;/math&amp;gt;, y aplicando ley de Fick, &amp;lt;math&amp;gt;u_t(x,t)=-\frac{\partial }{\partial x}(-D u_x(x,t)) = D u_xx(x,t) &amp;lt;/math&amp;gt;.&amp;lt;br /&amp;gt;&lt;br /&gt;
Con lo que resulta una ecuación en derivadas parciales que determina la concentración de sustancia:&lt;br /&gt;
&amp;lt;math&amp;gt;u_t(x,t)- D u_xx(x,t)= 0 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Planteamiento del problema bien propuesto ==&lt;br /&gt;
&lt;br /&gt;
Suponemos que el flujo será nula al haber una tapa en los extremos del tubo, con lo que el problema bien propuesto quedaría::&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\begin{cases}&lt;br /&gt;
u_t(x,t)- D u_{xx}(x,t)= 0 ; x\in (0,5) \\&lt;br /&gt;
u(x,0)=u_0 , x\in (0,5) \\&lt;br /&gt;
u_x(0,t)=0 , u_x(5,t)=0 ; t\geq 0&lt;br /&gt;
\end{cases}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= Resolución numérica =&lt;br /&gt;
Para la resolución de ésta ecuación necesitaremos mínimo tres condiciones, dos de las cuales serán de contorno, y la otra será la condición inicial.Si suponemos &amp;lt;math&amp;gt;u_0(x,0)&amp;lt;/math&amp;gt;, entonces:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; u_0(x,0)=\begin{cases}&lt;br /&gt;
0,  si x\leq 3\\&lt;br /&gt;
3,  si x&amp;gt;3&lt;br /&gt;
\end{cases}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Resolución por el método de las diferencias finitas ==&lt;br /&gt;
En el primer caso particular que estudiaremos, trataremos de obtener una resolución numérica del problema anteriormente planteado, dónde tenemos las fronteras aisladas y las concentraciones iniciales conocidas:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\begin{cases}&lt;br /&gt;
u_t(x,t)- D u_{xx}(x,t)= 0; x\in (0,5), t\geq 0 \\&lt;br /&gt;
u_0(x,0), x\in (0,5) \\&lt;br /&gt;
u_x(0,t)=0, u_x(5,t)=0, t\geq 0&lt;br /&gt;
\end{cases}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
La resolución por el método de las diferencias finitas se basa en expresar el problema continuo a un sistema discreto de ecuaciones diferenciales de primer orden. Particularizando para nuestro caso con las condiciones dadas, el problema planteado sería:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\begin{cases}&lt;br /&gt;
u'_n(t)+\frac{-u_{n-1}(t)+2u_n(t)+u_{n+1}(t)}{h^2} \\&lt;br /&gt;
\frac{u_1(t)-u_-1(t)}{2h} \rightarrow u_1(t)=u_-1(t) \\&lt;br /&gt;
\frac{u_{N+1}(t)-u_{N-1}(t)}{2h} \rightarrow u_{N+1}(t)=u_{N-1}\\&lt;br /&gt;
u_n(0)=u^0(x)&lt;br /&gt;
\end{cases}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Por lo que tenemos un sistema de la forma:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\begin{cases}&lt;br /&gt;
U'(t)+KU(t)=F(t)=0\\&lt;br /&gt;
U(0)=U^0&lt;br /&gt;
\end{cases}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Con &amp;lt;math&amp;gt;N+1&amp;lt;/math&amp;gt; ecuaciones.&lt;br /&gt;
==== Resolución por método del trapecio ====&lt;br /&gt;
Suponiendo que en el instante inicial se verifica  :&amp;lt;math&amp;gt;&lt;br /&gt;
u(x,0)=\left\{\begin{matrix}\\0, x≤3\\3, x&amp;gt;3\end{matrix}\right.&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Si tomamos &amp;lt;math&amp;gt;\triangle t= \triangle x/4&amp;lt;/math&amp;gt; en &amp;lt;math&amp;gt;t\in\ [0,5]&amp;lt;/math&amp;gt;, con &amp;lt;math&amp;gt;\triangle x=0.1&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
El código en MATLAB del método sería:&lt;br /&gt;
&lt;br /&gt;
{{matlab| codigo=&lt;br /&gt;
%Datos&lt;br /&gt;
L=5; %Longitud de varilla&lt;br /&gt;
T=5; %tiempo final&lt;br /&gt;
q=1;&lt;br /&gt;
%Discretización temporal y espacial&lt;br /&gt;
dx=0.1; % Paso en espacio&lt;br /&gt;
N=L/dx; %Número de subintervalos&lt;br /&gt;
x=0:dx:L; % Vector de espacio&lt;br /&gt;
dt=dx/4; % Paso en tiempo&lt;br /&gt;
t=0:dt:T; % Vector de tiempos&lt;br /&gt;
% Matriz de coeficientes. Aproximacion de -q*u_xx&lt;br /&gt;
K=2*diag(ones(1,N+1))-diag(ones(1,N),1)-diag(ones(1,N),-1);&lt;br /&gt;
K(1,2)=-2;&lt;br /&gt;
K(N+1,N)=-2;&lt;br /&gt;
K=q*K/dx^2;&lt;br /&gt;
% Calculamos u0 condición inicial&lt;br /&gt;
u0=[zeros(1,1+N*3/5),3*ones(1,N*2/5)]';&lt;br /&gt;
% F=0 (no la consideramos)&lt;br /&gt;
sol(1,:)=u0'; % Guardamos la solucion&lt;br /&gt;
U=u0; % Inicializacion&lt;br /&gt;
% Calculamos U_n -&amp;gt; U_n+1&lt;br /&gt;
%Aplicamos método trapecio método del trapecio&lt;br /&gt;
for j=1:length(t)-1&lt;br /&gt;
U=(eye(N+1)+(dt*K)/2)\((eye(N+1)-(K*dt)/2)*U);&lt;br /&gt;
sol(j+1,:)= U'; % Guardamos solucion&lt;br /&gt;
end&lt;br /&gt;
%Dibujamos la solucion&lt;br /&gt;
[xx,tt]=meshgrid(x,t);&lt;br /&gt;
surf(xx,tt,sol);&lt;br /&gt;
}}&lt;br /&gt;
[[Archivo:nur.jpg|500px|thumb|centro|Gráfica concentración / espacio-tiempo. Resolución por el método del trapecio.]]&lt;br /&gt;
&lt;br /&gt;
==== Resolución por método de Euler explícito ====&lt;br /&gt;
{{matlab| codigo=&lt;br /&gt;
%Datos&lt;br /&gt;
L=5; %Longitud de varilla&lt;br /&gt;
T=5; %tiempo final&lt;br /&gt;
q=1;&lt;br /&gt;
%Discretización temporal y espacial&lt;br /&gt;
dx=0.1; % Paso en espacio&lt;br /&gt;
N=L/dx; %Número de subintervalos&lt;br /&gt;
x=0:dx:L; % Vector de espacio&lt;br /&gt;
dt=dx/20; % Paso en tiempo&lt;br /&gt;
t=0:dt:T; % Vector de tiempos&lt;br /&gt;
% Matriz de coeficientes. Aproximacion de -q*u_xx&lt;br /&gt;
K=2*diag(ones(1,N+1))-diag(ones(1,N),1)-diag(ones(1,N),-1);&lt;br /&gt;
K(1,2)=-2;&lt;br /&gt;
K(N+1,N)=-2;&lt;br /&gt;
K=q*K/dx^2;&lt;br /&gt;
% Calculamos u0 condición inicial&lt;br /&gt;
u0=[zeros(1,1+N*3/5),3*ones(1,N*2/5)]';&lt;br /&gt;
% F=0 (no la consideramos)&lt;br /&gt;
sol(1,:)=u0'; % Guardamos la solucion&lt;br /&gt;
U=u0; % Inicializacion&lt;br /&gt;
% Calculamos U_n -&amp;gt; U_n+1&lt;br /&gt;
%Aplicamos método Euler explícito&lt;br /&gt;
for j=1:length(t)-1 &lt;br /&gt;
k1=-K*U; % Calculamos k1=h*f(tn,yn)&lt;br /&gt;
k2=-K*(U+dt*k1); % Calculamos k2=h*f(tn+h/2,yn+1/2*k1)&lt;br /&gt;
% Meto los datos en el vector&lt;br /&gt;
U=U+(dt/2)*(k1+k2);&lt;br /&gt;
sol(j+1,:)= U'; % Guardamos solucion&lt;br /&gt;
end&lt;br /&gt;
%Dibujamos la solucion&lt;br /&gt;
[xx,tt]=meshgrid(x,t);&lt;br /&gt;
surf(xx,tt,sol);&lt;br /&gt;
}}&lt;br /&gt;
[[Archivo:mig.jpg|500px|thumb|centro|Gráfica concentración / espacio-tiempo. Resolución por el método de Euler explícito.]]&lt;br /&gt;
&lt;br /&gt;
==== Resolución por método de Euler implícito ====&lt;br /&gt;
{{matlab| codigo=&lt;br /&gt;
%Datos&lt;br /&gt;
L=5; %Longitud de varilla&lt;br /&gt;
T=5;&lt;br /&gt;
q=1;&lt;br /&gt;
%Discretización temporal y espacial&lt;br /&gt;
dx=0.1; % Paso en espacio&lt;br /&gt;
N=L/dx; %Número de subintervalos&lt;br /&gt;
h=L/N;&lt;br /&gt;
x=0:h:L; % Vector de espacio&lt;br /&gt;
dt=h/20; % Paso en tiempo&lt;br /&gt;
t=0:dt:T; % Vector de tiempos&lt;br /&gt;
% Matriz de coeficientes. Aproximacion de -q*u_xx&lt;br /&gt;
K=2*diag(ones(1,N+1))-diag(ones(1,N),1)-diag(ones(1,N),-1);&lt;br /&gt;
K(1,2)=-2;&lt;br /&gt;
K(N+1,N)=-2;&lt;br /&gt;
K=q*K/h^2;&lt;br /&gt;
% Calculamos u0 condición inicial&lt;br /&gt;
u0=[zeros(1,1+N*3/5),3*ones(1,N*2/5)]';&lt;br /&gt;
% F=0 (no la consideramos)&lt;br /&gt;
sol(1,:)=u0'; % Guardamos la solucion&lt;br /&gt;
U=u0; % Inicializacion&lt;br /&gt;
% Calculamos U_n -&amp;gt; U_n+1&lt;br /&gt;
% Aplicamos método implícito&lt;br /&gt;
for j=1:length(t)-1 &lt;br /&gt;
U=U-dt*K*U; &lt;br /&gt;
sol(j+1,:)= U'; % Guardamos solucion&lt;br /&gt;
end&lt;br /&gt;
%Dibujamos la solucion&lt;br /&gt;
[xx,tt]=meshgrid(x,t);&lt;br /&gt;
surf(xx,tt,sol);&lt;br /&gt;
}}&lt;br /&gt;
[[Archivo:migap.jpg|500px|thumb|centro|Gráfica concentración / espacio-tiempo. Resolución por el método de Euler implícito.]]&lt;br /&gt;
&lt;br /&gt;
==== Resolución por método de Euler modificado ====&lt;br /&gt;
{{matlab| codigo=&lt;br /&gt;
%Datos&lt;br /&gt;
L=5; %Longitud de varilla&lt;br /&gt;
T=5;&lt;br /&gt;
q=1;&lt;br /&gt;
%Discretización temporal y espacial&lt;br /&gt;
dx=0.1; % Paso en espacio&lt;br /&gt;
N=L/dx; %Número de subintervalos&lt;br /&gt;
h=L/N;&lt;br /&gt;
x=0:h:L; % Vector de espacio&lt;br /&gt;
dt=h/20; % Paso en tiempo&lt;br /&gt;
t=0:dt:T; % Vector de tiempos&lt;br /&gt;
% Matriz de coeficientes. Aproximacion de -q*u_xx&lt;br /&gt;
K=2*diag(ones(1,N+1))-diag(ones(1,N),1)-diag(ones(1,N),-1);&lt;br /&gt;
K(1,2)=-2;&lt;br /&gt;
K(N+1,N)=-2;&lt;br /&gt;
K=q*K/h^2;&lt;br /&gt;
% Calculamos u0 condición inicial&lt;br /&gt;
u0=[zeros(1,1+N*3/5),3*ones(1,N*2/5)]';&lt;br /&gt;
% F=0 (no la consideramos)&lt;br /&gt;
sol(1,:)=u0'; % Guardamos la solucion&lt;br /&gt;
U=u0; % Inicializacion&lt;br /&gt;
% Calculamos U_n -&amp;gt; U_n+1&lt;br /&gt;
for j=1:length(t)-1 &lt;br /&gt;
k1=-K*U; % Calculamos k1=h*f(tn,yn)&lt;br /&gt;
k2=-K*(U+dt*k1); % Calculamos k2=h*f(tn+h/2,yn+1/2*k1)&lt;br /&gt;
% Meto los datos en el vector&lt;br /&gt;
U=U+(dt/2)*(k1+k2);&lt;br /&gt;
sol(j+1,:)= U'; % Guardamos solucion&lt;br /&gt;
end&lt;br /&gt;
%Dibujamos la solucion&lt;br /&gt;
[xx,tt]=meshgrid(x,t);&lt;br /&gt;
surf(xx,tt,sol);&lt;br /&gt;
}}&lt;br /&gt;
[[Archivo: mig.jpg|500px|thumb|centro|Gráfica concentración / espacio-tiempo. Resolución por el método de Euler modificado.]]&lt;br /&gt;
&lt;br /&gt;
== Conservación de la masa total de contaminante ==&lt;br /&gt;
A continuación demostraremos que la masa total de contaminante en el tubo se conserva a lo largo del tiempo, que se puede deducir a partir de la ecuación sin tener que resolverla. Integramos la ecuación y debido a las condiciones de frontera:&lt;br /&gt;
&amp;lt;math&amp;gt;\frac d {dt} \int_0^5 u(x,t)\,dx= \int_0^5 u_{xx}(x,t)\,dx= u_x(x,t)|_0^5=0&amp;lt;/math&amp;gt;&lt;br /&gt;
{{matlab| codigo=&lt;br /&gt;
%Datos&lt;br /&gt;
L=5; %Longitud de varilla&lt;br /&gt;
T=5;&lt;br /&gt;
q=1;&lt;br /&gt;
%Discretización temporal y espacial&lt;br /&gt;
N=500; %Número de subintervalos&lt;br /&gt;
h=L/N;&lt;br /&gt;
x=0:h:L; % Vector de espacio&lt;br /&gt;
dt=h/4; % Paso en tiempo&lt;br /&gt;
t=0:dt:T; % Vector de tiempos&lt;br /&gt;
% Matriz de coeficientes. Aproximacion de -q*u_xx&lt;br /&gt;
K=2*diag(ones(1,N+1))-diag(ones(1,N),1)-diag(ones(1,N),-1);&lt;br /&gt;
K(1,2)=-2;&lt;br /&gt;
K(N+1,N)=-2;&lt;br /&gt;
K=q*K/h^2;&lt;br /&gt;
% Calculamos u0 condición inicial&lt;br /&gt;
u0=[zeros(1,1+N*3/5),3*ones(1,N*2/5)]';&lt;br /&gt;
% F=0 (no la consideramos)&lt;br /&gt;
sol(1,:)=u0'; % Guardamos la solucion&lt;br /&gt;
U=u0; % Inicializacion&lt;br /&gt;
% Calculamos U_n -&amp;gt; U_n+1&lt;br /&gt;
for j=1:length(t)-1 &lt;br /&gt;
U=(eye(N+1)+dt*K)\(U+dt*F); &lt;br /&gt;
sol(j+1,:)= U'; % Guardamos solucion&lt;br /&gt;
end&lt;br /&gt;
% Calculamos el area de la funcion en cada tiempo (area = cantidad de contaminante)&lt;br /&gt;
areas=zeros(1,length(t));&lt;br /&gt;
for i=1:length(t)&lt;br /&gt;
f=sol(i,:);&lt;br /&gt;
w=trapz(x,f);&lt;br /&gt;
area(i)=w;&lt;br /&gt;
end&lt;br /&gt;
%Dibujamos&lt;br /&gt;
plot(t,area)&lt;br /&gt;
xlabel('Tiempo')&lt;br /&gt;
ylabel('Cantidad de contaminante')&lt;br /&gt;
}}&lt;br /&gt;
[[Archivo:aleeex.jpg|500px|thumb|centro|Conservación masa total de contaminante]]&lt;br /&gt;
[[Archivo:gime.jpg|500px|thumb|centro|Conservación masa total de contaminante]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Concentración a lo largo del tiempo==&lt;br /&gt;
La concentración de la sustancia contaminante en la varilla varía con el tiempo, pero en un cierto momento esta concentración se va homogeneizando, y deja de variar, entrando en un estado estacionario::&lt;br /&gt;
&amp;lt;math&amp;gt; u_t(x,t)- D*u_{xx}(x,t)=0 &amp;lt;/math&amp;gt; :    &lt;br /&gt;
&amp;lt;math&amp;gt; u_t(x,t)=0 \rightarrow D*u_{xx}(x,t)=0 &amp;lt;/math&amp;gt; :&lt;br /&gt;
&amp;lt;math&amp;gt; u=c_1*x+c_2 &amp;lt;/math&amp;gt; &lt;br /&gt;
Utizando Matlab comprobaremos que &amp;lt;math&amp;gt; c_1=0 &amp;lt;/math&amp;gt; &amp;lt;math&amp;gt; c_2=1.17 &amp;lt;/math&amp;gt;&lt;br /&gt;
Para tiempos grandes la concentración se estabiliza en torno a 1.17 en toda la varilla, de forma que la solución se asemejará a una función lineal constante.&lt;br /&gt;
&lt;br /&gt;
{{matlab| codigo=&lt;br /&gt;
%Datos&lt;br /&gt;
L=5; %Longitud de varilla&lt;br /&gt;
T=50;&lt;br /&gt;
q=1;&lt;br /&gt;
%Discretización temporal y espacial&lt;br /&gt;
dx=0.1; % Paso en espacio&lt;br /&gt;
N=L/dx; %Número de subintervalos&lt;br /&gt;
h=L/N;&lt;br /&gt;
x=0:h:L; % Vector de espacio&lt;br /&gt;
dt=h/4; % Paso en tiempo&lt;br /&gt;
t=0:dt:T; % Vector de tiempos&lt;br /&gt;
% Matriz de coeficientes. Aproximacion de -q*u_xx&lt;br /&gt;
K=2*diag(ones(1,N+1))-diag(ones(1,N),1)-diag(ones(1,N),-1);&lt;br /&gt;
K(1,2)=-2;&lt;br /&gt;
K(N+1,N)=-2;&lt;br /&gt;
K=q*K/h^2;&lt;br /&gt;
% Calculamos u0 condición inicial&lt;br /&gt;
u0=[zeros(1,1+N*3/5),3*ones(1,N*2/5)]';&lt;br /&gt;
% F=0 (no la consideramos)&lt;br /&gt;
sol(1,:)=u0'; % Guardamos la solucion&lt;br /&gt;
U=u0; % Inicializacion&lt;br /&gt;
% Calculamos U_n -&amp;gt; U_n+1&lt;br /&gt;
%Aplicamos método trapecio método del trapecio&lt;br /&gt;
for j=1:length(t)-1&lt;br /&gt;
U=(eye(N+1)+(dt*K)/2)\((eye(N+1)-(K*dt)/2)*U);&lt;br /&gt;
sol(j+1,:)= U'; % Guardamos solucion&lt;br /&gt;
end&lt;br /&gt;
%Solución estacionaria&lt;br /&gt;
a=sol(length(t),:);&lt;br /&gt;
b=sol(1,:);&lt;br /&gt;
c=sol((length(t)-1)/50+1,:);&lt;br /&gt;
d=sol((length(t)-1)*2/50+1,:);&lt;br /&gt;
e=sol((length(t)-1)*10/50+1,:);&lt;br /&gt;
hold on&lt;br /&gt;
plot(x,a,'xk','linewidth',2);&lt;br /&gt;
plot(x,b,'-m','linewidth',1);&lt;br /&gt;
plot(x,c,'-g','linewidth',1);&lt;br /&gt;
plot(x,d,'-y','linewidth',1);&lt;br /&gt;
plot(x,e,'-b','linewidth',1);&lt;br /&gt;
legend('u(50s)','u(0s)','u(1s)','u(2s)','u(10s)');&lt;br /&gt;
xlabel('Posición en la varilla')&lt;br /&gt;
ylabel('Concentracion')&lt;br /&gt;
hold off&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Soluciones(t).jpg|500px|thumb|centro|Soluciones a lo largo del tiempo]]&lt;br /&gt;
&lt;br /&gt;
La distancia entre la solución estacionaria y las soluciones para los siguientes instantes: 0s, 1s, 2s y 10s; se puede apreciar en la imagen anterior. &lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
Una vez analizado los datos, se demuestra que la sustancia contaminante se estabiliza en t=9.98s, con un error del 5%.&lt;br /&gt;
&lt;br /&gt;
En el caso de que consideremos Δx'=Δx/10,el tiempo en el que se estabiliza la cantidad de sustancia contaminante será t=10s, dato que será más preciso debido a que el paso realizado en el programa es menor.&lt;br /&gt;
&lt;br /&gt;
==Nueva condición de frontera==&lt;br /&gt;
&lt;br /&gt;
Si colocamos un limpiador, que elimina la sustancia contaminante, en el extremo izquierdo de la varilla, varían las condiciones de contorno del problema. En este caso, en el extremo izquierdo, la condición inicial será de tipo Dirichlet ya que se esta variación esta provocada por un mecanismo físico externo que actúa sobre el extremo. &amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;math&amp;gt;\begin{cases}&lt;br /&gt;
u_t(x,t)- D u_{xx}(x,t)= 0 ; x\in (0,5) \\&lt;br /&gt;
u(x,0)=u_0 , x\in (0,5) \\&lt;br /&gt;
u(0,t)=0 , u_x(5,t)=0 ; t\geq 0&lt;br /&gt;
\end{cases}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Dadas las nuevas condiciones, resolvemos el problema por el método de diferencias finitas con la ayuda de Matlab.&lt;br /&gt;
&lt;br /&gt;
{{matlab| codigo=&lt;br /&gt;
%Datos&lt;br /&gt;
L=5; %Longitud de varilla&lt;br /&gt;
T=5; %tiempo final&lt;br /&gt;
q=1;&lt;br /&gt;
%Discretización temporal y espacial&lt;br /&gt;
dx=0.1; % Paso en espacio&lt;br /&gt;
N=L/dx; %Número de subintervalos&lt;br /&gt;
x=0:dx:L;% Vector de espacio&lt;br /&gt;
dt=dx/4; % Paso en tiempo&lt;br /&gt;
t=0:dt:T; % Vector de tiempos&lt;br /&gt;
% Matriz de coeficientes. Aproximacion de -q*u_xx&lt;br /&gt;
K=2*diag(ones(1,N))-diag(ones(1,N-1),1)-diag(ones(1,N-1),-1);&lt;br /&gt;
K(N,N-1)=-2;&lt;br /&gt;
K=q*K/dx^2;&lt;br /&gt;
% Matriz F&lt;br /&gt;
F=zeros(N,1);&lt;br /&gt;
% Calculamos u0 condición inicial&lt;br /&gt;
u0=[zeros(1,N*3/5),3*ones(1,N*2/5)]';&lt;br /&gt;
sol(1,:)=[0,u0']; &lt;br /&gt;
U=u0; % Inicializacion&lt;br /&gt;
% Calculamos U_n -&amp;gt; U_n+1&lt;br /&gt;
%Aplicamos método trapecio método del trapecio&lt;br /&gt;
for j=1:length(t)-1&lt;br /&gt;
U=(eye(N)+(dt*K))\(dt*F+U);&lt;br /&gt;
sol(j+1,:)= [0,U'];&lt;br /&gt;
end&lt;br /&gt;
%Dibujamos la solucion&lt;br /&gt;
[xx,tt]=meshgrid(x,t);&lt;br /&gt;
surf(xx,tt,sol);&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Xata.JPG|500px|thumb|centro|Solución al variar las condiciones de contorno del problema.]]&lt;br /&gt;
&lt;br /&gt;
Observando la gráfica, y por la presencia del limpiador en el extremo de la varilla, para tiempos grandes la cantidad de sustancia contaminante será nula en toda la varilla. En realidad, esto no es del todo cierto puesto que la sustancia no llega a eliminarse completamente, ya que el limpiador solo elimina la sustancia contaminante en el extremo izquierdo. Aunque la concentración en todos los puntos disminuye de manera exponencial, permanece asintótica a 0.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Trapotito.JPG|500px|thumb|centro|Momento en el que se estabiliza con la presencia del limpiador.]]&lt;br /&gt;
&lt;br /&gt;
==Resolución por el método de Fourier==&lt;br /&gt;
&lt;br /&gt;
Las condiciones de frontera del problema son homogéneas, por lo que podemos aplicar este método de cálculo, sin realizar ningún cambio.&lt;br /&gt;
El primer paso es resolver el problema de autovalores asociado::&lt;br /&gt;
&amp;lt;math&amp;gt;\begin{cases}&lt;br /&gt;
y''+λy=0 x \in (0,5) \\&lt;br /&gt;
y'(0)=0 \\&lt;br /&gt;
y'(5)=0&lt;br /&gt;
\end{cases}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
Realizando analíticamente el cálculo, obtenemos los siguientes autovalores y autofunciones::&lt;br /&gt;
&amp;lt;math&amp;gt; λ_k=\frac{k^2π^2}{25}  →  φ_k=sin\frac{kπ}{5}x , k=0,1,2,3... &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Las condiciones de frontera e iniciales serían las siguientes en términos de la serie de Fourier::&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \sum_{k=0}^∞c_k(t)φ_k(x)=0  ,   \sum_{k=0}^∞a_k(t)φ_k(x)\begin{cases} 0, x≤3 \\ 3, x&amp;gt;3\end{cases} &amp;lt;/math&amp;gt;&lt;br /&gt;
 &lt;br /&gt;
Y ensayamos soluciones de la forma::&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; u(x,t)=\sum_{k=0}^∞T_k(t)φ_k(x)=\sum_{k=0}^∞T_k(t)sin\frac{kπ}{5}x &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Relacionando los resultados obtenidos en el problema de autovalores y el problema de difusión de la sustancia contaminante obtenemos lo siguiente::&lt;br /&gt;
&amp;lt;math&amp;gt;\begin{cases} T'_k(t)+μ_kT_k(t)=c_k=0 \\ T_k(0)=a_k \end{cases} &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
La solución de este último problema de valor inicial es::&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;T_k(t)=a_ke^{-μ_kt}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
De esta manera obtenemos la solución final::&lt;br /&gt;
&amp;lt;math&amp;gt; u(x,t)=\sum_{k=0}^∞a_ke^{-μ_kt}sin\frac{kπ}{5}x  &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Resolveremos a través de Matlab, con una serie de Fourier de 1,3,10 y 20 términos.&lt;br /&gt;
{{matlab| codigo=&lt;br /&gt;
%Datos&lt;br /&gt;
L=5; %Longitud de varilla&lt;br /&gt;
T=0.5; %tiempo final&lt;br /&gt;
q=1;&lt;br /&gt;
%Discretización temporal y espacial&lt;br /&gt;
dx=0.1; % Paso en espacio&lt;br /&gt;
N=L/dx; %Número de subintervalos&lt;br /&gt;
x=0:dx:L;% Vector de espacio&lt;br /&gt;
dt=dx/4; % Paso en tiempo&lt;br /&gt;
t=0:dt:T; % Vector de tiempos&lt;br /&gt;
M=50; %Número de términos&lt;br /&gt;
sol=zeros(length(t),N+1);&lt;br /&gt;
%Aplicamos Fourier&lt;br /&gt;
for j=1:M&lt;br /&gt;
switch phi=sin((j*pi*x))&lt;br /&gt;
case x&amp;lt;3&lt;br /&gt;
a=(trapz(x,0*phi))/(trapz(x,phi.^2));&lt;br /&gt;
otherwise, &lt;br /&gt;
a=(trapz(x,3*phi))/(trapz(x,phi.^2));&lt;br /&gt;
end&lt;br /&gt;
TT=a*exp(-(j^2)*(pi^2)*t/25);&lt;br /&gt;
sol=sol+TT'*phi;&lt;br /&gt;
end&lt;br /&gt;
%Dibujamos la solucion&lt;br /&gt;
[xx,tt]=meshgrid(x,t);&lt;br /&gt;
surf(xx,tt,sol);&lt;br /&gt;
}}&lt;/div&gt;</summary>
		<author><name>Karlo André</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Difusi%C3%B3n_de_una_sustancia_contaminante_(Grupo_10)&amp;diff=12987</id>
		<title>Difusión de una sustancia contaminante (Grupo 10)</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Difusi%C3%B3n_de_una_sustancia_contaminante_(Grupo_10)&amp;diff=12987"/>
				<updated>2014-05-19T19:18:54Z</updated>
		
		<summary type="html">&lt;p&gt;Karlo André: /* Resolución por el método de Fourier */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;''''''Texto en negrita''''''[[Archivo:nuriat.png|200px|thumb|right|Tubo con sustancia contaminante]]&lt;br /&gt;
La difusión implica un movimiento espontáneo y desordenado de moléculas individuales y, especialmente, nos interesa la difusión de moléculas de una sustancia disuelta en otra.&lt;br /&gt;
&lt;br /&gt;
La difusión de una sustancia puede considerarse análoga al flujo de calor, y la ley de Fick establece que el ritmo de difusión por unidad de superficie, en dirección perpendicular a ésta, es proporcional al gradiente de la concentración de esa sustancia en esa dirección. La concentración es la masa de la sustancia por unidad de volumen, y el gradiente de concentración es la variación de concentración por unidad de distancia.&lt;br /&gt;
&lt;br /&gt;
Para determinar como se distribuye la concentración de una sustancia contaminante tomaremos como ejemplo un tubo largo compuesto por dos sustancias de las cuáles una de ellas es contaminante.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
= Simplificación del problema =&lt;br /&gt;
&lt;br /&gt;
Para que este problema resulte más sencillo aplicaremos una serie de condiciones, facilitando el cálculo del mismo.&lt;br /&gt;
&lt;br /&gt;
En primer lugar denotaremos su concentración &amp;lt;math&amp;gt; u &amp;lt;/math&amp;gt;, concentración de contaminante en cada posición del tubo y constante en cada sección, medida en &amp;lt;math&amp;gt; \frac{mol}{m^2*s} &amp;lt;/math&amp;gt;. &lt;br /&gt;
&lt;br /&gt;
Supondremos que el tubo mide L=5 m, ocupando el intervalo &amp;lt;math&amp;gt; x \in (0,L) &amp;lt;/math&amp;gt;, y que la concentración es la misma en cualquier punto de la sección transversal del tubo. Por tanto, la concentración dependerá unicamente de dos variables &amp;lt;math&amp;gt; u = u(x,t) &amp;lt;/math&amp;gt;. En los extremos se ha colocado un aislante que hace que el flujo de contaminante al exterior del tubo sea nulo. Además, consideraremos la simplificación de que se trata de un tubo aislado por sus laterales, pero abierto por las bases del cilindro.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Ley de conservación de masa ==&lt;br /&gt;
&lt;br /&gt;
Tras una serie de experimentos realizados por Lavoisier, se pusieron de manifiesto que si tenemos en cuenta todas las sustancias que forman parte en una reacción química y todos los productos formados, nunca varía la masa. Esta ley exige que no haya una generación espontánea de materia. Es decir, en la región del espacio estudiada, no existe entrada o salida por un punto cualquiera (frontera o interior), la masa en esta región se mantiene constante. Esta es la ley de la conservación de la masa, que podemos enunciarla, pues, de la siguiente manera: &amp;lt;br /&amp;gt;&lt;br /&gt;
''&amp;quot;En toda reacción química la masa se conserva, esto es, la masa total de los reactivos es igual a la masa total de los productos&amp;quot;'' &amp;lt;br /&amp;gt;&lt;br /&gt;
La ley de conservación de masas exige que no haya una generación espontánea de materia. Es decir, en la región del espacio estudiada, no existe entrada o salida por un punto cualquiera (frontera o interior), la masa en esta región se mantiene constante.&lt;br /&gt;
&lt;br /&gt;
Esta suposición, en términos de variación de masa, puede quedar determinada como:&lt;br /&gt;
&lt;br /&gt;
''Variación de la masa en el tiempo = flujo de masa a través de la frontera por unidad de tiempo + flujo de masa generada en el interior por unidad de tiempo. ''&lt;br /&gt;
&lt;br /&gt;
== Ley de Fick ==&lt;br /&gt;
Se trata de una ley cuantitativa en forma diferencial que describe la difusión de materia o energía en un medio en el que inicialmente existe equilibrio químico o físico. Esta ley se trata de una generalización de los fenómenos descritos por la '''Ley de Fourier''', ya que esta es una consideración concreta del calor.&lt;br /&gt;
&lt;br /&gt;
La ley de Fick anuncia que en el caso de existir diferencias de concentración en cualquier especie, el paso de estas especies se llevará a cabo desde las regiones con mayor concentración a las de menor. Formulado matemáticamente:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;F(x,t)=-D\frac{\partial u}{\partial x}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Donde &amp;lt;math&amp;gt;F&amp;lt;/math&amp;gt; es el flujo de la sustancia y &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; el coeficiente de difusión, que representa la facilidad en que un soluto particular se mueve por un disolvente determinado.&lt;br /&gt;
&lt;br /&gt;
La ley de Fick establece que el flujo de difusión del contaminante es proporcional a la variación de concentración:&lt;br /&gt;
&amp;lt;math&amp;gt; F(x,t)=-D\frac{\partial u}{\partial x} &amp;lt;/math&amp;gt;&lt;br /&gt;
donde D es el coeficiente de difusión (medido en &amp;lt;math&amp;gt; \frac{m^2}{s} &amp;lt;/math&amp;gt;), que depende de las propiedades físicas de los compuestos, y que se supone constante D=1.&lt;br /&gt;
&lt;br /&gt;
= Modelización de la ecuación diferencial =&lt;br /&gt;
&lt;br /&gt;
Aplicando el principio de conservación de la masa y la ley de Fourier, definimos la variable &amp;lt;math&amp;gt; u(x,t)&amp;lt;/math&amp;gt; en unidades de sustancia por área, es decir, concentración por superficie del tubo.&lt;br /&gt;
&lt;br /&gt;
Consideramos &amp;lt;math&amp;gt; A &amp;lt;/math&amp;gt; como variable superficie, y tomamos un pequeño trozo, definido por &amp;lt;math&amp;gt;\Delta x&amp;lt;/math&amp;gt;. Entonces, para obtener la variación de la masa en el tiempo:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; A u(x,t) \Delta x &amp;lt;/math&amp;gt; &lt;br /&gt;
&lt;br /&gt;
Y derivando en el tiempo:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; A u_t(x,t) \Delta x &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
obtenemos el primer término de la igualdad anteriormente enunciada.&lt;br /&gt;
&lt;br /&gt;
En el segundo, consideramos nulo el flujo de masa en los puntos interiores por unidad de tiempo, pues suponemos la tubería perfecta y sin sumideros.&lt;br /&gt;
&lt;br /&gt;
Como la superﬁcie lateral del tubo está aislada, solamente habrá flujo de sustancia en la dirección del eje &amp;lt;math&amp;gt;x&amp;lt;/math&amp;gt;. Si &amp;lt;math&amp;gt;F(x,t)&amp;gt; 0&amp;lt;/math&amp;gt; pensamos que el ﬂujo va hacia la derecha, si &amp;lt;math&amp;gt;F(x,t)&amp;lt; 0&amp;lt;/math&amp;gt;, este va a hacia la izquierda. El ﬂujo de&lt;br /&gt;
calor en un intervalo &amp;lt;math&amp;gt;[x, x + ∆x ] &amp;lt;/math&amp;gt; viene dado dado por:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;F(x,t)A-F(x+\Delta x, t)A&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Con lo que queda &amp;lt;math&amp;gt;A u_t(x,t) \Delta x = F(x,t)A-F(x+\Delta x, t)A&amp;lt;/math&amp;gt;, y al dividir &amp;lt;math&amp;gt;A \Delta x&amp;lt;/math&amp;gt;, nos queda &amp;lt;math&amp;gt;u_t(x,t)= \frac {F(x,t)-F(x+\Delta x, t)}{\Delta x}&amp;lt;/math&amp;gt;. &amp;lt;br /&amp;gt;&lt;br /&gt;
Como &amp;lt;math&amp;gt;\Delta x \rightarrow 0 &amp;lt;/math&amp;gt;, &amp;lt;math&amp;gt;u_t(x,t)= -F_x(x,t)&amp;lt;/math&amp;gt;, y aplicando ley de Fick, &amp;lt;math&amp;gt;u_t(x,t)=-\frac{\partial }{\partial x}(-D u_x(x,t)) = D u_xx(x,t) &amp;lt;/math&amp;gt;.&amp;lt;br /&amp;gt;&lt;br /&gt;
Con lo que resulta una ecuación en derivadas parciales que determina la concentración de sustancia:&lt;br /&gt;
&amp;lt;math&amp;gt;u_t(x,t)- D u_xx(x,t)= 0 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Planteamiento del problema bien propuesto ==&lt;br /&gt;
&lt;br /&gt;
Suponemos que el flujo será nula al haber una tapa en los extremos del tubo, con lo que el problema bien propuesto quedaría::&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\begin{cases}&lt;br /&gt;
u_t(x,t)- D u_{xx}(x,t)= 0 ; x\in (0,5) \\&lt;br /&gt;
u(x,0)=u_0 , x\in (0,5) \\&lt;br /&gt;
u_x(0,t)=0 , u_x(5,t)=0 ; t\geq 0&lt;br /&gt;
\end{cases}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= Resolución numérica =&lt;br /&gt;
Para la resolución de ésta ecuación necesitaremos mínimo tres condiciones, dos de las cuales serán de contorno, y la otra será la condición inicial.Si suponemos &amp;lt;math&amp;gt;u_0(x,0)&amp;lt;/math&amp;gt;, entonces:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; u_0(x,0)=\begin{cases}&lt;br /&gt;
0,  si x\leq 3\\&lt;br /&gt;
3,  si x&amp;gt;3&lt;br /&gt;
\end{cases}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Resolución por el método de las diferencias finitas ==&lt;br /&gt;
En el primer caso particular que estudiaremos, trataremos de obtener una resolución numérica del problema anteriormente planteado, dónde tenemos las fronteras aisladas y las concentraciones iniciales conocidas:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\begin{cases}&lt;br /&gt;
u_t(x,t)- D u_{xx}(x,t)= 0; x\in (0,5), t\geq 0 \\&lt;br /&gt;
u_0(x,0), x\in (0,5) \\&lt;br /&gt;
u_x(0,t)=0, u_x(5,t)=0, t\geq 0&lt;br /&gt;
\end{cases}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
La resolución por el método de las diferencias finitas se basa en expresar el problema continuo a un sistema discreto de ecuaciones diferenciales de primer orden. Particularizando para nuestro caso con las condiciones dadas, el problema planteado sería:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\begin{cases}&lt;br /&gt;
u'_n(t)+\frac{-u_{n-1}(t)+2u_n(t)+u_{n+1}(t)}{h^2} \\&lt;br /&gt;
\frac{u_1(t)-u_-1(t)}{2h} \rightarrow u_1(t)=u_-1(t) \\&lt;br /&gt;
\frac{u_{N+1}(t)-u_{N-1}(t)}{2h} \rightarrow u_{N+1}(t)=u_{N-1}\\&lt;br /&gt;
u_n(0)=u^0(x)&lt;br /&gt;
\end{cases}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Por lo que tenemos un sistema de la forma:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\begin{cases}&lt;br /&gt;
U'(t)+KU(t)=F(t)=0\\&lt;br /&gt;
U(0)=U^0&lt;br /&gt;
\end{cases}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Con &amp;lt;math&amp;gt;N+1&amp;lt;/math&amp;gt; ecuaciones.&lt;br /&gt;
==== Resolución por método del trapecio ====&lt;br /&gt;
Suponiendo que en el instante inicial se verifica  :&amp;lt;math&amp;gt;&lt;br /&gt;
u(x,0)=\left\{\begin{matrix}\\0, x≤3\\3, x&amp;gt;3\end{matrix}\right.&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Si tomamos &amp;lt;math&amp;gt;\triangle t= \triangle x/4&amp;lt;/math&amp;gt; en &amp;lt;math&amp;gt;t\in\ [0,5]&amp;lt;/math&amp;gt;, con &amp;lt;math&amp;gt;\triangle x=0.1&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
El código en MATLAB del método sería:&lt;br /&gt;
&lt;br /&gt;
{{matlab| codigo=&lt;br /&gt;
%Datos&lt;br /&gt;
L=5; %Longitud de varilla&lt;br /&gt;
T=5; %tiempo final&lt;br /&gt;
q=1;&lt;br /&gt;
%Discretización temporal y espacial&lt;br /&gt;
dx=0.1; % Paso en espacio&lt;br /&gt;
N=L/dx; %Número de subintervalos&lt;br /&gt;
x=0:dx:L; % Vector de espacio&lt;br /&gt;
dt=dx/4; % Paso en tiempo&lt;br /&gt;
t=0:dt:T; % Vector de tiempos&lt;br /&gt;
% Matriz de coeficientes. Aproximacion de -q*u_xx&lt;br /&gt;
K=2*diag(ones(1,N+1))-diag(ones(1,N),1)-diag(ones(1,N),-1);&lt;br /&gt;
K(1,2)=-2;&lt;br /&gt;
K(N+1,N)=-2;&lt;br /&gt;
K=q*K/dx^2;&lt;br /&gt;
% Calculamos u0 condición inicial&lt;br /&gt;
u0=[zeros(1,1+N*3/5),3*ones(1,N*2/5)]';&lt;br /&gt;
% F=0 (no la consideramos)&lt;br /&gt;
sol(1,:)=u0'; % Guardamos la solucion&lt;br /&gt;
U=u0; % Inicializacion&lt;br /&gt;
% Calculamos U_n -&amp;gt; U_n+1&lt;br /&gt;
%Aplicamos método trapecio método del trapecio&lt;br /&gt;
for j=1:length(t)-1&lt;br /&gt;
U=(eye(N+1)+(dt*K)/2)\((eye(N+1)-(K*dt)/2)*U);&lt;br /&gt;
sol(j+1,:)= U'; % Guardamos solucion&lt;br /&gt;
end&lt;br /&gt;
%Dibujamos la solucion&lt;br /&gt;
[xx,tt]=meshgrid(x,t);&lt;br /&gt;
surf(xx,tt,sol);&lt;br /&gt;
}}&lt;br /&gt;
[[Archivo:nur.jpg|500px|thumb|centro|Gráfica concentración / espacio-tiempo. Resolución por el método del trapecio.]]&lt;br /&gt;
&lt;br /&gt;
==== Resolución por método de Euler explícito ====&lt;br /&gt;
{{matlab| codigo=&lt;br /&gt;
%Datos&lt;br /&gt;
L=5; %Longitud de varilla&lt;br /&gt;
T=5; %tiempo final&lt;br /&gt;
q=1;&lt;br /&gt;
%Discretización temporal y espacial&lt;br /&gt;
dx=0.1; % Paso en espacio&lt;br /&gt;
N=L/dx; %Número de subintervalos&lt;br /&gt;
x=0:dx:L; % Vector de espacio&lt;br /&gt;
dt=dx/20; % Paso en tiempo&lt;br /&gt;
t=0:dt:T; % Vector de tiempos&lt;br /&gt;
% Matriz de coeficientes. Aproximacion de -q*u_xx&lt;br /&gt;
K=2*diag(ones(1,N+1))-diag(ones(1,N),1)-diag(ones(1,N),-1);&lt;br /&gt;
K(1,2)=-2;&lt;br /&gt;
K(N+1,N)=-2;&lt;br /&gt;
K=q*K/dx^2;&lt;br /&gt;
% Calculamos u0 condición inicial&lt;br /&gt;
u0=[zeros(1,1+N*3/5),3*ones(1,N*2/5)]';&lt;br /&gt;
% F=0 (no la consideramos)&lt;br /&gt;
sol(1,:)=u0'; % Guardamos la solucion&lt;br /&gt;
U=u0; % Inicializacion&lt;br /&gt;
% Calculamos U_n -&amp;gt; U_n+1&lt;br /&gt;
%Aplicamos método Euler explícito&lt;br /&gt;
for j=1:length(t)-1 &lt;br /&gt;
k1=-K*U; % Calculamos k1=h*f(tn,yn)&lt;br /&gt;
k2=-K*(U+dt*k1); % Calculamos k2=h*f(tn+h/2,yn+1/2*k1)&lt;br /&gt;
% Meto los datos en el vector&lt;br /&gt;
U=U+(dt/2)*(k1+k2);&lt;br /&gt;
sol(j+1,:)= U'; % Guardamos solucion&lt;br /&gt;
end&lt;br /&gt;
%Dibujamos la solucion&lt;br /&gt;
[xx,tt]=meshgrid(x,t);&lt;br /&gt;
surf(xx,tt,sol);&lt;br /&gt;
}}&lt;br /&gt;
[[Archivo:mig.jpg|500px|thumb|centro|Gráfica concentración / espacio-tiempo. Resolución por el método de Euler explícito.]]&lt;br /&gt;
&lt;br /&gt;
==== Resolución por método de Euler implícito ====&lt;br /&gt;
{{matlab| codigo=&lt;br /&gt;
%Datos&lt;br /&gt;
L=5; %Longitud de varilla&lt;br /&gt;
T=5;&lt;br /&gt;
q=1;&lt;br /&gt;
%Discretización temporal y espacial&lt;br /&gt;
dx=0.1; % Paso en espacio&lt;br /&gt;
N=L/dx; %Número de subintervalos&lt;br /&gt;
h=L/N;&lt;br /&gt;
x=0:h:L; % Vector de espacio&lt;br /&gt;
dt=h/20; % Paso en tiempo&lt;br /&gt;
t=0:dt:T; % Vector de tiempos&lt;br /&gt;
% Matriz de coeficientes. Aproximacion de -q*u_xx&lt;br /&gt;
K=2*diag(ones(1,N+1))-diag(ones(1,N),1)-diag(ones(1,N),-1);&lt;br /&gt;
K(1,2)=-2;&lt;br /&gt;
K(N+1,N)=-2;&lt;br /&gt;
K=q*K/h^2;&lt;br /&gt;
% Calculamos u0 condición inicial&lt;br /&gt;
u0=[zeros(1,1+N*3/5),3*ones(1,N*2/5)]';&lt;br /&gt;
% F=0 (no la consideramos)&lt;br /&gt;
sol(1,:)=u0'; % Guardamos la solucion&lt;br /&gt;
U=u0; % Inicializacion&lt;br /&gt;
% Calculamos U_n -&amp;gt; U_n+1&lt;br /&gt;
% Aplicamos método implícito&lt;br /&gt;
for j=1:length(t)-1 &lt;br /&gt;
U=U-dt*K*U; &lt;br /&gt;
sol(j+1,:)= U'; % Guardamos solucion&lt;br /&gt;
end&lt;br /&gt;
%Dibujamos la solucion&lt;br /&gt;
[xx,tt]=meshgrid(x,t);&lt;br /&gt;
surf(xx,tt,sol);&lt;br /&gt;
}}&lt;br /&gt;
[[Archivo:migap.jpg|500px|thumb|centro|Gráfica concentración / espacio-tiempo. Resolución por el método de Euler implícito.]]&lt;br /&gt;
&lt;br /&gt;
==== Resolución por método de Euler modificado ====&lt;br /&gt;
{{matlab| codigo=&lt;br /&gt;
%Datos&lt;br /&gt;
L=5; %Longitud de varilla&lt;br /&gt;
T=5;&lt;br /&gt;
q=1;&lt;br /&gt;
%Discretización temporal y espacial&lt;br /&gt;
dx=0.1; % Paso en espacio&lt;br /&gt;
N=L/dx; %Número de subintervalos&lt;br /&gt;
h=L/N;&lt;br /&gt;
x=0:h:L; % Vector de espacio&lt;br /&gt;
dt=h/20; % Paso en tiempo&lt;br /&gt;
t=0:dt:T; % Vector de tiempos&lt;br /&gt;
% Matriz de coeficientes. Aproximacion de -q*u_xx&lt;br /&gt;
K=2*diag(ones(1,N+1))-diag(ones(1,N),1)-diag(ones(1,N),-1);&lt;br /&gt;
K(1,2)=-2;&lt;br /&gt;
K(N+1,N)=-2;&lt;br /&gt;
K=q*K/h^2;&lt;br /&gt;
% Calculamos u0 condición inicial&lt;br /&gt;
u0=[zeros(1,1+N*3/5),3*ones(1,N*2/5)]';&lt;br /&gt;
% F=0 (no la consideramos)&lt;br /&gt;
sol(1,:)=u0'; % Guardamos la solucion&lt;br /&gt;
U=u0; % Inicializacion&lt;br /&gt;
% Calculamos U_n -&amp;gt; U_n+1&lt;br /&gt;
for j=1:length(t)-1 &lt;br /&gt;
k1=-K*U; % Calculamos k1=h*f(tn,yn)&lt;br /&gt;
k2=-K*(U+dt*k1); % Calculamos k2=h*f(tn+h/2,yn+1/2*k1)&lt;br /&gt;
% Meto los datos en el vector&lt;br /&gt;
U=U+(dt/2)*(k1+k2);&lt;br /&gt;
sol(j+1,:)= U'; % Guardamos solucion&lt;br /&gt;
end&lt;br /&gt;
%Dibujamos la solucion&lt;br /&gt;
[xx,tt]=meshgrid(x,t);&lt;br /&gt;
surf(xx,tt,sol);&lt;br /&gt;
}}&lt;br /&gt;
[[Archivo: mig.jpg|500px|thumb|centro|Gráfica concentración / espacio-tiempo. Resolución por el método de Euler modificado.]]&lt;br /&gt;
&lt;br /&gt;
== Conservación de la masa total de contaminante ==&lt;br /&gt;
A continuación demostraremos que la masa total de contaminante en el tubo se conserva a lo largo del tiempo, que se puede deducir a partir de la ecuación sin tener que resolverla. Integramos la ecuación y debido a las condiciones de frontera:&lt;br /&gt;
&amp;lt;math&amp;gt;\frac d {dt} \int_0^5 u(x,t)\,dx= \int_0^5 u_{xx}(x,t)\,dx= u_x(x,t)|_0^5=0&amp;lt;/math&amp;gt;&lt;br /&gt;
{{matlab| codigo=&lt;br /&gt;
%Datos&lt;br /&gt;
L=5; %Longitud de varilla&lt;br /&gt;
T=5;&lt;br /&gt;
q=1;&lt;br /&gt;
%Discretización temporal y espacial&lt;br /&gt;
N=500; %Número de subintervalos&lt;br /&gt;
h=L/N;&lt;br /&gt;
x=0:h:L; % Vector de espacio&lt;br /&gt;
dt=h/4; % Paso en tiempo&lt;br /&gt;
t=0:dt:T; % Vector de tiempos&lt;br /&gt;
% Matriz de coeficientes. Aproximacion de -q*u_xx&lt;br /&gt;
K=2*diag(ones(1,N+1))-diag(ones(1,N),1)-diag(ones(1,N),-1);&lt;br /&gt;
K(1,2)=-2;&lt;br /&gt;
K(N+1,N)=-2;&lt;br /&gt;
K=q*K/h^2;&lt;br /&gt;
% Calculamos u0 condición inicial&lt;br /&gt;
u0=[zeros(1,1+N*3/5),3*ones(1,N*2/5)]';&lt;br /&gt;
% F=0 (no la consideramos)&lt;br /&gt;
sol(1,:)=u0'; % Guardamos la solucion&lt;br /&gt;
U=u0; % Inicializacion&lt;br /&gt;
% Calculamos U_n -&amp;gt; U_n+1&lt;br /&gt;
for j=1:length(t)-1 &lt;br /&gt;
U=(eye(N+1)+dt*K)\(U+dt*F); &lt;br /&gt;
sol(j+1,:)= U'; % Guardamos solucion&lt;br /&gt;
end&lt;br /&gt;
% Calculamos el area de la funcion en cada tiempo (area = cantidad de contaminante)&lt;br /&gt;
areas=zeros(1,length(t));&lt;br /&gt;
for i=1:length(t)&lt;br /&gt;
f=sol(i,:);&lt;br /&gt;
w=trapz(x,f);&lt;br /&gt;
area(i)=w;&lt;br /&gt;
end&lt;br /&gt;
%Dibujamos&lt;br /&gt;
plot(t,area)&lt;br /&gt;
xlabel('Tiempo')&lt;br /&gt;
ylabel('Cantidad de contaminante')&lt;br /&gt;
}}&lt;br /&gt;
[[Archivo:aleeex.jpg|500px|thumb|centro|Conservación masa total de contaminante]]&lt;br /&gt;
[[Archivo:gime.jpg|500px|thumb|centro|Conservación masa total de contaminante]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Concentración a lo largo del tiempo==&lt;br /&gt;
La concentración de la sustancia contaminante en la varilla varía con el tiempo, pero en un cierto momento esta concentración se va homogeneizando, y deja de variar, entrando en un estado estacionario::&lt;br /&gt;
&amp;lt;math&amp;gt; u_t(x,t)- D*u_{xx}(x,t)=0 &amp;lt;/math&amp;gt; :    &lt;br /&gt;
&amp;lt;math&amp;gt; u_t(x,t)=0 \rightarrow D*u_{xx}(x,t)=0 &amp;lt;/math&amp;gt; :&lt;br /&gt;
&amp;lt;math&amp;gt; u=c_1*x+c_2 &amp;lt;/math&amp;gt; &lt;br /&gt;
Utizando Matlab comprobaremos que &amp;lt;math&amp;gt; c_1=0 &amp;lt;/math&amp;gt; &amp;lt;math&amp;gt; c_2=1.17 &amp;lt;/math&amp;gt;&lt;br /&gt;
Para tiempos grandes la concentración se estabiliza en torno a 1.17 en toda la varilla, de forma que la solución se asemejará a una función lineal constante.&lt;br /&gt;
&lt;br /&gt;
{{matlab| codigo=&lt;br /&gt;
%Datos&lt;br /&gt;
L=5; %Longitud de varilla&lt;br /&gt;
T=50;&lt;br /&gt;
q=1;&lt;br /&gt;
%Discretización temporal y espacial&lt;br /&gt;
dx=0.1; % Paso en espacio&lt;br /&gt;
N=L/dx; %Número de subintervalos&lt;br /&gt;
h=L/N;&lt;br /&gt;
x=0:h:L; % Vector de espacio&lt;br /&gt;
dt=h/4; % Paso en tiempo&lt;br /&gt;
t=0:dt:T; % Vector de tiempos&lt;br /&gt;
% Matriz de coeficientes. Aproximacion de -q*u_xx&lt;br /&gt;
K=2*diag(ones(1,N+1))-diag(ones(1,N),1)-diag(ones(1,N),-1);&lt;br /&gt;
K(1,2)=-2;&lt;br /&gt;
K(N+1,N)=-2;&lt;br /&gt;
K=q*K/h^2;&lt;br /&gt;
% Calculamos u0 condición inicial&lt;br /&gt;
u0=[zeros(1,1+N*3/5),3*ones(1,N*2/5)]';&lt;br /&gt;
% F=0 (no la consideramos)&lt;br /&gt;
sol(1,:)=u0'; % Guardamos la solucion&lt;br /&gt;
U=u0; % Inicializacion&lt;br /&gt;
% Calculamos U_n -&amp;gt; U_n+1&lt;br /&gt;
%Aplicamos método trapecio método del trapecio&lt;br /&gt;
for j=1:length(t)-1&lt;br /&gt;
U=(eye(N+1)+(dt*K)/2)\((eye(N+1)-(K*dt)/2)*U);&lt;br /&gt;
sol(j+1,:)= U'; % Guardamos solucion&lt;br /&gt;
end&lt;br /&gt;
%Solución estacionaria&lt;br /&gt;
a=sol(length(t),:);&lt;br /&gt;
b=sol(1,:);&lt;br /&gt;
c=sol((length(t)-1)/50+1,:);&lt;br /&gt;
d=sol((length(t)-1)*2/50+1,:);&lt;br /&gt;
e=sol((length(t)-1)*10/50+1,:);&lt;br /&gt;
hold on&lt;br /&gt;
plot(x,a,'xk','linewidth',2);&lt;br /&gt;
plot(x,b,'-m','linewidth',1);&lt;br /&gt;
plot(x,c,'-g','linewidth',1);&lt;br /&gt;
plot(x,d,'-y','linewidth',1);&lt;br /&gt;
plot(x,e,'-b','linewidth',1);&lt;br /&gt;
legend('u(50s)','u(0s)','u(1s)','u(2s)','u(10s)');&lt;br /&gt;
xlabel('Posición en la varilla')&lt;br /&gt;
ylabel('Concentracion')&lt;br /&gt;
hold off&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Soluciones(t).jpg|500px|thumb|centro|Soluciones a lo largo del tiempo]]&lt;br /&gt;
&lt;br /&gt;
La distancia entre la solución estacionaria y las soluciones para los siguientes instantes: 0s, 1s, 2s y 10s; se puede apreciar en la imagen anterior. &lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
Una vez analizado los datos, se demuestra que la sustancia contaminante se estabiliza en t=9.98s, con un error del 5%.&lt;br /&gt;
&lt;br /&gt;
En el caso de que consideremos Δx'=Δx/10,el tiempo en el que se estabiliza la cantidad de sustancia contaminante será t=10s, dato que será más preciso debido a que el paso realizado en el programa es menor.&lt;br /&gt;
&lt;br /&gt;
==Nueva condición de frontera==&lt;br /&gt;
&lt;br /&gt;
Si colocamos un limpiador, que elimina la sustancia contaminante, en el extremo izquierdo de la varilla, varían las condiciones de contorno del problema. En este caso, en el extremo izquierdo, la condición inicial será de tipo Dirichlet ya que se esta variación esta provocada por un mecanismo físico externo que actúa sobre el extremo. &amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;math&amp;gt;\begin{cases}&lt;br /&gt;
u_t(x,t)- D u_{xx}(x,t)= 0 ; x\in (0,5) \\&lt;br /&gt;
u(x,0)=u_0 , x\in (0,5) \\&lt;br /&gt;
u(0,t)=0 , u_x(5,t)=0 ; t\geq 0&lt;br /&gt;
\end{cases}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Dadas las nuevas condiciones, resolvemos el problema por el método de diferencias finitas con la ayuda de Matlab.&lt;br /&gt;
&lt;br /&gt;
{{matlab| codigo=&lt;br /&gt;
%Datos&lt;br /&gt;
L=5; %Longitud de varilla&lt;br /&gt;
T=5; %tiempo final&lt;br /&gt;
q=1;&lt;br /&gt;
%Discretización temporal y espacial&lt;br /&gt;
dx=0.1; % Paso en espacio&lt;br /&gt;
N=L/dx; %Número de subintervalos&lt;br /&gt;
x=0:dx:L;% Vector de espacio&lt;br /&gt;
dt=dx/4; % Paso en tiempo&lt;br /&gt;
t=0:dt:T; % Vector de tiempos&lt;br /&gt;
% Matriz de coeficientes. Aproximacion de -q*u_xx&lt;br /&gt;
K=2*diag(ones(1,N))-diag(ones(1,N-1),1)-diag(ones(1,N-1),-1);&lt;br /&gt;
K(N,N-1)=-2;&lt;br /&gt;
K=q*K/dx^2;&lt;br /&gt;
% Matriz F&lt;br /&gt;
F=zeros(N,1);&lt;br /&gt;
% Calculamos u0 condición inicial&lt;br /&gt;
u0=[zeros(1,N*3/5),3*ones(1,N*2/5)]';&lt;br /&gt;
sol(1,:)=[0,u0']; &lt;br /&gt;
U=u0; % Inicializacion&lt;br /&gt;
% Calculamos U_n -&amp;gt; U_n+1&lt;br /&gt;
%Aplicamos método trapecio método del trapecio&lt;br /&gt;
for j=1:length(t)-1&lt;br /&gt;
U=(eye(N)+(dt*K))\(dt*F+U);&lt;br /&gt;
sol(j+1,:)= [0,U'];&lt;br /&gt;
end&lt;br /&gt;
%Dibujamos la solucion&lt;br /&gt;
[xx,tt]=meshgrid(x,t);&lt;br /&gt;
surf(xx,tt,sol);&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Xata.JPG|500px|thumb|centro|Solución al variar las condiciones de contorno del problema.]]&lt;br /&gt;
&lt;br /&gt;
Observando la gráfica, y por la presencia del limpiador en el extremo de la varilla, para tiempos grandes la cantidad de sustancia contaminante será nula en toda la varilla. En realidad, esto no es del todo cierto puesto que la sustancia no llega a eliminarse completamente, ya que el limpiador solo elimina la sustancia contaminante en el extremo izquierdo. Aunque la concentración en todos los puntos disminuye de manera exponencial, permanece asintótica a 0.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Trapotito.JPG|500px|thumb|centro|Momento en el que se estabiliza con la presencia del limpiador.]]&lt;br /&gt;
&lt;br /&gt;
==Resolución por el método de Fourier==&lt;br /&gt;
&lt;br /&gt;
Las condiciones de frontera del problema son homogéneas, por lo que podemos aplicar este método de cálculo, sin realizar ningún cambio.&lt;br /&gt;
El primer paso es resolver el problema de autovalores asociado::&lt;br /&gt;
&amp;lt;math&amp;gt;\begin{cases}&lt;br /&gt;
y''+λy=0 x \in (0,5) \\&lt;br /&gt;
y'(0)=0 \\&lt;br /&gt;
y'(5)=0&lt;br /&gt;
\end{cases}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
Realizando analíticamente el cálculo, obtenemos los siguientes autovalores y autofunciones::&lt;br /&gt;
&amp;lt;math&amp;gt; λ_k=\frac{k^2π^2}{25}  →  φ_k=sin\frac{kπ}{5}x , k=0,1,2,3... &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Las condiciones de frontera e iniciales serían las siguientes en términos de la serie de Fourier::&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \sum_{k=0}^∞c_k(t)φ_k(x)=0  ,   \sum_{k=0}^∞a_k(t)φ_k(x)\begin{cases} 0, x≤3 \\ 3, x&amp;gt;3\end{cases} &amp;lt;/math&amp;gt;&lt;br /&gt;
 &lt;br /&gt;
Y ensayamos soluciones de la forma::&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; u(x,t)=\sum_{k=0}^∞T_k(t)φ_k(x)=\sum_{k=0}^∞T_k(t)sin\frac{kπ}{5}x &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Relacionando los resultados obtenidos en el problema de autovalores y el problema de difusión de la sustancia contaminante obtenemos lo siguiente::&lt;br /&gt;
&amp;lt;math&amp;gt;\begin{cases} T'_k(t)+μ_kT_k(t)=c_k=0 \\ T_k(0)=a_k \end{cases} &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
La solución de este último problema de valor inicial es::&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;T_k(t)=a_ke^{-μ_kt}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
De esta manera obtenemos la solución final::&lt;br /&gt;
&amp;lt;math&amp;gt; u(x,t)=\sum_{k=0}^∞a_ke^{-μ_kt}sin\frac{kπ}{5}x  &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Resolveremos a través de Matlab, con una serie de Fourier de 1,3,10 y 20 términos.&lt;/div&gt;</summary>
		<author><name>Karlo André</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Difusi%C3%B3n_de_una_sustancia_contaminante_(Grupo_10)&amp;diff=12946</id>
		<title>Difusión de una sustancia contaminante (Grupo 10)</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Difusi%C3%B3n_de_una_sustancia_contaminante_(Grupo_10)&amp;diff=12946"/>
				<updated>2014-05-19T18:17:16Z</updated>
		
		<summary type="html">&lt;p&gt;Karlo André: /* Resolución por el método de Fourier */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;''''''Texto en negrita''''''[[Archivo:nuriat.png|200px|thumb|right|Tubo con sustancia contaminante]]&lt;br /&gt;
La difusión implica un movimiento espontáneo y desordenado de moléculas individuales y, especialmente, nos interesa la difusión de moléculas de una sustancia disuelta en otra.&lt;br /&gt;
&lt;br /&gt;
La difusión de una sustancia puede considerarse análoga al flujo de calor, y la ley de Fick establece que el ritmo de difusión por unidad de superficie, en dirección perpendicular a ésta, es proporcional al gradiente de la concentración de esa sustancia en esa dirección. La concentración es la masa de la sustancia por unidad de volumen, y el gradiente de concentración es la variación de concentración por unidad de distancia.&lt;br /&gt;
&lt;br /&gt;
Para determinar como se distribuye la concentración de una sustancia contaminante tomaremos como ejemplo un tubo largo compuesto por dos sustancias de las cuáles una de ellas es contaminante.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
= Simplificación del problema =&lt;br /&gt;
&lt;br /&gt;
Para que este problema resulte más sencillo aplicaremos una serie de condiciones, facilitando el cálculo del mismo.&lt;br /&gt;
&lt;br /&gt;
En primer lugar denotaremos su concentración &amp;lt;math&amp;gt; u &amp;lt;/math&amp;gt;, concentración de contaminante en cada posición del tubo y constante en cada sección, medida en &amp;lt;math&amp;gt; \frac{mol}{m^2*s} &amp;lt;/math&amp;gt;. &lt;br /&gt;
&lt;br /&gt;
Supondremos que el tubo mide L=5 m, ocupando el intervalo &amp;lt;math&amp;gt; x \in (0,L) &amp;lt;/math&amp;gt;, y que la concentración es la misma en cualquier punto de la sección transversal del tubo. Por tanto, la concentración dependerá unicamente de dos variables &amp;lt;math&amp;gt; u = u(x,t) &amp;lt;/math&amp;gt;. En los extremos se ha colocado un aislante que hace que el flujo de contaminante al exterior del tubo sea nulo. Además, consideraremos la simplificación de que se trata de un tubo aislado por sus laterales, pero abierto por las bases del cilindro.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Ley de conservación de masa ==&lt;br /&gt;
&lt;br /&gt;
Tras una serie de experimentos realizados por Lavoisier, se pusieron de manifiesto que si tenemos en cuenta todas las sustancias que forman parte en una reacción química y todos los productos formados, nunca varía la masa. Esta ley exige que no haya una generación espontánea de materia. Es decir, en la región del espacio estudiada, no existe entrada o salida por un punto cualquiera (frontera o interior), la masa en esta región se mantiene constante. Esta es la ley de la conservación de la masa, que podemos enunciarla, pues, de la siguiente manera: &amp;lt;br /&amp;gt;&lt;br /&gt;
''&amp;quot;En toda reacción química la masa se conserva, esto es, la masa total de los reactivos es igual a la masa total de los productos&amp;quot;'' &amp;lt;br /&amp;gt;&lt;br /&gt;
La ley de conservación de masas exige que no haya una generación espontánea de materia. Es decir, en la región del espacio estudiada, no existe entrada o salida por un punto cualquiera (frontera o interior), la masa en esta región se mantiene constante.&lt;br /&gt;
&lt;br /&gt;
Esta suposición, en términos de variación de masa, puede quedar determinada como:&lt;br /&gt;
&lt;br /&gt;
''Variación de la masa en el tiempo = flujo de masa a través de la frontera por unidad de tiempo + flujo de masa generada en el interior por unidad de tiempo. ''&lt;br /&gt;
&lt;br /&gt;
== Ley de Fick ==&lt;br /&gt;
Se trata de una ley cuantitativa en forma diferencial que describe la difusión de materia o energía en un medio en el que inicialmente existe equilibrio químico o físico. Esta ley se trata de una generalización de los fenómenos descritos por la '''Ley de Fourier''', ya que esta es una consideración concreta del calor.&lt;br /&gt;
&lt;br /&gt;
La ley de Fick anuncia que en el caso de existir diferencias de concentración en cualquier especie, el paso de estas especies se llevará a cabo desde las regiones con mayor concentración a las de menor. Formulado matemáticamente:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;F(x,t)=-D\frac{\partial u}{\partial x}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Donde &amp;lt;math&amp;gt;F&amp;lt;/math&amp;gt; es el flujo de la sustancia y &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; el coeficiente de difusión, que representa la facilidad en que un soluto particular se mueve por un disolvente determinado.&lt;br /&gt;
&lt;br /&gt;
La ley de Fick establece que el flujo de difusión del contaminante es proporcional a la variación de concentración:&lt;br /&gt;
&amp;lt;math&amp;gt; F(x,t)=-D\frac{\partial u}{\partial x} &amp;lt;/math&amp;gt;&lt;br /&gt;
donde D es el coeficiente de difusión (medido en &amp;lt;math&amp;gt; \frac{m^2}{s} &amp;lt;/math&amp;gt;), que depende de las propiedades físicas de los compuestos, y que se supone constante D=1.&lt;br /&gt;
&lt;br /&gt;
= Modelización de la ecuación diferencial =&lt;br /&gt;
&lt;br /&gt;
Aplicando el principio de conservación de la masa y la ley de Fourier, definimos la variable &amp;lt;math&amp;gt; u(x,t)&amp;lt;/math&amp;gt; en unidades de sustancia por área, es decir, concentración por superficie del tubo.&lt;br /&gt;
&lt;br /&gt;
Consideramos &amp;lt;math&amp;gt; A &amp;lt;/math&amp;gt; como variable superficie, y tomamos un pequeño trozo, definido por &amp;lt;math&amp;gt;\Delta x&amp;lt;/math&amp;gt;. Entonces, para obtener la variación de la masa en el tiempo:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; A u(x,t) \Delta x &amp;lt;/math&amp;gt; &lt;br /&gt;
&lt;br /&gt;
Y derivando en el tiempo:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; A u_t(x,t) \Delta x &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
obtenemos el primer término de la igualdad anteriormente enunciada.&lt;br /&gt;
&lt;br /&gt;
En el segundo, consideramos nulo el flujo de masa en los puntos interiores por unidad de tiempo, pues suponemos la tubería perfecta y sin sumideros.&lt;br /&gt;
&lt;br /&gt;
Como la superﬁcie lateral del tubo está aislada, solamente habrá flujo de sustancia en la dirección del eje &amp;lt;math&amp;gt;x&amp;lt;/math&amp;gt;. Si &amp;lt;math&amp;gt;F(x,t)&amp;gt; 0&amp;lt;/math&amp;gt; pensamos que el ﬂujo va hacia la derecha, si &amp;lt;math&amp;gt;F(x,t)&amp;lt; 0&amp;lt;/math&amp;gt;, este va a hacia la izquierda. El ﬂujo de&lt;br /&gt;
calor en un intervalo &amp;lt;math&amp;gt;[x, x + ∆x ] &amp;lt;/math&amp;gt; viene dado dado por:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;F(x,t)A-F(x+\Delta x, t)A&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Con lo que queda &amp;lt;math&amp;gt;A u_t(x,t) \Delta x = F(x,t)A-F(x+\Delta x, t)A&amp;lt;/math&amp;gt;, y al dividir &amp;lt;math&amp;gt;A \Delta x&amp;lt;/math&amp;gt;, nos queda &amp;lt;math&amp;gt;u_t(x,t)= \frac {F(x,t)-F(x+\Delta x, t)}{\Delta x}&amp;lt;/math&amp;gt;. &amp;lt;br /&amp;gt;&lt;br /&gt;
Como &amp;lt;math&amp;gt;\Delta x \rightarrow 0 &amp;lt;/math&amp;gt;, &amp;lt;math&amp;gt;u_t(x,t)= -F_x(x,t)&amp;lt;/math&amp;gt;, y aplicando ley de Fick, &amp;lt;math&amp;gt;u_t(x,t)=-\frac{\partial }{\partial x}(-D u_x(x,t)) = D u_xx(x,t) &amp;lt;/math&amp;gt;.&amp;lt;br /&amp;gt;&lt;br /&gt;
Con lo que resulta una ecuación en derivadas parciales que determina la concentración de sustancia:&lt;br /&gt;
&amp;lt;math&amp;gt;u_t(x,t)- D u_xx(x,t)= 0 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Planteamiento del problema bien propuesto ==&lt;br /&gt;
&lt;br /&gt;
Suponemos que el flujo será nula al haber una tapa en los extremos del tubo, con lo que el problema bien propuesto quedaría::&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\begin{cases}&lt;br /&gt;
u_t(x,t)- D u_{xx}(x,t)= 0 ; x\in (0,5) \\&lt;br /&gt;
u(x,0)=u_0 , x\in (0,5) \\&lt;br /&gt;
u_x(0,t)=0 , u_x(5,t)=0 ; t\geq 0&lt;br /&gt;
\end{cases}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= Resolución numérica =&lt;br /&gt;
Para la resolución de ésta ecuación necesitaremos mínimo tres condiciones, dos de las cuales serán de contorno, y la otra será la condición inicial.Si suponemos &amp;lt;math&amp;gt;u_0(x,0)&amp;lt;/math&amp;gt;, entonces:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; u_0(x,0)=\begin{cases}&lt;br /&gt;
0,  si x\leq 3\\&lt;br /&gt;
3,  si x&amp;gt;3&lt;br /&gt;
\end{cases}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Resolución por el método de las diferencias finitas ==&lt;br /&gt;
En el primer caso particular que estudiaremos, trataremos de obtener una resolución numérica del problema anteriormente planteado, dónde tenemos las fronteras aisladas y las concentraciones iniciales conocidas:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\begin{cases}&lt;br /&gt;
u_t(x,t)- D u_{xx}(x,t)= 0; x\in (0,5), t\geq 0 \\&lt;br /&gt;
u_0(x,0), x\in (0,5) \\&lt;br /&gt;
u_x(0,t)=0, u_x(5,t)=0, t\geq 0&lt;br /&gt;
\end{cases}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
La resolución por el método de las diferencias finitas se basa en expresar el problema continuo a un sistema discreto de ecuaciones diferenciales de primer orden. Particularizando para nuestro caso con las condiciones dadas, el problema planteado sería:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\begin{cases}&lt;br /&gt;
u'_n(t)+\frac{-u_{n-1}(t)+2u_n(t)+u_{n+1}(t)}{h^2} \\&lt;br /&gt;
\frac{u_1(t)-u_-1(t)}{2h} \rightarrow u_1(t)=u_-1(t) \\&lt;br /&gt;
\frac{u_{N+1}(t)-u_{N-1}(t)}{2h} \rightarrow u_{N+1}(t)=u_{N-1}\\&lt;br /&gt;
u_n(0)=u^0(x)&lt;br /&gt;
\end{cases}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Por lo que tenemos un sistema de la forma:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\begin{cases}&lt;br /&gt;
U'(t)+KU(t)=F(t)=0\\&lt;br /&gt;
U(0)=U^0&lt;br /&gt;
\end{cases}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Con &amp;lt;math&amp;gt;N+1&amp;lt;/math&amp;gt; ecuaciones.&lt;br /&gt;
==== Resolución por método del trapecio ====&lt;br /&gt;
Suponiendo que en el instante inicial se verifica  :&amp;lt;math&amp;gt;&lt;br /&gt;
u(x,0)=\left\{\begin{matrix}\\0, x≤3\\3, x&amp;gt;3\end{matrix}\right.&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Si tomamos &amp;lt;math&amp;gt;\triangle t= \triangle x/4&amp;lt;/math&amp;gt; en &amp;lt;math&amp;gt;t\in\ [0,5]&amp;lt;/math&amp;gt;, con &amp;lt;math&amp;gt;\triangle x=0.1&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
El código en MATLAB del método sería:&lt;br /&gt;
&lt;br /&gt;
{{matlab| codigo=&lt;br /&gt;
%Datos&lt;br /&gt;
L=5; %Longitud de varilla&lt;br /&gt;
T=5; %tiempo final&lt;br /&gt;
q=1;&lt;br /&gt;
%Discretización temporal y espacial&lt;br /&gt;
dx=0.1; % Paso en espacio&lt;br /&gt;
N=L/dx; %Número de subintervalos&lt;br /&gt;
x=0:dx:L; % Vector de espacio&lt;br /&gt;
dt=dx/4; % Paso en tiempo&lt;br /&gt;
t=0:dt:T; % Vector de tiempos&lt;br /&gt;
% Matriz de coeficientes. Aproximacion de -q*u_xx&lt;br /&gt;
K=2*diag(ones(1,N+1))-diag(ones(1,N),1)-diag(ones(1,N),-1);&lt;br /&gt;
K(1,2)=-2;&lt;br /&gt;
K(N+1,N)=-2;&lt;br /&gt;
K=q*K/dx^2;&lt;br /&gt;
% Calculamos u0 condición inicial&lt;br /&gt;
u0=[zeros(1,1+N*3/5),3*ones(1,N*2/5)]';&lt;br /&gt;
% F=0 (no la consideramos)&lt;br /&gt;
sol(1,:)=u0'; % Guardamos la solucion&lt;br /&gt;
U=u0; % Inicializacion&lt;br /&gt;
% Calculamos U_n -&amp;gt; U_n+1&lt;br /&gt;
%Aplicamos método trapecio método del trapecio&lt;br /&gt;
for j=1:length(t)-1&lt;br /&gt;
U=(eye(N+1)+(dt*K)/2)\((eye(N+1)-(K*dt)/2)*U);&lt;br /&gt;
sol(j+1,:)= U'; % Guardamos solucion&lt;br /&gt;
end&lt;br /&gt;
%Dibujamos la solucion&lt;br /&gt;
[xx,tt]=meshgrid(x,t);&lt;br /&gt;
surf(xx,tt,sol);&lt;br /&gt;
}}&lt;br /&gt;
[[Archivo:nur.jpg|500px|thumb|centro|Gráfica concentración / espacio-tiempo. Resolución por el método del trapecio.]]&lt;br /&gt;
&lt;br /&gt;
==== Resolución por método de Euler explícito ====&lt;br /&gt;
{{matlab| codigo=&lt;br /&gt;
%Datos&lt;br /&gt;
L=5; %Longitud de varilla&lt;br /&gt;
T=5; %tiempo final&lt;br /&gt;
q=1;&lt;br /&gt;
%Discretización temporal y espacial&lt;br /&gt;
dx=0.1; % Paso en espacio&lt;br /&gt;
N=L/dx; %Número de subintervalos&lt;br /&gt;
x=0:dx:L; % Vector de espacio&lt;br /&gt;
dt=dx/20; % Paso en tiempo&lt;br /&gt;
t=0:dt:T; % Vector de tiempos&lt;br /&gt;
% Matriz de coeficientes. Aproximacion de -q*u_xx&lt;br /&gt;
K=2*diag(ones(1,N+1))-diag(ones(1,N),1)-diag(ones(1,N),-1);&lt;br /&gt;
K(1,2)=-2;&lt;br /&gt;
K(N+1,N)=-2;&lt;br /&gt;
K=q*K/dx^2;&lt;br /&gt;
% Calculamos u0 condición inicial&lt;br /&gt;
u0=[zeros(1,1+N*3/5),3*ones(1,N*2/5)]';&lt;br /&gt;
% F=0 (no la consideramos)&lt;br /&gt;
sol(1,:)=u0'; % Guardamos la solucion&lt;br /&gt;
U=u0; % Inicializacion&lt;br /&gt;
% Calculamos U_n -&amp;gt; U_n+1&lt;br /&gt;
%Aplicamos método Euler explícito&lt;br /&gt;
for j=1:length(t)-1 &lt;br /&gt;
k1=-K*U; % Calculamos k1=h*f(tn,yn)&lt;br /&gt;
k2=-K*(U+dt*k1); % Calculamos k2=h*f(tn+h/2,yn+1/2*k1)&lt;br /&gt;
% Meto los datos en el vector&lt;br /&gt;
U=U+(dt/2)*(k1+k2);&lt;br /&gt;
sol(j+1,:)= U'; % Guardamos solucion&lt;br /&gt;
end&lt;br /&gt;
%Dibujamos la solucion&lt;br /&gt;
[xx,tt]=meshgrid(x,t);&lt;br /&gt;
surf(xx,tt,sol);&lt;br /&gt;
}}&lt;br /&gt;
[[Archivo:mig.jpg|500px|thumb|centro|Gráfica concentración / espacio-tiempo. Resolución por el método de Euler explícito.]]&lt;br /&gt;
&lt;br /&gt;
==== Resolución por método de Euler implícito ====&lt;br /&gt;
{{matlab| codigo=&lt;br /&gt;
%Datos&lt;br /&gt;
L=5; %Longitud de varilla&lt;br /&gt;
T=5;&lt;br /&gt;
q=1;&lt;br /&gt;
%Discretización temporal y espacial&lt;br /&gt;
dx=0.1; % Paso en espacio&lt;br /&gt;
N=L/dx; %Número de subintervalos&lt;br /&gt;
h=L/N;&lt;br /&gt;
x=0:h:L; % Vector de espacio&lt;br /&gt;
dt=h/20; % Paso en tiempo&lt;br /&gt;
t=0:dt:T; % Vector de tiempos&lt;br /&gt;
% Matriz de coeficientes. Aproximacion de -q*u_xx&lt;br /&gt;
K=2*diag(ones(1,N+1))-diag(ones(1,N),1)-diag(ones(1,N),-1);&lt;br /&gt;
K(1,2)=-2;&lt;br /&gt;
K(N+1,N)=-2;&lt;br /&gt;
K=q*K/h^2;&lt;br /&gt;
% Calculamos u0 condición inicial&lt;br /&gt;
u0=[zeros(1,1+N*3/5),3*ones(1,N*2/5)]';&lt;br /&gt;
% F=0 (no la consideramos)&lt;br /&gt;
sol(1,:)=u0'; % Guardamos la solucion&lt;br /&gt;
U=u0; % Inicializacion&lt;br /&gt;
% Calculamos U_n -&amp;gt; U_n+1&lt;br /&gt;
% Aplicamos método implícito&lt;br /&gt;
for j=1:length(t)-1 &lt;br /&gt;
U=U-dt*K*U; &lt;br /&gt;
sol(j+1,:)= U'; % Guardamos solucion&lt;br /&gt;
end&lt;br /&gt;
%Dibujamos la solucion&lt;br /&gt;
[xx,tt]=meshgrid(x,t);&lt;br /&gt;
surf(xx,tt,sol);&lt;br /&gt;
}}&lt;br /&gt;
[[Archivo:migap.jpg|500px|thumb|centro|Gráfica concentración / espacio-tiempo. Resolución por el método de Euler implícito.]]&lt;br /&gt;
&lt;br /&gt;
==== Resolución por método de Euler modificado ====&lt;br /&gt;
{{matlab| codigo=&lt;br /&gt;
%Datos&lt;br /&gt;
L=5; %Longitud de varilla&lt;br /&gt;
T=5;&lt;br /&gt;
q=1;&lt;br /&gt;
%Discretización temporal y espacial&lt;br /&gt;
dx=0.1; % Paso en espacio&lt;br /&gt;
N=L/dx; %Número de subintervalos&lt;br /&gt;
h=L/N;&lt;br /&gt;
x=0:h:L; % Vector de espacio&lt;br /&gt;
dt=h/20; % Paso en tiempo&lt;br /&gt;
t=0:dt:T; % Vector de tiempos&lt;br /&gt;
% Matriz de coeficientes. Aproximacion de -q*u_xx&lt;br /&gt;
K=2*diag(ones(1,N+1))-diag(ones(1,N),1)-diag(ones(1,N),-1);&lt;br /&gt;
K(1,2)=-2;&lt;br /&gt;
K(N+1,N)=-2;&lt;br /&gt;
K=q*K/h^2;&lt;br /&gt;
% Calculamos u0 condición inicial&lt;br /&gt;
u0=[zeros(1,1+N*3/5),3*ones(1,N*2/5)]';&lt;br /&gt;
% F=0 (no la consideramos)&lt;br /&gt;
sol(1,:)=u0'; % Guardamos la solucion&lt;br /&gt;
U=u0; % Inicializacion&lt;br /&gt;
% Calculamos U_n -&amp;gt; U_n+1&lt;br /&gt;
for j=1:length(t)-1 &lt;br /&gt;
k1=-K*U; % Calculamos k1=h*f(tn,yn)&lt;br /&gt;
k2=-K*(U+dt*k1); % Calculamos k2=h*f(tn+h/2,yn+1/2*k1)&lt;br /&gt;
% Meto los datos en el vector&lt;br /&gt;
U=U+(dt/2)*(k1+k2);&lt;br /&gt;
sol(j+1,:)= U'; % Guardamos solucion&lt;br /&gt;
end&lt;br /&gt;
%Dibujamos la solucion&lt;br /&gt;
[xx,tt]=meshgrid(x,t);&lt;br /&gt;
surf(xx,tt,sol);&lt;br /&gt;
}}&lt;br /&gt;
[[Archivo: mig.jpg|500px|thumb|centro|Gráfica concentración / espacio-tiempo. Resolución por el método de Euler modificado.]]&lt;br /&gt;
&lt;br /&gt;
== Conservación de la masa total de contaminante ==&lt;br /&gt;
A continuación demostraremos que la masa total de contaminante en el tubo se conserva a lo largo del tiempo, que se puede deducir a partir de la ecuación sin tener que resolverla. Integramos la ecuación y debido a las condiciones de frontera:&lt;br /&gt;
&amp;lt;math&amp;gt;\frac d {dt} \int_0^5 u(x,t)\,dx= \int_0^5 u_{xx}(x,t)\,dx= u_x(x,t)|_0^5=0&amp;lt;/math&amp;gt;&lt;br /&gt;
{{matlab| codigo=&lt;br /&gt;
%Datos&lt;br /&gt;
L=5; %Longitud de varilla&lt;br /&gt;
T=5;&lt;br /&gt;
q=1;&lt;br /&gt;
%Discretización temporal y espacial&lt;br /&gt;
N=500; %Número de subintervalos&lt;br /&gt;
h=L/N;&lt;br /&gt;
x=0:h:L; % Vector de espacio&lt;br /&gt;
dt=h/4; % Paso en tiempo&lt;br /&gt;
t=0:dt:T; % Vector de tiempos&lt;br /&gt;
% Matriz de coeficientes. Aproximacion de -q*u_xx&lt;br /&gt;
K=2*diag(ones(1,N+1))-diag(ones(1,N),1)-diag(ones(1,N),-1);&lt;br /&gt;
K(1,2)=-2;&lt;br /&gt;
K(N+1,N)=-2;&lt;br /&gt;
K=q*K/h^2;&lt;br /&gt;
% Calculamos u0 condición inicial&lt;br /&gt;
u0=[zeros(1,1+N*3/5),3*ones(1,N*2/5)]';&lt;br /&gt;
% F=0 (no la consideramos)&lt;br /&gt;
sol(1,:)=u0'; % Guardamos la solucion&lt;br /&gt;
U=u0; % Inicializacion&lt;br /&gt;
% Calculamos U_n -&amp;gt; U_n+1&lt;br /&gt;
for j=1:length(t)-1 &lt;br /&gt;
U=(eye(N+1)+dt*K)\(U+dt*F); &lt;br /&gt;
sol(j+1,:)= U'; % Guardamos solucion&lt;br /&gt;
end&lt;br /&gt;
% Calculamos el area de la funcion en cada tiempo (area = cantidad de contaminante)&lt;br /&gt;
areas=zeros(1,length(t));&lt;br /&gt;
for i=1:length(t)&lt;br /&gt;
f=sol(i,:);&lt;br /&gt;
w=trapz(x,f);&lt;br /&gt;
area(i)=w;&lt;br /&gt;
end&lt;br /&gt;
%Dibujamos&lt;br /&gt;
plot(t,area)&lt;br /&gt;
xlabel('Tiempo')&lt;br /&gt;
ylabel('Cantidad de contaminante')&lt;br /&gt;
}}&lt;br /&gt;
[[Archivo:aleeex.jpg|500px|thumb|centro|Conservación masa total de contaminante]]&lt;br /&gt;
[[Archivo:gime.jpg|500px|thumb|centro|Conservación masa total de contaminante]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Concentración a lo largo del tiempo==&lt;br /&gt;
La concentración de la sustancia contaminante en la varilla varía con el tiempo, pero en un cierto momento esta concentración se va homogeneizando, y deja de variar, entrando en un estado estacionario::&lt;br /&gt;
&amp;lt;math&amp;gt; u_t(x,t)- D*u_{xx}(x,t)=0 &amp;lt;/math&amp;gt; :    &lt;br /&gt;
&amp;lt;math&amp;gt; u_t(x,t)=0 \rightarrow D*u_{xx}(x,t)=0 &amp;lt;/math&amp;gt; :&lt;br /&gt;
&amp;lt;math&amp;gt; u=c_1*x+c_2 &amp;lt;/math&amp;gt; &lt;br /&gt;
Utizando Matlab comprobaremos que &amp;lt;math&amp;gt; c_1=0 &amp;lt;/math&amp;gt; &amp;lt;math&amp;gt; c_2=1.17 &amp;lt;/math&amp;gt;&lt;br /&gt;
Para tiempos grandes la concentración se estabiliza en torno a 1.17 en toda la varilla, de forma que la solución se asemejará a una función lineal constante.&lt;br /&gt;
&lt;br /&gt;
{{matlab| codigo=&lt;br /&gt;
%Datos&lt;br /&gt;
L=5; %Longitud de varilla&lt;br /&gt;
T=50;&lt;br /&gt;
q=1;&lt;br /&gt;
%Discretización temporal y espacial&lt;br /&gt;
dx=0.1; % Paso en espacio&lt;br /&gt;
N=L/dx; %Número de subintervalos&lt;br /&gt;
h=L/N;&lt;br /&gt;
x=0:h:L; % Vector de espacio&lt;br /&gt;
dt=h/4; % Paso en tiempo&lt;br /&gt;
t=0:dt:T; % Vector de tiempos&lt;br /&gt;
% Matriz de coeficientes. Aproximacion de -q*u_xx&lt;br /&gt;
K=2*diag(ones(1,N+1))-diag(ones(1,N),1)-diag(ones(1,N),-1);&lt;br /&gt;
K(1,2)=-2;&lt;br /&gt;
K(N+1,N)=-2;&lt;br /&gt;
K=q*K/h^2;&lt;br /&gt;
% Calculamos u0 condición inicial&lt;br /&gt;
u0=[zeros(1,1+N*3/5),3*ones(1,N*2/5)]';&lt;br /&gt;
% F=0 (no la consideramos)&lt;br /&gt;
sol(1,:)=u0'; % Guardamos la solucion&lt;br /&gt;
U=u0; % Inicializacion&lt;br /&gt;
% Calculamos U_n -&amp;gt; U_n+1&lt;br /&gt;
%Aplicamos método trapecio método del trapecio&lt;br /&gt;
for j=1:length(t)-1&lt;br /&gt;
U=(eye(N+1)+(dt*K)/2)\((eye(N+1)-(K*dt)/2)*U);&lt;br /&gt;
sol(j+1,:)= U'; % Guardamos solucion&lt;br /&gt;
end&lt;br /&gt;
%Solución estacionaria&lt;br /&gt;
a=sol(length(t),:);&lt;br /&gt;
b=sol(1,:);&lt;br /&gt;
c=sol((length(t)-1)/50+1,:);&lt;br /&gt;
d=sol((length(t)-1)*2/50+1,:);&lt;br /&gt;
e=sol((length(t)-1)*10/50+1,:);&lt;br /&gt;
hold on&lt;br /&gt;
plot(x,a,'xk','linewidth',2);&lt;br /&gt;
plot(x,b,'-m','linewidth',1);&lt;br /&gt;
plot(x,c,'-g','linewidth',1);&lt;br /&gt;
plot(x,d,'-y','linewidth',1);&lt;br /&gt;
plot(x,e,'-b','linewidth',1);&lt;br /&gt;
legend('u(50s)','u(0s)','u(1s)','u(2s)','u(10s)');&lt;br /&gt;
xlabel('Posición en la varilla')&lt;br /&gt;
ylabel('Concentracion')&lt;br /&gt;
hold off&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Soluciones(t).jpg|500px|thumb|centro|Soluciones a lo largo del tiempo]]&lt;br /&gt;
&lt;br /&gt;
La distancia entre la solución estacionaria y las soluciones para los siguientes instantes: 0s, 1s, 2s y 10s; se puede apreciar en la imagen anterior. &lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
Una vez analizado los datos, se demuestra que la sustancia contaminante se estabiliza en t=9.98s, con un error del 5%.&lt;br /&gt;
&lt;br /&gt;
En el caso de que consideremos Δx'=Δx/10,el tiempo en el que se estabiliza la cantidad de sustancia contaminante será t=10s, dato que será más preciso debido a que el paso realizado en el programa es menor.&lt;br /&gt;
&lt;br /&gt;
==Nueva condición de frontera==&lt;br /&gt;
&lt;br /&gt;
Si colocamos un limpiador, que elimina la sustancia contaminante, en el extremo izquierdo de la varilla, varían las condiciones de contorno del problema. En este caso, en el extremo izquierdo, la condición inicial será de tipo Dirichlet ya que se esta variación esta provocada por un mecanismo físico externo que actúa sobre el extremo. &amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;math&amp;gt;\begin{cases}&lt;br /&gt;
u_t(x,t)- D u_{xx}(x,t)= 0 ; x\in (0,5) \\&lt;br /&gt;
u(x,0)=u_0 , x\in (0,5) \\&lt;br /&gt;
u(0,t)=0 , u_x(5,t)=0 ; t\geq 0&lt;br /&gt;
\end{cases}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Dadas las nuevas condiciones, resolvemos el problema por el método de diferencias finitas con la ayuda de Matlab.&lt;br /&gt;
&lt;br /&gt;
{{matlab| codigo=&lt;br /&gt;
%Datos&lt;br /&gt;
L=5; %Longitud de varilla&lt;br /&gt;
T=5; %tiempo final&lt;br /&gt;
q=1;&lt;br /&gt;
%Discretización temporal y espacial&lt;br /&gt;
dx=0.1; % Paso en espacio&lt;br /&gt;
N=L/dx; %Número de subintervalos&lt;br /&gt;
x=0:dx:L;% Vector de espacio&lt;br /&gt;
dt=dx/4; % Paso en tiempo&lt;br /&gt;
t=0:dt:T; % Vector de tiempos&lt;br /&gt;
% Matriz de coeficientes. Aproximacion de -q*u_xx&lt;br /&gt;
K=2*diag(ones(1,N))-diag(ones(1,N-1),1)-diag(ones(1,N-1),-1);&lt;br /&gt;
K(N,N-1)=-2;&lt;br /&gt;
K=q*K/dx^2;&lt;br /&gt;
% Matriz F&lt;br /&gt;
F=zeros(N,1);&lt;br /&gt;
% Calculamos u0 condición inicial&lt;br /&gt;
u0=[zeros(1,N*3/5),3*ones(1,N*2/5)]';&lt;br /&gt;
sol(1,:)=[0,u0']; &lt;br /&gt;
U=u0; % Inicializacion&lt;br /&gt;
% Calculamos U_n -&amp;gt; U_n+1&lt;br /&gt;
%Aplicamos método trapecio método del trapecio&lt;br /&gt;
for j=1:length(t)-1&lt;br /&gt;
U=(eye(N)+(dt*K))\(dt*F+U);&lt;br /&gt;
sol(j+1,:)= [0,U'];&lt;br /&gt;
end&lt;br /&gt;
%Dibujamos la solucion&lt;br /&gt;
[xx,tt]=meshgrid(x,t);&lt;br /&gt;
surf(xx,tt,sol);&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Xata.JPG|500px|thumb|centro|Solución al variar las condiciones de contorno del problema.]]&lt;br /&gt;
&lt;br /&gt;
Observando la gráfica, y por la presencia del limpiador en el extremo de la varilla, para tiempos grandes la cantidad de sustancia contaminante será nula en toda la varilla. En realidad, esto no es del todo cierto puesto que la sustancia no llega a eliminarse completamente, ya que el limpiador solo elimina la sustancia contaminante en el extremo izquierdo. Aunque la concentración en todos los puntos disminuye de manera exponencial, permanece asintótica a 0.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Trapotito.JPG|500px|thumb|centro|Momento en el que se estabiliza con la presencia del limpiador.]]&lt;br /&gt;
&lt;br /&gt;
==Resolución por el método de Fourier==&lt;br /&gt;
&lt;br /&gt;
Las condiciones de frontera del problema son homogéneas, por lo que podemos aplicar este método de cálculo, sin realizar ningún cambio.&lt;br /&gt;
El primer paso es resolver el problema de autovalores asociado::&lt;br /&gt;
&amp;lt;math&amp;gt;\begin{cases}&lt;br /&gt;
y''+λy=0 x \in (0,5) \\&lt;br /&gt;
y'(0)=0 \\&lt;br /&gt;
y'(5)=0&lt;br /&gt;
\end{cases}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
Realizando analíticamente el cálculo, obtenemos los siguientes autovalores y autofunciones::&lt;br /&gt;
&amp;lt;math&amp;gt; λ_k=\frac{k^2π^2}{25}  →  φ_k=sin\frac{kπ}{5}x , k=0,1,2,3... &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Las condiciones de frontera e iniciales serían las siguientes en términos de la serie de Fourier::&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \sum_{k=0}^∞c_k(t)φ_k(x)=0  ,   \sum_{k=0}^∞a_k(t)φ_k(x)\begin{cases} 0, x≤3 \\ 3, x&amp;gt;3\end{cases} &amp;lt;/math&amp;gt;&lt;br /&gt;
 &lt;br /&gt;
Y ensayamos soluciones de la forma::&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; u(x,t)=\sum_{k=0}^∞T_k(t)φ_k(x)=\sum_{k=0}^∞T_k(t)sin\frac{kπ}{5}x &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Relacionando los resultados obtenidos en el problema de autovalores y el problema de difusión de la sustancia contaminante obtenemos lo siguiente::&lt;br /&gt;
&amp;lt;math&amp;gt;\begin{cases} T'_k(t)+μ_kT_k(t)=c_k=0 \\ T_k(0)=a_k \end{cases} &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
La solución de este último problema de valor inicial es::&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;T_k(t)=a_ke^{-μ_kt}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
De esta manera obtenemos la solución final::&lt;br /&gt;
&amp;lt;math&amp;gt; u(x,t)=\sum_{k=0}^∞a_ke^{-μ_kt}sin\frac{kπ}{5}x  &amp;lt;/math&amp;gt;&lt;/div&gt;</summary>
		<author><name>Karlo André</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Difusi%C3%B3n_de_una_sustancia_contaminante_(Grupo_10)&amp;diff=12945</id>
		<title>Difusión de una sustancia contaminante (Grupo 10)</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Difusi%C3%B3n_de_una_sustancia_contaminante_(Grupo_10)&amp;diff=12945"/>
				<updated>2014-05-19T18:16:36Z</updated>
		
		<summary type="html">&lt;p&gt;Karlo André: /* Resolución por el método de Fourier */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;''''''Texto en negrita''''''[[Archivo:nuriat.png|200px|thumb|right|Tubo con sustancia contaminante]]&lt;br /&gt;
La difusión implica un movimiento espontáneo y desordenado de moléculas individuales y, especialmente, nos interesa la difusión de moléculas de una sustancia disuelta en otra.&lt;br /&gt;
&lt;br /&gt;
La difusión de una sustancia puede considerarse análoga al flujo de calor, y la ley de Fick establece que el ritmo de difusión por unidad de superficie, en dirección perpendicular a ésta, es proporcional al gradiente de la concentración de esa sustancia en esa dirección. La concentración es la masa de la sustancia por unidad de volumen, y el gradiente de concentración es la variación de concentración por unidad de distancia.&lt;br /&gt;
&lt;br /&gt;
Para determinar como se distribuye la concentración de una sustancia contaminante tomaremos como ejemplo un tubo largo compuesto por dos sustancias de las cuáles una de ellas es contaminante.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
= Simplificación del problema =&lt;br /&gt;
&lt;br /&gt;
Para que este problema resulte más sencillo aplicaremos una serie de condiciones, facilitando el cálculo del mismo.&lt;br /&gt;
&lt;br /&gt;
En primer lugar denotaremos su concentración &amp;lt;math&amp;gt; u &amp;lt;/math&amp;gt;, concentración de contaminante en cada posición del tubo y constante en cada sección, medida en &amp;lt;math&amp;gt; \frac{mol}{m^2*s} &amp;lt;/math&amp;gt;. &lt;br /&gt;
&lt;br /&gt;
Supondremos que el tubo mide L=5 m, ocupando el intervalo &amp;lt;math&amp;gt; x \in (0,L) &amp;lt;/math&amp;gt;, y que la concentración es la misma en cualquier punto de la sección transversal del tubo. Por tanto, la concentración dependerá unicamente de dos variables &amp;lt;math&amp;gt; u = u(x,t) &amp;lt;/math&amp;gt;. En los extremos se ha colocado un aislante que hace que el flujo de contaminante al exterior del tubo sea nulo. Además, consideraremos la simplificación de que se trata de un tubo aislado por sus laterales, pero abierto por las bases del cilindro.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Ley de conservación de masa ==&lt;br /&gt;
&lt;br /&gt;
Tras una serie de experimentos realizados por Lavoisier, se pusieron de manifiesto que si tenemos en cuenta todas las sustancias que forman parte en una reacción química y todos los productos formados, nunca varía la masa. Esta ley exige que no haya una generación espontánea de materia. Es decir, en la región del espacio estudiada, no existe entrada o salida por un punto cualquiera (frontera o interior), la masa en esta región se mantiene constante. Esta es la ley de la conservación de la masa, que podemos enunciarla, pues, de la siguiente manera: &amp;lt;br /&amp;gt;&lt;br /&gt;
''&amp;quot;En toda reacción química la masa se conserva, esto es, la masa total de los reactivos es igual a la masa total de los productos&amp;quot;'' &amp;lt;br /&amp;gt;&lt;br /&gt;
La ley de conservación de masas exige que no haya una generación espontánea de materia. Es decir, en la región del espacio estudiada, no existe entrada o salida por un punto cualquiera (frontera o interior), la masa en esta región se mantiene constante.&lt;br /&gt;
&lt;br /&gt;
Esta suposición, en términos de variación de masa, puede quedar determinada como:&lt;br /&gt;
&lt;br /&gt;
''Variación de la masa en el tiempo = flujo de masa a través de la frontera por unidad de tiempo + flujo de masa generada en el interior por unidad de tiempo. ''&lt;br /&gt;
&lt;br /&gt;
== Ley de Fick ==&lt;br /&gt;
Se trata de una ley cuantitativa en forma diferencial que describe la difusión de materia o energía en un medio en el que inicialmente existe equilibrio químico o físico. Esta ley se trata de una generalización de los fenómenos descritos por la '''Ley de Fourier''', ya que esta es una consideración concreta del calor.&lt;br /&gt;
&lt;br /&gt;
La ley de Fick anuncia que en el caso de existir diferencias de concentración en cualquier especie, el paso de estas especies se llevará a cabo desde las regiones con mayor concentración a las de menor. Formulado matemáticamente:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;F(x,t)=-D\frac{\partial u}{\partial x}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Donde &amp;lt;math&amp;gt;F&amp;lt;/math&amp;gt; es el flujo de la sustancia y &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; el coeficiente de difusión, que representa la facilidad en que un soluto particular se mueve por un disolvente determinado.&lt;br /&gt;
&lt;br /&gt;
La ley de Fick establece que el flujo de difusión del contaminante es proporcional a la variación de concentración:&lt;br /&gt;
&amp;lt;math&amp;gt; F(x,t)=-D\frac{\partial u}{\partial x} &amp;lt;/math&amp;gt;&lt;br /&gt;
donde D es el coeficiente de difusión (medido en &amp;lt;math&amp;gt; \frac{m^2}{s} &amp;lt;/math&amp;gt;), que depende de las propiedades físicas de los compuestos, y que se supone constante D=1.&lt;br /&gt;
&lt;br /&gt;
= Modelización de la ecuación diferencial =&lt;br /&gt;
&lt;br /&gt;
Aplicando el principio de conservación de la masa y la ley de Fourier, definimos la variable &amp;lt;math&amp;gt; u(x,t)&amp;lt;/math&amp;gt; en unidades de sustancia por área, es decir, concentración por superficie del tubo.&lt;br /&gt;
&lt;br /&gt;
Consideramos &amp;lt;math&amp;gt; A &amp;lt;/math&amp;gt; como variable superficie, y tomamos un pequeño trozo, definido por &amp;lt;math&amp;gt;\Delta x&amp;lt;/math&amp;gt;. Entonces, para obtener la variación de la masa en el tiempo:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; A u(x,t) \Delta x &amp;lt;/math&amp;gt; &lt;br /&gt;
&lt;br /&gt;
Y derivando en el tiempo:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; A u_t(x,t) \Delta x &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
obtenemos el primer término de la igualdad anteriormente enunciada.&lt;br /&gt;
&lt;br /&gt;
En el segundo, consideramos nulo el flujo de masa en los puntos interiores por unidad de tiempo, pues suponemos la tubería perfecta y sin sumideros.&lt;br /&gt;
&lt;br /&gt;
Como la superﬁcie lateral del tubo está aislada, solamente habrá flujo de sustancia en la dirección del eje &amp;lt;math&amp;gt;x&amp;lt;/math&amp;gt;. Si &amp;lt;math&amp;gt;F(x,t)&amp;gt; 0&amp;lt;/math&amp;gt; pensamos que el ﬂujo va hacia la derecha, si &amp;lt;math&amp;gt;F(x,t)&amp;lt; 0&amp;lt;/math&amp;gt;, este va a hacia la izquierda. El ﬂujo de&lt;br /&gt;
calor en un intervalo &amp;lt;math&amp;gt;[x, x + ∆x ] &amp;lt;/math&amp;gt; viene dado dado por:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;F(x,t)A-F(x+\Delta x, t)A&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Con lo que queda &amp;lt;math&amp;gt;A u_t(x,t) \Delta x = F(x,t)A-F(x+\Delta x, t)A&amp;lt;/math&amp;gt;, y al dividir &amp;lt;math&amp;gt;A \Delta x&amp;lt;/math&amp;gt;, nos queda &amp;lt;math&amp;gt;u_t(x,t)= \frac {F(x,t)-F(x+\Delta x, t)}{\Delta x}&amp;lt;/math&amp;gt;. &amp;lt;br /&amp;gt;&lt;br /&gt;
Como &amp;lt;math&amp;gt;\Delta x \rightarrow 0 &amp;lt;/math&amp;gt;, &amp;lt;math&amp;gt;u_t(x,t)= -F_x(x,t)&amp;lt;/math&amp;gt;, y aplicando ley de Fick, &amp;lt;math&amp;gt;u_t(x,t)=-\frac{\partial }{\partial x}(-D u_x(x,t)) = D u_xx(x,t) &amp;lt;/math&amp;gt;.&amp;lt;br /&amp;gt;&lt;br /&gt;
Con lo que resulta una ecuación en derivadas parciales que determina la concentración de sustancia:&lt;br /&gt;
&amp;lt;math&amp;gt;u_t(x,t)- D u_xx(x,t)= 0 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Planteamiento del problema bien propuesto ==&lt;br /&gt;
&lt;br /&gt;
Suponemos que el flujo será nula al haber una tapa en los extremos del tubo, con lo que el problema bien propuesto quedaría::&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\begin{cases}&lt;br /&gt;
u_t(x,t)- D u_{xx}(x,t)= 0 ; x\in (0,5) \\&lt;br /&gt;
u(x,0)=u_0 , x\in (0,5) \\&lt;br /&gt;
u_x(0,t)=0 , u_x(5,t)=0 ; t\geq 0&lt;br /&gt;
\end{cases}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= Resolución numérica =&lt;br /&gt;
Para la resolución de ésta ecuación necesitaremos mínimo tres condiciones, dos de las cuales serán de contorno, y la otra será la condición inicial.Si suponemos &amp;lt;math&amp;gt;u_0(x,0)&amp;lt;/math&amp;gt;, entonces:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; u_0(x,0)=\begin{cases}&lt;br /&gt;
0,  si x\leq 3\\&lt;br /&gt;
3,  si x&amp;gt;3&lt;br /&gt;
\end{cases}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Resolución por el método de las diferencias finitas ==&lt;br /&gt;
En el primer caso particular que estudiaremos, trataremos de obtener una resolución numérica del problema anteriormente planteado, dónde tenemos las fronteras aisladas y las concentraciones iniciales conocidas:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\begin{cases}&lt;br /&gt;
u_t(x,t)- D u_{xx}(x,t)= 0; x\in (0,5), t\geq 0 \\&lt;br /&gt;
u_0(x,0), x\in (0,5) \\&lt;br /&gt;
u_x(0,t)=0, u_x(5,t)=0, t\geq 0&lt;br /&gt;
\end{cases}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
La resolución por el método de las diferencias finitas se basa en expresar el problema continuo a un sistema discreto de ecuaciones diferenciales de primer orden. Particularizando para nuestro caso con las condiciones dadas, el problema planteado sería:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\begin{cases}&lt;br /&gt;
u'_n(t)+\frac{-u_{n-1}(t)+2u_n(t)+u_{n+1}(t)}{h^2} \\&lt;br /&gt;
\frac{u_1(t)-u_-1(t)}{2h} \rightarrow u_1(t)=u_-1(t) \\&lt;br /&gt;
\frac{u_{N+1}(t)-u_{N-1}(t)}{2h} \rightarrow u_{N+1}(t)=u_{N-1}\\&lt;br /&gt;
u_n(0)=u^0(x)&lt;br /&gt;
\end{cases}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Por lo que tenemos un sistema de la forma:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\begin{cases}&lt;br /&gt;
U'(t)+KU(t)=F(t)=0\\&lt;br /&gt;
U(0)=U^0&lt;br /&gt;
\end{cases}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Con &amp;lt;math&amp;gt;N+1&amp;lt;/math&amp;gt; ecuaciones.&lt;br /&gt;
==== Resolución por método del trapecio ====&lt;br /&gt;
Suponiendo que en el instante inicial se verifica  :&amp;lt;math&amp;gt;&lt;br /&gt;
u(x,0)=\left\{\begin{matrix}\\0, x≤3\\3, x&amp;gt;3\end{matrix}\right.&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Si tomamos &amp;lt;math&amp;gt;\triangle t= \triangle x/4&amp;lt;/math&amp;gt; en &amp;lt;math&amp;gt;t\in\ [0,5]&amp;lt;/math&amp;gt;, con &amp;lt;math&amp;gt;\triangle x=0.1&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
El código en MATLAB del método sería:&lt;br /&gt;
&lt;br /&gt;
{{matlab| codigo=&lt;br /&gt;
%Datos&lt;br /&gt;
L=5; %Longitud de varilla&lt;br /&gt;
T=5; %tiempo final&lt;br /&gt;
q=1;&lt;br /&gt;
%Discretización temporal y espacial&lt;br /&gt;
dx=0.1; % Paso en espacio&lt;br /&gt;
N=L/dx; %Número de subintervalos&lt;br /&gt;
x=0:dx:L; % Vector de espacio&lt;br /&gt;
dt=dx/4; % Paso en tiempo&lt;br /&gt;
t=0:dt:T; % Vector de tiempos&lt;br /&gt;
% Matriz de coeficientes. Aproximacion de -q*u_xx&lt;br /&gt;
K=2*diag(ones(1,N+1))-diag(ones(1,N),1)-diag(ones(1,N),-1);&lt;br /&gt;
K(1,2)=-2;&lt;br /&gt;
K(N+1,N)=-2;&lt;br /&gt;
K=q*K/dx^2;&lt;br /&gt;
% Calculamos u0 condición inicial&lt;br /&gt;
u0=[zeros(1,1+N*3/5),3*ones(1,N*2/5)]';&lt;br /&gt;
% F=0 (no la consideramos)&lt;br /&gt;
sol(1,:)=u0'; % Guardamos la solucion&lt;br /&gt;
U=u0; % Inicializacion&lt;br /&gt;
% Calculamos U_n -&amp;gt; U_n+1&lt;br /&gt;
%Aplicamos método trapecio método del trapecio&lt;br /&gt;
for j=1:length(t)-1&lt;br /&gt;
U=(eye(N+1)+(dt*K)/2)\((eye(N+1)-(K*dt)/2)*U);&lt;br /&gt;
sol(j+1,:)= U'; % Guardamos solucion&lt;br /&gt;
end&lt;br /&gt;
%Dibujamos la solucion&lt;br /&gt;
[xx,tt]=meshgrid(x,t);&lt;br /&gt;
surf(xx,tt,sol);&lt;br /&gt;
}}&lt;br /&gt;
[[Archivo:nur.jpg|500px|thumb|centro|Gráfica concentración / espacio-tiempo. Resolución por el método del trapecio.]]&lt;br /&gt;
&lt;br /&gt;
==== Resolución por método de Euler explícito ====&lt;br /&gt;
{{matlab| codigo=&lt;br /&gt;
%Datos&lt;br /&gt;
L=5; %Longitud de varilla&lt;br /&gt;
T=5; %tiempo final&lt;br /&gt;
q=1;&lt;br /&gt;
%Discretización temporal y espacial&lt;br /&gt;
dx=0.1; % Paso en espacio&lt;br /&gt;
N=L/dx; %Número de subintervalos&lt;br /&gt;
x=0:dx:L; % Vector de espacio&lt;br /&gt;
dt=dx/20; % Paso en tiempo&lt;br /&gt;
t=0:dt:T; % Vector de tiempos&lt;br /&gt;
% Matriz de coeficientes. Aproximacion de -q*u_xx&lt;br /&gt;
K=2*diag(ones(1,N+1))-diag(ones(1,N),1)-diag(ones(1,N),-1);&lt;br /&gt;
K(1,2)=-2;&lt;br /&gt;
K(N+1,N)=-2;&lt;br /&gt;
K=q*K/dx^2;&lt;br /&gt;
% Calculamos u0 condición inicial&lt;br /&gt;
u0=[zeros(1,1+N*3/5),3*ones(1,N*2/5)]';&lt;br /&gt;
% F=0 (no la consideramos)&lt;br /&gt;
sol(1,:)=u0'; % Guardamos la solucion&lt;br /&gt;
U=u0; % Inicializacion&lt;br /&gt;
% Calculamos U_n -&amp;gt; U_n+1&lt;br /&gt;
%Aplicamos método Euler explícito&lt;br /&gt;
for j=1:length(t)-1 &lt;br /&gt;
k1=-K*U; % Calculamos k1=h*f(tn,yn)&lt;br /&gt;
k2=-K*(U+dt*k1); % Calculamos k2=h*f(tn+h/2,yn+1/2*k1)&lt;br /&gt;
% Meto los datos en el vector&lt;br /&gt;
U=U+(dt/2)*(k1+k2);&lt;br /&gt;
sol(j+1,:)= U'; % Guardamos solucion&lt;br /&gt;
end&lt;br /&gt;
%Dibujamos la solucion&lt;br /&gt;
[xx,tt]=meshgrid(x,t);&lt;br /&gt;
surf(xx,tt,sol);&lt;br /&gt;
}}&lt;br /&gt;
[[Archivo:mig.jpg|500px|thumb|centro|Gráfica concentración / espacio-tiempo. Resolución por el método de Euler explícito.]]&lt;br /&gt;
&lt;br /&gt;
==== Resolución por método de Euler implícito ====&lt;br /&gt;
{{matlab| codigo=&lt;br /&gt;
%Datos&lt;br /&gt;
L=5; %Longitud de varilla&lt;br /&gt;
T=5;&lt;br /&gt;
q=1;&lt;br /&gt;
%Discretización temporal y espacial&lt;br /&gt;
dx=0.1; % Paso en espacio&lt;br /&gt;
N=L/dx; %Número de subintervalos&lt;br /&gt;
h=L/N;&lt;br /&gt;
x=0:h:L; % Vector de espacio&lt;br /&gt;
dt=h/20; % Paso en tiempo&lt;br /&gt;
t=0:dt:T; % Vector de tiempos&lt;br /&gt;
% Matriz de coeficientes. Aproximacion de -q*u_xx&lt;br /&gt;
K=2*diag(ones(1,N+1))-diag(ones(1,N),1)-diag(ones(1,N),-1);&lt;br /&gt;
K(1,2)=-2;&lt;br /&gt;
K(N+1,N)=-2;&lt;br /&gt;
K=q*K/h^2;&lt;br /&gt;
% Calculamos u0 condición inicial&lt;br /&gt;
u0=[zeros(1,1+N*3/5),3*ones(1,N*2/5)]';&lt;br /&gt;
% F=0 (no la consideramos)&lt;br /&gt;
sol(1,:)=u0'; % Guardamos la solucion&lt;br /&gt;
U=u0; % Inicializacion&lt;br /&gt;
% Calculamos U_n -&amp;gt; U_n+1&lt;br /&gt;
% Aplicamos método implícito&lt;br /&gt;
for j=1:length(t)-1 &lt;br /&gt;
U=U-dt*K*U; &lt;br /&gt;
sol(j+1,:)= U'; % Guardamos solucion&lt;br /&gt;
end&lt;br /&gt;
%Dibujamos la solucion&lt;br /&gt;
[xx,tt]=meshgrid(x,t);&lt;br /&gt;
surf(xx,tt,sol);&lt;br /&gt;
}}&lt;br /&gt;
[[Archivo:migap.jpg|500px|thumb|centro|Gráfica concentración / espacio-tiempo. Resolución por el método de Euler implícito.]]&lt;br /&gt;
&lt;br /&gt;
==== Resolución por método de Euler modificado ====&lt;br /&gt;
{{matlab| codigo=&lt;br /&gt;
%Datos&lt;br /&gt;
L=5; %Longitud de varilla&lt;br /&gt;
T=5;&lt;br /&gt;
q=1;&lt;br /&gt;
%Discretización temporal y espacial&lt;br /&gt;
dx=0.1; % Paso en espacio&lt;br /&gt;
N=L/dx; %Número de subintervalos&lt;br /&gt;
h=L/N;&lt;br /&gt;
x=0:h:L; % Vector de espacio&lt;br /&gt;
dt=h/20; % Paso en tiempo&lt;br /&gt;
t=0:dt:T; % Vector de tiempos&lt;br /&gt;
% Matriz de coeficientes. Aproximacion de -q*u_xx&lt;br /&gt;
K=2*diag(ones(1,N+1))-diag(ones(1,N),1)-diag(ones(1,N),-1);&lt;br /&gt;
K(1,2)=-2;&lt;br /&gt;
K(N+1,N)=-2;&lt;br /&gt;
K=q*K/h^2;&lt;br /&gt;
% Calculamos u0 condición inicial&lt;br /&gt;
u0=[zeros(1,1+N*3/5),3*ones(1,N*2/5)]';&lt;br /&gt;
% F=0 (no la consideramos)&lt;br /&gt;
sol(1,:)=u0'; % Guardamos la solucion&lt;br /&gt;
U=u0; % Inicializacion&lt;br /&gt;
% Calculamos U_n -&amp;gt; U_n+1&lt;br /&gt;
for j=1:length(t)-1 &lt;br /&gt;
k1=-K*U; % Calculamos k1=h*f(tn,yn)&lt;br /&gt;
k2=-K*(U+dt*k1); % Calculamos k2=h*f(tn+h/2,yn+1/2*k1)&lt;br /&gt;
% Meto los datos en el vector&lt;br /&gt;
U=U+(dt/2)*(k1+k2);&lt;br /&gt;
sol(j+1,:)= U'; % Guardamos solucion&lt;br /&gt;
end&lt;br /&gt;
%Dibujamos la solucion&lt;br /&gt;
[xx,tt]=meshgrid(x,t);&lt;br /&gt;
surf(xx,tt,sol);&lt;br /&gt;
}}&lt;br /&gt;
[[Archivo: mig.jpg|500px|thumb|centro|Gráfica concentración / espacio-tiempo. Resolución por el método de Euler modificado.]]&lt;br /&gt;
&lt;br /&gt;
== Conservación de la masa total de contaminante ==&lt;br /&gt;
A continuación demostraremos que la masa total de contaminante en el tubo se conserva a lo largo del tiempo, que se puede deducir a partir de la ecuación sin tener que resolverla. Integramos la ecuación y debido a las condiciones de frontera:&lt;br /&gt;
&amp;lt;math&amp;gt;\frac d {dt} \int_0^5 u(x,t)\,dx= \int_0^5 u_{xx}(x,t)\,dx= u_x(x,t)|_0^5=0&amp;lt;/math&amp;gt;&lt;br /&gt;
{{matlab| codigo=&lt;br /&gt;
%Datos&lt;br /&gt;
L=5; %Longitud de varilla&lt;br /&gt;
T=5;&lt;br /&gt;
q=1;&lt;br /&gt;
%Discretización temporal y espacial&lt;br /&gt;
N=500; %Número de subintervalos&lt;br /&gt;
h=L/N;&lt;br /&gt;
x=0:h:L; % Vector de espacio&lt;br /&gt;
dt=h/4; % Paso en tiempo&lt;br /&gt;
t=0:dt:T; % Vector de tiempos&lt;br /&gt;
% Matriz de coeficientes. Aproximacion de -q*u_xx&lt;br /&gt;
K=2*diag(ones(1,N+1))-diag(ones(1,N),1)-diag(ones(1,N),-1);&lt;br /&gt;
K(1,2)=-2;&lt;br /&gt;
K(N+1,N)=-2;&lt;br /&gt;
K=q*K/h^2;&lt;br /&gt;
% Calculamos u0 condición inicial&lt;br /&gt;
u0=[zeros(1,1+N*3/5),3*ones(1,N*2/5)]';&lt;br /&gt;
% F=0 (no la consideramos)&lt;br /&gt;
sol(1,:)=u0'; % Guardamos la solucion&lt;br /&gt;
U=u0; % Inicializacion&lt;br /&gt;
% Calculamos U_n -&amp;gt; U_n+1&lt;br /&gt;
for j=1:length(t)-1 &lt;br /&gt;
U=(eye(N+1)+dt*K)\(U+dt*F); &lt;br /&gt;
sol(j+1,:)= U'; % Guardamos solucion&lt;br /&gt;
end&lt;br /&gt;
% Calculamos el area de la funcion en cada tiempo (area = cantidad de contaminante)&lt;br /&gt;
areas=zeros(1,length(t));&lt;br /&gt;
for i=1:length(t)&lt;br /&gt;
f=sol(i,:);&lt;br /&gt;
w=trapz(x,f);&lt;br /&gt;
area(i)=w;&lt;br /&gt;
end&lt;br /&gt;
%Dibujamos&lt;br /&gt;
plot(t,area)&lt;br /&gt;
xlabel('Tiempo')&lt;br /&gt;
ylabel('Cantidad de contaminante')&lt;br /&gt;
}}&lt;br /&gt;
[[Archivo:aleeex.jpg|500px|thumb|centro|Conservación masa total de contaminante]]&lt;br /&gt;
[[Archivo:gime.jpg|500px|thumb|centro|Conservación masa total de contaminante]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Concentración a lo largo del tiempo==&lt;br /&gt;
La concentración de la sustancia contaminante en la varilla varía con el tiempo, pero en un cierto momento esta concentración se va homogeneizando, y deja de variar, entrando en un estado estacionario::&lt;br /&gt;
&amp;lt;math&amp;gt; u_t(x,t)- D*u_{xx}(x,t)=0 &amp;lt;/math&amp;gt; :    &lt;br /&gt;
&amp;lt;math&amp;gt; u_t(x,t)=0 \rightarrow D*u_{xx}(x,t)=0 &amp;lt;/math&amp;gt; :&lt;br /&gt;
&amp;lt;math&amp;gt; u=c_1*x+c_2 &amp;lt;/math&amp;gt; &lt;br /&gt;
Utizando Matlab comprobaremos que &amp;lt;math&amp;gt; c_1=0 &amp;lt;/math&amp;gt; &amp;lt;math&amp;gt; c_2=1.17 &amp;lt;/math&amp;gt;&lt;br /&gt;
Para tiempos grandes la concentración se estabiliza en torno a 1.17 en toda la varilla, de forma que la solución se asemejará a una función lineal constante.&lt;br /&gt;
&lt;br /&gt;
{{matlab| codigo=&lt;br /&gt;
%Datos&lt;br /&gt;
L=5; %Longitud de varilla&lt;br /&gt;
T=50;&lt;br /&gt;
q=1;&lt;br /&gt;
%Discretización temporal y espacial&lt;br /&gt;
dx=0.1; % Paso en espacio&lt;br /&gt;
N=L/dx; %Número de subintervalos&lt;br /&gt;
h=L/N;&lt;br /&gt;
x=0:h:L; % Vector de espacio&lt;br /&gt;
dt=h/4; % Paso en tiempo&lt;br /&gt;
t=0:dt:T; % Vector de tiempos&lt;br /&gt;
% Matriz de coeficientes. Aproximacion de -q*u_xx&lt;br /&gt;
K=2*diag(ones(1,N+1))-diag(ones(1,N),1)-diag(ones(1,N),-1);&lt;br /&gt;
K(1,2)=-2;&lt;br /&gt;
K(N+1,N)=-2;&lt;br /&gt;
K=q*K/h^2;&lt;br /&gt;
% Calculamos u0 condición inicial&lt;br /&gt;
u0=[zeros(1,1+N*3/5),3*ones(1,N*2/5)]';&lt;br /&gt;
% F=0 (no la consideramos)&lt;br /&gt;
sol(1,:)=u0'; % Guardamos la solucion&lt;br /&gt;
U=u0; % Inicializacion&lt;br /&gt;
% Calculamos U_n -&amp;gt; U_n+1&lt;br /&gt;
%Aplicamos método trapecio método del trapecio&lt;br /&gt;
for j=1:length(t)-1&lt;br /&gt;
U=(eye(N+1)+(dt*K)/2)\((eye(N+1)-(K*dt)/2)*U);&lt;br /&gt;
sol(j+1,:)= U'; % Guardamos solucion&lt;br /&gt;
end&lt;br /&gt;
%Solución estacionaria&lt;br /&gt;
a=sol(length(t),:);&lt;br /&gt;
b=sol(1,:);&lt;br /&gt;
c=sol((length(t)-1)/50+1,:);&lt;br /&gt;
d=sol((length(t)-1)*2/50+1,:);&lt;br /&gt;
e=sol((length(t)-1)*10/50+1,:);&lt;br /&gt;
hold on&lt;br /&gt;
plot(x,a,'xk','linewidth',2);&lt;br /&gt;
plot(x,b,'-m','linewidth',1);&lt;br /&gt;
plot(x,c,'-g','linewidth',1);&lt;br /&gt;
plot(x,d,'-y','linewidth',1);&lt;br /&gt;
plot(x,e,'-b','linewidth',1);&lt;br /&gt;
legend('u(50s)','u(0s)','u(1s)','u(2s)','u(10s)');&lt;br /&gt;
xlabel('Posición en la varilla')&lt;br /&gt;
ylabel('Concentracion')&lt;br /&gt;
hold off&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Soluciones(t).jpg|500px|thumb|centro|Soluciones a lo largo del tiempo]]&lt;br /&gt;
&lt;br /&gt;
La distancia entre la solución estacionaria y las soluciones para los siguientes instantes: 0s, 1s, 2s y 10s; se puede apreciar en la imagen anterior. &lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
Una vez analizado los datos, se demuestra que la sustancia contaminante se estabiliza en t=9.98s, con un error del 5%.&lt;br /&gt;
&lt;br /&gt;
En el caso de que consideremos Δx'=Δx/10,el tiempo en el que se estabiliza la cantidad de sustancia contaminante será t=10s, dato que será más preciso debido a que el paso realizado en el programa es menor.&lt;br /&gt;
&lt;br /&gt;
==Nueva condición de frontera==&lt;br /&gt;
&lt;br /&gt;
Si colocamos un limpiador, que elimina la sustancia contaminante, en el extremo izquierdo de la varilla, varían las condiciones de contorno del problema. En este caso, en el extremo izquierdo, la condición inicial será de tipo Dirichlet ya que se esta variación esta provocada por un mecanismo físico externo que actúa sobre el extremo. &amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;math&amp;gt;\begin{cases}&lt;br /&gt;
u_t(x,t)- D u_{xx}(x,t)= 0 ; x\in (0,5) \\&lt;br /&gt;
u(x,0)=u_0 , x\in (0,5) \\&lt;br /&gt;
u(0,t)=0 , u_x(5,t)=0 ; t\geq 0&lt;br /&gt;
\end{cases}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Dadas las nuevas condiciones, resolvemos el problema por el método de diferencias finitas con la ayuda de Matlab.&lt;br /&gt;
&lt;br /&gt;
{{matlab| codigo=&lt;br /&gt;
%Datos&lt;br /&gt;
L=5; %Longitud de varilla&lt;br /&gt;
T=5; %tiempo final&lt;br /&gt;
q=1;&lt;br /&gt;
%Discretización temporal y espacial&lt;br /&gt;
dx=0.1; % Paso en espacio&lt;br /&gt;
N=L/dx; %Número de subintervalos&lt;br /&gt;
x=0:dx:L;% Vector de espacio&lt;br /&gt;
dt=dx/4; % Paso en tiempo&lt;br /&gt;
t=0:dt:T; % Vector de tiempos&lt;br /&gt;
% Matriz de coeficientes. Aproximacion de -q*u_xx&lt;br /&gt;
K=2*diag(ones(1,N))-diag(ones(1,N-1),1)-diag(ones(1,N-1),-1);&lt;br /&gt;
K(N,N-1)=-2;&lt;br /&gt;
K=q*K/dx^2;&lt;br /&gt;
% Matriz F&lt;br /&gt;
F=zeros(N,1);&lt;br /&gt;
% Calculamos u0 condición inicial&lt;br /&gt;
u0=[zeros(1,N*3/5),3*ones(1,N*2/5)]';&lt;br /&gt;
sol(1,:)=[0,u0']; &lt;br /&gt;
U=u0; % Inicializacion&lt;br /&gt;
% Calculamos U_n -&amp;gt; U_n+1&lt;br /&gt;
%Aplicamos método trapecio método del trapecio&lt;br /&gt;
for j=1:length(t)-1&lt;br /&gt;
U=(eye(N)+(dt*K))\(dt*F+U);&lt;br /&gt;
sol(j+1,:)= [0,U'];&lt;br /&gt;
end&lt;br /&gt;
%Dibujamos la solucion&lt;br /&gt;
[xx,tt]=meshgrid(x,t);&lt;br /&gt;
surf(xx,tt,sol);&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Xata.JPG|500px|thumb|centro|Solución al variar las condiciones de contorno del problema.]]&lt;br /&gt;
&lt;br /&gt;
Observando la gráfica, y por la presencia del limpiador en el extremo de la varilla, para tiempos grandes la cantidad de sustancia contaminante será nula en toda la varilla. En realidad, esto no es del todo cierto puesto que la sustancia no llega a eliminarse completamente, ya que el limpiador solo elimina la sustancia contaminante en el extremo izquierdo. Aunque la concentración en todos los puntos disminuye de manera exponencial, permanece asintótica a 0.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Trapotito.JPG|500px|thumb|centro|Momento en el que se estabiliza con la presencia del limpiador.]]&lt;br /&gt;
&lt;br /&gt;
==Resolución por el método de Fourier==&lt;br /&gt;
&lt;br /&gt;
Las condiciones de frontera del problema son homogéneas, por lo que podemos aplicar este método de cálculo, sin realizar ningún cambio.&lt;br /&gt;
El primer paso es resolver el problema de autovalores asociado::&lt;br /&gt;
&amp;lt;math&amp;gt;\begin{cases}&lt;br /&gt;
y''+λy=0 x \in (0,5) \\&lt;br /&gt;
y'(0)=0 \\&lt;br /&gt;
y'(5)=0&lt;br /&gt;
\end{cases}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
Realizando analíticamente el cálculo, obtenemos los siguientes autovalores y autofunciones::&lt;br /&gt;
&amp;lt;math&amp;gt; λ_k=\frac{k^2π^2}{25}  →  φ_k=sin\frac{kπ}{5}x , k=0,1,2,3... &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Las condiciones de frontera e iniciales serían las siguientes en términos de la serie de Fourier::&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \sum_{k=0}^∞c_k(t)φ_k(x)=0  ,   \sum_{k=0}^∞a_k(t)φ_k(x)\begin{cases} 0, x≤3 \\ 3, x&amp;gt;3\end{cases} &amp;lt;/math&amp;gt;&lt;br /&gt;
 &lt;br /&gt;
Y ensayamos soluciones de la forma::&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; u(x,t)=\sum_{k=0}^∞T_k(t)φ_k(x)=\sum_{k=0}^∞T_k(t)sin\frac{kπ}{5}x &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Relacionando los resultados obtenidos en el problema de autovalores y el problema de difusión de la sustancia contaminante obtenemos lo siguiente::&lt;br /&gt;
&amp;lt;math&amp;gt;\begin{cases} T'_k(t)+μ_kT_k(t)=c_k=0 \\ T_k(0)=a_k \end{cases} &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
La solución de este último problema de valor inicial es::&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;T_k(t)=a_ke^{-μ_kt}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
De esta manera obtenemos la solución final::&lt;br /&gt;
&amp;lt;math&amp;gt; u(x,t)=\sum_{k=0}^∞a_ke^{-μ_kt}sin\frac{kπ}{5}x  &amp;lt;\math&amp;gt;&lt;/div&gt;</summary>
		<author><name>Karlo André</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Difusi%C3%B3n_de_una_sustancia_contaminante_(Grupo_10)&amp;diff=12944</id>
		<title>Difusión de una sustancia contaminante (Grupo 10)</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Difusi%C3%B3n_de_una_sustancia_contaminante_(Grupo_10)&amp;diff=12944"/>
				<updated>2014-05-19T18:09:08Z</updated>
		
		<summary type="html">&lt;p&gt;Karlo André: /* Resolución por el método de Fourier */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;''''''Texto en negrita''''''[[Archivo:nuriat.png|200px|thumb|right|Tubo con sustancia contaminante]]&lt;br /&gt;
La difusión implica un movimiento espontáneo y desordenado de moléculas individuales y, especialmente, nos interesa la difusión de moléculas de una sustancia disuelta en otra.&lt;br /&gt;
&lt;br /&gt;
La difusión de una sustancia puede considerarse análoga al flujo de calor, y la ley de Fick establece que el ritmo de difusión por unidad de superficie, en dirección perpendicular a ésta, es proporcional al gradiente de la concentración de esa sustancia en esa dirección. La concentración es la masa de la sustancia por unidad de volumen, y el gradiente de concentración es la variación de concentración por unidad de distancia.&lt;br /&gt;
&lt;br /&gt;
Para determinar como se distribuye la concentración de una sustancia contaminante tomaremos como ejemplo un tubo largo compuesto por dos sustancias de las cuáles una de ellas es contaminante.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
= Simplificación del problema =&lt;br /&gt;
&lt;br /&gt;
Para que este problema resulte más sencillo aplicaremos una serie de condiciones, facilitando el cálculo del mismo.&lt;br /&gt;
&lt;br /&gt;
En primer lugar denotaremos su concentración &amp;lt;math&amp;gt; u &amp;lt;/math&amp;gt;, concentración de contaminante en cada posición del tubo y constante en cada sección, medida en &amp;lt;math&amp;gt; \frac{mol}{m^2*s} &amp;lt;/math&amp;gt;. &lt;br /&gt;
&lt;br /&gt;
Supondremos que el tubo mide L=5 m, ocupando el intervalo &amp;lt;math&amp;gt; x \in (0,L) &amp;lt;/math&amp;gt;, y que la concentración es la misma en cualquier punto de la sección transversal del tubo. Por tanto, la concentración dependerá unicamente de dos variables &amp;lt;math&amp;gt; u = u(x,t) &amp;lt;/math&amp;gt;. En los extremos se ha colocado un aislante que hace que el flujo de contaminante al exterior del tubo sea nulo. Además, consideraremos la simplificación de que se trata de un tubo aislado por sus laterales, pero abierto por las bases del cilindro.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Ley de conservación de masa ==&lt;br /&gt;
&lt;br /&gt;
Tras una serie de experimentos realizados por Lavoisier, se pusieron de manifiesto que si tenemos en cuenta todas las sustancias que forman parte en una reacción química y todos los productos formados, nunca varía la masa. Esta ley exige que no haya una generación espontánea de materia. Es decir, en la región del espacio estudiada, no existe entrada o salida por un punto cualquiera (frontera o interior), la masa en esta región se mantiene constante. Esta es la ley de la conservación de la masa, que podemos enunciarla, pues, de la siguiente manera: &amp;lt;br /&amp;gt;&lt;br /&gt;
''&amp;quot;En toda reacción química la masa se conserva, esto es, la masa total de los reactivos es igual a la masa total de los productos&amp;quot;'' &amp;lt;br /&amp;gt;&lt;br /&gt;
La ley de conservación de masas exige que no haya una generación espontánea de materia. Es decir, en la región del espacio estudiada, no existe entrada o salida por un punto cualquiera (frontera o interior), la masa en esta región se mantiene constante.&lt;br /&gt;
&lt;br /&gt;
Esta suposición, en términos de variación de masa, puede quedar determinada como:&lt;br /&gt;
&lt;br /&gt;
''Variación de la masa en el tiempo = flujo de masa a través de la frontera por unidad de tiempo + flujo de masa generada en el interior por unidad de tiempo. ''&lt;br /&gt;
&lt;br /&gt;
== Ley de Fick ==&lt;br /&gt;
Se trata de una ley cuantitativa en forma diferencial que describe la difusión de materia o energía en un medio en el que inicialmente existe equilibrio químico o físico. Esta ley se trata de una generalización de los fenómenos descritos por la '''Ley de Fourier''', ya que esta es una consideración concreta del calor.&lt;br /&gt;
&lt;br /&gt;
La ley de Fick anuncia que en el caso de existir diferencias de concentración en cualquier especie, el paso de estas especies se llevará a cabo desde las regiones con mayor concentración a las de menor. Formulado matemáticamente:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;F(x,t)=-D\frac{\partial u}{\partial x}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Donde &amp;lt;math&amp;gt;F&amp;lt;/math&amp;gt; es el flujo de la sustancia y &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; el coeficiente de difusión, que representa la facilidad en que un soluto particular se mueve por un disolvente determinado.&lt;br /&gt;
&lt;br /&gt;
La ley de Fick establece que el flujo de difusión del contaminante es proporcional a la variación de concentración:&lt;br /&gt;
&amp;lt;math&amp;gt; F(x,t)=-D\frac{\partial u}{\partial x} &amp;lt;/math&amp;gt;&lt;br /&gt;
donde D es el coeficiente de difusión (medido en &amp;lt;math&amp;gt; \frac{m^2}{s} &amp;lt;/math&amp;gt;), que depende de las propiedades físicas de los compuestos, y que se supone constante D=1.&lt;br /&gt;
&lt;br /&gt;
= Modelización de la ecuación diferencial =&lt;br /&gt;
&lt;br /&gt;
Aplicando el principio de conservación de la masa y la ley de Fourier, definimos la variable &amp;lt;math&amp;gt; u(x,t)&amp;lt;/math&amp;gt; en unidades de sustancia por área, es decir, concentración por superficie del tubo.&lt;br /&gt;
&lt;br /&gt;
Consideramos &amp;lt;math&amp;gt; A &amp;lt;/math&amp;gt; como variable superficie, y tomamos un pequeño trozo, definido por &amp;lt;math&amp;gt;\Delta x&amp;lt;/math&amp;gt;. Entonces, para obtener la variación de la masa en el tiempo:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; A u(x,t) \Delta x &amp;lt;/math&amp;gt; &lt;br /&gt;
&lt;br /&gt;
Y derivando en el tiempo:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; A u_t(x,t) \Delta x &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
obtenemos el primer término de la igualdad anteriormente enunciada.&lt;br /&gt;
&lt;br /&gt;
En el segundo, consideramos nulo el flujo de masa en los puntos interiores por unidad de tiempo, pues suponemos la tubería perfecta y sin sumideros.&lt;br /&gt;
&lt;br /&gt;
Como la superﬁcie lateral del tubo está aislada, solamente habrá flujo de sustancia en la dirección del eje &amp;lt;math&amp;gt;x&amp;lt;/math&amp;gt;. Si &amp;lt;math&amp;gt;F(x,t)&amp;gt; 0&amp;lt;/math&amp;gt; pensamos que el ﬂujo va hacia la derecha, si &amp;lt;math&amp;gt;F(x,t)&amp;lt; 0&amp;lt;/math&amp;gt;, este va a hacia la izquierda. El ﬂujo de&lt;br /&gt;
calor en un intervalo &amp;lt;math&amp;gt;[x, x + ∆x ] &amp;lt;/math&amp;gt; viene dado dado por:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;F(x,t)A-F(x+\Delta x, t)A&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Con lo que queda &amp;lt;math&amp;gt;A u_t(x,t) \Delta x = F(x,t)A-F(x+\Delta x, t)A&amp;lt;/math&amp;gt;, y al dividir &amp;lt;math&amp;gt;A \Delta x&amp;lt;/math&amp;gt;, nos queda &amp;lt;math&amp;gt;u_t(x,t)= \frac {F(x,t)-F(x+\Delta x, t)}{\Delta x}&amp;lt;/math&amp;gt;. &amp;lt;br /&amp;gt;&lt;br /&gt;
Como &amp;lt;math&amp;gt;\Delta x \rightarrow 0 &amp;lt;/math&amp;gt;, &amp;lt;math&amp;gt;u_t(x,t)= -F_x(x,t)&amp;lt;/math&amp;gt;, y aplicando ley de Fick, &amp;lt;math&amp;gt;u_t(x,t)=-\frac{\partial }{\partial x}(-D u_x(x,t)) = D u_xx(x,t) &amp;lt;/math&amp;gt;.&amp;lt;br /&amp;gt;&lt;br /&gt;
Con lo que resulta una ecuación en derivadas parciales que determina la concentración de sustancia:&lt;br /&gt;
&amp;lt;math&amp;gt;u_t(x,t)- D u_xx(x,t)= 0 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Planteamiento del problema bien propuesto ==&lt;br /&gt;
&lt;br /&gt;
Suponemos que el flujo será nula al haber una tapa en los extremos del tubo, con lo que el problema bien propuesto quedaría::&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\begin{cases}&lt;br /&gt;
u_t(x,t)- D u_{xx}(x,t)= 0 ; x\in (0,5) \\&lt;br /&gt;
u(x,0)=u_0 , x\in (0,5) \\&lt;br /&gt;
u_x(0,t)=0 , u_x(5,t)=0 ; t\geq 0&lt;br /&gt;
\end{cases}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= Resolución numérica =&lt;br /&gt;
Para la resolución de ésta ecuación necesitaremos mínimo tres condiciones, dos de las cuales serán de contorno, y la otra será la condición inicial.Si suponemos &amp;lt;math&amp;gt;u_0(x,0)&amp;lt;/math&amp;gt;, entonces:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; u_0(x,0)=\begin{cases}&lt;br /&gt;
0,  si x\leq 3\\&lt;br /&gt;
3,  si x&amp;gt;3&lt;br /&gt;
\end{cases}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Resolución por el método de las diferencias finitas ==&lt;br /&gt;
En el primer caso particular que estudiaremos, trataremos de obtener una resolución numérica del problema anteriormente planteado, dónde tenemos las fronteras aisladas y las concentraciones iniciales conocidas:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\begin{cases}&lt;br /&gt;
u_t(x,t)- D u_{xx}(x,t)= 0; x\in (0,5), t\geq 0 \\&lt;br /&gt;
u_0(x,0), x\in (0,5) \\&lt;br /&gt;
u_x(0,t)=0, u_x(5,t)=0, t\geq 0&lt;br /&gt;
\end{cases}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
La resolución por el método de las diferencias finitas se basa en expresar el problema continuo a un sistema discreto de ecuaciones diferenciales de primer orden. Particularizando para nuestro caso con las condiciones dadas, el problema planteado sería:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\begin{cases}&lt;br /&gt;
u'_n(t)+\frac{-u_{n-1}(t)+2u_n(t)+u_{n+1}(t)}{h^2} \\&lt;br /&gt;
\frac{u_1(t)-u_-1(t)}{2h} \rightarrow u_1(t)=u_-1(t) \\&lt;br /&gt;
\frac{u_{N+1}(t)-u_{N-1}(t)}{2h} \rightarrow u_{N+1}(t)=u_{N-1}\\&lt;br /&gt;
u_n(0)=u^0(x)&lt;br /&gt;
\end{cases}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Por lo que tenemos un sistema de la forma:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\begin{cases}&lt;br /&gt;
U'(t)+KU(t)=F(t)=0\\&lt;br /&gt;
U(0)=U^0&lt;br /&gt;
\end{cases}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Con &amp;lt;math&amp;gt;N+1&amp;lt;/math&amp;gt; ecuaciones.&lt;br /&gt;
==== Resolución por método del trapecio ====&lt;br /&gt;
Suponiendo que en el instante inicial se verifica  :&amp;lt;math&amp;gt;&lt;br /&gt;
u(x,0)=\left\{\begin{matrix}\\0, x≤3\\3, x&amp;gt;3\end{matrix}\right.&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Si tomamos &amp;lt;math&amp;gt;\triangle t= \triangle x/4&amp;lt;/math&amp;gt; en &amp;lt;math&amp;gt;t\in\ [0,5]&amp;lt;/math&amp;gt;, con &amp;lt;math&amp;gt;\triangle x=0.1&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
El código en MATLAB del método sería:&lt;br /&gt;
&lt;br /&gt;
{{matlab| codigo=&lt;br /&gt;
%Datos&lt;br /&gt;
L=5; %Longitud de varilla&lt;br /&gt;
T=5; %tiempo final&lt;br /&gt;
q=1;&lt;br /&gt;
%Discretización temporal y espacial&lt;br /&gt;
dx=0.1; % Paso en espacio&lt;br /&gt;
N=L/dx; %Número de subintervalos&lt;br /&gt;
x=0:dx:L; % Vector de espacio&lt;br /&gt;
dt=dx/4; % Paso en tiempo&lt;br /&gt;
t=0:dt:T; % Vector de tiempos&lt;br /&gt;
% Matriz de coeficientes. Aproximacion de -q*u_xx&lt;br /&gt;
K=2*diag(ones(1,N+1))-diag(ones(1,N),1)-diag(ones(1,N),-1);&lt;br /&gt;
K(1,2)=-2;&lt;br /&gt;
K(N+1,N)=-2;&lt;br /&gt;
K=q*K/dx^2;&lt;br /&gt;
% Calculamos u0 condición inicial&lt;br /&gt;
u0=[zeros(1,1+N*3/5),3*ones(1,N*2/5)]';&lt;br /&gt;
% F=0 (no la consideramos)&lt;br /&gt;
sol(1,:)=u0'; % Guardamos la solucion&lt;br /&gt;
U=u0; % Inicializacion&lt;br /&gt;
% Calculamos U_n -&amp;gt; U_n+1&lt;br /&gt;
%Aplicamos método trapecio método del trapecio&lt;br /&gt;
for j=1:length(t)-1&lt;br /&gt;
U=(eye(N+1)+(dt*K)/2)\((eye(N+1)-(K*dt)/2)*U);&lt;br /&gt;
sol(j+1,:)= U'; % Guardamos solucion&lt;br /&gt;
end&lt;br /&gt;
%Dibujamos la solucion&lt;br /&gt;
[xx,tt]=meshgrid(x,t);&lt;br /&gt;
surf(xx,tt,sol);&lt;br /&gt;
}}&lt;br /&gt;
[[Archivo:nur.jpg|500px|thumb|centro|Gráfica concentración / espacio-tiempo. Resolución por el método del trapecio.]]&lt;br /&gt;
&lt;br /&gt;
==== Resolución por método de Euler explícito ====&lt;br /&gt;
{{matlab| codigo=&lt;br /&gt;
%Datos&lt;br /&gt;
L=5; %Longitud de varilla&lt;br /&gt;
T=5; %tiempo final&lt;br /&gt;
q=1;&lt;br /&gt;
%Discretización temporal y espacial&lt;br /&gt;
dx=0.1; % Paso en espacio&lt;br /&gt;
N=L/dx; %Número de subintervalos&lt;br /&gt;
x=0:dx:L; % Vector de espacio&lt;br /&gt;
dt=dx/20; % Paso en tiempo&lt;br /&gt;
t=0:dt:T; % Vector de tiempos&lt;br /&gt;
% Matriz de coeficientes. Aproximacion de -q*u_xx&lt;br /&gt;
K=2*diag(ones(1,N+1))-diag(ones(1,N),1)-diag(ones(1,N),-1);&lt;br /&gt;
K(1,2)=-2;&lt;br /&gt;
K(N+1,N)=-2;&lt;br /&gt;
K=q*K/dx^2;&lt;br /&gt;
% Calculamos u0 condición inicial&lt;br /&gt;
u0=[zeros(1,1+N*3/5),3*ones(1,N*2/5)]';&lt;br /&gt;
% F=0 (no la consideramos)&lt;br /&gt;
sol(1,:)=u0'; % Guardamos la solucion&lt;br /&gt;
U=u0; % Inicializacion&lt;br /&gt;
% Calculamos U_n -&amp;gt; U_n+1&lt;br /&gt;
%Aplicamos método Euler explícito&lt;br /&gt;
for j=1:length(t)-1 &lt;br /&gt;
k1=-K*U; % Calculamos k1=h*f(tn,yn)&lt;br /&gt;
k2=-K*(U+dt*k1); % Calculamos k2=h*f(tn+h/2,yn+1/2*k1)&lt;br /&gt;
% Meto los datos en el vector&lt;br /&gt;
U=U+(dt/2)*(k1+k2);&lt;br /&gt;
sol(j+1,:)= U'; % Guardamos solucion&lt;br /&gt;
end&lt;br /&gt;
%Dibujamos la solucion&lt;br /&gt;
[xx,tt]=meshgrid(x,t);&lt;br /&gt;
surf(xx,tt,sol);&lt;br /&gt;
}}&lt;br /&gt;
[[Archivo:mig.jpg|500px|thumb|centro|Gráfica concentración / espacio-tiempo. Resolución por el método de Euler explícito.]]&lt;br /&gt;
&lt;br /&gt;
==== Resolución por método de Euler implícito ====&lt;br /&gt;
{{matlab| codigo=&lt;br /&gt;
%Datos&lt;br /&gt;
L=5; %Longitud de varilla&lt;br /&gt;
T=5;&lt;br /&gt;
q=1;&lt;br /&gt;
%Discretización temporal y espacial&lt;br /&gt;
dx=0.1; % Paso en espacio&lt;br /&gt;
N=L/dx; %Número de subintervalos&lt;br /&gt;
h=L/N;&lt;br /&gt;
x=0:h:L; % Vector de espacio&lt;br /&gt;
dt=h/20; % Paso en tiempo&lt;br /&gt;
t=0:dt:T; % Vector de tiempos&lt;br /&gt;
% Matriz de coeficientes. Aproximacion de -q*u_xx&lt;br /&gt;
K=2*diag(ones(1,N+1))-diag(ones(1,N),1)-diag(ones(1,N),-1);&lt;br /&gt;
K(1,2)=-2;&lt;br /&gt;
K(N+1,N)=-2;&lt;br /&gt;
K=q*K/h^2;&lt;br /&gt;
% Calculamos u0 condición inicial&lt;br /&gt;
u0=[zeros(1,1+N*3/5),3*ones(1,N*2/5)]';&lt;br /&gt;
% F=0 (no la consideramos)&lt;br /&gt;
sol(1,:)=u0'; % Guardamos la solucion&lt;br /&gt;
U=u0; % Inicializacion&lt;br /&gt;
% Calculamos U_n -&amp;gt; U_n+1&lt;br /&gt;
% Aplicamos método implícito&lt;br /&gt;
for j=1:length(t)-1 &lt;br /&gt;
U=U-dt*K*U; &lt;br /&gt;
sol(j+1,:)= U'; % Guardamos solucion&lt;br /&gt;
end&lt;br /&gt;
%Dibujamos la solucion&lt;br /&gt;
[xx,tt]=meshgrid(x,t);&lt;br /&gt;
surf(xx,tt,sol);&lt;br /&gt;
}}&lt;br /&gt;
[[Archivo:migap.jpg|500px|thumb|centro|Gráfica concentración / espacio-tiempo. Resolución por el método de Euler implícito.]]&lt;br /&gt;
&lt;br /&gt;
==== Resolución por método de Euler modificado ====&lt;br /&gt;
{{matlab| codigo=&lt;br /&gt;
%Datos&lt;br /&gt;
L=5; %Longitud de varilla&lt;br /&gt;
T=5;&lt;br /&gt;
q=1;&lt;br /&gt;
%Discretización temporal y espacial&lt;br /&gt;
dx=0.1; % Paso en espacio&lt;br /&gt;
N=L/dx; %Número de subintervalos&lt;br /&gt;
h=L/N;&lt;br /&gt;
x=0:h:L; % Vector de espacio&lt;br /&gt;
dt=h/20; % Paso en tiempo&lt;br /&gt;
t=0:dt:T; % Vector de tiempos&lt;br /&gt;
% Matriz de coeficientes. Aproximacion de -q*u_xx&lt;br /&gt;
K=2*diag(ones(1,N+1))-diag(ones(1,N),1)-diag(ones(1,N),-1);&lt;br /&gt;
K(1,2)=-2;&lt;br /&gt;
K(N+1,N)=-2;&lt;br /&gt;
K=q*K/h^2;&lt;br /&gt;
% Calculamos u0 condición inicial&lt;br /&gt;
u0=[zeros(1,1+N*3/5),3*ones(1,N*2/5)]';&lt;br /&gt;
% F=0 (no la consideramos)&lt;br /&gt;
sol(1,:)=u0'; % Guardamos la solucion&lt;br /&gt;
U=u0; % Inicializacion&lt;br /&gt;
% Calculamos U_n -&amp;gt; U_n+1&lt;br /&gt;
for j=1:length(t)-1 &lt;br /&gt;
k1=-K*U; % Calculamos k1=h*f(tn,yn)&lt;br /&gt;
k2=-K*(U+dt*k1); % Calculamos k2=h*f(tn+h/2,yn+1/2*k1)&lt;br /&gt;
% Meto los datos en el vector&lt;br /&gt;
U=U+(dt/2)*(k1+k2);&lt;br /&gt;
sol(j+1,:)= U'; % Guardamos solucion&lt;br /&gt;
end&lt;br /&gt;
%Dibujamos la solucion&lt;br /&gt;
[xx,tt]=meshgrid(x,t);&lt;br /&gt;
surf(xx,tt,sol);&lt;br /&gt;
}}&lt;br /&gt;
[[Archivo: mig.jpg|500px|thumb|centro|Gráfica concentración / espacio-tiempo. Resolución por el método de Euler modificado.]]&lt;br /&gt;
&lt;br /&gt;
== Conservación de la masa total de contaminante ==&lt;br /&gt;
A continuación demostraremos que la masa total de contaminante en el tubo se conserva a lo largo del tiempo, que se puede deducir a partir de la ecuación sin tener que resolverla. Integramos la ecuación y debido a las condiciones de frontera:&lt;br /&gt;
&amp;lt;math&amp;gt;\frac d {dt} \int_0^5 u(x,t)\,dx= \int_0^5 u_{xx}(x,t)\,dx= u_x(x,t)|_0^5=0&amp;lt;/math&amp;gt;&lt;br /&gt;
{{matlab| codigo=&lt;br /&gt;
%Datos&lt;br /&gt;
L=5; %Longitud de varilla&lt;br /&gt;
T=5;&lt;br /&gt;
q=1;&lt;br /&gt;
%Discretización temporal y espacial&lt;br /&gt;
N=500; %Número de subintervalos&lt;br /&gt;
h=L/N;&lt;br /&gt;
x=0:h:L; % Vector de espacio&lt;br /&gt;
dt=h/4; % Paso en tiempo&lt;br /&gt;
t=0:dt:T; % Vector de tiempos&lt;br /&gt;
% Matriz de coeficientes. Aproximacion de -q*u_xx&lt;br /&gt;
K=2*diag(ones(1,N+1))-diag(ones(1,N),1)-diag(ones(1,N),-1);&lt;br /&gt;
K(1,2)=-2;&lt;br /&gt;
K(N+1,N)=-2;&lt;br /&gt;
K=q*K/h^2;&lt;br /&gt;
% Calculamos u0 condición inicial&lt;br /&gt;
u0=[zeros(1,1+N*3/5),3*ones(1,N*2/5)]';&lt;br /&gt;
% F=0 (no la consideramos)&lt;br /&gt;
sol(1,:)=u0'; % Guardamos la solucion&lt;br /&gt;
U=u0; % Inicializacion&lt;br /&gt;
% Calculamos U_n -&amp;gt; U_n+1&lt;br /&gt;
for j=1:length(t)-1 &lt;br /&gt;
U=(eye(N+1)+dt*K)\(U+dt*F); &lt;br /&gt;
sol(j+1,:)= U'; % Guardamos solucion&lt;br /&gt;
end&lt;br /&gt;
% Calculamos el area de la funcion en cada tiempo (area = cantidad de contaminante)&lt;br /&gt;
areas=zeros(1,length(t));&lt;br /&gt;
for i=1:length(t)&lt;br /&gt;
f=sol(i,:);&lt;br /&gt;
w=trapz(x,f);&lt;br /&gt;
area(i)=w;&lt;br /&gt;
end&lt;br /&gt;
%Dibujamos&lt;br /&gt;
plot(t,area)&lt;br /&gt;
xlabel('Tiempo')&lt;br /&gt;
ylabel('Cantidad de contaminante')&lt;br /&gt;
}}&lt;br /&gt;
[[Archivo:aleeex.jpg|500px|thumb|centro|Conservación masa total de contaminante]]&lt;br /&gt;
[[Archivo:gime.jpg|500px|thumb|centro|Conservación masa total de contaminante]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Concentración a lo largo del tiempo==&lt;br /&gt;
La concentración de la sustancia contaminante en la varilla varía con el tiempo, pero en un cierto momento esta concentración se va homogeneizando, y deja de variar, entrando en un estado estacionario::&lt;br /&gt;
&amp;lt;math&amp;gt; u_t(x,t)- D*u_{xx}(x,t)=0 &amp;lt;/math&amp;gt; :    &lt;br /&gt;
&amp;lt;math&amp;gt; u_t(x,t)=0 \rightarrow D*u_{xx}(x,t)=0 &amp;lt;/math&amp;gt; :&lt;br /&gt;
&amp;lt;math&amp;gt; u=c_1*x+c_2 &amp;lt;/math&amp;gt; &lt;br /&gt;
Utizando Matlab comprobaremos que &amp;lt;math&amp;gt; c_1=0 &amp;lt;/math&amp;gt; &amp;lt;math&amp;gt; c_2=1.17 &amp;lt;/math&amp;gt;&lt;br /&gt;
Para tiempos grandes la concentración se estabiliza en torno a 1.17 en toda la varilla, de forma que la solución se asemejará a una función lineal constante.&lt;br /&gt;
&lt;br /&gt;
{{matlab| codigo=&lt;br /&gt;
%Datos&lt;br /&gt;
L=5; %Longitud de varilla&lt;br /&gt;
T=50;&lt;br /&gt;
q=1;&lt;br /&gt;
%Discretización temporal y espacial&lt;br /&gt;
dx=0.1; % Paso en espacio&lt;br /&gt;
N=L/dx; %Número de subintervalos&lt;br /&gt;
h=L/N;&lt;br /&gt;
x=0:h:L; % Vector de espacio&lt;br /&gt;
dt=h/4; % Paso en tiempo&lt;br /&gt;
t=0:dt:T; % Vector de tiempos&lt;br /&gt;
% Matriz de coeficientes. Aproximacion de -q*u_xx&lt;br /&gt;
K=2*diag(ones(1,N+1))-diag(ones(1,N),1)-diag(ones(1,N),-1);&lt;br /&gt;
K(1,2)=-2;&lt;br /&gt;
K(N+1,N)=-2;&lt;br /&gt;
K=q*K/h^2;&lt;br /&gt;
% Calculamos u0 condición inicial&lt;br /&gt;
u0=[zeros(1,1+N*3/5),3*ones(1,N*2/5)]';&lt;br /&gt;
% F=0 (no la consideramos)&lt;br /&gt;
sol(1,:)=u0'; % Guardamos la solucion&lt;br /&gt;
U=u0; % Inicializacion&lt;br /&gt;
% Calculamos U_n -&amp;gt; U_n+1&lt;br /&gt;
%Aplicamos método trapecio método del trapecio&lt;br /&gt;
for j=1:length(t)-1&lt;br /&gt;
U=(eye(N+1)+(dt*K)/2)\((eye(N+1)-(K*dt)/2)*U);&lt;br /&gt;
sol(j+1,:)= U'; % Guardamos solucion&lt;br /&gt;
end&lt;br /&gt;
%Solución estacionaria&lt;br /&gt;
a=sol(length(t),:);&lt;br /&gt;
b=sol(1,:);&lt;br /&gt;
c=sol((length(t)-1)/50+1,:);&lt;br /&gt;
d=sol((length(t)-1)*2/50+1,:);&lt;br /&gt;
e=sol((length(t)-1)*10/50+1,:);&lt;br /&gt;
hold on&lt;br /&gt;
plot(x,a,'xk','linewidth',2);&lt;br /&gt;
plot(x,b,'-m','linewidth',1);&lt;br /&gt;
plot(x,c,'-g','linewidth',1);&lt;br /&gt;
plot(x,d,'-y','linewidth',1);&lt;br /&gt;
plot(x,e,'-b','linewidth',1);&lt;br /&gt;
legend('u(50s)','u(0s)','u(1s)','u(2s)','u(10s)');&lt;br /&gt;
xlabel('Posición en la varilla')&lt;br /&gt;
ylabel('Concentracion')&lt;br /&gt;
hold off&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Soluciones(t).jpg|500px|thumb|centro|Soluciones a lo largo del tiempo]]&lt;br /&gt;
&lt;br /&gt;
La distancia entre la solución estacionaria y las soluciones para los siguientes instantes: 0s, 1s, 2s y 10s; se puede apreciar en la imagen anterior. &lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
Una vez analizado los datos, se demuestra que la sustancia contaminante se estabiliza en t=9.98s, con un error del 5%.&lt;br /&gt;
&lt;br /&gt;
En el caso de que consideremos Δx'=Δx/10,el tiempo en el que se estabiliza la cantidad de sustancia contaminante será t=10s, dato que será más preciso debido a que el paso realizado en el programa es menor.&lt;br /&gt;
&lt;br /&gt;
==Nueva condición de frontera==&lt;br /&gt;
&lt;br /&gt;
Si colocamos un limpiador, que elimina la sustancia contaminante, en el extremo izquierdo de la varilla, varían las condiciones de contorno del problema. En este caso, en el extremo izquierdo, la condición inicial será de tipo Dirichlet ya que se esta variación esta provocada por un mecanismo físico externo que actúa sobre el extremo. &amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;math&amp;gt;\begin{cases}&lt;br /&gt;
u_t(x,t)- D u_{xx}(x,t)= 0 ; x\in (0,5) \\&lt;br /&gt;
u(x,0)=u_0 , x\in (0,5) \\&lt;br /&gt;
u(0,t)=0 , u_x(5,t)=0 ; t\geq 0&lt;br /&gt;
\end{cases}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Dadas las nuevas condiciones, resolvemos el problema por el método de diferencias finitas con la ayuda de Matlab.&lt;br /&gt;
&lt;br /&gt;
{{matlab| codigo=&lt;br /&gt;
%Datos&lt;br /&gt;
L=5; %Longitud de varilla&lt;br /&gt;
T=5; %tiempo final&lt;br /&gt;
q=1;&lt;br /&gt;
%Discretización temporal y espacial&lt;br /&gt;
dx=0.1; % Paso en espacio&lt;br /&gt;
N=L/dx; %Número de subintervalos&lt;br /&gt;
x=0:dx:L;% Vector de espacio&lt;br /&gt;
dt=dx/4; % Paso en tiempo&lt;br /&gt;
t=0:dt:T; % Vector de tiempos&lt;br /&gt;
% Matriz de coeficientes. Aproximacion de -q*u_xx&lt;br /&gt;
K=2*diag(ones(1,N))-diag(ones(1,N-1),1)-diag(ones(1,N-1),-1);&lt;br /&gt;
K(N,N-1)=-2;&lt;br /&gt;
K=q*K/dx^2;&lt;br /&gt;
% Matriz F&lt;br /&gt;
F=zeros(N,1);&lt;br /&gt;
% Calculamos u0 condición inicial&lt;br /&gt;
u0=[zeros(1,N*3/5),3*ones(1,N*2/5)]';&lt;br /&gt;
sol(1,:)=[0,u0']; &lt;br /&gt;
U=u0; % Inicializacion&lt;br /&gt;
% Calculamos U_n -&amp;gt; U_n+1&lt;br /&gt;
%Aplicamos método trapecio método del trapecio&lt;br /&gt;
for j=1:length(t)-1&lt;br /&gt;
U=(eye(N)+(dt*K))\(dt*F+U);&lt;br /&gt;
sol(j+1,:)= [0,U'];&lt;br /&gt;
end&lt;br /&gt;
%Dibujamos la solucion&lt;br /&gt;
[xx,tt]=meshgrid(x,t);&lt;br /&gt;
surf(xx,tt,sol);&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Xata.JPG|500px|thumb|centro|Solución al variar las condiciones de contorno del problema.]]&lt;br /&gt;
&lt;br /&gt;
Observando la gráfica, y por la presencia del limpiador en el extremo de la varilla, para tiempos grandes la cantidad de sustancia contaminante será nula en toda la varilla. En realidad, esto no es del todo cierto puesto que la sustancia no llega a eliminarse completamente, ya que el limpiador solo elimina la sustancia contaminante en el extremo izquierdo. Aunque la concentración en todos los puntos disminuye de manera exponencial, permanece asintótica a 0.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Trapotito.JPG|500px|thumb|centro|Momento en el que se estabiliza con la presencia del limpiador.]]&lt;br /&gt;
&lt;br /&gt;
==Resolución por el método de Fourier==&lt;br /&gt;
&lt;br /&gt;
Las condiciones de frontera del problema son homogéneas, por lo que podemos aplicar este método de cálculo, sin realizar ningún cambio.&lt;br /&gt;
El primer paso es resolver el problema de autovalores asociado::&lt;br /&gt;
&amp;lt;math&amp;gt;\begin{cases}&lt;br /&gt;
y''+λy=0 x \in (0,5) \\&lt;br /&gt;
y'(0)=0 \\&lt;br /&gt;
y'(5)=0&lt;br /&gt;
\end{cases}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
Realizando analíticamente el cálculo, obtenemos los siguientes autovalores y autofunciones::&lt;br /&gt;
&amp;lt;math&amp;gt; λ_k=\frac{k^2π^2}{25}  →  φ_k=sin\frac{kπ}{5}x , k=0,1,2,3... &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Las condiciones de frontera e iniciales serían las siguientes en términos de la serie de Fourier::&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \sum_{k=0}^∞c_k(t)φ_k(x)=0  ,   \sum_{k=0}^∞a_k(t)φ_k(x)\begin{cases} 0, x≤3 \\ 3, x&amp;gt;3\end{cases} &amp;lt;/math&amp;gt;&lt;br /&gt;
 &lt;br /&gt;
Y ensayamos soluciones de la forma::&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; u(x,t)=\sum_{k=0}^∞T_k(t)φ_k(x)=\sum_{k=0}^∞T_k(t)sin\frac{kπ}{5}x &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Relacionando los resultados obtenidos en el problema de autovalores y el problema de difusión de la sustancia contaminante obtenemos lo siguiente::&lt;br /&gt;
&amp;lt;math&amp;gt;\begin{cases} T'_k(t)+μ_kT_k(t)=c_k=0 \\ T_k(0)=a_k \end{cases} &amp;lt;/math&amp;gt;&lt;/div&gt;</summary>
		<author><name>Karlo André</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Difusi%C3%B3n_de_una_sustancia_contaminante_(Grupo_10)&amp;diff=12936</id>
		<title>Difusión de una sustancia contaminante (Grupo 10)</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Difusi%C3%B3n_de_una_sustancia_contaminante_(Grupo_10)&amp;diff=12936"/>
				<updated>2014-05-19T17:59:51Z</updated>
		
		<summary type="html">&lt;p&gt;Karlo André: /* Resolución por el método de Fourier */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;''''''Texto en negrita''''''[[Archivo:nuriat.png|200px|thumb|right|Tubo con sustancia contaminante]]&lt;br /&gt;
La difusión implica un movimiento espontáneo y desordenado de moléculas individuales y, especialmente, nos interesa la difusión de moléculas de una sustancia disuelta en otra.&lt;br /&gt;
&lt;br /&gt;
La difusión de una sustancia puede considerarse análoga al flujo de calor, y la ley de Fick establece que el ritmo de difusión por unidad de superficie, en dirección perpendicular a ésta, es proporcional al gradiente de la concentración de esa sustancia en esa dirección. La concentración es la masa de la sustancia por unidad de volumen, y el gradiente de concentración es la variación de concentración por unidad de distancia.&lt;br /&gt;
&lt;br /&gt;
Para determinar como se distribuye la concentración de una sustancia contaminante tomaremos como ejemplo un tubo largo compuesto por dos sustancias de las cuáles una de ellas es contaminante.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
= Simplificación del problema =&lt;br /&gt;
&lt;br /&gt;
Para que este problema resulte más sencillo aplicaremos una serie de condiciones, facilitando el cálculo del mismo.&lt;br /&gt;
&lt;br /&gt;
En primer lugar denotaremos su concentración &amp;lt;math&amp;gt; u &amp;lt;/math&amp;gt;, concentración de contaminante en cada posición del tubo y constante en cada sección, medida en &amp;lt;math&amp;gt; \frac{mol}{m^2*s} &amp;lt;/math&amp;gt;. &lt;br /&gt;
&lt;br /&gt;
Supondremos que el tubo mide L=5 m, ocupando el intervalo &amp;lt;math&amp;gt; x \in (0,L) &amp;lt;/math&amp;gt;, y que la concentración es la misma en cualquier punto de la sección transversal del tubo. Por tanto, la concentración dependerá unicamente de dos variables &amp;lt;math&amp;gt; u = u(x,t) &amp;lt;/math&amp;gt;. En los extremos se ha colocado un aislante que hace que el flujo de contaminante al exterior del tubo sea nulo. Además, consideraremos la simplificación de que se trata de un tubo aislado por sus laterales, pero abierto por las bases del cilindro.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Ley de conservación de masa ==&lt;br /&gt;
&lt;br /&gt;
Tras una serie de experimentos realizados por Lavoisier, se pusieron de manifiesto que si tenemos en cuenta todas las sustancias que forman parte en una reacción química y todos los productos formados, nunca varía la masa. Esta ley exige que no haya una generación espontánea de materia. Es decir, en la región del espacio estudiada, no existe entrada o salida por un punto cualquiera (frontera o interior), la masa en esta región se mantiene constante. Esta es la ley de la conservación de la masa, que podemos enunciarla, pues, de la siguiente manera: &amp;lt;br /&amp;gt;&lt;br /&gt;
''&amp;quot;En toda reacción química la masa se conserva, esto es, la masa total de los reactivos es igual a la masa total de los productos&amp;quot;'' &amp;lt;br /&amp;gt;&lt;br /&gt;
La ley de conservación de masas exige que no haya una generación espontánea de materia. Es decir, en la región del espacio estudiada, no existe entrada o salida por un punto cualquiera (frontera o interior), la masa en esta región se mantiene constante.&lt;br /&gt;
&lt;br /&gt;
Esta suposición, en términos de variación de masa, puede quedar determinada como:&lt;br /&gt;
&lt;br /&gt;
''Variación de la masa en el tiempo = flujo de masa a través de la frontera por unidad de tiempo + flujo de masa generada en el interior por unidad de tiempo. ''&lt;br /&gt;
&lt;br /&gt;
== Ley de Fick ==&lt;br /&gt;
Se trata de una ley cuantitativa en forma diferencial que describe la difusión de materia o energía en un medio en el que inicialmente existe equilibrio químico o físico. Esta ley se trata de una generalización de los fenómenos descritos por la '''Ley de Fourier''', ya que esta es una consideración concreta del calor.&lt;br /&gt;
&lt;br /&gt;
La ley de Fick anuncia que en el caso de existir diferencias de concentración en cualquier especie, el paso de estas especies se llevará a cabo desde las regiones con mayor concentración a las de menor. Formulado matemáticamente:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;F(x,t)=-D\frac{\partial u}{\partial x}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Donde &amp;lt;math&amp;gt;F&amp;lt;/math&amp;gt; es el flujo de la sustancia y &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; el coeficiente de difusión, que representa la facilidad en que un soluto particular se mueve por un disolvente determinado.&lt;br /&gt;
&lt;br /&gt;
La ley de Fick establece que el flujo de difusión del contaminante es proporcional a la variación de concentración:&lt;br /&gt;
&amp;lt;math&amp;gt; F(x,t)=-D\frac{\partial u}{\partial x} &amp;lt;/math&amp;gt;&lt;br /&gt;
donde D es el coeficiente de difusión (medido en &amp;lt;math&amp;gt; \frac{m^2}{s} &amp;lt;/math&amp;gt;), que depende de las propiedades físicas de los compuestos, y que se supone constante D=1.&lt;br /&gt;
&lt;br /&gt;
= Modelización de la ecuación diferencial =&lt;br /&gt;
&lt;br /&gt;
Aplicando el principio de conservación de la masa y la ley de Fourier, definimos la variable &amp;lt;math&amp;gt; u(x,t)&amp;lt;/math&amp;gt; en unidades de sustancia por área, es decir, concentración por superficie del tubo.&lt;br /&gt;
&lt;br /&gt;
Consideramos &amp;lt;math&amp;gt; A &amp;lt;/math&amp;gt; como variable superficie, y tomamos un pequeño trozo, definido por &amp;lt;math&amp;gt;\Delta x&amp;lt;/math&amp;gt;. Entonces, para obtener la variación de la masa en el tiempo:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; A u(x,t) \Delta x &amp;lt;/math&amp;gt; &lt;br /&gt;
&lt;br /&gt;
Y derivando en el tiempo:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; A u_t(x,t) \Delta x &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
obtenemos el primer término de la igualdad anteriormente enunciada.&lt;br /&gt;
&lt;br /&gt;
En el segundo, consideramos nulo el flujo de masa en los puntos interiores por unidad de tiempo, pues suponemos la tubería perfecta y sin sumideros.&lt;br /&gt;
&lt;br /&gt;
Como la superﬁcie lateral del tubo está aislada, solamente habrá flujo de sustancia en la dirección del eje &amp;lt;math&amp;gt;x&amp;lt;/math&amp;gt;. Si &amp;lt;math&amp;gt;F(x,t)&amp;gt; 0&amp;lt;/math&amp;gt; pensamos que el ﬂujo va hacia la derecha, si &amp;lt;math&amp;gt;F(x,t)&amp;lt; 0&amp;lt;/math&amp;gt;, este va a hacia la izquierda. El ﬂujo de&lt;br /&gt;
calor en un intervalo &amp;lt;math&amp;gt;[x, x + ∆x ] &amp;lt;/math&amp;gt; viene dado dado por:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;F(x,t)A-F(x+\Delta x, t)A&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Con lo que queda &amp;lt;math&amp;gt;A u_t(x,t) \Delta x = F(x,t)A-F(x+\Delta x, t)A&amp;lt;/math&amp;gt;, y al dividir &amp;lt;math&amp;gt;A \Delta x&amp;lt;/math&amp;gt;, nos queda &amp;lt;math&amp;gt;u_t(x,t)= \frac {F(x,t)-F(x+\Delta x, t)}{\Delta x}&amp;lt;/math&amp;gt;. &amp;lt;br /&amp;gt;&lt;br /&gt;
Como &amp;lt;math&amp;gt;\Delta x \rightarrow 0 &amp;lt;/math&amp;gt;, &amp;lt;math&amp;gt;u_t(x,t)= -F_x(x,t)&amp;lt;/math&amp;gt;, y aplicando ley de Fick, &amp;lt;math&amp;gt;u_t(x,t)=-\frac{\partial }{\partial x}(-D u_x(x,t)) = D u_xx(x,t) &amp;lt;/math&amp;gt;.&amp;lt;br /&amp;gt;&lt;br /&gt;
Con lo que resulta una ecuación en derivadas parciales que determina la concentración de sustancia:&lt;br /&gt;
&amp;lt;math&amp;gt;u_t(x,t)- D u_xx(x,t)= 0 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Planteamiento del problema bien propuesto ==&lt;br /&gt;
&lt;br /&gt;
Suponemos que el flujo será nula al haber una tapa en los extremos del tubo, con lo que el problema bien propuesto quedaría::&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\begin{cases}&lt;br /&gt;
u_t(x,t)- D u_{xx}(x,t)= 0 ; x\in (0,5) \\&lt;br /&gt;
u(x,0)=u_0 , x\in (0,5) \\&lt;br /&gt;
u_x(0,t)=0 , u_x(5,t)=0 ; t\geq 0&lt;br /&gt;
\end{cases}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= Resolución numérica =&lt;br /&gt;
Para la resolución de ésta ecuación necesitaremos mínimo tres condiciones, dos de las cuales serán de contorno, y la otra será la condición inicial.Si suponemos &amp;lt;math&amp;gt;u_0(x,0)&amp;lt;/math&amp;gt;, entonces:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; u_0(x,0)=\begin{cases}&lt;br /&gt;
0,  si x\leq 3\\&lt;br /&gt;
3,  si x&amp;gt;3&lt;br /&gt;
\end{cases}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Resolución por el método de las diferencias finitas ==&lt;br /&gt;
En el primer caso particular que estudiaremos, trataremos de obtener una resolución numérica del problema anteriormente planteado, dónde tenemos las fronteras aisladas y las concentraciones iniciales conocidas:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\begin{cases}&lt;br /&gt;
u_t(x,t)- D u_{xx}(x,t)= 0; x\in (0,5), t\geq 0 \\&lt;br /&gt;
u_0(x,0), x\in (0,5) \\&lt;br /&gt;
u_x(0,t)=0, u_x(5,t)=0, t\geq 0&lt;br /&gt;
\end{cases}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
La resolución por el método de las diferencias finitas se basa en expresar el problema continuo a un sistema discreto de ecuaciones diferenciales de primer orden. Particularizando para nuestro caso con las condiciones dadas, el problema planteado sería:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\begin{cases}&lt;br /&gt;
u'_n(t)+\frac{-u_{n-1}(t)+2u_n(t)+u_{n+1}(t)}{h^2} \\&lt;br /&gt;
\frac{u_1(t)-u_-1(t)}{2h} \rightarrow u_1(t)=u_-1(t) \\&lt;br /&gt;
\frac{u_{N+1}(t)-u_{N-1}(t)}{2h} \rightarrow u_{N+1}(t)=u_{N-1}\\&lt;br /&gt;
u_n(0)=u^0(x)&lt;br /&gt;
\end{cases}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Por lo que tenemos un sistema de la forma:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\begin{cases}&lt;br /&gt;
U'(t)+KU(t)=F(t)=0\\&lt;br /&gt;
U(0)=U^0&lt;br /&gt;
\end{cases}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Con &amp;lt;math&amp;gt;N+1&amp;lt;/math&amp;gt; ecuaciones.&lt;br /&gt;
==== Resolución por método del trapecio ====&lt;br /&gt;
Suponiendo que en el instante inicial se verifica  :&amp;lt;math&amp;gt;&lt;br /&gt;
u(x,0)=\left\{\begin{matrix}\\0, x≤3\\3, x&amp;gt;3\end{matrix}\right.&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Si tomamos &amp;lt;math&amp;gt;\triangle t= \triangle x/4&amp;lt;/math&amp;gt; en &amp;lt;math&amp;gt;t\in\ [0,5]&amp;lt;/math&amp;gt;, con &amp;lt;math&amp;gt;\triangle x=0.1&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
El código en MATLAB del método sería:&lt;br /&gt;
&lt;br /&gt;
{{matlab| codigo=&lt;br /&gt;
%Datos&lt;br /&gt;
L=5; %Longitud de varilla&lt;br /&gt;
T=5; %tiempo final&lt;br /&gt;
q=1;&lt;br /&gt;
%Discretización temporal y espacial&lt;br /&gt;
dx=0.1; % Paso en espacio&lt;br /&gt;
N=L/dx; %Número de subintervalos&lt;br /&gt;
x=0:dx:L; % Vector de espacio&lt;br /&gt;
dt=dx/4; % Paso en tiempo&lt;br /&gt;
t=0:dt:T; % Vector de tiempos&lt;br /&gt;
% Matriz de coeficientes. Aproximacion de -q*u_xx&lt;br /&gt;
K=2*diag(ones(1,N+1))-diag(ones(1,N),1)-diag(ones(1,N),-1);&lt;br /&gt;
K(1,2)=-2;&lt;br /&gt;
K(N+1,N)=-2;&lt;br /&gt;
K=q*K/dx^2;&lt;br /&gt;
% Calculamos u0 condición inicial&lt;br /&gt;
u0=[zeros(1,1+N*3/5),3*ones(1,N*2/5)]';&lt;br /&gt;
% F=0 (no la consideramos)&lt;br /&gt;
sol(1,:)=u0'; % Guardamos la solucion&lt;br /&gt;
U=u0; % Inicializacion&lt;br /&gt;
% Calculamos U_n -&amp;gt; U_n+1&lt;br /&gt;
%Aplicamos método trapecio método del trapecio&lt;br /&gt;
for j=1:length(t)-1&lt;br /&gt;
U=(eye(N+1)+(dt*K)/2)\((eye(N+1)-(K*dt)/2)*U);&lt;br /&gt;
sol(j+1,:)= U'; % Guardamos solucion&lt;br /&gt;
end&lt;br /&gt;
%Dibujamos la solucion&lt;br /&gt;
[xx,tt]=meshgrid(x,t);&lt;br /&gt;
surf(xx,tt,sol);&lt;br /&gt;
}}&lt;br /&gt;
[[Archivo:nur.jpg|500px|thumb|centro|Gráfica concentración / espacio-tiempo. Resolución por el método del trapecio.]]&lt;br /&gt;
&lt;br /&gt;
==== Resolución por método de Euler explícito ====&lt;br /&gt;
{{matlab| codigo=&lt;br /&gt;
%Datos&lt;br /&gt;
L=5; %Longitud de varilla&lt;br /&gt;
T=5; %tiempo final&lt;br /&gt;
q=1;&lt;br /&gt;
%Discretización temporal y espacial&lt;br /&gt;
dx=0.1; % Paso en espacio&lt;br /&gt;
N=L/dx; %Número de subintervalos&lt;br /&gt;
x=0:dx:L; % Vector de espacio&lt;br /&gt;
dt=dx/20; % Paso en tiempo&lt;br /&gt;
t=0:dt:T; % Vector de tiempos&lt;br /&gt;
% Matriz de coeficientes. Aproximacion de -q*u_xx&lt;br /&gt;
K=2*diag(ones(1,N+1))-diag(ones(1,N),1)-diag(ones(1,N),-1);&lt;br /&gt;
K(1,2)=-2;&lt;br /&gt;
K(N+1,N)=-2;&lt;br /&gt;
K=q*K/dx^2;&lt;br /&gt;
% Calculamos u0 condición inicial&lt;br /&gt;
u0=[zeros(1,1+N*3/5),3*ones(1,N*2/5)]';&lt;br /&gt;
% F=0 (no la consideramos)&lt;br /&gt;
sol(1,:)=u0'; % Guardamos la solucion&lt;br /&gt;
U=u0; % Inicializacion&lt;br /&gt;
% Calculamos U_n -&amp;gt; U_n+1&lt;br /&gt;
%Aplicamos método Euler explícito&lt;br /&gt;
for j=1:length(t)-1 &lt;br /&gt;
k1=-K*U; % Calculamos k1=h*f(tn,yn)&lt;br /&gt;
k2=-K*(U+dt*k1); % Calculamos k2=h*f(tn+h/2,yn+1/2*k1)&lt;br /&gt;
% Meto los datos en el vector&lt;br /&gt;
U=U+(dt/2)*(k1+k2);&lt;br /&gt;
sol(j+1,:)= U'; % Guardamos solucion&lt;br /&gt;
end&lt;br /&gt;
%Dibujamos la solucion&lt;br /&gt;
[xx,tt]=meshgrid(x,t);&lt;br /&gt;
surf(xx,tt,sol);&lt;br /&gt;
}}&lt;br /&gt;
[[Archivo:mig.jpg|500px|thumb|centro|Gráfica concentración / espacio-tiempo. Resolución por el método de Euler explícito.]]&lt;br /&gt;
&lt;br /&gt;
==== Resolución por método de Euler implícito ====&lt;br /&gt;
{{matlab| codigo=&lt;br /&gt;
%Datos&lt;br /&gt;
L=5; %Longitud de varilla&lt;br /&gt;
T=5;&lt;br /&gt;
q=1;&lt;br /&gt;
%Discretización temporal y espacial&lt;br /&gt;
dx=0.1; % Paso en espacio&lt;br /&gt;
N=L/dx; %Número de subintervalos&lt;br /&gt;
h=L/N;&lt;br /&gt;
x=0:h:L; % Vector de espacio&lt;br /&gt;
dt=h/20; % Paso en tiempo&lt;br /&gt;
t=0:dt:T; % Vector de tiempos&lt;br /&gt;
% Matriz de coeficientes. Aproximacion de -q*u_xx&lt;br /&gt;
K=2*diag(ones(1,N+1))-diag(ones(1,N),1)-diag(ones(1,N),-1);&lt;br /&gt;
K(1,2)=-2;&lt;br /&gt;
K(N+1,N)=-2;&lt;br /&gt;
K=q*K/h^2;&lt;br /&gt;
% Calculamos u0 condición inicial&lt;br /&gt;
u0=[zeros(1,1+N*3/5),3*ones(1,N*2/5)]';&lt;br /&gt;
% F=0 (no la consideramos)&lt;br /&gt;
sol(1,:)=u0'; % Guardamos la solucion&lt;br /&gt;
U=u0; % Inicializacion&lt;br /&gt;
% Calculamos U_n -&amp;gt; U_n+1&lt;br /&gt;
% Aplicamos método implícito&lt;br /&gt;
for j=1:length(t)-1 &lt;br /&gt;
U=U-dt*K*U; &lt;br /&gt;
sol(j+1,:)= U'; % Guardamos solucion&lt;br /&gt;
end&lt;br /&gt;
%Dibujamos la solucion&lt;br /&gt;
[xx,tt]=meshgrid(x,t);&lt;br /&gt;
surf(xx,tt,sol);&lt;br /&gt;
}}&lt;br /&gt;
[[Archivo:migap.jpg|500px|thumb|centro|Gráfica concentración / espacio-tiempo. Resolución por el método de Euler implícito.]]&lt;br /&gt;
&lt;br /&gt;
==== Resolución por método de Euler modificado ====&lt;br /&gt;
{{matlab| codigo=&lt;br /&gt;
%Datos&lt;br /&gt;
L=5; %Longitud de varilla&lt;br /&gt;
T=5;&lt;br /&gt;
q=1;&lt;br /&gt;
%Discretización temporal y espacial&lt;br /&gt;
dx=0.1; % Paso en espacio&lt;br /&gt;
N=L/dx; %Número de subintervalos&lt;br /&gt;
h=L/N;&lt;br /&gt;
x=0:h:L; % Vector de espacio&lt;br /&gt;
dt=h/20; % Paso en tiempo&lt;br /&gt;
t=0:dt:T; % Vector de tiempos&lt;br /&gt;
% Matriz de coeficientes. Aproximacion de -q*u_xx&lt;br /&gt;
K=2*diag(ones(1,N+1))-diag(ones(1,N),1)-diag(ones(1,N),-1);&lt;br /&gt;
K(1,2)=-2;&lt;br /&gt;
K(N+1,N)=-2;&lt;br /&gt;
K=q*K/h^2;&lt;br /&gt;
% Calculamos u0 condición inicial&lt;br /&gt;
u0=[zeros(1,1+N*3/5),3*ones(1,N*2/5)]';&lt;br /&gt;
% F=0 (no la consideramos)&lt;br /&gt;
sol(1,:)=u0'; % Guardamos la solucion&lt;br /&gt;
U=u0; % Inicializacion&lt;br /&gt;
% Calculamos U_n -&amp;gt; U_n+1&lt;br /&gt;
for j=1:length(t)-1 &lt;br /&gt;
k1=-K*U; % Calculamos k1=h*f(tn,yn)&lt;br /&gt;
k2=-K*(U+dt*k1); % Calculamos k2=h*f(tn+h/2,yn+1/2*k1)&lt;br /&gt;
% Meto los datos en el vector&lt;br /&gt;
U=U+(dt/2)*(k1+k2);&lt;br /&gt;
sol(j+1,:)= U'; % Guardamos solucion&lt;br /&gt;
end&lt;br /&gt;
%Dibujamos la solucion&lt;br /&gt;
[xx,tt]=meshgrid(x,t);&lt;br /&gt;
surf(xx,tt,sol);&lt;br /&gt;
}}&lt;br /&gt;
[[Archivo: mig.jpg|500px|thumb|centro|Gráfica concentración / espacio-tiempo. Resolución por el método de Euler modificado.]]&lt;br /&gt;
&lt;br /&gt;
== Conservación de la masa total de contaminante ==&lt;br /&gt;
A continuación demostraremos que la masa total de contaminante en el tubo se conserva a lo largo del tiempo, que se puede deducir a partir de la ecuación sin tener que resolverla. Integramos la ecuación y debido a las condiciones de frontera:&lt;br /&gt;
&amp;lt;math&amp;gt;\frac d {dt} \int_0^5 u(x,t)\,dx= \int_0^5 u_{xx}(x,t)\,dx= u_x(x,t)|_0^5=0&amp;lt;/math&amp;gt;&lt;br /&gt;
{{matlab| codigo=&lt;br /&gt;
%Datos&lt;br /&gt;
L=5; %Longitud de varilla&lt;br /&gt;
T=5;&lt;br /&gt;
q=1;&lt;br /&gt;
%Discretización temporal y espacial&lt;br /&gt;
N=500; %Número de subintervalos&lt;br /&gt;
h=L/N;&lt;br /&gt;
x=0:h:L; % Vector de espacio&lt;br /&gt;
dt=h/4; % Paso en tiempo&lt;br /&gt;
t=0:dt:T; % Vector de tiempos&lt;br /&gt;
% Matriz de coeficientes. Aproximacion de -q*u_xx&lt;br /&gt;
K=2*diag(ones(1,N+1))-diag(ones(1,N),1)-diag(ones(1,N),-1);&lt;br /&gt;
K(1,2)=-2;&lt;br /&gt;
K(N+1,N)=-2;&lt;br /&gt;
K=q*K/h^2;&lt;br /&gt;
% Calculamos u0 condición inicial&lt;br /&gt;
u0=[zeros(1,1+N*3/5),3*ones(1,N*2/5)]';&lt;br /&gt;
% F=0 (no la consideramos)&lt;br /&gt;
sol(1,:)=u0'; % Guardamos la solucion&lt;br /&gt;
U=u0; % Inicializacion&lt;br /&gt;
% Calculamos U_n -&amp;gt; U_n+1&lt;br /&gt;
for j=1:length(t)-1 &lt;br /&gt;
U=(eye(N+1)+dt*K)\(U+dt*F); &lt;br /&gt;
sol(j+1,:)= U'; % Guardamos solucion&lt;br /&gt;
end&lt;br /&gt;
% Calculamos el area de la funcion en cada tiempo (area = cantidad de contaminante)&lt;br /&gt;
areas=zeros(1,length(t));&lt;br /&gt;
for i=1:length(t)&lt;br /&gt;
f=sol(i,:);&lt;br /&gt;
w=trapz(x,f);&lt;br /&gt;
area(i)=w;&lt;br /&gt;
end&lt;br /&gt;
%Dibujamos&lt;br /&gt;
plot(t,area)&lt;br /&gt;
xlabel('Tiempo')&lt;br /&gt;
ylabel('Cantidad de contaminante')&lt;br /&gt;
}}&lt;br /&gt;
[[Archivo:aleeex.jpg|500px|thumb|centro|Conservación masa total de contaminante]]&lt;br /&gt;
[[Archivo:gime.jpg|500px|thumb|centro|Conservación masa total de contaminante]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Concentración a lo largo del tiempo==&lt;br /&gt;
La concentración de la sustancia contaminante en la varilla varía con el tiempo, pero en un cierto momento esta concentración se va homogeneizando, y deja de variar, entrando en un estado estacionario::&lt;br /&gt;
&amp;lt;math&amp;gt; u_t(x,t)- D*u_{xx}(x,t)=0 &amp;lt;/math&amp;gt; :    &lt;br /&gt;
&amp;lt;math&amp;gt; u_t(x,t)=0 \rightarrow D*u_{xx}(x,t)=0 &amp;lt;/math&amp;gt; :&lt;br /&gt;
&amp;lt;math&amp;gt; u=c_1*x+c_2 &amp;lt;/math&amp;gt; &lt;br /&gt;
Utizando Matlab comprobaremos que &amp;lt;math&amp;gt; c_1=0 &amp;lt;/math&amp;gt; &amp;lt;math&amp;gt; c_2=1.17 &amp;lt;/math&amp;gt;&lt;br /&gt;
Para tiempos grandes la concentración se estabiliza en torno a 1.17 en toda la varilla, de forma que la solución se asemejará a una función lineal constante.&lt;br /&gt;
&lt;br /&gt;
{{matlab| codigo=&lt;br /&gt;
%Datos&lt;br /&gt;
L=5; %Longitud de varilla&lt;br /&gt;
T=50;&lt;br /&gt;
q=1;&lt;br /&gt;
%Discretización temporal y espacial&lt;br /&gt;
dx=0.1; % Paso en espacio&lt;br /&gt;
N=L/dx; %Número de subintervalos&lt;br /&gt;
h=L/N;&lt;br /&gt;
x=0:h:L; % Vector de espacio&lt;br /&gt;
dt=h/4; % Paso en tiempo&lt;br /&gt;
t=0:dt:T; % Vector de tiempos&lt;br /&gt;
% Matriz de coeficientes. Aproximacion de -q*u_xx&lt;br /&gt;
K=2*diag(ones(1,N+1))-diag(ones(1,N),1)-diag(ones(1,N),-1);&lt;br /&gt;
K(1,2)=-2;&lt;br /&gt;
K(N+1,N)=-2;&lt;br /&gt;
K=q*K/h^2;&lt;br /&gt;
% Calculamos u0 condición inicial&lt;br /&gt;
u0=[zeros(1,1+N*3/5),3*ones(1,N*2/5)]';&lt;br /&gt;
% F=0 (no la consideramos)&lt;br /&gt;
sol(1,:)=u0'; % Guardamos la solucion&lt;br /&gt;
U=u0; % Inicializacion&lt;br /&gt;
% Calculamos U_n -&amp;gt; U_n+1&lt;br /&gt;
%Aplicamos método trapecio método del trapecio&lt;br /&gt;
for j=1:length(t)-1&lt;br /&gt;
U=(eye(N+1)+(dt*K)/2)\((eye(N+1)-(K*dt)/2)*U);&lt;br /&gt;
sol(j+1,:)= U'; % Guardamos solucion&lt;br /&gt;
end&lt;br /&gt;
%Solución estacionaria&lt;br /&gt;
a=sol(length(t),:);&lt;br /&gt;
b=sol(1,:);&lt;br /&gt;
c=sol((length(t)-1)/50+1,:);&lt;br /&gt;
d=sol((length(t)-1)*2/50+1,:);&lt;br /&gt;
e=sol((length(t)-1)*10/50+1,:);&lt;br /&gt;
hold on&lt;br /&gt;
plot(x,a,'xk','linewidth',2);&lt;br /&gt;
plot(x,b,'-m','linewidth',1);&lt;br /&gt;
plot(x,c,'-g','linewidth',1);&lt;br /&gt;
plot(x,d,'-y','linewidth',1);&lt;br /&gt;
plot(x,e,'-b','linewidth',1);&lt;br /&gt;
legend('u(50s)','u(0s)','u(1s)','u(2s)','u(10s)');&lt;br /&gt;
xlabel('Posición en la varilla')&lt;br /&gt;
ylabel('Concentracion')&lt;br /&gt;
hold off&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Soluciones(t).jpg|500px|thumb|centro|Soluciones a lo largo del tiempo]]&lt;br /&gt;
&lt;br /&gt;
La distancia entre la solución estacionaria y las soluciones para los siguientes instantes: 0s, 1s, 2s y 10s; se puede apreciar en la imagen anterior. &lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
Una vez analizado los datos, se demuestra que la sustancia contaminante se estabiliza en t=9.98s, con un error del 5%.&lt;br /&gt;
&lt;br /&gt;
En el caso de que consideremos Δx'=Δx/10,el tiempo en el que se estabiliza la cantidad de sustancia contaminante será t=10s, dato que será más preciso debido a que el paso realizado en el programa es menor.&lt;br /&gt;
&lt;br /&gt;
==Nueva condición de frontera==&lt;br /&gt;
&lt;br /&gt;
Si colocamos un limpiador, que elimina la sustancia contaminante, en el extremo izquierdo de la varilla, varían las condiciones de contorno del problema. En este caso, en el extremo izquierdo, la condición inicial será de tipo Dirichlet ya que se esta variación esta provocada por un mecanismo físico externo que actúa sobre el extremo. &amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;math&amp;gt;\begin{cases}&lt;br /&gt;
u_t(x,t)- D u_{xx}(x,t)= 0 ; x\in (0,5) \\&lt;br /&gt;
u(x,0)=u_0 , x\in (0,5) \\&lt;br /&gt;
u(0,t)=0 , u_x(5,t)=0 ; t\geq 0&lt;br /&gt;
\end{cases}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Dadas las nuevas condiciones, resolvemos el problema por el método de diferencias finitas con la ayuda de Matlab.&lt;br /&gt;
&lt;br /&gt;
{{matlab| codigo=&lt;br /&gt;
%Datos&lt;br /&gt;
L=5; %Longitud de varilla&lt;br /&gt;
T=5; %tiempo final&lt;br /&gt;
q=1;&lt;br /&gt;
%Discretización temporal y espacial&lt;br /&gt;
dx=0.1; % Paso en espacio&lt;br /&gt;
N=L/dx; %Número de subintervalos&lt;br /&gt;
x=0:dx:L;% Vector de espacio&lt;br /&gt;
dt=dx/4; % Paso en tiempo&lt;br /&gt;
t=0:dt:T; % Vector de tiempos&lt;br /&gt;
% Matriz de coeficientes. Aproximacion de -q*u_xx&lt;br /&gt;
K=2*diag(ones(1,N))-diag(ones(1,N-1),1)-diag(ones(1,N-1),-1);&lt;br /&gt;
K(N,N-1)=-2;&lt;br /&gt;
K=q*K/dx^2;&lt;br /&gt;
% Matriz F&lt;br /&gt;
F=zeros(N,1);&lt;br /&gt;
% Calculamos u0 condición inicial&lt;br /&gt;
u0=[zeros(1,N*3/5),3*ones(1,N*2/5)]';&lt;br /&gt;
sol(1,:)=[0,u0']; &lt;br /&gt;
U=u0; % Inicializacion&lt;br /&gt;
% Calculamos U_n -&amp;gt; U_n+1&lt;br /&gt;
%Aplicamos método trapecio método del trapecio&lt;br /&gt;
for j=1:length(t)-1&lt;br /&gt;
U=(eye(N)+(dt*K))\(dt*F+U);&lt;br /&gt;
sol(j+1,:)= [0,U'];&lt;br /&gt;
end&lt;br /&gt;
%Dibujamos la solucion&lt;br /&gt;
[xx,tt]=meshgrid(x,t);&lt;br /&gt;
surf(xx,tt,sol);&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Xata.JPG|500px|thumb|centro|Solución al variar las condiciones de contorno del problema.]]&lt;br /&gt;
&lt;br /&gt;
Observando la gráfica, y por la presencia del limpiador en el extremo de la varilla, para tiempos grandes la cantidad de sustancia contaminante será nula en toda la varilla. En realidad, esto no es del todo cierto puesto que la sustancia no llega a eliminarse completamente, ya que el limpiador solo elimina la sustancia contaminante en el extremo izquierdo. Aunque la concentración en todos los puntos disminuye de manera exponencial, permanece asintótica a 0.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Trapotito.JPG|500px|thumb|centro|Momento en el que se estabiliza con la presencia del limpiador.]]&lt;br /&gt;
&lt;br /&gt;
==Resolución por el método de Fourier==&lt;br /&gt;
&lt;br /&gt;
Las condiciones de frontera del problema son homogéneas, por lo que podemos aplicar este método de cálculo, sin realizar ningún cambio.&lt;br /&gt;
El primer paso es resolver el problema de autovalores asociado::&lt;br /&gt;
&amp;lt;math&amp;gt;\begin{cases}&lt;br /&gt;
y''+λy=0 x \in (0,5) \\&lt;br /&gt;
y'(0)=0 \\&lt;br /&gt;
y'(5)=0&lt;br /&gt;
\end{cases}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
Realizando analíticamente el cálculo, obtenemos los siguientes autovalores y autofunciones::&lt;br /&gt;
&amp;lt;math&amp;gt; λ_k=\frac{k^2π^2}{25}  →  φ_k=sin\frac{kπ}{5}x , k=0,1,2,3... &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Las condiciones de frontera e iniciales serían las siguientes en términos de la serie de Fourier::&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \sum_{k=0}^∞c_k(t)φ_k(x)=0  ,   \sum_{k=0}^∞a_k(t)φ_k(x)\begin{cases} 0, x≤3 \\ 3, x&amp;gt;3\end{cases} &amp;lt;/math&amp;gt;&lt;br /&gt;
 &lt;br /&gt;
Y ensayamos soluciones de la forma::&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; u(x,t)=\sum_{k=0}^∞T_k(t)φ_k(x)=\sum_{k=0}^∞T_k(t)sin\frac{kπ}{5}x &amp;lt;/math&amp;gt;&lt;/div&gt;</summary>
		<author><name>Karlo André</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Difusi%C3%B3n_de_una_sustancia_contaminante_(Grupo_10)&amp;diff=12934</id>
		<title>Difusión de una sustancia contaminante (Grupo 10)</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Difusi%C3%B3n_de_una_sustancia_contaminante_(Grupo_10)&amp;diff=12934"/>
				<updated>2014-05-19T17:57:43Z</updated>
		
		<summary type="html">&lt;p&gt;Karlo André: /* Resolución por el método de Fourier */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;''''''Texto en negrita''''''[[Archivo:nuriat.png|200px|thumb|right|Tubo con sustancia contaminante]]&lt;br /&gt;
La difusión implica un movimiento espontáneo y desordenado de moléculas individuales y, especialmente, nos interesa la difusión de moléculas de una sustancia disuelta en otra.&lt;br /&gt;
&lt;br /&gt;
La difusión de una sustancia puede considerarse análoga al flujo de calor, y la ley de Fick establece que el ritmo de difusión por unidad de superficie, en dirección perpendicular a ésta, es proporcional al gradiente de la concentración de esa sustancia en esa dirección. La concentración es la masa de la sustancia por unidad de volumen, y el gradiente de concentración es la variación de concentración por unidad de distancia.&lt;br /&gt;
&lt;br /&gt;
Para determinar como se distribuye la concentración de una sustancia contaminante tomaremos como ejemplo un tubo largo compuesto por dos sustancias de las cuáles una de ellas es contaminante.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
= Simplificación del problema =&lt;br /&gt;
&lt;br /&gt;
Para que este problema resulte más sencillo aplicaremos una serie de condiciones, facilitando el cálculo del mismo.&lt;br /&gt;
&lt;br /&gt;
En primer lugar denotaremos su concentración &amp;lt;math&amp;gt; u &amp;lt;/math&amp;gt;, concentración de contaminante en cada posición del tubo y constante en cada sección, medida en &amp;lt;math&amp;gt; \frac{mol}{m^2*s} &amp;lt;/math&amp;gt;. &lt;br /&gt;
&lt;br /&gt;
Supondremos que el tubo mide L=5 m, ocupando el intervalo &amp;lt;math&amp;gt; x \in (0,L) &amp;lt;/math&amp;gt;, y que la concentración es la misma en cualquier punto de la sección transversal del tubo. Por tanto, la concentración dependerá unicamente de dos variables &amp;lt;math&amp;gt; u = u(x,t) &amp;lt;/math&amp;gt;. En los extremos se ha colocado un aislante que hace que el flujo de contaminante al exterior del tubo sea nulo. Además, consideraremos la simplificación de que se trata de un tubo aislado por sus laterales, pero abierto por las bases del cilindro.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Ley de conservación de masa ==&lt;br /&gt;
&lt;br /&gt;
Tras una serie de experimentos realizados por Lavoisier, se pusieron de manifiesto que si tenemos en cuenta todas las sustancias que forman parte en una reacción química y todos los productos formados, nunca varía la masa. Esta ley exige que no haya una generación espontánea de materia. Es decir, en la región del espacio estudiada, no existe entrada o salida por un punto cualquiera (frontera o interior), la masa en esta región se mantiene constante. Esta es la ley de la conservación de la masa, que podemos enunciarla, pues, de la siguiente manera: &amp;lt;br /&amp;gt;&lt;br /&gt;
''&amp;quot;En toda reacción química la masa se conserva, esto es, la masa total de los reactivos es igual a la masa total de los productos&amp;quot;'' &amp;lt;br /&amp;gt;&lt;br /&gt;
La ley de conservación de masas exige que no haya una generación espontánea de materia. Es decir, en la región del espacio estudiada, no existe entrada o salida por un punto cualquiera (frontera o interior), la masa en esta región se mantiene constante.&lt;br /&gt;
&lt;br /&gt;
Esta suposición, en términos de variación de masa, puede quedar determinada como:&lt;br /&gt;
&lt;br /&gt;
''Variación de la masa en el tiempo = flujo de masa a través de la frontera por unidad de tiempo + flujo de masa generada en el interior por unidad de tiempo. ''&lt;br /&gt;
&lt;br /&gt;
== Ley de Fick ==&lt;br /&gt;
Se trata de una ley cuantitativa en forma diferencial que describe la difusión de materia o energía en un medio en el que inicialmente existe equilibrio químico o físico. Esta ley se trata de una generalización de los fenómenos descritos por la '''Ley de Fourier''', ya que esta es una consideración concreta del calor.&lt;br /&gt;
&lt;br /&gt;
La ley de Fick anuncia que en el caso de existir diferencias de concentración en cualquier especie, el paso de estas especies se llevará a cabo desde las regiones con mayor concentración a las de menor. Formulado matemáticamente:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;F(x,t)=-D\frac{\partial u}{\partial x}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Donde &amp;lt;math&amp;gt;F&amp;lt;/math&amp;gt; es el flujo de la sustancia y &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; el coeficiente de difusión, que representa la facilidad en que un soluto particular se mueve por un disolvente determinado.&lt;br /&gt;
&lt;br /&gt;
La ley de Fick establece que el flujo de difusión del contaminante es proporcional a la variación de concentración:&lt;br /&gt;
&amp;lt;math&amp;gt; F(x,t)=-D\frac{\partial u}{\partial x} &amp;lt;/math&amp;gt;&lt;br /&gt;
donde D es el coeficiente de difusión (medido en &amp;lt;math&amp;gt; \frac{m^2}{s} &amp;lt;/math&amp;gt;), que depende de las propiedades físicas de los compuestos, y que se supone constante D=1.&lt;br /&gt;
&lt;br /&gt;
= Modelización de la ecuación diferencial =&lt;br /&gt;
&lt;br /&gt;
Aplicando el principio de conservación de la masa y la ley de Fourier, definimos la variable &amp;lt;math&amp;gt; u(x,t)&amp;lt;/math&amp;gt; en unidades de sustancia por área, es decir, concentración por superficie del tubo.&lt;br /&gt;
&lt;br /&gt;
Consideramos &amp;lt;math&amp;gt; A &amp;lt;/math&amp;gt; como variable superficie, y tomamos un pequeño trozo, definido por &amp;lt;math&amp;gt;\Delta x&amp;lt;/math&amp;gt;. Entonces, para obtener la variación de la masa en el tiempo:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; A u(x,t) \Delta x &amp;lt;/math&amp;gt; &lt;br /&gt;
&lt;br /&gt;
Y derivando en el tiempo:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; A u_t(x,t) \Delta x &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
obtenemos el primer término de la igualdad anteriormente enunciada.&lt;br /&gt;
&lt;br /&gt;
En el segundo, consideramos nulo el flujo de masa en los puntos interiores por unidad de tiempo, pues suponemos la tubería perfecta y sin sumideros.&lt;br /&gt;
&lt;br /&gt;
Como la superﬁcie lateral del tubo está aislada, solamente habrá flujo de sustancia en la dirección del eje &amp;lt;math&amp;gt;x&amp;lt;/math&amp;gt;. Si &amp;lt;math&amp;gt;F(x,t)&amp;gt; 0&amp;lt;/math&amp;gt; pensamos que el ﬂujo va hacia la derecha, si &amp;lt;math&amp;gt;F(x,t)&amp;lt; 0&amp;lt;/math&amp;gt;, este va a hacia la izquierda. El ﬂujo de&lt;br /&gt;
calor en un intervalo &amp;lt;math&amp;gt;[x, x + ∆x ] &amp;lt;/math&amp;gt; viene dado dado por:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;F(x,t)A-F(x+\Delta x, t)A&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Con lo que queda &amp;lt;math&amp;gt;A u_t(x,t) \Delta x = F(x,t)A-F(x+\Delta x, t)A&amp;lt;/math&amp;gt;, y al dividir &amp;lt;math&amp;gt;A \Delta x&amp;lt;/math&amp;gt;, nos queda &amp;lt;math&amp;gt;u_t(x,t)= \frac {F(x,t)-F(x+\Delta x, t)}{\Delta x}&amp;lt;/math&amp;gt;. &amp;lt;br /&amp;gt;&lt;br /&gt;
Como &amp;lt;math&amp;gt;\Delta x \rightarrow 0 &amp;lt;/math&amp;gt;, &amp;lt;math&amp;gt;u_t(x,t)= -F_x(x,t)&amp;lt;/math&amp;gt;, y aplicando ley de Fick, &amp;lt;math&amp;gt;u_t(x,t)=-\frac{\partial }{\partial x}(-D u_x(x,t)) = D u_xx(x,t) &amp;lt;/math&amp;gt;.&amp;lt;br /&amp;gt;&lt;br /&gt;
Con lo que resulta una ecuación en derivadas parciales que determina la concentración de sustancia:&lt;br /&gt;
&amp;lt;math&amp;gt;u_t(x,t)- D u_xx(x,t)= 0 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Planteamiento del problema bien propuesto ==&lt;br /&gt;
&lt;br /&gt;
Suponemos que el flujo será nula al haber una tapa en los extremos del tubo, con lo que el problema bien propuesto quedaría::&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\begin{cases}&lt;br /&gt;
u_t(x,t)- D u_{xx}(x,t)= 0 ; x\in (0,5) \\&lt;br /&gt;
u(x,0)=u_0 , x\in (0,5) \\&lt;br /&gt;
u_x(0,t)=0 , u_x(5,t)=0 ; t\geq 0&lt;br /&gt;
\end{cases}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= Resolución numérica =&lt;br /&gt;
Para la resolución de ésta ecuación necesitaremos mínimo tres condiciones, dos de las cuales serán de contorno, y la otra será la condición inicial.Si suponemos &amp;lt;math&amp;gt;u_0(x,0)&amp;lt;/math&amp;gt;, entonces:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; u_0(x,0)=\begin{cases}&lt;br /&gt;
0,  si x\leq 3\\&lt;br /&gt;
3,  si x&amp;gt;3&lt;br /&gt;
\end{cases}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Resolución por el método de las diferencias finitas ==&lt;br /&gt;
En el primer caso particular que estudiaremos, trataremos de obtener una resolución numérica del problema anteriormente planteado, dónde tenemos las fronteras aisladas y las concentraciones iniciales conocidas:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\begin{cases}&lt;br /&gt;
u_t(x,t)- D u_{xx}(x,t)= 0; x\in (0,5), t\geq 0 \\&lt;br /&gt;
u_0(x,0), x\in (0,5) \\&lt;br /&gt;
u_x(0,t)=0, u_x(5,t)=0, t\geq 0&lt;br /&gt;
\end{cases}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
La resolución por el método de las diferencias finitas se basa en expresar el problema continuo a un sistema discreto de ecuaciones diferenciales de primer orden. Particularizando para nuestro caso con las condiciones dadas, el problema planteado sería:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\begin{cases}&lt;br /&gt;
u'_n(t)+\frac{-u_{n-1}(t)+2u_n(t)+u_{n+1}(t)}{h^2} \\&lt;br /&gt;
\frac{u_1(t)-u_-1(t)}{2h} \rightarrow u_1(t)=u_-1(t) \\&lt;br /&gt;
\frac{u_{N+1}(t)-u_{N-1}(t)}{2h} \rightarrow u_{N+1}(t)=u_{N-1}\\&lt;br /&gt;
u_n(0)=u^0(x)&lt;br /&gt;
\end{cases}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Por lo que tenemos un sistema de la forma:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\begin{cases}&lt;br /&gt;
U'(t)+KU(t)=F(t)=0\\&lt;br /&gt;
U(0)=U^0&lt;br /&gt;
\end{cases}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Con &amp;lt;math&amp;gt;N+1&amp;lt;/math&amp;gt; ecuaciones.&lt;br /&gt;
==== Resolución por método del trapecio ====&lt;br /&gt;
Suponiendo que en el instante inicial se verifica  :&amp;lt;math&amp;gt;&lt;br /&gt;
u(x,0)=\left\{\begin{matrix}\\0, x≤3\\3, x&amp;gt;3\end{matrix}\right.&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Si tomamos &amp;lt;math&amp;gt;\triangle t= \triangle x/4&amp;lt;/math&amp;gt; en &amp;lt;math&amp;gt;t\in\ [0,5]&amp;lt;/math&amp;gt;, con &amp;lt;math&amp;gt;\triangle x=0.1&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
El código en MATLAB del método sería:&lt;br /&gt;
&lt;br /&gt;
{{matlab| codigo=&lt;br /&gt;
%Datos&lt;br /&gt;
L=5; %Longitud de varilla&lt;br /&gt;
T=5; %tiempo final&lt;br /&gt;
q=1;&lt;br /&gt;
%Discretización temporal y espacial&lt;br /&gt;
dx=0.1; % Paso en espacio&lt;br /&gt;
N=L/dx; %Número de subintervalos&lt;br /&gt;
x=0:dx:L; % Vector de espacio&lt;br /&gt;
dt=dx/4; % Paso en tiempo&lt;br /&gt;
t=0:dt:T; % Vector de tiempos&lt;br /&gt;
% Matriz de coeficientes. Aproximacion de -q*u_xx&lt;br /&gt;
K=2*diag(ones(1,N+1))-diag(ones(1,N),1)-diag(ones(1,N),-1);&lt;br /&gt;
K(1,2)=-2;&lt;br /&gt;
K(N+1,N)=-2;&lt;br /&gt;
K=q*K/dx^2;&lt;br /&gt;
% Calculamos u0 condición inicial&lt;br /&gt;
u0=[zeros(1,1+N*3/5),3*ones(1,N*2/5)]';&lt;br /&gt;
% F=0 (no la consideramos)&lt;br /&gt;
sol(1,:)=u0'; % Guardamos la solucion&lt;br /&gt;
U=u0; % Inicializacion&lt;br /&gt;
% Calculamos U_n -&amp;gt; U_n+1&lt;br /&gt;
%Aplicamos método trapecio método del trapecio&lt;br /&gt;
for j=1:length(t)-1&lt;br /&gt;
U=(eye(N+1)+(dt*K)/2)\((eye(N+1)-(K*dt)/2)*U);&lt;br /&gt;
sol(j+1,:)= U'; % Guardamos solucion&lt;br /&gt;
end&lt;br /&gt;
%Dibujamos la solucion&lt;br /&gt;
[xx,tt]=meshgrid(x,t);&lt;br /&gt;
surf(xx,tt,sol);&lt;br /&gt;
}}&lt;br /&gt;
[[Archivo:nur.jpg|500px|thumb|centro|Gráfica concentración / espacio-tiempo. Resolución por el método del trapecio.]]&lt;br /&gt;
&lt;br /&gt;
==== Resolución por método de Euler explícito ====&lt;br /&gt;
{{matlab| codigo=&lt;br /&gt;
%Datos&lt;br /&gt;
L=5; %Longitud de varilla&lt;br /&gt;
T=5; %tiempo final&lt;br /&gt;
q=1;&lt;br /&gt;
%Discretización temporal y espacial&lt;br /&gt;
dx=0.1; % Paso en espacio&lt;br /&gt;
N=L/dx; %Número de subintervalos&lt;br /&gt;
x=0:dx:L; % Vector de espacio&lt;br /&gt;
dt=dx/20; % Paso en tiempo&lt;br /&gt;
t=0:dt:T; % Vector de tiempos&lt;br /&gt;
% Matriz de coeficientes. Aproximacion de -q*u_xx&lt;br /&gt;
K=2*diag(ones(1,N+1))-diag(ones(1,N),1)-diag(ones(1,N),-1);&lt;br /&gt;
K(1,2)=-2;&lt;br /&gt;
K(N+1,N)=-2;&lt;br /&gt;
K=q*K/dx^2;&lt;br /&gt;
% Calculamos u0 condición inicial&lt;br /&gt;
u0=[zeros(1,1+N*3/5),3*ones(1,N*2/5)]';&lt;br /&gt;
% F=0 (no la consideramos)&lt;br /&gt;
sol(1,:)=u0'; % Guardamos la solucion&lt;br /&gt;
U=u0; % Inicializacion&lt;br /&gt;
% Calculamos U_n -&amp;gt; U_n+1&lt;br /&gt;
%Aplicamos método Euler explícito&lt;br /&gt;
for j=1:length(t)-1 &lt;br /&gt;
k1=-K*U; % Calculamos k1=h*f(tn,yn)&lt;br /&gt;
k2=-K*(U+dt*k1); % Calculamos k2=h*f(tn+h/2,yn+1/2*k1)&lt;br /&gt;
% Meto los datos en el vector&lt;br /&gt;
U=U+(dt/2)*(k1+k2);&lt;br /&gt;
sol(j+1,:)= U'; % Guardamos solucion&lt;br /&gt;
end&lt;br /&gt;
%Dibujamos la solucion&lt;br /&gt;
[xx,tt]=meshgrid(x,t);&lt;br /&gt;
surf(xx,tt,sol);&lt;br /&gt;
}}&lt;br /&gt;
[[Archivo:mig.jpg|500px|thumb|centro|Gráfica concentración / espacio-tiempo. Resolución por el método de Euler explícito.]]&lt;br /&gt;
&lt;br /&gt;
==== Resolución por método de Euler implícito ====&lt;br /&gt;
{{matlab| codigo=&lt;br /&gt;
%Datos&lt;br /&gt;
L=5; %Longitud de varilla&lt;br /&gt;
T=5;&lt;br /&gt;
q=1;&lt;br /&gt;
%Discretización temporal y espacial&lt;br /&gt;
dx=0.1; % Paso en espacio&lt;br /&gt;
N=L/dx; %Número de subintervalos&lt;br /&gt;
h=L/N;&lt;br /&gt;
x=0:h:L; % Vector de espacio&lt;br /&gt;
dt=h/20; % Paso en tiempo&lt;br /&gt;
t=0:dt:T; % Vector de tiempos&lt;br /&gt;
% Matriz de coeficientes. Aproximacion de -q*u_xx&lt;br /&gt;
K=2*diag(ones(1,N+1))-diag(ones(1,N),1)-diag(ones(1,N),-1);&lt;br /&gt;
K(1,2)=-2;&lt;br /&gt;
K(N+1,N)=-2;&lt;br /&gt;
K=q*K/h^2;&lt;br /&gt;
% Calculamos u0 condición inicial&lt;br /&gt;
u0=[zeros(1,1+N*3/5),3*ones(1,N*2/5)]';&lt;br /&gt;
% F=0 (no la consideramos)&lt;br /&gt;
sol(1,:)=u0'; % Guardamos la solucion&lt;br /&gt;
U=u0; % Inicializacion&lt;br /&gt;
% Calculamos U_n -&amp;gt; U_n+1&lt;br /&gt;
% Aplicamos método implícito&lt;br /&gt;
for j=1:length(t)-1 &lt;br /&gt;
U=U-dt*K*U; &lt;br /&gt;
sol(j+1,:)= U'; % Guardamos solucion&lt;br /&gt;
end&lt;br /&gt;
%Dibujamos la solucion&lt;br /&gt;
[xx,tt]=meshgrid(x,t);&lt;br /&gt;
surf(xx,tt,sol);&lt;br /&gt;
}}&lt;br /&gt;
[[Archivo:migap.jpg|500px|thumb|centro|Gráfica concentración / espacio-tiempo. Resolución por el método de Euler implícito.]]&lt;br /&gt;
&lt;br /&gt;
==== Resolución por método de Euler modificado ====&lt;br /&gt;
{{matlab| codigo=&lt;br /&gt;
%Datos&lt;br /&gt;
L=5; %Longitud de varilla&lt;br /&gt;
T=5;&lt;br /&gt;
q=1;&lt;br /&gt;
%Discretización temporal y espacial&lt;br /&gt;
dx=0.1; % Paso en espacio&lt;br /&gt;
N=L/dx; %Número de subintervalos&lt;br /&gt;
h=L/N;&lt;br /&gt;
x=0:h:L; % Vector de espacio&lt;br /&gt;
dt=h/20; % Paso en tiempo&lt;br /&gt;
t=0:dt:T; % Vector de tiempos&lt;br /&gt;
% Matriz de coeficientes. Aproximacion de -q*u_xx&lt;br /&gt;
K=2*diag(ones(1,N+1))-diag(ones(1,N),1)-diag(ones(1,N),-1);&lt;br /&gt;
K(1,2)=-2;&lt;br /&gt;
K(N+1,N)=-2;&lt;br /&gt;
K=q*K/h^2;&lt;br /&gt;
% Calculamos u0 condición inicial&lt;br /&gt;
u0=[zeros(1,1+N*3/5),3*ones(1,N*2/5)]';&lt;br /&gt;
% F=0 (no la consideramos)&lt;br /&gt;
sol(1,:)=u0'; % Guardamos la solucion&lt;br /&gt;
U=u0; % Inicializacion&lt;br /&gt;
% Calculamos U_n -&amp;gt; U_n+1&lt;br /&gt;
for j=1:length(t)-1 &lt;br /&gt;
k1=-K*U; % Calculamos k1=h*f(tn,yn)&lt;br /&gt;
k2=-K*(U+dt*k1); % Calculamos k2=h*f(tn+h/2,yn+1/2*k1)&lt;br /&gt;
% Meto los datos en el vector&lt;br /&gt;
U=U+(dt/2)*(k1+k2);&lt;br /&gt;
sol(j+1,:)= U'; % Guardamos solucion&lt;br /&gt;
end&lt;br /&gt;
%Dibujamos la solucion&lt;br /&gt;
[xx,tt]=meshgrid(x,t);&lt;br /&gt;
surf(xx,tt,sol);&lt;br /&gt;
}}&lt;br /&gt;
[[Archivo: mig.jpg|500px|thumb|centro|Gráfica concentración / espacio-tiempo. Resolución por el método de Euler modificado.]]&lt;br /&gt;
&lt;br /&gt;
== Conservación de la masa total de contaminante ==&lt;br /&gt;
A continuación demostraremos que la masa total de contaminante en el tubo se conserva a lo largo del tiempo, que se puede deducir a partir de la ecuación sin tener que resolverla. Integramos la ecuación y debido a las condiciones de frontera:&lt;br /&gt;
&amp;lt;math&amp;gt;\frac d {dt} \int_0^5 u(x,t)\,dx= \int_0^5 u_{xx}(x,t)\,dx= u_x(x,t)|_0^5=0&amp;lt;/math&amp;gt;&lt;br /&gt;
{{matlab| codigo=&lt;br /&gt;
%Datos&lt;br /&gt;
L=5; %Longitud de varilla&lt;br /&gt;
T=5;&lt;br /&gt;
q=1;&lt;br /&gt;
%Discretización temporal y espacial&lt;br /&gt;
N=500; %Número de subintervalos&lt;br /&gt;
h=L/N;&lt;br /&gt;
x=0:h:L; % Vector de espacio&lt;br /&gt;
dt=h/4; % Paso en tiempo&lt;br /&gt;
t=0:dt:T; % Vector de tiempos&lt;br /&gt;
% Matriz de coeficientes. Aproximacion de -q*u_xx&lt;br /&gt;
K=2*diag(ones(1,N+1))-diag(ones(1,N),1)-diag(ones(1,N),-1);&lt;br /&gt;
K(1,2)=-2;&lt;br /&gt;
K(N+1,N)=-2;&lt;br /&gt;
K=q*K/h^2;&lt;br /&gt;
% Calculamos u0 condición inicial&lt;br /&gt;
u0=[zeros(1,1+N*3/5),3*ones(1,N*2/5)]';&lt;br /&gt;
% F=0 (no la consideramos)&lt;br /&gt;
sol(1,:)=u0'; % Guardamos la solucion&lt;br /&gt;
U=u0; % Inicializacion&lt;br /&gt;
% Calculamos U_n -&amp;gt; U_n+1&lt;br /&gt;
for j=1:length(t)-1 &lt;br /&gt;
U=(eye(N+1)+dt*K)\(U+dt*F); &lt;br /&gt;
sol(j+1,:)= U'; % Guardamos solucion&lt;br /&gt;
end&lt;br /&gt;
% Calculamos el area de la funcion en cada tiempo (area = cantidad de contaminante)&lt;br /&gt;
areas=zeros(1,length(t));&lt;br /&gt;
for i=1:length(t)&lt;br /&gt;
f=sol(i,:);&lt;br /&gt;
w=trapz(x,f);&lt;br /&gt;
area(i)=w;&lt;br /&gt;
end&lt;br /&gt;
%Dibujamos&lt;br /&gt;
plot(t,area)&lt;br /&gt;
xlabel('Tiempo')&lt;br /&gt;
ylabel('Cantidad de contaminante')&lt;br /&gt;
}}&lt;br /&gt;
[[Archivo:aleeex.jpg|500px|thumb|centro|Conservación masa total de contaminante]]&lt;br /&gt;
[[Archivo:gime.jpg|500px|thumb|centro|Conservación masa total de contaminante]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Concentración a lo largo del tiempo==&lt;br /&gt;
La concentración de la sustancia contaminante en la varilla varía con el tiempo, pero en un cierto momento esta concentración se va homogeneizando, y deja de variar, entrando en un estado estacionario::&lt;br /&gt;
&amp;lt;math&amp;gt; u_t(x,t)- D*u_{xx}(x,t)=0 &amp;lt;/math&amp;gt; :    &lt;br /&gt;
&amp;lt;math&amp;gt; u_t(x,t)=0 \rightarrow D*u_{xx}(x,t)=0 &amp;lt;/math&amp;gt; :&lt;br /&gt;
&amp;lt;math&amp;gt; u=c_1*x+c_2 &amp;lt;/math&amp;gt; &lt;br /&gt;
Utizando Matlab comprobaremos que &amp;lt;math&amp;gt; c_1=0 &amp;lt;/math&amp;gt; &amp;lt;math&amp;gt; c_2=1.17 &amp;lt;/math&amp;gt;&lt;br /&gt;
Para tiempos grandes la concentración se estabiliza en torno a 1.17 en toda la varilla, de forma que la solución se asemejará a una función lineal constante.&lt;br /&gt;
&lt;br /&gt;
{{matlab| codigo=&lt;br /&gt;
%Datos&lt;br /&gt;
L=5; %Longitud de varilla&lt;br /&gt;
T=50;&lt;br /&gt;
q=1;&lt;br /&gt;
%Discretización temporal y espacial&lt;br /&gt;
dx=0.1; % Paso en espacio&lt;br /&gt;
N=L/dx; %Número de subintervalos&lt;br /&gt;
h=L/N;&lt;br /&gt;
x=0:h:L; % Vector de espacio&lt;br /&gt;
dt=h/4; % Paso en tiempo&lt;br /&gt;
t=0:dt:T; % Vector de tiempos&lt;br /&gt;
% Matriz de coeficientes. Aproximacion de -q*u_xx&lt;br /&gt;
K=2*diag(ones(1,N+1))-diag(ones(1,N),1)-diag(ones(1,N),-1);&lt;br /&gt;
K(1,2)=-2;&lt;br /&gt;
K(N+1,N)=-2;&lt;br /&gt;
K=q*K/h^2;&lt;br /&gt;
% Calculamos u0 condición inicial&lt;br /&gt;
u0=[zeros(1,1+N*3/5),3*ones(1,N*2/5)]';&lt;br /&gt;
% F=0 (no la consideramos)&lt;br /&gt;
sol(1,:)=u0'; % Guardamos la solucion&lt;br /&gt;
U=u0; % Inicializacion&lt;br /&gt;
% Calculamos U_n -&amp;gt; U_n+1&lt;br /&gt;
%Aplicamos método trapecio método del trapecio&lt;br /&gt;
for j=1:length(t)-1&lt;br /&gt;
U=(eye(N+1)+(dt*K)/2)\((eye(N+1)-(K*dt)/2)*U);&lt;br /&gt;
sol(j+1,:)= U'; % Guardamos solucion&lt;br /&gt;
end&lt;br /&gt;
%Solución estacionaria&lt;br /&gt;
a=sol(length(t),:);&lt;br /&gt;
b=sol(1,:);&lt;br /&gt;
c=sol((length(t)-1)/50+1,:);&lt;br /&gt;
d=sol((length(t)-1)*2/50+1,:);&lt;br /&gt;
e=sol((length(t)-1)*10/50+1,:);&lt;br /&gt;
hold on&lt;br /&gt;
plot(x,a,'xk','linewidth',2);&lt;br /&gt;
plot(x,b,'-m','linewidth',1);&lt;br /&gt;
plot(x,c,'-g','linewidth',1);&lt;br /&gt;
plot(x,d,'-y','linewidth',1);&lt;br /&gt;
plot(x,e,'-b','linewidth',1);&lt;br /&gt;
legend('u(50s)','u(0s)','u(1s)','u(2s)','u(10s)');&lt;br /&gt;
xlabel('Posición en la varilla')&lt;br /&gt;
ylabel('Concentracion')&lt;br /&gt;
hold off&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Soluciones(t).jpg|500px|thumb|centro|Soluciones a lo largo del tiempo]]&lt;br /&gt;
&lt;br /&gt;
La distancia entre la solución estacionaria y las soluciones para los siguientes instantes: 0s, 1s, 2s y 10s; se puede apreciar en la imagen anterior. &lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
Una vez analizado los datos, se demuestra que la sustancia contaminante se estabiliza en t=9.98s, con un error del 5%.&lt;br /&gt;
&lt;br /&gt;
En el caso de que consideremos Δx'=Δx/10,el tiempo en el que se estabiliza la cantidad de sustancia contaminante será t=10s, dato que será más preciso debido a que el paso realizado en el programa es menor.&lt;br /&gt;
&lt;br /&gt;
==Nueva condición de frontera==&lt;br /&gt;
&lt;br /&gt;
Si colocamos un limpiador, que elimina la sustancia contaminante, en el extremo izquierdo de la varilla, varían las condiciones de contorno del problema. En este caso, en el extremo izquierdo, la condición inicial será de tipo Dirichlet ya que se esta variación esta provocada por un mecanismo físico externo que actúa sobre el extremo. &amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;math&amp;gt;\begin{cases}&lt;br /&gt;
u_t(x,t)- D u_{xx}(x,t)= 0 ; x\in (0,5) \\&lt;br /&gt;
u(x,0)=u_0 , x\in (0,5) \\&lt;br /&gt;
u(0,t)=0 , u_x(5,t)=0 ; t\geq 0&lt;br /&gt;
\end{cases}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Dadas las nuevas condiciones, resolvemos el problema por el método de diferencias finitas con la ayuda de Matlab.&lt;br /&gt;
&lt;br /&gt;
{{matlab| codigo=&lt;br /&gt;
%Datos&lt;br /&gt;
L=5; %Longitud de varilla&lt;br /&gt;
T=5; %tiempo final&lt;br /&gt;
q=1;&lt;br /&gt;
%Discretización temporal y espacial&lt;br /&gt;
dx=0.1; % Paso en espacio&lt;br /&gt;
N=L/dx; %Número de subintervalos&lt;br /&gt;
x=0:dx:L;% Vector de espacio&lt;br /&gt;
dt=dx/4; % Paso en tiempo&lt;br /&gt;
t=0:dt:T; % Vector de tiempos&lt;br /&gt;
% Matriz de coeficientes. Aproximacion de -q*u_xx&lt;br /&gt;
K=2*diag(ones(1,N))-diag(ones(1,N-1),1)-diag(ones(1,N-1),-1);&lt;br /&gt;
K(N,N-1)=-2;&lt;br /&gt;
K=q*K/dx^2;&lt;br /&gt;
% Matriz F&lt;br /&gt;
F=zeros(N,1);&lt;br /&gt;
% Calculamos u0 condición inicial&lt;br /&gt;
u0=[zeros(1,N*3/5),3*ones(1,N*2/5)]';&lt;br /&gt;
sol(1,:)=[0,u0']; &lt;br /&gt;
U=u0; % Inicializacion&lt;br /&gt;
% Calculamos U_n -&amp;gt; U_n+1&lt;br /&gt;
%Aplicamos método trapecio método del trapecio&lt;br /&gt;
for j=1:length(t)-1&lt;br /&gt;
U=(eye(N)+(dt*K))\(dt*F+U);&lt;br /&gt;
sol(j+1,:)= [0,U'];&lt;br /&gt;
end&lt;br /&gt;
%Dibujamos la solucion&lt;br /&gt;
[xx,tt]=meshgrid(x,t);&lt;br /&gt;
surf(xx,tt,sol);&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Xata.JPG|500px|thumb|centro|Solución al variar las condiciones de contorno del problema.]]&lt;br /&gt;
&lt;br /&gt;
Observando la gráfica, y por la presencia del limpiador en el extremo de la varilla, para tiempos grandes la cantidad de sustancia contaminante será nula en toda la varilla. En realidad, esto no es del todo cierto puesto que la sustancia no llega a eliminarse completamente, ya que el limpiador solo elimina la sustancia contaminante en el extremo izquierdo. Aunque la concentración en todos los puntos disminuye de manera exponencial, permanece asintótica a 0.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Trapotito.JPG|500px|thumb|centro|Momento en el que se estabiliza con la presencia del limpiador.]]&lt;br /&gt;
&lt;br /&gt;
==Resolución por el método de Fourier==&lt;br /&gt;
&lt;br /&gt;
Las condiciones de frontera del problema son homogéneas, por lo que podemos aplicar este método de cálculo, sin realizar ningún cambio.&lt;br /&gt;
El primer paso es resolver el problema de autovalores asociado:&lt;br /&gt;
&amp;lt;math&amp;gt;\begin{cases}&lt;br /&gt;
y''+λy=0 x \in (0,5) \\&lt;br /&gt;
y'(0)=0 \\&lt;br /&gt;
y'(5)=0&lt;br /&gt;
\end{cases}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
Realizando analíticamente el cálculo, obtenemos los siguientes autovalores y autofunciones:&lt;br /&gt;
&amp;lt;math&amp;gt; λ_k=\frac{k^2π^2}{25}  →  φ_k=sin\frac{kπ}{5}x , k=0,1,2,3... &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Calculamos la serie de Fourier en términos de las autofunciones::&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \sum_{k=0}^∞c_k(t)φ_k(x)=0  ,   \sum_{k=0}^∞a_k(t)φ_k(x)\begin{cases} 0, x≤3 \\ 3, x&amp;gt;3\end{cases} &amp;lt;/math&amp;gt;&lt;br /&gt;
 &lt;br /&gt;
Y ensayamos soluciones dela forma:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; u(x,t)=\sum_{k=0}^∞T_k(t)φ_k(x)=\sum_{k=0}^∞T_k(t)sin\frac{kπ}{5}x &amp;lt;/math&amp;gt;&lt;/div&gt;</summary>
		<author><name>Karlo André</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Difusi%C3%B3n_de_una_sustancia_contaminante_(Grupo_10)&amp;diff=12932</id>
		<title>Difusión de una sustancia contaminante (Grupo 10)</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Difusi%C3%B3n_de_una_sustancia_contaminante_(Grupo_10)&amp;diff=12932"/>
				<updated>2014-05-19T17:53:38Z</updated>
		
		<summary type="html">&lt;p&gt;Karlo André: /* Resolución por el método de Fourier */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;''''''Texto en negrita''''''[[Archivo:nuriat.png|200px|thumb|right|Tubo con sustancia contaminante]]&lt;br /&gt;
La difusión implica un movimiento espontáneo y desordenado de moléculas individuales y, especialmente, nos interesa la difusión de moléculas de una sustancia disuelta en otra.&lt;br /&gt;
&lt;br /&gt;
La difusión de una sustancia puede considerarse análoga al flujo de calor, y la ley de Fick establece que el ritmo de difusión por unidad de superficie, en dirección perpendicular a ésta, es proporcional al gradiente de la concentración de esa sustancia en esa dirección. La concentración es la masa de la sustancia por unidad de volumen, y el gradiente de concentración es la variación de concentración por unidad de distancia.&lt;br /&gt;
&lt;br /&gt;
Para determinar como se distribuye la concentración de una sustancia contaminante tomaremos como ejemplo un tubo largo compuesto por dos sustancias de las cuáles una de ellas es contaminante.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
= Simplificación del problema =&lt;br /&gt;
&lt;br /&gt;
Para que este problema resulte más sencillo aplicaremos una serie de condiciones, facilitando el cálculo del mismo.&lt;br /&gt;
&lt;br /&gt;
En primer lugar denotaremos su concentración &amp;lt;math&amp;gt; u &amp;lt;/math&amp;gt;, concentración de contaminante en cada posición del tubo y constante en cada sección, medida en &amp;lt;math&amp;gt; \frac{mol}{m^2*s} &amp;lt;/math&amp;gt;. &lt;br /&gt;
&lt;br /&gt;
Supondremos que el tubo mide L=5 m, ocupando el intervalo &amp;lt;math&amp;gt; x \in (0,L) &amp;lt;/math&amp;gt;, y que la concentración es la misma en cualquier punto de la sección transversal del tubo. Por tanto, la concentración dependerá unicamente de dos variables &amp;lt;math&amp;gt; u = u(x,t) &amp;lt;/math&amp;gt;. En los extremos se ha colocado un aislante que hace que el flujo de contaminante al exterior del tubo sea nulo. Además, consideraremos la simplificación de que se trata de un tubo aislado por sus laterales, pero abierto por las bases del cilindro.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Ley de conservación de masa ==&lt;br /&gt;
&lt;br /&gt;
Tras una serie de experimentos realizados por Lavoisier, se pusieron de manifiesto que si tenemos en cuenta todas las sustancias que forman parte en una reacción química y todos los productos formados, nunca varía la masa. Esta ley exige que no haya una generación espontánea de materia. Es decir, en la región del espacio estudiada, no existe entrada o salida por un punto cualquiera (frontera o interior), la masa en esta región se mantiene constante. Esta es la ley de la conservación de la masa, que podemos enunciarla, pues, de la siguiente manera: &amp;lt;br /&amp;gt;&lt;br /&gt;
''&amp;quot;En toda reacción química la masa se conserva, esto es, la masa total de los reactivos es igual a la masa total de los productos&amp;quot;'' &amp;lt;br /&amp;gt;&lt;br /&gt;
La ley de conservación de masas exige que no haya una generación espontánea de materia. Es decir, en la región del espacio estudiada, no existe entrada o salida por un punto cualquiera (frontera o interior), la masa en esta región se mantiene constante.&lt;br /&gt;
&lt;br /&gt;
Esta suposición, en términos de variación de masa, puede quedar determinada como:&lt;br /&gt;
&lt;br /&gt;
''Variación de la masa en el tiempo = flujo de masa a través de la frontera por unidad de tiempo + flujo de masa generada en el interior por unidad de tiempo. ''&lt;br /&gt;
&lt;br /&gt;
== Ley de Fick ==&lt;br /&gt;
Se trata de una ley cuantitativa en forma diferencial que describe la difusión de materia o energía en un medio en el que inicialmente existe equilibrio químico o físico. Esta ley se trata de una generalización de los fenómenos descritos por la '''Ley de Fourier''', ya que esta es una consideración concreta del calor.&lt;br /&gt;
&lt;br /&gt;
La ley de Fick anuncia que en el caso de existir diferencias de concentración en cualquier especie, el paso de estas especies se llevará a cabo desde las regiones con mayor concentración a las de menor. Formulado matemáticamente:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;F(x,t)=-D\frac{\partial u}{\partial x}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Donde &amp;lt;math&amp;gt;F&amp;lt;/math&amp;gt; es el flujo de la sustancia y &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; el coeficiente de difusión, que representa la facilidad en que un soluto particular se mueve por un disolvente determinado.&lt;br /&gt;
&lt;br /&gt;
La ley de Fick establece que el flujo de difusión del contaminante es proporcional a la variación de concentración:&lt;br /&gt;
&amp;lt;math&amp;gt; F(x,t)=-D\frac{\partial u}{\partial x} &amp;lt;/math&amp;gt;&lt;br /&gt;
donde D es el coeficiente de difusión (medido en &amp;lt;math&amp;gt; \frac{m^2}{s} &amp;lt;/math&amp;gt;), que depende de las propiedades físicas de los compuestos, y que se supone constante D=1.&lt;br /&gt;
&lt;br /&gt;
= Modelización de la ecuación diferencial =&lt;br /&gt;
&lt;br /&gt;
Aplicando el principio de conservación de la masa y la ley de Fourier, definimos la variable &amp;lt;math&amp;gt; u(x,t)&amp;lt;/math&amp;gt; en unidades de sustancia por área, es decir, concentración por superficie del tubo.&lt;br /&gt;
&lt;br /&gt;
Consideramos &amp;lt;math&amp;gt; A &amp;lt;/math&amp;gt; como variable superficie, y tomamos un pequeño trozo, definido por &amp;lt;math&amp;gt;\Delta x&amp;lt;/math&amp;gt;. Entonces, para obtener la variación de la masa en el tiempo:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; A u(x,t) \Delta x &amp;lt;/math&amp;gt; &lt;br /&gt;
&lt;br /&gt;
Y derivando en el tiempo:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; A u_t(x,t) \Delta x &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
obtenemos el primer término de la igualdad anteriormente enunciada.&lt;br /&gt;
&lt;br /&gt;
En el segundo, consideramos nulo el flujo de masa en los puntos interiores por unidad de tiempo, pues suponemos la tubería perfecta y sin sumideros.&lt;br /&gt;
&lt;br /&gt;
Como la superﬁcie lateral del tubo está aislada, solamente habrá flujo de sustancia en la dirección del eje &amp;lt;math&amp;gt;x&amp;lt;/math&amp;gt;. Si &amp;lt;math&amp;gt;F(x,t)&amp;gt; 0&amp;lt;/math&amp;gt; pensamos que el ﬂujo va hacia la derecha, si &amp;lt;math&amp;gt;F(x,t)&amp;lt; 0&amp;lt;/math&amp;gt;, este va a hacia la izquierda. El ﬂujo de&lt;br /&gt;
calor en un intervalo &amp;lt;math&amp;gt;[x, x + ∆x ] &amp;lt;/math&amp;gt; viene dado dado por:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;F(x,t)A-F(x+\Delta x, t)A&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Con lo que queda &amp;lt;math&amp;gt;A u_t(x,t) \Delta x = F(x,t)A-F(x+\Delta x, t)A&amp;lt;/math&amp;gt;, y al dividir &amp;lt;math&amp;gt;A \Delta x&amp;lt;/math&amp;gt;, nos queda &amp;lt;math&amp;gt;u_t(x,t)= \frac {F(x,t)-F(x+\Delta x, t)}{\Delta x}&amp;lt;/math&amp;gt;. &amp;lt;br /&amp;gt;&lt;br /&gt;
Como &amp;lt;math&amp;gt;\Delta x \rightarrow 0 &amp;lt;/math&amp;gt;, &amp;lt;math&amp;gt;u_t(x,t)= -F_x(x,t)&amp;lt;/math&amp;gt;, y aplicando ley de Fick, &amp;lt;math&amp;gt;u_t(x,t)=-\frac{\partial }{\partial x}(-D u_x(x,t)) = D u_xx(x,t) &amp;lt;/math&amp;gt;.&amp;lt;br /&amp;gt;&lt;br /&gt;
Con lo que resulta una ecuación en derivadas parciales que determina la concentración de sustancia:&lt;br /&gt;
&amp;lt;math&amp;gt;u_t(x,t)- D u_xx(x,t)= 0 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Planteamiento del problema bien propuesto ==&lt;br /&gt;
&lt;br /&gt;
Suponemos que el flujo será nula al haber una tapa en los extremos del tubo, con lo que el problema bien propuesto quedaría::&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\begin{cases}&lt;br /&gt;
u_t(x,t)- D u_{xx}(x,t)= 0 ; x\in (0,5) \\&lt;br /&gt;
u(x,0)=u_0 , x\in (0,5) \\&lt;br /&gt;
u_x(0,t)=0 , u_x(5,t)=0 ; t\geq 0&lt;br /&gt;
\end{cases}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= Resolución numérica =&lt;br /&gt;
Para la resolución de ésta ecuación necesitaremos mínimo tres condiciones, dos de las cuales serán de contorno, y la otra será la condición inicial.Si suponemos &amp;lt;math&amp;gt;u_0(x,0)&amp;lt;/math&amp;gt;, entonces:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; u_0(x,0)=\begin{cases}&lt;br /&gt;
0,  si x\leq 3\\&lt;br /&gt;
3,  si x&amp;gt;3&lt;br /&gt;
\end{cases}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Resolución por el método de las diferencias finitas ==&lt;br /&gt;
En el primer caso particular que estudiaremos, trataremos de obtener una resolución numérica del problema anteriormente planteado, dónde tenemos las fronteras aisladas y las concentraciones iniciales conocidas:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\begin{cases}&lt;br /&gt;
u_t(x,t)- D u_{xx}(x,t)= 0; x\in (0,5), t\geq 0 \\&lt;br /&gt;
u_0(x,0), x\in (0,5) \\&lt;br /&gt;
u_x(0,t)=0, u_x(5,t)=0, t\geq 0&lt;br /&gt;
\end{cases}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
La resolución por el método de las diferencias finitas se basa en expresar el problema continuo a un sistema discreto de ecuaciones diferenciales de primer orden. Particularizando para nuestro caso con las condiciones dadas, el problema planteado sería:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\begin{cases}&lt;br /&gt;
u'_n(t)+\frac{-u_{n-1}(t)+2u_n(t)+u_{n+1}(t)}{h^2} \\&lt;br /&gt;
\frac{u_1(t)-u_-1(t)}{2h} \rightarrow u_1(t)=u_-1(t) \\&lt;br /&gt;
\frac{u_{N+1}(t)-u_{N-1}(t)}{2h} \rightarrow u_{N+1}(t)=u_{N-1}\\&lt;br /&gt;
u_n(0)=u^0(x)&lt;br /&gt;
\end{cases}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Por lo que tenemos un sistema de la forma:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\begin{cases}&lt;br /&gt;
U'(t)+KU(t)=F(t)=0\\&lt;br /&gt;
U(0)=U^0&lt;br /&gt;
\end{cases}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Con &amp;lt;math&amp;gt;N+1&amp;lt;/math&amp;gt; ecuaciones.&lt;br /&gt;
==== Resolución por método del trapecio ====&lt;br /&gt;
Suponiendo que en el instante inicial se verifica  :&amp;lt;math&amp;gt;&lt;br /&gt;
u(x,0)=\left\{\begin{matrix}\\0, x≤3\\3, x&amp;gt;3\end{matrix}\right.&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Si tomamos &amp;lt;math&amp;gt;\triangle t= \triangle x/4&amp;lt;/math&amp;gt; en &amp;lt;math&amp;gt;t\in\ [0,5]&amp;lt;/math&amp;gt;, con &amp;lt;math&amp;gt;\triangle x=0.1&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
El código en MATLAB del método sería:&lt;br /&gt;
&lt;br /&gt;
{{matlab| codigo=&lt;br /&gt;
%Datos&lt;br /&gt;
L=5; %Longitud de varilla&lt;br /&gt;
T=5; %tiempo final&lt;br /&gt;
q=1;&lt;br /&gt;
%Discretización temporal y espacial&lt;br /&gt;
dx=0.1; % Paso en espacio&lt;br /&gt;
N=L/dx; %Número de subintervalos&lt;br /&gt;
x=0:dx:L; % Vector de espacio&lt;br /&gt;
dt=dx/4; % Paso en tiempo&lt;br /&gt;
t=0:dt:T; % Vector de tiempos&lt;br /&gt;
% Matriz de coeficientes. Aproximacion de -q*u_xx&lt;br /&gt;
K=2*diag(ones(1,N+1))-diag(ones(1,N),1)-diag(ones(1,N),-1);&lt;br /&gt;
K(1,2)=-2;&lt;br /&gt;
K(N+1,N)=-2;&lt;br /&gt;
K=q*K/dx^2;&lt;br /&gt;
% Calculamos u0 condición inicial&lt;br /&gt;
u0=[zeros(1,1+N*3/5),3*ones(1,N*2/5)]';&lt;br /&gt;
% F=0 (no la consideramos)&lt;br /&gt;
sol(1,:)=u0'; % Guardamos la solucion&lt;br /&gt;
U=u0; % Inicializacion&lt;br /&gt;
% Calculamos U_n -&amp;gt; U_n+1&lt;br /&gt;
%Aplicamos método trapecio método del trapecio&lt;br /&gt;
for j=1:length(t)-1&lt;br /&gt;
U=(eye(N+1)+(dt*K)/2)\((eye(N+1)-(K*dt)/2)*U);&lt;br /&gt;
sol(j+1,:)= U'; % Guardamos solucion&lt;br /&gt;
end&lt;br /&gt;
%Dibujamos la solucion&lt;br /&gt;
[xx,tt]=meshgrid(x,t);&lt;br /&gt;
surf(xx,tt,sol);&lt;br /&gt;
}}&lt;br /&gt;
[[Archivo:nur.jpg|500px|thumb|centro|Gráfica concentración / espacio-tiempo. Resolución por el método del trapecio.]]&lt;br /&gt;
&lt;br /&gt;
==== Resolución por método de Euler explícito ====&lt;br /&gt;
{{matlab| codigo=&lt;br /&gt;
%Datos&lt;br /&gt;
L=5; %Longitud de varilla&lt;br /&gt;
T=5; %tiempo final&lt;br /&gt;
q=1;&lt;br /&gt;
%Discretización temporal y espacial&lt;br /&gt;
dx=0.1; % Paso en espacio&lt;br /&gt;
N=L/dx; %Número de subintervalos&lt;br /&gt;
x=0:dx:L; % Vector de espacio&lt;br /&gt;
dt=dx/20; % Paso en tiempo&lt;br /&gt;
t=0:dt:T; % Vector de tiempos&lt;br /&gt;
% Matriz de coeficientes. Aproximacion de -q*u_xx&lt;br /&gt;
K=2*diag(ones(1,N+1))-diag(ones(1,N),1)-diag(ones(1,N),-1);&lt;br /&gt;
K(1,2)=-2;&lt;br /&gt;
K(N+1,N)=-2;&lt;br /&gt;
K=q*K/dx^2;&lt;br /&gt;
% Calculamos u0 condición inicial&lt;br /&gt;
u0=[zeros(1,1+N*3/5),3*ones(1,N*2/5)]';&lt;br /&gt;
% F=0 (no la consideramos)&lt;br /&gt;
sol(1,:)=u0'; % Guardamos la solucion&lt;br /&gt;
U=u0; % Inicializacion&lt;br /&gt;
% Calculamos U_n -&amp;gt; U_n+1&lt;br /&gt;
%Aplicamos método Euler explícito&lt;br /&gt;
for j=1:length(t)-1 &lt;br /&gt;
k1=-K*U; % Calculamos k1=h*f(tn,yn)&lt;br /&gt;
k2=-K*(U+dt*k1); % Calculamos k2=h*f(tn+h/2,yn+1/2*k1)&lt;br /&gt;
% Meto los datos en el vector&lt;br /&gt;
U=U+(dt/2)*(k1+k2);&lt;br /&gt;
sol(j+1,:)= U'; % Guardamos solucion&lt;br /&gt;
end&lt;br /&gt;
%Dibujamos la solucion&lt;br /&gt;
[xx,tt]=meshgrid(x,t);&lt;br /&gt;
surf(xx,tt,sol);&lt;br /&gt;
}}&lt;br /&gt;
[[Archivo:mig.jpg|500px|thumb|centro|Gráfica concentración / espacio-tiempo. Resolución por el método de Euler explícito.]]&lt;br /&gt;
&lt;br /&gt;
==== Resolución por método de Euler implícito ====&lt;br /&gt;
{{matlab| codigo=&lt;br /&gt;
%Datos&lt;br /&gt;
L=5; %Longitud de varilla&lt;br /&gt;
T=5;&lt;br /&gt;
q=1;&lt;br /&gt;
%Discretización temporal y espacial&lt;br /&gt;
dx=0.1; % Paso en espacio&lt;br /&gt;
N=L/dx; %Número de subintervalos&lt;br /&gt;
h=L/N;&lt;br /&gt;
x=0:h:L; % Vector de espacio&lt;br /&gt;
dt=h/20; % Paso en tiempo&lt;br /&gt;
t=0:dt:T; % Vector de tiempos&lt;br /&gt;
% Matriz de coeficientes. Aproximacion de -q*u_xx&lt;br /&gt;
K=2*diag(ones(1,N+1))-diag(ones(1,N),1)-diag(ones(1,N),-1);&lt;br /&gt;
K(1,2)=-2;&lt;br /&gt;
K(N+1,N)=-2;&lt;br /&gt;
K=q*K/h^2;&lt;br /&gt;
% Calculamos u0 condición inicial&lt;br /&gt;
u0=[zeros(1,1+N*3/5),3*ones(1,N*2/5)]';&lt;br /&gt;
% F=0 (no la consideramos)&lt;br /&gt;
sol(1,:)=u0'; % Guardamos la solucion&lt;br /&gt;
U=u0; % Inicializacion&lt;br /&gt;
% Calculamos U_n -&amp;gt; U_n+1&lt;br /&gt;
% Aplicamos método implícito&lt;br /&gt;
for j=1:length(t)-1 &lt;br /&gt;
U=U-dt*K*U; &lt;br /&gt;
sol(j+1,:)= U'; % Guardamos solucion&lt;br /&gt;
end&lt;br /&gt;
%Dibujamos la solucion&lt;br /&gt;
[xx,tt]=meshgrid(x,t);&lt;br /&gt;
surf(xx,tt,sol);&lt;br /&gt;
}}&lt;br /&gt;
[[Archivo:migap.jpg|500px|thumb|centro|Gráfica concentración / espacio-tiempo. Resolución por el método de Euler implícito.]]&lt;br /&gt;
&lt;br /&gt;
==== Resolución por método de Euler modificado ====&lt;br /&gt;
{{matlab| codigo=&lt;br /&gt;
%Datos&lt;br /&gt;
L=5; %Longitud de varilla&lt;br /&gt;
T=5;&lt;br /&gt;
q=1;&lt;br /&gt;
%Discretización temporal y espacial&lt;br /&gt;
dx=0.1; % Paso en espacio&lt;br /&gt;
N=L/dx; %Número de subintervalos&lt;br /&gt;
h=L/N;&lt;br /&gt;
x=0:h:L; % Vector de espacio&lt;br /&gt;
dt=h/20; % Paso en tiempo&lt;br /&gt;
t=0:dt:T; % Vector de tiempos&lt;br /&gt;
% Matriz de coeficientes. Aproximacion de -q*u_xx&lt;br /&gt;
K=2*diag(ones(1,N+1))-diag(ones(1,N),1)-diag(ones(1,N),-1);&lt;br /&gt;
K(1,2)=-2;&lt;br /&gt;
K(N+1,N)=-2;&lt;br /&gt;
K=q*K/h^2;&lt;br /&gt;
% Calculamos u0 condición inicial&lt;br /&gt;
u0=[zeros(1,1+N*3/5),3*ones(1,N*2/5)]';&lt;br /&gt;
% F=0 (no la consideramos)&lt;br /&gt;
sol(1,:)=u0'; % Guardamos la solucion&lt;br /&gt;
U=u0; % Inicializacion&lt;br /&gt;
% Calculamos U_n -&amp;gt; U_n+1&lt;br /&gt;
for j=1:length(t)-1 &lt;br /&gt;
k1=-K*U; % Calculamos k1=h*f(tn,yn)&lt;br /&gt;
k2=-K*(U+dt*k1); % Calculamos k2=h*f(tn+h/2,yn+1/2*k1)&lt;br /&gt;
% Meto los datos en el vector&lt;br /&gt;
U=U+(dt/2)*(k1+k2);&lt;br /&gt;
sol(j+1,:)= U'; % Guardamos solucion&lt;br /&gt;
end&lt;br /&gt;
%Dibujamos la solucion&lt;br /&gt;
[xx,tt]=meshgrid(x,t);&lt;br /&gt;
surf(xx,tt,sol);&lt;br /&gt;
}}&lt;br /&gt;
[[Archivo: mig.jpg|500px|thumb|centro|Gráfica concentración / espacio-tiempo. Resolución por el método de Euler modificado.]]&lt;br /&gt;
&lt;br /&gt;
== Conservación de la masa total de contaminante ==&lt;br /&gt;
A continuación demostraremos que la masa total de contaminante en el tubo se conserva a lo largo del tiempo, que se puede deducir a partir de la ecuación sin tener que resolverla. Integramos la ecuación y debido a las condiciones de frontera:&lt;br /&gt;
&amp;lt;math&amp;gt;\frac d {dt} \int_0^5 u(x,t)\,dx= \int_0^5 u_{xx}(x,t)\,dx= u_x(x,t)|_0^5=0&amp;lt;/math&amp;gt;&lt;br /&gt;
{{matlab| codigo=&lt;br /&gt;
%Datos&lt;br /&gt;
L=5; %Longitud de varilla&lt;br /&gt;
T=5;&lt;br /&gt;
q=1;&lt;br /&gt;
%Discretización temporal y espacial&lt;br /&gt;
N=500; %Número de subintervalos&lt;br /&gt;
h=L/N;&lt;br /&gt;
x=0:h:L; % Vector de espacio&lt;br /&gt;
dt=h/4; % Paso en tiempo&lt;br /&gt;
t=0:dt:T; % Vector de tiempos&lt;br /&gt;
% Matriz de coeficientes. Aproximacion de -q*u_xx&lt;br /&gt;
K=2*diag(ones(1,N+1))-diag(ones(1,N),1)-diag(ones(1,N),-1);&lt;br /&gt;
K(1,2)=-2;&lt;br /&gt;
K(N+1,N)=-2;&lt;br /&gt;
K=q*K/h^2;&lt;br /&gt;
% Calculamos u0 condición inicial&lt;br /&gt;
u0=[zeros(1,1+N*3/5),3*ones(1,N*2/5)]';&lt;br /&gt;
% F=0 (no la consideramos)&lt;br /&gt;
sol(1,:)=u0'; % Guardamos la solucion&lt;br /&gt;
U=u0; % Inicializacion&lt;br /&gt;
% Calculamos U_n -&amp;gt; U_n+1&lt;br /&gt;
for j=1:length(t)-1 &lt;br /&gt;
U=(eye(N+1)+dt*K)\(U+dt*F); &lt;br /&gt;
sol(j+1,:)= U'; % Guardamos solucion&lt;br /&gt;
end&lt;br /&gt;
% Calculamos el area de la funcion en cada tiempo (area = cantidad de contaminante)&lt;br /&gt;
areas=zeros(1,length(t));&lt;br /&gt;
for i=1:length(t)&lt;br /&gt;
f=sol(i,:);&lt;br /&gt;
w=trapz(x,f);&lt;br /&gt;
area(i)=w;&lt;br /&gt;
end&lt;br /&gt;
%Dibujamos&lt;br /&gt;
plot(t,area)&lt;br /&gt;
xlabel('Tiempo')&lt;br /&gt;
ylabel('Cantidad de contaminante')&lt;br /&gt;
}}&lt;br /&gt;
[[Archivo:aleeex.jpg|500px|thumb|centro|Conservación masa total de contaminante]]&lt;br /&gt;
[[Archivo:gime.jpg|500px|thumb|centro|Conservación masa total de contaminante]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Concentración a lo largo del tiempo==&lt;br /&gt;
La concentración de la sustancia contaminante en la varilla varía con el tiempo, pero en un cierto momento esta concentración se va homogeneizando, y deja de variar, entrando en un estado estacionario::&lt;br /&gt;
&amp;lt;math&amp;gt; u_t(x,t)- D*u_{xx}(x,t)=0 &amp;lt;/math&amp;gt; :    &lt;br /&gt;
&amp;lt;math&amp;gt; u_t(x,t)=0 \rightarrow D*u_{xx}(x,t)=0 &amp;lt;/math&amp;gt; :&lt;br /&gt;
&amp;lt;math&amp;gt; u=c_1*x+c_2 &amp;lt;/math&amp;gt; &lt;br /&gt;
Utizando Matlab comprobaremos que &amp;lt;math&amp;gt; c_1=0 &amp;lt;/math&amp;gt; &amp;lt;math&amp;gt; c_2=1.17 &amp;lt;/math&amp;gt;&lt;br /&gt;
Para tiempos grandes la concentración se estabiliza en torno a 1.17 en toda la varilla, de forma que la solución se asemejará a una función lineal constante.&lt;br /&gt;
&lt;br /&gt;
{{matlab| codigo=&lt;br /&gt;
%Datos&lt;br /&gt;
L=5; %Longitud de varilla&lt;br /&gt;
T=50;&lt;br /&gt;
q=1;&lt;br /&gt;
%Discretización temporal y espacial&lt;br /&gt;
dx=0.1; % Paso en espacio&lt;br /&gt;
N=L/dx; %Número de subintervalos&lt;br /&gt;
h=L/N;&lt;br /&gt;
x=0:h:L; % Vector de espacio&lt;br /&gt;
dt=h/4; % Paso en tiempo&lt;br /&gt;
t=0:dt:T; % Vector de tiempos&lt;br /&gt;
% Matriz de coeficientes. Aproximacion de -q*u_xx&lt;br /&gt;
K=2*diag(ones(1,N+1))-diag(ones(1,N),1)-diag(ones(1,N),-1);&lt;br /&gt;
K(1,2)=-2;&lt;br /&gt;
K(N+1,N)=-2;&lt;br /&gt;
K=q*K/h^2;&lt;br /&gt;
% Calculamos u0 condición inicial&lt;br /&gt;
u0=[zeros(1,1+N*3/5),3*ones(1,N*2/5)]';&lt;br /&gt;
% F=0 (no la consideramos)&lt;br /&gt;
sol(1,:)=u0'; % Guardamos la solucion&lt;br /&gt;
U=u0; % Inicializacion&lt;br /&gt;
% Calculamos U_n -&amp;gt; U_n+1&lt;br /&gt;
%Aplicamos método trapecio método del trapecio&lt;br /&gt;
for j=1:length(t)-1&lt;br /&gt;
U=(eye(N+1)+(dt*K)/2)\((eye(N+1)-(K*dt)/2)*U);&lt;br /&gt;
sol(j+1,:)= U'; % Guardamos solucion&lt;br /&gt;
end&lt;br /&gt;
%Solución estacionaria&lt;br /&gt;
a=sol(length(t),:);&lt;br /&gt;
b=sol(1,:);&lt;br /&gt;
c=sol((length(t)-1)/50+1,:);&lt;br /&gt;
d=sol((length(t)-1)*2/50+1,:);&lt;br /&gt;
e=sol((length(t)-1)*10/50+1,:);&lt;br /&gt;
hold on&lt;br /&gt;
plot(x,a,'xk','linewidth',2);&lt;br /&gt;
plot(x,b,'-m','linewidth',1);&lt;br /&gt;
plot(x,c,'-g','linewidth',1);&lt;br /&gt;
plot(x,d,'-y','linewidth',1);&lt;br /&gt;
plot(x,e,'-b','linewidth',1);&lt;br /&gt;
legend('u(50s)','u(0s)','u(1s)','u(2s)','u(10s)');&lt;br /&gt;
xlabel('Posición en la varilla')&lt;br /&gt;
ylabel('Concentracion')&lt;br /&gt;
hold off&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Soluciones(t).jpg|500px|thumb|centro|Soluciones a lo largo del tiempo]]&lt;br /&gt;
&lt;br /&gt;
La distancia entre la solución estacionaria y las soluciones para los siguientes instantes: 0s, 1s, 2s y 10s; se puede apreciar en la imagen anterior. &lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
Una vez analizado los datos, se demuestra que la sustancia contaminante se estabiliza en t=9.98s, con un error del 5%.&lt;br /&gt;
&lt;br /&gt;
En el caso de que consideremos Δx'=Δx/10,el tiempo en el que se estabiliza la cantidad de sustancia contaminante será t=10s, dato que será más preciso debido a que el paso realizado en el programa es menor.&lt;br /&gt;
&lt;br /&gt;
==Nueva condición de frontera==&lt;br /&gt;
&lt;br /&gt;
Si colocamos un limpiador, que elimina la sustancia contaminante, en el extremo izquierdo de la varilla, varían las condiciones de contorno del problema. En este caso, en el extremo izquierdo, la condición inicial será de tipo Dirichlet ya que se esta variación esta provocada por un mecanismo físico externo que actúa sobre el extremo. &amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;math&amp;gt;\begin{cases}&lt;br /&gt;
u_t(x,t)- D u_{xx}(x,t)= 0 ; x\in (0,5) \\&lt;br /&gt;
u(x,0)=u_0 , x\in (0,5) \\&lt;br /&gt;
u(0,t)=0 , u_x(5,t)=0 ; t\geq 0&lt;br /&gt;
\end{cases}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Dadas las nuevas condiciones, resolvemos el problema por el método de diferencias finitas con la ayuda de Matlab.&lt;br /&gt;
&lt;br /&gt;
{{matlab| codigo=&lt;br /&gt;
%Datos&lt;br /&gt;
L=5; %Longitud de varilla&lt;br /&gt;
T=5; %tiempo final&lt;br /&gt;
q=1;&lt;br /&gt;
%Discretización temporal y espacial&lt;br /&gt;
dx=0.1; % Paso en espacio&lt;br /&gt;
N=L/dx; %Número de subintervalos&lt;br /&gt;
x=0:dx:L;% Vector de espacio&lt;br /&gt;
dt=dx/4; % Paso en tiempo&lt;br /&gt;
t=0:dt:T; % Vector de tiempos&lt;br /&gt;
% Matriz de coeficientes. Aproximacion de -q*u_xx&lt;br /&gt;
K=2*diag(ones(1,N))-diag(ones(1,N-1),1)-diag(ones(1,N-1),-1);&lt;br /&gt;
K(N,N-1)=-2;&lt;br /&gt;
K=q*K/dx^2;&lt;br /&gt;
% Matriz F&lt;br /&gt;
F=zeros(N,1);&lt;br /&gt;
% Calculamos u0 condición inicial&lt;br /&gt;
u0=[zeros(1,N*3/5),3*ones(1,N*2/5)]';&lt;br /&gt;
sol(1,:)=[0,u0']; &lt;br /&gt;
U=u0; % Inicializacion&lt;br /&gt;
% Calculamos U_n -&amp;gt; U_n+1&lt;br /&gt;
%Aplicamos método trapecio método del trapecio&lt;br /&gt;
for j=1:length(t)-1&lt;br /&gt;
U=(eye(N)+(dt*K))\(dt*F+U);&lt;br /&gt;
sol(j+1,:)= [0,U'];&lt;br /&gt;
end&lt;br /&gt;
%Dibujamos la solucion&lt;br /&gt;
[xx,tt]=meshgrid(x,t);&lt;br /&gt;
surf(xx,tt,sol);&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Xata.JPG|500px|thumb|centro|Solución al variar las condiciones de contorno del problema.]]&lt;br /&gt;
&lt;br /&gt;
Observando la gráfica, y por la presencia del limpiador en el extremo de la varilla, para tiempos grandes la cantidad de sustancia contaminante será nula en toda la varilla. En realidad, esto no es del todo cierto puesto que la sustancia no llega a eliminarse completamente, ya que el limpiador solo elimina la sustancia contaminante en el extremo izquierdo. Aunque la concentración en todos los puntos disminuye de manera exponencial, permanece asintótica a 0.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Trapotito.JPG|500px|thumb|centro|Momento en el que se estabiliza con la presencia del limpiador.]]&lt;br /&gt;
&lt;br /&gt;
==Resolución por el método de Fourier==&lt;br /&gt;
&lt;br /&gt;
Las condiciones de frontera del problema son homogéneas, por lo que podemos aplicar este método de cálculo, sin realizar ningún cambio.&lt;br /&gt;
El primer paso es resolver el problema de autovalores asociado:&lt;br /&gt;
&amp;lt;math&amp;gt;\begin{cases}&lt;br /&gt;
y''+λy=0 x \in (0,5) \\&lt;br /&gt;
y'(0)=0 \\&lt;br /&gt;
y'(5)=0&lt;br /&gt;
\end{cases}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
Realizando analíticamente el cálculo, obtenemos los siguientes autovalores y autofunciones:&lt;br /&gt;
&amp;lt;math&amp;gt; λ_k=\frac{k^2π^2}{25}  →  φ_k=sin\frac{kπ}{5}x , k=0,1,2,3... &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Calculamos la serie de Fourier en términos de las autofunciones::&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \sum_{k=0}^∞c_k(t)φ_k(x)=0  &amp;lt;/math&amp;gt;&lt;br /&gt;
 &lt;br /&gt;
Y ensayamos soluciones dela forma:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; u(x,t)=\sum_{k=0}^∞T_k(t)φ_k(x)=\sum_{k=0}^∞T_k(t)sin\frac{kπ}{5}x &amp;lt;/math&amp;gt;&lt;/div&gt;</summary>
		<author><name>Karlo André</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Difusi%C3%B3n_de_una_sustancia_contaminante_(Grupo_10)&amp;diff=12928</id>
		<title>Difusión de una sustancia contaminante (Grupo 10)</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Difusi%C3%B3n_de_una_sustancia_contaminante_(Grupo_10)&amp;diff=12928"/>
				<updated>2014-05-19T17:50:36Z</updated>
		
		<summary type="html">&lt;p&gt;Karlo André: /* Resolución por el método de Fourier */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;''''''Texto en negrita''''''[[Archivo:nuriat.png|200px|thumb|right|Tubo con sustancia contaminante]]&lt;br /&gt;
La difusión implica un movimiento espontáneo y desordenado de moléculas individuales y, especialmente, nos interesa la difusión de moléculas de una sustancia disuelta en otra.&lt;br /&gt;
&lt;br /&gt;
La difusión de una sustancia puede considerarse análoga al flujo de calor, y la ley de Fick establece que el ritmo de difusión por unidad de superficie, en dirección perpendicular a ésta, es proporcional al gradiente de la concentración de esa sustancia en esa dirección. La concentración es la masa de la sustancia por unidad de volumen, y el gradiente de concentración es la variación de concentración por unidad de distancia.&lt;br /&gt;
&lt;br /&gt;
Para determinar como se distribuye la concentración de una sustancia contaminante tomaremos como ejemplo un tubo largo compuesto por dos sustancias de las cuáles una de ellas es contaminante.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
= Simplificación del problema =&lt;br /&gt;
&lt;br /&gt;
Para que este problema resulte más sencillo aplicaremos una serie de condiciones, facilitando el cálculo del mismo.&lt;br /&gt;
&lt;br /&gt;
En primer lugar denotaremos su concentración &amp;lt;math&amp;gt; u &amp;lt;/math&amp;gt;, concentración de contaminante en cada posición del tubo y constante en cada sección, medida en &amp;lt;math&amp;gt; \frac{mol}{m^2*s} &amp;lt;/math&amp;gt;. &lt;br /&gt;
&lt;br /&gt;
Supondremos que el tubo mide L=5 m, ocupando el intervalo &amp;lt;math&amp;gt; x \in (0,L) &amp;lt;/math&amp;gt;, y que la concentración es la misma en cualquier punto de la sección transversal del tubo. Por tanto, la concentración dependerá unicamente de dos variables &amp;lt;math&amp;gt; u = u(x,t) &amp;lt;/math&amp;gt;. En los extremos se ha colocado un aislante que hace que el flujo de contaminante al exterior del tubo sea nulo. Además, consideraremos la simplificación de que se trata de un tubo aislado por sus laterales, pero abierto por las bases del cilindro.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Ley de conservación de masa ==&lt;br /&gt;
&lt;br /&gt;
Tras una serie de experimentos realizados por Lavoisier, se pusieron de manifiesto que si tenemos en cuenta todas las sustancias que forman parte en una reacción química y todos los productos formados, nunca varía la masa. Esta ley exige que no haya una generación espontánea de materia. Es decir, en la región del espacio estudiada, no existe entrada o salida por un punto cualquiera (frontera o interior), la masa en esta región se mantiene constante. Esta es la ley de la conservación de la masa, que podemos enunciarla, pues, de la siguiente manera: &amp;lt;br /&amp;gt;&lt;br /&gt;
''&amp;quot;En toda reacción química la masa se conserva, esto es, la masa total de los reactivos es igual a la masa total de los productos&amp;quot;'' &amp;lt;br /&amp;gt;&lt;br /&gt;
La ley de conservación de masas exige que no haya una generación espontánea de materia. Es decir, en la región del espacio estudiada, no existe entrada o salida por un punto cualquiera (frontera o interior), la masa en esta región se mantiene constante.&lt;br /&gt;
&lt;br /&gt;
Esta suposición, en términos de variación de masa, puede quedar determinada como:&lt;br /&gt;
&lt;br /&gt;
''Variación de la masa en el tiempo = flujo de masa a través de la frontera por unidad de tiempo + flujo de masa generada en el interior por unidad de tiempo. ''&lt;br /&gt;
&lt;br /&gt;
== Ley de Fick ==&lt;br /&gt;
Se trata de una ley cuantitativa en forma diferencial que describe la difusión de materia o energía en un medio en el que inicialmente existe equilibrio químico o físico. Esta ley se trata de una generalización de los fenómenos descritos por la '''Ley de Fourier''', ya que esta es una consideración concreta del calor.&lt;br /&gt;
&lt;br /&gt;
La ley de Fick anuncia que en el caso de existir diferencias de concentración en cualquier especie, el paso de estas especies se llevará a cabo desde las regiones con mayor concentración a las de menor. Formulado matemáticamente:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;F(x,t)=-D\frac{\partial u}{\partial x}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Donde &amp;lt;math&amp;gt;F&amp;lt;/math&amp;gt; es el flujo de la sustancia y &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; el coeficiente de difusión, que representa la facilidad en que un soluto particular se mueve por un disolvente determinado.&lt;br /&gt;
&lt;br /&gt;
La ley de Fick establece que el flujo de difusión del contaminante es proporcional a la variación de concentración:&lt;br /&gt;
&amp;lt;math&amp;gt; F(x,t)=-D\frac{\partial u}{\partial x} &amp;lt;/math&amp;gt;&lt;br /&gt;
donde D es el coeficiente de difusión (medido en &amp;lt;math&amp;gt; \frac{m^2}{s} &amp;lt;/math&amp;gt;), que depende de las propiedades físicas de los compuestos, y que se supone constante D=1.&lt;br /&gt;
&lt;br /&gt;
= Modelización de la ecuación diferencial =&lt;br /&gt;
&lt;br /&gt;
Aplicando el principio de conservación de la masa y la ley de Fourier, definimos la variable &amp;lt;math&amp;gt; u(x,t)&amp;lt;/math&amp;gt; en unidades de sustancia por área, es decir, concentración por superficie del tubo.&lt;br /&gt;
&lt;br /&gt;
Consideramos &amp;lt;math&amp;gt; A &amp;lt;/math&amp;gt; como variable superficie, y tomamos un pequeño trozo, definido por &amp;lt;math&amp;gt;\Delta x&amp;lt;/math&amp;gt;. Entonces, para obtener la variación de la masa en el tiempo:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; A u(x,t) \Delta x &amp;lt;/math&amp;gt; &lt;br /&gt;
&lt;br /&gt;
Y derivando en el tiempo:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; A u_t(x,t) \Delta x &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
obtenemos el primer término de la igualdad anteriormente enunciada.&lt;br /&gt;
&lt;br /&gt;
En el segundo, consideramos nulo el flujo de masa en los puntos interiores por unidad de tiempo, pues suponemos la tubería perfecta y sin sumideros.&lt;br /&gt;
&lt;br /&gt;
Como la superﬁcie lateral del tubo está aislada, solamente habrá flujo de sustancia en la dirección del eje &amp;lt;math&amp;gt;x&amp;lt;/math&amp;gt;. Si &amp;lt;math&amp;gt;F(x,t)&amp;gt; 0&amp;lt;/math&amp;gt; pensamos que el ﬂujo va hacia la derecha, si &amp;lt;math&amp;gt;F(x,t)&amp;lt; 0&amp;lt;/math&amp;gt;, este va a hacia la izquierda. El ﬂujo de&lt;br /&gt;
calor en un intervalo &amp;lt;math&amp;gt;[x, x + ∆x ] &amp;lt;/math&amp;gt; viene dado dado por:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;F(x,t)A-F(x+\Delta x, t)A&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Con lo que queda &amp;lt;math&amp;gt;A u_t(x,t) \Delta x = F(x,t)A-F(x+\Delta x, t)A&amp;lt;/math&amp;gt;, y al dividir &amp;lt;math&amp;gt;A \Delta x&amp;lt;/math&amp;gt;, nos queda &amp;lt;math&amp;gt;u_t(x,t)= \frac {F(x,t)-F(x+\Delta x, t)}{\Delta x}&amp;lt;/math&amp;gt;. &amp;lt;br /&amp;gt;&lt;br /&gt;
Como &amp;lt;math&amp;gt;\Delta x \rightarrow 0 &amp;lt;/math&amp;gt;, &amp;lt;math&amp;gt;u_t(x,t)= -F_x(x,t)&amp;lt;/math&amp;gt;, y aplicando ley de Fick, &amp;lt;math&amp;gt;u_t(x,t)=-\frac{\partial }{\partial x}(-D u_x(x,t)) = D u_xx(x,t) &amp;lt;/math&amp;gt;.&amp;lt;br /&amp;gt;&lt;br /&gt;
Con lo que resulta una ecuación en derivadas parciales que determina la concentración de sustancia:&lt;br /&gt;
&amp;lt;math&amp;gt;u_t(x,t)- D u_xx(x,t)= 0 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Planteamiento del problema bien propuesto ==&lt;br /&gt;
&lt;br /&gt;
Suponemos que el flujo será nula al haber una tapa en los extremos del tubo, con lo que el problema bien propuesto quedaría::&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\begin{cases}&lt;br /&gt;
u_t(x,t)- D u_{xx}(x,t)= 0 ; x\in (0,5) \\&lt;br /&gt;
u(x,0)=u_0 , x\in (0,5) \\&lt;br /&gt;
u_x(0,t)=0 , u_x(5,t)=0 ; t\geq 0&lt;br /&gt;
\end{cases}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= Resolución numérica =&lt;br /&gt;
Para la resolución de ésta ecuación necesitaremos mínimo tres condiciones, dos de las cuales serán de contorno, y la otra será la condición inicial.Si suponemos &amp;lt;math&amp;gt;u_0(x,0)&amp;lt;/math&amp;gt;, entonces:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; u_0(x,0)=\begin{cases}&lt;br /&gt;
0,  si x\leq 3\\&lt;br /&gt;
3,  si x&amp;gt;3&lt;br /&gt;
\end{cases}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Resolución por el método de las diferencias finitas ==&lt;br /&gt;
En el primer caso particular que estudiaremos, trataremos de obtener una resolución numérica del problema anteriormente planteado, dónde tenemos las fronteras aisladas y las concentraciones iniciales conocidas:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\begin{cases}&lt;br /&gt;
u_t(x,t)- D u_{xx}(x,t)= 0; x\in (0,5), t\geq 0 \\&lt;br /&gt;
u_0(x,0), x\in (0,5) \\&lt;br /&gt;
u_x(0,t)=0, u_x(5,t)=0, t\geq 0&lt;br /&gt;
\end{cases}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
La resolución por el método de las diferencias finitas se basa en expresar el problema continuo a un sistema discreto de ecuaciones diferenciales de primer orden. Particularizando para nuestro caso con las condiciones dadas, el problema planteado sería:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\begin{cases}&lt;br /&gt;
u'_n(t)+\frac{-u_{n-1}(t)+2u_n(t)+u_{n+1}(t)}{h^2} \\&lt;br /&gt;
\frac{u_1(t)-u_-1(t)}{2h} \rightarrow u_1(t)=u_-1(t) \\&lt;br /&gt;
\frac{u_{N+1}(t)-u_{N-1}(t)}{2h} \rightarrow u_{N+1}(t)=u_{N-1}\\&lt;br /&gt;
u_n(0)=u^0(x)&lt;br /&gt;
\end{cases}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Por lo que tenemos un sistema de la forma:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\begin{cases}&lt;br /&gt;
U'(t)+KU(t)=F(t)=0\\&lt;br /&gt;
U(0)=U^0&lt;br /&gt;
\end{cases}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Con &amp;lt;math&amp;gt;N+1&amp;lt;/math&amp;gt; ecuaciones.&lt;br /&gt;
==== Resolución por método del trapecio ====&lt;br /&gt;
Suponiendo que en el instante inicial se verifica  :&amp;lt;math&amp;gt;&lt;br /&gt;
u(x,0)=\left\{\begin{matrix}\\0, x≤3\\3, x&amp;gt;3\end{matrix}\right.&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Si tomamos &amp;lt;math&amp;gt;\triangle t= \triangle x/4&amp;lt;/math&amp;gt; en &amp;lt;math&amp;gt;t\in\ [0,5]&amp;lt;/math&amp;gt;, con &amp;lt;math&amp;gt;\triangle x=0.1&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
El código en MATLAB del método sería:&lt;br /&gt;
&lt;br /&gt;
{{matlab| codigo=&lt;br /&gt;
%Datos&lt;br /&gt;
L=5; %Longitud de varilla&lt;br /&gt;
T=5; %tiempo final&lt;br /&gt;
q=1;&lt;br /&gt;
%Discretización temporal y espacial&lt;br /&gt;
dx=0.1; % Paso en espacio&lt;br /&gt;
N=L/dx; %Número de subintervalos&lt;br /&gt;
x=0:dx:L; % Vector de espacio&lt;br /&gt;
dt=dx/4; % Paso en tiempo&lt;br /&gt;
t=0:dt:T; % Vector de tiempos&lt;br /&gt;
% Matriz de coeficientes. Aproximacion de -q*u_xx&lt;br /&gt;
K=2*diag(ones(1,N+1))-diag(ones(1,N),1)-diag(ones(1,N),-1);&lt;br /&gt;
K(1,2)=-2;&lt;br /&gt;
K(N+1,N)=-2;&lt;br /&gt;
K=q*K/dx^2;&lt;br /&gt;
% Calculamos u0 condición inicial&lt;br /&gt;
u0=[zeros(1,1+N*3/5),3*ones(1,N*2/5)]';&lt;br /&gt;
% F=0 (no la consideramos)&lt;br /&gt;
sol(1,:)=u0'; % Guardamos la solucion&lt;br /&gt;
U=u0; % Inicializacion&lt;br /&gt;
% Calculamos U_n -&amp;gt; U_n+1&lt;br /&gt;
%Aplicamos método trapecio método del trapecio&lt;br /&gt;
for j=1:length(t)-1&lt;br /&gt;
U=(eye(N+1)+(dt*K)/2)\((eye(N+1)-(K*dt)/2)*U);&lt;br /&gt;
sol(j+1,:)= U'; % Guardamos solucion&lt;br /&gt;
end&lt;br /&gt;
%Dibujamos la solucion&lt;br /&gt;
[xx,tt]=meshgrid(x,t);&lt;br /&gt;
surf(xx,tt,sol);&lt;br /&gt;
}}&lt;br /&gt;
[[Archivo:nur.jpg|500px|thumb|centro|Gráfica concentración / espacio-tiempo. Resolución por el método del trapecio.]]&lt;br /&gt;
&lt;br /&gt;
==== Resolución por método de Euler explícito ====&lt;br /&gt;
{{matlab| codigo=&lt;br /&gt;
%Datos&lt;br /&gt;
L=5; %Longitud de varilla&lt;br /&gt;
T=5; %tiempo final&lt;br /&gt;
q=1;&lt;br /&gt;
%Discretización temporal y espacial&lt;br /&gt;
dx=0.1; % Paso en espacio&lt;br /&gt;
N=L/dx; %Número de subintervalos&lt;br /&gt;
x=0:dx:L; % Vector de espacio&lt;br /&gt;
dt=dx/20; % Paso en tiempo&lt;br /&gt;
t=0:dt:T; % Vector de tiempos&lt;br /&gt;
% Matriz de coeficientes. Aproximacion de -q*u_xx&lt;br /&gt;
K=2*diag(ones(1,N+1))-diag(ones(1,N),1)-diag(ones(1,N),-1);&lt;br /&gt;
K(1,2)=-2;&lt;br /&gt;
K(N+1,N)=-2;&lt;br /&gt;
K=q*K/dx^2;&lt;br /&gt;
% Calculamos u0 condición inicial&lt;br /&gt;
u0=[zeros(1,1+N*3/5),3*ones(1,N*2/5)]';&lt;br /&gt;
% F=0 (no la consideramos)&lt;br /&gt;
sol(1,:)=u0'; % Guardamos la solucion&lt;br /&gt;
U=u0; % Inicializacion&lt;br /&gt;
% Calculamos U_n -&amp;gt; U_n+1&lt;br /&gt;
%Aplicamos método Euler explícito&lt;br /&gt;
for j=1:length(t)-1 &lt;br /&gt;
k1=-K*U; % Calculamos k1=h*f(tn,yn)&lt;br /&gt;
k2=-K*(U+dt*k1); % Calculamos k2=h*f(tn+h/2,yn+1/2*k1)&lt;br /&gt;
% Meto los datos en el vector&lt;br /&gt;
U=U+(dt/2)*(k1+k2);&lt;br /&gt;
sol(j+1,:)= U'; % Guardamos solucion&lt;br /&gt;
end&lt;br /&gt;
%Dibujamos la solucion&lt;br /&gt;
[xx,tt]=meshgrid(x,t);&lt;br /&gt;
surf(xx,tt,sol);&lt;br /&gt;
}}&lt;br /&gt;
[[Archivo:mig.jpg|500px|thumb|centro|Gráfica concentración / espacio-tiempo. Resolución por el método de Euler explícito.]]&lt;br /&gt;
&lt;br /&gt;
==== Resolución por método de Euler implícito ====&lt;br /&gt;
{{matlab| codigo=&lt;br /&gt;
%Datos&lt;br /&gt;
L=5; %Longitud de varilla&lt;br /&gt;
T=5;&lt;br /&gt;
q=1;&lt;br /&gt;
%Discretización temporal y espacial&lt;br /&gt;
dx=0.1; % Paso en espacio&lt;br /&gt;
N=L/dx; %Número de subintervalos&lt;br /&gt;
h=L/N;&lt;br /&gt;
x=0:h:L; % Vector de espacio&lt;br /&gt;
dt=h/20; % Paso en tiempo&lt;br /&gt;
t=0:dt:T; % Vector de tiempos&lt;br /&gt;
% Matriz de coeficientes. Aproximacion de -q*u_xx&lt;br /&gt;
K=2*diag(ones(1,N+1))-diag(ones(1,N),1)-diag(ones(1,N),-1);&lt;br /&gt;
K(1,2)=-2;&lt;br /&gt;
K(N+1,N)=-2;&lt;br /&gt;
K=q*K/h^2;&lt;br /&gt;
% Calculamos u0 condición inicial&lt;br /&gt;
u0=[zeros(1,1+N*3/5),3*ones(1,N*2/5)]';&lt;br /&gt;
% F=0 (no la consideramos)&lt;br /&gt;
sol(1,:)=u0'; % Guardamos la solucion&lt;br /&gt;
U=u0; % Inicializacion&lt;br /&gt;
% Calculamos U_n -&amp;gt; U_n+1&lt;br /&gt;
% Aplicamos método implícito&lt;br /&gt;
for j=1:length(t)-1 &lt;br /&gt;
U=U-dt*K*U; &lt;br /&gt;
sol(j+1,:)= U'; % Guardamos solucion&lt;br /&gt;
end&lt;br /&gt;
%Dibujamos la solucion&lt;br /&gt;
[xx,tt]=meshgrid(x,t);&lt;br /&gt;
surf(xx,tt,sol);&lt;br /&gt;
}}&lt;br /&gt;
[[Archivo:migap.jpg|500px|thumb|centro|Gráfica concentración / espacio-tiempo. Resolución por el método de Euler implícito.]]&lt;br /&gt;
&lt;br /&gt;
==== Resolución por método de Euler modificado ====&lt;br /&gt;
{{matlab| codigo=&lt;br /&gt;
%Datos&lt;br /&gt;
L=5; %Longitud de varilla&lt;br /&gt;
T=5;&lt;br /&gt;
q=1;&lt;br /&gt;
%Discretización temporal y espacial&lt;br /&gt;
dx=0.1; % Paso en espacio&lt;br /&gt;
N=L/dx; %Número de subintervalos&lt;br /&gt;
h=L/N;&lt;br /&gt;
x=0:h:L; % Vector de espacio&lt;br /&gt;
dt=h/20; % Paso en tiempo&lt;br /&gt;
t=0:dt:T; % Vector de tiempos&lt;br /&gt;
% Matriz de coeficientes. Aproximacion de -q*u_xx&lt;br /&gt;
K=2*diag(ones(1,N+1))-diag(ones(1,N),1)-diag(ones(1,N),-1);&lt;br /&gt;
K(1,2)=-2;&lt;br /&gt;
K(N+1,N)=-2;&lt;br /&gt;
K=q*K/h^2;&lt;br /&gt;
% Calculamos u0 condición inicial&lt;br /&gt;
u0=[zeros(1,1+N*3/5),3*ones(1,N*2/5)]';&lt;br /&gt;
% F=0 (no la consideramos)&lt;br /&gt;
sol(1,:)=u0'; % Guardamos la solucion&lt;br /&gt;
U=u0; % Inicializacion&lt;br /&gt;
% Calculamos U_n -&amp;gt; U_n+1&lt;br /&gt;
for j=1:length(t)-1 &lt;br /&gt;
k1=-K*U; % Calculamos k1=h*f(tn,yn)&lt;br /&gt;
k2=-K*(U+dt*k1); % Calculamos k2=h*f(tn+h/2,yn+1/2*k1)&lt;br /&gt;
% Meto los datos en el vector&lt;br /&gt;
U=U+(dt/2)*(k1+k2);&lt;br /&gt;
sol(j+1,:)= U'; % Guardamos solucion&lt;br /&gt;
end&lt;br /&gt;
%Dibujamos la solucion&lt;br /&gt;
[xx,tt]=meshgrid(x,t);&lt;br /&gt;
surf(xx,tt,sol);&lt;br /&gt;
}}&lt;br /&gt;
[[Archivo: mig.jpg|500px|thumb|centro|Gráfica concentración / espacio-tiempo. Resolución por el método de Euler modificado.]]&lt;br /&gt;
&lt;br /&gt;
== Conservación de la masa total de contaminante ==&lt;br /&gt;
A continuación demostraremos que la masa total de contaminante en el tubo se conserva a lo largo del tiempo, que se puede deducir a partir de la ecuación sin tener que resolverla. Integramos la ecuación y debido a las condiciones de frontera:&lt;br /&gt;
&amp;lt;math&amp;gt;\frac d {dt} \int_0^5 u(x,t)\,dx= \int_0^5 u_{xx}(x,t)\,dx= u_x(x,t)|_0^5=0&amp;lt;/math&amp;gt;&lt;br /&gt;
{{matlab| codigo=&lt;br /&gt;
%Datos&lt;br /&gt;
L=5; %Longitud de varilla&lt;br /&gt;
T=5;&lt;br /&gt;
q=1;&lt;br /&gt;
%Discretización temporal y espacial&lt;br /&gt;
N=500; %Número de subintervalos&lt;br /&gt;
h=L/N;&lt;br /&gt;
x=0:h:L; % Vector de espacio&lt;br /&gt;
dt=h/4; % Paso en tiempo&lt;br /&gt;
t=0:dt:T; % Vector de tiempos&lt;br /&gt;
% Matriz de coeficientes. Aproximacion de -q*u_xx&lt;br /&gt;
K=2*diag(ones(1,N+1))-diag(ones(1,N),1)-diag(ones(1,N),-1);&lt;br /&gt;
K(1,2)=-2;&lt;br /&gt;
K(N+1,N)=-2;&lt;br /&gt;
K=q*K/h^2;&lt;br /&gt;
% Calculamos u0 condición inicial&lt;br /&gt;
u0=[zeros(1,1+N*3/5),3*ones(1,N*2/5)]';&lt;br /&gt;
% F=0 (no la consideramos)&lt;br /&gt;
sol(1,:)=u0'; % Guardamos la solucion&lt;br /&gt;
U=u0; % Inicializacion&lt;br /&gt;
% Calculamos U_n -&amp;gt; U_n+1&lt;br /&gt;
for j=1:length(t)-1 &lt;br /&gt;
U=(eye(N+1)+dt*K)\(U+dt*F); &lt;br /&gt;
sol(j+1,:)= U'; % Guardamos solucion&lt;br /&gt;
end&lt;br /&gt;
% Calculamos el area de la funcion en cada tiempo (area = cantidad de contaminante)&lt;br /&gt;
areas=zeros(1,length(t));&lt;br /&gt;
for i=1:length(t)&lt;br /&gt;
f=sol(i,:);&lt;br /&gt;
w=trapz(x,f);&lt;br /&gt;
area(i)=w;&lt;br /&gt;
end&lt;br /&gt;
%Dibujamos&lt;br /&gt;
plot(t,area)&lt;br /&gt;
xlabel('Tiempo')&lt;br /&gt;
ylabel('Cantidad de contaminante')&lt;br /&gt;
}}&lt;br /&gt;
[[Archivo:aleeex.jpg|500px|thumb|centro|Conservación masa total de contaminante]]&lt;br /&gt;
[[Archivo:gime.jpg|500px|thumb|centro|Conservación masa total de contaminante]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Concentración a lo largo del tiempo==&lt;br /&gt;
La concentración de la sustancia contaminante en la varilla varía con el tiempo, pero en un cierto momento esta concentración se va homogeneizando, y deja de variar, entrando en un estado estacionario::&lt;br /&gt;
&amp;lt;math&amp;gt; u_t(x,t)- D*u_{xx}(x,t)=0 &amp;lt;/math&amp;gt; :    &lt;br /&gt;
&amp;lt;math&amp;gt; u_t(x,t)=0 \rightarrow D*u_{xx}(x,t)=0 &amp;lt;/math&amp;gt; :&lt;br /&gt;
&amp;lt;math&amp;gt; u=c_1*x+c_2 &amp;lt;/math&amp;gt; &lt;br /&gt;
Utizando Matlab comprobaremos que &amp;lt;math&amp;gt; c_1=0 &amp;lt;/math&amp;gt; &amp;lt;math&amp;gt; c_2=1.17 &amp;lt;/math&amp;gt;&lt;br /&gt;
Para tiempos grandes la concentración se estabiliza en torno a 1.17 en toda la varilla, de forma que la solución se asemejará a una función lineal constante.&lt;br /&gt;
&lt;br /&gt;
{{matlab| codigo=&lt;br /&gt;
%Datos&lt;br /&gt;
L=5; %Longitud de varilla&lt;br /&gt;
T=50;&lt;br /&gt;
q=1;&lt;br /&gt;
%Discretización temporal y espacial&lt;br /&gt;
dx=0.1; % Paso en espacio&lt;br /&gt;
N=L/dx; %Número de subintervalos&lt;br /&gt;
h=L/N;&lt;br /&gt;
x=0:h:L; % Vector de espacio&lt;br /&gt;
dt=h/4; % Paso en tiempo&lt;br /&gt;
t=0:dt:T; % Vector de tiempos&lt;br /&gt;
% Matriz de coeficientes. Aproximacion de -q*u_xx&lt;br /&gt;
K=2*diag(ones(1,N+1))-diag(ones(1,N),1)-diag(ones(1,N),-1);&lt;br /&gt;
K(1,2)=-2;&lt;br /&gt;
K(N+1,N)=-2;&lt;br /&gt;
K=q*K/h^2;&lt;br /&gt;
% Calculamos u0 condición inicial&lt;br /&gt;
u0=[zeros(1,1+N*3/5),3*ones(1,N*2/5)]';&lt;br /&gt;
% F=0 (no la consideramos)&lt;br /&gt;
sol(1,:)=u0'; % Guardamos la solucion&lt;br /&gt;
U=u0; % Inicializacion&lt;br /&gt;
% Calculamos U_n -&amp;gt; U_n+1&lt;br /&gt;
%Aplicamos método trapecio método del trapecio&lt;br /&gt;
for j=1:length(t)-1&lt;br /&gt;
U=(eye(N+1)+(dt*K)/2)\((eye(N+1)-(K*dt)/2)*U);&lt;br /&gt;
sol(j+1,:)= U'; % Guardamos solucion&lt;br /&gt;
end&lt;br /&gt;
%Solución estacionaria&lt;br /&gt;
a=sol(length(t),:);&lt;br /&gt;
b=sol(1,:);&lt;br /&gt;
c=sol((length(t)-1)/50+1,:);&lt;br /&gt;
d=sol((length(t)-1)*2/50+1,:);&lt;br /&gt;
e=sol((length(t)-1)*10/50+1,:);&lt;br /&gt;
hold on&lt;br /&gt;
plot(x,a,'xk','linewidth',2);&lt;br /&gt;
plot(x,b,'-m','linewidth',1);&lt;br /&gt;
plot(x,c,'-g','linewidth',1);&lt;br /&gt;
plot(x,d,'-y','linewidth',1);&lt;br /&gt;
plot(x,e,'-b','linewidth',1);&lt;br /&gt;
legend('u(50s)','u(0s)','u(1s)','u(2s)','u(10s)');&lt;br /&gt;
xlabel('Posición en la varilla')&lt;br /&gt;
ylabel('Concentracion')&lt;br /&gt;
hold off&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Soluciones(t).jpg|500px|thumb|centro|Soluciones a lo largo del tiempo]]&lt;br /&gt;
&lt;br /&gt;
La distancia entre la solución estacionaria y las soluciones para los siguientes instantes: 0s, 1s, 2s y 10s; se puede apreciar en la imagen anterior. &lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
Una vez analizado los datos, se demuestra que la sustancia contaminante se estabiliza en t=9.98s, con un error del 5%.&lt;br /&gt;
&lt;br /&gt;
En el caso de que consideremos Δx'=Δx/10,el tiempo en el que se estabiliza la cantidad de sustancia contaminante será t=10s, dato que será más preciso debido a que el paso realizado en el programa es menor.&lt;br /&gt;
&lt;br /&gt;
==Nueva condición de frontera==&lt;br /&gt;
&lt;br /&gt;
Si colocamos un limpiador, que elimina la sustancia contaminante, en el extremo izquierdo de la varilla, varían las condiciones de contorno del problema. En este caso, en el extremo izquierdo, la condición inicial será de tipo Dirichlet ya que se esta variación esta provocada por un mecanismo físico externo que actúa sobre el extremo. &amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;math&amp;gt;\begin{cases}&lt;br /&gt;
u_t(x,t)- D u_{xx}(x,t)= 0 ; x\in (0,5) \\&lt;br /&gt;
u(x,0)=u_0 , x\in (0,5) \\&lt;br /&gt;
u(0,t)=0 , u_x(5,t)=0 ; t\geq 0&lt;br /&gt;
\end{cases}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Dadas las nuevas condiciones, resolvemos el problema por el método de diferencias finitas con la ayuda de Matlab.&lt;br /&gt;
&lt;br /&gt;
{{matlab| codigo=&lt;br /&gt;
%Datos&lt;br /&gt;
L=5; %Longitud de varilla&lt;br /&gt;
T=5; %tiempo final&lt;br /&gt;
q=1;&lt;br /&gt;
%Discretización temporal y espacial&lt;br /&gt;
dx=0.1; % Paso en espacio&lt;br /&gt;
N=L/dx; %Número de subintervalos&lt;br /&gt;
x=0:dx:L;% Vector de espacio&lt;br /&gt;
dt=dx/4; % Paso en tiempo&lt;br /&gt;
t=0:dt:T; % Vector de tiempos&lt;br /&gt;
% Matriz de coeficientes. Aproximacion de -q*u_xx&lt;br /&gt;
K=2*diag(ones(1,N))-diag(ones(1,N-1),1)-diag(ones(1,N-1),-1);&lt;br /&gt;
K(N,N-1)=-2;&lt;br /&gt;
K=q*K/dx^2;&lt;br /&gt;
% Matriz F&lt;br /&gt;
F=zeros(N,1);&lt;br /&gt;
% Calculamos u0 condición inicial&lt;br /&gt;
u0=[zeros(1,N*3/5),3*ones(1,N*2/5)]';&lt;br /&gt;
sol(1,:)=[0,u0']; &lt;br /&gt;
U=u0; % Inicializacion&lt;br /&gt;
% Calculamos U_n -&amp;gt; U_n+1&lt;br /&gt;
%Aplicamos método trapecio método del trapecio&lt;br /&gt;
for j=1:length(t)-1&lt;br /&gt;
U=(eye(N)+(dt*K))\(dt*F+U);&lt;br /&gt;
sol(j+1,:)= [0,U'];&lt;br /&gt;
end&lt;br /&gt;
%Dibujamos la solucion&lt;br /&gt;
[xx,tt]=meshgrid(x,t);&lt;br /&gt;
surf(xx,tt,sol);&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Xata.JPG|500px|thumb|centro|Solución al variar las condiciones de contorno del problema.]]&lt;br /&gt;
&lt;br /&gt;
Observando la gráfica, y por la presencia del limpiador en el extremo de la varilla, para tiempos grandes la cantidad de sustancia contaminante será nula en toda la varilla. En realidad, esto no es del todo cierto puesto que la sustancia no llega a eliminarse completamente, ya que el limpiador solo elimina la sustancia contaminante en el extremo izquierdo. Aunque la concentración en todos los puntos disminuye de manera exponencial, permanece asintótica a 0.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Trapotito.JPG|500px|thumb|centro|Momento en el que se estabiliza con la presencia del limpiador.]]&lt;br /&gt;
&lt;br /&gt;
==Resolución por el método de Fourier==&lt;br /&gt;
&lt;br /&gt;
Las condiciones de frontera del problema son homogéneas, por lo que podemos aplicar este método de cálculo, sin realizar ningún cambio.&lt;br /&gt;
El primer paso es resolver el problema de autovalores asociado:&lt;br /&gt;
&amp;lt;math&amp;gt;\begin{cases}&lt;br /&gt;
y''+λy=0 x \in (0,5) \\&lt;br /&gt;
y'(0)=0 \\&lt;br /&gt;
y'(5)=0&lt;br /&gt;
\end{cases}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
Realizando analíticamente el cálculo, obtenemos los siguientes autovalores y autofunciones:&lt;br /&gt;
&amp;lt;math&amp;gt; λ_k=\frac{k^2π^2}{25}  →  φ_k=sin\frac{kπ}{5} , k=0,1,2,3... &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Calculamos la serie de Fourier en términos de las autofunciones::&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \sum_{k=0}^∞c_k(t)φ_k(x)=0  &amp;lt;/math&amp;gt;&lt;br /&gt;
 &lt;br /&gt;
Y ensayamos soluciones dela forma:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; u(x,t)=\sum_{k=0}^∞T_k(t)φ_k(x)=\sum_{k=0}^∞T_k(t)sin\frac{kπ}{5} &amp;lt;/math&amp;gt;&lt;/div&gt;</summary>
		<author><name>Karlo André</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Difusi%C3%B3n_de_una_sustancia_contaminante_(Grupo_10)&amp;diff=12921</id>
		<title>Difusión de una sustancia contaminante (Grupo 10)</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Difusi%C3%B3n_de_una_sustancia_contaminante_(Grupo_10)&amp;diff=12921"/>
				<updated>2014-05-19T17:47:28Z</updated>
		
		<summary type="html">&lt;p&gt;Karlo André: /* Resolución por el método de Fourier */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;''''''Texto en negrita''''''[[Archivo:nuriat.png|200px|thumb|right|Tubo con sustancia contaminante]]&lt;br /&gt;
La difusión implica un movimiento espontáneo y desordenado de moléculas individuales y, especialmente, nos interesa la difusión de moléculas de una sustancia disuelta en otra.&lt;br /&gt;
&lt;br /&gt;
La difusión de una sustancia puede considerarse análoga al flujo de calor, y la ley de Fick establece que el ritmo de difusión por unidad de superficie, en dirección perpendicular a ésta, es proporcional al gradiente de la concentración de esa sustancia en esa dirección. La concentración es la masa de la sustancia por unidad de volumen, y el gradiente de concentración es la variación de concentración por unidad de distancia.&lt;br /&gt;
&lt;br /&gt;
Para determinar como se distribuye la concentración de una sustancia contaminante tomaremos como ejemplo un tubo largo compuesto por dos sustancias de las cuáles una de ellas es contaminante.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
= Simplificación del problema =&lt;br /&gt;
&lt;br /&gt;
Para que este problema resulte más sencillo aplicaremos una serie de condiciones, facilitando el cálculo del mismo.&lt;br /&gt;
&lt;br /&gt;
En primer lugar denotaremos su concentración &amp;lt;math&amp;gt; u &amp;lt;/math&amp;gt;, concentración de contaminante en cada posición del tubo y constante en cada sección, medida en &amp;lt;math&amp;gt; \frac{mol}{m^2*s} &amp;lt;/math&amp;gt;. &lt;br /&gt;
&lt;br /&gt;
Supondremos que el tubo mide L=5 m, ocupando el intervalo &amp;lt;math&amp;gt; x \in (0,L) &amp;lt;/math&amp;gt;, y que la concentración es la misma en cualquier punto de la sección transversal del tubo. Por tanto, la concentración dependerá unicamente de dos variables &amp;lt;math&amp;gt; u = u(x,t) &amp;lt;/math&amp;gt;. En los extremos se ha colocado un aislante que hace que el flujo de contaminante al exterior del tubo sea nulo. Además, consideraremos la simplificación de que se trata de un tubo aislado por sus laterales, pero abierto por las bases del cilindro.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Ley de conservación de masa ==&lt;br /&gt;
&lt;br /&gt;
Tras una serie de experimentos realizados por Lavoisier, se pusieron de manifiesto que si tenemos en cuenta todas las sustancias que forman parte en una reacción química y todos los productos formados, nunca varía la masa. Esta ley exige que no haya una generación espontánea de materia. Es decir, en la región del espacio estudiada, no existe entrada o salida por un punto cualquiera (frontera o interior), la masa en esta región se mantiene constante. Esta es la ley de la conservación de la masa, que podemos enunciarla, pues, de la siguiente manera: &amp;lt;br /&amp;gt;&lt;br /&gt;
''&amp;quot;En toda reacción química la masa se conserva, esto es, la masa total de los reactivos es igual a la masa total de los productos&amp;quot;'' &amp;lt;br /&amp;gt;&lt;br /&gt;
La ley de conservación de masas exige que no haya una generación espontánea de materia. Es decir, en la región del espacio estudiada, no existe entrada o salida por un punto cualquiera (frontera o interior), la masa en esta región se mantiene constante.&lt;br /&gt;
&lt;br /&gt;
Esta suposición, en términos de variación de masa, puede quedar determinada como:&lt;br /&gt;
&lt;br /&gt;
''Variación de la masa en el tiempo = flujo de masa a través de la frontera por unidad de tiempo + flujo de masa generada en el interior por unidad de tiempo. ''&lt;br /&gt;
&lt;br /&gt;
== Ley de Fick ==&lt;br /&gt;
Se trata de una ley cuantitativa en forma diferencial que describe la difusión de materia o energía en un medio en el que inicialmente existe equilibrio químico o físico. Esta ley se trata de una generalización de los fenómenos descritos por la '''Ley de Fourier''', ya que esta es una consideración concreta del calor.&lt;br /&gt;
&lt;br /&gt;
La ley de Fick anuncia que en el caso de existir diferencias de concentración en cualquier especie, el paso de estas especies se llevará a cabo desde las regiones con mayor concentración a las de menor. Formulado matemáticamente:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;F(x,t)=-D\frac{\partial u}{\partial x}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Donde &amp;lt;math&amp;gt;F&amp;lt;/math&amp;gt; es el flujo de la sustancia y &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; el coeficiente de difusión, que representa la facilidad en que un soluto particular se mueve por un disolvente determinado.&lt;br /&gt;
&lt;br /&gt;
La ley de Fick establece que el flujo de difusión del contaminante es proporcional a la variación de concentración:&lt;br /&gt;
&amp;lt;math&amp;gt; F(x,t)=-D\frac{\partial u}{\partial x} &amp;lt;/math&amp;gt;&lt;br /&gt;
donde D es el coeficiente de difusión (medido en &amp;lt;math&amp;gt; \frac{m^2}{s} &amp;lt;/math&amp;gt;), que depende de las propiedades físicas de los compuestos, y que se supone constante D=1.&lt;br /&gt;
&lt;br /&gt;
= Modelización de la ecuación diferencial =&lt;br /&gt;
&lt;br /&gt;
Aplicando el principio de conservación de la masa y la ley de Fourier, definimos la variable &amp;lt;math&amp;gt; u(x,t)&amp;lt;/math&amp;gt; en unidades de sustancia por área, es decir, concentración por superficie del tubo.&lt;br /&gt;
&lt;br /&gt;
Consideramos &amp;lt;math&amp;gt; A &amp;lt;/math&amp;gt; como variable superficie, y tomamos un pequeño trozo, definido por &amp;lt;math&amp;gt;\Delta x&amp;lt;/math&amp;gt;. Entonces, para obtener la variación de la masa en el tiempo:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; A u(x,t) \Delta x &amp;lt;/math&amp;gt; &lt;br /&gt;
&lt;br /&gt;
Y derivando en el tiempo:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; A u_t(x,t) \Delta x &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
obtenemos el primer término de la igualdad anteriormente enunciada.&lt;br /&gt;
&lt;br /&gt;
En el segundo, consideramos nulo el flujo de masa en los puntos interiores por unidad de tiempo, pues suponemos la tubería perfecta y sin sumideros.&lt;br /&gt;
&lt;br /&gt;
Como la superﬁcie lateral del tubo está aislada, solamente habrá flujo de sustancia en la dirección del eje &amp;lt;math&amp;gt;x&amp;lt;/math&amp;gt;. Si &amp;lt;math&amp;gt;F(x,t)&amp;gt; 0&amp;lt;/math&amp;gt; pensamos que el ﬂujo va hacia la derecha, si &amp;lt;math&amp;gt;F(x,t)&amp;lt; 0&amp;lt;/math&amp;gt;, este va a hacia la izquierda. El ﬂujo de&lt;br /&gt;
calor en un intervalo &amp;lt;math&amp;gt;[x, x + ∆x ] &amp;lt;/math&amp;gt; viene dado dado por:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;F(x,t)A-F(x+\Delta x, t)A&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Con lo que queda &amp;lt;math&amp;gt;A u_t(x,t) \Delta x = F(x,t)A-F(x+\Delta x, t)A&amp;lt;/math&amp;gt;, y al dividir &amp;lt;math&amp;gt;A \Delta x&amp;lt;/math&amp;gt;, nos queda &amp;lt;math&amp;gt;u_t(x,t)= \frac {F(x,t)-F(x+\Delta x, t)}{\Delta x}&amp;lt;/math&amp;gt;. &amp;lt;br /&amp;gt;&lt;br /&gt;
Como &amp;lt;math&amp;gt;\Delta x \rightarrow 0 &amp;lt;/math&amp;gt;, &amp;lt;math&amp;gt;u_t(x,t)= -F_x(x,t)&amp;lt;/math&amp;gt;, y aplicando ley de Fick, &amp;lt;math&amp;gt;u_t(x,t)=-\frac{\partial }{\partial x}(-D u_x(x,t)) = D u_xx(x,t) &amp;lt;/math&amp;gt;.&amp;lt;br /&amp;gt;&lt;br /&gt;
Con lo que resulta una ecuación en derivadas parciales que determina la concentración de sustancia:&lt;br /&gt;
&amp;lt;math&amp;gt;u_t(x,t)- D u_xx(x,t)= 0 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Planteamiento del problema bien propuesto ==&lt;br /&gt;
&lt;br /&gt;
Suponemos que el flujo será nula al haber una tapa en los extremos del tubo, con lo que el problema bien propuesto quedaría::&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\begin{cases}&lt;br /&gt;
u_t(x,t)- D u_{xx}(x,t)= 0 ; x\in (0,5) \\&lt;br /&gt;
u(x,0)=u_0 , x\in (0,5) \\&lt;br /&gt;
u_x(0,t)=0 , u_x(5,t)=0 ; t\geq 0&lt;br /&gt;
\end{cases}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= Resolución numérica =&lt;br /&gt;
Para la resolución de ésta ecuación necesitaremos mínimo tres condiciones, dos de las cuales serán de contorno, y la otra será la condición inicial.Si suponemos &amp;lt;math&amp;gt;u_0(x,0)&amp;lt;/math&amp;gt;, entonces:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; u_0(x,0)=\begin{cases}&lt;br /&gt;
0,  si x\leq 3\\&lt;br /&gt;
3,  si x&amp;gt;3&lt;br /&gt;
\end{cases}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Resolución por el método de las diferencias finitas ==&lt;br /&gt;
En el primer caso particular que estudiaremos, trataremos de obtener una resolución numérica del problema anteriormente planteado, dónde tenemos las fronteras aisladas y las concentraciones iniciales conocidas:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\begin{cases}&lt;br /&gt;
u_t(x,t)- D u_{xx}(x,t)= 0; x\in (0,5), t\geq 0 \\&lt;br /&gt;
u_0(x,0), x\in (0,5) \\&lt;br /&gt;
u_x(0,t)=0, u_x(5,t)=0, t\geq 0&lt;br /&gt;
\end{cases}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
La resolución por el método de las diferencias finitas se basa en expresar el problema continuo a un sistema discreto de ecuaciones diferenciales de primer orden. Particularizando para nuestro caso con las condiciones dadas, el problema planteado sería:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\begin{cases}&lt;br /&gt;
u'_n(t)+\frac{-u_{n-1}(t)+2u_n(t)+u_{n+1}(t)}{h^2} \\&lt;br /&gt;
\frac{u_1(t)-u_-1(t)}{2h} \rightarrow u_1(t)=u_-1(t) \\&lt;br /&gt;
\frac{u_{N+1}(t)-u_{N-1}(t)}{2h} \rightarrow u_{N+1}(t)=u_{N-1}\\&lt;br /&gt;
u_n(0)=u^0(x)&lt;br /&gt;
\end{cases}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Por lo que tenemos un sistema de la forma:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\begin{cases}&lt;br /&gt;
U'(t)+KU(t)=F(t)=0\\&lt;br /&gt;
U(0)=U^0&lt;br /&gt;
\end{cases}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Con &amp;lt;math&amp;gt;N+1&amp;lt;/math&amp;gt; ecuaciones.&lt;br /&gt;
==== Resolución por método del trapecio ====&lt;br /&gt;
Suponiendo que en el instante inicial se verifica  :&amp;lt;math&amp;gt;&lt;br /&gt;
u(x,0)=\left\{\begin{matrix}\\0, x≤3\\3, x&amp;gt;3\end{matrix}\right.&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Si tomamos &amp;lt;math&amp;gt;\triangle t= \triangle x/4&amp;lt;/math&amp;gt; en &amp;lt;math&amp;gt;t\in\ [0,5]&amp;lt;/math&amp;gt;, con &amp;lt;math&amp;gt;\triangle x=0.1&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
El código en MATLAB del método sería:&lt;br /&gt;
&lt;br /&gt;
{{matlab| codigo=&lt;br /&gt;
%Datos&lt;br /&gt;
L=5; %Longitud de varilla&lt;br /&gt;
T=5; %tiempo final&lt;br /&gt;
q=1;&lt;br /&gt;
%Discretización temporal y espacial&lt;br /&gt;
dx=0.1; % Paso en espacio&lt;br /&gt;
N=L/dx; %Número de subintervalos&lt;br /&gt;
x=0:dx:L; % Vector de espacio&lt;br /&gt;
dt=dx/4; % Paso en tiempo&lt;br /&gt;
t=0:dt:T; % Vector de tiempos&lt;br /&gt;
% Matriz de coeficientes. Aproximacion de -q*u_xx&lt;br /&gt;
K=2*diag(ones(1,N+1))-diag(ones(1,N),1)-diag(ones(1,N),-1);&lt;br /&gt;
K(1,2)=-2;&lt;br /&gt;
K(N+1,N)=-2;&lt;br /&gt;
K=q*K/dx^2;&lt;br /&gt;
% Calculamos u0 condición inicial&lt;br /&gt;
u0=[zeros(1,1+N*3/5),3*ones(1,N*2/5)]';&lt;br /&gt;
% F=0 (no la consideramos)&lt;br /&gt;
sol(1,:)=u0'; % Guardamos la solucion&lt;br /&gt;
U=u0; % Inicializacion&lt;br /&gt;
% Calculamos U_n -&amp;gt; U_n+1&lt;br /&gt;
%Aplicamos método trapecio método del trapecio&lt;br /&gt;
for j=1:length(t)-1&lt;br /&gt;
U=(eye(N+1)+(dt*K)/2)\((eye(N+1)-(K*dt)/2)*U);&lt;br /&gt;
sol(j+1,:)= U'; % Guardamos solucion&lt;br /&gt;
end&lt;br /&gt;
%Dibujamos la solucion&lt;br /&gt;
[xx,tt]=meshgrid(x,t);&lt;br /&gt;
surf(xx,tt,sol);&lt;br /&gt;
}}&lt;br /&gt;
[[Archivo:nur.jpg|500px|thumb|centro|Gráfica concentración / espacio-tiempo. Resolución por el método del trapecio.]]&lt;br /&gt;
&lt;br /&gt;
==== Resolución por método de Euler explícito ====&lt;br /&gt;
{{matlab| codigo=&lt;br /&gt;
%Datos&lt;br /&gt;
L=5; %Longitud de varilla&lt;br /&gt;
T=5; %tiempo final&lt;br /&gt;
q=1;&lt;br /&gt;
%Discretización temporal y espacial&lt;br /&gt;
dx=0.1; % Paso en espacio&lt;br /&gt;
N=L/dx; %Número de subintervalos&lt;br /&gt;
x=0:dx:L; % Vector de espacio&lt;br /&gt;
dt=dx/20; % Paso en tiempo&lt;br /&gt;
t=0:dt:T; % Vector de tiempos&lt;br /&gt;
% Matriz de coeficientes. Aproximacion de -q*u_xx&lt;br /&gt;
K=2*diag(ones(1,N+1))-diag(ones(1,N),1)-diag(ones(1,N),-1);&lt;br /&gt;
K(1,2)=-2;&lt;br /&gt;
K(N+1,N)=-2;&lt;br /&gt;
K=q*K/dx^2;&lt;br /&gt;
% Calculamos u0 condición inicial&lt;br /&gt;
u0=[zeros(1,1+N*3/5),3*ones(1,N*2/5)]';&lt;br /&gt;
% F=0 (no la consideramos)&lt;br /&gt;
sol(1,:)=u0'; % Guardamos la solucion&lt;br /&gt;
U=u0; % Inicializacion&lt;br /&gt;
% Calculamos U_n -&amp;gt; U_n+1&lt;br /&gt;
%Aplicamos método Euler explícito&lt;br /&gt;
for j=1:length(t)-1 &lt;br /&gt;
k1=-K*U; % Calculamos k1=h*f(tn,yn)&lt;br /&gt;
k2=-K*(U+dt*k1); % Calculamos k2=h*f(tn+h/2,yn+1/2*k1)&lt;br /&gt;
% Meto los datos en el vector&lt;br /&gt;
U=U+(dt/2)*(k1+k2);&lt;br /&gt;
sol(j+1,:)= U'; % Guardamos solucion&lt;br /&gt;
end&lt;br /&gt;
%Dibujamos la solucion&lt;br /&gt;
[xx,tt]=meshgrid(x,t);&lt;br /&gt;
surf(xx,tt,sol);&lt;br /&gt;
}}&lt;br /&gt;
[[Archivo:mig.jpg|500px|thumb|centro|Gráfica concentración / espacio-tiempo. Resolución por el método de Euler explícito.]]&lt;br /&gt;
&lt;br /&gt;
==== Resolución por método de Euler implícito ====&lt;br /&gt;
{{matlab| codigo=&lt;br /&gt;
%Datos&lt;br /&gt;
L=5; %Longitud de varilla&lt;br /&gt;
T=5;&lt;br /&gt;
q=1;&lt;br /&gt;
%Discretización temporal y espacial&lt;br /&gt;
dx=0.1; % Paso en espacio&lt;br /&gt;
N=L/dx; %Número de subintervalos&lt;br /&gt;
h=L/N;&lt;br /&gt;
x=0:h:L; % Vector de espacio&lt;br /&gt;
dt=h/20; % Paso en tiempo&lt;br /&gt;
t=0:dt:T; % Vector de tiempos&lt;br /&gt;
% Matriz de coeficientes. Aproximacion de -q*u_xx&lt;br /&gt;
K=2*diag(ones(1,N+1))-diag(ones(1,N),1)-diag(ones(1,N),-1);&lt;br /&gt;
K(1,2)=-2;&lt;br /&gt;
K(N+1,N)=-2;&lt;br /&gt;
K=q*K/h^2;&lt;br /&gt;
% Calculamos u0 condición inicial&lt;br /&gt;
u0=[zeros(1,1+N*3/5),3*ones(1,N*2/5)]';&lt;br /&gt;
% F=0 (no la consideramos)&lt;br /&gt;
sol(1,:)=u0'; % Guardamos la solucion&lt;br /&gt;
U=u0; % Inicializacion&lt;br /&gt;
% Calculamos U_n -&amp;gt; U_n+1&lt;br /&gt;
% Aplicamos método implícito&lt;br /&gt;
for j=1:length(t)-1 &lt;br /&gt;
U=U-dt*K*U; &lt;br /&gt;
sol(j+1,:)= U'; % Guardamos solucion&lt;br /&gt;
end&lt;br /&gt;
%Dibujamos la solucion&lt;br /&gt;
[xx,tt]=meshgrid(x,t);&lt;br /&gt;
surf(xx,tt,sol);&lt;br /&gt;
}}&lt;br /&gt;
[[Archivo:migap.jpg|500px|thumb|centro|Gráfica concentración / espacio-tiempo. Resolución por el método de Euler implícito.]]&lt;br /&gt;
&lt;br /&gt;
==== Resolución por método de Euler modificado ====&lt;br /&gt;
{{matlab| codigo=&lt;br /&gt;
%Datos&lt;br /&gt;
L=5; %Longitud de varilla&lt;br /&gt;
T=5;&lt;br /&gt;
q=1;&lt;br /&gt;
%Discretización temporal y espacial&lt;br /&gt;
dx=0.1; % Paso en espacio&lt;br /&gt;
N=L/dx; %Número de subintervalos&lt;br /&gt;
h=L/N;&lt;br /&gt;
x=0:h:L; % Vector de espacio&lt;br /&gt;
dt=h/20; % Paso en tiempo&lt;br /&gt;
t=0:dt:T; % Vector de tiempos&lt;br /&gt;
% Matriz de coeficientes. Aproximacion de -q*u_xx&lt;br /&gt;
K=2*diag(ones(1,N+1))-diag(ones(1,N),1)-diag(ones(1,N),-1);&lt;br /&gt;
K(1,2)=-2;&lt;br /&gt;
K(N+1,N)=-2;&lt;br /&gt;
K=q*K/h^2;&lt;br /&gt;
% Calculamos u0 condición inicial&lt;br /&gt;
u0=[zeros(1,1+N*3/5),3*ones(1,N*2/5)]';&lt;br /&gt;
% F=0 (no la consideramos)&lt;br /&gt;
sol(1,:)=u0'; % Guardamos la solucion&lt;br /&gt;
U=u0; % Inicializacion&lt;br /&gt;
% Calculamos U_n -&amp;gt; U_n+1&lt;br /&gt;
for j=1:length(t)-1 &lt;br /&gt;
k1=-K*U; % Calculamos k1=h*f(tn,yn)&lt;br /&gt;
k2=-K*(U+dt*k1); % Calculamos k2=h*f(tn+h/2,yn+1/2*k1)&lt;br /&gt;
% Meto los datos en el vector&lt;br /&gt;
U=U+(dt/2)*(k1+k2);&lt;br /&gt;
sol(j+1,:)= U'; % Guardamos solucion&lt;br /&gt;
end&lt;br /&gt;
%Dibujamos la solucion&lt;br /&gt;
[xx,tt]=meshgrid(x,t);&lt;br /&gt;
surf(xx,tt,sol);&lt;br /&gt;
}}&lt;br /&gt;
[[Archivo: mig.jpg|500px|thumb|centro|Gráfica concentración / espacio-tiempo. Resolución por el método de Euler modificado.]]&lt;br /&gt;
&lt;br /&gt;
== Conservación de la masa total de contaminante ==&lt;br /&gt;
A continuación demostraremos que la masa total de contaminante en el tubo se conserva a lo largo del tiempo, que se puede deducir a partir de la ecuación sin tener que resolverla. Integramos la ecuación y debido a las condiciones de frontera:&lt;br /&gt;
&amp;lt;math&amp;gt;\frac d {dt} \int_0^5 u(x,t)\,dx= \int_0^5 u_{xx}(x,t)\,dx= u_x(x,t)|_0^5=0&amp;lt;/math&amp;gt;&lt;br /&gt;
{{matlab| codigo=&lt;br /&gt;
%Datos&lt;br /&gt;
L=5; %Longitud de varilla&lt;br /&gt;
T=5;&lt;br /&gt;
q=1;&lt;br /&gt;
%Discretización temporal y espacial&lt;br /&gt;
N=500; %Número de subintervalos&lt;br /&gt;
h=L/N;&lt;br /&gt;
x=0:h:L; % Vector de espacio&lt;br /&gt;
dt=h/4; % Paso en tiempo&lt;br /&gt;
t=0:dt:T; % Vector de tiempos&lt;br /&gt;
% Matriz de coeficientes. Aproximacion de -q*u_xx&lt;br /&gt;
K=2*diag(ones(1,N+1))-diag(ones(1,N),1)-diag(ones(1,N),-1);&lt;br /&gt;
K(1,2)=-2;&lt;br /&gt;
K(N+1,N)=-2;&lt;br /&gt;
K=q*K/h^2;&lt;br /&gt;
% Calculamos u0 condición inicial&lt;br /&gt;
u0=[zeros(1,1+N*3/5),3*ones(1,N*2/5)]';&lt;br /&gt;
% F=0 (no la consideramos)&lt;br /&gt;
sol(1,:)=u0'; % Guardamos la solucion&lt;br /&gt;
U=u0; % Inicializacion&lt;br /&gt;
% Calculamos U_n -&amp;gt; U_n+1&lt;br /&gt;
for j=1:length(t)-1 &lt;br /&gt;
U=(eye(N+1)+dt*K)\(U+dt*F); &lt;br /&gt;
sol(j+1,:)= U'; % Guardamos solucion&lt;br /&gt;
end&lt;br /&gt;
% Calculamos el area de la funcion en cada tiempo (area = cantidad de contaminante)&lt;br /&gt;
areas=zeros(1,length(t));&lt;br /&gt;
for i=1:length(t)&lt;br /&gt;
f=sol(i,:);&lt;br /&gt;
w=trapz(x,f);&lt;br /&gt;
area(i)=w;&lt;br /&gt;
end&lt;br /&gt;
%Dibujamos&lt;br /&gt;
plot(t,area)&lt;br /&gt;
xlabel('Tiempo')&lt;br /&gt;
ylabel('Cantidad de contaminante')&lt;br /&gt;
}}&lt;br /&gt;
[[Archivo:aleeex.jpg|500px|thumb|centro|Conservación masa total de contaminante]]&lt;br /&gt;
[[Archivo:gime.jpg|500px|thumb|centro|Conservación masa total de contaminante]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Concentración a lo largo del tiempo==&lt;br /&gt;
La concentración de la sustancia contaminante en la varilla varía con el tiempo, pero en un cierto momento esta concentración se va homogeneizando, y deja de variar, entrando en un estado estacionario::&lt;br /&gt;
&amp;lt;math&amp;gt; u_t(x,t)- D*u_{xx}(x,t)=0 &amp;lt;/math&amp;gt; :    &lt;br /&gt;
&amp;lt;math&amp;gt; u_t(x,t)=0 \rightarrow D*u_{xx}(x,t)=0 &amp;lt;/math&amp;gt; :&lt;br /&gt;
&amp;lt;math&amp;gt; u=c_1*x+c_2 &amp;lt;/math&amp;gt; &lt;br /&gt;
Utizando Matlab comprobaremos que &amp;lt;math&amp;gt; c_1=0 &amp;lt;/math&amp;gt; &amp;lt;math&amp;gt; c_2=1.17 &amp;lt;/math&amp;gt;&lt;br /&gt;
Para tiempos grandes la concentración se estabiliza en torno a 1.17 en toda la varilla, de forma que la solución se asemejará a una función lineal constante.&lt;br /&gt;
&lt;br /&gt;
{{matlab| codigo=&lt;br /&gt;
%Datos&lt;br /&gt;
L=5; %Longitud de varilla&lt;br /&gt;
T=50;&lt;br /&gt;
q=1;&lt;br /&gt;
%Discretización temporal y espacial&lt;br /&gt;
dx=0.1; % Paso en espacio&lt;br /&gt;
N=L/dx; %Número de subintervalos&lt;br /&gt;
h=L/N;&lt;br /&gt;
x=0:h:L; % Vector de espacio&lt;br /&gt;
dt=h/4; % Paso en tiempo&lt;br /&gt;
t=0:dt:T; % Vector de tiempos&lt;br /&gt;
% Matriz de coeficientes. Aproximacion de -q*u_xx&lt;br /&gt;
K=2*diag(ones(1,N+1))-diag(ones(1,N),1)-diag(ones(1,N),-1);&lt;br /&gt;
K(1,2)=-2;&lt;br /&gt;
K(N+1,N)=-2;&lt;br /&gt;
K=q*K/h^2;&lt;br /&gt;
% Calculamos u0 condición inicial&lt;br /&gt;
u0=[zeros(1,1+N*3/5),3*ones(1,N*2/5)]';&lt;br /&gt;
% F=0 (no la consideramos)&lt;br /&gt;
sol(1,:)=u0'; % Guardamos la solucion&lt;br /&gt;
U=u0; % Inicializacion&lt;br /&gt;
% Calculamos U_n -&amp;gt; U_n+1&lt;br /&gt;
%Aplicamos método trapecio método del trapecio&lt;br /&gt;
for j=1:length(t)-1&lt;br /&gt;
U=(eye(N+1)+(dt*K)/2)\((eye(N+1)-(K*dt)/2)*U);&lt;br /&gt;
sol(j+1,:)= U'; % Guardamos solucion&lt;br /&gt;
end&lt;br /&gt;
%Solución estacionaria&lt;br /&gt;
a=sol(length(t),:);&lt;br /&gt;
b=sol(1,:);&lt;br /&gt;
c=sol((length(t)-1)/50+1,:);&lt;br /&gt;
d=sol((length(t)-1)*2/50+1,:);&lt;br /&gt;
e=sol((length(t)-1)*10/50+1,:);&lt;br /&gt;
hold on&lt;br /&gt;
plot(x,a,'xk','linewidth',2);&lt;br /&gt;
plot(x,b,'-m','linewidth',1);&lt;br /&gt;
plot(x,c,'-g','linewidth',1);&lt;br /&gt;
plot(x,d,'-y','linewidth',1);&lt;br /&gt;
plot(x,e,'-b','linewidth',1);&lt;br /&gt;
legend('u(50s)','u(0s)','u(1s)','u(2s)','u(10s)');&lt;br /&gt;
xlabel('Posición en la varilla')&lt;br /&gt;
ylabel('Concentracion')&lt;br /&gt;
hold off&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Soluciones(t).jpg|500px|thumb|centro|Soluciones a lo largo del tiempo]]&lt;br /&gt;
&lt;br /&gt;
La distancia entre la solución estacionaria y las soluciones para los siguientes instantes: 0s, 1s, 2s y 10s; se puede apreciar en la imagen anterior. &lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
Una vez analizado los datos, se demuestra que la sustancia contaminante se estabiliza en t=9.98s, con un error del 5%.&lt;br /&gt;
&lt;br /&gt;
En el caso de que consideremos Δx'=Δx/10,el tiempo en el que se estabiliza la cantidad de sustancia contaminante será t=10s, dato que será más preciso debido a que el paso realizado en el programa es menor.&lt;br /&gt;
&lt;br /&gt;
==Nueva condición de frontera==&lt;br /&gt;
&lt;br /&gt;
Si colocamos un limpiador, que elimina la sustancia contaminante, en el extremo izquierdo de la varilla, varían las condiciones de contorno del problema. En este caso, en el extremo izquierdo, la condición inicial será de tipo Dirichlet ya que se esta variación esta provocada por un mecanismo físico externo que actúa sobre el extremo. &amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;math&amp;gt;\begin{cases}&lt;br /&gt;
u_t(x,t)- D u_{xx}(x,t)= 0 ; x\in (0,5) \\&lt;br /&gt;
u(x,0)=u_0 , x\in (0,5) \\&lt;br /&gt;
u(0,t)=0 , u_x(5,t)=0 ; t\geq 0&lt;br /&gt;
\end{cases}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Dadas las nuevas condiciones, resolvemos el problema por el método de diferencias finitas con la ayuda de Matlab.&lt;br /&gt;
&lt;br /&gt;
{{matlab| codigo=&lt;br /&gt;
%Datos&lt;br /&gt;
L=5; %Longitud de varilla&lt;br /&gt;
T=5; %tiempo final&lt;br /&gt;
q=1;&lt;br /&gt;
%Discretización temporal y espacial&lt;br /&gt;
dx=0.1; % Paso en espacio&lt;br /&gt;
N=L/dx; %Número de subintervalos&lt;br /&gt;
x=0:dx:L;% Vector de espacio&lt;br /&gt;
dt=dx/4; % Paso en tiempo&lt;br /&gt;
t=0:dt:T; % Vector de tiempos&lt;br /&gt;
% Matriz de coeficientes. Aproximacion de -q*u_xx&lt;br /&gt;
K=2*diag(ones(1,N))-diag(ones(1,N-1),1)-diag(ones(1,N-1),-1);&lt;br /&gt;
K(N,N-1)=-2;&lt;br /&gt;
K=q*K/dx^2;&lt;br /&gt;
% Matriz F&lt;br /&gt;
F=zeros(N,1);&lt;br /&gt;
% Calculamos u0 condición inicial&lt;br /&gt;
u0=[zeros(1,N*3/5),3*ones(1,N*2/5)]';&lt;br /&gt;
sol(1,:)=[0,u0']; &lt;br /&gt;
U=u0; % Inicializacion&lt;br /&gt;
% Calculamos U_n -&amp;gt; U_n+1&lt;br /&gt;
%Aplicamos método trapecio método del trapecio&lt;br /&gt;
for j=1:length(t)-1&lt;br /&gt;
U=(eye(N)+(dt*K))\(dt*F+U);&lt;br /&gt;
sol(j+1,:)= [0,U'];&lt;br /&gt;
end&lt;br /&gt;
%Dibujamos la solucion&lt;br /&gt;
[xx,tt]=meshgrid(x,t);&lt;br /&gt;
surf(xx,tt,sol);&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Xata.JPG|500px|thumb|centro|Solución al variar las condiciones de contorno del problema.]]&lt;br /&gt;
&lt;br /&gt;
Observando la gráfica, y por la presencia del limpiador en el extremo de la varilla, para tiempos grandes la cantidad de sustancia contaminante será nula en toda la varilla. En realidad, esto no es del todo cierto puesto que la sustancia no llega a eliminarse completamente, ya que el limpiador solo elimina la sustancia contaminante en el extremo izquierdo. Aunque la concentración en todos los puntos disminuye de manera exponencial, permanece asintótica a 0.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Trapotito.JPG|500px|thumb|centro|Momento en el que se estabiliza con la presencia del limpiador.]]&lt;br /&gt;
&lt;br /&gt;
==Resolución por el método de Fourier==&lt;br /&gt;
&lt;br /&gt;
Las condiciones de frontera del problema son homogéneas, por lo que podemos aplicar este método de cálculo, sin realizar ningún cambio.&lt;br /&gt;
El primer paso es resolver el problema de autovalores asociado:&lt;br /&gt;
&amp;lt;math&amp;gt;\begin{cases}&lt;br /&gt;
y''+λy=0 x \in (0,5) \\&lt;br /&gt;
y'(0)=0 \\&lt;br /&gt;
y'(5)=0&lt;br /&gt;
\end{cases}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
Realizando analíticamente el cálculo, obtenemos los siguientes autovalores y autofunciones:&lt;br /&gt;
&amp;lt;math&amp;gt; λ_k=\frac{k^2π^2}{25}  →  φ_k=sin\frac{kπ}{5} , k=0,1,2,3... &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Calculamos la serie de Fourier en términos de las autofunciones::&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \sum_{k=1}^∞c_k(t)φ_k(x)=0  &amp;lt;/math&amp;gt;&lt;/div&gt;</summary>
		<author><name>Karlo André</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Difusi%C3%B3n_de_una_sustancia_contaminante_(Grupo_10)&amp;diff=12919</id>
		<title>Difusión de una sustancia contaminante (Grupo 10)</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Difusi%C3%B3n_de_una_sustancia_contaminante_(Grupo_10)&amp;diff=12919"/>
				<updated>2014-05-19T17:46:24Z</updated>
		
		<summary type="html">&lt;p&gt;Karlo André: /* Resolución por el método de Fourier */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;''''''Texto en negrita''''''[[Archivo:nuriat.png|200px|thumb|right|Tubo con sustancia contaminante]]&lt;br /&gt;
La difusión implica un movimiento espontáneo y desordenado de moléculas individuales y, especialmente, nos interesa la difusión de moléculas de una sustancia disuelta en otra.&lt;br /&gt;
&lt;br /&gt;
La difusión de una sustancia puede considerarse análoga al flujo de calor, y la ley de Fick establece que el ritmo de difusión por unidad de superficie, en dirección perpendicular a ésta, es proporcional al gradiente de la concentración de esa sustancia en esa dirección. La concentración es la masa de la sustancia por unidad de volumen, y el gradiente de concentración es la variación de concentración por unidad de distancia.&lt;br /&gt;
&lt;br /&gt;
Para determinar como se distribuye la concentración de una sustancia contaminante tomaremos como ejemplo un tubo largo compuesto por dos sustancias de las cuáles una de ellas es contaminante.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
= Simplificación del problema =&lt;br /&gt;
&lt;br /&gt;
Para que este problema resulte más sencillo aplicaremos una serie de condiciones, facilitando el cálculo del mismo.&lt;br /&gt;
&lt;br /&gt;
En primer lugar denotaremos su concentración &amp;lt;math&amp;gt; u &amp;lt;/math&amp;gt;, concentración de contaminante en cada posición del tubo y constante en cada sección, medida en &amp;lt;math&amp;gt; \frac{mol}{m^2*s} &amp;lt;/math&amp;gt;. &lt;br /&gt;
&lt;br /&gt;
Supondremos que el tubo mide L=5 m, ocupando el intervalo &amp;lt;math&amp;gt; x \in (0,L) &amp;lt;/math&amp;gt;, y que la concentración es la misma en cualquier punto de la sección transversal del tubo. Por tanto, la concentración dependerá unicamente de dos variables &amp;lt;math&amp;gt; u = u(x,t) &amp;lt;/math&amp;gt;. En los extremos se ha colocado un aislante que hace que el flujo de contaminante al exterior del tubo sea nulo. Además, consideraremos la simplificación de que se trata de un tubo aislado por sus laterales, pero abierto por las bases del cilindro.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Ley de conservación de masa ==&lt;br /&gt;
&lt;br /&gt;
Tras una serie de experimentos realizados por Lavoisier, se pusieron de manifiesto que si tenemos en cuenta todas las sustancias que forman parte en una reacción química y todos los productos formados, nunca varía la masa. Esta ley exige que no haya una generación espontánea de materia. Es decir, en la región del espacio estudiada, no existe entrada o salida por un punto cualquiera (frontera o interior), la masa en esta región se mantiene constante. Esta es la ley de la conservación de la masa, que podemos enunciarla, pues, de la siguiente manera: &amp;lt;br /&amp;gt;&lt;br /&gt;
''&amp;quot;En toda reacción química la masa se conserva, esto es, la masa total de los reactivos es igual a la masa total de los productos&amp;quot;'' &amp;lt;br /&amp;gt;&lt;br /&gt;
La ley de conservación de masas exige que no haya una generación espontánea de materia. Es decir, en la región del espacio estudiada, no existe entrada o salida por un punto cualquiera (frontera o interior), la masa en esta región se mantiene constante.&lt;br /&gt;
&lt;br /&gt;
Esta suposición, en términos de variación de masa, puede quedar determinada como:&lt;br /&gt;
&lt;br /&gt;
''Variación de la masa en el tiempo = flujo de masa a través de la frontera por unidad de tiempo + flujo de masa generada en el interior por unidad de tiempo. ''&lt;br /&gt;
&lt;br /&gt;
== Ley de Fick ==&lt;br /&gt;
Se trata de una ley cuantitativa en forma diferencial que describe la difusión de materia o energía en un medio en el que inicialmente existe equilibrio químico o físico. Esta ley se trata de una generalización de los fenómenos descritos por la '''Ley de Fourier''', ya que esta es una consideración concreta del calor.&lt;br /&gt;
&lt;br /&gt;
La ley de Fick anuncia que en el caso de existir diferencias de concentración en cualquier especie, el paso de estas especies se llevará a cabo desde las regiones con mayor concentración a las de menor. Formulado matemáticamente:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;F(x,t)=-D\frac{\partial u}{\partial x}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Donde &amp;lt;math&amp;gt;F&amp;lt;/math&amp;gt; es el flujo de la sustancia y &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; el coeficiente de difusión, que representa la facilidad en que un soluto particular se mueve por un disolvente determinado.&lt;br /&gt;
&lt;br /&gt;
La ley de Fick establece que el flujo de difusión del contaminante es proporcional a la variación de concentración:&lt;br /&gt;
&amp;lt;math&amp;gt; F(x,t)=-D\frac{\partial u}{\partial x} &amp;lt;/math&amp;gt;&lt;br /&gt;
donde D es el coeficiente de difusión (medido en &amp;lt;math&amp;gt; \frac{m^2}{s} &amp;lt;/math&amp;gt;), que depende de las propiedades físicas de los compuestos, y que se supone constante D=1.&lt;br /&gt;
&lt;br /&gt;
= Modelización de la ecuación diferencial =&lt;br /&gt;
&lt;br /&gt;
Aplicando el principio de conservación de la masa y la ley de Fourier, definimos la variable &amp;lt;math&amp;gt; u(x,t)&amp;lt;/math&amp;gt; en unidades de sustancia por área, es decir, concentración por superficie del tubo.&lt;br /&gt;
&lt;br /&gt;
Consideramos &amp;lt;math&amp;gt; A &amp;lt;/math&amp;gt; como variable superficie, y tomamos un pequeño trozo, definido por &amp;lt;math&amp;gt;\Delta x&amp;lt;/math&amp;gt;. Entonces, para obtener la variación de la masa en el tiempo:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; A u(x,t) \Delta x &amp;lt;/math&amp;gt; &lt;br /&gt;
&lt;br /&gt;
Y derivando en el tiempo:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; A u_t(x,t) \Delta x &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
obtenemos el primer término de la igualdad anteriormente enunciada.&lt;br /&gt;
&lt;br /&gt;
En el segundo, consideramos nulo el flujo de masa en los puntos interiores por unidad de tiempo, pues suponemos la tubería perfecta y sin sumideros.&lt;br /&gt;
&lt;br /&gt;
Como la superﬁcie lateral del tubo está aislada, solamente habrá flujo de sustancia en la dirección del eje &amp;lt;math&amp;gt;x&amp;lt;/math&amp;gt;. Si &amp;lt;math&amp;gt;F(x,t)&amp;gt; 0&amp;lt;/math&amp;gt; pensamos que el ﬂujo va hacia la derecha, si &amp;lt;math&amp;gt;F(x,t)&amp;lt; 0&amp;lt;/math&amp;gt;, este va a hacia la izquierda. El ﬂujo de&lt;br /&gt;
calor en un intervalo &amp;lt;math&amp;gt;[x, x + ∆x ] &amp;lt;/math&amp;gt; viene dado dado por:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;F(x,t)A-F(x+\Delta x, t)A&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Con lo que queda &amp;lt;math&amp;gt;A u_t(x,t) \Delta x = F(x,t)A-F(x+\Delta x, t)A&amp;lt;/math&amp;gt;, y al dividir &amp;lt;math&amp;gt;A \Delta x&amp;lt;/math&amp;gt;, nos queda &amp;lt;math&amp;gt;u_t(x,t)= \frac {F(x,t)-F(x+\Delta x, t)}{\Delta x}&amp;lt;/math&amp;gt;. &amp;lt;br /&amp;gt;&lt;br /&gt;
Como &amp;lt;math&amp;gt;\Delta x \rightarrow 0 &amp;lt;/math&amp;gt;, &amp;lt;math&amp;gt;u_t(x,t)= -F_x(x,t)&amp;lt;/math&amp;gt;, y aplicando ley de Fick, &amp;lt;math&amp;gt;u_t(x,t)=-\frac{\partial }{\partial x}(-D u_x(x,t)) = D u_xx(x,t) &amp;lt;/math&amp;gt;.&amp;lt;br /&amp;gt;&lt;br /&gt;
Con lo que resulta una ecuación en derivadas parciales que determina la concentración de sustancia:&lt;br /&gt;
&amp;lt;math&amp;gt;u_t(x,t)- D u_xx(x,t)= 0 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Planteamiento del problema bien propuesto ==&lt;br /&gt;
&lt;br /&gt;
Suponemos que el flujo será nula al haber una tapa en los extremos del tubo, con lo que el problema bien propuesto quedaría::&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\begin{cases}&lt;br /&gt;
u_t(x,t)- D u_{xx}(x,t)= 0 ; x\in (0,5) \\&lt;br /&gt;
u(x,0)=u_0 , x\in (0,5) \\&lt;br /&gt;
u_x(0,t)=0 , u_x(5,t)=0 ; t\geq 0&lt;br /&gt;
\end{cases}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= Resolución numérica =&lt;br /&gt;
Para la resolución de ésta ecuación necesitaremos mínimo tres condiciones, dos de las cuales serán de contorno, y la otra será la condición inicial.Si suponemos &amp;lt;math&amp;gt;u_0(x,0)&amp;lt;/math&amp;gt;, entonces:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; u_0(x,0)=\begin{cases}&lt;br /&gt;
0,  si x\leq 3\\&lt;br /&gt;
3,  si x&amp;gt;3&lt;br /&gt;
\end{cases}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Resolución por el método de las diferencias finitas ==&lt;br /&gt;
En el primer caso particular que estudiaremos, trataremos de obtener una resolución numérica del problema anteriormente planteado, dónde tenemos las fronteras aisladas y las concentraciones iniciales conocidas:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\begin{cases}&lt;br /&gt;
u_t(x,t)- D u_{xx}(x,t)= 0; x\in (0,5), t\geq 0 \\&lt;br /&gt;
u_0(x,0), x\in (0,5) \\&lt;br /&gt;
u_x(0,t)=0, u_x(5,t)=0, t\geq 0&lt;br /&gt;
\end{cases}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
La resolución por el método de las diferencias finitas se basa en expresar el problema continuo a un sistema discreto de ecuaciones diferenciales de primer orden. Particularizando para nuestro caso con las condiciones dadas, el problema planteado sería:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\begin{cases}&lt;br /&gt;
u'_n(t)+\frac{-u_{n-1}(t)+2u_n(t)+u_{n+1}(t)}{h^2} \\&lt;br /&gt;
\frac{u_1(t)-u_-1(t)}{2h} \rightarrow u_1(t)=u_-1(t) \\&lt;br /&gt;
\frac{u_{N+1}(t)-u_{N-1}(t)}{2h} \rightarrow u_{N+1}(t)=u_{N-1}\\&lt;br /&gt;
u_n(0)=u^0(x)&lt;br /&gt;
\end{cases}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Por lo que tenemos un sistema de la forma:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\begin{cases}&lt;br /&gt;
U'(t)+KU(t)=F(t)=0\\&lt;br /&gt;
U(0)=U^0&lt;br /&gt;
\end{cases}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Con &amp;lt;math&amp;gt;N+1&amp;lt;/math&amp;gt; ecuaciones.&lt;br /&gt;
==== Resolución por método del trapecio ====&lt;br /&gt;
Suponiendo que en el instante inicial se verifica  :&amp;lt;math&amp;gt;&lt;br /&gt;
u(x,0)=\left\{\begin{matrix}\\0, x≤3\\3, x&amp;gt;3\end{matrix}\right.&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Si tomamos &amp;lt;math&amp;gt;\triangle t= \triangle x/4&amp;lt;/math&amp;gt; en &amp;lt;math&amp;gt;t\in\ [0,5]&amp;lt;/math&amp;gt;, con &amp;lt;math&amp;gt;\triangle x=0.1&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
El código en MATLAB del método sería:&lt;br /&gt;
&lt;br /&gt;
{{matlab| codigo=&lt;br /&gt;
%Datos&lt;br /&gt;
L=5; %Longitud de varilla&lt;br /&gt;
T=5; %tiempo final&lt;br /&gt;
q=1;&lt;br /&gt;
%Discretización temporal y espacial&lt;br /&gt;
dx=0.1; % Paso en espacio&lt;br /&gt;
N=L/dx; %Número de subintervalos&lt;br /&gt;
x=0:dx:L; % Vector de espacio&lt;br /&gt;
dt=dx/4; % Paso en tiempo&lt;br /&gt;
t=0:dt:T; % Vector de tiempos&lt;br /&gt;
% Matriz de coeficientes. Aproximacion de -q*u_xx&lt;br /&gt;
K=2*diag(ones(1,N+1))-diag(ones(1,N),1)-diag(ones(1,N),-1);&lt;br /&gt;
K(1,2)=-2;&lt;br /&gt;
K(N+1,N)=-2;&lt;br /&gt;
K=q*K/dx^2;&lt;br /&gt;
% Calculamos u0 condición inicial&lt;br /&gt;
u0=[zeros(1,1+N*3/5),3*ones(1,N*2/5)]';&lt;br /&gt;
% F=0 (no la consideramos)&lt;br /&gt;
sol(1,:)=u0'; % Guardamos la solucion&lt;br /&gt;
U=u0; % Inicializacion&lt;br /&gt;
% Calculamos U_n -&amp;gt; U_n+1&lt;br /&gt;
%Aplicamos método trapecio método del trapecio&lt;br /&gt;
for j=1:length(t)-1&lt;br /&gt;
U=(eye(N+1)+(dt*K)/2)\((eye(N+1)-(K*dt)/2)*U);&lt;br /&gt;
sol(j+1,:)= U'; % Guardamos solucion&lt;br /&gt;
end&lt;br /&gt;
%Dibujamos la solucion&lt;br /&gt;
[xx,tt]=meshgrid(x,t);&lt;br /&gt;
surf(xx,tt,sol);&lt;br /&gt;
}}&lt;br /&gt;
[[Archivo:nur.jpg|500px|thumb|centro|Gráfica concentración / espacio-tiempo. Resolución por el método del trapecio.]]&lt;br /&gt;
&lt;br /&gt;
==== Resolución por método de Euler explícito ====&lt;br /&gt;
{{matlab| codigo=&lt;br /&gt;
%Datos&lt;br /&gt;
L=5; %Longitud de varilla&lt;br /&gt;
T=5; %tiempo final&lt;br /&gt;
q=1;&lt;br /&gt;
%Discretización temporal y espacial&lt;br /&gt;
dx=0.1; % Paso en espacio&lt;br /&gt;
N=L/dx; %Número de subintervalos&lt;br /&gt;
x=0:dx:L; % Vector de espacio&lt;br /&gt;
dt=dx/20; % Paso en tiempo&lt;br /&gt;
t=0:dt:T; % Vector de tiempos&lt;br /&gt;
% Matriz de coeficientes. Aproximacion de -q*u_xx&lt;br /&gt;
K=2*diag(ones(1,N+1))-diag(ones(1,N),1)-diag(ones(1,N),-1);&lt;br /&gt;
K(1,2)=-2;&lt;br /&gt;
K(N+1,N)=-2;&lt;br /&gt;
K=q*K/dx^2;&lt;br /&gt;
% Calculamos u0 condición inicial&lt;br /&gt;
u0=[zeros(1,1+N*3/5),3*ones(1,N*2/5)]';&lt;br /&gt;
% F=0 (no la consideramos)&lt;br /&gt;
sol(1,:)=u0'; % Guardamos la solucion&lt;br /&gt;
U=u0; % Inicializacion&lt;br /&gt;
% Calculamos U_n -&amp;gt; U_n+1&lt;br /&gt;
%Aplicamos método Euler explícito&lt;br /&gt;
for j=1:length(t)-1 &lt;br /&gt;
k1=-K*U; % Calculamos k1=h*f(tn,yn)&lt;br /&gt;
k2=-K*(U+dt*k1); % Calculamos k2=h*f(tn+h/2,yn+1/2*k1)&lt;br /&gt;
% Meto los datos en el vector&lt;br /&gt;
U=U+(dt/2)*(k1+k2);&lt;br /&gt;
sol(j+1,:)= U'; % Guardamos solucion&lt;br /&gt;
end&lt;br /&gt;
%Dibujamos la solucion&lt;br /&gt;
[xx,tt]=meshgrid(x,t);&lt;br /&gt;
surf(xx,tt,sol);&lt;br /&gt;
}}&lt;br /&gt;
[[Archivo:mig.jpg|500px|thumb|centro|Gráfica concentración / espacio-tiempo. Resolución por el método de Euler explícito.]]&lt;br /&gt;
&lt;br /&gt;
==== Resolución por método de Euler implícito ====&lt;br /&gt;
{{matlab| codigo=&lt;br /&gt;
%Datos&lt;br /&gt;
L=5; %Longitud de varilla&lt;br /&gt;
T=5;&lt;br /&gt;
q=1;&lt;br /&gt;
%Discretización temporal y espacial&lt;br /&gt;
dx=0.1; % Paso en espacio&lt;br /&gt;
N=L/dx; %Número de subintervalos&lt;br /&gt;
h=L/N;&lt;br /&gt;
x=0:h:L; % Vector de espacio&lt;br /&gt;
dt=h/20; % Paso en tiempo&lt;br /&gt;
t=0:dt:T; % Vector de tiempos&lt;br /&gt;
% Matriz de coeficientes. Aproximacion de -q*u_xx&lt;br /&gt;
K=2*diag(ones(1,N+1))-diag(ones(1,N),1)-diag(ones(1,N),-1);&lt;br /&gt;
K(1,2)=-2;&lt;br /&gt;
K(N+1,N)=-2;&lt;br /&gt;
K=q*K/h^2;&lt;br /&gt;
% Calculamos u0 condición inicial&lt;br /&gt;
u0=[zeros(1,1+N*3/5),3*ones(1,N*2/5)]';&lt;br /&gt;
% F=0 (no la consideramos)&lt;br /&gt;
sol(1,:)=u0'; % Guardamos la solucion&lt;br /&gt;
U=u0; % Inicializacion&lt;br /&gt;
% Calculamos U_n -&amp;gt; U_n+1&lt;br /&gt;
% Aplicamos método implícito&lt;br /&gt;
for j=1:length(t)-1 &lt;br /&gt;
U=U-dt*K*U; &lt;br /&gt;
sol(j+1,:)= U'; % Guardamos solucion&lt;br /&gt;
end&lt;br /&gt;
%Dibujamos la solucion&lt;br /&gt;
[xx,tt]=meshgrid(x,t);&lt;br /&gt;
surf(xx,tt,sol);&lt;br /&gt;
}}&lt;br /&gt;
[[Archivo:migap.jpg|500px|thumb|centro|Gráfica concentración / espacio-tiempo. Resolución por el método de Euler implícito.]]&lt;br /&gt;
&lt;br /&gt;
==== Resolución por método de Euler modificado ====&lt;br /&gt;
{{matlab| codigo=&lt;br /&gt;
%Datos&lt;br /&gt;
L=5; %Longitud de varilla&lt;br /&gt;
T=5;&lt;br /&gt;
q=1;&lt;br /&gt;
%Discretización temporal y espacial&lt;br /&gt;
dx=0.1; % Paso en espacio&lt;br /&gt;
N=L/dx; %Número de subintervalos&lt;br /&gt;
h=L/N;&lt;br /&gt;
x=0:h:L; % Vector de espacio&lt;br /&gt;
dt=h/20; % Paso en tiempo&lt;br /&gt;
t=0:dt:T; % Vector de tiempos&lt;br /&gt;
% Matriz de coeficientes. Aproximacion de -q*u_xx&lt;br /&gt;
K=2*diag(ones(1,N+1))-diag(ones(1,N),1)-diag(ones(1,N),-1);&lt;br /&gt;
K(1,2)=-2;&lt;br /&gt;
K(N+1,N)=-2;&lt;br /&gt;
K=q*K/h^2;&lt;br /&gt;
% Calculamos u0 condición inicial&lt;br /&gt;
u0=[zeros(1,1+N*3/5),3*ones(1,N*2/5)]';&lt;br /&gt;
% F=0 (no la consideramos)&lt;br /&gt;
sol(1,:)=u0'; % Guardamos la solucion&lt;br /&gt;
U=u0; % Inicializacion&lt;br /&gt;
% Calculamos U_n -&amp;gt; U_n+1&lt;br /&gt;
for j=1:length(t)-1 &lt;br /&gt;
k1=-K*U; % Calculamos k1=h*f(tn,yn)&lt;br /&gt;
k2=-K*(U+dt*k1); % Calculamos k2=h*f(tn+h/2,yn+1/2*k1)&lt;br /&gt;
% Meto los datos en el vector&lt;br /&gt;
U=U+(dt/2)*(k1+k2);&lt;br /&gt;
sol(j+1,:)= U'; % Guardamos solucion&lt;br /&gt;
end&lt;br /&gt;
%Dibujamos la solucion&lt;br /&gt;
[xx,tt]=meshgrid(x,t);&lt;br /&gt;
surf(xx,tt,sol);&lt;br /&gt;
}}&lt;br /&gt;
[[Archivo: mig.jpg|500px|thumb|centro|Gráfica concentración / espacio-tiempo. Resolución por el método de Euler modificado.]]&lt;br /&gt;
&lt;br /&gt;
== Conservación de la masa total de contaminante ==&lt;br /&gt;
A continuación demostraremos que la masa total de contaminante en el tubo se conserva a lo largo del tiempo, que se puede deducir a partir de la ecuación sin tener que resolverla. Integramos la ecuación y debido a las condiciones de frontera:&lt;br /&gt;
&amp;lt;math&amp;gt;\frac d {dt} \int_0^5 u(x,t)\,dx= \int_0^5 u_{xx}(x,t)\,dx= u_x(x,t)|_0^5=0&amp;lt;/math&amp;gt;&lt;br /&gt;
{{matlab| codigo=&lt;br /&gt;
%Datos&lt;br /&gt;
L=5; %Longitud de varilla&lt;br /&gt;
T=5;&lt;br /&gt;
q=1;&lt;br /&gt;
%Discretización temporal y espacial&lt;br /&gt;
N=500; %Número de subintervalos&lt;br /&gt;
h=L/N;&lt;br /&gt;
x=0:h:L; % Vector de espacio&lt;br /&gt;
dt=h/4; % Paso en tiempo&lt;br /&gt;
t=0:dt:T; % Vector de tiempos&lt;br /&gt;
% Matriz de coeficientes. Aproximacion de -q*u_xx&lt;br /&gt;
K=2*diag(ones(1,N+1))-diag(ones(1,N),1)-diag(ones(1,N),-1);&lt;br /&gt;
K(1,2)=-2;&lt;br /&gt;
K(N+1,N)=-2;&lt;br /&gt;
K=q*K/h^2;&lt;br /&gt;
% Calculamos u0 condición inicial&lt;br /&gt;
u0=[zeros(1,1+N*3/5),3*ones(1,N*2/5)]';&lt;br /&gt;
% F=0 (no la consideramos)&lt;br /&gt;
sol(1,:)=u0'; % Guardamos la solucion&lt;br /&gt;
U=u0; % Inicializacion&lt;br /&gt;
% Calculamos U_n -&amp;gt; U_n+1&lt;br /&gt;
for j=1:length(t)-1 &lt;br /&gt;
U=(eye(N+1)+dt*K)\(U+dt*F); &lt;br /&gt;
sol(j+1,:)= U'; % Guardamos solucion&lt;br /&gt;
end&lt;br /&gt;
% Calculamos el area de la funcion en cada tiempo (area = cantidad de contaminante)&lt;br /&gt;
areas=zeros(1,length(t));&lt;br /&gt;
for i=1:length(t)&lt;br /&gt;
f=sol(i,:);&lt;br /&gt;
w=trapz(x,f);&lt;br /&gt;
area(i)=w;&lt;br /&gt;
end&lt;br /&gt;
%Dibujamos&lt;br /&gt;
plot(t,area)&lt;br /&gt;
xlabel('Tiempo')&lt;br /&gt;
ylabel('Cantidad de contaminante')&lt;br /&gt;
}}&lt;br /&gt;
[[Archivo:aleeex.jpg|500px|thumb|centro|Conservación masa total de contaminante]]&lt;br /&gt;
[[Archivo:gime.jpg|500px|thumb|centro|Conservación masa total de contaminante]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Concentración a lo largo del tiempo==&lt;br /&gt;
La concentración de la sustancia contaminante en la varilla varía con el tiempo, pero en un cierto momento esta concentración se va homogeneizando, y deja de variar, entrando en un estado estacionario::&lt;br /&gt;
&amp;lt;math&amp;gt; u_t(x,t)- D*u_{xx}(x,t)=0 &amp;lt;/math&amp;gt; :    &lt;br /&gt;
&amp;lt;math&amp;gt; u_t(x,t)=0 \rightarrow D*u_{xx}(x,t)=0 &amp;lt;/math&amp;gt; :&lt;br /&gt;
&amp;lt;math&amp;gt; u=c_1*x+c_2 &amp;lt;/math&amp;gt; &lt;br /&gt;
Utizando Matlab comprobaremos que &amp;lt;math&amp;gt; c_1=0 &amp;lt;/math&amp;gt; &amp;lt;math&amp;gt; c_2=1.17 &amp;lt;/math&amp;gt;&lt;br /&gt;
Para tiempos grandes la concentración se estabiliza en torno a 1.17 en toda la varilla, de forma que la solución se asemejará a una función lineal constante.&lt;br /&gt;
&lt;br /&gt;
{{matlab| codigo=&lt;br /&gt;
%Datos&lt;br /&gt;
L=5; %Longitud de varilla&lt;br /&gt;
T=50;&lt;br /&gt;
q=1;&lt;br /&gt;
%Discretización temporal y espacial&lt;br /&gt;
dx=0.1; % Paso en espacio&lt;br /&gt;
N=L/dx; %Número de subintervalos&lt;br /&gt;
h=L/N;&lt;br /&gt;
x=0:h:L; % Vector de espacio&lt;br /&gt;
dt=h/4; % Paso en tiempo&lt;br /&gt;
t=0:dt:T; % Vector de tiempos&lt;br /&gt;
% Matriz de coeficientes. Aproximacion de -q*u_xx&lt;br /&gt;
K=2*diag(ones(1,N+1))-diag(ones(1,N),1)-diag(ones(1,N),-1);&lt;br /&gt;
K(1,2)=-2;&lt;br /&gt;
K(N+1,N)=-2;&lt;br /&gt;
K=q*K/h^2;&lt;br /&gt;
% Calculamos u0 condición inicial&lt;br /&gt;
u0=[zeros(1,1+N*3/5),3*ones(1,N*2/5)]';&lt;br /&gt;
% F=0 (no la consideramos)&lt;br /&gt;
sol(1,:)=u0'; % Guardamos la solucion&lt;br /&gt;
U=u0; % Inicializacion&lt;br /&gt;
% Calculamos U_n -&amp;gt; U_n+1&lt;br /&gt;
%Aplicamos método trapecio método del trapecio&lt;br /&gt;
for j=1:length(t)-1&lt;br /&gt;
U=(eye(N+1)+(dt*K)/2)\((eye(N+1)-(K*dt)/2)*U);&lt;br /&gt;
sol(j+1,:)= U'; % Guardamos solucion&lt;br /&gt;
end&lt;br /&gt;
%Solución estacionaria&lt;br /&gt;
a=sol(length(t),:);&lt;br /&gt;
b=sol(1,:);&lt;br /&gt;
c=sol((length(t)-1)/50+1,:);&lt;br /&gt;
d=sol((length(t)-1)*2/50+1,:);&lt;br /&gt;
e=sol((length(t)-1)*10/50+1,:);&lt;br /&gt;
hold on&lt;br /&gt;
plot(x,a,'xk','linewidth',2);&lt;br /&gt;
plot(x,b,'-m','linewidth',1);&lt;br /&gt;
plot(x,c,'-g','linewidth',1);&lt;br /&gt;
plot(x,d,'-y','linewidth',1);&lt;br /&gt;
plot(x,e,'-b','linewidth',1);&lt;br /&gt;
legend('u(50s)','u(0s)','u(1s)','u(2s)','u(10s)');&lt;br /&gt;
xlabel('Posición en la varilla')&lt;br /&gt;
ylabel('Concentracion')&lt;br /&gt;
hold off&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Soluciones(t).jpg|500px|thumb|centro|Soluciones a lo largo del tiempo]]&lt;br /&gt;
&lt;br /&gt;
La distancia entre la solución estacionaria y las soluciones para los siguientes instantes: 0s, 1s, 2s y 10s; se puede apreciar en la imagen anterior. &lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
Una vez analizado los datos, se demuestra que la sustancia contaminante se estabiliza en t=9.98s, con un error del 5%.&lt;br /&gt;
&lt;br /&gt;
En el caso de que consideremos Δx'=Δx/10,el tiempo en el que se estabiliza la cantidad de sustancia contaminante será t=10s, dato que será más preciso debido a que el paso realizado en el programa es menor.&lt;br /&gt;
&lt;br /&gt;
==Nueva condición de frontera==&lt;br /&gt;
&lt;br /&gt;
Si colocamos un limpiador, que elimina la sustancia contaminante, en el extremo izquierdo de la varilla, varían las condiciones de contorno del problema. En este caso, en el extremo izquierdo, la condición inicial será de tipo Dirichlet ya que se esta variación esta provocada por un mecanismo físico externo que actúa sobre el extremo. &amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;math&amp;gt;\begin{cases}&lt;br /&gt;
u_t(x,t)- D u_{xx}(x,t)= 0 ; x\in (0,5) \\&lt;br /&gt;
u(x,0)=u_0 , x\in (0,5) \\&lt;br /&gt;
u(0,t)=0 , u_x(5,t)=0 ; t\geq 0&lt;br /&gt;
\end{cases}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Dadas las nuevas condiciones, resolvemos el problema por el método de diferencias finitas con la ayuda de Matlab.&lt;br /&gt;
&lt;br /&gt;
{{matlab| codigo=&lt;br /&gt;
%Datos&lt;br /&gt;
L=5; %Longitud de varilla&lt;br /&gt;
T=5; %tiempo final&lt;br /&gt;
q=1;&lt;br /&gt;
%Discretización temporal y espacial&lt;br /&gt;
dx=0.1; % Paso en espacio&lt;br /&gt;
N=L/dx; %Número de subintervalos&lt;br /&gt;
x=0:dx:L;% Vector de espacio&lt;br /&gt;
dt=dx/4; % Paso en tiempo&lt;br /&gt;
t=0:dt:T; % Vector de tiempos&lt;br /&gt;
% Matriz de coeficientes. Aproximacion de -q*u_xx&lt;br /&gt;
K=2*diag(ones(1,N))-diag(ones(1,N-1),1)-diag(ones(1,N-1),-1);&lt;br /&gt;
K(N,N-1)=-2;&lt;br /&gt;
K=q*K/dx^2;&lt;br /&gt;
% Matriz F&lt;br /&gt;
F=zeros(N,1);&lt;br /&gt;
% Calculamos u0 condición inicial&lt;br /&gt;
u0=[zeros(1,N*3/5),3*ones(1,N*2/5)]';&lt;br /&gt;
sol(1,:)=[0,u0']; &lt;br /&gt;
U=u0; % Inicializacion&lt;br /&gt;
% Calculamos U_n -&amp;gt; U_n+1&lt;br /&gt;
%Aplicamos método trapecio método del trapecio&lt;br /&gt;
for j=1:length(t)-1&lt;br /&gt;
U=(eye(N)+(dt*K))\(dt*F+U);&lt;br /&gt;
sol(j+1,:)= [0,U'];&lt;br /&gt;
end&lt;br /&gt;
%Dibujamos la solucion&lt;br /&gt;
[xx,tt]=meshgrid(x,t);&lt;br /&gt;
surf(xx,tt,sol);&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Xata.JPG|500px|thumb|centro|Solución al variar las condiciones de contorno del problema.]]&lt;br /&gt;
&lt;br /&gt;
Observando la gráfica, y por la presencia del limpiador en el extremo de la varilla, para tiempos grandes la cantidad de sustancia contaminante será nula en toda la varilla. En realidad, esto no es del todo cierto puesto que la sustancia no llega a eliminarse completamente, ya que el limpiador solo elimina la sustancia contaminante en el extremo izquierdo. Aunque la concentración en todos los puntos disminuye de manera exponencial, permanece asintótica a 0.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Trapotito.JPG|500px|thumb|centro|Momento en el que se estabiliza con la presencia del limpiador.]]&lt;br /&gt;
&lt;br /&gt;
==Resolución por el método de Fourier==&lt;br /&gt;
&lt;br /&gt;
Las condiciones de frontera del problema son homogéneas, por lo que podemos aplicar este método de cálculo, sin realizar ningún cambio.&lt;br /&gt;
El primer paso es resolver el problema de autovalores asociado:&lt;br /&gt;
&amp;lt;math&amp;gt;\begin{cases}&lt;br /&gt;
y''+λy=0 x \in (0,5) \\&lt;br /&gt;
y'(0)=0 \\&lt;br /&gt;
y'(5)=0&lt;br /&gt;
\end{cases}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
Realizando analíticamente el cálculo, obtenemos los siguientes autovalores y autofunciones:&lt;br /&gt;
&amp;lt;math&amp;gt; λ_k=\frac{k^2π^2}{25}  →  φ_k=sin\frac{kπ}{5} , k=0,1,2,3... &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Calculamos la serie de Fourier en términos de las autofunciones::&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \sum_{k=1}^∞c_kφ_k=0  &amp;lt;/math&amp;gt;&lt;/div&gt;</summary>
		<author><name>Karlo André</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Difusi%C3%B3n_de_una_sustancia_contaminante_(Grupo_10)&amp;diff=12912</id>
		<title>Difusión de una sustancia contaminante (Grupo 10)</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Difusi%C3%B3n_de_una_sustancia_contaminante_(Grupo_10)&amp;diff=12912"/>
				<updated>2014-05-19T17:24:19Z</updated>
		
		<summary type="html">&lt;p&gt;Karlo André: /* Resolución por el método de Fourier */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;''''''Texto en negrita''''''[[Archivo:nuriat.png|200px|thumb|right|Tubo con sustancia contaminante]]&lt;br /&gt;
La difusión implica un movimiento espontáneo y desordenado de moléculas individuales y, especialmente, nos interesa la difusión de moléculas de una sustancia disuelta en otra.&lt;br /&gt;
&lt;br /&gt;
La difusión de una sustancia puede considerarse análoga al flujo de calor, y la ley de Fick establece que el ritmo de difusión por unidad de superficie, en dirección perpendicular a ésta, es proporcional al gradiente de la concentración de esa sustancia en esa dirección. La concentración es la masa de la sustancia por unidad de volumen, y el gradiente de concentración es la variación de concentración por unidad de distancia.&lt;br /&gt;
&lt;br /&gt;
Para determinar como se distribuye la concentración de una sustancia contaminante tomaremos como ejemplo un tubo largo compuesto por dos sustancias de las cuáles una de ellas es contaminante.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
= Simplificación del problema =&lt;br /&gt;
&lt;br /&gt;
Para que este problema resulte más sencillo aplicaremos una serie de condiciones, facilitando el cálculo del mismo.&lt;br /&gt;
&lt;br /&gt;
En primer lugar denotaremos su concentración &amp;lt;math&amp;gt; u &amp;lt;/math&amp;gt;, concentración de contaminante en cada posición del tubo y constante en cada sección, medida en &amp;lt;math&amp;gt; \frac{mol}{m^2*s} &amp;lt;/math&amp;gt;. &lt;br /&gt;
&lt;br /&gt;
Supondremos que el tubo mide L=5 m, ocupando el intervalo &amp;lt;math&amp;gt; x \in (0,L) &amp;lt;/math&amp;gt;, y que la concentración es la misma en cualquier punto de la sección transversal del tubo. Por tanto, la concentración dependerá unicamente de dos variables &amp;lt;math&amp;gt; u = u(x,t) &amp;lt;/math&amp;gt;. En los extremos se ha colocado un aislante que hace que el flujo de contaminante al exterior del tubo sea nulo. Además, consideraremos la simplificación de que se trata de un tubo aislado por sus laterales, pero abierto por las bases del cilindro.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Ley de conservación de masa ==&lt;br /&gt;
&lt;br /&gt;
Tras una serie de experimentos realizados por Lavoisier, se pusieron de manifiesto que si tenemos en cuenta todas las sustancias que forman parte en una reacción química y todos los productos formados, nunca varía la masa. Esta ley exige que no haya una generación espontánea de materia. Es decir, en la región del espacio estudiada, no existe entrada o salida por un punto cualquiera (frontera o interior), la masa en esta región se mantiene constante. Esta es la ley de la conservación de la masa, que podemos enunciarla, pues, de la siguiente manera: &amp;lt;br /&amp;gt;&lt;br /&gt;
''&amp;quot;En toda reacción química la masa se conserva, esto es, la masa total de los reactivos es igual a la masa total de los productos&amp;quot;'' &amp;lt;br /&amp;gt;&lt;br /&gt;
La ley de conservación de masas exige que no haya una generación espontánea de materia. Es decir, en la región del espacio estudiada, no existe entrada o salida por un punto cualquiera (frontera o interior), la masa en esta región se mantiene constante.&lt;br /&gt;
&lt;br /&gt;
Esta suposición, en términos de variación de masa, puede quedar determinada como:&lt;br /&gt;
&lt;br /&gt;
''Variación de la masa en el tiempo = flujo de masa a través de la frontera por unidad de tiempo + flujo de masa generada en el interior por unidad de tiempo. ''&lt;br /&gt;
&lt;br /&gt;
== Ley de Fick ==&lt;br /&gt;
Se trata de una ley cuantitativa en forma diferencial que describe la difusión de materia o energía en un medio en el que inicialmente existe equilibrio químico o físico. Esta ley se trata de una generalización de los fenómenos descritos por la '''Ley de Fourier''', ya que esta es una consideración concreta del calor.&lt;br /&gt;
&lt;br /&gt;
La ley de Fick anuncia que en el caso de existir diferencias de concentración en cualquier especie, el paso de estas especies se llevará a cabo desde las regiones con mayor concentración a las de menor. Formulado matemáticamente:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;F(x,t)=-D\frac{\partial u}{\partial x}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Donde &amp;lt;math&amp;gt;F&amp;lt;/math&amp;gt; es el flujo de la sustancia y &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; el coeficiente de difusión, que representa la facilidad en que un soluto particular se mueve por un disolvente determinado.&lt;br /&gt;
&lt;br /&gt;
La ley de Fick establece que el flujo de difusión del contaminante es proporcional a la variación de concentración:&lt;br /&gt;
&amp;lt;math&amp;gt; F(x,t)=-D\frac{\partial u}{\partial x} &amp;lt;/math&amp;gt;&lt;br /&gt;
donde D es el coeficiente de difusión (medido en &amp;lt;math&amp;gt; \frac{m^2}{s} &amp;lt;/math&amp;gt;), que depende de las propiedades físicas de los compuestos, y que se supone constante D=1.&lt;br /&gt;
&lt;br /&gt;
= Modelización de la ecuación diferencial =&lt;br /&gt;
&lt;br /&gt;
Aplicando el principio de conservación de la masa y la ley de Fourier, definimos la variable &amp;lt;math&amp;gt; u(x,t)&amp;lt;/math&amp;gt; en unidades de sustancia por área, es decir, concentración por superficie del tubo.&lt;br /&gt;
&lt;br /&gt;
Consideramos &amp;lt;math&amp;gt; A &amp;lt;/math&amp;gt; como variable superficie, y tomamos un pequeño trozo, definido por &amp;lt;math&amp;gt;\Delta x&amp;lt;/math&amp;gt;. Entonces, para obtener la variación de la masa en el tiempo:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; A u(x,t) \Delta x &amp;lt;/math&amp;gt; &lt;br /&gt;
&lt;br /&gt;
Y derivando en el tiempo:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; A u_t(x,t) \Delta x &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
obtenemos el primer término de la igualdad anteriormente enunciada.&lt;br /&gt;
&lt;br /&gt;
En el segundo, consideramos nulo el flujo de masa en los puntos interiores por unidad de tiempo, pues suponemos la tubería perfecta y sin sumideros.&lt;br /&gt;
&lt;br /&gt;
Como la superﬁcie lateral del tubo está aislada, solamente habrá flujo de sustancia en la dirección del eje &amp;lt;math&amp;gt;x&amp;lt;/math&amp;gt;. Si &amp;lt;math&amp;gt;F(x,t)&amp;gt; 0&amp;lt;/math&amp;gt; pensamos que el ﬂujo va hacia la derecha, si &amp;lt;math&amp;gt;F(x,t)&amp;lt; 0&amp;lt;/math&amp;gt;, este va a hacia la izquierda. El ﬂujo de&lt;br /&gt;
calor en un intervalo &amp;lt;math&amp;gt;[x, x + ∆x ] &amp;lt;/math&amp;gt; viene dado dado por:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;F(x,t)A-F(x+\Delta x, t)A&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Con lo que queda &amp;lt;math&amp;gt;A u_t(x,t) \Delta x = F(x,t)A-F(x+\Delta x, t)A&amp;lt;/math&amp;gt;, y al dividir &amp;lt;math&amp;gt;A \Delta x&amp;lt;/math&amp;gt;, nos queda &amp;lt;math&amp;gt;u_t(x,t)= \frac {F(x,t)-F(x+\Delta x, t)}{\Delta x}&amp;lt;/math&amp;gt;. &amp;lt;br /&amp;gt;&lt;br /&gt;
Como &amp;lt;math&amp;gt;\Delta x \rightarrow 0 &amp;lt;/math&amp;gt;, &amp;lt;math&amp;gt;u_t(x,t)= -F_x(x,t)&amp;lt;/math&amp;gt;, y aplicando ley de Fick, &amp;lt;math&amp;gt;u_t(x,t)=-\frac{\partial }{\partial x}(-D u_x(x,t)) = D u_xx(x,t) &amp;lt;/math&amp;gt;.&amp;lt;br /&amp;gt;&lt;br /&gt;
Con lo que resulta una ecuación en derivadas parciales que determina la concentración de sustancia:&lt;br /&gt;
&amp;lt;math&amp;gt;u_t(x,t)- D u_xx(x,t)= 0 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Planteamiento del problema bien propuesto ==&lt;br /&gt;
&lt;br /&gt;
Suponemos que el flujo será nula al haber una tapa en los extremos del tubo, con lo que el problema bien propuesto quedaría::&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\begin{cases}&lt;br /&gt;
u_t(x,t)- D u_{xx}(x,t)= 0 ; x\in (0,5) \\&lt;br /&gt;
u(x,0)=u_0 , x\in (0,5) \\&lt;br /&gt;
u_x(0,t)=0 , u_x(5,t)=0 ; t\geq 0&lt;br /&gt;
\end{cases}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= Resolución numérica =&lt;br /&gt;
Para la resolución de ésta ecuación necesitaremos mínimo tres condiciones, dos de las cuales serán de contorno, y la otra será la condición inicial.Si suponemos &amp;lt;math&amp;gt;u_0(x,0)&amp;lt;/math&amp;gt;, entonces:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; u_0(x,0)=\begin{cases}&lt;br /&gt;
0,  si x\leq 3\\&lt;br /&gt;
3,  si x&amp;gt;3&lt;br /&gt;
\end{cases}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Resolución por el método de las diferencias finitas ==&lt;br /&gt;
En el primer caso particular que estudiaremos, trataremos de obtener una resolución numérica del problema anteriormente planteado, dónde tenemos las fronteras aisladas y las concentraciones iniciales conocidas:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\begin{cases}&lt;br /&gt;
u_t(x,t)- D u_{xx}(x,t)= 0; x\in (0,5), t\geq 0 \\&lt;br /&gt;
u_0(x,0), x\in (0,5) \\&lt;br /&gt;
u_x(0,t)=0, u_x(5,t)=0, t\geq 0&lt;br /&gt;
\end{cases}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
La resolución por el método de las diferencias finitas se basa en expresar el problema continuo a un sistema discreto de ecuaciones diferenciales de primer orden. Particularizando para nuestro caso con las condiciones dadas, el problema planteado sería:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\begin{cases}&lt;br /&gt;
u'_n(t)+\frac{-u_{n-1}(t)+2u_n(t)+u_{n+1}(t)}{h^2} \\&lt;br /&gt;
\frac{u_1(t)-u_-1(t)}{2h} \rightarrow u_1(t)=u_-1(t) \\&lt;br /&gt;
\frac{u_{N+1}(t)-u_{N-1}(t)}{2h} \rightarrow u_{N+1}(t)=u_{N-1}\\&lt;br /&gt;
u_n(0)=u^0(x)&lt;br /&gt;
\end{cases}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Por lo que tenemos un sistema de la forma:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\begin{cases}&lt;br /&gt;
U'(t)+KU(t)=F(t)=0\\&lt;br /&gt;
U(0)=U^0&lt;br /&gt;
\end{cases}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Con &amp;lt;math&amp;gt;N+1&amp;lt;/math&amp;gt; ecuaciones.&lt;br /&gt;
==== Resolución por método del trapecio ====&lt;br /&gt;
Suponiendo que en el instante inicial se verifica  :&amp;lt;math&amp;gt;&lt;br /&gt;
u(x,0)=\left\{\begin{matrix}\\0, x≤3\\3, x&amp;gt;3\end{matrix}\right.&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Si tomamos &amp;lt;math&amp;gt;\triangle t= \triangle x/4&amp;lt;/math&amp;gt; en &amp;lt;math&amp;gt;t\in\ [0,5]&amp;lt;/math&amp;gt;, con &amp;lt;math&amp;gt;\triangle x=0.1&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
El código en MATLAB del método sería:&lt;br /&gt;
&lt;br /&gt;
{{matlab| codigo=&lt;br /&gt;
%Datos&lt;br /&gt;
L=5; %Longitud de varilla&lt;br /&gt;
T=5; %tiempo final&lt;br /&gt;
q=1;&lt;br /&gt;
%Discretización temporal y espacial&lt;br /&gt;
dx=0.1; % Paso en espacio&lt;br /&gt;
N=L/dx; %Número de subintervalos&lt;br /&gt;
x=0:dx:L; % Vector de espacio&lt;br /&gt;
dt=dx/4; % Paso en tiempo&lt;br /&gt;
t=0:dt:T; % Vector de tiempos&lt;br /&gt;
% Matriz de coeficientes. Aproximacion de -q*u_xx&lt;br /&gt;
K=2*diag(ones(1,N+1))-diag(ones(1,N),1)-diag(ones(1,N),-1);&lt;br /&gt;
K(1,2)=-2;&lt;br /&gt;
K(N+1,N)=-2;&lt;br /&gt;
K=q*K/dx^2;&lt;br /&gt;
% Calculamos u0 condición inicial&lt;br /&gt;
u0=[zeros(1,1+N*3/5),3*ones(1,N*2/5)]';&lt;br /&gt;
% F=0 (no la consideramos)&lt;br /&gt;
sol(1,:)=u0'; % Guardamos la solucion&lt;br /&gt;
U=u0; % Inicializacion&lt;br /&gt;
% Calculamos U_n -&amp;gt; U_n+1&lt;br /&gt;
%Aplicamos método trapecio método del trapecio&lt;br /&gt;
for j=1:length(t)-1&lt;br /&gt;
U=(eye(N+1)+(dt*K)/2)\((eye(N+1)-(K*dt)/2)*U);&lt;br /&gt;
sol(j+1,:)= U'; % Guardamos solucion&lt;br /&gt;
end&lt;br /&gt;
%Dibujamos la solucion&lt;br /&gt;
[xx,tt]=meshgrid(x,t);&lt;br /&gt;
surf(xx,tt,sol);&lt;br /&gt;
}}&lt;br /&gt;
[[Archivo:nur.jpg|500px|thumb|centro|Gráfica concentración / espacio-tiempo. Resolución por el método del trapecio.]]&lt;br /&gt;
&lt;br /&gt;
==== Resolución por método de Euler explícito ====&lt;br /&gt;
{{matlab| codigo=&lt;br /&gt;
%Datos&lt;br /&gt;
L=5; %Longitud de varilla&lt;br /&gt;
T=5; %tiempo final&lt;br /&gt;
q=1;&lt;br /&gt;
%Discretización temporal y espacial&lt;br /&gt;
dx=0.1; % Paso en espacio&lt;br /&gt;
N=L/dx; %Número de subintervalos&lt;br /&gt;
x=0:dx:L; % Vector de espacio&lt;br /&gt;
dt=dx/20; % Paso en tiempo&lt;br /&gt;
t=0:dt:T; % Vector de tiempos&lt;br /&gt;
% Matriz de coeficientes. Aproximacion de -q*u_xx&lt;br /&gt;
K=2*diag(ones(1,N+1))-diag(ones(1,N),1)-diag(ones(1,N),-1);&lt;br /&gt;
K(1,2)=-2;&lt;br /&gt;
K(N+1,N)=-2;&lt;br /&gt;
K=q*K/dx^2;&lt;br /&gt;
% Calculamos u0 condición inicial&lt;br /&gt;
u0=[zeros(1,1+N*3/5),3*ones(1,N*2/5)]';&lt;br /&gt;
% F=0 (no la consideramos)&lt;br /&gt;
sol(1,:)=u0'; % Guardamos la solucion&lt;br /&gt;
U=u0; % Inicializacion&lt;br /&gt;
% Calculamos U_n -&amp;gt; U_n+1&lt;br /&gt;
%Aplicamos método Euler explícito&lt;br /&gt;
for j=1:length(t)-1 &lt;br /&gt;
k1=-K*U; % Calculamos k1=h*f(tn,yn)&lt;br /&gt;
k2=-K*(U+dt*k1); % Calculamos k2=h*f(tn+h/2,yn+1/2*k1)&lt;br /&gt;
% Meto los datos en el vector&lt;br /&gt;
U=U+(dt/2)*(k1+k2);&lt;br /&gt;
sol(j+1,:)= U'; % Guardamos solucion&lt;br /&gt;
end&lt;br /&gt;
%Dibujamos la solucion&lt;br /&gt;
[xx,tt]=meshgrid(x,t);&lt;br /&gt;
surf(xx,tt,sol);&lt;br /&gt;
}}&lt;br /&gt;
[[Archivo:mig.jpg|500px|thumb|centro|Gráfica concentración / espacio-tiempo. Resolución por el método de Euler explícito.]]&lt;br /&gt;
&lt;br /&gt;
==== Resolución por método de Euler implícito ====&lt;br /&gt;
{{matlab| codigo=&lt;br /&gt;
%Datos&lt;br /&gt;
L=5; %Longitud de varilla&lt;br /&gt;
T=5;&lt;br /&gt;
q=1;&lt;br /&gt;
%Discretización temporal y espacial&lt;br /&gt;
dx=0.1; % Paso en espacio&lt;br /&gt;
N=L/dx; %Número de subintervalos&lt;br /&gt;
h=L/N;&lt;br /&gt;
x=0:h:L; % Vector de espacio&lt;br /&gt;
dt=h/20; % Paso en tiempo&lt;br /&gt;
t=0:dt:T; % Vector de tiempos&lt;br /&gt;
% Matriz de coeficientes. Aproximacion de -q*u_xx&lt;br /&gt;
K=2*diag(ones(1,N+1))-diag(ones(1,N),1)-diag(ones(1,N),-1);&lt;br /&gt;
K(1,2)=-2;&lt;br /&gt;
K(N+1,N)=-2;&lt;br /&gt;
K=q*K/h^2;&lt;br /&gt;
% Calculamos u0 condición inicial&lt;br /&gt;
u0=[zeros(1,1+N*3/5),3*ones(1,N*2/5)]';&lt;br /&gt;
% F=0 (no la consideramos)&lt;br /&gt;
sol(1,:)=u0'; % Guardamos la solucion&lt;br /&gt;
U=u0; % Inicializacion&lt;br /&gt;
% Calculamos U_n -&amp;gt; U_n+1&lt;br /&gt;
% Aplicamos método implícito&lt;br /&gt;
for j=1:length(t)-1 &lt;br /&gt;
U=U-dt*K*U; &lt;br /&gt;
sol(j+1,:)= U'; % Guardamos solucion&lt;br /&gt;
end&lt;br /&gt;
%Dibujamos la solucion&lt;br /&gt;
[xx,tt]=meshgrid(x,t);&lt;br /&gt;
surf(xx,tt,sol);&lt;br /&gt;
}}&lt;br /&gt;
[[Archivo:migap.jpg|500px|thumb|centro|Gráfica concentración / espacio-tiempo. Resolución por el método de Euler implícito.]]&lt;br /&gt;
&lt;br /&gt;
==== Resolución por método de Euler modificado ====&lt;br /&gt;
{{matlab| codigo=&lt;br /&gt;
%Datos&lt;br /&gt;
L=5; %Longitud de varilla&lt;br /&gt;
T=5;&lt;br /&gt;
q=1;&lt;br /&gt;
%Discretización temporal y espacial&lt;br /&gt;
dx=0.1; % Paso en espacio&lt;br /&gt;
N=L/dx; %Número de subintervalos&lt;br /&gt;
h=L/N;&lt;br /&gt;
x=0:h:L; % Vector de espacio&lt;br /&gt;
dt=h/20; % Paso en tiempo&lt;br /&gt;
t=0:dt:T; % Vector de tiempos&lt;br /&gt;
% Matriz de coeficientes. Aproximacion de -q*u_xx&lt;br /&gt;
K=2*diag(ones(1,N+1))-diag(ones(1,N),1)-diag(ones(1,N),-1);&lt;br /&gt;
K(1,2)=-2;&lt;br /&gt;
K(N+1,N)=-2;&lt;br /&gt;
K=q*K/h^2;&lt;br /&gt;
% Calculamos u0 condición inicial&lt;br /&gt;
u0=[zeros(1,1+N*3/5),3*ones(1,N*2/5)]';&lt;br /&gt;
% F=0 (no la consideramos)&lt;br /&gt;
sol(1,:)=u0'; % Guardamos la solucion&lt;br /&gt;
U=u0; % Inicializacion&lt;br /&gt;
% Calculamos U_n -&amp;gt; U_n+1&lt;br /&gt;
for j=1:length(t)-1 &lt;br /&gt;
k1=-K*U; % Calculamos k1=h*f(tn,yn)&lt;br /&gt;
k2=-K*(U+dt*k1); % Calculamos k2=h*f(tn+h/2,yn+1/2*k1)&lt;br /&gt;
% Meto los datos en el vector&lt;br /&gt;
U=U+(dt/2)*(k1+k2);&lt;br /&gt;
sol(j+1,:)= U'; % Guardamos solucion&lt;br /&gt;
end&lt;br /&gt;
%Dibujamos la solucion&lt;br /&gt;
[xx,tt]=meshgrid(x,t);&lt;br /&gt;
surf(xx,tt,sol);&lt;br /&gt;
}}&lt;br /&gt;
[[Archivo: mig.jpg|500px|thumb|centro|Gráfica concentración / espacio-tiempo. Resolución por el método de Euler modificado.]]&lt;br /&gt;
&lt;br /&gt;
== Conservación de la masa total de contaminante ==&lt;br /&gt;
A continuación demostraremos que la masa total de contaminante en el tubo se conserva a lo largo del tiempo, que se puede deducir a partir de la ecuación sin tener que resolverla. Integramos la ecuación y debido a las condiciones de frontera:&lt;br /&gt;
&amp;lt;math&amp;gt;\frac d {dt} \int_0^5 u(x,t)\,dx= \int_0^5 u_{xx}(x,t)\,dx= u_x(x,t)|_0^5=0&amp;lt;/math&amp;gt;&lt;br /&gt;
{{matlab| codigo=&lt;br /&gt;
%Datos&lt;br /&gt;
L=5; %Longitud de varilla&lt;br /&gt;
T=5;&lt;br /&gt;
q=1;&lt;br /&gt;
%Discretización temporal y espacial&lt;br /&gt;
N=500; %Número de subintervalos&lt;br /&gt;
h=L/N;&lt;br /&gt;
x=0:h:L; % Vector de espacio&lt;br /&gt;
dt=h/4; % Paso en tiempo&lt;br /&gt;
t=0:dt:T; % Vector de tiempos&lt;br /&gt;
% Matriz de coeficientes. Aproximacion de -q*u_xx&lt;br /&gt;
K=2*diag(ones(1,N+1))-diag(ones(1,N),1)-diag(ones(1,N),-1);&lt;br /&gt;
K(1,2)=-2;&lt;br /&gt;
K(N+1,N)=-2;&lt;br /&gt;
K=q*K/h^2;&lt;br /&gt;
% Calculamos u0 condición inicial&lt;br /&gt;
u0=[zeros(1,1+N*3/5),3*ones(1,N*2/5)]';&lt;br /&gt;
% F=0 (no la consideramos)&lt;br /&gt;
sol(1,:)=u0'; % Guardamos la solucion&lt;br /&gt;
U=u0; % Inicializacion&lt;br /&gt;
% Calculamos U_n -&amp;gt; U_n+1&lt;br /&gt;
for j=1:length(t)-1 &lt;br /&gt;
U=(eye(N+1)+dt*K)\(U+dt*F); &lt;br /&gt;
sol(j+1,:)= U'; % Guardamos solucion&lt;br /&gt;
end&lt;br /&gt;
% Calculamos el area de la funcion en cada tiempo (area = cantidad de contaminante)&lt;br /&gt;
areas=zeros(1,length(t));&lt;br /&gt;
for i=1:length(t)&lt;br /&gt;
f=sol(i,:);&lt;br /&gt;
w=trapz(x,f);&lt;br /&gt;
area(i)=w;&lt;br /&gt;
end&lt;br /&gt;
%Dibujamos&lt;br /&gt;
plot(t,area)&lt;br /&gt;
xlabel('Tiempo')&lt;br /&gt;
ylabel('Cantidad de contaminante')&lt;br /&gt;
}}&lt;br /&gt;
[[Archivo:aleeex.jpg|500px|thumb|centro|Conservación masa total de contaminante]]&lt;br /&gt;
[[Archivo:gime.jpg|500px|thumb|centro|Conservación masa total de contaminante]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Concentración a lo largo del tiempo==&lt;br /&gt;
La concentración de la sustancia contaminante en la varilla varía con el tiempo, pero en un cierto momento esta concentración se va homogeneizando, y deja de variar, entrando en un estado estacionario::&lt;br /&gt;
&amp;lt;math&amp;gt; u_t(x,t)- D*u_{xx}(x,t)=0 &amp;lt;/math&amp;gt; :    &lt;br /&gt;
&amp;lt;math&amp;gt; u_t(x,t)=0 \rightarrow D*u_{xx}(x,t)=0 &amp;lt;/math&amp;gt; :&lt;br /&gt;
&amp;lt;math&amp;gt; u=c_1*x+c_2 &amp;lt;/math&amp;gt; &lt;br /&gt;
Utizando Matlab comprobaremos que &amp;lt;math&amp;gt; c_1=0 &amp;lt;/math&amp;gt; &amp;lt;math&amp;gt; c_2=1.17 &amp;lt;/math&amp;gt;&lt;br /&gt;
Para tiempos grandes la concentración se estabiliza en torno a 1.17 en toda la varilla, de forma que la solución se asemejará a una función lineal constante.&lt;br /&gt;
&lt;br /&gt;
{{matlab| codigo=&lt;br /&gt;
%Datos&lt;br /&gt;
L=5; %Longitud de varilla&lt;br /&gt;
T=50;&lt;br /&gt;
q=1;&lt;br /&gt;
%Discretización temporal y espacial&lt;br /&gt;
dx=0.1; % Paso en espacio&lt;br /&gt;
N=L/dx; %Número de subintervalos&lt;br /&gt;
h=L/N;&lt;br /&gt;
x=0:h:L; % Vector de espacio&lt;br /&gt;
dt=h/4; % Paso en tiempo&lt;br /&gt;
t=0:dt:T; % Vector de tiempos&lt;br /&gt;
% Matriz de coeficientes. Aproximacion de -q*u_xx&lt;br /&gt;
K=2*diag(ones(1,N+1))-diag(ones(1,N),1)-diag(ones(1,N),-1);&lt;br /&gt;
K(1,2)=-2;&lt;br /&gt;
K(N+1,N)=-2;&lt;br /&gt;
K=q*K/h^2;&lt;br /&gt;
% Calculamos u0 condición inicial&lt;br /&gt;
u0=[zeros(1,1+N*3/5),3*ones(1,N*2/5)]';&lt;br /&gt;
% F=0 (no la consideramos)&lt;br /&gt;
sol(1,:)=u0'; % Guardamos la solucion&lt;br /&gt;
U=u0; % Inicializacion&lt;br /&gt;
% Calculamos U_n -&amp;gt; U_n+1&lt;br /&gt;
%Aplicamos método trapecio método del trapecio&lt;br /&gt;
for j=1:length(t)-1&lt;br /&gt;
U=(eye(N+1)+(dt*K)/2)\((eye(N+1)-(K*dt)/2)*U);&lt;br /&gt;
sol(j+1,:)= U'; % Guardamos solucion&lt;br /&gt;
end&lt;br /&gt;
%Solución estacionaria&lt;br /&gt;
a=sol(length(t),:);&lt;br /&gt;
b=sol(1,:);&lt;br /&gt;
c=sol((length(t)-1)/50+1,:);&lt;br /&gt;
d=sol((length(t)-1)*2/50+1,:);&lt;br /&gt;
e=sol((length(t)-1)*10/50+1,:);&lt;br /&gt;
hold on&lt;br /&gt;
plot(x,a,'xk','linewidth',2);&lt;br /&gt;
plot(x,b,'-m','linewidth',1);&lt;br /&gt;
plot(x,c,'-g','linewidth',1);&lt;br /&gt;
plot(x,d,'-y','linewidth',1);&lt;br /&gt;
plot(x,e,'-b','linewidth',1);&lt;br /&gt;
legend('u(50s)','u(0s)','u(1s)','u(2s)','u(10s)');&lt;br /&gt;
xlabel('Posición en la varilla')&lt;br /&gt;
ylabel('Concentracion')&lt;br /&gt;
hold off&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Soluciones(t).jpg|500px|thumb|centro|Soluciones a lo largo del tiempo]]&lt;br /&gt;
&lt;br /&gt;
La distancia entre la solución estacionaria y las soluciones para los siguientes instantes: 0s, 1s, 2s y 10s; se puede apreciar en la imagen anterior. &lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
Una vez analizado los datos, se demuestra que la sustancia contaminante se estabiliza en t=9.98s, con un error del 5%.&lt;br /&gt;
&lt;br /&gt;
En el caso de que consideremos Δx'=Δx/10,el tiempo en el que se estabiliza la cantidad de sustancia contaminante será t=10s, dato que será más preciso debido a que el paso realizado en el programa es menor.&lt;br /&gt;
&lt;br /&gt;
==Nueva condición de frontera==&lt;br /&gt;
&lt;br /&gt;
Si colocamos un limpiador, que elimina la sustancia contaminante, en el extremo izquierdo de la varilla, varían las condiciones de contorno del problema. En este caso, en el extremo izquierdo, la condición inicial será de tipo Dirichlet ya que se esta variación esta provocada por un mecanismo físico externo que actúa sobre el extremo. &amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;math&amp;gt;\begin{cases}&lt;br /&gt;
u_t(x,t)- D u_{xx}(x,t)= 0 ; x\in (0,5) \\&lt;br /&gt;
u(x,0)=u_0 , x\in (0,5) \\&lt;br /&gt;
u(0,t)=0 , u_x(5,t)=0 ; t\geq 0&lt;br /&gt;
\end{cases}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Dadas las nuevas condiciones, resolvemos el problema por el método de diferencias finitas con la ayuda de Matlab.&lt;br /&gt;
&lt;br /&gt;
{{matlab| codigo=&lt;br /&gt;
%Datos&lt;br /&gt;
L=5; %Longitud de varilla&lt;br /&gt;
T=5; %tiempo final&lt;br /&gt;
q=1;&lt;br /&gt;
%Discretización temporal y espacial&lt;br /&gt;
dx=0.1; % Paso en espacio&lt;br /&gt;
N=L/dx; %Número de subintervalos&lt;br /&gt;
x=0:dx:L;% Vector de espacio&lt;br /&gt;
dt=dx/4; % Paso en tiempo&lt;br /&gt;
t=0:dt:T; % Vector de tiempos&lt;br /&gt;
% Matriz de coeficientes. Aproximacion de -q*u_xx&lt;br /&gt;
K=2*diag(ones(1,N))-diag(ones(1,N-1),1)-diag(ones(1,N-1),-1);&lt;br /&gt;
K(N,N-1)=-2;&lt;br /&gt;
K=q*K/dx^2;&lt;br /&gt;
% Matriz F&lt;br /&gt;
F=zeros(N,1);&lt;br /&gt;
% Calculamos u0 condición inicial&lt;br /&gt;
u0=[zeros(1,N*3/5),3*ones(1,N*2/5)]';&lt;br /&gt;
sol(1,:)=[0,u0']; &lt;br /&gt;
U=u0; % Inicializacion&lt;br /&gt;
% Calculamos U_n -&amp;gt; U_n+1&lt;br /&gt;
%Aplicamos método trapecio método del trapecio&lt;br /&gt;
for j=1:length(t)-1&lt;br /&gt;
U=(eye(N)+(dt*K))\(dt*F+U);&lt;br /&gt;
sol(j+1,:)= [0,U'];&lt;br /&gt;
end&lt;br /&gt;
%Dibujamos la solucion&lt;br /&gt;
[xx,tt]=meshgrid(x,t);&lt;br /&gt;
surf(xx,tt,sol);&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Xata.JPG|500px|thumb|centro|Solución al variar las condiciones de contorno del problema.]]&lt;br /&gt;
&lt;br /&gt;
Observando la gráfica, y por la presencia del limpiador en el extremo de la varilla, para tiempos grandes la cantidad de sustancia contaminante será nula en toda la varilla. En realidad, esto no es del todo cierto puesto que la sustancia no llega a eliminarse completamente, ya que el limpiador solo elimina la sustancia contaminante en el extremo izquierdo. Aunque la concentración en todos los puntos disminuye de manera exponencial, permanece asintótica a 0.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Trapotito.JPG|500px|thumb|centro|Momento en el que se estabiliza con la presencia del limpiador.]]&lt;br /&gt;
&lt;br /&gt;
==Resolución por el método de Fourier==&lt;br /&gt;
&lt;br /&gt;
Las condiciones de frontera del problema son homogéneas, por lo que podemos aplicar este método de cálculo, sin realizar ningún cambio.&lt;br /&gt;
El primer paso es resolver el problema de autovalores asociado:&lt;br /&gt;
&amp;lt;math&amp;gt;\begin{cases}&lt;br /&gt;
y''+λy=0 x \in (0,5) \\&lt;br /&gt;
y'(0)=0 \\&lt;br /&gt;
y'(5)=0&lt;br /&gt;
\end{cases}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
Realizando analíticamente el cálculo, obtenemos los siguientes autovalores y autofunciones:&lt;br /&gt;
&amp;lt;math&amp;gt; λ_k=\frac{k^2π^2}{25}  →  φ_k=sin\frac{kπ}{5} , k=0,1,2,3... &amp;lt;/math&amp;gt;&lt;/div&gt;</summary>
		<author><name>Karlo André</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Difusi%C3%B3n_de_una_sustancia_contaminante_(Grupo_10)&amp;diff=12911</id>
		<title>Difusión de una sustancia contaminante (Grupo 10)</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Difusi%C3%B3n_de_una_sustancia_contaminante_(Grupo_10)&amp;diff=12911"/>
				<updated>2014-05-19T17:21:36Z</updated>
		
		<summary type="html">&lt;p&gt;Karlo André: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;''''''Texto en negrita''''''[[Archivo:nuriat.png|200px|thumb|right|Tubo con sustancia contaminante]]&lt;br /&gt;
La difusión implica un movimiento espontáneo y desordenado de moléculas individuales y, especialmente, nos interesa la difusión de moléculas de una sustancia disuelta en otra.&lt;br /&gt;
&lt;br /&gt;
La difusión de una sustancia puede considerarse análoga al flujo de calor, y la ley de Fick establece que el ritmo de difusión por unidad de superficie, en dirección perpendicular a ésta, es proporcional al gradiente de la concentración de esa sustancia en esa dirección. La concentración es la masa de la sustancia por unidad de volumen, y el gradiente de concentración es la variación de concentración por unidad de distancia.&lt;br /&gt;
&lt;br /&gt;
Para determinar como se distribuye la concentración de una sustancia contaminante tomaremos como ejemplo un tubo largo compuesto por dos sustancias de las cuáles una de ellas es contaminante.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
= Simplificación del problema =&lt;br /&gt;
&lt;br /&gt;
Para que este problema resulte más sencillo aplicaremos una serie de condiciones, facilitando el cálculo del mismo.&lt;br /&gt;
&lt;br /&gt;
En primer lugar denotaremos su concentración &amp;lt;math&amp;gt; u &amp;lt;/math&amp;gt;, concentración de contaminante en cada posición del tubo y constante en cada sección, medida en &amp;lt;math&amp;gt; \frac{mol}{m^2*s} &amp;lt;/math&amp;gt;. &lt;br /&gt;
&lt;br /&gt;
Supondremos que el tubo mide L=5 m, ocupando el intervalo &amp;lt;math&amp;gt; x \in (0,L) &amp;lt;/math&amp;gt;, y que la concentración es la misma en cualquier punto de la sección transversal del tubo. Por tanto, la concentración dependerá unicamente de dos variables &amp;lt;math&amp;gt; u = u(x,t) &amp;lt;/math&amp;gt;. En los extremos se ha colocado un aislante que hace que el flujo de contaminante al exterior del tubo sea nulo. Además, consideraremos la simplificación de que se trata de un tubo aislado por sus laterales, pero abierto por las bases del cilindro.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Ley de conservación de masa ==&lt;br /&gt;
&lt;br /&gt;
Tras una serie de experimentos realizados por Lavoisier, se pusieron de manifiesto que si tenemos en cuenta todas las sustancias que forman parte en una reacción química y todos los productos formados, nunca varía la masa. Esta ley exige que no haya una generación espontánea de materia. Es decir, en la región del espacio estudiada, no existe entrada o salida por un punto cualquiera (frontera o interior), la masa en esta región se mantiene constante. Esta es la ley de la conservación de la masa, que podemos enunciarla, pues, de la siguiente manera: &amp;lt;br /&amp;gt;&lt;br /&gt;
''&amp;quot;En toda reacción química la masa se conserva, esto es, la masa total de los reactivos es igual a la masa total de los productos&amp;quot;'' &amp;lt;br /&amp;gt;&lt;br /&gt;
La ley de conservación de masas exige que no haya una generación espontánea de materia. Es decir, en la región del espacio estudiada, no existe entrada o salida por un punto cualquiera (frontera o interior), la masa en esta región se mantiene constante.&lt;br /&gt;
&lt;br /&gt;
Esta suposición, en términos de variación de masa, puede quedar determinada como:&lt;br /&gt;
&lt;br /&gt;
''Variación de la masa en el tiempo = flujo de masa a través de la frontera por unidad de tiempo + flujo de masa generada en el interior por unidad de tiempo. ''&lt;br /&gt;
&lt;br /&gt;
== Ley de Fick ==&lt;br /&gt;
Se trata de una ley cuantitativa en forma diferencial que describe la difusión de materia o energía en un medio en el que inicialmente existe equilibrio químico o físico. Esta ley se trata de una generalización de los fenómenos descritos por la '''Ley de Fourier''', ya que esta es una consideración concreta del calor.&lt;br /&gt;
&lt;br /&gt;
La ley de Fick anuncia que en el caso de existir diferencias de concentración en cualquier especie, el paso de estas especies se llevará a cabo desde las regiones con mayor concentración a las de menor. Formulado matemáticamente:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;F(x,t)=-D\frac{\partial u}{\partial x}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Donde &amp;lt;math&amp;gt;F&amp;lt;/math&amp;gt; es el flujo de la sustancia y &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; el coeficiente de difusión, que representa la facilidad en que un soluto particular se mueve por un disolvente determinado.&lt;br /&gt;
&lt;br /&gt;
La ley de Fick establece que el flujo de difusión del contaminante es proporcional a la variación de concentración:&lt;br /&gt;
&amp;lt;math&amp;gt; F(x,t)=-D\frac{\partial u}{\partial x} &amp;lt;/math&amp;gt;&lt;br /&gt;
donde D es el coeficiente de difusión (medido en &amp;lt;math&amp;gt; \frac{m^2}{s} &amp;lt;/math&amp;gt;), que depende de las propiedades físicas de los compuestos, y que se supone constante D=1.&lt;br /&gt;
&lt;br /&gt;
= Modelización de la ecuación diferencial =&lt;br /&gt;
&lt;br /&gt;
Aplicando el principio de conservación de la masa y la ley de Fourier, definimos la variable &amp;lt;math&amp;gt; u(x,t)&amp;lt;/math&amp;gt; en unidades de sustancia por área, es decir, concentración por superficie del tubo.&lt;br /&gt;
&lt;br /&gt;
Consideramos &amp;lt;math&amp;gt; A &amp;lt;/math&amp;gt; como variable superficie, y tomamos un pequeño trozo, definido por &amp;lt;math&amp;gt;\Delta x&amp;lt;/math&amp;gt;. Entonces, para obtener la variación de la masa en el tiempo:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; A u(x,t) \Delta x &amp;lt;/math&amp;gt; &lt;br /&gt;
&lt;br /&gt;
Y derivando en el tiempo:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; A u_t(x,t) \Delta x &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
obtenemos el primer término de la igualdad anteriormente enunciada.&lt;br /&gt;
&lt;br /&gt;
En el segundo, consideramos nulo el flujo de masa en los puntos interiores por unidad de tiempo, pues suponemos la tubería perfecta y sin sumideros.&lt;br /&gt;
&lt;br /&gt;
Como la superﬁcie lateral del tubo está aislada, solamente habrá flujo de sustancia en la dirección del eje &amp;lt;math&amp;gt;x&amp;lt;/math&amp;gt;. Si &amp;lt;math&amp;gt;F(x,t)&amp;gt; 0&amp;lt;/math&amp;gt; pensamos que el ﬂujo va hacia la derecha, si &amp;lt;math&amp;gt;F(x,t)&amp;lt; 0&amp;lt;/math&amp;gt;, este va a hacia la izquierda. El ﬂujo de&lt;br /&gt;
calor en un intervalo &amp;lt;math&amp;gt;[x, x + ∆x ] &amp;lt;/math&amp;gt; viene dado dado por:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;F(x,t)A-F(x+\Delta x, t)A&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Con lo que queda &amp;lt;math&amp;gt;A u_t(x,t) \Delta x = F(x,t)A-F(x+\Delta x, t)A&amp;lt;/math&amp;gt;, y al dividir &amp;lt;math&amp;gt;A \Delta x&amp;lt;/math&amp;gt;, nos queda &amp;lt;math&amp;gt;u_t(x,t)= \frac {F(x,t)-F(x+\Delta x, t)}{\Delta x}&amp;lt;/math&amp;gt;. &amp;lt;br /&amp;gt;&lt;br /&gt;
Como &amp;lt;math&amp;gt;\Delta x \rightarrow 0 &amp;lt;/math&amp;gt;, &amp;lt;math&amp;gt;u_t(x,t)= -F_x(x,t)&amp;lt;/math&amp;gt;, y aplicando ley de Fick, &amp;lt;math&amp;gt;u_t(x,t)=-\frac{\partial }{\partial x}(-D u_x(x,t)) = D u_xx(x,t) &amp;lt;/math&amp;gt;.&amp;lt;br /&amp;gt;&lt;br /&gt;
Con lo que resulta una ecuación en derivadas parciales que determina la concentración de sustancia:&lt;br /&gt;
&amp;lt;math&amp;gt;u_t(x,t)- D u_xx(x,t)= 0 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Planteamiento del problema bien propuesto ==&lt;br /&gt;
&lt;br /&gt;
Suponemos que el flujo será nula al haber una tapa en los extremos del tubo, con lo que el problema bien propuesto quedaría::&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\begin{cases}&lt;br /&gt;
u_t(x,t)- D u_{xx}(x,t)= 0 ; x\in (0,5) \\&lt;br /&gt;
u(x,0)=u_0 , x\in (0,5) \\&lt;br /&gt;
u_x(0,t)=0 , u_x(5,t)=0 ; t\geq 0&lt;br /&gt;
\end{cases}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= Resolución numérica =&lt;br /&gt;
Para la resolución de ésta ecuación necesitaremos mínimo tres condiciones, dos de las cuales serán de contorno, y la otra será la condición inicial.Si suponemos &amp;lt;math&amp;gt;u_0(x,0)&amp;lt;/math&amp;gt;, entonces:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; u_0(x,0)=\begin{cases}&lt;br /&gt;
0,  si x\leq 3\\&lt;br /&gt;
3,  si x&amp;gt;3&lt;br /&gt;
\end{cases}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Resolución por el método de las diferencias finitas ==&lt;br /&gt;
En el primer caso particular que estudiaremos, trataremos de obtener una resolución numérica del problema anteriormente planteado, dónde tenemos las fronteras aisladas y las concentraciones iniciales conocidas:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\begin{cases}&lt;br /&gt;
u_t(x,t)- D u_{xx}(x,t)= 0; x\in (0,5), t\geq 0 \\&lt;br /&gt;
u_0(x,0), x\in (0,5) \\&lt;br /&gt;
u_x(0,t)=0, u_x(5,t)=0, t\geq 0&lt;br /&gt;
\end{cases}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
La resolución por el método de las diferencias finitas se basa en expresar el problema continuo a un sistema discreto de ecuaciones diferenciales de primer orden. Particularizando para nuestro caso con las condiciones dadas, el problema planteado sería:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\begin{cases}&lt;br /&gt;
u'_n(t)+\frac{-u_{n-1}(t)+2u_n(t)+u_{n+1}(t)}{h^2} \\&lt;br /&gt;
\frac{u_1(t)-u_-1(t)}{2h} \rightarrow u_1(t)=u_-1(t) \\&lt;br /&gt;
\frac{u_{N+1}(t)-u_{N-1}(t)}{2h} \rightarrow u_{N+1}(t)=u_{N-1}\\&lt;br /&gt;
u_n(0)=u^0(x)&lt;br /&gt;
\end{cases}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Por lo que tenemos un sistema de la forma:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\begin{cases}&lt;br /&gt;
U'(t)+KU(t)=F(t)=0\\&lt;br /&gt;
U(0)=U^0&lt;br /&gt;
\end{cases}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Con &amp;lt;math&amp;gt;N+1&amp;lt;/math&amp;gt; ecuaciones.&lt;br /&gt;
==== Resolución por método del trapecio ====&lt;br /&gt;
Suponiendo que en el instante inicial se verifica  :&amp;lt;math&amp;gt;&lt;br /&gt;
u(x,0)=\left\{\begin{matrix}\\0, x≤3\\3, x&amp;gt;3\end{matrix}\right.&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Si tomamos &amp;lt;math&amp;gt;\triangle t= \triangle x/4&amp;lt;/math&amp;gt; en &amp;lt;math&amp;gt;t\in\ [0,5]&amp;lt;/math&amp;gt;, con &amp;lt;math&amp;gt;\triangle x=0.1&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
El código en MATLAB del método sería:&lt;br /&gt;
&lt;br /&gt;
{{matlab| codigo=&lt;br /&gt;
%Datos&lt;br /&gt;
L=5; %Longitud de varilla&lt;br /&gt;
T=5; %tiempo final&lt;br /&gt;
q=1;&lt;br /&gt;
%Discretización temporal y espacial&lt;br /&gt;
dx=0.1; % Paso en espacio&lt;br /&gt;
N=L/dx; %Número de subintervalos&lt;br /&gt;
x=0:dx:L; % Vector de espacio&lt;br /&gt;
dt=dx/4; % Paso en tiempo&lt;br /&gt;
t=0:dt:T; % Vector de tiempos&lt;br /&gt;
% Matriz de coeficientes. Aproximacion de -q*u_xx&lt;br /&gt;
K=2*diag(ones(1,N+1))-diag(ones(1,N),1)-diag(ones(1,N),-1);&lt;br /&gt;
K(1,2)=-2;&lt;br /&gt;
K(N+1,N)=-2;&lt;br /&gt;
K=q*K/dx^2;&lt;br /&gt;
% Calculamos u0 condición inicial&lt;br /&gt;
u0=[zeros(1,1+N*3/5),3*ones(1,N*2/5)]';&lt;br /&gt;
% F=0 (no la consideramos)&lt;br /&gt;
sol(1,:)=u0'; % Guardamos la solucion&lt;br /&gt;
U=u0; % Inicializacion&lt;br /&gt;
% Calculamos U_n -&amp;gt; U_n+1&lt;br /&gt;
%Aplicamos método trapecio método del trapecio&lt;br /&gt;
for j=1:length(t)-1&lt;br /&gt;
U=(eye(N+1)+(dt*K)/2)\((eye(N+1)-(K*dt)/2)*U);&lt;br /&gt;
sol(j+1,:)= U'; % Guardamos solucion&lt;br /&gt;
end&lt;br /&gt;
%Dibujamos la solucion&lt;br /&gt;
[xx,tt]=meshgrid(x,t);&lt;br /&gt;
surf(xx,tt,sol);&lt;br /&gt;
}}&lt;br /&gt;
[[Archivo:nur.jpg|500px|thumb|centro|Gráfica concentración / espacio-tiempo. Resolución por el método del trapecio.]]&lt;br /&gt;
&lt;br /&gt;
==== Resolución por método de Euler explícito ====&lt;br /&gt;
{{matlab| codigo=&lt;br /&gt;
%Datos&lt;br /&gt;
L=5; %Longitud de varilla&lt;br /&gt;
T=5; %tiempo final&lt;br /&gt;
q=1;&lt;br /&gt;
%Discretización temporal y espacial&lt;br /&gt;
dx=0.1; % Paso en espacio&lt;br /&gt;
N=L/dx; %Número de subintervalos&lt;br /&gt;
x=0:dx:L; % Vector de espacio&lt;br /&gt;
dt=dx/20; % Paso en tiempo&lt;br /&gt;
t=0:dt:T; % Vector de tiempos&lt;br /&gt;
% Matriz de coeficientes. Aproximacion de -q*u_xx&lt;br /&gt;
K=2*diag(ones(1,N+1))-diag(ones(1,N),1)-diag(ones(1,N),-1);&lt;br /&gt;
K(1,2)=-2;&lt;br /&gt;
K(N+1,N)=-2;&lt;br /&gt;
K=q*K/dx^2;&lt;br /&gt;
% Calculamos u0 condición inicial&lt;br /&gt;
u0=[zeros(1,1+N*3/5),3*ones(1,N*2/5)]';&lt;br /&gt;
% F=0 (no la consideramos)&lt;br /&gt;
sol(1,:)=u0'; % Guardamos la solucion&lt;br /&gt;
U=u0; % Inicializacion&lt;br /&gt;
% Calculamos U_n -&amp;gt; U_n+1&lt;br /&gt;
%Aplicamos método Euler explícito&lt;br /&gt;
for j=1:length(t)-1 &lt;br /&gt;
k1=-K*U; % Calculamos k1=h*f(tn,yn)&lt;br /&gt;
k2=-K*(U+dt*k1); % Calculamos k2=h*f(tn+h/2,yn+1/2*k1)&lt;br /&gt;
% Meto los datos en el vector&lt;br /&gt;
U=U+(dt/2)*(k1+k2);&lt;br /&gt;
sol(j+1,:)= U'; % Guardamos solucion&lt;br /&gt;
end&lt;br /&gt;
%Dibujamos la solucion&lt;br /&gt;
[xx,tt]=meshgrid(x,t);&lt;br /&gt;
surf(xx,tt,sol);&lt;br /&gt;
}}&lt;br /&gt;
[[Archivo:mig.jpg|500px|thumb|centro|Gráfica concentración / espacio-tiempo. Resolución por el método de Euler explícito.]]&lt;br /&gt;
&lt;br /&gt;
==== Resolución por método de Euler implícito ====&lt;br /&gt;
{{matlab| codigo=&lt;br /&gt;
%Datos&lt;br /&gt;
L=5; %Longitud de varilla&lt;br /&gt;
T=5;&lt;br /&gt;
q=1;&lt;br /&gt;
%Discretización temporal y espacial&lt;br /&gt;
dx=0.1; % Paso en espacio&lt;br /&gt;
N=L/dx; %Número de subintervalos&lt;br /&gt;
h=L/N;&lt;br /&gt;
x=0:h:L; % Vector de espacio&lt;br /&gt;
dt=h/20; % Paso en tiempo&lt;br /&gt;
t=0:dt:T; % Vector de tiempos&lt;br /&gt;
% Matriz de coeficientes. Aproximacion de -q*u_xx&lt;br /&gt;
K=2*diag(ones(1,N+1))-diag(ones(1,N),1)-diag(ones(1,N),-1);&lt;br /&gt;
K(1,2)=-2;&lt;br /&gt;
K(N+1,N)=-2;&lt;br /&gt;
K=q*K/h^2;&lt;br /&gt;
% Calculamos u0 condición inicial&lt;br /&gt;
u0=[zeros(1,1+N*3/5),3*ones(1,N*2/5)]';&lt;br /&gt;
% F=0 (no la consideramos)&lt;br /&gt;
sol(1,:)=u0'; % Guardamos la solucion&lt;br /&gt;
U=u0; % Inicializacion&lt;br /&gt;
% Calculamos U_n -&amp;gt; U_n+1&lt;br /&gt;
% Aplicamos método implícito&lt;br /&gt;
for j=1:length(t)-1 &lt;br /&gt;
U=U-dt*K*U; &lt;br /&gt;
sol(j+1,:)= U'; % Guardamos solucion&lt;br /&gt;
end&lt;br /&gt;
%Dibujamos la solucion&lt;br /&gt;
[xx,tt]=meshgrid(x,t);&lt;br /&gt;
surf(xx,tt,sol);&lt;br /&gt;
}}&lt;br /&gt;
[[Archivo:migap.jpg|500px|thumb|centro|Gráfica concentración / espacio-tiempo. Resolución por el método de Euler implícito.]]&lt;br /&gt;
&lt;br /&gt;
==== Resolución por método de Euler modificado ====&lt;br /&gt;
{{matlab| codigo=&lt;br /&gt;
%Datos&lt;br /&gt;
L=5; %Longitud de varilla&lt;br /&gt;
T=5;&lt;br /&gt;
q=1;&lt;br /&gt;
%Discretización temporal y espacial&lt;br /&gt;
dx=0.1; % Paso en espacio&lt;br /&gt;
N=L/dx; %Número de subintervalos&lt;br /&gt;
h=L/N;&lt;br /&gt;
x=0:h:L; % Vector de espacio&lt;br /&gt;
dt=h/20; % Paso en tiempo&lt;br /&gt;
t=0:dt:T; % Vector de tiempos&lt;br /&gt;
% Matriz de coeficientes. Aproximacion de -q*u_xx&lt;br /&gt;
K=2*diag(ones(1,N+1))-diag(ones(1,N),1)-diag(ones(1,N),-1);&lt;br /&gt;
K(1,2)=-2;&lt;br /&gt;
K(N+1,N)=-2;&lt;br /&gt;
K=q*K/h^2;&lt;br /&gt;
% Calculamos u0 condición inicial&lt;br /&gt;
u0=[zeros(1,1+N*3/5),3*ones(1,N*2/5)]';&lt;br /&gt;
% F=0 (no la consideramos)&lt;br /&gt;
sol(1,:)=u0'; % Guardamos la solucion&lt;br /&gt;
U=u0; % Inicializacion&lt;br /&gt;
% Calculamos U_n -&amp;gt; U_n+1&lt;br /&gt;
for j=1:length(t)-1 &lt;br /&gt;
k1=-K*U; % Calculamos k1=h*f(tn,yn)&lt;br /&gt;
k2=-K*(U+dt*k1); % Calculamos k2=h*f(tn+h/2,yn+1/2*k1)&lt;br /&gt;
% Meto los datos en el vector&lt;br /&gt;
U=U+(dt/2)*(k1+k2);&lt;br /&gt;
sol(j+1,:)= U'; % Guardamos solucion&lt;br /&gt;
end&lt;br /&gt;
%Dibujamos la solucion&lt;br /&gt;
[xx,tt]=meshgrid(x,t);&lt;br /&gt;
surf(xx,tt,sol);&lt;br /&gt;
}}&lt;br /&gt;
[[Archivo: mig.jpg|500px|thumb|centro|Gráfica concentración / espacio-tiempo. Resolución por el método de Euler modificado.]]&lt;br /&gt;
&lt;br /&gt;
== Conservación de la masa total de contaminante ==&lt;br /&gt;
A continuación demostraremos que la masa total de contaminante en el tubo se conserva a lo largo del tiempo, que se puede deducir a partir de la ecuación sin tener que resolverla. Integramos la ecuación y debido a las condiciones de frontera:&lt;br /&gt;
&amp;lt;math&amp;gt;\frac d {dt} \int_0^5 u(x,t)\,dx= \int_0^5 u_{xx}(x,t)\,dx= u_x(x,t)|_0^5=0&amp;lt;/math&amp;gt;&lt;br /&gt;
{{matlab| codigo=&lt;br /&gt;
%Datos&lt;br /&gt;
L=5; %Longitud de varilla&lt;br /&gt;
T=5;&lt;br /&gt;
q=1;&lt;br /&gt;
%Discretización temporal y espacial&lt;br /&gt;
N=500; %Número de subintervalos&lt;br /&gt;
h=L/N;&lt;br /&gt;
x=0:h:L; % Vector de espacio&lt;br /&gt;
dt=h/4; % Paso en tiempo&lt;br /&gt;
t=0:dt:T; % Vector de tiempos&lt;br /&gt;
% Matriz de coeficientes. Aproximacion de -q*u_xx&lt;br /&gt;
K=2*diag(ones(1,N+1))-diag(ones(1,N),1)-diag(ones(1,N),-1);&lt;br /&gt;
K(1,2)=-2;&lt;br /&gt;
K(N+1,N)=-2;&lt;br /&gt;
K=q*K/h^2;&lt;br /&gt;
% Calculamos u0 condición inicial&lt;br /&gt;
u0=[zeros(1,1+N*3/5),3*ones(1,N*2/5)]';&lt;br /&gt;
% F=0 (no la consideramos)&lt;br /&gt;
sol(1,:)=u0'; % Guardamos la solucion&lt;br /&gt;
U=u0; % Inicializacion&lt;br /&gt;
% Calculamos U_n -&amp;gt; U_n+1&lt;br /&gt;
for j=1:length(t)-1 &lt;br /&gt;
U=(eye(N+1)+dt*K)\(U+dt*F); &lt;br /&gt;
sol(j+1,:)= U'; % Guardamos solucion&lt;br /&gt;
end&lt;br /&gt;
% Calculamos el area de la funcion en cada tiempo (area = cantidad de contaminante)&lt;br /&gt;
areas=zeros(1,length(t));&lt;br /&gt;
for i=1:length(t)&lt;br /&gt;
f=sol(i,:);&lt;br /&gt;
w=trapz(x,f);&lt;br /&gt;
area(i)=w;&lt;br /&gt;
end&lt;br /&gt;
%Dibujamos&lt;br /&gt;
plot(t,area)&lt;br /&gt;
xlabel('Tiempo')&lt;br /&gt;
ylabel('Cantidad de contaminante')&lt;br /&gt;
}}&lt;br /&gt;
[[Archivo:aleeex.jpg|500px|thumb|centro|Conservación masa total de contaminante]]&lt;br /&gt;
[[Archivo:gime.jpg|500px|thumb|centro|Conservación masa total de contaminante]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Concentración a lo largo del tiempo==&lt;br /&gt;
La concentración de la sustancia contaminante en la varilla varía con el tiempo, pero en un cierto momento esta concentración se va homogeneizando, y deja de variar, entrando en un estado estacionario::&lt;br /&gt;
&amp;lt;math&amp;gt; u_t(x,t)- D*u_{xx}(x,t)=0 &amp;lt;/math&amp;gt; :    &lt;br /&gt;
&amp;lt;math&amp;gt; u_t(x,t)=0 \rightarrow D*u_{xx}(x,t)=0 &amp;lt;/math&amp;gt; :&lt;br /&gt;
&amp;lt;math&amp;gt; u=c_1*x+c_2 &amp;lt;/math&amp;gt; &lt;br /&gt;
Utizando Matlab comprobaremos que &amp;lt;math&amp;gt; c_1=0 &amp;lt;/math&amp;gt; &amp;lt;math&amp;gt; c_2=1.17 &amp;lt;/math&amp;gt;&lt;br /&gt;
Para tiempos grandes la concentración se estabiliza en torno a 1.17 en toda la varilla, de forma que la solución se asemejará a una función lineal constante.&lt;br /&gt;
&lt;br /&gt;
{{matlab| codigo=&lt;br /&gt;
%Datos&lt;br /&gt;
L=5; %Longitud de varilla&lt;br /&gt;
T=50;&lt;br /&gt;
q=1;&lt;br /&gt;
%Discretización temporal y espacial&lt;br /&gt;
dx=0.1; % Paso en espacio&lt;br /&gt;
N=L/dx; %Número de subintervalos&lt;br /&gt;
h=L/N;&lt;br /&gt;
x=0:h:L; % Vector de espacio&lt;br /&gt;
dt=h/4; % Paso en tiempo&lt;br /&gt;
t=0:dt:T; % Vector de tiempos&lt;br /&gt;
% Matriz de coeficientes. Aproximacion de -q*u_xx&lt;br /&gt;
K=2*diag(ones(1,N+1))-diag(ones(1,N),1)-diag(ones(1,N),-1);&lt;br /&gt;
K(1,2)=-2;&lt;br /&gt;
K(N+1,N)=-2;&lt;br /&gt;
K=q*K/h^2;&lt;br /&gt;
% Calculamos u0 condición inicial&lt;br /&gt;
u0=[zeros(1,1+N*3/5),3*ones(1,N*2/5)]';&lt;br /&gt;
% F=0 (no la consideramos)&lt;br /&gt;
sol(1,:)=u0'; % Guardamos la solucion&lt;br /&gt;
U=u0; % Inicializacion&lt;br /&gt;
% Calculamos U_n -&amp;gt; U_n+1&lt;br /&gt;
%Aplicamos método trapecio método del trapecio&lt;br /&gt;
for j=1:length(t)-1&lt;br /&gt;
U=(eye(N+1)+(dt*K)/2)\((eye(N+1)-(K*dt)/2)*U);&lt;br /&gt;
sol(j+1,:)= U'; % Guardamos solucion&lt;br /&gt;
end&lt;br /&gt;
%Solución estacionaria&lt;br /&gt;
a=sol(length(t),:);&lt;br /&gt;
b=sol(1,:);&lt;br /&gt;
c=sol((length(t)-1)/50+1,:);&lt;br /&gt;
d=sol((length(t)-1)*2/50+1,:);&lt;br /&gt;
e=sol((length(t)-1)*10/50+1,:);&lt;br /&gt;
hold on&lt;br /&gt;
plot(x,a,'xk','linewidth',2);&lt;br /&gt;
plot(x,b,'-m','linewidth',1);&lt;br /&gt;
plot(x,c,'-g','linewidth',1);&lt;br /&gt;
plot(x,d,'-y','linewidth',1);&lt;br /&gt;
plot(x,e,'-b','linewidth',1);&lt;br /&gt;
legend('u(50s)','u(0s)','u(1s)','u(2s)','u(10s)');&lt;br /&gt;
xlabel('Posición en la varilla')&lt;br /&gt;
ylabel('Concentracion')&lt;br /&gt;
hold off&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Soluciones(t).jpg|500px|thumb|centro|Soluciones a lo largo del tiempo]]&lt;br /&gt;
&lt;br /&gt;
La distancia entre la solución estacionaria y las soluciones para los siguientes instantes: 0s, 1s, 2s y 10s; se puede apreciar en la imagen anterior. &lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
Una vez analizado los datos, se demuestra que la sustancia contaminante se estabiliza en t=9.98s, con un error del 5%.&lt;br /&gt;
&lt;br /&gt;
En el caso de que consideremos Δx'=Δx/10,el tiempo en el que se estabiliza la cantidad de sustancia contaminante será t=10s, dato que será más preciso debido a que el paso realizado en el programa es menor.&lt;br /&gt;
&lt;br /&gt;
==Nueva condición de frontera==&lt;br /&gt;
&lt;br /&gt;
Si colocamos un limpiador, que elimina la sustancia contaminante, en el extremo izquierdo de la varilla, varían las condiciones de contorno del problema. En este caso, en el extremo izquierdo, la condición inicial será de tipo Dirichlet ya que se esta variación esta provocada por un mecanismo físico externo que actúa sobre el extremo. &amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;math&amp;gt;\begin{cases}&lt;br /&gt;
u_t(x,t)- D u_{xx}(x,t)= 0 ; x\in (0,5) \\&lt;br /&gt;
u(x,0)=u_0 , x\in (0,5) \\&lt;br /&gt;
u(0,t)=0 , u_x(5,t)=0 ; t\geq 0&lt;br /&gt;
\end{cases}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Dadas las nuevas condiciones, resolvemos el problema por el método de diferencias finitas con la ayuda de Matlab.&lt;br /&gt;
&lt;br /&gt;
{{matlab| codigo=&lt;br /&gt;
%Datos&lt;br /&gt;
L=5; %Longitud de varilla&lt;br /&gt;
T=5; %tiempo final&lt;br /&gt;
q=1;&lt;br /&gt;
%Discretización temporal y espacial&lt;br /&gt;
dx=0.1; % Paso en espacio&lt;br /&gt;
N=L/dx; %Número de subintervalos&lt;br /&gt;
x=0:dx:L;% Vector de espacio&lt;br /&gt;
dt=dx/4; % Paso en tiempo&lt;br /&gt;
t=0:dt:T; % Vector de tiempos&lt;br /&gt;
% Matriz de coeficientes. Aproximacion de -q*u_xx&lt;br /&gt;
K=2*diag(ones(1,N))-diag(ones(1,N-1),1)-diag(ones(1,N-1),-1);&lt;br /&gt;
K(N,N-1)=-2;&lt;br /&gt;
K=q*K/dx^2;&lt;br /&gt;
% Matriz F&lt;br /&gt;
F=zeros(N,1);&lt;br /&gt;
% Calculamos u0 condición inicial&lt;br /&gt;
u0=[zeros(1,N*3/5),3*ones(1,N*2/5)]';&lt;br /&gt;
sol(1,:)=[0,u0']; &lt;br /&gt;
U=u0; % Inicializacion&lt;br /&gt;
% Calculamos U_n -&amp;gt; U_n+1&lt;br /&gt;
%Aplicamos método trapecio método del trapecio&lt;br /&gt;
for j=1:length(t)-1&lt;br /&gt;
U=(eye(N)+(dt*K))\(dt*F+U);&lt;br /&gt;
sol(j+1,:)= [0,U'];&lt;br /&gt;
end&lt;br /&gt;
%Dibujamos la solucion&lt;br /&gt;
[xx,tt]=meshgrid(x,t);&lt;br /&gt;
surf(xx,tt,sol);&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Xata.JPG|500px|thumb|centro|Solución al variar las condiciones de contorno del problema.]]&lt;br /&gt;
&lt;br /&gt;
Observando la gráfica, y por la presencia del limpiador en el extremo de la varilla, para tiempos grandes la cantidad de sustancia contaminante será nula en toda la varilla. En realidad, esto no es del todo cierto puesto que la sustancia no llega a eliminarse completamente, ya que el limpiador solo elimina la sustancia contaminante en el extremo izquierdo. Aunque la concentración en todos los puntos disminuye de manera exponencial, permanece asintótica a 0.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Trapotito.JPG|500px|thumb|centro|Momento en el que se estabiliza con la presencia del limpiador.]]&lt;br /&gt;
&lt;br /&gt;
==Resolución por el método de Fourier==&lt;br /&gt;
&lt;br /&gt;
Las condiciones de frontera del problema son homogéneas, por lo que podemos aplicar este método de cálculo, sin realizar ningún cambio.&lt;br /&gt;
El primer paso es resolver el problema de autovalores asociado:&lt;br /&gt;
&amp;lt;math&amp;gt;\begin{cases}&lt;br /&gt;
y''+λy=0 x \in (0,5) \\&lt;br /&gt;
y'(0)=0 \\&lt;br /&gt;
y'(5)=0&lt;br /&gt;
\end{cases}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
Realizando analíticamente el cálculo, obtenemos los siguientes autovalores y autofunciones:&lt;br /&gt;
&amp;lt;math&amp;gt; λ_k=\frac{k^2π^2}{25}  →  φ_k=sin\frac{kπ}{5} &amp;lt;/math&amp;gt;&lt;/div&gt;</summary>
		<author><name>Karlo André</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Difusi%C3%B3n_de_una_sustancia_contaminante_(Grupo_10)&amp;diff=12846</id>
		<title>Difusión de una sustancia contaminante (Grupo 10)</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Difusi%C3%B3n_de_una_sustancia_contaminante_(Grupo_10)&amp;diff=12846"/>
				<updated>2014-05-19T15:50:42Z</updated>
		
		<summary type="html">&lt;p&gt;Karlo André: /* Resolución por el método de Fourier */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;''''''Texto en negrita''''''[[Archivo:nuriat.png|200px|thumb|right|Tubo con sustancia contaminante]]&lt;br /&gt;
La difusión implica un movimiento espontáneo y desordenado de moléculas individuales y, especialmente, nos interesa la difusión de moléculas de una sustancia disuelta en otra.&lt;br /&gt;
&lt;br /&gt;
La difusión de una sustancia puede considerarse análoga al flujo de calor, y la ley de Fick establece que el ritmo de difusión por unidad de superficie, en dirección perpendicular a ésta, es proporcional al gradiente de la concentración de esa sustancia en esa dirección. La concentración es la masa de la sustancia por unidad de volumen, y el gradiente de concentración es la variación de concentración por unidad de distancia.&lt;br /&gt;
&lt;br /&gt;
Para determinar como se distribuye la concentración de una sustancia contaminante tomaremos como ejemplo un tubo largo compuesto por dos sustancias de las cuáles una de ellas es contaminante.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
= Simplificación del problema =&lt;br /&gt;
&lt;br /&gt;
Para que este problema resulte más sencillo aplicaremos una serie de condiciones, facilitando el cálculo del mismo.&lt;br /&gt;
&lt;br /&gt;
En primer lugar denotaremos su concentración &amp;lt;math&amp;gt; u &amp;lt;/math&amp;gt;, concentración de contaminante en cada posición del tubo y constante en cada sección, medida en &amp;lt;math&amp;gt; \frac{mol}{m^2*s} &amp;lt;/math&amp;gt;. &lt;br /&gt;
&lt;br /&gt;
Supondremos que el tubo mide L=5 m, ocupando el intervalo &amp;lt;math&amp;gt; x \in (0,L) &amp;lt;/math&amp;gt;, y que la concentración es la misma en cualquier punto de la sección transversal del tubo. Por tanto, la concentración dependerá unicamente de dos variables &amp;lt;math&amp;gt; u = u(x,t) &amp;lt;/math&amp;gt;. En los extremos se ha colocado un aislante que hace que el flujo de contaminante al exterior del tubo sea nulo. Además, consideraremos la simplificación de que se trata de un tubo aislado por sus laterales, pero abierto por las bases del cilindro.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Ley de conservación de masa ==&lt;br /&gt;
&lt;br /&gt;
Tras una serie de experimentos realizados por Lavoisier, se pusieron de manifiesto que si tenemos en cuenta todas las sustancias que forman parte en una reacción química y todos los productos formados, nunca varía la masa. Esta ley exige que no haya una generación espontánea de materia. Es decir, en la región del espacio estudiada, no existe entrada o salida por un punto cualquiera (frontera o interior), la masa en esta región se mantiene constante. Esta es la ley de la conservación de la masa, que podemos enunciarla, pues, de la siguiente manera: &amp;lt;br /&amp;gt;&lt;br /&gt;
''&amp;quot;En toda reacción química la masa se conserva, esto es, la masa total de los reactivos es igual a la masa total de los productos&amp;quot;'' &amp;lt;br /&amp;gt;&lt;br /&gt;
La ley de conservación de masas exige que no haya una generación espontánea de materia. Es decir, en la región del espacio estudiada, no existe entrada o salida por un punto cualquiera (frontera o interior), la masa en esta región se mantiene constante.&lt;br /&gt;
&lt;br /&gt;
Esta suposición, en términos de variación de masa, puede quedar determinada como:&lt;br /&gt;
&lt;br /&gt;
''Variación de la masa en el tiempo = flujo de masa a través de la frontera por unidad de tiempo + flujo de masa generada en el interior por unidad de tiempo. ''&lt;br /&gt;
&lt;br /&gt;
== Ley de Fick ==&lt;br /&gt;
Se trata de una ley cuantitativa en forma diferencial que describe la difusión de materia o energía en un medio en el que inicialmente existe equilibrio químico o físico. Esta ley se trata de una generalización de los fenómenos descritos por la '''Ley de Fourier''', ya que esta es una consideración concreta del calor.&lt;br /&gt;
&lt;br /&gt;
La ley de Fick anuncia que en el caso de existir diferencias de concentración en cualquier especie, el paso de estas especies se llevará a cabo desde las regiones con mayor concentración a las de menor. Formulado matemáticamente:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;F(x,t)=-D\frac{\partial u}{\partial x}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Donde &amp;lt;math&amp;gt;F&amp;lt;/math&amp;gt; es el flujo de la sustancia y &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; el coeficiente de difusión, que representa la facilidad en que un soluto particular se mueve por un disolvente determinado.&lt;br /&gt;
&lt;br /&gt;
La ley de Fick establece que el flujo de difusión del contaminante es proporcional a la variación de concentración:&lt;br /&gt;
&amp;lt;math&amp;gt; F(x,t)=-D\frac{\partial u}{\partial x} &amp;lt;/math&amp;gt;&lt;br /&gt;
donde D es el coeficiente de difusión (medido en &amp;lt;math&amp;gt; \frac{m^2}{s} &amp;lt;/math&amp;gt;), que depende de las propiedades físicas de los compuestos, y que se supone constante D=1.&lt;br /&gt;
&lt;br /&gt;
= Modelización de la ecuación diferencial =&lt;br /&gt;
&lt;br /&gt;
Aplicando el principio de conservación de la masa y la ley de Fourier, definimos la variable &amp;lt;math&amp;gt; u(x,t)&amp;lt;/math&amp;gt; en unidades de sustancia por área, es decir, concentración por superficie del tubo.&lt;br /&gt;
&lt;br /&gt;
Consideramos &amp;lt;math&amp;gt; A &amp;lt;/math&amp;gt; como variable superficie, y tomamos un pequeño trozo, definido por &amp;lt;math&amp;gt;\Delta x&amp;lt;/math&amp;gt;. Entonces, para obtener la variación de la masa en el tiempo:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; A u(x,t) \Delta x &amp;lt;/math&amp;gt; &lt;br /&gt;
&lt;br /&gt;
Y derivando en el tiempo:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; A u_t(x,t) \Delta x &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
obtenemos el primer término de la igualdad anteriormente enunciada.&lt;br /&gt;
&lt;br /&gt;
En el segundo, consideramos nulo el flujo de masa en los puntos interiores por unidad de tiempo, pues suponemos la tubería perfecta y sin sumideros.&lt;br /&gt;
&lt;br /&gt;
Como la superﬁcie lateral del tubo está aislada, solamente habrá flujo de sustancia en la dirección del eje &amp;lt;math&amp;gt;x&amp;lt;/math&amp;gt;. Si &amp;lt;math&amp;gt;F(x,t)&amp;gt; 0&amp;lt;/math&amp;gt; pensamos que el ﬂujo va hacia la derecha, si &amp;lt;math&amp;gt;F(x,t)&amp;lt; 0&amp;lt;/math&amp;gt;, este va a hacia la izquierda. El ﬂujo de&lt;br /&gt;
calor en un intervalo &amp;lt;math&amp;gt;[x, x + ∆x ] &amp;lt;/math&amp;gt; viene dado dado por:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;F(x,t)A-F(x+\Delta x, t)A&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Con lo que queda &amp;lt;math&amp;gt;A u_t(x,t) \Delta x = F(x,t)A-F(x+\Delta x, t)A&amp;lt;/math&amp;gt;, y al dividir &amp;lt;math&amp;gt;A \Delta x&amp;lt;/math&amp;gt;, nos queda &amp;lt;math&amp;gt;u_t(x,t)= \frac {F(x,t)-F(x+\Delta x, t)}{\Delta x}&amp;lt;/math&amp;gt;. &amp;lt;br /&amp;gt;&lt;br /&gt;
Como &amp;lt;math&amp;gt;\Delta x \rightarrow 0 &amp;lt;/math&amp;gt;, &amp;lt;math&amp;gt;u_t(x,t)= -F_x(x,t)&amp;lt;/math&amp;gt;, y aplicando ley de Fick, &amp;lt;math&amp;gt;u_t(x,t)=-\frac{\partial }{\partial x}(-D u_x(x,t)) = D u_xx(x,t) &amp;lt;/math&amp;gt;.&amp;lt;br /&amp;gt;&lt;br /&gt;
Con lo que resulta una ecuación en derivadas parciales que determina la concentración de sustancia:&lt;br /&gt;
&amp;lt;math&amp;gt;u_t(x,t)- D u_xx(x,t)= 0 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Planteamiento del problema bien propuesto ==&lt;br /&gt;
&lt;br /&gt;
Suponemos que el flujo será nula al haber una tapa en los extremos del tubo, con lo que el problema bien propuesto quedaría::&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\begin{cases}&lt;br /&gt;
u_t(x,t)- D u_{xx}(x,t)= 0 ; x\in (0,5) \\&lt;br /&gt;
u(x,0)=u_0 , x\in (0,5) \\&lt;br /&gt;
u_x(0,t)=0 , u_x(5,t)=0 ; t\geq 0&lt;br /&gt;
\end{cases}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= Resolución numérica =&lt;br /&gt;
Para la resolución de ésta ecuación necesitaremos mínimo tres condiciones, dos de las cuales serán de contorno, y la otra será la condición inicial.Si suponemos &amp;lt;math&amp;gt;u_0(x,0)&amp;lt;/math&amp;gt;, entonces:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; u_0(x,0)=\begin{cases}&lt;br /&gt;
0,  si x\leq 3\\&lt;br /&gt;
3,  si x&amp;gt;3&lt;br /&gt;
\end{cases}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Resolución por el método de las diferencias finitas ==&lt;br /&gt;
En el primer caso particular que estudiaremos, trataremos de obtener una resolución numérica del problema anteriormente planteado, dónde tenemos las fronteras aisladas y las concentraciones iniciales conocidas:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\begin{cases}&lt;br /&gt;
u_t(x,t)- D u_{xx}(x,t)= 0; x\in (0,5), t\geq 0 \\&lt;br /&gt;
u_0(x,0), x\in (0,5) \\&lt;br /&gt;
u_x(0,t)=0, u_x(5,t)=0, t\geq 0&lt;br /&gt;
\end{cases}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
La resolución por el método de las diferencias finitas se basa en expresar el problema continuo a un sistema discreto de ecuaciones diferenciales de primer orden. Particularizando para nuestro caso con las condiciones dadas, el problema planteado sería:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\begin{cases}&lt;br /&gt;
u'_n(t)+\frac{-u_{n-1}(t)+2u_n(t)+u_{n+1}(t)}{h^2} \\&lt;br /&gt;
\frac{u_1(t)-u_-1(t)}{2h} \rightarrow u_1(t)=u_-1(t) \\&lt;br /&gt;
\frac{u_{N+1}(t)-u_{N-1}(t)}{2h} \rightarrow u_{N+1}(t)=u_{N-1}\\&lt;br /&gt;
u_n(0)=u^0(x)&lt;br /&gt;
\end{cases}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Por lo que tenemos un sistema de la forma:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\begin{cases}&lt;br /&gt;
U'(t)+KU(t)=F(t)=0\\&lt;br /&gt;
U(0)=U^0&lt;br /&gt;
\end{cases}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Con &amp;lt;math&amp;gt;N+1&amp;lt;/math&amp;gt; ecuaciones.&lt;br /&gt;
==== Resolución por método del trapecio ====&lt;br /&gt;
Suponiendo que en el instante inicial se verifica  :&amp;lt;math&amp;gt;&lt;br /&gt;
u(x,0)=\left\{\begin{matrix}\\0, x≤3\\3, x&amp;gt;3\end{matrix}\right.&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Si tomamos &amp;lt;math&amp;gt;\triangle t= \triangle x/4&amp;lt;/math&amp;gt; en &amp;lt;math&amp;gt;t\in\ [0,5]&amp;lt;/math&amp;gt;, con &amp;lt;math&amp;gt;\triangle x=0.1&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
El código en MATLAB del método sería:&lt;br /&gt;
&lt;br /&gt;
{{matlab| codigo=&lt;br /&gt;
%Datos&lt;br /&gt;
L=5; %Longitud de varilla&lt;br /&gt;
T=5; %tiempo final&lt;br /&gt;
q=1;&lt;br /&gt;
%Discretización temporal y espacial&lt;br /&gt;
dx=0.1; % Paso en espacio&lt;br /&gt;
N=L/dx; %Número de subintervalos&lt;br /&gt;
x=0:dx:L; % Vector de espacio&lt;br /&gt;
dt=dx/4; % Paso en tiempo&lt;br /&gt;
t=0:dt:T; % Vector de tiempos&lt;br /&gt;
% Matriz de coeficientes. Aproximacion de -q*u_xx&lt;br /&gt;
K=2*diag(ones(1,N+1))-diag(ones(1,N),1)-diag(ones(1,N),-1);&lt;br /&gt;
K(1,2)=-2;&lt;br /&gt;
K(N+1,N)=-2;&lt;br /&gt;
K=q*K/dx^2;&lt;br /&gt;
% Calculamos u0 condición inicial&lt;br /&gt;
u0=[zeros(1,1+N*3/5),3*ones(1,N*2/5)]';&lt;br /&gt;
% F=0 (no la consideramos)&lt;br /&gt;
sol(1,:)=u0'; % Guardamos la solucion&lt;br /&gt;
U=u0; % Inicializacion&lt;br /&gt;
% Calculamos U_n -&amp;gt; U_n+1&lt;br /&gt;
%Aplicamos método trapecio método del trapecio&lt;br /&gt;
for j=1:length(t)-1&lt;br /&gt;
U=(eye(N+1)+(dt*K)/2)\((eye(N+1)-(K*dt)/2)*U);&lt;br /&gt;
sol(j+1,:)= U'; % Guardamos solucion&lt;br /&gt;
end&lt;br /&gt;
%Dibujamos la solucion&lt;br /&gt;
[xx,tt]=meshgrid(x,t);&lt;br /&gt;
surf(xx,tt,sol);&lt;br /&gt;
}}&lt;br /&gt;
[[Archivo:nur.jpg|500px|thumb|centro|Gráfica concentración / espacio-tiempo. Resolución por el método del trapecio.]]&lt;br /&gt;
&lt;br /&gt;
==== Resolución por método de Euler explícito ====&lt;br /&gt;
{{matlab| codigo=&lt;br /&gt;
%Datos&lt;br /&gt;
L=5; %Longitud de varilla&lt;br /&gt;
T=5; %tiempo final&lt;br /&gt;
q=1;&lt;br /&gt;
%Discretización temporal y espacial&lt;br /&gt;
dx=0.1; % Paso en espacio&lt;br /&gt;
N=L/dx; %Número de subintervalos&lt;br /&gt;
x=0:dx:L; % Vector de espacio&lt;br /&gt;
dt=dx/20; % Paso en tiempo&lt;br /&gt;
t=0:dt:T; % Vector de tiempos&lt;br /&gt;
% Matriz de coeficientes. Aproximacion de -q*u_xx&lt;br /&gt;
K=2*diag(ones(1,N+1))-diag(ones(1,N),1)-diag(ones(1,N),-1);&lt;br /&gt;
K(1,2)=-2;&lt;br /&gt;
K(N+1,N)=-2;&lt;br /&gt;
K=q*K/dx^2;&lt;br /&gt;
% Calculamos u0 condición inicial&lt;br /&gt;
u0=[zeros(1,1+N*3/5),3*ones(1,N*2/5)]';&lt;br /&gt;
% F=0 (no la consideramos)&lt;br /&gt;
sol(1,:)=u0'; % Guardamos la solucion&lt;br /&gt;
U=u0; % Inicializacion&lt;br /&gt;
% Calculamos U_n -&amp;gt; U_n+1&lt;br /&gt;
%Aplicamos método Euler explícito&lt;br /&gt;
for j=1:length(t)-1 &lt;br /&gt;
k1=-K*U; % Calculamos k1=h*f(tn,yn)&lt;br /&gt;
k2=-K*(U+dt*k1); % Calculamos k2=h*f(tn+h/2,yn+1/2*k1)&lt;br /&gt;
% Meto los datos en el vector&lt;br /&gt;
U=U+(dt/2)*(k1+k2);&lt;br /&gt;
sol(j+1,:)= U'; % Guardamos solucion&lt;br /&gt;
end&lt;br /&gt;
%Dibujamos la solucion&lt;br /&gt;
[xx,tt]=meshgrid(x,t);&lt;br /&gt;
surf(xx,tt,sol);&lt;br /&gt;
}}&lt;br /&gt;
[[Archivo:mig.jpg|500px|thumb|centro|Gráfica concentración / espacio-tiempo. Resolución por el método de Euler explícito.]]&lt;br /&gt;
&lt;br /&gt;
==== Resolución por método de Euler implícito ====&lt;br /&gt;
{{matlab| codigo=&lt;br /&gt;
%Datos&lt;br /&gt;
L=5; %Longitud de varilla&lt;br /&gt;
T=5;&lt;br /&gt;
q=1;&lt;br /&gt;
%Discretización temporal y espacial&lt;br /&gt;
dx=0.1; % Paso en espacio&lt;br /&gt;
N=L/dx; %Número de subintervalos&lt;br /&gt;
h=L/N;&lt;br /&gt;
x=0:h:L; % Vector de espacio&lt;br /&gt;
dt=h/20; % Paso en tiempo&lt;br /&gt;
t=0:dt:T; % Vector de tiempos&lt;br /&gt;
% Matriz de coeficientes. Aproximacion de -q*u_xx&lt;br /&gt;
K=2*diag(ones(1,N+1))-diag(ones(1,N),1)-diag(ones(1,N),-1);&lt;br /&gt;
K(1,2)=-2;&lt;br /&gt;
K(N+1,N)=-2;&lt;br /&gt;
K=q*K/h^2;&lt;br /&gt;
% Calculamos u0 condición inicial&lt;br /&gt;
u0=[zeros(1,1+N*3/5),3*ones(1,N*2/5)]';&lt;br /&gt;
% F=0 (no la consideramos)&lt;br /&gt;
sol(1,:)=u0'; % Guardamos la solucion&lt;br /&gt;
U=u0; % Inicializacion&lt;br /&gt;
% Calculamos U_n -&amp;gt; U_n+1&lt;br /&gt;
% Aplicamos método implícito&lt;br /&gt;
for j=1:length(t)-1 &lt;br /&gt;
U=U-dt*K*U; &lt;br /&gt;
sol(j+1,:)= U'; % Guardamos solucion&lt;br /&gt;
end&lt;br /&gt;
%Dibujamos la solucion&lt;br /&gt;
[xx,tt]=meshgrid(x,t);&lt;br /&gt;
surf(xx,tt,sol);&lt;br /&gt;
}}&lt;br /&gt;
[[Archivo:migap.jpg|500px|thumb|centro|Gráfica concentración / espacio-tiempo. Resolución por el método de Euler implícito.]]&lt;br /&gt;
&lt;br /&gt;
==== Resolución por método de Euler modificado ====&lt;br /&gt;
{{matlab| codigo=&lt;br /&gt;
%Datos&lt;br /&gt;
L=5; %Longitud de varilla&lt;br /&gt;
T=5;&lt;br /&gt;
q=1;&lt;br /&gt;
%Discretización temporal y espacial&lt;br /&gt;
dx=0.1; % Paso en espacio&lt;br /&gt;
N=L/dx; %Número de subintervalos&lt;br /&gt;
h=L/N;&lt;br /&gt;
x=0:h:L; % Vector de espacio&lt;br /&gt;
dt=h/20; % Paso en tiempo&lt;br /&gt;
t=0:dt:T; % Vector de tiempos&lt;br /&gt;
% Matriz de coeficientes. Aproximacion de -q*u_xx&lt;br /&gt;
K=2*diag(ones(1,N+1))-diag(ones(1,N),1)-diag(ones(1,N),-1);&lt;br /&gt;
K(1,2)=-2;&lt;br /&gt;
K(N+1,N)=-2;&lt;br /&gt;
K=q*K/h^2;&lt;br /&gt;
% Calculamos u0 condición inicial&lt;br /&gt;
u0=[zeros(1,1+N*3/5),3*ones(1,N*2/5)]';&lt;br /&gt;
% F=0 (no la consideramos)&lt;br /&gt;
sol(1,:)=u0'; % Guardamos la solucion&lt;br /&gt;
U=u0; % Inicializacion&lt;br /&gt;
% Calculamos U_n -&amp;gt; U_n+1&lt;br /&gt;
for j=1:length(t)-1 &lt;br /&gt;
k1=-K*U; % Calculamos k1=h*f(tn,yn)&lt;br /&gt;
k2=-K*(U+dt*k1); % Calculamos k2=h*f(tn+h/2,yn+1/2*k1)&lt;br /&gt;
% Meto los datos en el vector&lt;br /&gt;
U=U+(dt/2)*(k1+k2);&lt;br /&gt;
sol(j+1,:)= U'; % Guardamos solucion&lt;br /&gt;
end&lt;br /&gt;
%Dibujamos la solucion&lt;br /&gt;
[xx,tt]=meshgrid(x,t);&lt;br /&gt;
surf(xx,tt,sol);&lt;br /&gt;
}}&lt;br /&gt;
[[Archivo: mig.jpg|500px|thumb|centro|Gráfica concentración / espacio-tiempo. Resolución por el método de Euler modificado.]]&lt;br /&gt;
&lt;br /&gt;
== Conservación de la masa total de contaminante ==&lt;br /&gt;
A continuación demostraremos que la masa total de contaminante en el tubo se conserva a lo largo del tiempo, que se puede deducir a partir de la ecuación sin tener que resolverla. Integramos la ecuación y debido a las condiciones de frontera:&lt;br /&gt;
&amp;lt;math&amp;gt;\frac d {dt} \int_0^5 u(x,t)\,dx= \int_0^5 u_{xx}(x,t)\,dx= u_x(x,t)|_0^5=0&amp;lt;/math&amp;gt;&lt;br /&gt;
{{matlab| codigo=&lt;br /&gt;
%Datos&lt;br /&gt;
L=5; %Longitud de varilla&lt;br /&gt;
T=5;&lt;br /&gt;
q=1;&lt;br /&gt;
%Discretización temporal y espacial&lt;br /&gt;
N=500; %Número de subintervalos&lt;br /&gt;
h=L/N;&lt;br /&gt;
x=0:h:L; % Vector de espacio&lt;br /&gt;
dt=h/4; % Paso en tiempo&lt;br /&gt;
t=0:dt:T; % Vector de tiempos&lt;br /&gt;
% Matriz de coeficientes. Aproximacion de -q*u_xx&lt;br /&gt;
K=2*diag(ones(1,N+1))-diag(ones(1,N),1)-diag(ones(1,N),-1);&lt;br /&gt;
K(1,2)=-2;&lt;br /&gt;
K(N+1,N)=-2;&lt;br /&gt;
K=q*K/h^2;&lt;br /&gt;
% Calculamos u0 condición inicial&lt;br /&gt;
u0=[zeros(1,1+N*3/5),3*ones(1,N*2/5)]';&lt;br /&gt;
% F=0 (no la consideramos)&lt;br /&gt;
sol(1,:)=u0'; % Guardamos la solucion&lt;br /&gt;
U=u0; % Inicializacion&lt;br /&gt;
% Calculamos U_n -&amp;gt; U_n+1&lt;br /&gt;
for j=1:length(t)-1 &lt;br /&gt;
U=(eye(N+1)+dt*K)\(U+dt*F); &lt;br /&gt;
sol(j+1,:)= U'; % Guardamos solucion&lt;br /&gt;
end&lt;br /&gt;
% Calculamos el area de la funcion en cada tiempo (area = cantidad de contaminante)&lt;br /&gt;
areas=zeros(1,length(t));&lt;br /&gt;
for i=1:length(t)&lt;br /&gt;
f=sol(i,:);&lt;br /&gt;
w=trapz(x,f);&lt;br /&gt;
area(i)=w;&lt;br /&gt;
end&lt;br /&gt;
%Dibujamos&lt;br /&gt;
plot(t,area)&lt;br /&gt;
xlabel('Tiempo')&lt;br /&gt;
ylabel('Cantidad de contaminante')&lt;br /&gt;
}}&lt;br /&gt;
[[Archivo:aleeex.jpg|500px|thumb|centro|Conservación masa total de contaminante]]&lt;br /&gt;
[[Archivo:gime.jpg|500px|thumb|centro|Conservación masa total de contaminante]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Concentración a lo largo del tiempo==&lt;br /&gt;
La concentración de la sustancia contaminante en la varilla varía con el tiempo, pero en un cierto momento esta concentración se va homogeneizando, y deja de variar, entrando en un estado estacionario::&lt;br /&gt;
&amp;lt;math&amp;gt; u_t(x,t)- D*u_{xx}(x,t)=0 &amp;lt;/math&amp;gt; :    &lt;br /&gt;
&amp;lt;math&amp;gt; u_t(x,t)=0 \rightarrow D*u_{xx}(x,t)=0 &amp;lt;/math&amp;gt; :&lt;br /&gt;
&amp;lt;math&amp;gt; u=c_1*x+c_2 &amp;lt;/math&amp;gt; &lt;br /&gt;
Utizando Matlab comprobaremos que &amp;lt;math&amp;gt; c_1=0 &amp;lt;/math&amp;gt; &amp;lt;math&amp;gt; c_2=1.17 &amp;lt;/math&amp;gt;&lt;br /&gt;
Para tiempos grandes la concentración se estabiliza en torno a 1.17 en toda la varilla, de forma que la solución se asemejará a una función lineal constante.&lt;br /&gt;
&lt;br /&gt;
{{matlab| codigo=&lt;br /&gt;
%Datos&lt;br /&gt;
L=5; %Longitud de varilla&lt;br /&gt;
T=50;&lt;br /&gt;
q=1;&lt;br /&gt;
%Discretización temporal y espacial&lt;br /&gt;
dx=0.1; % Paso en espacio&lt;br /&gt;
N=L/dx; %Número de subintervalos&lt;br /&gt;
h=L/N;&lt;br /&gt;
x=0:h:L; % Vector de espacio&lt;br /&gt;
dt=h/4; % Paso en tiempo&lt;br /&gt;
t=0:dt:T; % Vector de tiempos&lt;br /&gt;
% Matriz de coeficientes. Aproximacion de -q*u_xx&lt;br /&gt;
K=2*diag(ones(1,N+1))-diag(ones(1,N),1)-diag(ones(1,N),-1);&lt;br /&gt;
K(1,2)=-2;&lt;br /&gt;
K(N+1,N)=-2;&lt;br /&gt;
K=q*K/h^2;&lt;br /&gt;
% Calculamos u0 condición inicial&lt;br /&gt;
u0=[zeros(1,1+N*3/5),3*ones(1,N*2/5)]';&lt;br /&gt;
% F=0 (no la consideramos)&lt;br /&gt;
sol(1,:)=u0'; % Guardamos la solucion&lt;br /&gt;
U=u0; % Inicializacion&lt;br /&gt;
% Calculamos U_n -&amp;gt; U_n+1&lt;br /&gt;
%Aplicamos método trapecio método del trapecio&lt;br /&gt;
for j=1:length(t)-1&lt;br /&gt;
U=(eye(N+1)+(dt*K)/2)\((eye(N+1)-(K*dt)/2)*U);&lt;br /&gt;
sol(j+1,:)= U'; % Guardamos solucion&lt;br /&gt;
end&lt;br /&gt;
%Solución estacionaria&lt;br /&gt;
a=sol(length(t),:);&lt;br /&gt;
b=sol(1,:);&lt;br /&gt;
c=sol((length(t)-1)/50+1,:);&lt;br /&gt;
d=sol((length(t)-1)*2/50+1,:);&lt;br /&gt;
e=sol((length(t)-1)*10/50+1,:);&lt;br /&gt;
hold on&lt;br /&gt;
plot(x,a,'xk','linewidth',2);&lt;br /&gt;
plot(x,b,'-m','linewidth',1);&lt;br /&gt;
plot(x,c,'-g','linewidth',1);&lt;br /&gt;
plot(x,d,'-y','linewidth',1);&lt;br /&gt;
plot(x,e,'-b','linewidth',1);&lt;br /&gt;
legend('u(50s)','u(0s)','u(1s)','u(2s)','u(10s)');&lt;br /&gt;
xlabel('Posición en la varilla')&lt;br /&gt;
ylabel('Concentracion')&lt;br /&gt;
hold off&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Soluciones(t).jpg|500px|thumb|centro|Soluciones a lo largo del tiempo]]&lt;br /&gt;
&lt;br /&gt;
La distancia entre la solución estacionaria y las soluciones para los siguientes instantes: 0s, 1s, 2s y 10s; se puede apreciar en la imagen anterior. &lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
Una vez analizado los datos, se demuestra que la sustancia contaminante se estabiliza en t=9.98s, con un error del 5%.&lt;br /&gt;
&lt;br /&gt;
En el caso de que consideremos Δx'=Δx/10,el tiempo en el que se estabiliza la cantidad de sustancia contaminante será t=10s, dato que será más preciso debido a que el paso realizado en el programa es menor.&lt;br /&gt;
&lt;br /&gt;
==Nueva condición de frontera==&lt;br /&gt;
&lt;br /&gt;
Si colocamos un limpiador, que elimina la sustancia contaminante, en el extremo izquierdo de la varilla, varían las condiciones de contorno del problema. En este caso, en el extremo izquierdo, la condición inicial será de tipo Dirichlet ya que se esta variación esta provocada por un mecanismo físico externo que actúa sobre el extremo. &amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;math&amp;gt;\begin{cases}&lt;br /&gt;
u_t(x,t)- D u_{xx}(x,t)= 0 ; x\in (0,5) \\&lt;br /&gt;
u(x,0)=u_0 , x\in (0,5) \\&lt;br /&gt;
u(0,t)=0 , u_x(5,t)=0 ; t\geq 0&lt;br /&gt;
\end{cases}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Dadas las nuevas condiciones, resolvemos el problema por el método de diferencias finitas con la ayuda de Matlab.&lt;br /&gt;
&lt;br /&gt;
{{matlab| codigo=&lt;br /&gt;
%Datos&lt;br /&gt;
L=5; %Longitud de varilla&lt;br /&gt;
T=5; %tiempo final&lt;br /&gt;
q=1;&lt;br /&gt;
%Discretización temporal y espacial&lt;br /&gt;
dx=0.1; % Paso en espacio&lt;br /&gt;
N=L/dx; %Número de subintervalos&lt;br /&gt;
x=0:dx:L;% Vector de espacio&lt;br /&gt;
dt=dx/4; % Paso en tiempo&lt;br /&gt;
t=0:dt:T; % Vector de tiempos&lt;br /&gt;
% Matriz de coeficientes. Aproximacion de -q*u_xx&lt;br /&gt;
K=2*diag(ones(1,N))-diag(ones(1,N-1),1)-diag(ones(1,N-1),-1);&lt;br /&gt;
K(N,N-1)=-2;&lt;br /&gt;
K=q*K/dx^2;&lt;br /&gt;
% Matriz F&lt;br /&gt;
F=zeros(N,1);&lt;br /&gt;
% Calculamos u0 condición inicial&lt;br /&gt;
u0=[zeros(1,N*3/5),3*ones(1,N*2/5)]';&lt;br /&gt;
sol(1,:)=[0,u0']; &lt;br /&gt;
U=u0; % Inicializacion&lt;br /&gt;
% Calculamos U_n -&amp;gt; U_n+1&lt;br /&gt;
%Aplicamos método trapecio método del trapecio&lt;br /&gt;
for j=1:length(t)-1&lt;br /&gt;
U=(eye(N)+(dt*K))\(dt*F+U);&lt;br /&gt;
sol(j+1,:)= [0,U'];&lt;br /&gt;
end&lt;br /&gt;
%Dibujamos la solucion&lt;br /&gt;
[xx,tt]=meshgrid(x,t);&lt;br /&gt;
surf(xx,tt,sol);&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Xata.JPG|500px|thumb|centro|Solución al variar las condiciones de contorno del problema.]]&lt;br /&gt;
&lt;br /&gt;
Observando la gráfica, y por la presencia del limpiador en el extremo de la varilla, para tiempos grandes la cantidad de sustancia contaminante será nula en toda la varilla. En realidad, esto no es del todo cierto puesto que la sustancia no llega a eliminarse completamente, ya que el limpiador solo elimina la sustancia contaminante en el extremo izquierdo. Aunque la concentración en todos los puntos disminuye de manera exponencial, permanece asintótica a 0.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Trapotito.JPG|500px|thumb|centro|Momento en el que se estabiliza con la presencia del limpiador.]]&lt;br /&gt;
&lt;br /&gt;
==Resolución por el método de Fourier==&lt;br /&gt;
&lt;br /&gt;
Las condiciones de frontera del problema son homogéneas, por lo que podemos aplicar este método de cálculo, sin realizar ningún cambio.&lt;br /&gt;
El primer paso es resolver el problema de autovalores asociado:&lt;br /&gt;
&amp;lt;math&amp;gt;\begin{cases}&lt;br /&gt;
y''+λy=0 x \in (0,5) \\&lt;br /&gt;
y'(0)=0 \\&lt;br /&gt;
y'(5)=0&lt;br /&gt;
\end{cases}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;/div&gt;</summary>
		<author><name>Karlo André</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Difusi%C3%B3n_de_una_sustancia_contaminante_(Grupo_10)&amp;diff=12845</id>
		<title>Difusión de una sustancia contaminante (Grupo 10)</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Difusi%C3%B3n_de_una_sustancia_contaminante_(Grupo_10)&amp;diff=12845"/>
				<updated>2014-05-19T15:50:27Z</updated>
		
		<summary type="html">&lt;p&gt;Karlo André: /* Resolución por el método de Fourier */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;''''''Texto en negrita''''''[[Archivo:nuriat.png|200px|thumb|right|Tubo con sustancia contaminante]]&lt;br /&gt;
La difusión implica un movimiento espontáneo y desordenado de moléculas individuales y, especialmente, nos interesa la difusión de moléculas de una sustancia disuelta en otra.&lt;br /&gt;
&lt;br /&gt;
La difusión de una sustancia puede considerarse análoga al flujo de calor, y la ley de Fick establece que el ritmo de difusión por unidad de superficie, en dirección perpendicular a ésta, es proporcional al gradiente de la concentración de esa sustancia en esa dirección. La concentración es la masa de la sustancia por unidad de volumen, y el gradiente de concentración es la variación de concentración por unidad de distancia.&lt;br /&gt;
&lt;br /&gt;
Para determinar como se distribuye la concentración de una sustancia contaminante tomaremos como ejemplo un tubo largo compuesto por dos sustancias de las cuáles una de ellas es contaminante.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
= Simplificación del problema =&lt;br /&gt;
&lt;br /&gt;
Para que este problema resulte más sencillo aplicaremos una serie de condiciones, facilitando el cálculo del mismo.&lt;br /&gt;
&lt;br /&gt;
En primer lugar denotaremos su concentración &amp;lt;math&amp;gt; u &amp;lt;/math&amp;gt;, concentración de contaminante en cada posición del tubo y constante en cada sección, medida en &amp;lt;math&amp;gt; \frac{mol}{m^2*s} &amp;lt;/math&amp;gt;. &lt;br /&gt;
&lt;br /&gt;
Supondremos que el tubo mide L=5 m, ocupando el intervalo &amp;lt;math&amp;gt; x \in (0,L) &amp;lt;/math&amp;gt;, y que la concentración es la misma en cualquier punto de la sección transversal del tubo. Por tanto, la concentración dependerá unicamente de dos variables &amp;lt;math&amp;gt; u = u(x,t) &amp;lt;/math&amp;gt;. En los extremos se ha colocado un aislante que hace que el flujo de contaminante al exterior del tubo sea nulo. Además, consideraremos la simplificación de que se trata de un tubo aislado por sus laterales, pero abierto por las bases del cilindro.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Ley de conservación de masa ==&lt;br /&gt;
&lt;br /&gt;
Tras una serie de experimentos realizados por Lavoisier, se pusieron de manifiesto que si tenemos en cuenta todas las sustancias que forman parte en una reacción química y todos los productos formados, nunca varía la masa. Esta ley exige que no haya una generación espontánea de materia. Es decir, en la región del espacio estudiada, no existe entrada o salida por un punto cualquiera (frontera o interior), la masa en esta región se mantiene constante. Esta es la ley de la conservación de la masa, que podemos enunciarla, pues, de la siguiente manera: &amp;lt;br /&amp;gt;&lt;br /&gt;
''&amp;quot;En toda reacción química la masa se conserva, esto es, la masa total de los reactivos es igual a la masa total de los productos&amp;quot;'' &amp;lt;br /&amp;gt;&lt;br /&gt;
La ley de conservación de masas exige que no haya una generación espontánea de materia. Es decir, en la región del espacio estudiada, no existe entrada o salida por un punto cualquiera (frontera o interior), la masa en esta región se mantiene constante.&lt;br /&gt;
&lt;br /&gt;
Esta suposición, en términos de variación de masa, puede quedar determinada como:&lt;br /&gt;
&lt;br /&gt;
''Variación de la masa en el tiempo = flujo de masa a través de la frontera por unidad de tiempo + flujo de masa generada en el interior por unidad de tiempo. ''&lt;br /&gt;
&lt;br /&gt;
== Ley de Fick ==&lt;br /&gt;
Se trata de una ley cuantitativa en forma diferencial que describe la difusión de materia o energía en un medio en el que inicialmente existe equilibrio químico o físico. Esta ley se trata de una generalización de los fenómenos descritos por la '''Ley de Fourier''', ya que esta es una consideración concreta del calor.&lt;br /&gt;
&lt;br /&gt;
La ley de Fick anuncia que en el caso de existir diferencias de concentración en cualquier especie, el paso de estas especies se llevará a cabo desde las regiones con mayor concentración a las de menor. Formulado matemáticamente:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;F(x,t)=-D\frac{\partial u}{\partial x}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Donde &amp;lt;math&amp;gt;F&amp;lt;/math&amp;gt; es el flujo de la sustancia y &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; el coeficiente de difusión, que representa la facilidad en que un soluto particular se mueve por un disolvente determinado.&lt;br /&gt;
&lt;br /&gt;
La ley de Fick establece que el flujo de difusión del contaminante es proporcional a la variación de concentración:&lt;br /&gt;
&amp;lt;math&amp;gt; F(x,t)=-D\frac{\partial u}{\partial x} &amp;lt;/math&amp;gt;&lt;br /&gt;
donde D es el coeficiente de difusión (medido en &amp;lt;math&amp;gt; \frac{m^2}{s} &amp;lt;/math&amp;gt;), que depende de las propiedades físicas de los compuestos, y que se supone constante D=1.&lt;br /&gt;
&lt;br /&gt;
= Modelización de la ecuación diferencial =&lt;br /&gt;
&lt;br /&gt;
Aplicando el principio de conservación de la masa y la ley de Fourier, definimos la variable &amp;lt;math&amp;gt; u(x,t)&amp;lt;/math&amp;gt; en unidades de sustancia por área, es decir, concentración por superficie del tubo.&lt;br /&gt;
&lt;br /&gt;
Consideramos &amp;lt;math&amp;gt; A &amp;lt;/math&amp;gt; como variable superficie, y tomamos un pequeño trozo, definido por &amp;lt;math&amp;gt;\Delta x&amp;lt;/math&amp;gt;. Entonces, para obtener la variación de la masa en el tiempo:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; A u(x,t) \Delta x &amp;lt;/math&amp;gt; &lt;br /&gt;
&lt;br /&gt;
Y derivando en el tiempo:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; A u_t(x,t) \Delta x &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
obtenemos el primer término de la igualdad anteriormente enunciada.&lt;br /&gt;
&lt;br /&gt;
En el segundo, consideramos nulo el flujo de masa en los puntos interiores por unidad de tiempo, pues suponemos la tubería perfecta y sin sumideros.&lt;br /&gt;
&lt;br /&gt;
Como la superﬁcie lateral del tubo está aislada, solamente habrá flujo de sustancia en la dirección del eje &amp;lt;math&amp;gt;x&amp;lt;/math&amp;gt;. Si &amp;lt;math&amp;gt;F(x,t)&amp;gt; 0&amp;lt;/math&amp;gt; pensamos que el ﬂujo va hacia la derecha, si &amp;lt;math&amp;gt;F(x,t)&amp;lt; 0&amp;lt;/math&amp;gt;, este va a hacia la izquierda. El ﬂujo de&lt;br /&gt;
calor en un intervalo &amp;lt;math&amp;gt;[x, x + ∆x ] &amp;lt;/math&amp;gt; viene dado dado por:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;F(x,t)A-F(x+\Delta x, t)A&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Con lo que queda &amp;lt;math&amp;gt;A u_t(x,t) \Delta x = F(x,t)A-F(x+\Delta x, t)A&amp;lt;/math&amp;gt;, y al dividir &amp;lt;math&amp;gt;A \Delta x&amp;lt;/math&amp;gt;, nos queda &amp;lt;math&amp;gt;u_t(x,t)= \frac {F(x,t)-F(x+\Delta x, t)}{\Delta x}&amp;lt;/math&amp;gt;. &amp;lt;br /&amp;gt;&lt;br /&gt;
Como &amp;lt;math&amp;gt;\Delta x \rightarrow 0 &amp;lt;/math&amp;gt;, &amp;lt;math&amp;gt;u_t(x,t)= -F_x(x,t)&amp;lt;/math&amp;gt;, y aplicando ley de Fick, &amp;lt;math&amp;gt;u_t(x,t)=-\frac{\partial }{\partial x}(-D u_x(x,t)) = D u_xx(x,t) &amp;lt;/math&amp;gt;.&amp;lt;br /&amp;gt;&lt;br /&gt;
Con lo que resulta una ecuación en derivadas parciales que determina la concentración de sustancia:&lt;br /&gt;
&amp;lt;math&amp;gt;u_t(x,t)- D u_xx(x,t)= 0 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Planteamiento del problema bien propuesto ==&lt;br /&gt;
&lt;br /&gt;
Suponemos que el flujo será nula al haber una tapa en los extremos del tubo, con lo que el problema bien propuesto quedaría::&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\begin{cases}&lt;br /&gt;
u_t(x,t)- D u_{xx}(x,t)= 0 ; x\in (0,5) \\&lt;br /&gt;
u(x,0)=u_0 , x\in (0,5) \\&lt;br /&gt;
u_x(0,t)=0 , u_x(5,t)=0 ; t\geq 0&lt;br /&gt;
\end{cases}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= Resolución numérica =&lt;br /&gt;
Para la resolución de ésta ecuación necesitaremos mínimo tres condiciones, dos de las cuales serán de contorno, y la otra será la condición inicial.Si suponemos &amp;lt;math&amp;gt;u_0(x,0)&amp;lt;/math&amp;gt;, entonces:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; u_0(x,0)=\begin{cases}&lt;br /&gt;
0,  si x\leq 3\\&lt;br /&gt;
3,  si x&amp;gt;3&lt;br /&gt;
\end{cases}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Resolución por el método de las diferencias finitas ==&lt;br /&gt;
En el primer caso particular que estudiaremos, trataremos de obtener una resolución numérica del problema anteriormente planteado, dónde tenemos las fronteras aisladas y las concentraciones iniciales conocidas:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\begin{cases}&lt;br /&gt;
u_t(x,t)- D u_{xx}(x,t)= 0; x\in (0,5), t\geq 0 \\&lt;br /&gt;
u_0(x,0), x\in (0,5) \\&lt;br /&gt;
u_x(0,t)=0, u_x(5,t)=0, t\geq 0&lt;br /&gt;
\end{cases}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
La resolución por el método de las diferencias finitas se basa en expresar el problema continuo a un sistema discreto de ecuaciones diferenciales de primer orden. Particularizando para nuestro caso con las condiciones dadas, el problema planteado sería:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\begin{cases}&lt;br /&gt;
u'_n(t)+\frac{-u_{n-1}(t)+2u_n(t)+u_{n+1}(t)}{h^2} \\&lt;br /&gt;
\frac{u_1(t)-u_-1(t)}{2h} \rightarrow u_1(t)=u_-1(t) \\&lt;br /&gt;
\frac{u_{N+1}(t)-u_{N-1}(t)}{2h} \rightarrow u_{N+1}(t)=u_{N-1}\\&lt;br /&gt;
u_n(0)=u^0(x)&lt;br /&gt;
\end{cases}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Por lo que tenemos un sistema de la forma:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\begin{cases}&lt;br /&gt;
U'(t)+KU(t)=F(t)=0\\&lt;br /&gt;
U(0)=U^0&lt;br /&gt;
\end{cases}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Con &amp;lt;math&amp;gt;N+1&amp;lt;/math&amp;gt; ecuaciones.&lt;br /&gt;
==== Resolución por método del trapecio ====&lt;br /&gt;
Suponiendo que en el instante inicial se verifica  :&amp;lt;math&amp;gt;&lt;br /&gt;
u(x,0)=\left\{\begin{matrix}\\0, x≤3\\3, x&amp;gt;3\end{matrix}\right.&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Si tomamos &amp;lt;math&amp;gt;\triangle t= \triangle x/4&amp;lt;/math&amp;gt; en &amp;lt;math&amp;gt;t\in\ [0,5]&amp;lt;/math&amp;gt;, con &amp;lt;math&amp;gt;\triangle x=0.1&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
El código en MATLAB del método sería:&lt;br /&gt;
&lt;br /&gt;
{{matlab| codigo=&lt;br /&gt;
%Datos&lt;br /&gt;
L=5; %Longitud de varilla&lt;br /&gt;
T=5; %tiempo final&lt;br /&gt;
q=1;&lt;br /&gt;
%Discretización temporal y espacial&lt;br /&gt;
dx=0.1; % Paso en espacio&lt;br /&gt;
N=L/dx; %Número de subintervalos&lt;br /&gt;
x=0:dx:L; % Vector de espacio&lt;br /&gt;
dt=dx/4; % Paso en tiempo&lt;br /&gt;
t=0:dt:T; % Vector de tiempos&lt;br /&gt;
% Matriz de coeficientes. Aproximacion de -q*u_xx&lt;br /&gt;
K=2*diag(ones(1,N+1))-diag(ones(1,N),1)-diag(ones(1,N),-1);&lt;br /&gt;
K(1,2)=-2;&lt;br /&gt;
K(N+1,N)=-2;&lt;br /&gt;
K=q*K/dx^2;&lt;br /&gt;
% Calculamos u0 condición inicial&lt;br /&gt;
u0=[zeros(1,1+N*3/5),3*ones(1,N*2/5)]';&lt;br /&gt;
% F=0 (no la consideramos)&lt;br /&gt;
sol(1,:)=u0'; % Guardamos la solucion&lt;br /&gt;
U=u0; % Inicializacion&lt;br /&gt;
% Calculamos U_n -&amp;gt; U_n+1&lt;br /&gt;
%Aplicamos método trapecio método del trapecio&lt;br /&gt;
for j=1:length(t)-1&lt;br /&gt;
U=(eye(N+1)+(dt*K)/2)\((eye(N+1)-(K*dt)/2)*U);&lt;br /&gt;
sol(j+1,:)= U'; % Guardamos solucion&lt;br /&gt;
end&lt;br /&gt;
%Dibujamos la solucion&lt;br /&gt;
[xx,tt]=meshgrid(x,t);&lt;br /&gt;
surf(xx,tt,sol);&lt;br /&gt;
}}&lt;br /&gt;
[[Archivo:nur.jpg|500px|thumb|centro|Gráfica concentración / espacio-tiempo. Resolución por el método del trapecio.]]&lt;br /&gt;
&lt;br /&gt;
==== Resolución por método de Euler explícito ====&lt;br /&gt;
{{matlab| codigo=&lt;br /&gt;
%Datos&lt;br /&gt;
L=5; %Longitud de varilla&lt;br /&gt;
T=5; %tiempo final&lt;br /&gt;
q=1;&lt;br /&gt;
%Discretización temporal y espacial&lt;br /&gt;
dx=0.1; % Paso en espacio&lt;br /&gt;
N=L/dx; %Número de subintervalos&lt;br /&gt;
x=0:dx:L; % Vector de espacio&lt;br /&gt;
dt=dx/20; % Paso en tiempo&lt;br /&gt;
t=0:dt:T; % Vector de tiempos&lt;br /&gt;
% Matriz de coeficientes. Aproximacion de -q*u_xx&lt;br /&gt;
K=2*diag(ones(1,N+1))-diag(ones(1,N),1)-diag(ones(1,N),-1);&lt;br /&gt;
K(1,2)=-2;&lt;br /&gt;
K(N+1,N)=-2;&lt;br /&gt;
K=q*K/dx^2;&lt;br /&gt;
% Calculamos u0 condición inicial&lt;br /&gt;
u0=[zeros(1,1+N*3/5),3*ones(1,N*2/5)]';&lt;br /&gt;
% F=0 (no la consideramos)&lt;br /&gt;
sol(1,:)=u0'; % Guardamos la solucion&lt;br /&gt;
U=u0; % Inicializacion&lt;br /&gt;
% Calculamos U_n -&amp;gt; U_n+1&lt;br /&gt;
%Aplicamos método Euler explícito&lt;br /&gt;
for j=1:length(t)-1 &lt;br /&gt;
k1=-K*U; % Calculamos k1=h*f(tn,yn)&lt;br /&gt;
k2=-K*(U+dt*k1); % Calculamos k2=h*f(tn+h/2,yn+1/2*k1)&lt;br /&gt;
% Meto los datos en el vector&lt;br /&gt;
U=U+(dt/2)*(k1+k2);&lt;br /&gt;
sol(j+1,:)= U'; % Guardamos solucion&lt;br /&gt;
end&lt;br /&gt;
%Dibujamos la solucion&lt;br /&gt;
[xx,tt]=meshgrid(x,t);&lt;br /&gt;
surf(xx,tt,sol);&lt;br /&gt;
}}&lt;br /&gt;
[[Archivo:mig.jpg|500px|thumb|centro|Gráfica concentración / espacio-tiempo. Resolución por el método de Euler explícito.]]&lt;br /&gt;
&lt;br /&gt;
==== Resolución por método de Euler implícito ====&lt;br /&gt;
{{matlab| codigo=&lt;br /&gt;
%Datos&lt;br /&gt;
L=5; %Longitud de varilla&lt;br /&gt;
T=5;&lt;br /&gt;
q=1;&lt;br /&gt;
%Discretización temporal y espacial&lt;br /&gt;
dx=0.1; % Paso en espacio&lt;br /&gt;
N=L/dx; %Número de subintervalos&lt;br /&gt;
h=L/N;&lt;br /&gt;
x=0:h:L; % Vector de espacio&lt;br /&gt;
dt=h/20; % Paso en tiempo&lt;br /&gt;
t=0:dt:T; % Vector de tiempos&lt;br /&gt;
% Matriz de coeficientes. Aproximacion de -q*u_xx&lt;br /&gt;
K=2*diag(ones(1,N+1))-diag(ones(1,N),1)-diag(ones(1,N),-1);&lt;br /&gt;
K(1,2)=-2;&lt;br /&gt;
K(N+1,N)=-2;&lt;br /&gt;
K=q*K/h^2;&lt;br /&gt;
% Calculamos u0 condición inicial&lt;br /&gt;
u0=[zeros(1,1+N*3/5),3*ones(1,N*2/5)]';&lt;br /&gt;
% F=0 (no la consideramos)&lt;br /&gt;
sol(1,:)=u0'; % Guardamos la solucion&lt;br /&gt;
U=u0; % Inicializacion&lt;br /&gt;
% Calculamos U_n -&amp;gt; U_n+1&lt;br /&gt;
% Aplicamos método implícito&lt;br /&gt;
for j=1:length(t)-1 &lt;br /&gt;
U=U-dt*K*U; &lt;br /&gt;
sol(j+1,:)= U'; % Guardamos solucion&lt;br /&gt;
end&lt;br /&gt;
%Dibujamos la solucion&lt;br /&gt;
[xx,tt]=meshgrid(x,t);&lt;br /&gt;
surf(xx,tt,sol);&lt;br /&gt;
}}&lt;br /&gt;
[[Archivo:migap.jpg|500px|thumb|centro|Gráfica concentración / espacio-tiempo. Resolución por el método de Euler implícito.]]&lt;br /&gt;
&lt;br /&gt;
==== Resolución por método de Euler modificado ====&lt;br /&gt;
{{matlab| codigo=&lt;br /&gt;
%Datos&lt;br /&gt;
L=5; %Longitud de varilla&lt;br /&gt;
T=5;&lt;br /&gt;
q=1;&lt;br /&gt;
%Discretización temporal y espacial&lt;br /&gt;
dx=0.1; % Paso en espacio&lt;br /&gt;
N=L/dx; %Número de subintervalos&lt;br /&gt;
h=L/N;&lt;br /&gt;
x=0:h:L; % Vector de espacio&lt;br /&gt;
dt=h/20; % Paso en tiempo&lt;br /&gt;
t=0:dt:T; % Vector de tiempos&lt;br /&gt;
% Matriz de coeficientes. Aproximacion de -q*u_xx&lt;br /&gt;
K=2*diag(ones(1,N+1))-diag(ones(1,N),1)-diag(ones(1,N),-1);&lt;br /&gt;
K(1,2)=-2;&lt;br /&gt;
K(N+1,N)=-2;&lt;br /&gt;
K=q*K/h^2;&lt;br /&gt;
% Calculamos u0 condición inicial&lt;br /&gt;
u0=[zeros(1,1+N*3/5),3*ones(1,N*2/5)]';&lt;br /&gt;
% F=0 (no la consideramos)&lt;br /&gt;
sol(1,:)=u0'; % Guardamos la solucion&lt;br /&gt;
U=u0; % Inicializacion&lt;br /&gt;
% Calculamos U_n -&amp;gt; U_n+1&lt;br /&gt;
for j=1:length(t)-1 &lt;br /&gt;
k1=-K*U; % Calculamos k1=h*f(tn,yn)&lt;br /&gt;
k2=-K*(U+dt*k1); % Calculamos k2=h*f(tn+h/2,yn+1/2*k1)&lt;br /&gt;
% Meto los datos en el vector&lt;br /&gt;
U=U+(dt/2)*(k1+k2);&lt;br /&gt;
sol(j+1,:)= U'; % Guardamos solucion&lt;br /&gt;
end&lt;br /&gt;
%Dibujamos la solucion&lt;br /&gt;
[xx,tt]=meshgrid(x,t);&lt;br /&gt;
surf(xx,tt,sol);&lt;br /&gt;
}}&lt;br /&gt;
[[Archivo: mig.jpg|500px|thumb|centro|Gráfica concentración / espacio-tiempo. Resolución por el método de Euler modificado.]]&lt;br /&gt;
&lt;br /&gt;
== Conservación de la masa total de contaminante ==&lt;br /&gt;
A continuación demostraremos que la masa total de contaminante en el tubo se conserva a lo largo del tiempo, que se puede deducir a partir de la ecuación sin tener que resolverla. Integramos la ecuación y debido a las condiciones de frontera:&lt;br /&gt;
&amp;lt;math&amp;gt;\frac d {dt} \int_0^5 u(x,t)\,dx= \int_0^5 u_{xx}(x,t)\,dx= u_x(x,t)|_0^5=0&amp;lt;/math&amp;gt;&lt;br /&gt;
{{matlab| codigo=&lt;br /&gt;
%Datos&lt;br /&gt;
L=5; %Longitud de varilla&lt;br /&gt;
T=5;&lt;br /&gt;
q=1;&lt;br /&gt;
%Discretización temporal y espacial&lt;br /&gt;
N=500; %Número de subintervalos&lt;br /&gt;
h=L/N;&lt;br /&gt;
x=0:h:L; % Vector de espacio&lt;br /&gt;
dt=h/4; % Paso en tiempo&lt;br /&gt;
t=0:dt:T; % Vector de tiempos&lt;br /&gt;
% Matriz de coeficientes. Aproximacion de -q*u_xx&lt;br /&gt;
K=2*diag(ones(1,N+1))-diag(ones(1,N),1)-diag(ones(1,N),-1);&lt;br /&gt;
K(1,2)=-2;&lt;br /&gt;
K(N+1,N)=-2;&lt;br /&gt;
K=q*K/h^2;&lt;br /&gt;
% Calculamos u0 condición inicial&lt;br /&gt;
u0=[zeros(1,1+N*3/5),3*ones(1,N*2/5)]';&lt;br /&gt;
% F=0 (no la consideramos)&lt;br /&gt;
sol(1,:)=u0'; % Guardamos la solucion&lt;br /&gt;
U=u0; % Inicializacion&lt;br /&gt;
% Calculamos U_n -&amp;gt; U_n+1&lt;br /&gt;
for j=1:length(t)-1 &lt;br /&gt;
U=(eye(N+1)+dt*K)\(U+dt*F); &lt;br /&gt;
sol(j+1,:)= U'; % Guardamos solucion&lt;br /&gt;
end&lt;br /&gt;
% Calculamos el area de la funcion en cada tiempo (area = cantidad de contaminante)&lt;br /&gt;
areas=zeros(1,length(t));&lt;br /&gt;
for i=1:length(t)&lt;br /&gt;
f=sol(i,:);&lt;br /&gt;
w=trapz(x,f);&lt;br /&gt;
area(i)=w;&lt;br /&gt;
end&lt;br /&gt;
%Dibujamos&lt;br /&gt;
plot(t,area)&lt;br /&gt;
xlabel('Tiempo')&lt;br /&gt;
ylabel('Cantidad de contaminante')&lt;br /&gt;
}}&lt;br /&gt;
[[Archivo:aleeex.jpg|500px|thumb|centro|Conservación masa total de contaminante]]&lt;br /&gt;
[[Archivo:gime.jpg|500px|thumb|centro|Conservación masa total de contaminante]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Concentración a lo largo del tiempo==&lt;br /&gt;
La concentración de la sustancia contaminante en la varilla varía con el tiempo, pero en un cierto momento esta concentración se va homogeneizando, y deja de variar, entrando en un estado estacionario::&lt;br /&gt;
&amp;lt;math&amp;gt; u_t(x,t)- D*u_{xx}(x,t)=0 &amp;lt;/math&amp;gt; :    &lt;br /&gt;
&amp;lt;math&amp;gt; u_t(x,t)=0 \rightarrow D*u_{xx}(x,t)=0 &amp;lt;/math&amp;gt; :&lt;br /&gt;
&amp;lt;math&amp;gt; u=c_1*x+c_2 &amp;lt;/math&amp;gt; &lt;br /&gt;
Utizando Matlab comprobaremos que &amp;lt;math&amp;gt; c_1=0 &amp;lt;/math&amp;gt; &amp;lt;math&amp;gt; c_2=1.17 &amp;lt;/math&amp;gt;&lt;br /&gt;
Para tiempos grandes la concentración se estabiliza en torno a 1.17 en toda la varilla, de forma que la solución se asemejará a una función lineal constante.&lt;br /&gt;
&lt;br /&gt;
{{matlab| codigo=&lt;br /&gt;
%Datos&lt;br /&gt;
L=5; %Longitud de varilla&lt;br /&gt;
T=50;&lt;br /&gt;
q=1;&lt;br /&gt;
%Discretización temporal y espacial&lt;br /&gt;
dx=0.1; % Paso en espacio&lt;br /&gt;
N=L/dx; %Número de subintervalos&lt;br /&gt;
h=L/N;&lt;br /&gt;
x=0:h:L; % Vector de espacio&lt;br /&gt;
dt=h/4; % Paso en tiempo&lt;br /&gt;
t=0:dt:T; % Vector de tiempos&lt;br /&gt;
% Matriz de coeficientes. Aproximacion de -q*u_xx&lt;br /&gt;
K=2*diag(ones(1,N+1))-diag(ones(1,N),1)-diag(ones(1,N),-1);&lt;br /&gt;
K(1,2)=-2;&lt;br /&gt;
K(N+1,N)=-2;&lt;br /&gt;
K=q*K/h^2;&lt;br /&gt;
% Calculamos u0 condición inicial&lt;br /&gt;
u0=[zeros(1,1+N*3/5),3*ones(1,N*2/5)]';&lt;br /&gt;
% F=0 (no la consideramos)&lt;br /&gt;
sol(1,:)=u0'; % Guardamos la solucion&lt;br /&gt;
U=u0; % Inicializacion&lt;br /&gt;
% Calculamos U_n -&amp;gt; U_n+1&lt;br /&gt;
%Aplicamos método trapecio método del trapecio&lt;br /&gt;
for j=1:length(t)-1&lt;br /&gt;
U=(eye(N+1)+(dt*K)/2)\((eye(N+1)-(K*dt)/2)*U);&lt;br /&gt;
sol(j+1,:)= U'; % Guardamos solucion&lt;br /&gt;
end&lt;br /&gt;
%Solución estacionaria&lt;br /&gt;
a=sol(length(t),:);&lt;br /&gt;
b=sol(1,:);&lt;br /&gt;
c=sol((length(t)-1)/50+1,:);&lt;br /&gt;
d=sol((length(t)-1)*2/50+1,:);&lt;br /&gt;
e=sol((length(t)-1)*10/50+1,:);&lt;br /&gt;
hold on&lt;br /&gt;
plot(x,a,'xk','linewidth',2);&lt;br /&gt;
plot(x,b,'-m','linewidth',1);&lt;br /&gt;
plot(x,c,'-g','linewidth',1);&lt;br /&gt;
plot(x,d,'-y','linewidth',1);&lt;br /&gt;
plot(x,e,'-b','linewidth',1);&lt;br /&gt;
legend('u(50s)','u(0s)','u(1s)','u(2s)','u(10s)');&lt;br /&gt;
xlabel('Posición en la varilla')&lt;br /&gt;
ylabel('Concentracion')&lt;br /&gt;
hold off&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Soluciones(t).jpg|500px|thumb|centro|Soluciones a lo largo del tiempo]]&lt;br /&gt;
&lt;br /&gt;
La distancia entre la solución estacionaria y las soluciones para los siguientes instantes: 0s, 1s, 2s y 10s; se puede apreciar en la imagen anterior. &lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
Una vez analizado los datos, se demuestra que la sustancia contaminante se estabiliza en t=9.98s, con un error del 5%.&lt;br /&gt;
&lt;br /&gt;
En el caso de que consideremos Δx'=Δx/10,el tiempo en el que se estabiliza la cantidad de sustancia contaminante será t=10s, dato que será más preciso debido a que el paso realizado en el programa es menor.&lt;br /&gt;
&lt;br /&gt;
==Nueva condición de frontera==&lt;br /&gt;
&lt;br /&gt;
Si colocamos un limpiador, que elimina la sustancia contaminante, en el extremo izquierdo de la varilla, varían las condiciones de contorno del problema. En este caso, en el extremo izquierdo, la condición inicial será de tipo Dirichlet ya que se esta variación esta provocada por un mecanismo físico externo que actúa sobre el extremo. &amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;math&amp;gt;\begin{cases}&lt;br /&gt;
u_t(x,t)- D u_{xx}(x,t)= 0 ; x\in (0,5) \\&lt;br /&gt;
u(x,0)=u_0 , x\in (0,5) \\&lt;br /&gt;
u(0,t)=0 , u_x(5,t)=0 ; t\geq 0&lt;br /&gt;
\end{cases}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Dadas las nuevas condiciones, resolvemos el problema por el método de diferencias finitas con la ayuda de Matlab.&lt;br /&gt;
&lt;br /&gt;
{{matlab| codigo=&lt;br /&gt;
%Datos&lt;br /&gt;
L=5; %Longitud de varilla&lt;br /&gt;
T=5; %tiempo final&lt;br /&gt;
q=1;&lt;br /&gt;
%Discretización temporal y espacial&lt;br /&gt;
dx=0.1; % Paso en espacio&lt;br /&gt;
N=L/dx; %Número de subintervalos&lt;br /&gt;
x=0:dx:L;% Vector de espacio&lt;br /&gt;
dt=dx/4; % Paso en tiempo&lt;br /&gt;
t=0:dt:T; % Vector de tiempos&lt;br /&gt;
% Matriz de coeficientes. Aproximacion de -q*u_xx&lt;br /&gt;
K=2*diag(ones(1,N))-diag(ones(1,N-1),1)-diag(ones(1,N-1),-1);&lt;br /&gt;
K(N,N-1)=-2;&lt;br /&gt;
K=q*K/dx^2;&lt;br /&gt;
% Matriz F&lt;br /&gt;
F=zeros(N,1);&lt;br /&gt;
% Calculamos u0 condición inicial&lt;br /&gt;
u0=[zeros(1,N*3/5),3*ones(1,N*2/5)]';&lt;br /&gt;
sol(1,:)=[0,u0']; &lt;br /&gt;
U=u0; % Inicializacion&lt;br /&gt;
% Calculamos U_n -&amp;gt; U_n+1&lt;br /&gt;
%Aplicamos método trapecio método del trapecio&lt;br /&gt;
for j=1:length(t)-1&lt;br /&gt;
U=(eye(N)+(dt*K))\(dt*F+U);&lt;br /&gt;
sol(j+1,:)= [0,U'];&lt;br /&gt;
end&lt;br /&gt;
%Dibujamos la solucion&lt;br /&gt;
[xx,tt]=meshgrid(x,t);&lt;br /&gt;
surf(xx,tt,sol);&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Xata.JPG|500px|thumb|centro|Solución al variar las condiciones de contorno del problema.]]&lt;br /&gt;
&lt;br /&gt;
Observando la gráfica, y por la presencia del limpiador en el extremo de la varilla, para tiempos grandes la cantidad de sustancia contaminante será nula en toda la varilla. En realidad, esto no es del todo cierto puesto que la sustancia no llega a eliminarse completamente, ya que el limpiador solo elimina la sustancia contaminante en el extremo izquierdo. Aunque la concentración en todos los puntos disminuye de manera exponencial, permanece asintótica a 0.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Trapotito.JPG|500px|thumb|centro|Momento en el que se estabiliza con la presencia del limpiador.]]&lt;br /&gt;
&lt;br /&gt;
==Resolución por el método de Fourier==&lt;br /&gt;
&lt;br /&gt;
Las condiciones de frontera del problema son homogéneas, por lo que podemos aplicar este método de cálculo, sin realizar ningún cambio.&lt;br /&gt;
El primer paso es resolver el problema de autovalores asociado:&lt;br /&gt;
&amp;lt;math&amp;gt;\begin{cases}&lt;br /&gt;
y''+λy=0 x \in (0,5) \\&lt;br /&gt;
y'(0)=0 \\&lt;br /&gt;
y'(5)=0&lt;br /&gt;
\end{cases}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&amp;lt;math&amp;gt;  &amp;lt;/math&amp;gt;&lt;/div&gt;</summary>
		<author><name>Karlo André</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Difusi%C3%B3n_de_una_sustancia_contaminante_(Grupo_10)&amp;diff=12839</id>
		<title>Difusión de una sustancia contaminante (Grupo 10)</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Difusi%C3%B3n_de_una_sustancia_contaminante_(Grupo_10)&amp;diff=12839"/>
				<updated>2014-05-19T15:45:16Z</updated>
		
		<summary type="html">&lt;p&gt;Karlo André: /* Resolución por el método de Fourier */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;''''''Texto en negrita''''''[[Archivo:nuriat.png|200px|thumb|right|Tubo con sustancia contaminante]]&lt;br /&gt;
La difusión implica un movimiento espontáneo y desordenado de moléculas individuales y, especialmente, nos interesa la difusión de moléculas de una sustancia disuelta en otra.&lt;br /&gt;
&lt;br /&gt;
La difusión de una sustancia puede considerarse análoga al flujo de calor, y la ley de Fick establece que el ritmo de difusión por unidad de superficie, en dirección perpendicular a ésta, es proporcional al gradiente de la concentración de esa sustancia en esa dirección. La concentración es la masa de la sustancia por unidad de volumen, y el gradiente de concentración es la variación de concentración por unidad de distancia.&lt;br /&gt;
&lt;br /&gt;
Para determinar como se distribuye la concentración de una sustancia contaminante tomaremos como ejemplo un tubo largo compuesto por dos sustancias de las cuáles una de ellas es contaminante.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
= Simplificación del problema =&lt;br /&gt;
&lt;br /&gt;
Para que este problema resulte más sencillo aplicaremos una serie de condiciones, facilitando el cálculo del mismo.&lt;br /&gt;
&lt;br /&gt;
En primer lugar denotaremos su concentración &amp;lt;math&amp;gt; u &amp;lt;/math&amp;gt;, concentración de contaminante en cada posición del tubo y constante en cada sección, medida en &amp;lt;math&amp;gt; \frac{mol}{m^2*s} &amp;lt;/math&amp;gt;. &lt;br /&gt;
&lt;br /&gt;
Supondremos que el tubo mide L=5 m, ocupando el intervalo &amp;lt;math&amp;gt; x \in (0,L) &amp;lt;/math&amp;gt;, y que la concentración es la misma en cualquier punto de la sección transversal del tubo. Por tanto, la concentración dependerá unicamente de dos variables &amp;lt;math&amp;gt; u = u(x,t) &amp;lt;/math&amp;gt;. En los extremos se ha colocado un aislante que hace que el flujo de contaminante al exterior del tubo sea nulo. Además, consideraremos la simplificación de que se trata de un tubo aislado por sus laterales, pero abierto por las bases del cilindro.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Ley de conservación de masa ==&lt;br /&gt;
&lt;br /&gt;
Tras una serie de experimentos realizados por Lavoisier, se pusieron de manifiesto que si tenemos en cuenta todas las sustancias que forman parte en una reacción química y todos los productos formados, nunca varía la masa. Esta ley exige que no haya una generación espontánea de materia. Es decir, en la región del espacio estudiada, no existe entrada o salida por un punto cualquiera (frontera o interior), la masa en esta región se mantiene constante. Esta es la ley de la conservación de la masa, que podemos enunciarla, pues, de la siguiente manera: &amp;lt;br /&amp;gt;&lt;br /&gt;
''&amp;quot;En toda reacción química la masa se conserva, esto es, la masa total de los reactivos es igual a la masa total de los productos&amp;quot;'' &amp;lt;br /&amp;gt;&lt;br /&gt;
La ley de conservación de masas exige que no haya una generación espontánea de materia. Es decir, en la región del espacio estudiada, no existe entrada o salida por un punto cualquiera (frontera o interior), la masa en esta región se mantiene constante.&lt;br /&gt;
&lt;br /&gt;
Esta suposición, en términos de variación de masa, puede quedar determinada como:&lt;br /&gt;
&lt;br /&gt;
''Variación de la masa en el tiempo = flujo de masa a través de la frontera por unidad de tiempo + flujo de masa generada en el interior por unidad de tiempo. ''&lt;br /&gt;
&lt;br /&gt;
== Ley de Fick ==&lt;br /&gt;
Se trata de una ley cuantitativa en forma diferencial que describe la difusión de materia o energía en un medio en el que inicialmente existe equilibrio químico o físico. Esta ley se trata de una generalización de los fenómenos descritos por la '''Ley de Fourier''', ya que esta es una consideración concreta del calor.&lt;br /&gt;
&lt;br /&gt;
La ley de Fick anuncia que en el caso de existir diferencias de concentración en cualquier especie, el paso de estas especies se llevará a cabo desde las regiones con mayor concentración a las de menor. Formulado matemáticamente:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;F(x,t)=-D\frac{\partial u}{\partial x}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Donde &amp;lt;math&amp;gt;F&amp;lt;/math&amp;gt; es el flujo de la sustancia y &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; el coeficiente de difusión, que representa la facilidad en que un soluto particular se mueve por un disolvente determinado.&lt;br /&gt;
&lt;br /&gt;
La ley de Fick establece que el flujo de difusión del contaminante es proporcional a la variación de concentración:&lt;br /&gt;
&amp;lt;math&amp;gt; F(x,t)=-D\frac{\partial u}{\partial x} &amp;lt;/math&amp;gt;&lt;br /&gt;
donde D es el coeficiente de difusión (medido en &amp;lt;math&amp;gt; \frac{m^2}{s} &amp;lt;/math&amp;gt;), que depende de las propiedades físicas de los compuestos, y que se supone constante D=1.&lt;br /&gt;
&lt;br /&gt;
= Modelización de la ecuación diferencial =&lt;br /&gt;
&lt;br /&gt;
Aplicando el principio de conservación de la masa y la ley de Fourier, definimos la variable &amp;lt;math&amp;gt; u(x,t)&amp;lt;/math&amp;gt; en unidades de sustancia por área, es decir, concentración por superficie del tubo.&lt;br /&gt;
&lt;br /&gt;
Consideramos &amp;lt;math&amp;gt; A &amp;lt;/math&amp;gt; como variable superficie, y tomamos un pequeño trozo, definido por &amp;lt;math&amp;gt;\Delta x&amp;lt;/math&amp;gt;. Entonces, para obtener la variación de la masa en el tiempo:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; A u(x,t) \Delta x &amp;lt;/math&amp;gt; &lt;br /&gt;
&lt;br /&gt;
Y derivando en el tiempo:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; A u_t(x,t) \Delta x &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
obtenemos el primer término de la igualdad anteriormente enunciada.&lt;br /&gt;
&lt;br /&gt;
En el segundo, consideramos nulo el flujo de masa en los puntos interiores por unidad de tiempo, pues suponemos la tubería perfecta y sin sumideros.&lt;br /&gt;
&lt;br /&gt;
Como la superﬁcie lateral del tubo está aislada, solamente habrá flujo de sustancia en la dirección del eje &amp;lt;math&amp;gt;x&amp;lt;/math&amp;gt;. Si &amp;lt;math&amp;gt;F(x,t)&amp;gt; 0&amp;lt;/math&amp;gt; pensamos que el ﬂujo va hacia la derecha, si &amp;lt;math&amp;gt;F(x,t)&amp;lt; 0&amp;lt;/math&amp;gt;, este va a hacia la izquierda. El ﬂujo de&lt;br /&gt;
calor en un intervalo &amp;lt;math&amp;gt;[x, x + ∆x ] &amp;lt;/math&amp;gt; viene dado dado por:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;F(x,t)A-F(x+\Delta x, t)A&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Con lo que queda &amp;lt;math&amp;gt;A u_t(x,t) \Delta x = F(x,t)A-F(x+\Delta x, t)A&amp;lt;/math&amp;gt;, y al dividir &amp;lt;math&amp;gt;A \Delta x&amp;lt;/math&amp;gt;, nos queda &amp;lt;math&amp;gt;u_t(x,t)= \frac {F(x,t)-F(x+\Delta x, t)}{\Delta x}&amp;lt;/math&amp;gt;. &amp;lt;br /&amp;gt;&lt;br /&gt;
Como &amp;lt;math&amp;gt;\Delta x \rightarrow 0 &amp;lt;/math&amp;gt;, &amp;lt;math&amp;gt;u_t(x,t)= -F_x(x,t)&amp;lt;/math&amp;gt;, y aplicando ley de Fick, &amp;lt;math&amp;gt;u_t(x,t)=-\frac{\partial }{\partial x}(-D u_x(x,t)) = D u_xx(x,t) &amp;lt;/math&amp;gt;.&amp;lt;br /&amp;gt;&lt;br /&gt;
Con lo que resulta una ecuación en derivadas parciales que determina la concentración de sustancia:&lt;br /&gt;
&amp;lt;math&amp;gt;u_t(x,t)- D u_xx(x,t)= 0 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Planteamiento del problema bien propuesto ==&lt;br /&gt;
&lt;br /&gt;
Suponemos que el flujo será nula al haber una tapa en los extremos del tubo, con lo que el problema bien propuesto quedaría::&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\begin{cases}&lt;br /&gt;
u_t(x,t)- D u_{xx}(x,t)= 0 ; x\in (0,5) \\&lt;br /&gt;
u(x,0)=u_0 , x\in (0,5) \\&lt;br /&gt;
u_x(0,t)=0 , u_x(5,t)=0 ; t\geq 0&lt;br /&gt;
\end{cases}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= Resolución numérica =&lt;br /&gt;
Para la resolución de ésta ecuación necesitaremos mínimo tres condiciones, dos de las cuales serán de contorno, y la otra será la condición inicial.Si suponemos &amp;lt;math&amp;gt;u_0(x,0)&amp;lt;/math&amp;gt;, entonces:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; u_0(x,0)=\begin{cases}&lt;br /&gt;
0,  si x\leq 3\\&lt;br /&gt;
3,  si x&amp;gt;3&lt;br /&gt;
\end{cases}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Resolución por el método de las diferencias finitas ==&lt;br /&gt;
En el primer caso particular que estudiaremos, trataremos de obtener una resolución numérica del problema anteriormente planteado, dónde tenemos las fronteras aisladas y las concentraciones iniciales conocidas:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\begin{cases}&lt;br /&gt;
u_t(x,t)- D u_{xx}(x,t)= 0; x\in (0,5), t\geq 0 \\&lt;br /&gt;
u_0(x,0), x\in (0,5) \\&lt;br /&gt;
u_x(0,t)=0, u_x(5,t)=0, t\geq 0&lt;br /&gt;
\end{cases}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
La resolución por el método de las diferencias finitas se basa en expresar el problema continuo a un sistema discreto de ecuaciones diferenciales de primer orden. Particularizando para nuestro caso con las condiciones dadas, el problema planteado sería:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\begin{cases}&lt;br /&gt;
u'_n(t)+\frac{-u_{n-1}(t)+2u_n(t)+u_{n+1}(t)}{h^2} \\&lt;br /&gt;
\frac{u_1(t)-u_-1(t)}{2h} \rightarrow u_1(t)=u_-1(t) \\&lt;br /&gt;
\frac{u_{N+1}(t)-u_{N-1}(t)}{2h} \rightarrow u_{N+1}(t)=u_{N-1}\\&lt;br /&gt;
u_n(0)=u^0(x)&lt;br /&gt;
\end{cases}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Por lo que tenemos un sistema de la forma:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\begin{cases}&lt;br /&gt;
U'(t)+KU(t)=F(t)=0\\&lt;br /&gt;
U(0)=U^0&lt;br /&gt;
\end{cases}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Con &amp;lt;math&amp;gt;N+1&amp;lt;/math&amp;gt; ecuaciones.&lt;br /&gt;
==== Resolución por método del trapecio ====&lt;br /&gt;
Suponiendo que en el instante inicial se verifica  :&amp;lt;math&amp;gt;&lt;br /&gt;
u(x,0)=\left\{\begin{matrix}\\0, x≤3\\3, x&amp;gt;3\end{matrix}\right.&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Si tomamos &amp;lt;math&amp;gt;\triangle t= \triangle x/4&amp;lt;/math&amp;gt; en &amp;lt;math&amp;gt;t\in\ [0,5]&amp;lt;/math&amp;gt;, con &amp;lt;math&amp;gt;\triangle x=0.1&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
El código en MATLAB del método sería:&lt;br /&gt;
&lt;br /&gt;
{{matlab| codigo=&lt;br /&gt;
%Datos&lt;br /&gt;
L=5; %Longitud de varilla&lt;br /&gt;
T=5; %tiempo final&lt;br /&gt;
q=1;&lt;br /&gt;
%Discretización temporal y espacial&lt;br /&gt;
dx=0.1; % Paso en espacio&lt;br /&gt;
N=L/dx; %Número de subintervalos&lt;br /&gt;
x=0:dx:L; % Vector de espacio&lt;br /&gt;
dt=dx/4; % Paso en tiempo&lt;br /&gt;
t=0:dt:T; % Vector de tiempos&lt;br /&gt;
% Matriz de coeficientes. Aproximacion de -q*u_xx&lt;br /&gt;
K=2*diag(ones(1,N+1))-diag(ones(1,N),1)-diag(ones(1,N),-1);&lt;br /&gt;
K(1,2)=-2;&lt;br /&gt;
K(N+1,N)=-2;&lt;br /&gt;
K=q*K/dx^2;&lt;br /&gt;
% Calculamos u0 condición inicial&lt;br /&gt;
u0=[zeros(1,1+N*3/5),3*ones(1,N*2/5)]';&lt;br /&gt;
% F=0 (no la consideramos)&lt;br /&gt;
sol(1,:)=u0'; % Guardamos la solucion&lt;br /&gt;
U=u0; % Inicializacion&lt;br /&gt;
% Calculamos U_n -&amp;gt; U_n+1&lt;br /&gt;
%Aplicamos método trapecio método del trapecio&lt;br /&gt;
for j=1:length(t)-1&lt;br /&gt;
U=(eye(N+1)+(dt*K)/2)\((eye(N+1)-(K*dt)/2)*U);&lt;br /&gt;
sol(j+1,:)= U'; % Guardamos solucion&lt;br /&gt;
end&lt;br /&gt;
%Dibujamos la solucion&lt;br /&gt;
[xx,tt]=meshgrid(x,t);&lt;br /&gt;
surf(xx,tt,sol);&lt;br /&gt;
}}&lt;br /&gt;
[[Archivo:nur.jpg|500px|thumb|centro|Gráfica concentración / espacio-tiempo. Resolución por el método del trapecio.]]&lt;br /&gt;
&lt;br /&gt;
==== Resolución por método de Euler explícito ====&lt;br /&gt;
{{matlab| codigo=&lt;br /&gt;
%Datos&lt;br /&gt;
L=5; %Longitud de varilla&lt;br /&gt;
T=5; %tiempo final&lt;br /&gt;
q=1;&lt;br /&gt;
%Discretización temporal y espacial&lt;br /&gt;
dx=0.1; % Paso en espacio&lt;br /&gt;
N=L/dx; %Número de subintervalos&lt;br /&gt;
x=0:dx:L; % Vector de espacio&lt;br /&gt;
dt=dx/20; % Paso en tiempo&lt;br /&gt;
t=0:dt:T; % Vector de tiempos&lt;br /&gt;
% Matriz de coeficientes. Aproximacion de -q*u_xx&lt;br /&gt;
K=2*diag(ones(1,N+1))-diag(ones(1,N),1)-diag(ones(1,N),-1);&lt;br /&gt;
K(1,2)=-2;&lt;br /&gt;
K(N+1,N)=-2;&lt;br /&gt;
K=q*K/dx^2;&lt;br /&gt;
% Calculamos u0 condición inicial&lt;br /&gt;
u0=[zeros(1,1+N*3/5),3*ones(1,N*2/5)]';&lt;br /&gt;
% F=0 (no la consideramos)&lt;br /&gt;
sol(1,:)=u0'; % Guardamos la solucion&lt;br /&gt;
U=u0; % Inicializacion&lt;br /&gt;
% Calculamos U_n -&amp;gt; U_n+1&lt;br /&gt;
%Aplicamos método Euler explícito&lt;br /&gt;
for j=1:length(t)-1 &lt;br /&gt;
k1=-K*U; % Calculamos k1=h*f(tn,yn)&lt;br /&gt;
k2=-K*(U+dt*k1); % Calculamos k2=h*f(tn+h/2,yn+1/2*k1)&lt;br /&gt;
% Meto los datos en el vector&lt;br /&gt;
U=U+(dt/2)*(k1+k2);&lt;br /&gt;
sol(j+1,:)= U'; % Guardamos solucion&lt;br /&gt;
end&lt;br /&gt;
%Dibujamos la solucion&lt;br /&gt;
[xx,tt]=meshgrid(x,t);&lt;br /&gt;
surf(xx,tt,sol);&lt;br /&gt;
}}&lt;br /&gt;
[[Archivo:mig.jpg|500px|thumb|centro|Gráfica concentración / espacio-tiempo. Resolución por el método de Euler explícito.]]&lt;br /&gt;
&lt;br /&gt;
==== Resolución por método de Euler implícito ====&lt;br /&gt;
{{matlab| codigo=&lt;br /&gt;
%Datos&lt;br /&gt;
L=5; %Longitud de varilla&lt;br /&gt;
T=5;&lt;br /&gt;
q=1;&lt;br /&gt;
%Discretización temporal y espacial&lt;br /&gt;
dx=0.1; % Paso en espacio&lt;br /&gt;
N=L/dx; %Número de subintervalos&lt;br /&gt;
h=L/N;&lt;br /&gt;
x=0:h:L; % Vector de espacio&lt;br /&gt;
dt=h/20; % Paso en tiempo&lt;br /&gt;
t=0:dt:T; % Vector de tiempos&lt;br /&gt;
% Matriz de coeficientes. Aproximacion de -q*u_xx&lt;br /&gt;
K=2*diag(ones(1,N+1))-diag(ones(1,N),1)-diag(ones(1,N),-1);&lt;br /&gt;
K(1,2)=-2;&lt;br /&gt;
K(N+1,N)=-2;&lt;br /&gt;
K=q*K/h^2;&lt;br /&gt;
% Calculamos u0 condición inicial&lt;br /&gt;
u0=[zeros(1,1+N*3/5),3*ones(1,N*2/5)]';&lt;br /&gt;
% F=0 (no la consideramos)&lt;br /&gt;
sol(1,:)=u0'; % Guardamos la solucion&lt;br /&gt;
U=u0; % Inicializacion&lt;br /&gt;
% Calculamos U_n -&amp;gt; U_n+1&lt;br /&gt;
% Aplicamos método implícito&lt;br /&gt;
for j=1:length(t)-1 &lt;br /&gt;
U=U-dt*K*U; &lt;br /&gt;
sol(j+1,:)= U'; % Guardamos solucion&lt;br /&gt;
end&lt;br /&gt;
%Dibujamos la solucion&lt;br /&gt;
[xx,tt]=meshgrid(x,t);&lt;br /&gt;
surf(xx,tt,sol);&lt;br /&gt;
}}&lt;br /&gt;
[[Archivo:migap.jpg|500px|thumb|centro|Gráfica concentración / espacio-tiempo. Resolución por el método de Euler implícito.]]&lt;br /&gt;
&lt;br /&gt;
==== Resolución por método de Euler modificado ====&lt;br /&gt;
{{matlab| codigo=&lt;br /&gt;
%Datos&lt;br /&gt;
L=5; %Longitud de varilla&lt;br /&gt;
T=5;&lt;br /&gt;
q=1;&lt;br /&gt;
%Discretización temporal y espacial&lt;br /&gt;
dx=0.1; % Paso en espacio&lt;br /&gt;
N=L/dx; %Número de subintervalos&lt;br /&gt;
h=L/N;&lt;br /&gt;
x=0:h:L; % Vector de espacio&lt;br /&gt;
dt=h/20; % Paso en tiempo&lt;br /&gt;
t=0:dt:T; % Vector de tiempos&lt;br /&gt;
% Matriz de coeficientes. Aproximacion de -q*u_xx&lt;br /&gt;
K=2*diag(ones(1,N+1))-diag(ones(1,N),1)-diag(ones(1,N),-1);&lt;br /&gt;
K(1,2)=-2;&lt;br /&gt;
K(N+1,N)=-2;&lt;br /&gt;
K=q*K/h^2;&lt;br /&gt;
% Calculamos u0 condición inicial&lt;br /&gt;
u0=[zeros(1,1+N*3/5),3*ones(1,N*2/5)]';&lt;br /&gt;
% F=0 (no la consideramos)&lt;br /&gt;
sol(1,:)=u0'; % Guardamos la solucion&lt;br /&gt;
U=u0; % Inicializacion&lt;br /&gt;
% Calculamos U_n -&amp;gt; U_n+1&lt;br /&gt;
for j=1:length(t)-1 &lt;br /&gt;
k1=-K*U; % Calculamos k1=h*f(tn,yn)&lt;br /&gt;
k2=-K*(U+dt*k1); % Calculamos k2=h*f(tn+h/2,yn+1/2*k1)&lt;br /&gt;
% Meto los datos en el vector&lt;br /&gt;
U=U+(dt/2)*(k1+k2);&lt;br /&gt;
sol(j+1,:)= U'; % Guardamos solucion&lt;br /&gt;
end&lt;br /&gt;
%Dibujamos la solucion&lt;br /&gt;
[xx,tt]=meshgrid(x,t);&lt;br /&gt;
surf(xx,tt,sol);&lt;br /&gt;
}}&lt;br /&gt;
[[Archivo: mig.jpg|500px|thumb|centro|Gráfica concentración / espacio-tiempo. Resolución por el método de Euler modificado.]]&lt;br /&gt;
&lt;br /&gt;
== Conservación de la masa total de contaminante ==&lt;br /&gt;
A continuación demostraremos que la masa total de contaminante en el tubo se conserva a lo largo del tiempo, que se puede deducir a partir de la ecuación sin tener que resolverla. Integramos la ecuación y debido a las condiciones de frontera:&lt;br /&gt;
&amp;lt;math&amp;gt;\frac d {dt} \int_0^5 u(x,t)\,dx= \int_0^5 u_{xx}(x,t)\,dx= u_x(x,t)|_0^5=0&amp;lt;/math&amp;gt;&lt;br /&gt;
{{matlab| codigo=&lt;br /&gt;
%Datos&lt;br /&gt;
L=5; %Longitud de varilla&lt;br /&gt;
T=5;&lt;br /&gt;
q=1;&lt;br /&gt;
%Discretización temporal y espacial&lt;br /&gt;
N=500; %Número de subintervalos&lt;br /&gt;
h=L/N;&lt;br /&gt;
x=0:h:L; % Vector de espacio&lt;br /&gt;
dt=h/4; % Paso en tiempo&lt;br /&gt;
t=0:dt:T; % Vector de tiempos&lt;br /&gt;
% Matriz de coeficientes. Aproximacion de -q*u_xx&lt;br /&gt;
K=2*diag(ones(1,N+1))-diag(ones(1,N),1)-diag(ones(1,N),-1);&lt;br /&gt;
K(1,2)=-2;&lt;br /&gt;
K(N+1,N)=-2;&lt;br /&gt;
K=q*K/h^2;&lt;br /&gt;
% Calculamos u0 condición inicial&lt;br /&gt;
u0=[zeros(1,1+N*3/5),3*ones(1,N*2/5)]';&lt;br /&gt;
% F=0 (no la consideramos)&lt;br /&gt;
sol(1,:)=u0'; % Guardamos la solucion&lt;br /&gt;
U=u0; % Inicializacion&lt;br /&gt;
% Calculamos U_n -&amp;gt; U_n+1&lt;br /&gt;
for j=1:length(t)-1 &lt;br /&gt;
U=(eye(N+1)+dt*K)\(U+dt*F); &lt;br /&gt;
sol(j+1,:)= U'; % Guardamos solucion&lt;br /&gt;
end&lt;br /&gt;
% Calculamos el area de la funcion en cada tiempo (area = cantidad de contaminante)&lt;br /&gt;
areas=zeros(1,length(t));&lt;br /&gt;
for i=1:length(t)&lt;br /&gt;
f=sol(i,:);&lt;br /&gt;
w=trapz(x,f);&lt;br /&gt;
area(i)=w;&lt;br /&gt;
end&lt;br /&gt;
%Dibujamos&lt;br /&gt;
plot(t,area)&lt;br /&gt;
xlabel('Tiempo')&lt;br /&gt;
ylabel('Cantidad de contaminante')&lt;br /&gt;
}}&lt;br /&gt;
[[Archivo:aleeex.jpg|500px|thumb|centro|Conservación masa total de contaminante]]&lt;br /&gt;
[[Archivo:gime.jpg|500px|thumb|centro|Conservación masa total de contaminante]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Concentración a lo largo del tiempo==&lt;br /&gt;
La concentración de la sustancia contaminante en la varilla varía con el tiempo, pero en un cierto momento esta concentración se va homogeneizando, y deja de variar, entrando en un estado estacionario::&lt;br /&gt;
&amp;lt;math&amp;gt; u_t(x,t)- D*u_{xx}(x,t)=0 &amp;lt;/math&amp;gt; :    &lt;br /&gt;
&amp;lt;math&amp;gt; u_t(x,t)=0 \rightarrow D*u_{xx}(x,t)=0 &amp;lt;/math&amp;gt; :&lt;br /&gt;
&amp;lt;math&amp;gt; u=c_1*x+c_2 &amp;lt;/math&amp;gt; &lt;br /&gt;
Utizando Matlab comprobaremos que &amp;lt;math&amp;gt; c_1=0 &amp;lt;/math&amp;gt; &amp;lt;math&amp;gt; c_2=1.17 &amp;lt;/math&amp;gt;&lt;br /&gt;
Para tiempos grandes la concentración se estabiliza en torno a 1.17 en toda la varilla, de forma que la solución se asemejará a una función lineal constante.&lt;br /&gt;
&lt;br /&gt;
{{matlab| codigo=&lt;br /&gt;
%Datos&lt;br /&gt;
L=5; %Longitud de varilla&lt;br /&gt;
T=50;&lt;br /&gt;
q=1;&lt;br /&gt;
%Discretización temporal y espacial&lt;br /&gt;
dx=0.1; % Paso en espacio&lt;br /&gt;
N=L/dx; %Número de subintervalos&lt;br /&gt;
h=L/N;&lt;br /&gt;
x=0:h:L; % Vector de espacio&lt;br /&gt;
dt=h/4; % Paso en tiempo&lt;br /&gt;
t=0:dt:T; % Vector de tiempos&lt;br /&gt;
% Matriz de coeficientes. Aproximacion de -q*u_xx&lt;br /&gt;
K=2*diag(ones(1,N+1))-diag(ones(1,N),1)-diag(ones(1,N),-1);&lt;br /&gt;
K(1,2)=-2;&lt;br /&gt;
K(N+1,N)=-2;&lt;br /&gt;
K=q*K/h^2;&lt;br /&gt;
% Calculamos u0 condición inicial&lt;br /&gt;
u0=[zeros(1,1+N*3/5),3*ones(1,N*2/5)]';&lt;br /&gt;
% F=0 (no la consideramos)&lt;br /&gt;
sol(1,:)=u0'; % Guardamos la solucion&lt;br /&gt;
U=u0; % Inicializacion&lt;br /&gt;
% Calculamos U_n -&amp;gt; U_n+1&lt;br /&gt;
%Aplicamos método trapecio método del trapecio&lt;br /&gt;
for j=1:length(t)-1&lt;br /&gt;
U=(eye(N+1)+(dt*K)/2)\((eye(N+1)-(K*dt)/2)*U);&lt;br /&gt;
sol(j+1,:)= U'; % Guardamos solucion&lt;br /&gt;
end&lt;br /&gt;
%Solución estacionaria&lt;br /&gt;
a=sol(length(t),:);&lt;br /&gt;
b=sol(1,:);&lt;br /&gt;
c=sol((length(t)-1)/50+1,:);&lt;br /&gt;
d=sol((length(t)-1)*2/50+1,:);&lt;br /&gt;
e=sol((length(t)-1)*10/50+1,:);&lt;br /&gt;
hold on&lt;br /&gt;
plot(x,a,'xk','linewidth',2);&lt;br /&gt;
plot(x,b,'-m','linewidth',1);&lt;br /&gt;
plot(x,c,'-g','linewidth',1);&lt;br /&gt;
plot(x,d,'-y','linewidth',1);&lt;br /&gt;
plot(x,e,'-b','linewidth',1);&lt;br /&gt;
legend('u(50s)','u(0s)','u(1s)','u(2s)','u(10s)');&lt;br /&gt;
xlabel('Posición en la varilla')&lt;br /&gt;
ylabel('Concentracion')&lt;br /&gt;
hold off&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Soluciones(t).jpg|500px|thumb|centro|Soluciones a lo largo del tiempo]]&lt;br /&gt;
&lt;br /&gt;
La distancia entre la solución estacionaria y las soluciones para los siguientes instantes: 0s, 1s, 2s y 10s; se puede apreciar en la imagen anterior. &lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
Una vez analizado los datos, se demuestra que la sustancia contaminante se estabiliza en t=9.98s, con un error del 5%.&lt;br /&gt;
&lt;br /&gt;
En el caso de que consideremos Δx'=Δx/10,el tiempo en el que se estabiliza la cantidad de sustancia contaminante será t=10s, dato que será más preciso debido a que el paso realizado en el programa es menor.&lt;br /&gt;
&lt;br /&gt;
==Nueva condición de frontera==&lt;br /&gt;
&lt;br /&gt;
Si colocamos un limpiador, que elimina la sustancia contaminante, en el extremo izquierdo de la varilla, varían las condiciones de contorno del problema. En este caso, en el extremo izquierdo, la condición inicial será de tipo Dirichlet ya que se esta variación esta provocada por un mecanismo físico externo que actúa sobre el extremo. &amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;math&amp;gt;\begin{cases}&lt;br /&gt;
u_t(x,t)- D u_{xx}(x,t)= 0 ; x\in (0,5) \\&lt;br /&gt;
u(x,0)=u_0 , x\in (0,5) \\&lt;br /&gt;
u(0,t)=0 , u_x(5,t)=0 ; t\geq 0&lt;br /&gt;
\end{cases}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Dadas las nuevas condiciones, resolvemos el problema por el método de diferencias finitas con la ayuda de Matlab.&lt;br /&gt;
&lt;br /&gt;
{{matlab| codigo=&lt;br /&gt;
%Datos&lt;br /&gt;
L=5; %Longitud de varilla&lt;br /&gt;
T=5; %tiempo final&lt;br /&gt;
q=1;&lt;br /&gt;
%Discretización temporal y espacial&lt;br /&gt;
dx=0.1; % Paso en espacio&lt;br /&gt;
N=L/dx; %Número de subintervalos&lt;br /&gt;
x=0:dx:L;% Vector de espacio&lt;br /&gt;
dt=dx/4; % Paso en tiempo&lt;br /&gt;
t=0:dt:T; % Vector de tiempos&lt;br /&gt;
% Matriz de coeficientes. Aproximacion de -q*u_xx&lt;br /&gt;
K=2*diag(ones(1,N))-diag(ones(1,N-1),1)-diag(ones(1,N-1),-1);&lt;br /&gt;
K(N,N-1)=-2;&lt;br /&gt;
K=q*K/dx^2;&lt;br /&gt;
% Matriz F&lt;br /&gt;
F=zeros(N,1);&lt;br /&gt;
% Calculamos u0 condición inicial&lt;br /&gt;
u0=[zeros(1,N*3/5),3*ones(1,N*2/5)]';&lt;br /&gt;
sol(1,:)=[0,u0']; &lt;br /&gt;
U=u0; % Inicializacion&lt;br /&gt;
% Calculamos U_n -&amp;gt; U_n+1&lt;br /&gt;
%Aplicamos método trapecio método del trapecio&lt;br /&gt;
for j=1:length(t)-1&lt;br /&gt;
U=(eye(N)+(dt*K))\(dt*F+U);&lt;br /&gt;
sol(j+1,:)= [0,U'];&lt;br /&gt;
end&lt;br /&gt;
%Dibujamos la solucion&lt;br /&gt;
[xx,tt]=meshgrid(x,t);&lt;br /&gt;
surf(xx,tt,sol);&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Xata.JPG|500px|thumb|centro|Solución al variar las condiciones de contorno del problema.]]&lt;br /&gt;
&lt;br /&gt;
Observando la gráfica, y por la presencia del limpiador en el extremo de la varilla, para tiempos grandes la cantidad de sustancia contaminante será nula en toda la varilla. En realidad, esto no es del todo cierto puesto que la sustancia no llega a eliminarse completamente, ya que el limpiador solo elimina la sustancia contaminante en el extremo izquierdo. Aunque la concentración en todos los puntos disminuye de manera exponencial, permanece asintótica a 0.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Trapotito.JPG|500px|thumb|centro|Momento en el que se estabiliza con la presencia del limpiador.]]&lt;br /&gt;
&lt;br /&gt;
==Resolución por el método de Fourier==&lt;br /&gt;
&lt;br /&gt;
Las condiciones de frontera del problema son homogéneas, por lo que podemos aplicar este método de cálculo, sin realizar ningún cambio.&lt;br /&gt;
El primer paso es resolver el problema de autovalores asociado:&lt;br /&gt;
&amp;lt;math&amp;gt;\begin{cases}&lt;br /&gt;
y''+λ*y=0 x \in (0,5) \\&lt;br /&gt;
y'(0)=0 \\&lt;br /&gt;
y'(5)=0&lt;br /&gt;
\end{cases}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&amp;lt;math&amp;gt;  &amp;lt;/math&amp;gt;&lt;/div&gt;</summary>
		<author><name>Karlo André</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Difusi%C3%B3n_de_una_sustancia_contaminante_(Grupo_10)&amp;diff=12838</id>
		<title>Difusión de una sustancia contaminante (Grupo 10)</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Difusi%C3%B3n_de_una_sustancia_contaminante_(Grupo_10)&amp;diff=12838"/>
				<updated>2014-05-19T15:44:48Z</updated>
		
		<summary type="html">&lt;p&gt;Karlo André: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;''''''Texto en negrita''''''[[Archivo:nuriat.png|200px|thumb|right|Tubo con sustancia contaminante]]&lt;br /&gt;
La difusión implica un movimiento espontáneo y desordenado de moléculas individuales y, especialmente, nos interesa la difusión de moléculas de una sustancia disuelta en otra.&lt;br /&gt;
&lt;br /&gt;
La difusión de una sustancia puede considerarse análoga al flujo de calor, y la ley de Fick establece que el ritmo de difusión por unidad de superficie, en dirección perpendicular a ésta, es proporcional al gradiente de la concentración de esa sustancia en esa dirección. La concentración es la masa de la sustancia por unidad de volumen, y el gradiente de concentración es la variación de concentración por unidad de distancia.&lt;br /&gt;
&lt;br /&gt;
Para determinar como se distribuye la concentración de una sustancia contaminante tomaremos como ejemplo un tubo largo compuesto por dos sustancias de las cuáles una de ellas es contaminante.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
= Simplificación del problema =&lt;br /&gt;
&lt;br /&gt;
Para que este problema resulte más sencillo aplicaremos una serie de condiciones, facilitando el cálculo del mismo.&lt;br /&gt;
&lt;br /&gt;
En primer lugar denotaremos su concentración &amp;lt;math&amp;gt; u &amp;lt;/math&amp;gt;, concentración de contaminante en cada posición del tubo y constante en cada sección, medida en &amp;lt;math&amp;gt; \frac{mol}{m^2*s} &amp;lt;/math&amp;gt;. &lt;br /&gt;
&lt;br /&gt;
Supondremos que el tubo mide L=5 m, ocupando el intervalo &amp;lt;math&amp;gt; x \in (0,L) &amp;lt;/math&amp;gt;, y que la concentración es la misma en cualquier punto de la sección transversal del tubo. Por tanto, la concentración dependerá unicamente de dos variables &amp;lt;math&amp;gt; u = u(x,t) &amp;lt;/math&amp;gt;. En los extremos se ha colocado un aislante que hace que el flujo de contaminante al exterior del tubo sea nulo. Además, consideraremos la simplificación de que se trata de un tubo aislado por sus laterales, pero abierto por las bases del cilindro.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Ley de conservación de masa ==&lt;br /&gt;
&lt;br /&gt;
Tras una serie de experimentos realizados por Lavoisier, se pusieron de manifiesto que si tenemos en cuenta todas las sustancias que forman parte en una reacción química y todos los productos formados, nunca varía la masa. Esta ley exige que no haya una generación espontánea de materia. Es decir, en la región del espacio estudiada, no existe entrada o salida por un punto cualquiera (frontera o interior), la masa en esta región se mantiene constante. Esta es la ley de la conservación de la masa, que podemos enunciarla, pues, de la siguiente manera: &amp;lt;br /&amp;gt;&lt;br /&gt;
''&amp;quot;En toda reacción química la masa se conserva, esto es, la masa total de los reactivos es igual a la masa total de los productos&amp;quot;'' &amp;lt;br /&amp;gt;&lt;br /&gt;
La ley de conservación de masas exige que no haya una generación espontánea de materia. Es decir, en la región del espacio estudiada, no existe entrada o salida por un punto cualquiera (frontera o interior), la masa en esta región se mantiene constante.&lt;br /&gt;
&lt;br /&gt;
Esta suposición, en términos de variación de masa, puede quedar determinada como:&lt;br /&gt;
&lt;br /&gt;
''Variación de la masa en el tiempo = flujo de masa a través de la frontera por unidad de tiempo + flujo de masa generada en el interior por unidad de tiempo. ''&lt;br /&gt;
&lt;br /&gt;
== Ley de Fick ==&lt;br /&gt;
Se trata de una ley cuantitativa en forma diferencial que describe la difusión de materia o energía en un medio en el que inicialmente existe equilibrio químico o físico. Esta ley se trata de una generalización de los fenómenos descritos por la '''Ley de Fourier''', ya que esta es una consideración concreta del calor.&lt;br /&gt;
&lt;br /&gt;
La ley de Fick anuncia que en el caso de existir diferencias de concentración en cualquier especie, el paso de estas especies se llevará a cabo desde las regiones con mayor concentración a las de menor. Formulado matemáticamente:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;F(x,t)=-D\frac{\partial u}{\partial x}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Donde &amp;lt;math&amp;gt;F&amp;lt;/math&amp;gt; es el flujo de la sustancia y &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; el coeficiente de difusión, que representa la facilidad en que un soluto particular se mueve por un disolvente determinado.&lt;br /&gt;
&lt;br /&gt;
La ley de Fick establece que el flujo de difusión del contaminante es proporcional a la variación de concentración:&lt;br /&gt;
&amp;lt;math&amp;gt; F(x,t)=-D\frac{\partial u}{\partial x} &amp;lt;/math&amp;gt;&lt;br /&gt;
donde D es el coeficiente de difusión (medido en &amp;lt;math&amp;gt; \frac{m^2}{s} &amp;lt;/math&amp;gt;), que depende de las propiedades físicas de los compuestos, y que se supone constante D=1.&lt;br /&gt;
&lt;br /&gt;
= Modelización de la ecuación diferencial =&lt;br /&gt;
&lt;br /&gt;
Aplicando el principio de conservación de la masa y la ley de Fourier, definimos la variable &amp;lt;math&amp;gt; u(x,t)&amp;lt;/math&amp;gt; en unidades de sustancia por área, es decir, concentración por superficie del tubo.&lt;br /&gt;
&lt;br /&gt;
Consideramos &amp;lt;math&amp;gt; A &amp;lt;/math&amp;gt; como variable superficie, y tomamos un pequeño trozo, definido por &amp;lt;math&amp;gt;\Delta x&amp;lt;/math&amp;gt;. Entonces, para obtener la variación de la masa en el tiempo:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; A u(x,t) \Delta x &amp;lt;/math&amp;gt; &lt;br /&gt;
&lt;br /&gt;
Y derivando en el tiempo:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; A u_t(x,t) \Delta x &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
obtenemos el primer término de la igualdad anteriormente enunciada.&lt;br /&gt;
&lt;br /&gt;
En el segundo, consideramos nulo el flujo de masa en los puntos interiores por unidad de tiempo, pues suponemos la tubería perfecta y sin sumideros.&lt;br /&gt;
&lt;br /&gt;
Como la superﬁcie lateral del tubo está aislada, solamente habrá flujo de sustancia en la dirección del eje &amp;lt;math&amp;gt;x&amp;lt;/math&amp;gt;. Si &amp;lt;math&amp;gt;F(x,t)&amp;gt; 0&amp;lt;/math&amp;gt; pensamos que el ﬂujo va hacia la derecha, si &amp;lt;math&amp;gt;F(x,t)&amp;lt; 0&amp;lt;/math&amp;gt;, este va a hacia la izquierda. El ﬂujo de&lt;br /&gt;
calor en un intervalo &amp;lt;math&amp;gt;[x, x + ∆x ] &amp;lt;/math&amp;gt; viene dado dado por:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;F(x,t)A-F(x+\Delta x, t)A&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Con lo que queda &amp;lt;math&amp;gt;A u_t(x,t) \Delta x = F(x,t)A-F(x+\Delta x, t)A&amp;lt;/math&amp;gt;, y al dividir &amp;lt;math&amp;gt;A \Delta x&amp;lt;/math&amp;gt;, nos queda &amp;lt;math&amp;gt;u_t(x,t)= \frac {F(x,t)-F(x+\Delta x, t)}{\Delta x}&amp;lt;/math&amp;gt;. &amp;lt;br /&amp;gt;&lt;br /&gt;
Como &amp;lt;math&amp;gt;\Delta x \rightarrow 0 &amp;lt;/math&amp;gt;, &amp;lt;math&amp;gt;u_t(x,t)= -F_x(x,t)&amp;lt;/math&amp;gt;, y aplicando ley de Fick, &amp;lt;math&amp;gt;u_t(x,t)=-\frac{\partial }{\partial x}(-D u_x(x,t)) = D u_xx(x,t) &amp;lt;/math&amp;gt;.&amp;lt;br /&amp;gt;&lt;br /&gt;
Con lo que resulta una ecuación en derivadas parciales que determina la concentración de sustancia:&lt;br /&gt;
&amp;lt;math&amp;gt;u_t(x,t)- D u_xx(x,t)= 0 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Planteamiento del problema bien propuesto ==&lt;br /&gt;
&lt;br /&gt;
Suponemos que el flujo será nula al haber una tapa en los extremos del tubo, con lo que el problema bien propuesto quedaría::&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\begin{cases}&lt;br /&gt;
u_t(x,t)- D u_{xx}(x,t)= 0 ; x\in (0,5) \\&lt;br /&gt;
u(x,0)=u_0 , x\in (0,5) \\&lt;br /&gt;
u_x(0,t)=0 , u_x(5,t)=0 ; t\geq 0&lt;br /&gt;
\end{cases}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= Resolución numérica =&lt;br /&gt;
Para la resolución de ésta ecuación necesitaremos mínimo tres condiciones, dos de las cuales serán de contorno, y la otra será la condición inicial.Si suponemos &amp;lt;math&amp;gt;u_0(x,0)&amp;lt;/math&amp;gt;, entonces:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; u_0(x,0)=\begin{cases}&lt;br /&gt;
0,  si x\leq 3\\&lt;br /&gt;
3,  si x&amp;gt;3&lt;br /&gt;
\end{cases}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Resolución por el método de las diferencias finitas ==&lt;br /&gt;
En el primer caso particular que estudiaremos, trataremos de obtener una resolución numérica del problema anteriormente planteado, dónde tenemos las fronteras aisladas y las concentraciones iniciales conocidas:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\begin{cases}&lt;br /&gt;
u_t(x,t)- D u_{xx}(x,t)= 0; x\in (0,5), t\geq 0 \\&lt;br /&gt;
u_0(x,0), x\in (0,5) \\&lt;br /&gt;
u_x(0,t)=0, u_x(5,t)=0, t\geq 0&lt;br /&gt;
\end{cases}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
La resolución por el método de las diferencias finitas se basa en expresar el problema continuo a un sistema discreto de ecuaciones diferenciales de primer orden. Particularizando para nuestro caso con las condiciones dadas, el problema planteado sería:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\begin{cases}&lt;br /&gt;
u'_n(t)+\frac{-u_{n-1}(t)+2u_n(t)+u_{n+1}(t)}{h^2} \\&lt;br /&gt;
\frac{u_1(t)-u_-1(t)}{2h} \rightarrow u_1(t)=u_-1(t) \\&lt;br /&gt;
\frac{u_{N+1}(t)-u_{N-1}(t)}{2h} \rightarrow u_{N+1}(t)=u_{N-1}\\&lt;br /&gt;
u_n(0)=u^0(x)&lt;br /&gt;
\end{cases}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Por lo que tenemos un sistema de la forma:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\begin{cases}&lt;br /&gt;
U'(t)+KU(t)=F(t)=0\\&lt;br /&gt;
U(0)=U^0&lt;br /&gt;
\end{cases}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Con &amp;lt;math&amp;gt;N+1&amp;lt;/math&amp;gt; ecuaciones.&lt;br /&gt;
==== Resolución por método del trapecio ====&lt;br /&gt;
Suponiendo que en el instante inicial se verifica  :&amp;lt;math&amp;gt;&lt;br /&gt;
u(x,0)=\left\{\begin{matrix}\\0, x≤3\\3, x&amp;gt;3\end{matrix}\right.&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Si tomamos &amp;lt;math&amp;gt;\triangle t= \triangle x/4&amp;lt;/math&amp;gt; en &amp;lt;math&amp;gt;t\in\ [0,5]&amp;lt;/math&amp;gt;, con &amp;lt;math&amp;gt;\triangle x=0.1&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
El código en MATLAB del método sería:&lt;br /&gt;
&lt;br /&gt;
{{matlab| codigo=&lt;br /&gt;
%Datos&lt;br /&gt;
L=5; %Longitud de varilla&lt;br /&gt;
T=5; %tiempo final&lt;br /&gt;
q=1;&lt;br /&gt;
%Discretización temporal y espacial&lt;br /&gt;
dx=0.1; % Paso en espacio&lt;br /&gt;
N=L/dx; %Número de subintervalos&lt;br /&gt;
x=0:dx:L; % Vector de espacio&lt;br /&gt;
dt=dx/4; % Paso en tiempo&lt;br /&gt;
t=0:dt:T; % Vector de tiempos&lt;br /&gt;
% Matriz de coeficientes. Aproximacion de -q*u_xx&lt;br /&gt;
K=2*diag(ones(1,N+1))-diag(ones(1,N),1)-diag(ones(1,N),-1);&lt;br /&gt;
K(1,2)=-2;&lt;br /&gt;
K(N+1,N)=-2;&lt;br /&gt;
K=q*K/dx^2;&lt;br /&gt;
% Calculamos u0 condición inicial&lt;br /&gt;
u0=[zeros(1,1+N*3/5),3*ones(1,N*2/5)]';&lt;br /&gt;
% F=0 (no la consideramos)&lt;br /&gt;
sol(1,:)=u0'; % Guardamos la solucion&lt;br /&gt;
U=u0; % Inicializacion&lt;br /&gt;
% Calculamos U_n -&amp;gt; U_n+1&lt;br /&gt;
%Aplicamos método trapecio método del trapecio&lt;br /&gt;
for j=1:length(t)-1&lt;br /&gt;
U=(eye(N+1)+(dt*K)/2)\((eye(N+1)-(K*dt)/2)*U);&lt;br /&gt;
sol(j+1,:)= U'; % Guardamos solucion&lt;br /&gt;
end&lt;br /&gt;
%Dibujamos la solucion&lt;br /&gt;
[xx,tt]=meshgrid(x,t);&lt;br /&gt;
surf(xx,tt,sol);&lt;br /&gt;
}}&lt;br /&gt;
[[Archivo:nur.jpg|500px|thumb|centro|Gráfica concentración / espacio-tiempo. Resolución por el método del trapecio.]]&lt;br /&gt;
&lt;br /&gt;
==== Resolución por método de Euler explícito ====&lt;br /&gt;
{{matlab| codigo=&lt;br /&gt;
%Datos&lt;br /&gt;
L=5; %Longitud de varilla&lt;br /&gt;
T=5; %tiempo final&lt;br /&gt;
q=1;&lt;br /&gt;
%Discretización temporal y espacial&lt;br /&gt;
dx=0.1; % Paso en espacio&lt;br /&gt;
N=L/dx; %Número de subintervalos&lt;br /&gt;
x=0:dx:L; % Vector de espacio&lt;br /&gt;
dt=dx/20; % Paso en tiempo&lt;br /&gt;
t=0:dt:T; % Vector de tiempos&lt;br /&gt;
% Matriz de coeficientes. Aproximacion de -q*u_xx&lt;br /&gt;
K=2*diag(ones(1,N+1))-diag(ones(1,N),1)-diag(ones(1,N),-1);&lt;br /&gt;
K(1,2)=-2;&lt;br /&gt;
K(N+1,N)=-2;&lt;br /&gt;
K=q*K/dx^2;&lt;br /&gt;
% Calculamos u0 condición inicial&lt;br /&gt;
u0=[zeros(1,1+N*3/5),3*ones(1,N*2/5)]';&lt;br /&gt;
% F=0 (no la consideramos)&lt;br /&gt;
sol(1,:)=u0'; % Guardamos la solucion&lt;br /&gt;
U=u0; % Inicializacion&lt;br /&gt;
% Calculamos U_n -&amp;gt; U_n+1&lt;br /&gt;
%Aplicamos método Euler explícito&lt;br /&gt;
for j=1:length(t)-1 &lt;br /&gt;
k1=-K*U; % Calculamos k1=h*f(tn,yn)&lt;br /&gt;
k2=-K*(U+dt*k1); % Calculamos k2=h*f(tn+h/2,yn+1/2*k1)&lt;br /&gt;
% Meto los datos en el vector&lt;br /&gt;
U=U+(dt/2)*(k1+k2);&lt;br /&gt;
sol(j+1,:)= U'; % Guardamos solucion&lt;br /&gt;
end&lt;br /&gt;
%Dibujamos la solucion&lt;br /&gt;
[xx,tt]=meshgrid(x,t);&lt;br /&gt;
surf(xx,tt,sol);&lt;br /&gt;
}}&lt;br /&gt;
[[Archivo:mig.jpg|500px|thumb|centro|Gráfica concentración / espacio-tiempo. Resolución por el método de Euler explícito.]]&lt;br /&gt;
&lt;br /&gt;
==== Resolución por método de Euler implícito ====&lt;br /&gt;
{{matlab| codigo=&lt;br /&gt;
%Datos&lt;br /&gt;
L=5; %Longitud de varilla&lt;br /&gt;
T=5;&lt;br /&gt;
q=1;&lt;br /&gt;
%Discretización temporal y espacial&lt;br /&gt;
dx=0.1; % Paso en espacio&lt;br /&gt;
N=L/dx; %Número de subintervalos&lt;br /&gt;
h=L/N;&lt;br /&gt;
x=0:h:L; % Vector de espacio&lt;br /&gt;
dt=h/20; % Paso en tiempo&lt;br /&gt;
t=0:dt:T; % Vector de tiempos&lt;br /&gt;
% Matriz de coeficientes. Aproximacion de -q*u_xx&lt;br /&gt;
K=2*diag(ones(1,N+1))-diag(ones(1,N),1)-diag(ones(1,N),-1);&lt;br /&gt;
K(1,2)=-2;&lt;br /&gt;
K(N+1,N)=-2;&lt;br /&gt;
K=q*K/h^2;&lt;br /&gt;
% Calculamos u0 condición inicial&lt;br /&gt;
u0=[zeros(1,1+N*3/5),3*ones(1,N*2/5)]';&lt;br /&gt;
% F=0 (no la consideramos)&lt;br /&gt;
sol(1,:)=u0'; % Guardamos la solucion&lt;br /&gt;
U=u0; % Inicializacion&lt;br /&gt;
% Calculamos U_n -&amp;gt; U_n+1&lt;br /&gt;
% Aplicamos método implícito&lt;br /&gt;
for j=1:length(t)-1 &lt;br /&gt;
U=U-dt*K*U; &lt;br /&gt;
sol(j+1,:)= U'; % Guardamos solucion&lt;br /&gt;
end&lt;br /&gt;
%Dibujamos la solucion&lt;br /&gt;
[xx,tt]=meshgrid(x,t);&lt;br /&gt;
surf(xx,tt,sol);&lt;br /&gt;
}}&lt;br /&gt;
[[Archivo:migap.jpg|500px|thumb|centro|Gráfica concentración / espacio-tiempo. Resolución por el método de Euler implícito.]]&lt;br /&gt;
&lt;br /&gt;
==== Resolución por método de Euler modificado ====&lt;br /&gt;
{{matlab| codigo=&lt;br /&gt;
%Datos&lt;br /&gt;
L=5; %Longitud de varilla&lt;br /&gt;
T=5;&lt;br /&gt;
q=1;&lt;br /&gt;
%Discretización temporal y espacial&lt;br /&gt;
dx=0.1; % Paso en espacio&lt;br /&gt;
N=L/dx; %Número de subintervalos&lt;br /&gt;
h=L/N;&lt;br /&gt;
x=0:h:L; % Vector de espacio&lt;br /&gt;
dt=h/20; % Paso en tiempo&lt;br /&gt;
t=0:dt:T; % Vector de tiempos&lt;br /&gt;
% Matriz de coeficientes. Aproximacion de -q*u_xx&lt;br /&gt;
K=2*diag(ones(1,N+1))-diag(ones(1,N),1)-diag(ones(1,N),-1);&lt;br /&gt;
K(1,2)=-2;&lt;br /&gt;
K(N+1,N)=-2;&lt;br /&gt;
K=q*K/h^2;&lt;br /&gt;
% Calculamos u0 condición inicial&lt;br /&gt;
u0=[zeros(1,1+N*3/5),3*ones(1,N*2/5)]';&lt;br /&gt;
% F=0 (no la consideramos)&lt;br /&gt;
sol(1,:)=u0'; % Guardamos la solucion&lt;br /&gt;
U=u0; % Inicializacion&lt;br /&gt;
% Calculamos U_n -&amp;gt; U_n+1&lt;br /&gt;
for j=1:length(t)-1 &lt;br /&gt;
k1=-K*U; % Calculamos k1=h*f(tn,yn)&lt;br /&gt;
k2=-K*(U+dt*k1); % Calculamos k2=h*f(tn+h/2,yn+1/2*k1)&lt;br /&gt;
% Meto los datos en el vector&lt;br /&gt;
U=U+(dt/2)*(k1+k2);&lt;br /&gt;
sol(j+1,:)= U'; % Guardamos solucion&lt;br /&gt;
end&lt;br /&gt;
%Dibujamos la solucion&lt;br /&gt;
[xx,tt]=meshgrid(x,t);&lt;br /&gt;
surf(xx,tt,sol);&lt;br /&gt;
}}&lt;br /&gt;
[[Archivo: mig.jpg|500px|thumb|centro|Gráfica concentración / espacio-tiempo. Resolución por el método de Euler modificado.]]&lt;br /&gt;
&lt;br /&gt;
== Conservación de la masa total de contaminante ==&lt;br /&gt;
A continuación demostraremos que la masa total de contaminante en el tubo se conserva a lo largo del tiempo, que se puede deducir a partir de la ecuación sin tener que resolverla. Integramos la ecuación y debido a las condiciones de frontera:&lt;br /&gt;
&amp;lt;math&amp;gt;\frac d {dt} \int_0^5 u(x,t)\,dx= \int_0^5 u_{xx}(x,t)\,dx= u_x(x,t)|_0^5=0&amp;lt;/math&amp;gt;&lt;br /&gt;
{{matlab| codigo=&lt;br /&gt;
%Datos&lt;br /&gt;
L=5; %Longitud de varilla&lt;br /&gt;
T=5;&lt;br /&gt;
q=1;&lt;br /&gt;
%Discretización temporal y espacial&lt;br /&gt;
N=500; %Número de subintervalos&lt;br /&gt;
h=L/N;&lt;br /&gt;
x=0:h:L; % Vector de espacio&lt;br /&gt;
dt=h/4; % Paso en tiempo&lt;br /&gt;
t=0:dt:T; % Vector de tiempos&lt;br /&gt;
% Matriz de coeficientes. Aproximacion de -q*u_xx&lt;br /&gt;
K=2*diag(ones(1,N+1))-diag(ones(1,N),1)-diag(ones(1,N),-1);&lt;br /&gt;
K(1,2)=-2;&lt;br /&gt;
K(N+1,N)=-2;&lt;br /&gt;
K=q*K/h^2;&lt;br /&gt;
% Calculamos u0 condición inicial&lt;br /&gt;
u0=[zeros(1,1+N*3/5),3*ones(1,N*2/5)]';&lt;br /&gt;
% F=0 (no la consideramos)&lt;br /&gt;
sol(1,:)=u0'; % Guardamos la solucion&lt;br /&gt;
U=u0; % Inicializacion&lt;br /&gt;
% Calculamos U_n -&amp;gt; U_n+1&lt;br /&gt;
for j=1:length(t)-1 &lt;br /&gt;
U=(eye(N+1)+dt*K)\(U+dt*F); &lt;br /&gt;
sol(j+1,:)= U'; % Guardamos solucion&lt;br /&gt;
end&lt;br /&gt;
% Calculamos el area de la funcion en cada tiempo (area = cantidad de contaminante)&lt;br /&gt;
areas=zeros(1,length(t));&lt;br /&gt;
for i=1:length(t)&lt;br /&gt;
f=sol(i,:);&lt;br /&gt;
w=trapz(x,f);&lt;br /&gt;
area(i)=w;&lt;br /&gt;
end&lt;br /&gt;
%Dibujamos&lt;br /&gt;
plot(t,area)&lt;br /&gt;
xlabel('Tiempo')&lt;br /&gt;
ylabel('Cantidad de contaminante')&lt;br /&gt;
}}&lt;br /&gt;
[[Archivo:aleeex.jpg|500px|thumb|centro|Conservación masa total de contaminante]]&lt;br /&gt;
[[Archivo:gime.jpg|500px|thumb|centro|Conservación masa total de contaminante]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Concentración a lo largo del tiempo==&lt;br /&gt;
La concentración de la sustancia contaminante en la varilla varía con el tiempo, pero en un cierto momento esta concentración se va homogeneizando, y deja de variar, entrando en un estado estacionario::&lt;br /&gt;
&amp;lt;math&amp;gt; u_t(x,t)- D*u_{xx}(x,t)=0 &amp;lt;/math&amp;gt; :    &lt;br /&gt;
&amp;lt;math&amp;gt; u_t(x,t)=0 \rightarrow D*u_{xx}(x,t)=0 &amp;lt;/math&amp;gt; :&lt;br /&gt;
&amp;lt;math&amp;gt; u=c_1*x+c_2 &amp;lt;/math&amp;gt; &lt;br /&gt;
Utizando Matlab comprobaremos que &amp;lt;math&amp;gt; c_1=0 &amp;lt;/math&amp;gt; &amp;lt;math&amp;gt; c_2=1.17 &amp;lt;/math&amp;gt;&lt;br /&gt;
Para tiempos grandes la concentración se estabiliza en torno a 1.17 en toda la varilla, de forma que la solución se asemejará a una función lineal constante.&lt;br /&gt;
&lt;br /&gt;
{{matlab| codigo=&lt;br /&gt;
%Datos&lt;br /&gt;
L=5; %Longitud de varilla&lt;br /&gt;
T=50;&lt;br /&gt;
q=1;&lt;br /&gt;
%Discretización temporal y espacial&lt;br /&gt;
dx=0.1; % Paso en espacio&lt;br /&gt;
N=L/dx; %Número de subintervalos&lt;br /&gt;
h=L/N;&lt;br /&gt;
x=0:h:L; % Vector de espacio&lt;br /&gt;
dt=h/4; % Paso en tiempo&lt;br /&gt;
t=0:dt:T; % Vector de tiempos&lt;br /&gt;
% Matriz de coeficientes. Aproximacion de -q*u_xx&lt;br /&gt;
K=2*diag(ones(1,N+1))-diag(ones(1,N),1)-diag(ones(1,N),-1);&lt;br /&gt;
K(1,2)=-2;&lt;br /&gt;
K(N+1,N)=-2;&lt;br /&gt;
K=q*K/h^2;&lt;br /&gt;
% Calculamos u0 condición inicial&lt;br /&gt;
u0=[zeros(1,1+N*3/5),3*ones(1,N*2/5)]';&lt;br /&gt;
% F=0 (no la consideramos)&lt;br /&gt;
sol(1,:)=u0'; % Guardamos la solucion&lt;br /&gt;
U=u0; % Inicializacion&lt;br /&gt;
% Calculamos U_n -&amp;gt; U_n+1&lt;br /&gt;
%Aplicamos método trapecio método del trapecio&lt;br /&gt;
for j=1:length(t)-1&lt;br /&gt;
U=(eye(N+1)+(dt*K)/2)\((eye(N+1)-(K*dt)/2)*U);&lt;br /&gt;
sol(j+1,:)= U'; % Guardamos solucion&lt;br /&gt;
end&lt;br /&gt;
%Solución estacionaria&lt;br /&gt;
a=sol(length(t),:);&lt;br /&gt;
b=sol(1,:);&lt;br /&gt;
c=sol((length(t)-1)/50+1,:);&lt;br /&gt;
d=sol((length(t)-1)*2/50+1,:);&lt;br /&gt;
e=sol((length(t)-1)*10/50+1,:);&lt;br /&gt;
hold on&lt;br /&gt;
plot(x,a,'xk','linewidth',2);&lt;br /&gt;
plot(x,b,'-m','linewidth',1);&lt;br /&gt;
plot(x,c,'-g','linewidth',1);&lt;br /&gt;
plot(x,d,'-y','linewidth',1);&lt;br /&gt;
plot(x,e,'-b','linewidth',1);&lt;br /&gt;
legend('u(50s)','u(0s)','u(1s)','u(2s)','u(10s)');&lt;br /&gt;
xlabel('Posición en la varilla')&lt;br /&gt;
ylabel('Concentracion')&lt;br /&gt;
hold off&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Soluciones(t).jpg|500px|thumb|centro|Soluciones a lo largo del tiempo]]&lt;br /&gt;
&lt;br /&gt;
La distancia entre la solución estacionaria y las soluciones para los siguientes instantes: 0s, 1s, 2s y 10s; se puede apreciar en la imagen anterior. &lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
Una vez analizado los datos, se demuestra que la sustancia contaminante se estabiliza en t=9.98s, con un error del 5%.&lt;br /&gt;
&lt;br /&gt;
En el caso de que consideremos Δx'=Δx/10,el tiempo en el que se estabiliza la cantidad de sustancia contaminante será t=10s, dato que será más preciso debido a que el paso realizado en el programa es menor.&lt;br /&gt;
&lt;br /&gt;
==Nueva condición de frontera==&lt;br /&gt;
&lt;br /&gt;
Si colocamos un limpiador, que elimina la sustancia contaminante, en el extremo izquierdo de la varilla, varían las condiciones de contorno del problema. En este caso, en el extremo izquierdo, la condición inicial será de tipo Dirichlet ya que se esta variación esta provocada por un mecanismo físico externo que actúa sobre el extremo. &amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;math&amp;gt;\begin{cases}&lt;br /&gt;
u_t(x,t)- D u_{xx}(x,t)= 0 ; x\in (0,5) \\&lt;br /&gt;
u(x,0)=u_0 , x\in (0,5) \\&lt;br /&gt;
u(0,t)=0 , u_x(5,t)=0 ; t\geq 0&lt;br /&gt;
\end{cases}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Dadas las nuevas condiciones, resolvemos el problema por el método de diferencias finitas con la ayuda de Matlab.&lt;br /&gt;
&lt;br /&gt;
{{matlab| codigo=&lt;br /&gt;
%Datos&lt;br /&gt;
L=5; %Longitud de varilla&lt;br /&gt;
T=5; %tiempo final&lt;br /&gt;
q=1;&lt;br /&gt;
%Discretización temporal y espacial&lt;br /&gt;
dx=0.1; % Paso en espacio&lt;br /&gt;
N=L/dx; %Número de subintervalos&lt;br /&gt;
x=0:dx:L;% Vector de espacio&lt;br /&gt;
dt=dx/4; % Paso en tiempo&lt;br /&gt;
t=0:dt:T; % Vector de tiempos&lt;br /&gt;
% Matriz de coeficientes. Aproximacion de -q*u_xx&lt;br /&gt;
K=2*diag(ones(1,N))-diag(ones(1,N-1),1)-diag(ones(1,N-1),-1);&lt;br /&gt;
K(N,N-1)=-2;&lt;br /&gt;
K=q*K/dx^2;&lt;br /&gt;
% Matriz F&lt;br /&gt;
F=zeros(N,1);&lt;br /&gt;
% Calculamos u0 condición inicial&lt;br /&gt;
u0=[zeros(1,N*3/5),3*ones(1,N*2/5)]';&lt;br /&gt;
sol(1,:)=[0,u0']; &lt;br /&gt;
U=u0; % Inicializacion&lt;br /&gt;
% Calculamos U_n -&amp;gt; U_n+1&lt;br /&gt;
%Aplicamos método trapecio método del trapecio&lt;br /&gt;
for j=1:length(t)-1&lt;br /&gt;
U=(eye(N)+(dt*K))\(dt*F+U);&lt;br /&gt;
sol(j+1,:)= [0,U'];&lt;br /&gt;
end&lt;br /&gt;
%Dibujamos la solucion&lt;br /&gt;
[xx,tt]=meshgrid(x,t);&lt;br /&gt;
surf(xx,tt,sol);&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Xata.JPG|500px|thumb|centro|Solución al variar las condiciones de contorno del problema.]]&lt;br /&gt;
&lt;br /&gt;
Observando la gráfica, y por la presencia del limpiador en el extremo de la varilla, para tiempos grandes la cantidad de sustancia contaminante será nula en toda la varilla. En realidad, esto no es del todo cierto puesto que la sustancia no llega a eliminarse completamente, ya que el limpiador solo elimina la sustancia contaminante en el extremo izquierdo. Aunque la concentración en todos los puntos disminuye de manera exponencial, permanece asintótica a 0.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Trapotito.JPG|500px|thumb|centro|Momento en el que se estabiliza con la presencia del limpiador.]]&lt;br /&gt;
&lt;br /&gt;
==Resolución por el método de Fourier==&lt;br /&gt;
&lt;br /&gt;
Las condiciones de frontera del problema son homogéneas, por lo que podemos aplicar este método de cálculo, sin realizar ningún cambio.&lt;br /&gt;
El primer paso es resolver el problema de autovalores asociado:&lt;br /&gt;
&amp;lt;math&amp;gt;\begin{cases}&lt;br /&gt;
y''+λ*y=0 x \in (0,5) \\&lt;br /&gt;
y'(0)=0 y'(5)=0&lt;br /&gt;
\end{cases}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&amp;lt;math&amp;gt;  &amp;lt;/math&amp;gt;&lt;/div&gt;</summary>
		<author><name>Karlo André</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Difusi%C3%B3n_de_una_sustancia_contaminante_(Grupo_10)&amp;diff=12837</id>
		<title>Difusión de una sustancia contaminante (Grupo 10)</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Difusi%C3%B3n_de_una_sustancia_contaminante_(Grupo_10)&amp;diff=12837"/>
				<updated>2014-05-19T15:44:05Z</updated>
		
		<summary type="html">&lt;p&gt;Karlo André: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;''''''Texto en negrita''''''[[Archivo:nuriat.png|200px|thumb|right|Tubo con sustancia contaminante]]&lt;br /&gt;
La difusión implica un movimiento espontáneo y desordenado de moléculas individuales y, especialmente, nos interesa la difusión de moléculas de una sustancia disuelta en otra.&lt;br /&gt;
&lt;br /&gt;
La difusión de una sustancia puede considerarse análoga al flujo de calor, y la ley de Fick establece que el ritmo de difusión por unidad de superficie, en dirección perpendicular a ésta, es proporcional al gradiente de la concentración de esa sustancia en esa dirección. La concentración es la masa de la sustancia por unidad de volumen, y el gradiente de concentración es la variación de concentración por unidad de distancia.&lt;br /&gt;
&lt;br /&gt;
Para determinar como se distribuye la concentración de una sustancia contaminante tomaremos como ejemplo un tubo largo compuesto por dos sustancias de las cuáles una de ellas es contaminante.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
= Simplificación del problema =&lt;br /&gt;
&lt;br /&gt;
Para que este problema resulte más sencillo aplicaremos una serie de condiciones, facilitando el cálculo del mismo.&lt;br /&gt;
&lt;br /&gt;
En primer lugar denotaremos su concentración &amp;lt;math&amp;gt; u &amp;lt;/math&amp;gt;, concentración de contaminante en cada posición del tubo y constante en cada sección, medida en &amp;lt;math&amp;gt; \frac{mol}{m^2*s} &amp;lt;/math&amp;gt;. &lt;br /&gt;
&lt;br /&gt;
Supondremos que el tubo mide L=5 m, ocupando el intervalo &amp;lt;math&amp;gt; x \in (0,L) &amp;lt;/math&amp;gt;, y que la concentración es la misma en cualquier punto de la sección transversal del tubo. Por tanto, la concentración dependerá unicamente de dos variables &amp;lt;math&amp;gt; u = u(x,t) &amp;lt;/math&amp;gt;. En los extremos se ha colocado un aislante que hace que el flujo de contaminante al exterior del tubo sea nulo. Además, consideraremos la simplificación de que se trata de un tubo aislado por sus laterales, pero abierto por las bases del cilindro.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Ley de conservación de masa ==&lt;br /&gt;
&lt;br /&gt;
Tras una serie de experimentos realizados por Lavoisier, se pusieron de manifiesto que si tenemos en cuenta todas las sustancias que forman parte en una reacción química y todos los productos formados, nunca varía la masa. Esta ley exige que no haya una generación espontánea de materia. Es decir, en la región del espacio estudiada, no existe entrada o salida por un punto cualquiera (frontera o interior), la masa en esta región se mantiene constante. Esta es la ley de la conservación de la masa, que podemos enunciarla, pues, de la siguiente manera: &amp;lt;br /&amp;gt;&lt;br /&gt;
''&amp;quot;En toda reacción química la masa se conserva, esto es, la masa total de los reactivos es igual a la masa total de los productos&amp;quot;'' &amp;lt;br /&amp;gt;&lt;br /&gt;
La ley de conservación de masas exige que no haya una generación espontánea de materia. Es decir, en la región del espacio estudiada, no existe entrada o salida por un punto cualquiera (frontera o interior), la masa en esta región se mantiene constante.&lt;br /&gt;
&lt;br /&gt;
Esta suposición, en términos de variación de masa, puede quedar determinada como:&lt;br /&gt;
&lt;br /&gt;
''Variación de la masa en el tiempo = flujo de masa a través de la frontera por unidad de tiempo + flujo de masa generada en el interior por unidad de tiempo. ''&lt;br /&gt;
&lt;br /&gt;
== Ley de Fick ==&lt;br /&gt;
Se trata de una ley cuantitativa en forma diferencial que describe la difusión de materia o energía en un medio en el que inicialmente existe equilibrio químico o físico. Esta ley se trata de una generalización de los fenómenos descritos por la '''Ley de Fourier''', ya que esta es una consideración concreta del calor.&lt;br /&gt;
&lt;br /&gt;
La ley de Fick anuncia que en el caso de existir diferencias de concentración en cualquier especie, el paso de estas especies se llevará a cabo desde las regiones con mayor concentración a las de menor. Formulado matemáticamente:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;F(x,t)=-D\frac{\partial u}{\partial x}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Donde &amp;lt;math&amp;gt;F&amp;lt;/math&amp;gt; es el flujo de la sustancia y &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; el coeficiente de difusión, que representa la facilidad en que un soluto particular se mueve por un disolvente determinado.&lt;br /&gt;
&lt;br /&gt;
La ley de Fick establece que el flujo de difusión del contaminante es proporcional a la variación de concentración:&lt;br /&gt;
&amp;lt;math&amp;gt; F(x,t)=-D\frac{\partial u}{\partial x} &amp;lt;/math&amp;gt;&lt;br /&gt;
donde D es el coeficiente de difusión (medido en &amp;lt;math&amp;gt; \frac{m^2}{s} &amp;lt;/math&amp;gt;), que depende de las propiedades físicas de los compuestos, y que se supone constante D=1.&lt;br /&gt;
&lt;br /&gt;
= Modelización de la ecuación diferencial =&lt;br /&gt;
&lt;br /&gt;
Aplicando el principio de conservación de la masa y la ley de Fourier, definimos la variable &amp;lt;math&amp;gt; u(x,t)&amp;lt;/math&amp;gt; en unidades de sustancia por área, es decir, concentración por superficie del tubo.&lt;br /&gt;
&lt;br /&gt;
Consideramos &amp;lt;math&amp;gt; A &amp;lt;/math&amp;gt; como variable superficie, y tomamos un pequeño trozo, definido por &amp;lt;math&amp;gt;\Delta x&amp;lt;/math&amp;gt;. Entonces, para obtener la variación de la masa en el tiempo:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; A u(x,t) \Delta x &amp;lt;/math&amp;gt; &lt;br /&gt;
&lt;br /&gt;
Y derivando en el tiempo:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; A u_t(x,t) \Delta x &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
obtenemos el primer término de la igualdad anteriormente enunciada.&lt;br /&gt;
&lt;br /&gt;
En el segundo, consideramos nulo el flujo de masa en los puntos interiores por unidad de tiempo, pues suponemos la tubería perfecta y sin sumideros.&lt;br /&gt;
&lt;br /&gt;
Como la superﬁcie lateral del tubo está aislada, solamente habrá flujo de sustancia en la dirección del eje &amp;lt;math&amp;gt;x&amp;lt;/math&amp;gt;. Si &amp;lt;math&amp;gt;F(x,t)&amp;gt; 0&amp;lt;/math&amp;gt; pensamos que el ﬂujo va hacia la derecha, si &amp;lt;math&amp;gt;F(x,t)&amp;lt; 0&amp;lt;/math&amp;gt;, este va a hacia la izquierda. El ﬂujo de&lt;br /&gt;
calor en un intervalo &amp;lt;math&amp;gt;[x, x + ∆x ] &amp;lt;/math&amp;gt; viene dado dado por:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;F(x,t)A-F(x+\Delta x, t)A&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Con lo que queda &amp;lt;math&amp;gt;A u_t(x,t) \Delta x = F(x,t)A-F(x+\Delta x, t)A&amp;lt;/math&amp;gt;, y al dividir &amp;lt;math&amp;gt;A \Delta x&amp;lt;/math&amp;gt;, nos queda &amp;lt;math&amp;gt;u_t(x,t)= \frac {F(x,t)-F(x+\Delta x, t)}{\Delta x}&amp;lt;/math&amp;gt;. &amp;lt;br /&amp;gt;&lt;br /&gt;
Como &amp;lt;math&amp;gt;\Delta x \rightarrow 0 &amp;lt;/math&amp;gt;, &amp;lt;math&amp;gt;u_t(x,t)= -F_x(x,t)&amp;lt;/math&amp;gt;, y aplicando ley de Fick, &amp;lt;math&amp;gt;u_t(x,t)=-\frac{\partial }{\partial x}(-D u_x(x,t)) = D u_xx(x,t) &amp;lt;/math&amp;gt;.&amp;lt;br /&amp;gt;&lt;br /&gt;
Con lo que resulta una ecuación en derivadas parciales que determina la concentración de sustancia:&lt;br /&gt;
&amp;lt;math&amp;gt;u_t(x,t)- D u_xx(x,t)= 0 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Planteamiento del problema bien propuesto ==&lt;br /&gt;
&lt;br /&gt;
Suponemos que el flujo será nula al haber una tapa en los extremos del tubo, con lo que el problema bien propuesto quedaría::&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\begin{cases}&lt;br /&gt;
u_t(x,t)- D u_{xx}(x,t)= 0 ; x\in (0,5) \\&lt;br /&gt;
u(x,0)=u_0 , x\in (0,5) \\&lt;br /&gt;
u_x(0,t)=0 , u_x(5,t)=0 ; t\geq 0&lt;br /&gt;
\end{cases}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= Resolución numérica =&lt;br /&gt;
Para la resolución de ésta ecuación necesitaremos mínimo tres condiciones, dos de las cuales serán de contorno, y la otra será la condición inicial.Si suponemos &amp;lt;math&amp;gt;u_0(x,0)&amp;lt;/math&amp;gt;, entonces:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; u_0(x,0)=\begin{cases}&lt;br /&gt;
0,  si x\leq 3\\&lt;br /&gt;
3,  si x&amp;gt;3&lt;br /&gt;
\end{cases}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Resolución por el método de las diferencias finitas ==&lt;br /&gt;
En el primer caso particular que estudiaremos, trataremos de obtener una resolución numérica del problema anteriormente planteado, dónde tenemos las fronteras aisladas y las concentraciones iniciales conocidas:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\begin{cases}&lt;br /&gt;
u_t(x,t)- D u_{xx}(x,t)= 0; x\in (0,5), t\geq 0 \\&lt;br /&gt;
u_0(x,0), x\in (0,5) \\&lt;br /&gt;
u_x(0,t)=0, u_x(5,t)=0, t\geq 0&lt;br /&gt;
\end{cases}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
La resolución por el método de las diferencias finitas se basa en expresar el problema continuo a un sistema discreto de ecuaciones diferenciales de primer orden. Particularizando para nuestro caso con las condiciones dadas, el problema planteado sería:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\begin{cases}&lt;br /&gt;
u'_n(t)+\frac{-u_{n-1}(t)+2u_n(t)+u_{n+1}(t)}{h^2} \\&lt;br /&gt;
\frac{u_1(t)-u_-1(t)}{2h} \rightarrow u_1(t)=u_-1(t) \\&lt;br /&gt;
\frac{u_{N+1}(t)-u_{N-1}(t)}{2h} \rightarrow u_{N+1}(t)=u_{N-1}\\&lt;br /&gt;
u_n(0)=u^0(x)&lt;br /&gt;
\end{cases}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Por lo que tenemos un sistema de la forma:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\begin{cases}&lt;br /&gt;
U'(t)+KU(t)=F(t)=0\\&lt;br /&gt;
U(0)=U^0&lt;br /&gt;
\end{cases}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Con &amp;lt;math&amp;gt;N+1&amp;lt;/math&amp;gt; ecuaciones.&lt;br /&gt;
==== Resolución por método del trapecio ====&lt;br /&gt;
Suponiendo que en el instante inicial se verifica  :&amp;lt;math&amp;gt;&lt;br /&gt;
u(x,0)=\left\{\begin{matrix}\\0, x≤3\\3, x&amp;gt;3\end{matrix}\right.&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Si tomamos &amp;lt;math&amp;gt;\triangle t= \triangle x/4&amp;lt;/math&amp;gt; en &amp;lt;math&amp;gt;t\in\ [0,5]&amp;lt;/math&amp;gt;, con &amp;lt;math&amp;gt;\triangle x=0.1&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
El código en MATLAB del método sería:&lt;br /&gt;
&lt;br /&gt;
{{matlab| codigo=&lt;br /&gt;
%Datos&lt;br /&gt;
L=5; %Longitud de varilla&lt;br /&gt;
T=5; %tiempo final&lt;br /&gt;
q=1;&lt;br /&gt;
%Discretización temporal y espacial&lt;br /&gt;
dx=0.1; % Paso en espacio&lt;br /&gt;
N=L/dx; %Número de subintervalos&lt;br /&gt;
x=0:dx:L; % Vector de espacio&lt;br /&gt;
dt=dx/4; % Paso en tiempo&lt;br /&gt;
t=0:dt:T; % Vector de tiempos&lt;br /&gt;
% Matriz de coeficientes. Aproximacion de -q*u_xx&lt;br /&gt;
K=2*diag(ones(1,N+1))-diag(ones(1,N),1)-diag(ones(1,N),-1);&lt;br /&gt;
K(1,2)=-2;&lt;br /&gt;
K(N+1,N)=-2;&lt;br /&gt;
K=q*K/dx^2;&lt;br /&gt;
% Calculamos u0 condición inicial&lt;br /&gt;
u0=[zeros(1,1+N*3/5),3*ones(1,N*2/5)]';&lt;br /&gt;
% F=0 (no la consideramos)&lt;br /&gt;
sol(1,:)=u0'; % Guardamos la solucion&lt;br /&gt;
U=u0; % Inicializacion&lt;br /&gt;
% Calculamos U_n -&amp;gt; U_n+1&lt;br /&gt;
%Aplicamos método trapecio método del trapecio&lt;br /&gt;
for j=1:length(t)-1&lt;br /&gt;
U=(eye(N+1)+(dt*K)/2)\((eye(N+1)-(K*dt)/2)*U);&lt;br /&gt;
sol(j+1,:)= U'; % Guardamos solucion&lt;br /&gt;
end&lt;br /&gt;
%Dibujamos la solucion&lt;br /&gt;
[xx,tt]=meshgrid(x,t);&lt;br /&gt;
surf(xx,tt,sol);&lt;br /&gt;
}}&lt;br /&gt;
[[Archivo:nur.jpg|500px|thumb|centro|Gráfica concentración / espacio-tiempo. Resolución por el método del trapecio.]]&lt;br /&gt;
&lt;br /&gt;
==== Resolución por método de Euler explícito ====&lt;br /&gt;
{{matlab| codigo=&lt;br /&gt;
%Datos&lt;br /&gt;
L=5; %Longitud de varilla&lt;br /&gt;
T=5; %tiempo final&lt;br /&gt;
q=1;&lt;br /&gt;
%Discretización temporal y espacial&lt;br /&gt;
dx=0.1; % Paso en espacio&lt;br /&gt;
N=L/dx; %Número de subintervalos&lt;br /&gt;
x=0:dx:L; % Vector de espacio&lt;br /&gt;
dt=dx/20; % Paso en tiempo&lt;br /&gt;
t=0:dt:T; % Vector de tiempos&lt;br /&gt;
% Matriz de coeficientes. Aproximacion de -q*u_xx&lt;br /&gt;
K=2*diag(ones(1,N+1))-diag(ones(1,N),1)-diag(ones(1,N),-1);&lt;br /&gt;
K(1,2)=-2;&lt;br /&gt;
K(N+1,N)=-2;&lt;br /&gt;
K=q*K/dx^2;&lt;br /&gt;
% Calculamos u0 condición inicial&lt;br /&gt;
u0=[zeros(1,1+N*3/5),3*ones(1,N*2/5)]';&lt;br /&gt;
% F=0 (no la consideramos)&lt;br /&gt;
sol(1,:)=u0'; % Guardamos la solucion&lt;br /&gt;
U=u0; % Inicializacion&lt;br /&gt;
% Calculamos U_n -&amp;gt; U_n+1&lt;br /&gt;
%Aplicamos método Euler explícito&lt;br /&gt;
for j=1:length(t)-1 &lt;br /&gt;
k1=-K*U; % Calculamos k1=h*f(tn,yn)&lt;br /&gt;
k2=-K*(U+dt*k1); % Calculamos k2=h*f(tn+h/2,yn+1/2*k1)&lt;br /&gt;
% Meto los datos en el vector&lt;br /&gt;
U=U+(dt/2)*(k1+k2);&lt;br /&gt;
sol(j+1,:)= U'; % Guardamos solucion&lt;br /&gt;
end&lt;br /&gt;
%Dibujamos la solucion&lt;br /&gt;
[xx,tt]=meshgrid(x,t);&lt;br /&gt;
surf(xx,tt,sol);&lt;br /&gt;
}}&lt;br /&gt;
[[Archivo:mig.jpg|500px|thumb|centro|Gráfica concentración / espacio-tiempo. Resolución por el método de Euler explícito.]]&lt;br /&gt;
&lt;br /&gt;
==== Resolución por método de Euler implícito ====&lt;br /&gt;
{{matlab| codigo=&lt;br /&gt;
%Datos&lt;br /&gt;
L=5; %Longitud de varilla&lt;br /&gt;
T=5;&lt;br /&gt;
q=1;&lt;br /&gt;
%Discretización temporal y espacial&lt;br /&gt;
dx=0.1; % Paso en espacio&lt;br /&gt;
N=L/dx; %Número de subintervalos&lt;br /&gt;
h=L/N;&lt;br /&gt;
x=0:h:L; % Vector de espacio&lt;br /&gt;
dt=h/20; % Paso en tiempo&lt;br /&gt;
t=0:dt:T; % Vector de tiempos&lt;br /&gt;
% Matriz de coeficientes. Aproximacion de -q*u_xx&lt;br /&gt;
K=2*diag(ones(1,N+1))-diag(ones(1,N),1)-diag(ones(1,N),-1);&lt;br /&gt;
K(1,2)=-2;&lt;br /&gt;
K(N+1,N)=-2;&lt;br /&gt;
K=q*K/h^2;&lt;br /&gt;
% Calculamos u0 condición inicial&lt;br /&gt;
u0=[zeros(1,1+N*3/5),3*ones(1,N*2/5)]';&lt;br /&gt;
% F=0 (no la consideramos)&lt;br /&gt;
sol(1,:)=u0'; % Guardamos la solucion&lt;br /&gt;
U=u0; % Inicializacion&lt;br /&gt;
% Calculamos U_n -&amp;gt; U_n+1&lt;br /&gt;
% Aplicamos método implícito&lt;br /&gt;
for j=1:length(t)-1 &lt;br /&gt;
U=U-dt*K*U; &lt;br /&gt;
sol(j+1,:)= U'; % Guardamos solucion&lt;br /&gt;
end&lt;br /&gt;
%Dibujamos la solucion&lt;br /&gt;
[xx,tt]=meshgrid(x,t);&lt;br /&gt;
surf(xx,tt,sol);&lt;br /&gt;
}}&lt;br /&gt;
[[Archivo:migap.jpg|500px|thumb|centro|Gráfica concentración / espacio-tiempo. Resolución por el método de Euler implícito.]]&lt;br /&gt;
&lt;br /&gt;
==== Resolución por método de Euler modificado ====&lt;br /&gt;
{{matlab| codigo=&lt;br /&gt;
%Datos&lt;br /&gt;
L=5; %Longitud de varilla&lt;br /&gt;
T=5;&lt;br /&gt;
q=1;&lt;br /&gt;
%Discretización temporal y espacial&lt;br /&gt;
dx=0.1; % Paso en espacio&lt;br /&gt;
N=L/dx; %Número de subintervalos&lt;br /&gt;
h=L/N;&lt;br /&gt;
x=0:h:L; % Vector de espacio&lt;br /&gt;
dt=h/20; % Paso en tiempo&lt;br /&gt;
t=0:dt:T; % Vector de tiempos&lt;br /&gt;
% Matriz de coeficientes. Aproximacion de -q*u_xx&lt;br /&gt;
K=2*diag(ones(1,N+1))-diag(ones(1,N),1)-diag(ones(1,N),-1);&lt;br /&gt;
K(1,2)=-2;&lt;br /&gt;
K(N+1,N)=-2;&lt;br /&gt;
K=q*K/h^2;&lt;br /&gt;
% Calculamos u0 condición inicial&lt;br /&gt;
u0=[zeros(1,1+N*3/5),3*ones(1,N*2/5)]';&lt;br /&gt;
% F=0 (no la consideramos)&lt;br /&gt;
sol(1,:)=u0'; % Guardamos la solucion&lt;br /&gt;
U=u0; % Inicializacion&lt;br /&gt;
% Calculamos U_n -&amp;gt; U_n+1&lt;br /&gt;
for j=1:length(t)-1 &lt;br /&gt;
k1=-K*U; % Calculamos k1=h*f(tn,yn)&lt;br /&gt;
k2=-K*(U+dt*k1); % Calculamos k2=h*f(tn+h/2,yn+1/2*k1)&lt;br /&gt;
% Meto los datos en el vector&lt;br /&gt;
U=U+(dt/2)*(k1+k2);&lt;br /&gt;
sol(j+1,:)= U'; % Guardamos solucion&lt;br /&gt;
end&lt;br /&gt;
%Dibujamos la solucion&lt;br /&gt;
[xx,tt]=meshgrid(x,t);&lt;br /&gt;
surf(xx,tt,sol);&lt;br /&gt;
}}&lt;br /&gt;
[[Archivo: mig.jpg|500px|thumb|centro|Gráfica concentración / espacio-tiempo. Resolución por el método de Euler modificado.]]&lt;br /&gt;
&lt;br /&gt;
== Conservación de la masa total de contaminante ==&lt;br /&gt;
A continuación demostraremos que la masa total de contaminante en el tubo se conserva a lo largo del tiempo, que se puede deducir a partir de la ecuación sin tener que resolverla. Integramos la ecuación y debido a las condiciones de frontera:&lt;br /&gt;
&amp;lt;math&amp;gt;\frac d {dt} \int_0^5 u(x,t)\,dx= \int_0^5 u_{xx}(x,t)\,dx= u_x(x,t)|_0^5=0&amp;lt;/math&amp;gt;&lt;br /&gt;
{{matlab| codigo=&lt;br /&gt;
%Datos&lt;br /&gt;
L=5; %Longitud de varilla&lt;br /&gt;
T=5;&lt;br /&gt;
q=1;&lt;br /&gt;
%Discretización temporal y espacial&lt;br /&gt;
N=500; %Número de subintervalos&lt;br /&gt;
h=L/N;&lt;br /&gt;
x=0:h:L; % Vector de espacio&lt;br /&gt;
dt=h/4; % Paso en tiempo&lt;br /&gt;
t=0:dt:T; % Vector de tiempos&lt;br /&gt;
% Matriz de coeficientes. Aproximacion de -q*u_xx&lt;br /&gt;
K=2*diag(ones(1,N+1))-diag(ones(1,N),1)-diag(ones(1,N),-1);&lt;br /&gt;
K(1,2)=-2;&lt;br /&gt;
K(N+1,N)=-2;&lt;br /&gt;
K=q*K/h^2;&lt;br /&gt;
% Calculamos u0 condición inicial&lt;br /&gt;
u0=[zeros(1,1+N*3/5),3*ones(1,N*2/5)]';&lt;br /&gt;
% F=0 (no la consideramos)&lt;br /&gt;
sol(1,:)=u0'; % Guardamos la solucion&lt;br /&gt;
U=u0; % Inicializacion&lt;br /&gt;
% Calculamos U_n -&amp;gt; U_n+1&lt;br /&gt;
for j=1:length(t)-1 &lt;br /&gt;
U=(eye(N+1)+dt*K)\(U+dt*F); &lt;br /&gt;
sol(j+1,:)= U'; % Guardamos solucion&lt;br /&gt;
end&lt;br /&gt;
% Calculamos el area de la funcion en cada tiempo (area = cantidad de contaminante)&lt;br /&gt;
areas=zeros(1,length(t));&lt;br /&gt;
for i=1:length(t)&lt;br /&gt;
f=sol(i,:);&lt;br /&gt;
w=trapz(x,f);&lt;br /&gt;
area(i)=w;&lt;br /&gt;
end&lt;br /&gt;
%Dibujamos&lt;br /&gt;
plot(t,area)&lt;br /&gt;
xlabel('Tiempo')&lt;br /&gt;
ylabel('Cantidad de contaminante')&lt;br /&gt;
}}&lt;br /&gt;
[[Archivo:aleeex.jpg|500px|thumb|centro|Conservación masa total de contaminante]]&lt;br /&gt;
[[Archivo:gime.jpg|500px|thumb|centro|Conservación masa total de contaminante]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Concentración a lo largo del tiempo==&lt;br /&gt;
La concentración de la sustancia contaminante en la varilla varía con el tiempo, pero en un cierto momento esta concentración se va homogeneizando, y deja de variar, entrando en un estado estacionario::&lt;br /&gt;
&amp;lt;math&amp;gt; u_t(x,t)- D*u_{xx}(x,t)=0 &amp;lt;/math&amp;gt; :    &lt;br /&gt;
&amp;lt;math&amp;gt; u_t(x,t)=0 \rightarrow D*u_{xx}(x,t)=0 &amp;lt;/math&amp;gt; :&lt;br /&gt;
&amp;lt;math&amp;gt; u=c_1*x+c_2 &amp;lt;/math&amp;gt; &lt;br /&gt;
Utizando Matlab comprobaremos que &amp;lt;math&amp;gt; c_1=0 &amp;lt;/math&amp;gt; &amp;lt;math&amp;gt; c_2=1.17 &amp;lt;/math&amp;gt;&lt;br /&gt;
Para tiempos grandes la concentración se estabiliza en torno a 1.17 en toda la varilla, de forma que la solución se asemejará a una función lineal constante.&lt;br /&gt;
&lt;br /&gt;
{{matlab| codigo=&lt;br /&gt;
%Datos&lt;br /&gt;
L=5; %Longitud de varilla&lt;br /&gt;
T=50;&lt;br /&gt;
q=1;&lt;br /&gt;
%Discretización temporal y espacial&lt;br /&gt;
dx=0.1; % Paso en espacio&lt;br /&gt;
N=L/dx; %Número de subintervalos&lt;br /&gt;
h=L/N;&lt;br /&gt;
x=0:h:L; % Vector de espacio&lt;br /&gt;
dt=h/4; % Paso en tiempo&lt;br /&gt;
t=0:dt:T; % Vector de tiempos&lt;br /&gt;
% Matriz de coeficientes. Aproximacion de -q*u_xx&lt;br /&gt;
K=2*diag(ones(1,N+1))-diag(ones(1,N),1)-diag(ones(1,N),-1);&lt;br /&gt;
K(1,2)=-2;&lt;br /&gt;
K(N+1,N)=-2;&lt;br /&gt;
K=q*K/h^2;&lt;br /&gt;
% Calculamos u0 condición inicial&lt;br /&gt;
u0=[zeros(1,1+N*3/5),3*ones(1,N*2/5)]';&lt;br /&gt;
% F=0 (no la consideramos)&lt;br /&gt;
sol(1,:)=u0'; % Guardamos la solucion&lt;br /&gt;
U=u0; % Inicializacion&lt;br /&gt;
% Calculamos U_n -&amp;gt; U_n+1&lt;br /&gt;
%Aplicamos método trapecio método del trapecio&lt;br /&gt;
for j=1:length(t)-1&lt;br /&gt;
U=(eye(N+1)+(dt*K)/2)\((eye(N+1)-(K*dt)/2)*U);&lt;br /&gt;
sol(j+1,:)= U'; % Guardamos solucion&lt;br /&gt;
end&lt;br /&gt;
%Solución estacionaria&lt;br /&gt;
a=sol(length(t),:);&lt;br /&gt;
b=sol(1,:);&lt;br /&gt;
c=sol((length(t)-1)/50+1,:);&lt;br /&gt;
d=sol((length(t)-1)*2/50+1,:);&lt;br /&gt;
e=sol((length(t)-1)*10/50+1,:);&lt;br /&gt;
hold on&lt;br /&gt;
plot(x,a,'xk','linewidth',2);&lt;br /&gt;
plot(x,b,'-m','linewidth',1);&lt;br /&gt;
plot(x,c,'-g','linewidth',1);&lt;br /&gt;
plot(x,d,'-y','linewidth',1);&lt;br /&gt;
plot(x,e,'-b','linewidth',1);&lt;br /&gt;
legend('u(50s)','u(0s)','u(1s)','u(2s)','u(10s)');&lt;br /&gt;
xlabel('Posición en la varilla')&lt;br /&gt;
ylabel('Concentracion')&lt;br /&gt;
hold off&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Soluciones(t).jpg|500px|thumb|centro|Soluciones a lo largo del tiempo]]&lt;br /&gt;
&lt;br /&gt;
La distancia entre la solución estacionaria y las soluciones para los siguientes instantes: 0s, 1s, 2s y 10s; se puede apreciar en la imagen anterior. &lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
Una vez analizado los datos, se demuestra que la sustancia contaminante se estabiliza en t=9.98s, con un error del 5%.&lt;br /&gt;
&lt;br /&gt;
En el caso de que consideremos Δx'=Δx/10,el tiempo en el que se estabiliza la cantidad de sustancia contaminante será t=10s, dato que será más preciso debido a que el paso realizado en el programa es menor.&lt;br /&gt;
&lt;br /&gt;
==Nueva condición de frontera==&lt;br /&gt;
&lt;br /&gt;
Si colocamos un limpiador, que elimina la sustancia contaminante, en el extremo izquierdo de la varilla, varían las condiciones de contorno del problema. En este caso, en el extremo izquierdo, la condición inicial será de tipo Dirichlet ya que se esta variación esta provocada por un mecanismo físico externo que actúa sobre el extremo. &amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;math&amp;gt;\begin{cases}&lt;br /&gt;
u_t(x,t)- D u_{xx}(x,t)= 0 ; x\in (0,5) \\&lt;br /&gt;
u(x,0)=u_0 , x\in (0,5) \\&lt;br /&gt;
u(0,t)=0 , u_x(5,t)=0 ; t\geq 0&lt;br /&gt;
\end{cases}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Dadas las nuevas condiciones, resolvemos el problema por el método de diferencias finitas con la ayuda de Matlab.&lt;br /&gt;
&lt;br /&gt;
{{matlab| codigo=&lt;br /&gt;
%Datos&lt;br /&gt;
L=5; %Longitud de varilla&lt;br /&gt;
T=5; %tiempo final&lt;br /&gt;
q=1;&lt;br /&gt;
%Discretización temporal y espacial&lt;br /&gt;
dx=0.1; % Paso en espacio&lt;br /&gt;
N=L/dx; %Número de subintervalos&lt;br /&gt;
x=0:dx:L;% Vector de espacio&lt;br /&gt;
dt=dx/4; % Paso en tiempo&lt;br /&gt;
t=0:dt:T; % Vector de tiempos&lt;br /&gt;
% Matriz de coeficientes. Aproximacion de -q*u_xx&lt;br /&gt;
K=2*diag(ones(1,N))-diag(ones(1,N-1),1)-diag(ones(1,N-1),-1);&lt;br /&gt;
K(N,N-1)=-2;&lt;br /&gt;
K=q*K/dx^2;&lt;br /&gt;
% Matriz F&lt;br /&gt;
F=zeros(N,1);&lt;br /&gt;
% Calculamos u0 condición inicial&lt;br /&gt;
u0=[zeros(1,N*3/5),3*ones(1,N*2/5)]';&lt;br /&gt;
sol(1,:)=[0,u0']; &lt;br /&gt;
U=u0; % Inicializacion&lt;br /&gt;
% Calculamos U_n -&amp;gt; U_n+1&lt;br /&gt;
%Aplicamos método trapecio método del trapecio&lt;br /&gt;
for j=1:length(t)-1&lt;br /&gt;
U=(eye(N)+(dt*K))\(dt*F+U);&lt;br /&gt;
sol(j+1,:)= [0,U'];&lt;br /&gt;
end&lt;br /&gt;
%Dibujamos la solucion&lt;br /&gt;
[xx,tt]=meshgrid(x,t);&lt;br /&gt;
surf(xx,tt,sol);&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Xata.JPG|500px|thumb|centro|Solución al variar las condiciones de contorno del problema.]]&lt;br /&gt;
&lt;br /&gt;
Observando la gráfica, y por la presencia del limpiador en el extremo de la varilla, para tiempos grandes la cantidad de sustancia contaminante será nula en toda la varilla. En realidad, esto no es del todo cierto puesto que la sustancia no llega a eliminarse completamente, ya que el limpiador solo elimina la sustancia contaminante en el extremo izquierdo. Aunque la concentración en todos los puntos disminuye de manera exponencial, permanece asintótica a 0.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Trapotito.JPG|500px|thumb|centro|Momento en el que se estabiliza con la presencia del limpiador.]]&lt;br /&gt;
&lt;br /&gt;
==Resolución por el método de Fourier==&lt;br /&gt;
&lt;br /&gt;
Las condiciones de frontera del problema son homogéneas, por lo que podemos aplicar este método de cálculo, sin realizar ningún cambio.&lt;br /&gt;
El primer paso es resolver el problema de autovalores asociado:&lt;br /&gt;
&amp;lt;math&amp;gt;\begin{cases}&lt;br /&gt;
y''+λ*y=0 x \in (0,5)&lt;br /&gt;
y'(0)=0 y'(5)=0&lt;br /&gt;
\end{cases}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&amp;lt;math&amp;gt;  &amp;lt;/math&amp;gt;&lt;/div&gt;</summary>
		<author><name>Karlo André</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Difusi%C3%B3n_de_una_sustancia_contaminante_(Grupo_10)&amp;diff=12829</id>
		<title>Difusión de una sustancia contaminante (Grupo 10)</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Difusi%C3%B3n_de_una_sustancia_contaminante_(Grupo_10)&amp;diff=12829"/>
				<updated>2014-05-19T15:26:51Z</updated>
		
		<summary type="html">&lt;p&gt;Karlo André: /* Nueva condición de frontera */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;''''''Texto en negrita''''''[[Archivo:nuriat.png|200px|thumb|right|Tubo con sustancia contaminante]]&lt;br /&gt;
La difusión implica un movimiento espontáneo y desordenado de moléculas individuales y, especialmente, nos interesa la difusión de moléculas de una sustancia disuelta en otra.&lt;br /&gt;
&lt;br /&gt;
La difusión de una sustancia puede considerarse análoga al flujo de calor, y la ley de Fick establece que el ritmo de difusión por unidad de superficie, en dirección perpendicular a ésta, es proporcional al gradiente de la concentración de esa sustancia en esa dirección. La concentración es la masa de la sustancia por unidad de volumen, y el gradiente de concentración es la variación de concentración por unidad de distancia.&lt;br /&gt;
&lt;br /&gt;
Para determinar como se distribuye la concentración de una sustancia contaminante tomaremos como ejemplo un tubo largo compuesto por dos sustancias de las cuáles una de ellas es contaminante.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
= Simplificación del problema =&lt;br /&gt;
&lt;br /&gt;
Para que este problema resulte más sencillo aplicaremos una serie de condiciones, facilitando el cálculo del mismo.&lt;br /&gt;
&lt;br /&gt;
En primer lugar denotaremos su concentración &amp;lt;math&amp;gt; u &amp;lt;/math&amp;gt;, concentración de contaminante en cada posición del tubo y constante en cada sección, medida en &amp;lt;math&amp;gt; \frac{mol}{m^2*s} &amp;lt;/math&amp;gt;. &lt;br /&gt;
&lt;br /&gt;
Supondremos que el tubo mide L=5 m, ocupando el intervalo &amp;lt;math&amp;gt; x \in (0,L) &amp;lt;/math&amp;gt;, y que la concentración es la misma en cualquier punto de la sección transversal del tubo. Por tanto, la concentración dependerá unicamente de dos variables &amp;lt;math&amp;gt; u = u(x,t) &amp;lt;/math&amp;gt;. En los extremos se ha colocado un aislante que hace que el flujo de contaminante al exterior del tubo sea nulo. Además, consideraremos la simplificación de que se trata de un tubo aislado por sus laterales, pero abierto por las bases del cilindro.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Ley de conservación de masa ==&lt;br /&gt;
&lt;br /&gt;
Tras una serie de experimentos realizados por Lavoisier, se pusieron de manifiesto que si tenemos en cuenta todas las sustancias que forman parte en una reacción química y todos los productos formados, nunca varía la masa. Esta ley exige que no haya una generación espontánea de materia. Es decir, en la región del espacio estudiada, no existe entrada o salida por un punto cualquiera (frontera o interior), la masa en esta región se mantiene constante. Esta es la ley de la conservación de la masa, que podemos enunciarla, pues, de la siguiente manera: &amp;lt;br /&amp;gt;&lt;br /&gt;
''&amp;quot;En toda reacción química la masa se conserva, esto es, la masa total de los reactivos es igual a la masa total de los productos&amp;quot;'' &amp;lt;br /&amp;gt;&lt;br /&gt;
La ley de conservación de masas exige que no haya una generación espontánea de materia. Es decir, en la región del espacio estudiada, no existe entrada o salida por un punto cualquiera (frontera o interior), la masa en esta región se mantiene constante.&lt;br /&gt;
&lt;br /&gt;
Esta suposición, en términos de variación de masa, puede quedar determinada como:&lt;br /&gt;
&lt;br /&gt;
''Variación de la masa en el tiempo = flujo de masa a través de la frontera por unidad de tiempo + flujo de masa generada en el interior por unidad de tiempo. ''&lt;br /&gt;
&lt;br /&gt;
== Ley de Fick ==&lt;br /&gt;
Se trata de una ley cuantitativa en forma diferencial que describe la difusión de materia o energía en un medio en el que inicialmente existe equilibrio químico o físico. Esta ley se trata de una generalización de los fenómenos descritos por la '''Ley de Fourier''', ya que esta es una consideración concreta del calor.&lt;br /&gt;
&lt;br /&gt;
La ley de Fick anuncia que en el caso de existir diferencias de concentración en cualquier especie, el paso de estas especies se llevará a cabo desde las regiones con mayor concentración a las de menor. Formulado matemáticamente:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;F(x,t)=-D\frac{\partial u}{\partial x}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Donde &amp;lt;math&amp;gt;F&amp;lt;/math&amp;gt; es el flujo de la sustancia y &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; el coeficiente de difusión, que representa la facilidad en que un soluto particular se mueve por un disolvente determinado.&lt;br /&gt;
&lt;br /&gt;
La ley de Fick establece que el flujo de difusión del contaminante es proporcional a la variación de concentración:&lt;br /&gt;
&amp;lt;math&amp;gt; F(x,t)=-D\frac{\partial u}{\partial x} &amp;lt;/math&amp;gt;&lt;br /&gt;
donde D es el coeficiente de difusión (medido en &amp;lt;math&amp;gt; \frac{m^2}{s} &amp;lt;/math&amp;gt;), que depende de las propiedades físicas de los compuestos, y que se supone constante D=1.&lt;br /&gt;
&lt;br /&gt;
= Modelización de la ecuación diferencial =&lt;br /&gt;
&lt;br /&gt;
Aplicando el principio de conservación de la masa y la ley de Fourier, definimos la variable &amp;lt;math&amp;gt; u(x,t)&amp;lt;/math&amp;gt; en unidades de sustancia por área, es decir, concentración por superficie del tubo.&lt;br /&gt;
&lt;br /&gt;
Consideramos &amp;lt;math&amp;gt; A &amp;lt;/math&amp;gt; como variable superficie, y tomamos un pequeño trozo, definido por &amp;lt;math&amp;gt;\Delta x&amp;lt;/math&amp;gt;. Entonces, para obtener la variación de la masa en el tiempo:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; A u(x,t) \Delta x &amp;lt;/math&amp;gt; &lt;br /&gt;
&lt;br /&gt;
Y derivando en el tiempo:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; A u_t(x,t) \Delta x &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
obtenemos el primer término de la igualdad anteriormente enunciada.&lt;br /&gt;
&lt;br /&gt;
En el segundo, consideramos nulo el flujo de masa en los puntos interiores por unidad de tiempo, pues suponemos la tubería perfecta y sin sumideros.&lt;br /&gt;
&lt;br /&gt;
Como la superﬁcie lateral del tubo está aislada, solamente habrá flujo de sustancia en la dirección del eje &amp;lt;math&amp;gt;x&amp;lt;/math&amp;gt;. Si &amp;lt;math&amp;gt;F(x,t)&amp;gt; 0&amp;lt;/math&amp;gt; pensamos que el ﬂujo va hacia la derecha, si &amp;lt;math&amp;gt;F(x,t)&amp;lt; 0&amp;lt;/math&amp;gt;, este va a hacia la izquierda. El ﬂujo de&lt;br /&gt;
calor en un intervalo &amp;lt;math&amp;gt;[x, x + ∆x ] &amp;lt;/math&amp;gt; viene dado dado por:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;F(x,t)A-F(x+\Delta x, t)A&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Con lo que queda &amp;lt;math&amp;gt;A u_t(x,t) \Delta x = F(x,t)A-F(x+\Delta x, t)A&amp;lt;/math&amp;gt;, y al dividir &amp;lt;math&amp;gt;A \Delta x&amp;lt;/math&amp;gt;, nos queda &amp;lt;math&amp;gt;u_t(x,t)= \frac {F(x,t)-F(x+\Delta x, t)}{\Delta x}&amp;lt;/math&amp;gt;. &amp;lt;br /&amp;gt;&lt;br /&gt;
Como &amp;lt;math&amp;gt;\Delta x \rightarrow 0 &amp;lt;/math&amp;gt;, &amp;lt;math&amp;gt;u_t(x,t)= -F_x(x,t)&amp;lt;/math&amp;gt;, y aplicando ley de Fick, &amp;lt;math&amp;gt;u_t(x,t)=-\frac{\partial }{\partial x}(-D u_x(x,t)) = D u_xx(x,t) &amp;lt;/math&amp;gt;.&amp;lt;br /&amp;gt;&lt;br /&gt;
Con lo que resulta una ecuación en derivadas parciales que determina la concentración de sustancia:&lt;br /&gt;
&amp;lt;math&amp;gt;u_t(x,t)- D u_xx(x,t)= 0 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Planteamiento del problema bien propuesto ==&lt;br /&gt;
&lt;br /&gt;
Suponemos que el flujo será nula al haber una tapa en los extremos del tubo, con lo que el problema bien propuesto quedaría::&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\begin{cases}&lt;br /&gt;
u_t(x,t)- D u_{xx}(x,t)= 0 ; x\in (0,5) \\&lt;br /&gt;
u(x,0)=u_0 , x\in (0,5) \\&lt;br /&gt;
u_x(0,t)=0 , u_x(5,t)=0 ; t\geq 0&lt;br /&gt;
\end{cases}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= Resolución numérica =&lt;br /&gt;
Para la resolución de ésta ecuación necesitaremos mínimo tres condiciones, dos de las cuales serán de contorno, y la otra será la condición inicial.Si suponemos &amp;lt;math&amp;gt;u_0(x,0)&amp;lt;/math&amp;gt;, entonces:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; u_0(x,0)=\begin{cases}&lt;br /&gt;
0,  si x\leq 3\\&lt;br /&gt;
3,  si x&amp;gt;3&lt;br /&gt;
\end{cases}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Resolución por el método de las diferencias finitas ==&lt;br /&gt;
En el primer caso particular que estudiaremos, trataremos de obtener una resolución numérica del problema anteriormente planteado, dónde tenemos las fronteras aisladas y las concentraciones iniciales conocidas:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\begin{cases}&lt;br /&gt;
u_t(x,t)- D u_{xx}(x,t)= 0; x\in (0,5), t\geq 0 \\&lt;br /&gt;
u_0(x,0), x\in (0,5) \\&lt;br /&gt;
u_x(0,t)=0, u_x(5,t)=0, t\geq 0&lt;br /&gt;
\end{cases}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
La resolución por el método de las diferencias finitas se basa en expresar el problema continuo a un sistema discreto de ecuaciones diferenciales de primer orden. Particularizando para nuestro caso con las condiciones dadas, el problema planteado sería:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\begin{cases}&lt;br /&gt;
u'_n(t)+\frac{-u_{n-1}(t)+2u_n(t)+u_{n+1}(t)}{h^2} \\&lt;br /&gt;
\frac{u_1(t)-u_-1(t)}{2h} \rightarrow u_1(t)=u_-1(t) \\&lt;br /&gt;
\frac{u_{N+1}(t)-u_{N-1}(t)}{2h} \rightarrow u_{N+1}(t)=u_{N-1}\\&lt;br /&gt;
u_n(0)=u^0(x)&lt;br /&gt;
\end{cases}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Por lo que tenemos un sistema de la forma:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\begin{cases}&lt;br /&gt;
U'(t)+KU(t)=F(t)=0\\&lt;br /&gt;
U(0)=U^0&lt;br /&gt;
\end{cases}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Con &amp;lt;math&amp;gt;N+1&amp;lt;/math&amp;gt; ecuaciones.&lt;br /&gt;
==== Resolución por método del trapecio ====&lt;br /&gt;
Suponiendo que en el instante inicial se verifica  :&amp;lt;math&amp;gt;&lt;br /&gt;
u(x,0)=\left\{\begin{matrix}\\0, x≤3\\3, x&amp;gt;3\end{matrix}\right.&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Si tomamos &amp;lt;math&amp;gt;\triangle t= \triangle x/4&amp;lt;/math&amp;gt; en &amp;lt;math&amp;gt;t\in\ [0,5]&amp;lt;/math&amp;gt;, con &amp;lt;math&amp;gt;\triangle x=0.1&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
El código en MATLAB del método sería:&lt;br /&gt;
&lt;br /&gt;
{{matlab| codigo=&lt;br /&gt;
%Datos&lt;br /&gt;
L=5; %Longitud de varilla&lt;br /&gt;
T=5; %tiempo final&lt;br /&gt;
q=1;&lt;br /&gt;
%Discretización temporal y espacial&lt;br /&gt;
dx=0.1; % Paso en espacio&lt;br /&gt;
N=L/dx; %Número de subintervalos&lt;br /&gt;
x=0:dx:L; % Vector de espacio&lt;br /&gt;
dt=dx/4; % Paso en tiempo&lt;br /&gt;
t=0:dt:T; % Vector de tiempos&lt;br /&gt;
% Matriz de coeficientes. Aproximacion de -q*u_xx&lt;br /&gt;
K=2*diag(ones(1,N+1))-diag(ones(1,N),1)-diag(ones(1,N),-1);&lt;br /&gt;
K(1,2)=-2;&lt;br /&gt;
K(N+1,N)=-2;&lt;br /&gt;
K=q*K/dx^2;&lt;br /&gt;
% Calculamos u0 condición inicial&lt;br /&gt;
u0=[zeros(1,1+N*3/5),3*ones(1,N*2/5)]';&lt;br /&gt;
% F=0 (no la consideramos)&lt;br /&gt;
sol(1,:)=u0'; % Guardamos la solucion&lt;br /&gt;
U=u0; % Inicializacion&lt;br /&gt;
% Calculamos U_n -&amp;gt; U_n+1&lt;br /&gt;
%Aplicamos método trapecio método del trapecio&lt;br /&gt;
for j=1:length(t)-1&lt;br /&gt;
U=(eye(N+1)+(dt*K)/2)\((eye(N+1)-(K*dt)/2)*U);&lt;br /&gt;
sol(j+1,:)= U'; % Guardamos solucion&lt;br /&gt;
end&lt;br /&gt;
%Dibujamos la solucion&lt;br /&gt;
[xx,tt]=meshgrid(x,t);&lt;br /&gt;
surf(xx,tt,sol);&lt;br /&gt;
}}&lt;br /&gt;
[[Archivo:nur.jpg|500px|thumb|centro|Gráfica concentración / espacio-tiempo. Resolución por el método del trapecio.]]&lt;br /&gt;
&lt;br /&gt;
==== Resolución por método de Euler explícito ====&lt;br /&gt;
{{matlab| codigo=&lt;br /&gt;
%Datos&lt;br /&gt;
L=5; %Longitud de varilla&lt;br /&gt;
T=5; %tiempo final&lt;br /&gt;
q=1;&lt;br /&gt;
%Discretización temporal y espacial&lt;br /&gt;
dx=0.1; % Paso en espacio&lt;br /&gt;
N=L/dx; %Número de subintervalos&lt;br /&gt;
x=0:dx:L; % Vector de espacio&lt;br /&gt;
dt=dx/20; % Paso en tiempo&lt;br /&gt;
t=0:dt:T; % Vector de tiempos&lt;br /&gt;
% Matriz de coeficientes. Aproximacion de -q*u_xx&lt;br /&gt;
K=2*diag(ones(1,N+1))-diag(ones(1,N),1)-diag(ones(1,N),-1);&lt;br /&gt;
K(1,2)=-2;&lt;br /&gt;
K(N+1,N)=-2;&lt;br /&gt;
K=q*K/dx^2;&lt;br /&gt;
% Calculamos u0 condición inicial&lt;br /&gt;
u0=[zeros(1,1+N*3/5),3*ones(1,N*2/5)]';&lt;br /&gt;
% F=0 (no la consideramos)&lt;br /&gt;
sol(1,:)=u0'; % Guardamos la solucion&lt;br /&gt;
U=u0; % Inicializacion&lt;br /&gt;
% Calculamos U_n -&amp;gt; U_n+1&lt;br /&gt;
%Aplicamos método Euler explícito&lt;br /&gt;
for j=1:length(t)-1 &lt;br /&gt;
k1=-K*U; % Calculamos k1=h*f(tn,yn)&lt;br /&gt;
k2=-K*(U+dt*k1); % Calculamos k2=h*f(tn+h/2,yn+1/2*k1)&lt;br /&gt;
% Meto los datos en el vector&lt;br /&gt;
U=U+(dt/2)*(k1+k2);&lt;br /&gt;
sol(j+1,:)= U'; % Guardamos solucion&lt;br /&gt;
end&lt;br /&gt;
%Dibujamos la solucion&lt;br /&gt;
[xx,tt]=meshgrid(x,t);&lt;br /&gt;
surf(xx,tt,sol);&lt;br /&gt;
}}&lt;br /&gt;
[[Archivo:mig.jpg|500px|thumb|centro|Gráfica concentración / espacio-tiempo. Resolución por el método de Euler explícito.]]&lt;br /&gt;
&lt;br /&gt;
==== Resolución por método de Euler implícito ====&lt;br /&gt;
{{matlab| codigo=&lt;br /&gt;
%Datos&lt;br /&gt;
L=5; %Longitud de varilla&lt;br /&gt;
T=5;&lt;br /&gt;
q=1;&lt;br /&gt;
%Discretización temporal y espacial&lt;br /&gt;
dx=0.1; % Paso en espacio&lt;br /&gt;
N=L/dx; %Número de subintervalos&lt;br /&gt;
h=L/N;&lt;br /&gt;
x=0:h:L; % Vector de espacio&lt;br /&gt;
dt=h/20; % Paso en tiempo&lt;br /&gt;
t=0:dt:T; % Vector de tiempos&lt;br /&gt;
% Matriz de coeficientes. Aproximacion de -q*u_xx&lt;br /&gt;
K=2*diag(ones(1,N+1))-diag(ones(1,N),1)-diag(ones(1,N),-1);&lt;br /&gt;
K(1,2)=-2;&lt;br /&gt;
K(N+1,N)=-2;&lt;br /&gt;
K=q*K/h^2;&lt;br /&gt;
% Calculamos u0 condición inicial&lt;br /&gt;
u0=[zeros(1,1+N*3/5),3*ones(1,N*2/5)]';&lt;br /&gt;
% F=0 (no la consideramos)&lt;br /&gt;
sol(1,:)=u0'; % Guardamos la solucion&lt;br /&gt;
U=u0; % Inicializacion&lt;br /&gt;
% Calculamos U_n -&amp;gt; U_n+1&lt;br /&gt;
% Aplicamos método implícito&lt;br /&gt;
for j=1:length(t)-1 &lt;br /&gt;
U=U-dt*K*U; &lt;br /&gt;
sol(j+1,:)= U'; % Guardamos solucion&lt;br /&gt;
end&lt;br /&gt;
%Dibujamos la solucion&lt;br /&gt;
[xx,tt]=meshgrid(x,t);&lt;br /&gt;
surf(xx,tt,sol);&lt;br /&gt;
}}&lt;br /&gt;
[[Archivo:migap.jpg|500px|thumb|centro|Gráfica concentración / espacio-tiempo. Resolución por el método de Euler implícito.]]&lt;br /&gt;
&lt;br /&gt;
==== Resolución por método de Euler modificado ====&lt;br /&gt;
{{matlab| codigo=&lt;br /&gt;
%Datos&lt;br /&gt;
L=5; %Longitud de varilla&lt;br /&gt;
T=5;&lt;br /&gt;
q=1;&lt;br /&gt;
%Discretización temporal y espacial&lt;br /&gt;
dx=0.1; % Paso en espacio&lt;br /&gt;
N=L/dx; %Número de subintervalos&lt;br /&gt;
h=L/N;&lt;br /&gt;
x=0:h:L; % Vector de espacio&lt;br /&gt;
dt=h/20; % Paso en tiempo&lt;br /&gt;
t=0:dt:T; % Vector de tiempos&lt;br /&gt;
% Matriz de coeficientes. Aproximacion de -q*u_xx&lt;br /&gt;
K=2*diag(ones(1,N+1))-diag(ones(1,N),1)-diag(ones(1,N),-1);&lt;br /&gt;
K(1,2)=-2;&lt;br /&gt;
K(N+1,N)=-2;&lt;br /&gt;
K=q*K/h^2;&lt;br /&gt;
% Calculamos u0 condición inicial&lt;br /&gt;
u0=[zeros(1,1+N*3/5),3*ones(1,N*2/5)]';&lt;br /&gt;
% F=0 (no la consideramos)&lt;br /&gt;
sol(1,:)=u0'; % Guardamos la solucion&lt;br /&gt;
U=u0; % Inicializacion&lt;br /&gt;
% Calculamos U_n -&amp;gt; U_n+1&lt;br /&gt;
for j=1:length(t)-1 &lt;br /&gt;
k1=-K*U; % Calculamos k1=h*f(tn,yn)&lt;br /&gt;
k2=-K*(U+dt*k1); % Calculamos k2=h*f(tn+h/2,yn+1/2*k1)&lt;br /&gt;
% Meto los datos en el vector&lt;br /&gt;
U=U+(dt/2)*(k1+k2);&lt;br /&gt;
sol(j+1,:)= U'; % Guardamos solucion&lt;br /&gt;
end&lt;br /&gt;
%Dibujamos la solucion&lt;br /&gt;
[xx,tt]=meshgrid(x,t);&lt;br /&gt;
surf(xx,tt,sol);&lt;br /&gt;
}}&lt;br /&gt;
[[Archivo: mig.jpg|500px|thumb|centro|Gráfica concentración / espacio-tiempo. Resolución por el método de Euler modificado.]]&lt;br /&gt;
&lt;br /&gt;
== Conservación de la masa total de contaminante ==&lt;br /&gt;
A continuación demostraremos que la masa total de contaminante en el tubo se conserva a lo largo del tiempo, que se puede deducir a partir de la ecuación sin tener que resolverla. Integramos la ecuación y debido a las condiciones de frontera:&lt;br /&gt;
&amp;lt;math&amp;gt;\frac d {dt} \int_0^5 u(x,t)\,dx= \int_0^5 u_{xx}(x,t)\,dx= u_x(x,t)|_0^5=0&amp;lt;/math&amp;gt;&lt;br /&gt;
{{matlab| codigo=&lt;br /&gt;
%Datos&lt;br /&gt;
L=5; %Longitud de varilla&lt;br /&gt;
T=5;&lt;br /&gt;
q=1;&lt;br /&gt;
%Discretización temporal y espacial&lt;br /&gt;
N=500; %Número de subintervalos&lt;br /&gt;
h=L/N;&lt;br /&gt;
x=0:h:L; % Vector de espacio&lt;br /&gt;
dt=h/4; % Paso en tiempo&lt;br /&gt;
t=0:dt:T; % Vector de tiempos&lt;br /&gt;
% Matriz de coeficientes. Aproximacion de -q*u_xx&lt;br /&gt;
K=2*diag(ones(1,N+1))-diag(ones(1,N),1)-diag(ones(1,N),-1);&lt;br /&gt;
K(1,2)=-2;&lt;br /&gt;
K(N+1,N)=-2;&lt;br /&gt;
K=q*K/h^2;&lt;br /&gt;
% Calculamos u0 condición inicial&lt;br /&gt;
u0=[zeros(1,1+N*3/5),3*ones(1,N*2/5)]';&lt;br /&gt;
% F=0 (no la consideramos)&lt;br /&gt;
sol(1,:)=u0'; % Guardamos la solucion&lt;br /&gt;
U=u0; % Inicializacion&lt;br /&gt;
% Calculamos U_n -&amp;gt; U_n+1&lt;br /&gt;
for j=1:length(t)-1 &lt;br /&gt;
U=(eye(N+1)+dt*K)\(U+dt*F); &lt;br /&gt;
sol(j+1,:)= U'; % Guardamos solucion&lt;br /&gt;
end&lt;br /&gt;
% Calculamos el area de la funcion en cada tiempo (area = cantidad de contaminante)&lt;br /&gt;
areas=zeros(1,length(t));&lt;br /&gt;
for i=1:length(t)&lt;br /&gt;
f=sol(i,:);&lt;br /&gt;
w=trapz(x,f);&lt;br /&gt;
area(i)=w;&lt;br /&gt;
end&lt;br /&gt;
%Dibujamos&lt;br /&gt;
plot(t,area)&lt;br /&gt;
xlabel('Tiempo')&lt;br /&gt;
ylabel('Cantidad de contaminante')&lt;br /&gt;
}}&lt;br /&gt;
[[Archivo:aleeex.jpg|500px|thumb|centro|Conservación masa total de contaminante]]&lt;br /&gt;
[[Archivo:gime.jpg|500px|thumb|centro|Conservación masa total de contaminante]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Concentración a lo largo del tiempo==&lt;br /&gt;
La concentración de la sustancia contaminante en la varilla varía con el tiempo, pero en un cierto momento esta concentración se va homogeneizando, y deja de variar, entrando en un estado estacionario::&lt;br /&gt;
&amp;lt;math&amp;gt; u_t(x,t)- D*u_{xx}(x,t)=0 &amp;lt;/math&amp;gt; :    &lt;br /&gt;
&amp;lt;math&amp;gt; u_t(x,t)=0 \rightarrow D*u_{xx}(x,t)=0 &amp;lt;/math&amp;gt; :&lt;br /&gt;
&amp;lt;math&amp;gt; u=c_1*x+c_2 &amp;lt;/math&amp;gt; &lt;br /&gt;
Utizando Matlab comprobaremos que &amp;lt;math&amp;gt; c_1=0 &amp;lt;/math&amp;gt; &amp;lt;math&amp;gt; c_2=1.17 &amp;lt;/math&amp;gt;&lt;br /&gt;
Para tiempos grandes la concentración se estabiliza en torno a 1.17 en toda la varilla, de forma que la solución se asemejará a una función lineal constante.&lt;br /&gt;
&lt;br /&gt;
{{matlab| codigo=&lt;br /&gt;
%Datos&lt;br /&gt;
L=5; %Longitud de varilla&lt;br /&gt;
T=50;&lt;br /&gt;
q=1;&lt;br /&gt;
%Discretización temporal y espacial&lt;br /&gt;
dx=0.1; % Paso en espacio&lt;br /&gt;
N=L/dx; %Número de subintervalos&lt;br /&gt;
h=L/N;&lt;br /&gt;
x=0:h:L; % Vector de espacio&lt;br /&gt;
dt=h/4; % Paso en tiempo&lt;br /&gt;
t=0:dt:T; % Vector de tiempos&lt;br /&gt;
% Matriz de coeficientes. Aproximacion de -q*u_xx&lt;br /&gt;
K=2*diag(ones(1,N+1))-diag(ones(1,N),1)-diag(ones(1,N),-1);&lt;br /&gt;
K(1,2)=-2;&lt;br /&gt;
K(N+1,N)=-2;&lt;br /&gt;
K=q*K/h^2;&lt;br /&gt;
% Calculamos u0 condición inicial&lt;br /&gt;
u0=[zeros(1,1+N*3/5),3*ones(1,N*2/5)]';&lt;br /&gt;
% F=0 (no la consideramos)&lt;br /&gt;
sol(1,:)=u0'; % Guardamos la solucion&lt;br /&gt;
U=u0; % Inicializacion&lt;br /&gt;
% Calculamos U_n -&amp;gt; U_n+1&lt;br /&gt;
%Aplicamos método trapecio método del trapecio&lt;br /&gt;
for j=1:length(t)-1&lt;br /&gt;
U=(eye(N+1)+(dt*K)/2)\((eye(N+1)-(K*dt)/2)*U);&lt;br /&gt;
sol(j+1,:)= U'; % Guardamos solucion&lt;br /&gt;
end&lt;br /&gt;
%Solución estacionaria&lt;br /&gt;
a=sol(length(t),:);&lt;br /&gt;
b=sol(1,:);&lt;br /&gt;
c=sol((length(t)-1)/50+1,:);&lt;br /&gt;
d=sol((length(t)-1)*2/50+1,:);&lt;br /&gt;
e=sol((length(t)-1)*10/50+1,:);&lt;br /&gt;
hold on&lt;br /&gt;
plot(x,a,'xk','linewidth',2);&lt;br /&gt;
plot(x,b,'-m','linewidth',1);&lt;br /&gt;
plot(x,c,'-g','linewidth',1);&lt;br /&gt;
plot(x,d,'-y','linewidth',1);&lt;br /&gt;
plot(x,e,'-b','linewidth',1);&lt;br /&gt;
legend('u(50s)','u(0s)','u(1s)','u(2s)','u(10s)');&lt;br /&gt;
xlabel('Posición en la varilla')&lt;br /&gt;
ylabel('Concentracion')&lt;br /&gt;
hold off&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Soluciones(t).jpg|500px|thumb|centro|Soluciones a lo largo del tiempo]]&lt;br /&gt;
&lt;br /&gt;
La distancia entre la solución estacionaria y las soluciones para los siguientes instantes: 0s, 1s, 2s y 10s; se puede apreciar en la imagen anterior. &lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
Una vez analizado los datos, se demuestra que la sustancia contaminante se estabiliza en t=9.98s, con un error del 5%.&lt;br /&gt;
&lt;br /&gt;
En el caso de que consideremos Δx'=Δx/10,el tiempo en el que se estabiliza la cantidad de sustancia contaminante será t=10s, dato que será más preciso debido a que el paso realizado en el programa es menor.&lt;br /&gt;
&lt;br /&gt;
==Nueva condición de frontera==&lt;br /&gt;
&lt;br /&gt;
Si colocamos un limpiador, que elimina la sustancia contaminante, en el extremo izquierdo de la varilla, varían las condiciones de contorno del problema. En este caso, en el extremo izquierdo, la condición inicial será de tipo Dirichlet ya que se esta variación esta provocada por un mecanismo físico externo que actúa sobre el extremo. &amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;math&amp;gt;\begin{cases}&lt;br /&gt;
u_t(x,t)- D u_{xx}(x,t)= 0 ; x\in (0,5) \\&lt;br /&gt;
u(x,0)=u_0 , x\in (0,5) \\&lt;br /&gt;
u(0,t)=0 , u_x(5,t)=0 ; t\geq 0&lt;br /&gt;
\end{cases}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Dadas las nuevas condiciones, resolvemos el problema por el método de diferencias finitas con la ayuda de Matlab.&lt;br /&gt;
&lt;br /&gt;
{{matlab| codigo=&lt;br /&gt;
%Datos&lt;br /&gt;
L=5; %Longitud de varilla&lt;br /&gt;
T=5; %tiempo final&lt;br /&gt;
q=1;&lt;br /&gt;
%Discretización temporal y espacial&lt;br /&gt;
dx=0.1; % Paso en espacio&lt;br /&gt;
N=L/dx; %Número de subintervalos&lt;br /&gt;
x=0:dx:L;% Vector de espacio&lt;br /&gt;
dt=dx/4; % Paso en tiempo&lt;br /&gt;
t=0:dt:T; % Vector de tiempos&lt;br /&gt;
% Matriz de coeficientes. Aproximacion de -q*u_xx&lt;br /&gt;
K=2*diag(ones(1,N))-diag(ones(1,N-1),1)-diag(ones(1,N-1),-1);&lt;br /&gt;
K(N,N-1)=-2;&lt;br /&gt;
K=q*K/dx^2;&lt;br /&gt;
% Matriz F&lt;br /&gt;
F=zeros(N,1);&lt;br /&gt;
% Calculamos u0 condición inicial&lt;br /&gt;
u0=[zeros(1,N*3/5),3*ones(1,N*2/5)]';&lt;br /&gt;
sol(1,:)=[0,u0']; &lt;br /&gt;
U=u0; % Inicializacion&lt;br /&gt;
% Calculamos U_n -&amp;gt; U_n+1&lt;br /&gt;
%Aplicamos método trapecio método del trapecio&lt;br /&gt;
for j=1:length(t)-1&lt;br /&gt;
U=(eye(N)+(dt*K))\(dt*F+U);&lt;br /&gt;
sol(j+1,:)= [0,U'];&lt;br /&gt;
end&lt;br /&gt;
%Dibujamos la solucion&lt;br /&gt;
[xx,tt]=meshgrid(x,t);&lt;br /&gt;
surf(xx,tt,sol);&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Xata.JPG|500px|thumb|centro|Solución al variar las condiciones de contorno del problema.]]&lt;br /&gt;
&lt;br /&gt;
Observando la gráfica, y por la presencia del limpiador en el extremo de la varilla, para tiempos grandes la cantidad de sustancia contaminante será nula en toda la varilla. En realidad, esto no es del todo cierto puesto que la sustancia no llega a eliminarse completamente, ya que el limpiador solo elimina la sustancia contaminante en el extremo izquierdo. Aunque la concentración en todos los puntos disminuye de manera exponencial, permanece asintótica a 0.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Trapotito.JPG|500px|thumb|centro|Momento en el que se estabiliza con la presencia del limpiador.]]&lt;/div&gt;</summary>
		<author><name>Karlo André</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Difusi%C3%B3n_de_una_sustancia_contaminante_(Grupo_10)&amp;diff=12798</id>
		<title>Difusión de una sustancia contaminante (Grupo 10)</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Difusi%C3%B3n_de_una_sustancia_contaminante_(Grupo_10)&amp;diff=12798"/>
				<updated>2014-05-19T14:34:27Z</updated>
		
		<summary type="html">&lt;p&gt;Karlo André: /* Nueva condición de frontera */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;''''''Texto en negrita''''''[[Archivo:nuriat.png|200px|thumb|right|Tubo con sustancia contaminante]]&lt;br /&gt;
La difusión implica un movimiento espontáneo y desordenado de moléculas individuales y, especialmente, nos interesa la difusión de moléculas de una sustancia disuelta en otra.&lt;br /&gt;
&lt;br /&gt;
La difusión de una sustancia puede considerarse análoga al flujo de calor, y la ley de Fick establece que el ritmo de difusión por unidad de superficie, en dirección perpendicular a ésta, es proporcional al gradiente de la concentración de esa sustancia en esa dirección. La concentración es la masa de la sustancia por unidad de volumen, y el gradiente de concentración es la variación de concentración por unidad de distancia.&lt;br /&gt;
&lt;br /&gt;
Para determinar como se distribuye la concentración de una sustancia contaminante tomaremos como ejemplo un tubo largo compuesto por dos sustancias de las cuáles una de ellas es contaminante.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
= Simplificación del problema =&lt;br /&gt;
&lt;br /&gt;
Para que este problema resulte más sencillo aplicaremos una serie de condiciones, facilitando el cálculo del mismo.&lt;br /&gt;
&lt;br /&gt;
En primer lugar denotaremos su concentración &amp;lt;math&amp;gt; u &amp;lt;/math&amp;gt;, concentración de contaminante en cada posición del tubo y constante en cada sección, medida en &amp;lt;math&amp;gt; \frac{mol}{m^2*s} &amp;lt;/math&amp;gt;. &lt;br /&gt;
&lt;br /&gt;
Supondremos que el tubo mide L=5 m, ocupando el intervalo &amp;lt;math&amp;gt; x \in (0,L) &amp;lt;/math&amp;gt;, y que la concentración es la misma en cualquier punto de la sección transversal del tubo. Por tanto, la concentración dependerá unicamente de dos variables &amp;lt;math&amp;gt; u = u(x,t) &amp;lt;/math&amp;gt;. En los extremos se ha colocado un aislante que hace que el flujo de contaminante al exterior del tubo sea nulo. Además, consideraremos la simplificación de que se trata de un tubo aislado por sus laterales, pero abierto por las bases del cilindro.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Ley de conservación de masa ==&lt;br /&gt;
&lt;br /&gt;
Tras una serie de experimentos realizados por Lavoisier, se pusieron de manifiesto que si tenemos en cuenta todas las sustancias que forman parte en una reacción química y todos los productos formados, nunca varía la masa. Esta ley exige que no haya una generación espontánea de materia. Es decir, en la región del espacio estudiada, no existe entrada o salida por un punto cualquiera (frontera o interior), la masa en esta región se mantiene constante. Esta es la ley de la conservación de la masa, que podemos enunciarla, pues, de la siguiente manera: &amp;lt;br /&amp;gt;&lt;br /&gt;
''&amp;quot;En toda reacción química la masa se conserva, esto es, la masa total de los reactivos es igual a la masa total de los productos&amp;quot;'' &amp;lt;br /&amp;gt;&lt;br /&gt;
La ley de conservación de masas exige que no haya una generación espontánea de materia. Es decir, en la región del espacio estudiada, no existe entrada o salida por un punto cualquiera (frontera o interior), la masa en esta región se mantiene constante.&lt;br /&gt;
&lt;br /&gt;
Esta suposición, en términos de variación de masa, puede quedar determinada como:&lt;br /&gt;
&lt;br /&gt;
''Variación de la masa en el tiempo = flujo de masa a través de la frontera por unidad de tiempo + flujo de masa generada en el interior por unidad de tiempo. ''&lt;br /&gt;
&lt;br /&gt;
== Ley de Fick ==&lt;br /&gt;
Se trata de una ley cuantitativa en forma diferencial que describe la difusión de materia o energía en un medio en el que inicialmente existe equilibrio químico o físico. Esta ley se trata de una generalización de los fenómenos descritos por la '''Ley de Fourier''', ya que esta es una consideración concreta del calor.&lt;br /&gt;
&lt;br /&gt;
La ley de Fick anuncia que en el caso de existir diferencias de concentración en cualquier especie, el paso de estas especies se llevará a cabo desde las regiones con mayor concentración a las de menor. Formulado matemáticamente:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;F(x,t)=-D\frac{\partial u}{\partial x}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Donde &amp;lt;math&amp;gt;F&amp;lt;/math&amp;gt; es el flujo de la sustancia y &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; el coeficiente de difusión, que representa la facilidad en que un soluto particular se mueve por un disolvente determinado.&lt;br /&gt;
&lt;br /&gt;
La ley de Fick establece que el flujo de difusión del contaminante es proporcional a la variación de concentración:&lt;br /&gt;
&amp;lt;math&amp;gt; F(x,t)=-D\frac{\partial u}{\partial x} &amp;lt;/math&amp;gt;&lt;br /&gt;
donde D es el coeficiente de difusión (medido en &amp;lt;math&amp;gt; \frac{m^2}{s} &amp;lt;/math&amp;gt;), que depende de las propiedades físicas de los compuestos, y que se supone constante D=1.&lt;br /&gt;
&lt;br /&gt;
= Modelización de la ecuación diferencial =&lt;br /&gt;
&lt;br /&gt;
Aplicando el principio de conservación de la masa y la ley de Fourier, definimos la variable &amp;lt;math&amp;gt; u(x,t)&amp;lt;/math&amp;gt; en unidades de sustancia por área, es decir, concentración por superficie del tubo.&lt;br /&gt;
&lt;br /&gt;
Consideramos &amp;lt;math&amp;gt; A &amp;lt;/math&amp;gt; como variable superficie, y tomamos un pequeño trozo, definido por &amp;lt;math&amp;gt;\Delta x&amp;lt;/math&amp;gt;. Entonces, para obtener la variación de la masa en el tiempo:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; A u(x,t) \Delta x &amp;lt;/math&amp;gt; &lt;br /&gt;
&lt;br /&gt;
Y derivando en el tiempo:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; A u_t(x,t) \Delta x &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
obtenemos el primer término de la igualdad anteriormente enunciada.&lt;br /&gt;
&lt;br /&gt;
En el segundo, consideramos nulo el flujo de masa en los puntos interiores por unidad de tiempo, pues suponemos la tubería perfecta y sin sumideros.&lt;br /&gt;
&lt;br /&gt;
Como la superﬁcie lateral del tubo está aislada, solamente habrá flujo de sustancia en la dirección del eje &amp;lt;math&amp;gt;x&amp;lt;/math&amp;gt;. Si &amp;lt;math&amp;gt;F(x,t)&amp;gt; 0&amp;lt;/math&amp;gt; pensamos que el ﬂujo va hacia la derecha, si &amp;lt;math&amp;gt;F(x,t)&amp;lt; 0&amp;lt;/math&amp;gt;, este va a hacia la izquierda. El ﬂujo de&lt;br /&gt;
calor en un intervalo &amp;lt;math&amp;gt;[x, x + ∆x ] &amp;lt;/math&amp;gt; viene dado dado por:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;F(x,t)A-F(x+\Delta x, t)A&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Con lo que queda &amp;lt;math&amp;gt;A u_t(x,t) \Delta x = F(x,t)A-F(x+\Delta x, t)A&amp;lt;/math&amp;gt;, y al dividir &amp;lt;math&amp;gt;A \Delta x&amp;lt;/math&amp;gt;, nos queda &amp;lt;math&amp;gt;u_t(x,t)= \frac {F(x,t)-F(x+\Delta x, t)}{\Delta x}&amp;lt;/math&amp;gt;. &amp;lt;br /&amp;gt;&lt;br /&gt;
Como &amp;lt;math&amp;gt;\Delta x \rightarrow 0 &amp;lt;/math&amp;gt;, &amp;lt;math&amp;gt;u_t(x,t)= -F_x(x,t)&amp;lt;/math&amp;gt;, y aplicando ley de Fick, &amp;lt;math&amp;gt;u_t(x,t)=-\frac{\partial }{\partial x}(-D u_x(x,t)) = D u_xx(x,t) &amp;lt;/math&amp;gt;.&amp;lt;br /&amp;gt;&lt;br /&gt;
Con lo que resulta una ecuación en derivadas parciales que determina la concentración de sustancia:&lt;br /&gt;
&amp;lt;math&amp;gt;u_t(x,t)- D u_xx(x,t)= 0 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Planteamiento del problema bien propuesto ==&lt;br /&gt;
&lt;br /&gt;
Suponemos que el flujo será nula al haber una tapa en los extremos del tubo, con lo que el problema bien propuesto quedaría::&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\begin{cases}&lt;br /&gt;
u_t(x,t)- D u_{xx}(x,t)= 0 ; x\in (0,5) \\&lt;br /&gt;
u(x,0)=u_0 , x\in (0,5) \\&lt;br /&gt;
u_x(0,t)=0 , u_x(5,t)=0 ; t\geq 0&lt;br /&gt;
\end{cases}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= Resolución numérica =&lt;br /&gt;
Para la resolución de ésta ecuación necesitaremos mínimo tres condiciones, dos de las cuales serán de contorno, y la otra será la condición inicial.Si suponemos &amp;lt;math&amp;gt;u_0(x,0)&amp;lt;/math&amp;gt;, entonces:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; u_0(x,0)=\begin{cases}&lt;br /&gt;
0,  si x\leq 3\\&lt;br /&gt;
3,  si x&amp;gt;3&lt;br /&gt;
\end{cases}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Resolución por el método de las diferencias finitas ==&lt;br /&gt;
En el primer caso particular que estudiaremos, trataremos de obtener una resolución numérica del problema anteriormente planteado, dónde tenemos las fronteras aisladas y las concentraciones iniciales conocidas:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\begin{cases}&lt;br /&gt;
u_t(x,t)- D u_{xx}(x,t)= 0; x\in (0,5), t\geq 0 \\&lt;br /&gt;
u_0(x,0), x\in (0,5) \\&lt;br /&gt;
u_x(0,t)=0, u_x(5,t)=0, t\geq 0&lt;br /&gt;
\end{cases}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
La resolución por el método de las diferencias finitas se basa en expresar el problema continuo a un sistema discreto de ecuaciones diferenciales de primer orden. Particularizando para nuestro caso con las condiciones dadas, el problema planteado sería:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\begin{cases}&lt;br /&gt;
u'_n(t)+\frac{-u_{n-1}(t)+2u_n(t)+u_{n+1}(t)}{h^2} \\&lt;br /&gt;
\frac{u_1(t)-u_-1(t)}{2h} \rightarrow u_1(t)=u_-1(t) \\&lt;br /&gt;
\frac{u_{N+1}(t)-u_{N-1}(t)}{2h} \rightarrow u_{N+1}(t)=u_{N-1}\\&lt;br /&gt;
u_n(0)=u^0(x)&lt;br /&gt;
\end{cases}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Por lo que tenemos un sistema de la forma:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\begin{cases}&lt;br /&gt;
U'(t)+KU(t)=F(t)=0\\&lt;br /&gt;
U(0)=U^0&lt;br /&gt;
\end{cases}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Con &amp;lt;math&amp;gt;N+1&amp;lt;/math&amp;gt; ecuaciones.&lt;br /&gt;
==== Resolución por método del trapecio ====&lt;br /&gt;
Suponiendo que en el instante inicial se verifica  :&amp;lt;math&amp;gt;&lt;br /&gt;
u(x,0)=\left\{\begin{matrix}\\0, x≤3\\3, x&amp;gt;3\end{matrix}\right.&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Si tomamos &amp;lt;math&amp;gt;\triangle t= \triangle x/4&amp;lt;/math&amp;gt; en &amp;lt;math&amp;gt;t\in\ [0,5]&amp;lt;/math&amp;gt;, con &amp;lt;math&amp;gt;\triangle x=0.1&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
El código en MATLAB del método sería:&lt;br /&gt;
&lt;br /&gt;
{{matlab| codigo=&lt;br /&gt;
%Datos&lt;br /&gt;
L=5; %Longitud de varilla&lt;br /&gt;
T=5; %tiempo final&lt;br /&gt;
q=1;&lt;br /&gt;
%Discretización temporal y espacial&lt;br /&gt;
dx=0.1; % Paso en espacio&lt;br /&gt;
N=L/dx; %Número de subintervalos&lt;br /&gt;
x=0:dx:L; % Vector de espacio&lt;br /&gt;
dt=dx/4; % Paso en tiempo&lt;br /&gt;
t=0:dt:T; % Vector de tiempos&lt;br /&gt;
% Matriz de coeficientes. Aproximacion de -q*u_xx&lt;br /&gt;
K=2*diag(ones(1,N+1))-diag(ones(1,N),1)-diag(ones(1,N),-1);&lt;br /&gt;
K(1,2)=-2;&lt;br /&gt;
K(N+1,N)=-2;&lt;br /&gt;
K=q*K/dx^2;&lt;br /&gt;
% Calculamos u0 condición inicial&lt;br /&gt;
u0=[zeros(1,1+N*3/5),3*ones(1,N*2/5)]';&lt;br /&gt;
% F=0 (no la consideramos)&lt;br /&gt;
sol(1,:)=u0'; % Guardamos la solucion&lt;br /&gt;
U=u0; % Inicializacion&lt;br /&gt;
% Calculamos U_n -&amp;gt; U_n+1&lt;br /&gt;
%Aplicamos método trapecio método del trapecio&lt;br /&gt;
for j=1:length(t)-1&lt;br /&gt;
U=(eye(N+1)+(dt*K)/2)\((eye(N+1)-(K*dt)/2)*U);&lt;br /&gt;
sol(j+1,:)= U'; % Guardamos solucion&lt;br /&gt;
end&lt;br /&gt;
%Dibujamos la solucion&lt;br /&gt;
[xx,tt]=meshgrid(x,t);&lt;br /&gt;
surf(xx,tt,sol);&lt;br /&gt;
}}&lt;br /&gt;
[[Archivo:nur.jpg|500px|thumb|centro|Gráfica concentración / espacio-tiempo. Resolución por el método del trapecio.]]&lt;br /&gt;
&lt;br /&gt;
==== Resolución por método de Euler explícito ====&lt;br /&gt;
{{matlab| codigo=&lt;br /&gt;
%Datos&lt;br /&gt;
L=5; %Longitud de varilla&lt;br /&gt;
T=5; %tiempo final&lt;br /&gt;
q=1;&lt;br /&gt;
%Discretización temporal y espacial&lt;br /&gt;
dx=0.1; % Paso en espacio&lt;br /&gt;
N=L/dx; %Número de subintervalos&lt;br /&gt;
x=0:dx:L; % Vector de espacio&lt;br /&gt;
dt=dx/20; % Paso en tiempo&lt;br /&gt;
t=0:dt:T; % Vector de tiempos&lt;br /&gt;
% Matriz de coeficientes. Aproximacion de -q*u_xx&lt;br /&gt;
K=2*diag(ones(1,N+1))-diag(ones(1,N),1)-diag(ones(1,N),-1);&lt;br /&gt;
K(1,2)=-2;&lt;br /&gt;
K(N+1,N)=-2;&lt;br /&gt;
K=q*K/dx^2;&lt;br /&gt;
% Calculamos u0 condición inicial&lt;br /&gt;
u0=[zeros(1,1+N*3/5),3*ones(1,N*2/5)]';&lt;br /&gt;
% F=0 (no la consideramos)&lt;br /&gt;
sol(1,:)=u0'; % Guardamos la solucion&lt;br /&gt;
U=u0; % Inicializacion&lt;br /&gt;
% Calculamos U_n -&amp;gt; U_n+1&lt;br /&gt;
%Aplicamos método Euler explícito&lt;br /&gt;
for j=1:length(t)-1 &lt;br /&gt;
k1=-K*U; % Calculamos k1=h*f(tn,yn)&lt;br /&gt;
k2=-K*(U+dt*k1); % Calculamos k2=h*f(tn+h/2,yn+1/2*k1)&lt;br /&gt;
% Meto los datos en el vector&lt;br /&gt;
U=U+(dt/2)*(k1+k2);&lt;br /&gt;
sol(j+1,:)= U'; % Guardamos solucion&lt;br /&gt;
end&lt;br /&gt;
%Dibujamos la solucion&lt;br /&gt;
[xx,tt]=meshgrid(x,t);&lt;br /&gt;
surf(xx,tt,sol);&lt;br /&gt;
}}&lt;br /&gt;
[[Archivo:mig.jpg|500px|thumb|centro|Gráfica concentración / espacio-tiempo. Resolución por el método de Euler explícito.]]&lt;br /&gt;
&lt;br /&gt;
==== Resolución por método de Euler implícito ====&lt;br /&gt;
{{matlab| codigo=&lt;br /&gt;
%Datos&lt;br /&gt;
L=5; %Longitud de varilla&lt;br /&gt;
T=5;&lt;br /&gt;
q=1;&lt;br /&gt;
%Discretización temporal y espacial&lt;br /&gt;
dx=0.1; % Paso en espacio&lt;br /&gt;
N=L/dx; %Número de subintervalos&lt;br /&gt;
h=L/N;&lt;br /&gt;
x=0:h:L; % Vector de espacio&lt;br /&gt;
dt=h/20; % Paso en tiempo&lt;br /&gt;
t=0:dt:T; % Vector de tiempos&lt;br /&gt;
% Matriz de coeficientes. Aproximacion de -q*u_xx&lt;br /&gt;
K=2*diag(ones(1,N+1))-diag(ones(1,N),1)-diag(ones(1,N),-1);&lt;br /&gt;
K(1,2)=-2;&lt;br /&gt;
K(N+1,N)=-2;&lt;br /&gt;
K=q*K/h^2;&lt;br /&gt;
% Calculamos u0 condición inicial&lt;br /&gt;
u0=[zeros(1,1+N*3/5),3*ones(1,N*2/5)]';&lt;br /&gt;
% F=0 (no la consideramos)&lt;br /&gt;
sol(1,:)=u0'; % Guardamos la solucion&lt;br /&gt;
U=u0; % Inicializacion&lt;br /&gt;
% Calculamos U_n -&amp;gt; U_n+1&lt;br /&gt;
% Aplicamos método implícito&lt;br /&gt;
for j=1:length(t)-1 &lt;br /&gt;
U=U-dt*K*U; &lt;br /&gt;
sol(j+1,:)= U'; % Guardamos solucion&lt;br /&gt;
end&lt;br /&gt;
%Dibujamos la solucion&lt;br /&gt;
[xx,tt]=meshgrid(x,t);&lt;br /&gt;
surf(xx,tt,sol);&lt;br /&gt;
}}&lt;br /&gt;
[[Archivo:migap.jpg|500px|thumb|centro|Gráfica concentración / espacio-tiempo. Resolución por el método de Euler implícito.]]&lt;br /&gt;
&lt;br /&gt;
==== Resolución por método de Euler modificado ====&lt;br /&gt;
{{matlab| codigo=&lt;br /&gt;
%Datos&lt;br /&gt;
L=5; %Longitud de varilla&lt;br /&gt;
T=5;&lt;br /&gt;
q=1;&lt;br /&gt;
%Discretización temporal y espacial&lt;br /&gt;
dx=0.1; % Paso en espacio&lt;br /&gt;
N=L/dx; %Número de subintervalos&lt;br /&gt;
h=L/N;&lt;br /&gt;
x=0:h:L; % Vector de espacio&lt;br /&gt;
dt=h/20; % Paso en tiempo&lt;br /&gt;
t=0:dt:T; % Vector de tiempos&lt;br /&gt;
% Matriz de coeficientes. Aproximacion de -q*u_xx&lt;br /&gt;
K=2*diag(ones(1,N+1))-diag(ones(1,N),1)-diag(ones(1,N),-1);&lt;br /&gt;
K(1,2)=-2;&lt;br /&gt;
K(N+1,N)=-2;&lt;br /&gt;
K=q*K/h^2;&lt;br /&gt;
% Calculamos u0 condición inicial&lt;br /&gt;
u0=[zeros(1,1+N*3/5),3*ones(1,N*2/5)]';&lt;br /&gt;
% F=0 (no la consideramos)&lt;br /&gt;
sol(1,:)=u0'; % Guardamos la solucion&lt;br /&gt;
U=u0; % Inicializacion&lt;br /&gt;
% Calculamos U_n -&amp;gt; U_n+1&lt;br /&gt;
for j=1:length(t)-1 &lt;br /&gt;
k1=-K*U; % Calculamos k1=h*f(tn,yn)&lt;br /&gt;
k2=-K*(U+dt*k1); % Calculamos k2=h*f(tn+h/2,yn+1/2*k1)&lt;br /&gt;
% Meto los datos en el vector&lt;br /&gt;
U=U+(dt/2)*(k1+k2);&lt;br /&gt;
sol(j+1,:)= U'; % Guardamos solucion&lt;br /&gt;
end&lt;br /&gt;
%Dibujamos la solucion&lt;br /&gt;
[xx,tt]=meshgrid(x,t);&lt;br /&gt;
surf(xx,tt,sol);&lt;br /&gt;
}}&lt;br /&gt;
[[Archivo: mig.jpg|500px|thumb|centro|Gráfica concentración / espacio-tiempo. Resolución por el método de Euler modificado.]]&lt;br /&gt;
&lt;br /&gt;
== Conservación de la masa total de contaminante ==&lt;br /&gt;
A continuación demostraremos que la masa total de contaminante en el tubo se conserva a lo largo del tiempo, que se puede deducir a partir de la ecuación sin tener que resolverla. Integramos la ecuación y debido a las condiciones de frontera:&lt;br /&gt;
&amp;lt;math&amp;gt;\frac d {dt} \int_0^5 u(x,t)\,dx= \int_0^5 u_{xx}(x,t)\,dx= u_x(x,t)|_0^5=0&amp;lt;/math&amp;gt;&lt;br /&gt;
{{matlab| codigo=&lt;br /&gt;
%Datos&lt;br /&gt;
L=5; %Longitud de varilla&lt;br /&gt;
T=5;&lt;br /&gt;
q=1;&lt;br /&gt;
%Discretización temporal y espacial&lt;br /&gt;
N=500; %Número de subintervalos&lt;br /&gt;
h=L/N;&lt;br /&gt;
x=0:h:L; % Vector de espacio&lt;br /&gt;
dt=h/4; % Paso en tiempo&lt;br /&gt;
t=0:dt:T; % Vector de tiempos&lt;br /&gt;
% Matriz de coeficientes. Aproximacion de -q*u_xx&lt;br /&gt;
K=2*diag(ones(1,N+1))-diag(ones(1,N),1)-diag(ones(1,N),-1);&lt;br /&gt;
K(1,2)=-2;&lt;br /&gt;
K(N+1,N)=-2;&lt;br /&gt;
K=q*K/h^2;&lt;br /&gt;
% Calculamos u0 condición inicial&lt;br /&gt;
u0=[zeros(1,1+N*3/5),3*ones(1,N*2/5)]';&lt;br /&gt;
% F=0 (no la consideramos)&lt;br /&gt;
sol(1,:)=u0'; % Guardamos la solucion&lt;br /&gt;
U=u0; % Inicializacion&lt;br /&gt;
% Calculamos U_n -&amp;gt; U_n+1&lt;br /&gt;
for j=1:length(t)-1 &lt;br /&gt;
U=(eye(N+1)+dt*K)\(U+dt*F); &lt;br /&gt;
sol(j+1,:)= U'; % Guardamos solucion&lt;br /&gt;
end&lt;br /&gt;
% Calculamos el area de la funcion en cada tiempo (area = cantidad de contaminante)&lt;br /&gt;
areas=zeros(1,length(t));&lt;br /&gt;
for i=1:length(t)&lt;br /&gt;
f=sol(i,:);&lt;br /&gt;
w=trapz(x,f);&lt;br /&gt;
area(i)=w;&lt;br /&gt;
end&lt;br /&gt;
%Dibujamos&lt;br /&gt;
plot(t,area)&lt;br /&gt;
xlabel('Tiempo')&lt;br /&gt;
ylabel('Cantidad de contaminante')&lt;br /&gt;
}}&lt;br /&gt;
[[Archivo:aleeex.jpg|500px|thumb|centro|Conservación masa total de contaminante]]&lt;br /&gt;
[[Archivo:gime.jpg|500px|thumb|centro|Conservación masa total de contaminante]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Concentración a lo largo del tiempo==&lt;br /&gt;
La concentración de la sustancia contaminante en la varilla varía con el tiempo, pero en un cierto momento esta concentración se va homogeneizando, y deja de variar, entrando en un estado estacionario::&lt;br /&gt;
&amp;lt;math&amp;gt; u_t(x,t)- D*u_{xx}(x,t)=0 &amp;lt;/math&amp;gt; :    &lt;br /&gt;
&amp;lt;math&amp;gt; u_t(x,t)=0 \rightarrow D*u_{xx}(x,t)=0 &amp;lt;/math&amp;gt; :&lt;br /&gt;
&amp;lt;math&amp;gt; u=c_1*x+c_2 &amp;lt;/math&amp;gt; &lt;br /&gt;
Utizando Matlab comprobaremos que &amp;lt;math&amp;gt; c_1=0 &amp;lt;/math&amp;gt; &amp;lt;math&amp;gt; c_2=1.17 &amp;lt;/math&amp;gt;&lt;br /&gt;
Para tiempos grandes la concentración se estabiliza en torno a 1.17 en toda la varilla, de forma que la solución se asemejará a una función lineal constante.&lt;br /&gt;
&lt;br /&gt;
{{matlab| codigo=&lt;br /&gt;
%Datos&lt;br /&gt;
L=5; %Longitud de varilla&lt;br /&gt;
T=50;&lt;br /&gt;
q=1;&lt;br /&gt;
%Discretización temporal y espacial&lt;br /&gt;
dx=0.1; % Paso en espacio&lt;br /&gt;
N=L/dx; %Número de subintervalos&lt;br /&gt;
h=L/N;&lt;br /&gt;
x=0:h:L; % Vector de espacio&lt;br /&gt;
dt=h/4; % Paso en tiempo&lt;br /&gt;
t=0:dt:T; % Vector de tiempos&lt;br /&gt;
% Matriz de coeficientes. Aproximacion de -q*u_xx&lt;br /&gt;
K=2*diag(ones(1,N+1))-diag(ones(1,N),1)-diag(ones(1,N),-1);&lt;br /&gt;
K(1,2)=-2;&lt;br /&gt;
K(N+1,N)=-2;&lt;br /&gt;
K=q*K/h^2;&lt;br /&gt;
% Calculamos u0 condición inicial&lt;br /&gt;
u0=[zeros(1,1+N*3/5),3*ones(1,N*2/5)]';&lt;br /&gt;
% F=0 (no la consideramos)&lt;br /&gt;
sol(1,:)=u0'; % Guardamos la solucion&lt;br /&gt;
U=u0; % Inicializacion&lt;br /&gt;
% Calculamos U_n -&amp;gt; U_n+1&lt;br /&gt;
%Aplicamos método trapecio método del trapecio&lt;br /&gt;
for j=1:length(t)-1&lt;br /&gt;
U=(eye(N+1)+(dt*K)/2)\((eye(N+1)-(K*dt)/2)*U);&lt;br /&gt;
sol(j+1,:)= U'; % Guardamos solucion&lt;br /&gt;
end&lt;br /&gt;
%Solución estacionaria&lt;br /&gt;
a=sol(length(t),:);&lt;br /&gt;
b=sol(1,:);&lt;br /&gt;
c=sol((length(t)-1)/50+1,:);&lt;br /&gt;
d=sol((length(t)-1)*2/50+1,:);&lt;br /&gt;
e=sol((length(t)-1)*10/50+1,:);&lt;br /&gt;
hold on&lt;br /&gt;
plot(x,a,'xk','linewidth',2);&lt;br /&gt;
plot(x,b,'-m','linewidth',1);&lt;br /&gt;
plot(x,c,'-g','linewidth',1);&lt;br /&gt;
plot(x,d,'-y','linewidth',1);&lt;br /&gt;
plot(x,e,'-b','linewidth',1);&lt;br /&gt;
legend('u(50s)','u(0s)','u(1s)','u(2s)','u(10s)');&lt;br /&gt;
xlabel('Posición en la varilla')&lt;br /&gt;
ylabel('Concentracion')&lt;br /&gt;
hold off&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Soluciones(t).jpg|500px|thumb|centro|Soluciones a lo largo del tiempo]]&lt;br /&gt;
&lt;br /&gt;
La distancia entre la solución estacionaria y las soluciones para los siguientes instantes: 0s, 1s, 2s y 10s; se puede apreciar en la imagen anterior. &lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
Una vez analizado los datos, se demuestra que la sustancia contaminante se estabiliza en t=9.98s, con un error del 5%.&lt;br /&gt;
&lt;br /&gt;
En el caso de que consideremos Δx'=Δx/10,el tiempo en el que se estabiliza la cantidad de sustancia contaminante será t=10s, dato que será más preciso debido a que el paso realizado en el programa es menor.&lt;br /&gt;
&lt;br /&gt;
==Nueva condición de frontera==&lt;br /&gt;
&lt;br /&gt;
Si colocamos un limpiador, que elimina la sustancia contaminante, en el extremo izquierdo de la varilla, varían las condiciones de contorno del problema. En este caso, en el extremo izquierdo, la condición inicial será de tipo Dirichlet ya que se esta variación esta provocada por un mecanismo físico externo que actúa sobre el extremo. &amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;math&amp;gt;\begin{cases}&lt;br /&gt;
u_t(x,t)- D u_{xx}(x,t)= 0 ; x\in (0,5) \\&lt;br /&gt;
u(x,0)=u_0 , x\in (0,5) \\&lt;br /&gt;
u(0,t)=0 , u_x(5,t)=0 ; t\geq 0&lt;br /&gt;
\end{cases}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Dadas las nuevas condiciones, resolvemos el problema por el método de diferencias finitas con la ayuda de Matlab.&lt;br /&gt;
&lt;br /&gt;
{{matlab| codigo=&lt;br /&gt;
%Datos&lt;br /&gt;
L=5; %Longitud de varilla&lt;br /&gt;
T=5; %tiempo final&lt;br /&gt;
q=1;&lt;br /&gt;
%Discretización temporal y espacial&lt;br /&gt;
dx=0.1; % Paso en espacio&lt;br /&gt;
N=L/dx; %Número de subintervalos&lt;br /&gt;
x=0:dx:L;% Vector de espacio&lt;br /&gt;
dt=dx/4; % Paso en tiempo&lt;br /&gt;
t=0:dt:T; % Vector de tiempos&lt;br /&gt;
% Matriz de coeficientes. Aproximacion de -q*u_xx&lt;br /&gt;
K=2*diag(ones(1,N))-diag(ones(1,N-1),1)-diag(ones(1,N-1),-1);&lt;br /&gt;
K(N,N-1)=-2;&lt;br /&gt;
K=q*K/dx^2;&lt;br /&gt;
% Matriz F&lt;br /&gt;
F=zeros(N,1);&lt;br /&gt;
% Calculamos u0 condición inicial&lt;br /&gt;
u0=[zeros(1,N*3/5),3*ones(1,N*2/5)]';&lt;br /&gt;
sol(1,:)=[0,u0']; &lt;br /&gt;
U=u0; % Inicializacion&lt;br /&gt;
% Calculamos U_n -&amp;gt; U_n+1&lt;br /&gt;
%Aplicamos método trapecio método del trapecio&lt;br /&gt;
for j=1:length(t)-1&lt;br /&gt;
U=(eye(N)+(dt*K))\(dt*F+U);&lt;br /&gt;
sol(j+1,:)= [0,U'];&lt;br /&gt;
end&lt;br /&gt;
%Dibujamos la solucion&lt;br /&gt;
[xx,tt]=meshgrid(x,t);&lt;br /&gt;
surf(xx,tt,sol);&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Xata.JPG|500px|thumb|centro|Solución al variar las condiciones de contorno del problema.]]&lt;br /&gt;
&lt;br /&gt;
Observando la gráfica, y por la presencia del limpiador en el extremo de la varilla, para tiempos grandes la cantidad de sustancia contaminante será nula en toda la varilla.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Trapotito.JPG|500px|thumb|centro|Momento en el que se estabiliza con la presencia del limpiador.]]&lt;/div&gt;</summary>
		<author><name>Karlo André</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Difusi%C3%B3n_de_una_sustancia_contaminante_(Grupo_10)&amp;diff=12797</id>
		<title>Difusión de una sustancia contaminante (Grupo 10)</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Difusi%C3%B3n_de_una_sustancia_contaminante_(Grupo_10)&amp;diff=12797"/>
				<updated>2014-05-19T14:33:36Z</updated>
		
		<summary type="html">&lt;p&gt;Karlo André: /* Nueva condición de frontera */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;''''''Texto en negrita''''''[[Archivo:nuriat.png|200px|thumb|right|Tubo con sustancia contaminante]]&lt;br /&gt;
La difusión implica un movimiento espontáneo y desordenado de moléculas individuales y, especialmente, nos interesa la difusión de moléculas de una sustancia disuelta en otra.&lt;br /&gt;
&lt;br /&gt;
La difusión de una sustancia puede considerarse análoga al flujo de calor, y la ley de Fick establece que el ritmo de difusión por unidad de superficie, en dirección perpendicular a ésta, es proporcional al gradiente de la concentración de esa sustancia en esa dirección. La concentración es la masa de la sustancia por unidad de volumen, y el gradiente de concentración es la variación de concentración por unidad de distancia.&lt;br /&gt;
&lt;br /&gt;
Para determinar como se distribuye la concentración de una sustancia contaminante tomaremos como ejemplo un tubo largo compuesto por dos sustancias de las cuáles una de ellas es contaminante.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
= Simplificación del problema =&lt;br /&gt;
&lt;br /&gt;
Para que este problema resulte más sencillo aplicaremos una serie de condiciones, facilitando el cálculo del mismo.&lt;br /&gt;
&lt;br /&gt;
En primer lugar denotaremos su concentración &amp;lt;math&amp;gt; u &amp;lt;/math&amp;gt;, concentración de contaminante en cada posición del tubo y constante en cada sección, medida en &amp;lt;math&amp;gt; \frac{mol}{m^2*s} &amp;lt;/math&amp;gt;. &lt;br /&gt;
&lt;br /&gt;
Supondremos que el tubo mide L=5 m, ocupando el intervalo &amp;lt;math&amp;gt; x \in (0,L) &amp;lt;/math&amp;gt;, y que la concentración es la misma en cualquier punto de la sección transversal del tubo. Por tanto, la concentración dependerá unicamente de dos variables &amp;lt;math&amp;gt; u = u(x,t) &amp;lt;/math&amp;gt;. En los extremos se ha colocado un aislante que hace que el flujo de contaminante al exterior del tubo sea nulo. Además, consideraremos la simplificación de que se trata de un tubo aislado por sus laterales, pero abierto por las bases del cilindro.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Ley de conservación de masa ==&lt;br /&gt;
&lt;br /&gt;
Tras una serie de experimentos realizados por Lavoisier, se pusieron de manifiesto que si tenemos en cuenta todas las sustancias que forman parte en una reacción química y todos los productos formados, nunca varía la masa. Esta ley exige que no haya una generación espontánea de materia. Es decir, en la región del espacio estudiada, no existe entrada o salida por un punto cualquiera (frontera o interior), la masa en esta región se mantiene constante. Esta es la ley de la conservación de la masa, que podemos enunciarla, pues, de la siguiente manera: &amp;lt;br /&amp;gt;&lt;br /&gt;
''&amp;quot;En toda reacción química la masa se conserva, esto es, la masa total de los reactivos es igual a la masa total de los productos&amp;quot;'' &amp;lt;br /&amp;gt;&lt;br /&gt;
La ley de conservación de masas exige que no haya una generación espontánea de materia. Es decir, en la región del espacio estudiada, no existe entrada o salida por un punto cualquiera (frontera o interior), la masa en esta región se mantiene constante.&lt;br /&gt;
&lt;br /&gt;
Esta suposición, en términos de variación de masa, puede quedar determinada como:&lt;br /&gt;
&lt;br /&gt;
''Variación de la masa en el tiempo = flujo de masa a través de la frontera por unidad de tiempo + flujo de masa generada en el interior por unidad de tiempo. ''&lt;br /&gt;
&lt;br /&gt;
== Ley de Fick ==&lt;br /&gt;
Se trata de una ley cuantitativa en forma diferencial que describe la difusión de materia o energía en un medio en el que inicialmente existe equilibrio químico o físico. Esta ley se trata de una generalización de los fenómenos descritos por la '''Ley de Fourier''', ya que esta es una consideración concreta del calor.&lt;br /&gt;
&lt;br /&gt;
La ley de Fick anuncia que en el caso de existir diferencias de concentración en cualquier especie, el paso de estas especies se llevará a cabo desde las regiones con mayor concentración a las de menor. Formulado matemáticamente:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;F(x,t)=-D\frac{\partial u}{\partial x}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Donde &amp;lt;math&amp;gt;F&amp;lt;/math&amp;gt; es el flujo de la sustancia y &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; el coeficiente de difusión, que representa la facilidad en que un soluto particular se mueve por un disolvente determinado.&lt;br /&gt;
&lt;br /&gt;
La ley de Fick establece que el flujo de difusión del contaminante es proporcional a la variación de concentración:&lt;br /&gt;
&amp;lt;math&amp;gt; F(x,t)=-D\frac{\partial u}{\partial x} &amp;lt;/math&amp;gt;&lt;br /&gt;
donde D es el coeficiente de difusión (medido en &amp;lt;math&amp;gt; \frac{m^2}{s} &amp;lt;/math&amp;gt;), que depende de las propiedades físicas de los compuestos, y que se supone constante D=1.&lt;br /&gt;
&lt;br /&gt;
= Modelización de la ecuación diferencial =&lt;br /&gt;
&lt;br /&gt;
Aplicando el principio de conservación de la masa y la ley de Fourier, definimos la variable &amp;lt;math&amp;gt; u(x,t)&amp;lt;/math&amp;gt; en unidades de sustancia por área, es decir, concentración por superficie del tubo.&lt;br /&gt;
&lt;br /&gt;
Consideramos &amp;lt;math&amp;gt; A &amp;lt;/math&amp;gt; como variable superficie, y tomamos un pequeño trozo, definido por &amp;lt;math&amp;gt;\Delta x&amp;lt;/math&amp;gt;. Entonces, para obtener la variación de la masa en el tiempo:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; A u(x,t) \Delta x &amp;lt;/math&amp;gt; &lt;br /&gt;
&lt;br /&gt;
Y derivando en el tiempo:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; A u_t(x,t) \Delta x &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
obtenemos el primer término de la igualdad anteriormente enunciada.&lt;br /&gt;
&lt;br /&gt;
En el segundo, consideramos nulo el flujo de masa en los puntos interiores por unidad de tiempo, pues suponemos la tubería perfecta y sin sumideros.&lt;br /&gt;
&lt;br /&gt;
Como la superﬁcie lateral del tubo está aislada, solamente habrá flujo de sustancia en la dirección del eje &amp;lt;math&amp;gt;x&amp;lt;/math&amp;gt;. Si &amp;lt;math&amp;gt;F(x,t)&amp;gt; 0&amp;lt;/math&amp;gt; pensamos que el ﬂujo va hacia la derecha, si &amp;lt;math&amp;gt;F(x,t)&amp;lt; 0&amp;lt;/math&amp;gt;, este va a hacia la izquierda. El ﬂujo de&lt;br /&gt;
calor en un intervalo &amp;lt;math&amp;gt;[x, x + ∆x ] &amp;lt;/math&amp;gt; viene dado dado por:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;F(x,t)A-F(x+\Delta x, t)A&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Con lo que queda &amp;lt;math&amp;gt;A u_t(x,t) \Delta x = F(x,t)A-F(x+\Delta x, t)A&amp;lt;/math&amp;gt;, y al dividir &amp;lt;math&amp;gt;A \Delta x&amp;lt;/math&amp;gt;, nos queda &amp;lt;math&amp;gt;u_t(x,t)= \frac {F(x,t)-F(x+\Delta x, t)}{\Delta x}&amp;lt;/math&amp;gt;. &amp;lt;br /&amp;gt;&lt;br /&gt;
Como &amp;lt;math&amp;gt;\Delta x \rightarrow 0 &amp;lt;/math&amp;gt;, &amp;lt;math&amp;gt;u_t(x,t)= -F_x(x,t)&amp;lt;/math&amp;gt;, y aplicando ley de Fick, &amp;lt;math&amp;gt;u_t(x,t)=-\frac{\partial }{\partial x}(-D u_x(x,t)) = D u_xx(x,t) &amp;lt;/math&amp;gt;.&amp;lt;br /&amp;gt;&lt;br /&gt;
Con lo que resulta una ecuación en derivadas parciales que determina la concentración de sustancia:&lt;br /&gt;
&amp;lt;math&amp;gt;u_t(x,t)- D u_xx(x,t)= 0 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Planteamiento del problema bien propuesto ==&lt;br /&gt;
&lt;br /&gt;
Suponemos que el flujo será nula al haber una tapa en los extremos del tubo, con lo que el problema bien propuesto quedaría::&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\begin{cases}&lt;br /&gt;
u_t(x,t)- D u_{xx}(x,t)= 0 ; x\in (0,5) \\&lt;br /&gt;
u(x,0)=u_0 , x\in (0,5) \\&lt;br /&gt;
u_x(0,t)=0 , u_x(5,t)=0 ; t\geq 0&lt;br /&gt;
\end{cases}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= Resolución numérica =&lt;br /&gt;
Para la resolución de ésta ecuación necesitaremos mínimo tres condiciones, dos de las cuales serán de contorno, y la otra será la condición inicial.Si suponemos &amp;lt;math&amp;gt;u_0(x,0)&amp;lt;/math&amp;gt;, entonces:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; u_0(x,0)=\begin{cases}&lt;br /&gt;
0,  si x\leq 3\\&lt;br /&gt;
3,  si x&amp;gt;3&lt;br /&gt;
\end{cases}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Resolución por el método de las diferencias finitas ==&lt;br /&gt;
En el primer caso particular que estudiaremos, trataremos de obtener una resolución numérica del problema anteriormente planteado, dónde tenemos las fronteras aisladas y las concentraciones iniciales conocidas:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\begin{cases}&lt;br /&gt;
u_t(x,t)- D u_{xx}(x,t)= 0; x\in (0,5), t\geq 0 \\&lt;br /&gt;
u_0(x,0), x\in (0,5) \\&lt;br /&gt;
u_x(0,t)=0, u_x(5,t)=0, t\geq 0&lt;br /&gt;
\end{cases}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
La resolución por el método de las diferencias finitas se basa en expresar el problema continuo a un sistema discreto de ecuaciones diferenciales de primer orden. Particularizando para nuestro caso con las condiciones dadas, el problema planteado sería:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\begin{cases}&lt;br /&gt;
u'_n(t)+\frac{-u_{n-1}(t)+2u_n(t)+u_{n+1}(t)}{h^2} \\&lt;br /&gt;
\frac{u_1(t)-u_-1(t)}{2h} \rightarrow u_1(t)=u_-1(t) \\&lt;br /&gt;
\frac{u_{N+1}(t)-u_{N-1}(t)}{2h} \rightarrow u_{N+1}(t)=u_{N-1}\\&lt;br /&gt;
u_n(0)=u^0(x)&lt;br /&gt;
\end{cases}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Por lo que tenemos un sistema de la forma:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\begin{cases}&lt;br /&gt;
U'(t)+KU(t)=F(t)=0\\&lt;br /&gt;
U(0)=U^0&lt;br /&gt;
\end{cases}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Con &amp;lt;math&amp;gt;N+1&amp;lt;/math&amp;gt; ecuaciones.&lt;br /&gt;
==== Resolución por método del trapecio ====&lt;br /&gt;
Suponiendo que en el instante inicial se verifica  :&amp;lt;math&amp;gt;&lt;br /&gt;
u(x,0)=\left\{\begin{matrix}\\0, x≤3\\3, x&amp;gt;3\end{matrix}\right.&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Si tomamos &amp;lt;math&amp;gt;\triangle t= \triangle x/4&amp;lt;/math&amp;gt; en &amp;lt;math&amp;gt;t\in\ [0,5]&amp;lt;/math&amp;gt;, con &amp;lt;math&amp;gt;\triangle x=0.1&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
El código en MATLAB del método sería:&lt;br /&gt;
&lt;br /&gt;
{{matlab| codigo=&lt;br /&gt;
%Datos&lt;br /&gt;
L=5; %Longitud de varilla&lt;br /&gt;
T=5; %tiempo final&lt;br /&gt;
q=1;&lt;br /&gt;
%Discretización temporal y espacial&lt;br /&gt;
dx=0.1; % Paso en espacio&lt;br /&gt;
N=L/dx; %Número de subintervalos&lt;br /&gt;
x=0:dx:L; % Vector de espacio&lt;br /&gt;
dt=dx/4; % Paso en tiempo&lt;br /&gt;
t=0:dt:T; % Vector de tiempos&lt;br /&gt;
% Matriz de coeficientes. Aproximacion de -q*u_xx&lt;br /&gt;
K=2*diag(ones(1,N+1))-diag(ones(1,N),1)-diag(ones(1,N),-1);&lt;br /&gt;
K(1,2)=-2;&lt;br /&gt;
K(N+1,N)=-2;&lt;br /&gt;
K=q*K/dx^2;&lt;br /&gt;
% Calculamos u0 condición inicial&lt;br /&gt;
u0=[zeros(1,1+N*3/5),3*ones(1,N*2/5)]';&lt;br /&gt;
% F=0 (no la consideramos)&lt;br /&gt;
sol(1,:)=u0'; % Guardamos la solucion&lt;br /&gt;
U=u0; % Inicializacion&lt;br /&gt;
% Calculamos U_n -&amp;gt; U_n+1&lt;br /&gt;
%Aplicamos método trapecio método del trapecio&lt;br /&gt;
for j=1:length(t)-1&lt;br /&gt;
U=(eye(N+1)+(dt*K)/2)\((eye(N+1)-(K*dt)/2)*U);&lt;br /&gt;
sol(j+1,:)= U'; % Guardamos solucion&lt;br /&gt;
end&lt;br /&gt;
%Dibujamos la solucion&lt;br /&gt;
[xx,tt]=meshgrid(x,t);&lt;br /&gt;
surf(xx,tt,sol);&lt;br /&gt;
}}&lt;br /&gt;
[[Archivo:nur.jpg|500px|thumb|centro|Gráfica concentración / espacio-tiempo. Resolución por el método del trapecio.]]&lt;br /&gt;
&lt;br /&gt;
==== Resolución por método de Euler explícito ====&lt;br /&gt;
{{matlab| codigo=&lt;br /&gt;
%Datos&lt;br /&gt;
L=5; %Longitud de varilla&lt;br /&gt;
T=5; %tiempo final&lt;br /&gt;
q=1;&lt;br /&gt;
%Discretización temporal y espacial&lt;br /&gt;
dx=0.1; % Paso en espacio&lt;br /&gt;
N=L/dx; %Número de subintervalos&lt;br /&gt;
x=0:dx:L; % Vector de espacio&lt;br /&gt;
dt=dx/20; % Paso en tiempo&lt;br /&gt;
t=0:dt:T; % Vector de tiempos&lt;br /&gt;
% Matriz de coeficientes. Aproximacion de -q*u_xx&lt;br /&gt;
K=2*diag(ones(1,N+1))-diag(ones(1,N),1)-diag(ones(1,N),-1);&lt;br /&gt;
K(1,2)=-2;&lt;br /&gt;
K(N+1,N)=-2;&lt;br /&gt;
K=q*K/dx^2;&lt;br /&gt;
% Calculamos u0 condición inicial&lt;br /&gt;
u0=[zeros(1,1+N*3/5),3*ones(1,N*2/5)]';&lt;br /&gt;
% F=0 (no la consideramos)&lt;br /&gt;
sol(1,:)=u0'; % Guardamos la solucion&lt;br /&gt;
U=u0; % Inicializacion&lt;br /&gt;
% Calculamos U_n -&amp;gt; U_n+1&lt;br /&gt;
%Aplicamos método Euler explícito&lt;br /&gt;
for j=1:length(t)-1 &lt;br /&gt;
k1=-K*U; % Calculamos k1=h*f(tn,yn)&lt;br /&gt;
k2=-K*(U+dt*k1); % Calculamos k2=h*f(tn+h/2,yn+1/2*k1)&lt;br /&gt;
% Meto los datos en el vector&lt;br /&gt;
U=U+(dt/2)*(k1+k2);&lt;br /&gt;
sol(j+1,:)= U'; % Guardamos solucion&lt;br /&gt;
end&lt;br /&gt;
%Dibujamos la solucion&lt;br /&gt;
[xx,tt]=meshgrid(x,t);&lt;br /&gt;
surf(xx,tt,sol);&lt;br /&gt;
}}&lt;br /&gt;
[[Archivo:mig.jpg|500px|thumb|centro|Gráfica concentración / espacio-tiempo. Resolución por el método de Euler explícito.]]&lt;br /&gt;
&lt;br /&gt;
==== Resolución por método de Euler implícito ====&lt;br /&gt;
{{matlab| codigo=&lt;br /&gt;
%Datos&lt;br /&gt;
L=5; %Longitud de varilla&lt;br /&gt;
T=5;&lt;br /&gt;
q=1;&lt;br /&gt;
%Discretización temporal y espacial&lt;br /&gt;
dx=0.1; % Paso en espacio&lt;br /&gt;
N=L/dx; %Número de subintervalos&lt;br /&gt;
h=L/N;&lt;br /&gt;
x=0:h:L; % Vector de espacio&lt;br /&gt;
dt=h/20; % Paso en tiempo&lt;br /&gt;
t=0:dt:T; % Vector de tiempos&lt;br /&gt;
% Matriz de coeficientes. Aproximacion de -q*u_xx&lt;br /&gt;
K=2*diag(ones(1,N+1))-diag(ones(1,N),1)-diag(ones(1,N),-1);&lt;br /&gt;
K(1,2)=-2;&lt;br /&gt;
K(N+1,N)=-2;&lt;br /&gt;
K=q*K/h^2;&lt;br /&gt;
% Calculamos u0 condición inicial&lt;br /&gt;
u0=[zeros(1,1+N*3/5),3*ones(1,N*2/5)]';&lt;br /&gt;
% F=0 (no la consideramos)&lt;br /&gt;
sol(1,:)=u0'; % Guardamos la solucion&lt;br /&gt;
U=u0; % Inicializacion&lt;br /&gt;
% Calculamos U_n -&amp;gt; U_n+1&lt;br /&gt;
% Aplicamos método implícito&lt;br /&gt;
for j=1:length(t)-1 &lt;br /&gt;
U=U-dt*K*U; &lt;br /&gt;
sol(j+1,:)= U'; % Guardamos solucion&lt;br /&gt;
end&lt;br /&gt;
%Dibujamos la solucion&lt;br /&gt;
[xx,tt]=meshgrid(x,t);&lt;br /&gt;
surf(xx,tt,sol);&lt;br /&gt;
}}&lt;br /&gt;
[[Archivo:migap.jpg|500px|thumb|centro|Gráfica concentración / espacio-tiempo. Resolución por el método de Euler implícito.]]&lt;br /&gt;
&lt;br /&gt;
==== Resolución por método de Euler modificado ====&lt;br /&gt;
{{matlab| codigo=&lt;br /&gt;
%Datos&lt;br /&gt;
L=5; %Longitud de varilla&lt;br /&gt;
T=5;&lt;br /&gt;
q=1;&lt;br /&gt;
%Discretización temporal y espacial&lt;br /&gt;
dx=0.1; % Paso en espacio&lt;br /&gt;
N=L/dx; %Número de subintervalos&lt;br /&gt;
h=L/N;&lt;br /&gt;
x=0:h:L; % Vector de espacio&lt;br /&gt;
dt=h/20; % Paso en tiempo&lt;br /&gt;
t=0:dt:T; % Vector de tiempos&lt;br /&gt;
% Matriz de coeficientes. Aproximacion de -q*u_xx&lt;br /&gt;
K=2*diag(ones(1,N+1))-diag(ones(1,N),1)-diag(ones(1,N),-1);&lt;br /&gt;
K(1,2)=-2;&lt;br /&gt;
K(N+1,N)=-2;&lt;br /&gt;
K=q*K/h^2;&lt;br /&gt;
% Calculamos u0 condición inicial&lt;br /&gt;
u0=[zeros(1,1+N*3/5),3*ones(1,N*2/5)]';&lt;br /&gt;
% F=0 (no la consideramos)&lt;br /&gt;
sol(1,:)=u0'; % Guardamos la solucion&lt;br /&gt;
U=u0; % Inicializacion&lt;br /&gt;
% Calculamos U_n -&amp;gt; U_n+1&lt;br /&gt;
for j=1:length(t)-1 &lt;br /&gt;
k1=-K*U; % Calculamos k1=h*f(tn,yn)&lt;br /&gt;
k2=-K*(U+dt*k1); % Calculamos k2=h*f(tn+h/2,yn+1/2*k1)&lt;br /&gt;
% Meto los datos en el vector&lt;br /&gt;
U=U+(dt/2)*(k1+k2);&lt;br /&gt;
sol(j+1,:)= U'; % Guardamos solucion&lt;br /&gt;
end&lt;br /&gt;
%Dibujamos la solucion&lt;br /&gt;
[xx,tt]=meshgrid(x,t);&lt;br /&gt;
surf(xx,tt,sol);&lt;br /&gt;
}}&lt;br /&gt;
[[Archivo: mig.jpg|500px|thumb|centro|Gráfica concentración / espacio-tiempo. Resolución por el método de Euler modificado.]]&lt;br /&gt;
&lt;br /&gt;
== Conservación de la masa total de contaminante ==&lt;br /&gt;
A continuación demostraremos que la masa total de contaminante en el tubo se conserva a lo largo del tiempo, que se puede deducir a partir de la ecuación sin tener que resolverla. Integramos la ecuación y debido a las condiciones de frontera:&lt;br /&gt;
&amp;lt;math&amp;gt;\frac d {dt} \int_0^5 u(x,t)\,dx= \int_0^5 u_{xx}(x,t)\,dx= u_x(x,t)|_0^5=0&amp;lt;/math&amp;gt;&lt;br /&gt;
{{matlab| codigo=&lt;br /&gt;
%Datos&lt;br /&gt;
L=5; %Longitud de varilla&lt;br /&gt;
T=5;&lt;br /&gt;
q=1;&lt;br /&gt;
%Discretización temporal y espacial&lt;br /&gt;
N=500; %Número de subintervalos&lt;br /&gt;
h=L/N;&lt;br /&gt;
x=0:h:L; % Vector de espacio&lt;br /&gt;
dt=h/4; % Paso en tiempo&lt;br /&gt;
t=0:dt:T; % Vector de tiempos&lt;br /&gt;
% Matriz de coeficientes. Aproximacion de -q*u_xx&lt;br /&gt;
K=2*diag(ones(1,N+1))-diag(ones(1,N),1)-diag(ones(1,N),-1);&lt;br /&gt;
K(1,2)=-2;&lt;br /&gt;
K(N+1,N)=-2;&lt;br /&gt;
K=q*K/h^2;&lt;br /&gt;
% Calculamos u0 condición inicial&lt;br /&gt;
u0=[zeros(1,1+N*3/5),3*ones(1,N*2/5)]';&lt;br /&gt;
% F=0 (no la consideramos)&lt;br /&gt;
sol(1,:)=u0'; % Guardamos la solucion&lt;br /&gt;
U=u0; % Inicializacion&lt;br /&gt;
% Calculamos U_n -&amp;gt; U_n+1&lt;br /&gt;
for j=1:length(t)-1 &lt;br /&gt;
U=(eye(N+1)+dt*K)\(U+dt*F); &lt;br /&gt;
sol(j+1,:)= U'; % Guardamos solucion&lt;br /&gt;
end&lt;br /&gt;
% Calculamos el area de la funcion en cada tiempo (area = cantidad de contaminante)&lt;br /&gt;
areas=zeros(1,length(t));&lt;br /&gt;
for i=1:length(t)&lt;br /&gt;
f=sol(i,:);&lt;br /&gt;
w=trapz(x,f);&lt;br /&gt;
area(i)=w;&lt;br /&gt;
end&lt;br /&gt;
%Dibujamos&lt;br /&gt;
plot(t,area)&lt;br /&gt;
xlabel('Tiempo')&lt;br /&gt;
ylabel('Cantidad de contaminante')&lt;br /&gt;
}}&lt;br /&gt;
[[Archivo:aleeex.jpg|500px|thumb|centro|Conservación masa total de contaminante]]&lt;br /&gt;
[[Archivo:gime.jpg|500px|thumb|centro|Conservación masa total de contaminante]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Concentración a lo largo del tiempo==&lt;br /&gt;
La concentración de la sustancia contaminante en la varilla varía con el tiempo, pero en un cierto momento esta concentración se va homogeneizando, y deja de variar, entrando en un estado estacionario::&lt;br /&gt;
&amp;lt;math&amp;gt; u_t(x,t)- D*u_{xx}(x,t)=0 &amp;lt;/math&amp;gt; :    &lt;br /&gt;
&amp;lt;math&amp;gt; u_t(x,t)=0 \rightarrow D*u_{xx}(x,t)=0 &amp;lt;/math&amp;gt; :&lt;br /&gt;
&amp;lt;math&amp;gt; u=c_1*x+c_2 &amp;lt;/math&amp;gt; &lt;br /&gt;
Utizando Matlab comprobaremos que &amp;lt;math&amp;gt; c_1=0 &amp;lt;/math&amp;gt; &amp;lt;math&amp;gt; c_2=1.17 &amp;lt;/math&amp;gt;&lt;br /&gt;
Para tiempos grandes la concentración se estabiliza en torno a 1.17 en toda la varilla, de forma que la solución se asemejará a una función lineal constante.&lt;br /&gt;
&lt;br /&gt;
{{matlab| codigo=&lt;br /&gt;
%Datos&lt;br /&gt;
L=5; %Longitud de varilla&lt;br /&gt;
T=50;&lt;br /&gt;
q=1;&lt;br /&gt;
%Discretización temporal y espacial&lt;br /&gt;
dx=0.1; % Paso en espacio&lt;br /&gt;
N=L/dx; %Número de subintervalos&lt;br /&gt;
h=L/N;&lt;br /&gt;
x=0:h:L; % Vector de espacio&lt;br /&gt;
dt=h/4; % Paso en tiempo&lt;br /&gt;
t=0:dt:T; % Vector de tiempos&lt;br /&gt;
% Matriz de coeficientes. Aproximacion de -q*u_xx&lt;br /&gt;
K=2*diag(ones(1,N+1))-diag(ones(1,N),1)-diag(ones(1,N),-1);&lt;br /&gt;
K(1,2)=-2;&lt;br /&gt;
K(N+1,N)=-2;&lt;br /&gt;
K=q*K/h^2;&lt;br /&gt;
% Calculamos u0 condición inicial&lt;br /&gt;
u0=[zeros(1,1+N*3/5),3*ones(1,N*2/5)]';&lt;br /&gt;
% F=0 (no la consideramos)&lt;br /&gt;
sol(1,:)=u0'; % Guardamos la solucion&lt;br /&gt;
U=u0; % Inicializacion&lt;br /&gt;
% Calculamos U_n -&amp;gt; U_n+1&lt;br /&gt;
%Aplicamos método trapecio método del trapecio&lt;br /&gt;
for j=1:length(t)-1&lt;br /&gt;
U=(eye(N+1)+(dt*K)/2)\((eye(N+1)-(K*dt)/2)*U);&lt;br /&gt;
sol(j+1,:)= U'; % Guardamos solucion&lt;br /&gt;
end&lt;br /&gt;
%Solución estacionaria&lt;br /&gt;
a=sol(length(t),:);&lt;br /&gt;
b=sol(1,:);&lt;br /&gt;
c=sol((length(t)-1)/50+1,:);&lt;br /&gt;
d=sol((length(t)-1)*2/50+1,:);&lt;br /&gt;
e=sol((length(t)-1)*10/50+1,:);&lt;br /&gt;
hold on&lt;br /&gt;
plot(x,a,'xk','linewidth',2);&lt;br /&gt;
plot(x,b,'-m','linewidth',1);&lt;br /&gt;
plot(x,c,'-g','linewidth',1);&lt;br /&gt;
plot(x,d,'-y','linewidth',1);&lt;br /&gt;
plot(x,e,'-b','linewidth',1);&lt;br /&gt;
legend('u(50s)','u(0s)','u(1s)','u(2s)','u(10s)');&lt;br /&gt;
xlabel('Posición en la varilla')&lt;br /&gt;
ylabel('Concentracion')&lt;br /&gt;
hold off&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Soluciones(t).jpg|500px|thumb|centro|Soluciones a lo largo del tiempo]]&lt;br /&gt;
&lt;br /&gt;
La distancia entre la solución estacionaria y las soluciones para los siguientes instantes: 0s, 1s, 2s y 10s; se puede apreciar en la imagen anterior. &lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
Una vez analizado los datos, se demuestra que la sustancia contaminante se estabiliza en t=9.98s, con un error del 5%.&lt;br /&gt;
&lt;br /&gt;
En el caso de que consideremos Δx'=Δx/10,el tiempo en el que se estabiliza la cantidad de sustancia contaminante será t=10s, dato que será más preciso debido a que el paso realizado en el programa es menor.&lt;br /&gt;
&lt;br /&gt;
==Nueva condición de frontera==&lt;br /&gt;
&lt;br /&gt;
Si colocamos un limpiador, que elimina la sustancia contaminante, en el extremo izquierdo de la varilla, varían las condiciones de contorno del problema. En este caso, en el extremo izquierdo, la condición inicial será de tipo Dirichlet ya que se esta variación esta provocada por un mecanismo físico externo que actúa sobre el extremo. &amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;math&amp;gt;\begin{cases}&lt;br /&gt;
u_t(x,t)- D u_{xx}(x,t)= 0 ; x\in (0,5) \\&lt;br /&gt;
u(x,0)=u_0 , x\in (0,5) \\&lt;br /&gt;
u(0,t)=0 , u_x(5,t)=0 ; t\geq 0&lt;br /&gt;
\end{cases}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Dadas las nuevas condiciones, resolvemos el problema por el método de diferencias finitas con la ayuda de Matlab.&lt;br /&gt;
&lt;br /&gt;
{{matlab| codigo=&lt;br /&gt;
%Datos&lt;br /&gt;
L=5; %Longitud de varilla&lt;br /&gt;
T=5; %tiempo final&lt;br /&gt;
q=1;&lt;br /&gt;
%Discretización temporal y espacial&lt;br /&gt;
dx=0.1; % Paso en espacio&lt;br /&gt;
N=L/dx; %Número de subintervalos&lt;br /&gt;
x=0:dx:L;% Vector de espacio&lt;br /&gt;
dt=dx/4; % Paso en tiempo&lt;br /&gt;
t=0:dt:T; % Vector de tiempos&lt;br /&gt;
% Matriz de coeficientes. Aproximacion de -q*u_xx&lt;br /&gt;
K=2*diag(ones(1,N))-diag(ones(1,N-1),1)-diag(ones(1,N-1),-1);&lt;br /&gt;
K(N,N-1)=-2;&lt;br /&gt;
K=q*K/dx^2;&lt;br /&gt;
% Matriz F&lt;br /&gt;
F=zeros(N,1);&lt;br /&gt;
% Calculamos u0 condición inicial&lt;br /&gt;
u0=[zeros(1,N*3/5),3*ones(1,N*2/5)]';&lt;br /&gt;
sol(1,:)=[0,u0']; &lt;br /&gt;
U=u0; % Inicializacion&lt;br /&gt;
% Calculamos U_n -&amp;gt; U_n+1&lt;br /&gt;
%Aplicamos método trapecio método del trapecio&lt;br /&gt;
for j=1:length(t)-1&lt;br /&gt;
U=(eye(N)+(dt*K))\(dt*F+U);&lt;br /&gt;
sol(j+1,:)= [0,U'];&lt;br /&gt;
end&lt;br /&gt;
%Dibujamos la solucion&lt;br /&gt;
[xx,tt]=meshgrid(x,t);&lt;br /&gt;
surf(xx,tt,sol);&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Xata.JPG|500px|thumb|centro|Solución al variar las condiciones de contorno del problema.]]&lt;br /&gt;
&lt;br /&gt;
Observando la gráfica, y por la presencia del limpiador en el extremo de la varilla, para tiempos grandes la cantidad de sustancia contaminante será nula en toda la varilla.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Trapotito.JPG|500px|thumb|centro|Solución al variar las condiciones de contorno del problema.]]&lt;/div&gt;</summary>
		<author><name>Karlo André</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Archivo:Trapotito.JPG&amp;diff=12795</id>
		<title>Archivo:Trapotito.JPG</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Archivo:Trapotito.JPG&amp;diff=12795"/>
				<updated>2014-05-19T14:32:40Z</updated>
		
		<summary type="html">&lt;p&gt;Karlo André: Estabilización de la sustancia contaminante con la presencia de un limpiador.&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Estabilización de la sustancia contaminante con la presencia de un limpiador.&lt;/div&gt;</summary>
		<author><name>Karlo André</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Difusi%C3%B3n_de_una_sustancia_contaminante_(Grupo_10)&amp;diff=12793</id>
		<title>Difusión de una sustancia contaminante (Grupo 10)</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Difusi%C3%B3n_de_una_sustancia_contaminante_(Grupo_10)&amp;diff=12793"/>
				<updated>2014-05-19T14:31:30Z</updated>
		
		<summary type="html">&lt;p&gt;Karlo André: /* Nueva condición de frontera */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;''''''Texto en negrita''''''[[Archivo:nuriat.png|200px|thumb|right|Tubo con sustancia contaminante]]&lt;br /&gt;
La difusión implica un movimiento espontáneo y desordenado de moléculas individuales y, especialmente, nos interesa la difusión de moléculas de una sustancia disuelta en otra.&lt;br /&gt;
&lt;br /&gt;
La difusión de una sustancia puede considerarse análoga al flujo de calor, y la ley de Fick establece que el ritmo de difusión por unidad de superficie, en dirección perpendicular a ésta, es proporcional al gradiente de la concentración de esa sustancia en esa dirección. La concentración es la masa de la sustancia por unidad de volumen, y el gradiente de concentración es la variación de concentración por unidad de distancia.&lt;br /&gt;
&lt;br /&gt;
Para determinar como se distribuye la concentración de una sustancia contaminante tomaremos como ejemplo un tubo largo compuesto por dos sustancias de las cuáles una de ellas es contaminante.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
= Simplificación del problema =&lt;br /&gt;
&lt;br /&gt;
Para que este problema resulte más sencillo aplicaremos una serie de condiciones, facilitando el cálculo del mismo.&lt;br /&gt;
&lt;br /&gt;
En primer lugar denotaremos su concentración &amp;lt;math&amp;gt; u &amp;lt;/math&amp;gt;, concentración de contaminante en cada posición del tubo y constante en cada sección, medida en &amp;lt;math&amp;gt; \frac{mol}{m^2*s} &amp;lt;/math&amp;gt;. &lt;br /&gt;
&lt;br /&gt;
Supondremos que el tubo mide L=5 m, ocupando el intervalo &amp;lt;math&amp;gt; x \in (0,L) &amp;lt;/math&amp;gt;, y que la concentración es la misma en cualquier punto de la sección transversal del tubo. Por tanto, la concentración dependerá unicamente de dos variables &amp;lt;math&amp;gt; u = u(x,t) &amp;lt;/math&amp;gt;. En los extremos se ha colocado un aislante que hace que el flujo de contaminante al exterior del tubo sea nulo. Además, consideraremos la simplificación de que se trata de un tubo aislado por sus laterales, pero abierto por las bases del cilindro.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Ley de conservación de masa ==&lt;br /&gt;
&lt;br /&gt;
Tras una serie de experimentos realizados por Lavoisier, se pusieron de manifiesto que si tenemos en cuenta todas las sustancias que forman parte en una reacción química y todos los productos formados, nunca varía la masa. Esta ley exige que no haya una generación espontánea de materia. Es decir, en la región del espacio estudiada, no existe entrada o salida por un punto cualquiera (frontera o interior), la masa en esta región se mantiene constante. Esta es la ley de la conservación de la masa, que podemos enunciarla, pues, de la siguiente manera: &amp;lt;br /&amp;gt;&lt;br /&gt;
''&amp;quot;En toda reacción química la masa se conserva, esto es, la masa total de los reactivos es igual a la masa total de los productos&amp;quot;'' &amp;lt;br /&amp;gt;&lt;br /&gt;
La ley de conservación de masas exige que no haya una generación espontánea de materia. Es decir, en la región del espacio estudiada, no existe entrada o salida por un punto cualquiera (frontera o interior), la masa en esta región se mantiene constante.&lt;br /&gt;
&lt;br /&gt;
Esta suposición, en términos de variación de masa, puede quedar determinada como:&lt;br /&gt;
&lt;br /&gt;
''Variación de la masa en el tiempo = flujo de masa a través de la frontera por unidad de tiempo + flujo de masa generada en el interior por unidad de tiempo. ''&lt;br /&gt;
&lt;br /&gt;
== Ley de Fick ==&lt;br /&gt;
Se trata de una ley cuantitativa en forma diferencial que describe la difusión de materia o energía en un medio en el que inicialmente existe equilibrio químico o físico. Esta ley se trata de una generalización de los fenómenos descritos por la '''Ley de Fourier''', ya que esta es una consideración concreta del calor.&lt;br /&gt;
&lt;br /&gt;
La ley de Fick anuncia que en el caso de existir diferencias de concentración en cualquier especie, el paso de estas especies se llevará a cabo desde las regiones con mayor concentración a las de menor. Formulado matemáticamente:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;F(x,t)=-D\frac{\partial u}{\partial x}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Donde &amp;lt;math&amp;gt;F&amp;lt;/math&amp;gt; es el flujo de la sustancia y &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; el coeficiente de difusión, que representa la facilidad en que un soluto particular se mueve por un disolvente determinado.&lt;br /&gt;
&lt;br /&gt;
La ley de Fick establece que el flujo de difusión del contaminante es proporcional a la variación de concentración:&lt;br /&gt;
&amp;lt;math&amp;gt; F(x,t)=-D\frac{\partial u}{\partial x} &amp;lt;/math&amp;gt;&lt;br /&gt;
donde D es el coeficiente de difusión (medido en &amp;lt;math&amp;gt; \frac{m^2}{s} &amp;lt;/math&amp;gt;), que depende de las propiedades físicas de los compuestos, y que se supone constante D=1.&lt;br /&gt;
&lt;br /&gt;
= Modelización de la ecuación diferencial =&lt;br /&gt;
&lt;br /&gt;
Aplicando el principio de conservación de la masa y la ley de Fourier, definimos la variable &amp;lt;math&amp;gt; u(x,t)&amp;lt;/math&amp;gt; en unidades de sustancia por área, es decir, concentración por superficie del tubo.&lt;br /&gt;
&lt;br /&gt;
Consideramos &amp;lt;math&amp;gt; A &amp;lt;/math&amp;gt; como variable superficie, y tomamos un pequeño trozo, definido por &amp;lt;math&amp;gt;\Delta x&amp;lt;/math&amp;gt;. Entonces, para obtener la variación de la masa en el tiempo:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; A u(x,t) \Delta x &amp;lt;/math&amp;gt; &lt;br /&gt;
&lt;br /&gt;
Y derivando en el tiempo:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; A u_t(x,t) \Delta x &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
obtenemos el primer término de la igualdad anteriormente enunciada.&lt;br /&gt;
&lt;br /&gt;
En el segundo, consideramos nulo el flujo de masa en los puntos interiores por unidad de tiempo, pues suponemos la tubería perfecta y sin sumideros.&lt;br /&gt;
&lt;br /&gt;
Como la superﬁcie lateral del tubo está aislada, solamente habrá flujo de sustancia en la dirección del eje &amp;lt;math&amp;gt;x&amp;lt;/math&amp;gt;. Si &amp;lt;math&amp;gt;F(x,t)&amp;gt; 0&amp;lt;/math&amp;gt; pensamos que el ﬂujo va hacia la derecha, si &amp;lt;math&amp;gt;F(x,t)&amp;lt; 0&amp;lt;/math&amp;gt;, este va a hacia la izquierda. El ﬂujo de&lt;br /&gt;
calor en un intervalo &amp;lt;math&amp;gt;[x, x + ∆x ] &amp;lt;/math&amp;gt; viene dado dado por:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;F(x,t)A-F(x+\Delta x, t)A&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Con lo que queda &amp;lt;math&amp;gt;A u_t(x,t) \Delta x = F(x,t)A-F(x+\Delta x, t)A&amp;lt;/math&amp;gt;, y al dividir &amp;lt;math&amp;gt;A \Delta x&amp;lt;/math&amp;gt;, nos queda &amp;lt;math&amp;gt;u_t(x,t)= \frac {F(x,t)-F(x+\Delta x, t)}{\Delta x}&amp;lt;/math&amp;gt;. &amp;lt;br /&amp;gt;&lt;br /&gt;
Como &amp;lt;math&amp;gt;\Delta x \rightarrow 0 &amp;lt;/math&amp;gt;, &amp;lt;math&amp;gt;u_t(x,t)= -F_x(x,t)&amp;lt;/math&amp;gt;, y aplicando ley de Fick, &amp;lt;math&amp;gt;u_t(x,t)=-\frac{\partial }{\partial x}(-D u_x(x,t)) = D u_xx(x,t) &amp;lt;/math&amp;gt;.&amp;lt;br /&amp;gt;&lt;br /&gt;
Con lo que resulta una ecuación en derivadas parciales que determina la concentración de sustancia:&lt;br /&gt;
&amp;lt;math&amp;gt;u_t(x,t)- D u_xx(x,t)= 0 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Planteamiento del problema bien propuesto ==&lt;br /&gt;
&lt;br /&gt;
Suponemos que el flujo será nula al haber una tapa en los extremos del tubo, con lo que el problema bien propuesto quedaría::&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\begin{cases}&lt;br /&gt;
u_t(x,t)- D u_{xx}(x,t)= 0 ; x\in (0,5) \\&lt;br /&gt;
u(x,0)=u_0 , x\in (0,5) \\&lt;br /&gt;
u_x(0,t)=0 , u_x(5,t)=0 ; t\geq 0&lt;br /&gt;
\end{cases}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= Resolución numérica =&lt;br /&gt;
Para la resolución de ésta ecuación necesitaremos mínimo tres condiciones, dos de las cuales serán de contorno, y la otra será la condición inicial.Si suponemos &amp;lt;math&amp;gt;u_0(x,0)&amp;lt;/math&amp;gt;, entonces:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; u_0(x,0)=\begin{cases}&lt;br /&gt;
0,  si x\leq 3\\&lt;br /&gt;
3,  si x&amp;gt;3&lt;br /&gt;
\end{cases}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Resolución por el método de las diferencias finitas ==&lt;br /&gt;
En el primer caso particular que estudiaremos, trataremos de obtener una resolución numérica del problema anteriormente planteado, dónde tenemos las fronteras aisladas y las concentraciones iniciales conocidas:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\begin{cases}&lt;br /&gt;
u_t(x,t)- D u_{xx}(x,t)= 0; x\in (0,5), t\geq 0 \\&lt;br /&gt;
u_0(x,0), x\in (0,5) \\&lt;br /&gt;
u_x(0,t)=0, u_x(5,t)=0, t\geq 0&lt;br /&gt;
\end{cases}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
La resolución por el método de las diferencias finitas se basa en expresar el problema continuo a un sistema discreto de ecuaciones diferenciales de primer orden. Particularizando para nuestro caso con las condiciones dadas, el problema planteado sería:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\begin{cases}&lt;br /&gt;
u'_n(t)+\frac{-u_{n-1}(t)+2u_n(t)+u_{n+1}(t)}{h^2} \\&lt;br /&gt;
\frac{u_1(t)-u_-1(t)}{2h} \rightarrow u_1(t)=u_-1(t) \\&lt;br /&gt;
\frac{u_{N+1}(t)-u_{N-1}(t)}{2h} \rightarrow u_{N+1}(t)=u_{N-1}\\&lt;br /&gt;
u_n(0)=u^0(x)&lt;br /&gt;
\end{cases}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Por lo que tenemos un sistema de la forma:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\begin{cases}&lt;br /&gt;
U'(t)+KU(t)=F(t)=0\\&lt;br /&gt;
U(0)=U^0&lt;br /&gt;
\end{cases}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Con &amp;lt;math&amp;gt;N+1&amp;lt;/math&amp;gt; ecuaciones.&lt;br /&gt;
==== Resolución por método del trapecio ====&lt;br /&gt;
Suponiendo que en el instante inicial se verifica  :&amp;lt;math&amp;gt;&lt;br /&gt;
u(x,0)=\left\{\begin{matrix}\\0, x≤3\\3, x&amp;gt;3\end{matrix}\right.&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Si tomamos &amp;lt;math&amp;gt;\triangle t= \triangle x/4&amp;lt;/math&amp;gt; en &amp;lt;math&amp;gt;t\in\ [0,5]&amp;lt;/math&amp;gt;, con &amp;lt;math&amp;gt;\triangle x=0.1&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
El código en MATLAB del método sería:&lt;br /&gt;
&lt;br /&gt;
{{matlab| codigo=&lt;br /&gt;
%Datos&lt;br /&gt;
L=5; %Longitud de varilla&lt;br /&gt;
T=5; %tiempo final&lt;br /&gt;
q=1;&lt;br /&gt;
%Discretización temporal y espacial&lt;br /&gt;
dx=0.1; % Paso en espacio&lt;br /&gt;
N=L/dx; %Número de subintervalos&lt;br /&gt;
x=0:dx:L; % Vector de espacio&lt;br /&gt;
dt=dx/4; % Paso en tiempo&lt;br /&gt;
t=0:dt:T; % Vector de tiempos&lt;br /&gt;
% Matriz de coeficientes. Aproximacion de -q*u_xx&lt;br /&gt;
K=2*diag(ones(1,N+1))-diag(ones(1,N),1)-diag(ones(1,N),-1);&lt;br /&gt;
K(1,2)=-2;&lt;br /&gt;
K(N+1,N)=-2;&lt;br /&gt;
K=q*K/dx^2;&lt;br /&gt;
% Calculamos u0 condición inicial&lt;br /&gt;
u0=[zeros(1,1+N*3/5),3*ones(1,N*2/5)]';&lt;br /&gt;
% F=0 (no la consideramos)&lt;br /&gt;
sol(1,:)=u0'; % Guardamos la solucion&lt;br /&gt;
U=u0; % Inicializacion&lt;br /&gt;
% Calculamos U_n -&amp;gt; U_n+1&lt;br /&gt;
%Aplicamos método trapecio método del trapecio&lt;br /&gt;
for j=1:length(t)-1&lt;br /&gt;
U=(eye(N+1)+(dt*K)/2)\((eye(N+1)-(K*dt)/2)*U);&lt;br /&gt;
sol(j+1,:)= U'; % Guardamos solucion&lt;br /&gt;
end&lt;br /&gt;
%Dibujamos la solucion&lt;br /&gt;
[xx,tt]=meshgrid(x,t);&lt;br /&gt;
surf(xx,tt,sol);&lt;br /&gt;
}}&lt;br /&gt;
[[Archivo:nur.jpg|500px|thumb|centro|Gráfica concentración / espacio-tiempo. Resolución por el método del trapecio.]]&lt;br /&gt;
&lt;br /&gt;
==== Resolución por método de Euler explícito ====&lt;br /&gt;
{{matlab| codigo=&lt;br /&gt;
%Datos&lt;br /&gt;
L=5; %Longitud de varilla&lt;br /&gt;
T=5; %tiempo final&lt;br /&gt;
q=1;&lt;br /&gt;
%Discretización temporal y espacial&lt;br /&gt;
dx=0.1; % Paso en espacio&lt;br /&gt;
N=L/dx; %Número de subintervalos&lt;br /&gt;
x=0:dx:L; % Vector de espacio&lt;br /&gt;
dt=dx/20; % Paso en tiempo&lt;br /&gt;
t=0:dt:T; % Vector de tiempos&lt;br /&gt;
% Matriz de coeficientes. Aproximacion de -q*u_xx&lt;br /&gt;
K=2*diag(ones(1,N+1))-diag(ones(1,N),1)-diag(ones(1,N),-1);&lt;br /&gt;
K(1,2)=-2;&lt;br /&gt;
K(N+1,N)=-2;&lt;br /&gt;
K=q*K/dx^2;&lt;br /&gt;
% Calculamos u0 condición inicial&lt;br /&gt;
u0=[zeros(1,1+N*3/5),3*ones(1,N*2/5)]';&lt;br /&gt;
% F=0 (no la consideramos)&lt;br /&gt;
sol(1,:)=u0'; % Guardamos la solucion&lt;br /&gt;
U=u0; % Inicializacion&lt;br /&gt;
% Calculamos U_n -&amp;gt; U_n+1&lt;br /&gt;
%Aplicamos método Euler explícito&lt;br /&gt;
for j=1:length(t)-1 &lt;br /&gt;
k1=-K*U; % Calculamos k1=h*f(tn,yn)&lt;br /&gt;
k2=-K*(U+dt*k1); % Calculamos k2=h*f(tn+h/2,yn+1/2*k1)&lt;br /&gt;
% Meto los datos en el vector&lt;br /&gt;
U=U+(dt/2)*(k1+k2);&lt;br /&gt;
sol(j+1,:)= U'; % Guardamos solucion&lt;br /&gt;
end&lt;br /&gt;
%Dibujamos la solucion&lt;br /&gt;
[xx,tt]=meshgrid(x,t);&lt;br /&gt;
surf(xx,tt,sol);&lt;br /&gt;
}}&lt;br /&gt;
[[Archivo:mig.jpg|500px|thumb|centro|Gráfica concentración / espacio-tiempo. Resolución por el método de Euler explícito.]]&lt;br /&gt;
&lt;br /&gt;
==== Resolución por método de Euler implícito ====&lt;br /&gt;
{{matlab| codigo=&lt;br /&gt;
%Datos&lt;br /&gt;
L=5; %Longitud de varilla&lt;br /&gt;
T=5;&lt;br /&gt;
q=1;&lt;br /&gt;
%Discretización temporal y espacial&lt;br /&gt;
dx=0.1; % Paso en espacio&lt;br /&gt;
N=L/dx; %Número de subintervalos&lt;br /&gt;
h=L/N;&lt;br /&gt;
x=0:h:L; % Vector de espacio&lt;br /&gt;
dt=h/20; % Paso en tiempo&lt;br /&gt;
t=0:dt:T; % Vector de tiempos&lt;br /&gt;
% Matriz de coeficientes. Aproximacion de -q*u_xx&lt;br /&gt;
K=2*diag(ones(1,N+1))-diag(ones(1,N),1)-diag(ones(1,N),-1);&lt;br /&gt;
K(1,2)=-2;&lt;br /&gt;
K(N+1,N)=-2;&lt;br /&gt;
K=q*K/h^2;&lt;br /&gt;
% Calculamos u0 condición inicial&lt;br /&gt;
u0=[zeros(1,1+N*3/5),3*ones(1,N*2/5)]';&lt;br /&gt;
% F=0 (no la consideramos)&lt;br /&gt;
sol(1,:)=u0'; % Guardamos la solucion&lt;br /&gt;
U=u0; % Inicializacion&lt;br /&gt;
% Calculamos U_n -&amp;gt; U_n+1&lt;br /&gt;
% Aplicamos método implícito&lt;br /&gt;
for j=1:length(t)-1 &lt;br /&gt;
U=U-dt*K*U; &lt;br /&gt;
sol(j+1,:)= U'; % Guardamos solucion&lt;br /&gt;
end&lt;br /&gt;
%Dibujamos la solucion&lt;br /&gt;
[xx,tt]=meshgrid(x,t);&lt;br /&gt;
surf(xx,tt,sol);&lt;br /&gt;
}}&lt;br /&gt;
[[Archivo:migap.jpg|500px|thumb|centro|Gráfica concentración / espacio-tiempo. Resolución por el método de Euler implícito.]]&lt;br /&gt;
&lt;br /&gt;
==== Resolución por método de Euler modificado ====&lt;br /&gt;
{{matlab| codigo=&lt;br /&gt;
%Datos&lt;br /&gt;
L=5; %Longitud de varilla&lt;br /&gt;
T=5;&lt;br /&gt;
q=1;&lt;br /&gt;
%Discretización temporal y espacial&lt;br /&gt;
dx=0.1; % Paso en espacio&lt;br /&gt;
N=L/dx; %Número de subintervalos&lt;br /&gt;
h=L/N;&lt;br /&gt;
x=0:h:L; % Vector de espacio&lt;br /&gt;
dt=h/20; % Paso en tiempo&lt;br /&gt;
t=0:dt:T; % Vector de tiempos&lt;br /&gt;
% Matriz de coeficientes. Aproximacion de -q*u_xx&lt;br /&gt;
K=2*diag(ones(1,N+1))-diag(ones(1,N),1)-diag(ones(1,N),-1);&lt;br /&gt;
K(1,2)=-2;&lt;br /&gt;
K(N+1,N)=-2;&lt;br /&gt;
K=q*K/h^2;&lt;br /&gt;
% Calculamos u0 condición inicial&lt;br /&gt;
u0=[zeros(1,1+N*3/5),3*ones(1,N*2/5)]';&lt;br /&gt;
% F=0 (no la consideramos)&lt;br /&gt;
sol(1,:)=u0'; % Guardamos la solucion&lt;br /&gt;
U=u0; % Inicializacion&lt;br /&gt;
% Calculamos U_n -&amp;gt; U_n+1&lt;br /&gt;
for j=1:length(t)-1 &lt;br /&gt;
k1=-K*U; % Calculamos k1=h*f(tn,yn)&lt;br /&gt;
k2=-K*(U+dt*k1); % Calculamos k2=h*f(tn+h/2,yn+1/2*k1)&lt;br /&gt;
% Meto los datos en el vector&lt;br /&gt;
U=U+(dt/2)*(k1+k2);&lt;br /&gt;
sol(j+1,:)= U'; % Guardamos solucion&lt;br /&gt;
end&lt;br /&gt;
%Dibujamos la solucion&lt;br /&gt;
[xx,tt]=meshgrid(x,t);&lt;br /&gt;
surf(xx,tt,sol);&lt;br /&gt;
}}&lt;br /&gt;
[[Archivo: mig.jpg|500px|thumb|centro|Gráfica concentración / espacio-tiempo. Resolución por el método de Euler modificado.]]&lt;br /&gt;
&lt;br /&gt;
== Conservación de la masa total de contaminante ==&lt;br /&gt;
A continuación demostraremos que la masa total de contaminante en el tubo se conserva a lo largo del tiempo, que se puede deducir a partir de la ecuación sin tener que resolverla. Integramos la ecuación y debido a las condiciones de frontera:&lt;br /&gt;
&amp;lt;math&amp;gt;\frac d {dt} \int_0^5 u(x,t)\,dx= \int_0^5 u_{xx}(x,t)\,dx= u_x(x,t)|_0^5=0&amp;lt;/math&amp;gt;&lt;br /&gt;
{{matlab| codigo=&lt;br /&gt;
%Datos&lt;br /&gt;
L=5; %Longitud de varilla&lt;br /&gt;
T=5;&lt;br /&gt;
q=1;&lt;br /&gt;
%Discretización temporal y espacial&lt;br /&gt;
N=500; %Número de subintervalos&lt;br /&gt;
h=L/N;&lt;br /&gt;
x=0:h:L; % Vector de espacio&lt;br /&gt;
dt=h/4; % Paso en tiempo&lt;br /&gt;
t=0:dt:T; % Vector de tiempos&lt;br /&gt;
% Matriz de coeficientes. Aproximacion de -q*u_xx&lt;br /&gt;
K=2*diag(ones(1,N+1))-diag(ones(1,N),1)-diag(ones(1,N),-1);&lt;br /&gt;
K(1,2)=-2;&lt;br /&gt;
K(N+1,N)=-2;&lt;br /&gt;
K=q*K/h^2;&lt;br /&gt;
% Calculamos u0 condición inicial&lt;br /&gt;
u0=[zeros(1,1+N*3/5),3*ones(1,N*2/5)]';&lt;br /&gt;
% F=0 (no la consideramos)&lt;br /&gt;
sol(1,:)=u0'; % Guardamos la solucion&lt;br /&gt;
U=u0; % Inicializacion&lt;br /&gt;
% Calculamos U_n -&amp;gt; U_n+1&lt;br /&gt;
for j=1:length(t)-1 &lt;br /&gt;
U=(eye(N+1)+dt*K)\(U+dt*F); &lt;br /&gt;
sol(j+1,:)= U'; % Guardamos solucion&lt;br /&gt;
end&lt;br /&gt;
% Calculamos el area de la funcion en cada tiempo (area = cantidad de contaminante)&lt;br /&gt;
areas=zeros(1,length(t));&lt;br /&gt;
for i=1:length(t)&lt;br /&gt;
f=sol(i,:);&lt;br /&gt;
w=trapz(x,f);&lt;br /&gt;
area(i)=w;&lt;br /&gt;
end&lt;br /&gt;
%Dibujamos&lt;br /&gt;
plot(t,area)&lt;br /&gt;
xlabel('Tiempo')&lt;br /&gt;
ylabel('Cantidad de contaminante')&lt;br /&gt;
}}&lt;br /&gt;
[[Archivo:aleeex.jpg|500px|thumb|centro|Conservación masa total de contaminante]]&lt;br /&gt;
[[Archivo:gime.jpg|500px|thumb|centro|Conservación masa total de contaminante]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Concentración a lo largo del tiempo==&lt;br /&gt;
La concentración de la sustancia contaminante en la varilla varía con el tiempo, pero en un cierto momento esta concentración se va homogeneizando, y deja de variar, entrando en un estado estacionario::&lt;br /&gt;
&amp;lt;math&amp;gt; u_t(x,t)- D*u_{xx}(x,t)=0 &amp;lt;/math&amp;gt; :    &lt;br /&gt;
&amp;lt;math&amp;gt; u_t(x,t)=0 \rightarrow D*u_{xx}(x,t)=0 &amp;lt;/math&amp;gt; :&lt;br /&gt;
&amp;lt;math&amp;gt; u=c_1*x+c_2 &amp;lt;/math&amp;gt; &lt;br /&gt;
Utizando Matlab comprobaremos que &amp;lt;math&amp;gt; c_1=0 &amp;lt;/math&amp;gt; &amp;lt;math&amp;gt; c_2=1.17 &amp;lt;/math&amp;gt;&lt;br /&gt;
Para tiempos grandes la concentración se estabiliza en torno a 1.17 en toda la varilla, de forma que la solución se asemejará a una función lineal constante.&lt;br /&gt;
&lt;br /&gt;
{{matlab| codigo=&lt;br /&gt;
%Datos&lt;br /&gt;
L=5; %Longitud de varilla&lt;br /&gt;
T=50;&lt;br /&gt;
q=1;&lt;br /&gt;
%Discretización temporal y espacial&lt;br /&gt;
dx=0.1; % Paso en espacio&lt;br /&gt;
N=L/dx; %Número de subintervalos&lt;br /&gt;
h=L/N;&lt;br /&gt;
x=0:h:L; % Vector de espacio&lt;br /&gt;
dt=h/4; % Paso en tiempo&lt;br /&gt;
t=0:dt:T; % Vector de tiempos&lt;br /&gt;
% Matriz de coeficientes. Aproximacion de -q*u_xx&lt;br /&gt;
K=2*diag(ones(1,N+1))-diag(ones(1,N),1)-diag(ones(1,N),-1);&lt;br /&gt;
K(1,2)=-2;&lt;br /&gt;
K(N+1,N)=-2;&lt;br /&gt;
K=q*K/h^2;&lt;br /&gt;
% Calculamos u0 condición inicial&lt;br /&gt;
u0=[zeros(1,1+N*3/5),3*ones(1,N*2/5)]';&lt;br /&gt;
% F=0 (no la consideramos)&lt;br /&gt;
sol(1,:)=u0'; % Guardamos la solucion&lt;br /&gt;
U=u0; % Inicializacion&lt;br /&gt;
% Calculamos U_n -&amp;gt; U_n+1&lt;br /&gt;
%Aplicamos método trapecio método del trapecio&lt;br /&gt;
for j=1:length(t)-1&lt;br /&gt;
U=(eye(N+1)+(dt*K)/2)\((eye(N+1)-(K*dt)/2)*U);&lt;br /&gt;
sol(j+1,:)= U'; % Guardamos solucion&lt;br /&gt;
end&lt;br /&gt;
%Solución estacionaria&lt;br /&gt;
a=sol(length(t),:);&lt;br /&gt;
b=sol(1,:);&lt;br /&gt;
c=sol((length(t)-1)/50+1,:);&lt;br /&gt;
d=sol((length(t)-1)*2/50+1,:);&lt;br /&gt;
e=sol((length(t)-1)*10/50+1,:);&lt;br /&gt;
hold on&lt;br /&gt;
plot(x,a,'xk','linewidth',2);&lt;br /&gt;
plot(x,b,'-m','linewidth',1);&lt;br /&gt;
plot(x,c,'-g','linewidth',1);&lt;br /&gt;
plot(x,d,'-y','linewidth',1);&lt;br /&gt;
plot(x,e,'-b','linewidth',1);&lt;br /&gt;
legend('u(50s)','u(0s)','u(1s)','u(2s)','u(10s)');&lt;br /&gt;
xlabel('Posición en la varilla')&lt;br /&gt;
ylabel('Concentracion')&lt;br /&gt;
hold off&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Soluciones(t).jpg|500px|thumb|centro|Soluciones a lo largo del tiempo]]&lt;br /&gt;
&lt;br /&gt;
La distancia entre la solución estacionaria y las soluciones para los siguientes instantes: 0s, 1s, 2s y 10s; se puede apreciar en la imagen anterior. &lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
Una vez analizado los datos, se demuestra que la sustancia contaminante se estabiliza en t=9.98s, con un error del 5%.&lt;br /&gt;
&lt;br /&gt;
En el caso de que consideremos Δx'=Δx/10,el tiempo en el que se estabiliza la cantidad de sustancia contaminante será t=10s, dato que será más preciso debido a que el paso realizado en el programa es menor.&lt;br /&gt;
&lt;br /&gt;
==Nueva condición de frontera==&lt;br /&gt;
&lt;br /&gt;
Si colocamos un limpiador, que elimina la sustancia contaminante, en el extremo izquierdo de la varilla, varían las condiciones de contorno del problema. En este caso, en el extremo izquierdo, la condición inicial será de tipo Dirichlet ya que se esta variación esta provocada por un mecanismo físico externo que actúa sobre el extremo. &amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;math&amp;gt;\begin{cases}&lt;br /&gt;
u_t(x,t)- D u_{xx}(x,t)= 0 ; x\in (0,5) \\&lt;br /&gt;
u(x,0)=u_0 , x\in (0,5) \\&lt;br /&gt;
u(0,t)=0 , u_x(5,t)=0 ; t\geq 0&lt;br /&gt;
\end{cases}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Dadas las nuevas condiciones, resolvemos el problema por el método de diferencias finitas con la ayuda de Matlab.&lt;br /&gt;
&lt;br /&gt;
{{matlab| codigo=&lt;br /&gt;
%Datos&lt;br /&gt;
L=5; %Longitud de varilla&lt;br /&gt;
T=5; %tiempo final&lt;br /&gt;
q=1;&lt;br /&gt;
%Discretización temporal y espacial&lt;br /&gt;
dx=0.1; % Paso en espacio&lt;br /&gt;
N=L/dx; %Número de subintervalos&lt;br /&gt;
x=0:dx:L;% Vector de espacio&lt;br /&gt;
dt=dx/4; % Paso en tiempo&lt;br /&gt;
t=0:dt:T; % Vector de tiempos&lt;br /&gt;
% Matriz de coeficientes. Aproximacion de -q*u_xx&lt;br /&gt;
K=2*diag(ones(1,N))-diag(ones(1,N-1),1)-diag(ones(1,N-1),-1);&lt;br /&gt;
K(N,N-1)=-2;&lt;br /&gt;
K=q*K/dx^2;&lt;br /&gt;
% Matriz F&lt;br /&gt;
F=zeros(N,1);&lt;br /&gt;
% Calculamos u0 condición inicial&lt;br /&gt;
u0=[zeros(1,N*3/5),3*ones(1,N*2/5)]';&lt;br /&gt;
sol(1,:)=[0,u0']; &lt;br /&gt;
U=u0; % Inicializacion&lt;br /&gt;
% Calculamos U_n -&amp;gt; U_n+1&lt;br /&gt;
%Aplicamos método trapecio método del trapecio&lt;br /&gt;
for j=1:length(t)-1&lt;br /&gt;
U=(eye(N)+(dt*K))\(dt*F+U);&lt;br /&gt;
sol(j+1,:)= [0,U'];&lt;br /&gt;
end&lt;br /&gt;
%Dibujamos la solucion&lt;br /&gt;
[xx,tt]=meshgrid(x,t);&lt;br /&gt;
surf(xx,tt,sol);&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Xata.JPG|500px|thumb|centro|Solución al variar las condiciones de contorno del problema.]]&lt;br /&gt;
&lt;br /&gt;
Observando la gráfica, y por la presencia del limpiador en el extremo de la varilla, para tiempos grandes la cantidad de sustancia contaminante será nula en toda la varilla.&lt;/div&gt;</summary>
		<author><name>Karlo André</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Difusi%C3%B3n_de_una_sustancia_contaminante_(Grupo_10)&amp;diff=12777</id>
		<title>Difusión de una sustancia contaminante (Grupo 10)</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Difusi%C3%B3n_de_una_sustancia_contaminante_(Grupo_10)&amp;diff=12777"/>
				<updated>2014-05-19T14:22:10Z</updated>
		
		<summary type="html">&lt;p&gt;Karlo André: /* Nueva condición de frontera */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;''''''Texto en negrita''''''[[Archivo:nuriat.png|200px|thumb|right|Tubo con sustancia contaminante]]&lt;br /&gt;
La difusión implica un movimiento espontáneo y desordenado de moléculas individuales y, especialmente, nos interesa la difusión de moléculas de una sustancia disuelta en otra.&lt;br /&gt;
&lt;br /&gt;
La difusión de una sustancia puede considerarse análoga al flujo de calor, y la ley de Fick establece que el ritmo de difusión por unidad de superficie, en dirección perpendicular a ésta, es proporcional al gradiente de la concentración de esa sustancia en esa dirección. La concentración es la masa de la sustancia por unidad de volumen, y el gradiente de concentración es la variación de concentración por unidad de distancia.&lt;br /&gt;
&lt;br /&gt;
Para determinar como se distribuye la concentración de una sustancia contaminante tomaremos como ejemplo un tubo largo compuesto por dos sustancias de las cuáles una de ellas es contaminante.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
= Simplificación del problema =&lt;br /&gt;
&lt;br /&gt;
Para que este problema resulte más sencillo aplicaremos una serie de condiciones, facilitando el cálculo del mismo.&lt;br /&gt;
&lt;br /&gt;
En primer lugar denotaremos su concentración &amp;lt;math&amp;gt; u &amp;lt;/math&amp;gt;, concentración de contaminante en cada posición del tubo y constante en cada sección, medida en &amp;lt;math&amp;gt; \frac{mol}{m^2*s} &amp;lt;/math&amp;gt;. &lt;br /&gt;
&lt;br /&gt;
Supondremos que el tubo mide L=5 m, ocupando el intervalo &amp;lt;math&amp;gt; x \in (0,L) &amp;lt;/math&amp;gt;, y que la concentración es la misma en cualquier punto de la sección transversal del tubo. Por tanto, la concentración dependerá unicamente de dos variables &amp;lt;math&amp;gt; u = u(x,t) &amp;lt;/math&amp;gt;. En los extremos se ha colocado un aislante que hace que el flujo de contaminante al exterior del tubo sea nulo. Además, consideraremos la simplificación de que se trata de un tubo aislado por sus laterales, pero abierto por las bases del cilindro.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Ley de conservación de masa ==&lt;br /&gt;
&lt;br /&gt;
Tras una serie de experimentos realizados por Lavoisier, se pusieron de manifiesto que si tenemos en cuenta todas las sustancias que forman parte en una reacción química y todos los productos formados, nunca varía la masa. Esta ley exige que no haya una generación espontánea de materia. Es decir, en la región del espacio estudiada, no existe entrada o salida por un punto cualquiera (frontera o interior), la masa en esta región se mantiene constante. Esta es la ley de la conservación de la masa, que podemos enunciarla, pues, de la siguiente manera: &amp;lt;br /&amp;gt;&lt;br /&gt;
''&amp;quot;En toda reacción química la masa se conserva, esto es, la masa total de los reactivos es igual a la masa total de los productos&amp;quot;'' &amp;lt;br /&amp;gt;&lt;br /&gt;
La ley de conservación de masas exige que no haya una generación espontánea de materia. Es decir, en la región del espacio estudiada, no existe entrada o salida por un punto cualquiera (frontera o interior), la masa en esta región se mantiene constante.&lt;br /&gt;
&lt;br /&gt;
Esta suposición, en términos de variación de masa, puede quedar determinada como:&lt;br /&gt;
&lt;br /&gt;
''Variación de la masa en el tiempo = flujo de masa a través de la frontera por unidad de tiempo + flujo de masa generada en el interior por unidad de tiempo. ''&lt;br /&gt;
&lt;br /&gt;
== Ley de Fick ==&lt;br /&gt;
Se trata de una ley cuantitativa en forma diferencial que describe la difusión de materia o energía en un medio en el que inicialmente existe equilibrio químico o físico. Esta ley se trata de una generalización de los fenómenos descritos por la '''Ley de Fourier''', ya que esta es una consideración concreta del calor.&lt;br /&gt;
&lt;br /&gt;
La ley de Fick anuncia que en el caso de existir diferencias de concentración en cualquier especie, el paso de estas especies se llevará a cabo desde las regiones con mayor concentración a las de menor. Formulado matemáticamente:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;F(x,t)=-D\frac{\partial u}{\partial x}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Donde &amp;lt;math&amp;gt;F&amp;lt;/math&amp;gt; es el flujo de la sustancia y &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; el coeficiente de difusión, que representa la facilidad en que un soluto particular se mueve por un disolvente determinado.&lt;br /&gt;
&lt;br /&gt;
La ley de Fick establece que el flujo de difusión del contaminante es proporcional a la variación de concentración:&lt;br /&gt;
&amp;lt;math&amp;gt; F(x,t)=-D\frac{\partial u}{\partial x} &amp;lt;/math&amp;gt;&lt;br /&gt;
donde D es el coeficiente de difusión (medido en &amp;lt;math&amp;gt; \frac{m^2}{s} &amp;lt;/math&amp;gt;), que depende de las propiedades físicas de los compuestos, y que se supone constante D=1.&lt;br /&gt;
&lt;br /&gt;
= Modelización de la ecuación diferencial =&lt;br /&gt;
&lt;br /&gt;
Aplicando el principio de conservación de la masa y la ley de Fourier, definimos la variable &amp;lt;math&amp;gt; u(x,t)&amp;lt;/math&amp;gt; en unidades de sustancia por área, es decir, concentración por superficie del tubo.&lt;br /&gt;
&lt;br /&gt;
Consideramos &amp;lt;math&amp;gt; A &amp;lt;/math&amp;gt; como variable superficie, y tomamos un pequeño trozo, definido por &amp;lt;math&amp;gt;\Delta x&amp;lt;/math&amp;gt;. Entonces, para obtener la variación de la masa en el tiempo:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; A u(x,t) \Delta x &amp;lt;/math&amp;gt; &lt;br /&gt;
&lt;br /&gt;
Y derivando en el tiempo:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; A u_t(x,t) \Delta x &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
obtenemos el primer término de la igualdad anteriormente enunciada.&lt;br /&gt;
&lt;br /&gt;
En el segundo, consideramos nulo el flujo de masa en los puntos interiores por unidad de tiempo, pues suponemos la tubería perfecta y sin sumideros.&lt;br /&gt;
&lt;br /&gt;
Como la superﬁcie lateral del tubo está aislada, solamente habrá flujo de sustancia en la dirección del eje &amp;lt;math&amp;gt;x&amp;lt;/math&amp;gt;. Si &amp;lt;math&amp;gt;F(x,t)&amp;gt; 0&amp;lt;/math&amp;gt; pensamos que el ﬂujo va hacia la derecha, si &amp;lt;math&amp;gt;F(x,t)&amp;lt; 0&amp;lt;/math&amp;gt;, este va a hacia la izquierda. El ﬂujo de&lt;br /&gt;
calor en un intervalo &amp;lt;math&amp;gt;[x, x + ∆x ] &amp;lt;/math&amp;gt; viene dado dado por:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;F(x,t)A-F(x+\Delta x, t)A&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Con lo que queda &amp;lt;math&amp;gt;A u_t(x,t) \Delta x = F(x,t)A-F(x+\Delta x, t)A&amp;lt;/math&amp;gt;, y al dividir &amp;lt;math&amp;gt;A \Delta x&amp;lt;/math&amp;gt;, nos queda &amp;lt;math&amp;gt;u_t(x,t)= \frac {F(x,t)-F(x+\Delta x, t)}{\Delta x}&amp;lt;/math&amp;gt;. &amp;lt;br /&amp;gt;&lt;br /&gt;
Como &amp;lt;math&amp;gt;\Delta x \rightarrow 0 &amp;lt;/math&amp;gt;, &amp;lt;math&amp;gt;u_t(x,t)= -F_x(x,t)&amp;lt;/math&amp;gt;, y aplicando ley de Fick, &amp;lt;math&amp;gt;u_t(x,t)=-\frac{\partial }{\partial x}(-D u_x(x,t)) = D u_xx(x,t) &amp;lt;/math&amp;gt;.&amp;lt;br /&amp;gt;&lt;br /&gt;
Con lo que resulta una ecuación en derivadas parciales que determina la concentración de sustancia:&lt;br /&gt;
&amp;lt;math&amp;gt;u_t(x,t)- D u_xx(x,t)= 0 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Planteamiento del problema bien propuesto ==&lt;br /&gt;
&lt;br /&gt;
Suponemos que el flujo será nula al haber una tapa en los extremos del tubo, con lo que el problema bien propuesto quedaría::&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\begin{cases}&lt;br /&gt;
u_t(x,t)- D u_{xx}(x,t)= 0 ; x\in (0,5) \\&lt;br /&gt;
u(x,0)=u_0 , x\in (0,5) \\&lt;br /&gt;
u_x(0,t)=0 , u_x(5,t)=0 ; t\geq 0&lt;br /&gt;
\end{cases}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= Resolución numérica =&lt;br /&gt;
Para la resolución de ésta ecuación necesitaremos mínimo tres condiciones, dos de las cuales serán de contorno, y la otra será la condición inicial.Si suponemos &amp;lt;math&amp;gt;u_0(x,0)&amp;lt;/math&amp;gt;, entonces:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; u_0(x,0)=\begin{cases}&lt;br /&gt;
0,  si x\leq 3\\&lt;br /&gt;
3,  si x&amp;gt;3&lt;br /&gt;
\end{cases}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Resolución por el método de las diferencias finitas ==&lt;br /&gt;
En el primer caso particular que estudiaremos, trataremos de obtener una resolución numérica del problema anteriormente planteado, dónde tenemos las fronteras aisladas y las concentraciones iniciales conocidas:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\begin{cases}&lt;br /&gt;
u_t(x,t)- D u_{xx}(x,t)= 0; x\in (0,5), t\geq 0 \\&lt;br /&gt;
u_0(x,0), x\in (0,5) \\&lt;br /&gt;
u_x(0,t)=0, u_x(5,t)=0, t\geq 0&lt;br /&gt;
\end{cases}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
La resolución por el método de las diferencias finitas se basa en expresar el problema continuo a un sistema discreto de ecuaciones diferenciales de primer orden. Particularizando para nuestro caso con las condiciones dadas, el problema planteado sería:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\begin{cases}&lt;br /&gt;
u'_n(t)+\frac{-u_{n-1}(t)+2u_n(t)+u_{n+1}(t)}{h^2} \\&lt;br /&gt;
\frac{u_1(t)-u_-1(t)}{2h} \rightarrow u_1(t)=u_-1(t) \\&lt;br /&gt;
\frac{u_{N+1}(t)-u_{N-1}(t)}{2h} \rightarrow u_{N+1}(t)=u_{N-1}\\&lt;br /&gt;
u_n(0)=u^0(x)&lt;br /&gt;
\end{cases}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Por lo que tenemos un sistema de la forma:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\begin{cases}&lt;br /&gt;
U'(t)+KU(t)=F(t)=0\\&lt;br /&gt;
U(0)=U^0&lt;br /&gt;
\end{cases}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Con &amp;lt;math&amp;gt;N+1&amp;lt;/math&amp;gt; ecuaciones.&lt;br /&gt;
==== Resolución por método del trapecio ====&lt;br /&gt;
Suponiendo que en el instante inicial se verifica  :&amp;lt;math&amp;gt;&lt;br /&gt;
u(x,0)=\left\{\begin{matrix}\\0, x≤3\\3, x&amp;gt;3\end{matrix}\right.&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Si tomamos &amp;lt;math&amp;gt;\triangle t= \triangle x/4&amp;lt;/math&amp;gt; en &amp;lt;math&amp;gt;t\in\ [0,5]&amp;lt;/math&amp;gt;, con &amp;lt;math&amp;gt;\triangle x=0.1&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
El código en MATLAB del método sería:&lt;br /&gt;
&lt;br /&gt;
{{matlab| codigo=&lt;br /&gt;
%Datos&lt;br /&gt;
L=5; %Longitud de varilla&lt;br /&gt;
T=5; %tiempo final&lt;br /&gt;
q=1;&lt;br /&gt;
%Discretización temporal y espacial&lt;br /&gt;
dx=0.1; % Paso en espacio&lt;br /&gt;
N=L/dx; %Número de subintervalos&lt;br /&gt;
x=0:dx:L; % Vector de espacio&lt;br /&gt;
dt=dx/4; % Paso en tiempo&lt;br /&gt;
t=0:dt:T; % Vector de tiempos&lt;br /&gt;
% Matriz de coeficientes. Aproximacion de -q*u_xx&lt;br /&gt;
K=2*diag(ones(1,N+1))-diag(ones(1,N),1)-diag(ones(1,N),-1);&lt;br /&gt;
K(1,2)=-2;&lt;br /&gt;
K(N+1,N)=-2;&lt;br /&gt;
K=q*K/dx^2;&lt;br /&gt;
% Calculamos u0 condición inicial&lt;br /&gt;
u0=[zeros(1,1+N*3/5),3*ones(1,N*2/5)]';&lt;br /&gt;
% F=0 (no la consideramos)&lt;br /&gt;
sol(1,:)=u0'; % Guardamos la solucion&lt;br /&gt;
U=u0; % Inicializacion&lt;br /&gt;
% Calculamos U_n -&amp;gt; U_n+1&lt;br /&gt;
%Aplicamos método trapecio método del trapecio&lt;br /&gt;
for j=1:length(t)-1&lt;br /&gt;
U=(eye(N+1)+(dt*K)/2)\((eye(N+1)-(K*dt)/2)*U);&lt;br /&gt;
sol(j+1,:)= U'; % Guardamos solucion&lt;br /&gt;
end&lt;br /&gt;
%Dibujamos la solucion&lt;br /&gt;
[xx,tt]=meshgrid(x,t);&lt;br /&gt;
surf(xx,tt,sol);&lt;br /&gt;
}}&lt;br /&gt;
[[Archivo:nur.jpg|500px|thumb|centro|Gráfica concentración / espacio-tiempo. Resolución por el método del trapecio.]]&lt;br /&gt;
&lt;br /&gt;
==== Resolución por método de Euler explícito ====&lt;br /&gt;
{{matlab| codigo=&lt;br /&gt;
%Datos&lt;br /&gt;
L=5; %Longitud de varilla&lt;br /&gt;
T=5; %tiempo final&lt;br /&gt;
q=1;&lt;br /&gt;
%Discretización temporal y espacial&lt;br /&gt;
dx=0.1; % Paso en espacio&lt;br /&gt;
N=L/dx; %Número de subintervalos&lt;br /&gt;
x=0:dx:L; % Vector de espacio&lt;br /&gt;
dt=dx/20; % Paso en tiempo&lt;br /&gt;
t=0:dt:T; % Vector de tiempos&lt;br /&gt;
% Matriz de coeficientes. Aproximacion de -q*u_xx&lt;br /&gt;
K=2*diag(ones(1,N+1))-diag(ones(1,N),1)-diag(ones(1,N),-1);&lt;br /&gt;
K(1,2)=-2;&lt;br /&gt;
K(N+1,N)=-2;&lt;br /&gt;
K=q*K/dx^2;&lt;br /&gt;
% Calculamos u0 condición inicial&lt;br /&gt;
u0=[zeros(1,1+N*3/5),3*ones(1,N*2/5)]';&lt;br /&gt;
% F=0 (no la consideramos)&lt;br /&gt;
sol(1,:)=u0'; % Guardamos la solucion&lt;br /&gt;
U=u0; % Inicializacion&lt;br /&gt;
% Calculamos U_n -&amp;gt; U_n+1&lt;br /&gt;
%Aplicamos método Euler explícito&lt;br /&gt;
for j=1:length(t)-1 &lt;br /&gt;
k1=-K*U; % Calculamos k1=h*f(tn,yn)&lt;br /&gt;
k2=-K*(U+dt*k1); % Calculamos k2=h*f(tn+h/2,yn+1/2*k1)&lt;br /&gt;
% Meto los datos en el vector&lt;br /&gt;
U=U+(dt/2)*(k1+k2);&lt;br /&gt;
sol(j+1,:)= U'; % Guardamos solucion&lt;br /&gt;
end&lt;br /&gt;
%Dibujamos la solucion&lt;br /&gt;
[xx,tt]=meshgrid(x,t);&lt;br /&gt;
surf(xx,tt,sol);&lt;br /&gt;
}}&lt;br /&gt;
[[Archivo:mig.jpg|500px|thumb|centro|Gráfica concentración / espacio-tiempo. Resolución por el método de Euler explícito.]]&lt;br /&gt;
&lt;br /&gt;
==== Resolución por método de Euler implícito ====&lt;br /&gt;
{{matlab| codigo=&lt;br /&gt;
%Datos&lt;br /&gt;
L=5; %Longitud de varilla&lt;br /&gt;
T=5;&lt;br /&gt;
q=1;&lt;br /&gt;
%Discretización temporal y espacial&lt;br /&gt;
dx=0.1; % Paso en espacio&lt;br /&gt;
N=L/dx; %Número de subintervalos&lt;br /&gt;
h=L/N;&lt;br /&gt;
x=0:h:L; % Vector de espacio&lt;br /&gt;
dt=h/20; % Paso en tiempo&lt;br /&gt;
t=0:dt:T; % Vector de tiempos&lt;br /&gt;
% Matriz de coeficientes. Aproximacion de -q*u_xx&lt;br /&gt;
K=2*diag(ones(1,N+1))-diag(ones(1,N),1)-diag(ones(1,N),-1);&lt;br /&gt;
K(1,2)=-2;&lt;br /&gt;
K(N+1,N)=-2;&lt;br /&gt;
K=q*K/h^2;&lt;br /&gt;
% Calculamos u0 condición inicial&lt;br /&gt;
u0=[zeros(1,1+N*3/5),3*ones(1,N*2/5)]';&lt;br /&gt;
% F=0 (no la consideramos)&lt;br /&gt;
sol(1,:)=u0'; % Guardamos la solucion&lt;br /&gt;
U=u0; % Inicializacion&lt;br /&gt;
% Calculamos U_n -&amp;gt; U_n+1&lt;br /&gt;
% Aplicamos método implícito&lt;br /&gt;
for j=1:length(t)-1 &lt;br /&gt;
U=U-dt*K*U; &lt;br /&gt;
sol(j+1,:)= U'; % Guardamos solucion&lt;br /&gt;
end&lt;br /&gt;
%Dibujamos la solucion&lt;br /&gt;
[xx,tt]=meshgrid(x,t);&lt;br /&gt;
surf(xx,tt,sol);&lt;br /&gt;
}}&lt;br /&gt;
[[Archivo:migap.jpg|500px|thumb|centro|Gráfica concentración / espacio-tiempo. Resolución por el método de Euler implícito.]]&lt;br /&gt;
&lt;br /&gt;
==== Resolución por método de Euler modificado ====&lt;br /&gt;
{{matlab| codigo=&lt;br /&gt;
%Datos&lt;br /&gt;
L=5; %Longitud de varilla&lt;br /&gt;
T=5;&lt;br /&gt;
q=1;&lt;br /&gt;
%Discretización temporal y espacial&lt;br /&gt;
dx=0.1; % Paso en espacio&lt;br /&gt;
N=L/dx; %Número de subintervalos&lt;br /&gt;
h=L/N;&lt;br /&gt;
x=0:h:L; % Vector de espacio&lt;br /&gt;
dt=h/20; % Paso en tiempo&lt;br /&gt;
t=0:dt:T; % Vector de tiempos&lt;br /&gt;
% Matriz de coeficientes. Aproximacion de -q*u_xx&lt;br /&gt;
K=2*diag(ones(1,N+1))-diag(ones(1,N),1)-diag(ones(1,N),-1);&lt;br /&gt;
K(1,2)=-2;&lt;br /&gt;
K(N+1,N)=-2;&lt;br /&gt;
K=q*K/h^2;&lt;br /&gt;
% Calculamos u0 condición inicial&lt;br /&gt;
u0=[zeros(1,1+N*3/5),3*ones(1,N*2/5)]';&lt;br /&gt;
% F=0 (no la consideramos)&lt;br /&gt;
sol(1,:)=u0'; % Guardamos la solucion&lt;br /&gt;
U=u0; % Inicializacion&lt;br /&gt;
% Calculamos U_n -&amp;gt; U_n+1&lt;br /&gt;
for j=1:length(t)-1 &lt;br /&gt;
k1=-K*U; % Calculamos k1=h*f(tn,yn)&lt;br /&gt;
k2=-K*(U+dt*k1); % Calculamos k2=h*f(tn+h/2,yn+1/2*k1)&lt;br /&gt;
% Meto los datos en el vector&lt;br /&gt;
U=U+(dt/2)*(k1+k2);&lt;br /&gt;
sol(j+1,:)= U'; % Guardamos solucion&lt;br /&gt;
end&lt;br /&gt;
%Dibujamos la solucion&lt;br /&gt;
[xx,tt]=meshgrid(x,t);&lt;br /&gt;
surf(xx,tt,sol);&lt;br /&gt;
}}&lt;br /&gt;
[[Archivo: mig.jpg|500px|thumb|centro|Gráfica concentración / espacio-tiempo. Resolución por el método de Euler modificado.]]&lt;br /&gt;
&lt;br /&gt;
== Conservación de la masa total de contaminante ==&lt;br /&gt;
A continuación demostraremos que la masa total de contaminante en el tubo se conserva a lo largo del tiempo, que se puede deducir a partir de la ecuación sin tener que resolverla. Integramos la ecuación y debido a las condiciones de frontera:&lt;br /&gt;
&amp;lt;math&amp;gt;\frac d {dt} \int_0^5 u(x,t)\,dx= \int_0^5 u_{xx}(x,t)\,dx= u_x(x,t)|_0^5=0&amp;lt;/math&amp;gt;&lt;br /&gt;
{{matlab| codigo=&lt;br /&gt;
%Datos&lt;br /&gt;
L=5; %Longitud de varilla&lt;br /&gt;
T=5;&lt;br /&gt;
q=1;&lt;br /&gt;
%Discretización temporal y espacial&lt;br /&gt;
N=500; %Número de subintervalos&lt;br /&gt;
h=L/N;&lt;br /&gt;
x=0:h:L; % Vector de espacio&lt;br /&gt;
dt=h/4; % Paso en tiempo&lt;br /&gt;
t=0:dt:T; % Vector de tiempos&lt;br /&gt;
% Matriz de coeficientes. Aproximacion de -q*u_xx&lt;br /&gt;
K=2*diag(ones(1,N+1))-diag(ones(1,N),1)-diag(ones(1,N),-1);&lt;br /&gt;
K(1,2)=-2;&lt;br /&gt;
K(N+1,N)=-2;&lt;br /&gt;
K=q*K/h^2;&lt;br /&gt;
% Calculamos u0 condición inicial&lt;br /&gt;
u0=[zeros(1,1+N*3/5),3*ones(1,N*2/5)]';&lt;br /&gt;
% F=0 (no la consideramos)&lt;br /&gt;
sol(1,:)=u0'; % Guardamos la solucion&lt;br /&gt;
U=u0; % Inicializacion&lt;br /&gt;
% Calculamos U_n -&amp;gt; U_n+1&lt;br /&gt;
for j=1:length(t)-1 &lt;br /&gt;
U=(eye(N+1)+dt*K)\(U+dt*F); &lt;br /&gt;
sol(j+1,:)= U'; % Guardamos solucion&lt;br /&gt;
end&lt;br /&gt;
% Calculamos el area de la funcion en cada tiempo (area = cantidad de contaminante)&lt;br /&gt;
areas=zeros(1,length(t));&lt;br /&gt;
for i=1:length(t)&lt;br /&gt;
f=sol(i,:);&lt;br /&gt;
w=trapz(x,f);&lt;br /&gt;
area(i)=w;&lt;br /&gt;
end&lt;br /&gt;
%Dibujamos&lt;br /&gt;
plot(t,area)&lt;br /&gt;
xlabel('Tiempo')&lt;br /&gt;
ylabel('Cantidad de contaminante')&lt;br /&gt;
}}&lt;br /&gt;
[[Archivo:aleeex.jpg|500px|thumb|centro|Conservación masa total de contaminante]]&lt;br /&gt;
[[Archivo:gime.jpg|500px|thumb|centro|Conservación masa total de contaminante]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Concentración a lo largo del tiempo==&lt;br /&gt;
La concentración de la sustancia contaminante en la varilla varía con el tiempo, pero en un cierto momento esta concentración se va homogeneizando, y deja de variar, entrando en un estado estacionario::&lt;br /&gt;
&amp;lt;math&amp;gt; u_t(x,t)- D*u_{xx}(x,t)=0 &amp;lt;/math&amp;gt; :    &lt;br /&gt;
&amp;lt;math&amp;gt; u_t(x,t)=0 \rightarrow D*u_{xx}(x,t)=0 &amp;lt;/math&amp;gt; :&lt;br /&gt;
&amp;lt;math&amp;gt; u=c_1*x+c_2 &amp;lt;/math&amp;gt; &lt;br /&gt;
Utizando Matlab comprobaremos que &amp;lt;math&amp;gt; c_1=0 &amp;lt;/math&amp;gt; &amp;lt;math&amp;gt; c_2=1.17 &amp;lt;/math&amp;gt;&lt;br /&gt;
Para tiempos grandes la concentración se estabiliza en torno a 1.17 en toda la varilla, de forma que la solución se asemejará a una función lineal constante.&lt;br /&gt;
&lt;br /&gt;
{{matlab| codigo=&lt;br /&gt;
%Datos&lt;br /&gt;
L=5; %Longitud de varilla&lt;br /&gt;
T=50;&lt;br /&gt;
q=1;&lt;br /&gt;
%Discretización temporal y espacial&lt;br /&gt;
dx=0.1; % Paso en espacio&lt;br /&gt;
N=L/dx; %Número de subintervalos&lt;br /&gt;
h=L/N;&lt;br /&gt;
x=0:h:L; % Vector de espacio&lt;br /&gt;
dt=h/4; % Paso en tiempo&lt;br /&gt;
t=0:dt:T; % Vector de tiempos&lt;br /&gt;
% Matriz de coeficientes. Aproximacion de -q*u_xx&lt;br /&gt;
K=2*diag(ones(1,N+1))-diag(ones(1,N),1)-diag(ones(1,N),-1);&lt;br /&gt;
K(1,2)=-2;&lt;br /&gt;
K(N+1,N)=-2;&lt;br /&gt;
K=q*K/h^2;&lt;br /&gt;
% Calculamos u0 condición inicial&lt;br /&gt;
u0=[zeros(1,1+N*3/5),3*ones(1,N*2/5)]';&lt;br /&gt;
% F=0 (no la consideramos)&lt;br /&gt;
sol(1,:)=u0'; % Guardamos la solucion&lt;br /&gt;
U=u0; % Inicializacion&lt;br /&gt;
% Calculamos U_n -&amp;gt; U_n+1&lt;br /&gt;
%Aplicamos método trapecio método del trapecio&lt;br /&gt;
for j=1:length(t)-1&lt;br /&gt;
U=(eye(N+1)+(dt*K)/2)\((eye(N+1)-(K*dt)/2)*U);&lt;br /&gt;
sol(j+1,:)= U'; % Guardamos solucion&lt;br /&gt;
end&lt;br /&gt;
%Solución estacionaria&lt;br /&gt;
a=sol(length(t),:);&lt;br /&gt;
b=sol(1,:);&lt;br /&gt;
c=sol((length(t)-1)/50+1,:);&lt;br /&gt;
d=sol((length(t)-1)*2/50+1,:);&lt;br /&gt;
e=sol((length(t)-1)*10/50+1,:);&lt;br /&gt;
hold on&lt;br /&gt;
plot(x,a,'xk','linewidth',2);&lt;br /&gt;
plot(x,b,'-m','linewidth',1);&lt;br /&gt;
plot(x,c,'-g','linewidth',1);&lt;br /&gt;
plot(x,d,'-y','linewidth',1);&lt;br /&gt;
plot(x,e,'-b','linewidth',1);&lt;br /&gt;
legend('u(50s)','u(0s)','u(1s)','u(2s)','u(10s)');&lt;br /&gt;
xlabel('Posición en la varilla')&lt;br /&gt;
ylabel('Concentracion')&lt;br /&gt;
hold off&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Soluciones(t).jpg|500px|thumb|centro|Soluciones a lo largo del tiempo]]&lt;br /&gt;
&lt;br /&gt;
La distancia entre la solución estacionaria y las soluciones para los siguientes instantes: 0s, 1s, 2s y 10s; se puede apreciar en la imagen anterior. &lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
Una vez analizado los datos, se demuestra que la sustancia contaminante se estabiliza en t=9.98s, con un error del 5%.&lt;br /&gt;
&lt;br /&gt;
En el caso de que consideremos Δx'=Δx/10,el tiempo en el que se estabiliza la cantidad de sustancia contaminante será t=10s, dato que será más preciso debido a que el paso realizado en el programa es menor.&lt;br /&gt;
&lt;br /&gt;
==Nueva condición de frontera==&lt;br /&gt;
&lt;br /&gt;
Si colocamos un limpiador, que elimina la sustancia contaminante, en el extremo izquierdo de la varilla, varían las condiciones de contorno del problema. En este caso, en el extremo izquierdo, la condición inicial será de tipo Dirichlet ya que se esta variación esta provocada por un mecanismo físico externo que actúa sobre el extremo. &amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;math&amp;gt;\begin{cases}&lt;br /&gt;
u_t(x,t)- D u_{xx}(x,t)= 0 ; x\in (0,5) \\&lt;br /&gt;
u(x,0)=u_0 , x\in (0,5) \\&lt;br /&gt;
u(0,t)=0 , u_x(5,t)=0 ; t\geq 0&lt;br /&gt;
\end{cases}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Dadas las nuevas condiciones, resolvemos el problema por el método de diferencias finitas con la ayuda de Matlab.&lt;br /&gt;
&lt;br /&gt;
{{matlab| codigo=&lt;br /&gt;
%Datos&lt;br /&gt;
L=5; %Longitud de varilla&lt;br /&gt;
T=5; %tiempo final&lt;br /&gt;
q=1;&lt;br /&gt;
%Discretización temporal y espacial&lt;br /&gt;
dx=0.1; % Paso en espacio&lt;br /&gt;
N=L/dx; %Número de subintervalos&lt;br /&gt;
x=0:dx:L;% Vector de espacio&lt;br /&gt;
dt=dx/4; % Paso en tiempo&lt;br /&gt;
t=0:dt:T; % Vector de tiempos&lt;br /&gt;
% Matriz de coeficientes. Aproximacion de -q*u_xx&lt;br /&gt;
K=2*diag(ones(1,N))-diag(ones(1,N-1),1)-diag(ones(1,N-1),-1);&lt;br /&gt;
K(N,N-1)=-2;&lt;br /&gt;
K=q*K/dx^2;&lt;br /&gt;
% Matriz F&lt;br /&gt;
F=zeros(N,1);&lt;br /&gt;
% Calculamos u0 condición inicial&lt;br /&gt;
u0=[zeros(1,N*3/5),3*ones(1,N*2/5)]';&lt;br /&gt;
sol(1,:)=[0,u0']; &lt;br /&gt;
U=u0; % Inicializacion&lt;br /&gt;
% Calculamos U_n -&amp;gt; U_n+1&lt;br /&gt;
%Aplicamos método trapecio método del trapecio&lt;br /&gt;
for j=1:length(t)-1&lt;br /&gt;
U=(eye(N)+(dt*K))\(dt*F+U);&lt;br /&gt;
sol(j+1,:)= [0,U'];&lt;br /&gt;
end&lt;br /&gt;
%Dibujamos la solucion&lt;br /&gt;
[xx,tt]=meshgrid(x,t);&lt;br /&gt;
surf(xx,tt,sol);&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Xata.JPG|500px|thumb|centro|Solución al variar las condiciones de contorno del probblema.]]&lt;/div&gt;</summary>
		<author><name>Karlo André</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Difusi%C3%B3n_de_una_sustancia_contaminante_(Grupo_10)&amp;diff=12776</id>
		<title>Difusión de una sustancia contaminante (Grupo 10)</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Difusi%C3%B3n_de_una_sustancia_contaminante_(Grupo_10)&amp;diff=12776"/>
				<updated>2014-05-19T14:20:40Z</updated>
		
		<summary type="html">&lt;p&gt;Karlo André: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;''''''Texto en negrita''''''[[Archivo:nuriat.png|200px|thumb|right|Tubo con sustancia contaminante]]&lt;br /&gt;
La difusión implica un movimiento espontáneo y desordenado de moléculas individuales y, especialmente, nos interesa la difusión de moléculas de una sustancia disuelta en otra.&lt;br /&gt;
&lt;br /&gt;
La difusión de una sustancia puede considerarse análoga al flujo de calor, y la ley de Fick establece que el ritmo de difusión por unidad de superficie, en dirección perpendicular a ésta, es proporcional al gradiente de la concentración de esa sustancia en esa dirección. La concentración es la masa de la sustancia por unidad de volumen, y el gradiente de concentración es la variación de concentración por unidad de distancia.&lt;br /&gt;
&lt;br /&gt;
Para determinar como se distribuye la concentración de una sustancia contaminante tomaremos como ejemplo un tubo largo compuesto por dos sustancias de las cuáles una de ellas es contaminante.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
= Simplificación del problema =&lt;br /&gt;
&lt;br /&gt;
Para que este problema resulte más sencillo aplicaremos una serie de condiciones, facilitando el cálculo del mismo.&lt;br /&gt;
&lt;br /&gt;
En primer lugar denotaremos su concentración &amp;lt;math&amp;gt; u &amp;lt;/math&amp;gt;, concentración de contaminante en cada posición del tubo y constante en cada sección, medida en &amp;lt;math&amp;gt; \frac{mol}{m^2*s} &amp;lt;/math&amp;gt;. &lt;br /&gt;
&lt;br /&gt;
Supondremos que el tubo mide L=5 m, ocupando el intervalo &amp;lt;math&amp;gt; x \in (0,L) &amp;lt;/math&amp;gt;, y que la concentración es la misma en cualquier punto de la sección transversal del tubo. Por tanto, la concentración dependerá unicamente de dos variables &amp;lt;math&amp;gt; u = u(x,t) &amp;lt;/math&amp;gt;. En los extremos se ha colocado un aislante que hace que el flujo de contaminante al exterior del tubo sea nulo. Además, consideraremos la simplificación de que se trata de un tubo aislado por sus laterales, pero abierto por las bases del cilindro.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Ley de conservación de masa ==&lt;br /&gt;
&lt;br /&gt;
Tras una serie de experimentos realizados por Lavoisier, se pusieron de manifiesto que si tenemos en cuenta todas las sustancias que forman parte en una reacción química y todos los productos formados, nunca varía la masa. Esta ley exige que no haya una generación espontánea de materia. Es decir, en la región del espacio estudiada, no existe entrada o salida por un punto cualquiera (frontera o interior), la masa en esta región se mantiene constante. Esta es la ley de la conservación de la masa, que podemos enunciarla, pues, de la siguiente manera: &amp;lt;br /&amp;gt;&lt;br /&gt;
''&amp;quot;En toda reacción química la masa se conserva, esto es, la masa total de los reactivos es igual a la masa total de los productos&amp;quot;'' &amp;lt;br /&amp;gt;&lt;br /&gt;
La ley de conservación de masas exige que no haya una generación espontánea de materia. Es decir, en la región del espacio estudiada, no existe entrada o salida por un punto cualquiera (frontera o interior), la masa en esta región se mantiene constante.&lt;br /&gt;
&lt;br /&gt;
Esta suposición, en términos de variación de masa, puede quedar determinada como:&lt;br /&gt;
&lt;br /&gt;
''Variación de la masa en el tiempo = flujo de masa a través de la frontera por unidad de tiempo + flujo de masa generada en el interior por unidad de tiempo. ''&lt;br /&gt;
&lt;br /&gt;
== Ley de Fick ==&lt;br /&gt;
Se trata de una ley cuantitativa en forma diferencial que describe la difusión de materia o energía en un medio en el que inicialmente existe equilibrio químico o físico. Esta ley se trata de una generalización de los fenómenos descritos por la '''Ley de Fourier''', ya que esta es una consideración concreta del calor.&lt;br /&gt;
&lt;br /&gt;
La ley de Fick anuncia que en el caso de existir diferencias de concentración en cualquier especie, el paso de estas especies se llevará a cabo desde las regiones con mayor concentración a las de menor. Formulado matemáticamente:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;F(x,t)=-D\frac{\partial u}{\partial x}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Donde &amp;lt;math&amp;gt;F&amp;lt;/math&amp;gt; es el flujo de la sustancia y &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; el coeficiente de difusión, que representa la facilidad en que un soluto particular se mueve por un disolvente determinado.&lt;br /&gt;
&lt;br /&gt;
La ley de Fick establece que el flujo de difusión del contaminante es proporcional a la variación de concentración:&lt;br /&gt;
&amp;lt;math&amp;gt; F(x,t)=-D\frac{\partial u}{\partial x} &amp;lt;/math&amp;gt;&lt;br /&gt;
donde D es el coeficiente de difusión (medido en &amp;lt;math&amp;gt; \frac{m^2}{s} &amp;lt;/math&amp;gt;), que depende de las propiedades físicas de los compuestos, y que se supone constante D=1.&lt;br /&gt;
&lt;br /&gt;
= Modelización de la ecuación diferencial =&lt;br /&gt;
&lt;br /&gt;
Aplicando el principio de conservación de la masa y la ley de Fourier, definimos la variable &amp;lt;math&amp;gt; u(x,t)&amp;lt;/math&amp;gt; en unidades de sustancia por área, es decir, concentración por superficie del tubo.&lt;br /&gt;
&lt;br /&gt;
Consideramos &amp;lt;math&amp;gt; A &amp;lt;/math&amp;gt; como variable superficie, y tomamos un pequeño trozo, definido por &amp;lt;math&amp;gt;\Delta x&amp;lt;/math&amp;gt;. Entonces, para obtener la variación de la masa en el tiempo:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; A u(x,t) \Delta x &amp;lt;/math&amp;gt; &lt;br /&gt;
&lt;br /&gt;
Y derivando en el tiempo:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; A u_t(x,t) \Delta x &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
obtenemos el primer término de la igualdad anteriormente enunciada.&lt;br /&gt;
&lt;br /&gt;
En el segundo, consideramos nulo el flujo de masa en los puntos interiores por unidad de tiempo, pues suponemos la tubería perfecta y sin sumideros.&lt;br /&gt;
&lt;br /&gt;
Como la superﬁcie lateral del tubo está aislada, solamente habrá flujo de sustancia en la dirección del eje &amp;lt;math&amp;gt;x&amp;lt;/math&amp;gt;. Si &amp;lt;math&amp;gt;F(x,t)&amp;gt; 0&amp;lt;/math&amp;gt; pensamos que el ﬂujo va hacia la derecha, si &amp;lt;math&amp;gt;F(x,t)&amp;lt; 0&amp;lt;/math&amp;gt;, este va a hacia la izquierda. El ﬂujo de&lt;br /&gt;
calor en un intervalo &amp;lt;math&amp;gt;[x, x + ∆x ] &amp;lt;/math&amp;gt; viene dado dado por:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;F(x,t)A-F(x+\Delta x, t)A&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Con lo que queda &amp;lt;math&amp;gt;A u_t(x,t) \Delta x = F(x,t)A-F(x+\Delta x, t)A&amp;lt;/math&amp;gt;, y al dividir &amp;lt;math&amp;gt;A \Delta x&amp;lt;/math&amp;gt;, nos queda &amp;lt;math&amp;gt;u_t(x,t)= \frac {F(x,t)-F(x+\Delta x, t)}{\Delta x}&amp;lt;/math&amp;gt;. &amp;lt;br /&amp;gt;&lt;br /&gt;
Como &amp;lt;math&amp;gt;\Delta x \rightarrow 0 &amp;lt;/math&amp;gt;, &amp;lt;math&amp;gt;u_t(x,t)= -F_x(x,t)&amp;lt;/math&amp;gt;, y aplicando ley de Fick, &amp;lt;math&amp;gt;u_t(x,t)=-\frac{\partial }{\partial x}(-D u_x(x,t)) = D u_xx(x,t) &amp;lt;/math&amp;gt;.&amp;lt;br /&amp;gt;&lt;br /&gt;
Con lo que resulta una ecuación en derivadas parciales que determina la concentración de sustancia:&lt;br /&gt;
&amp;lt;math&amp;gt;u_t(x,t)- D u_xx(x,t)= 0 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Planteamiento del problema bien propuesto ==&lt;br /&gt;
&lt;br /&gt;
Suponemos que el flujo será nula al haber una tapa en los extremos del tubo, con lo que el problema bien propuesto quedaría::&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\begin{cases}&lt;br /&gt;
u_t(x,t)- D u_{xx}(x,t)= 0 ; x\in (0,5) \\&lt;br /&gt;
u(x,0)=u_0 , x\in (0,5) \\&lt;br /&gt;
u_x(0,t)=0 , u_x(5,t)=0 ; t\geq 0&lt;br /&gt;
\end{cases}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= Resolución numérica =&lt;br /&gt;
Para la resolución de ésta ecuación necesitaremos mínimo tres condiciones, dos de las cuales serán de contorno, y la otra será la condición inicial.Si suponemos &amp;lt;math&amp;gt;u_0(x,0)&amp;lt;/math&amp;gt;, entonces:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; u_0(x,0)=\begin{cases}&lt;br /&gt;
0,  si x\leq 3\\&lt;br /&gt;
3,  si x&amp;gt;3&lt;br /&gt;
\end{cases}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Resolución por el método de las diferencias finitas ==&lt;br /&gt;
En el primer caso particular que estudiaremos, trataremos de obtener una resolución numérica del problema anteriormente planteado, dónde tenemos las fronteras aisladas y las concentraciones iniciales conocidas:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\begin{cases}&lt;br /&gt;
u_t(x,t)- D u_{xx}(x,t)= 0; x\in (0,5), t\geq 0 \\&lt;br /&gt;
u_0(x,0), x\in (0,5) \\&lt;br /&gt;
u_x(0,t)=0, u_x(5,t)=0, t\geq 0&lt;br /&gt;
\end{cases}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
La resolución por el método de las diferencias finitas se basa en expresar el problema continuo a un sistema discreto de ecuaciones diferenciales de primer orden. Particularizando para nuestro caso con las condiciones dadas, el problema planteado sería:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\begin{cases}&lt;br /&gt;
u'_n(t)+\frac{-u_{n-1}(t)+2u_n(t)+u_{n+1}(t)}{h^2} \\&lt;br /&gt;
\frac{u_1(t)-u_-1(t)}{2h} \rightarrow u_1(t)=u_-1(t) \\&lt;br /&gt;
\frac{u_{N+1}(t)-u_{N-1}(t)}{2h} \rightarrow u_{N+1}(t)=u_{N-1}\\&lt;br /&gt;
u_n(0)=u^0(x)&lt;br /&gt;
\end{cases}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Por lo que tenemos un sistema de la forma:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\begin{cases}&lt;br /&gt;
U'(t)+KU(t)=F(t)=0\\&lt;br /&gt;
U(0)=U^0&lt;br /&gt;
\end{cases}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Con &amp;lt;math&amp;gt;N+1&amp;lt;/math&amp;gt; ecuaciones.&lt;br /&gt;
==== Resolución por método del trapecio ====&lt;br /&gt;
Suponiendo que en el instante inicial se verifica  :&amp;lt;math&amp;gt;&lt;br /&gt;
u(x,0)=\left\{\begin{matrix}\\0, x≤3\\3, x&amp;gt;3\end{matrix}\right.&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Si tomamos &amp;lt;math&amp;gt;\triangle t= \triangle x/4&amp;lt;/math&amp;gt; en &amp;lt;math&amp;gt;t\in\ [0,5]&amp;lt;/math&amp;gt;, con &amp;lt;math&amp;gt;\triangle x=0.1&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
El código en MATLAB del método sería:&lt;br /&gt;
&lt;br /&gt;
{{matlab| codigo=&lt;br /&gt;
%Datos&lt;br /&gt;
L=5; %Longitud de varilla&lt;br /&gt;
T=5; %tiempo final&lt;br /&gt;
q=1;&lt;br /&gt;
%Discretización temporal y espacial&lt;br /&gt;
dx=0.1; % Paso en espacio&lt;br /&gt;
N=L/dx; %Número de subintervalos&lt;br /&gt;
x=0:dx:L; % Vector de espacio&lt;br /&gt;
dt=dx/4; % Paso en tiempo&lt;br /&gt;
t=0:dt:T; % Vector de tiempos&lt;br /&gt;
% Matriz de coeficientes. Aproximacion de -q*u_xx&lt;br /&gt;
K=2*diag(ones(1,N+1))-diag(ones(1,N),1)-diag(ones(1,N),-1);&lt;br /&gt;
K(1,2)=-2;&lt;br /&gt;
K(N+1,N)=-2;&lt;br /&gt;
K=q*K/dx^2;&lt;br /&gt;
% Calculamos u0 condición inicial&lt;br /&gt;
u0=[zeros(1,1+N*3/5),3*ones(1,N*2/5)]';&lt;br /&gt;
% F=0 (no la consideramos)&lt;br /&gt;
sol(1,:)=u0'; % Guardamos la solucion&lt;br /&gt;
U=u0; % Inicializacion&lt;br /&gt;
% Calculamos U_n -&amp;gt; U_n+1&lt;br /&gt;
%Aplicamos método trapecio método del trapecio&lt;br /&gt;
for j=1:length(t)-1&lt;br /&gt;
U=(eye(N+1)+(dt*K)/2)\((eye(N+1)-(K*dt)/2)*U);&lt;br /&gt;
sol(j+1,:)= U'; % Guardamos solucion&lt;br /&gt;
end&lt;br /&gt;
%Dibujamos la solucion&lt;br /&gt;
[xx,tt]=meshgrid(x,t);&lt;br /&gt;
surf(xx,tt,sol);&lt;br /&gt;
}}&lt;br /&gt;
[[Archivo:nur.jpg|500px|thumb|centro|Gráfica concentración / espacio-tiempo. Resolución por el método del trapecio.]]&lt;br /&gt;
&lt;br /&gt;
==== Resolución por método de Euler explícito ====&lt;br /&gt;
{{matlab| codigo=&lt;br /&gt;
%Datos&lt;br /&gt;
L=5; %Longitud de varilla&lt;br /&gt;
T=5; %tiempo final&lt;br /&gt;
q=1;&lt;br /&gt;
%Discretización temporal y espacial&lt;br /&gt;
dx=0.1; % Paso en espacio&lt;br /&gt;
N=L/dx; %Número de subintervalos&lt;br /&gt;
x=0:dx:L; % Vector de espacio&lt;br /&gt;
dt=dx/20; % Paso en tiempo&lt;br /&gt;
t=0:dt:T; % Vector de tiempos&lt;br /&gt;
% Matriz de coeficientes. Aproximacion de -q*u_xx&lt;br /&gt;
K=2*diag(ones(1,N+1))-diag(ones(1,N),1)-diag(ones(1,N),-1);&lt;br /&gt;
K(1,2)=-2;&lt;br /&gt;
K(N+1,N)=-2;&lt;br /&gt;
K=q*K/dx^2;&lt;br /&gt;
% Calculamos u0 condición inicial&lt;br /&gt;
u0=[zeros(1,1+N*3/5),3*ones(1,N*2/5)]';&lt;br /&gt;
% F=0 (no la consideramos)&lt;br /&gt;
sol(1,:)=u0'; % Guardamos la solucion&lt;br /&gt;
U=u0; % Inicializacion&lt;br /&gt;
% Calculamos U_n -&amp;gt; U_n+1&lt;br /&gt;
%Aplicamos método Euler explícito&lt;br /&gt;
for j=1:length(t)-1 &lt;br /&gt;
k1=-K*U; % Calculamos k1=h*f(tn,yn)&lt;br /&gt;
k2=-K*(U+dt*k1); % Calculamos k2=h*f(tn+h/2,yn+1/2*k1)&lt;br /&gt;
% Meto los datos en el vector&lt;br /&gt;
U=U+(dt/2)*(k1+k2);&lt;br /&gt;
sol(j+1,:)= U'; % Guardamos solucion&lt;br /&gt;
end&lt;br /&gt;
%Dibujamos la solucion&lt;br /&gt;
[xx,tt]=meshgrid(x,t);&lt;br /&gt;
surf(xx,tt,sol);&lt;br /&gt;
}}&lt;br /&gt;
[[Archivo:mig.jpg|500px|thumb|centro|Gráfica concentración / espacio-tiempo. Resolución por el método de Euler explícito.]]&lt;br /&gt;
&lt;br /&gt;
==== Resolución por método de Euler implícito ====&lt;br /&gt;
{{matlab| codigo=&lt;br /&gt;
%Datos&lt;br /&gt;
L=5; %Longitud de varilla&lt;br /&gt;
T=5;&lt;br /&gt;
q=1;&lt;br /&gt;
%Discretización temporal y espacial&lt;br /&gt;
dx=0.1; % Paso en espacio&lt;br /&gt;
N=L/dx; %Número de subintervalos&lt;br /&gt;
h=L/N;&lt;br /&gt;
x=0:h:L; % Vector de espacio&lt;br /&gt;
dt=h/20; % Paso en tiempo&lt;br /&gt;
t=0:dt:T; % Vector de tiempos&lt;br /&gt;
% Matriz de coeficientes. Aproximacion de -q*u_xx&lt;br /&gt;
K=2*diag(ones(1,N+1))-diag(ones(1,N),1)-diag(ones(1,N),-1);&lt;br /&gt;
K(1,2)=-2;&lt;br /&gt;
K(N+1,N)=-2;&lt;br /&gt;
K=q*K/h^2;&lt;br /&gt;
% Calculamos u0 condición inicial&lt;br /&gt;
u0=[zeros(1,1+N*3/5),3*ones(1,N*2/5)]';&lt;br /&gt;
% F=0 (no la consideramos)&lt;br /&gt;
sol(1,:)=u0'; % Guardamos la solucion&lt;br /&gt;
U=u0; % Inicializacion&lt;br /&gt;
% Calculamos U_n -&amp;gt; U_n+1&lt;br /&gt;
% Aplicamos método implícito&lt;br /&gt;
for j=1:length(t)-1 &lt;br /&gt;
U=U-dt*K*U; &lt;br /&gt;
sol(j+1,:)= U'; % Guardamos solucion&lt;br /&gt;
end&lt;br /&gt;
%Dibujamos la solucion&lt;br /&gt;
[xx,tt]=meshgrid(x,t);&lt;br /&gt;
surf(xx,tt,sol);&lt;br /&gt;
}}&lt;br /&gt;
[[Archivo:migap.jpg|500px|thumb|centro|Gráfica concentración / espacio-tiempo. Resolución por el método de Euler implícito.]]&lt;br /&gt;
&lt;br /&gt;
==== Resolución por método de Euler modificado ====&lt;br /&gt;
{{matlab| codigo=&lt;br /&gt;
%Datos&lt;br /&gt;
L=5; %Longitud de varilla&lt;br /&gt;
T=5;&lt;br /&gt;
q=1;&lt;br /&gt;
%Discretización temporal y espacial&lt;br /&gt;
dx=0.1; % Paso en espacio&lt;br /&gt;
N=L/dx; %Número de subintervalos&lt;br /&gt;
h=L/N;&lt;br /&gt;
x=0:h:L; % Vector de espacio&lt;br /&gt;
dt=h/20; % Paso en tiempo&lt;br /&gt;
t=0:dt:T; % Vector de tiempos&lt;br /&gt;
% Matriz de coeficientes. Aproximacion de -q*u_xx&lt;br /&gt;
K=2*diag(ones(1,N+1))-diag(ones(1,N),1)-diag(ones(1,N),-1);&lt;br /&gt;
K(1,2)=-2;&lt;br /&gt;
K(N+1,N)=-2;&lt;br /&gt;
K=q*K/h^2;&lt;br /&gt;
% Calculamos u0 condición inicial&lt;br /&gt;
u0=[zeros(1,1+N*3/5),3*ones(1,N*2/5)]';&lt;br /&gt;
% F=0 (no la consideramos)&lt;br /&gt;
sol(1,:)=u0'; % Guardamos la solucion&lt;br /&gt;
U=u0; % Inicializacion&lt;br /&gt;
% Calculamos U_n -&amp;gt; U_n+1&lt;br /&gt;
for j=1:length(t)-1 &lt;br /&gt;
k1=-K*U; % Calculamos k1=h*f(tn,yn)&lt;br /&gt;
k2=-K*(U+dt*k1); % Calculamos k2=h*f(tn+h/2,yn+1/2*k1)&lt;br /&gt;
% Meto los datos en el vector&lt;br /&gt;
U=U+(dt/2)*(k1+k2);&lt;br /&gt;
sol(j+1,:)= U'; % Guardamos solucion&lt;br /&gt;
end&lt;br /&gt;
%Dibujamos la solucion&lt;br /&gt;
[xx,tt]=meshgrid(x,t);&lt;br /&gt;
surf(xx,tt,sol);&lt;br /&gt;
}}&lt;br /&gt;
[[Archivo: mig.jpg|500px|thumb|centro|Gráfica concentración / espacio-tiempo. Resolución por el método de Euler modificado.]]&lt;br /&gt;
&lt;br /&gt;
== Conservación de la masa total de contaminante ==&lt;br /&gt;
A continuación demostraremos que la masa total de contaminante en el tubo se conserva a lo largo del tiempo, que se puede deducir a partir de la ecuación sin tener que resolverla. Integramos la ecuación y debido a las condiciones de frontera:&lt;br /&gt;
&amp;lt;math&amp;gt;\frac d {dt} \int_0^5 u(x,t)\,dx= \int_0^5 u_{xx}(x,t)\,dx= u_x(x,t)|_0^5=0&amp;lt;/math&amp;gt;&lt;br /&gt;
{{matlab| codigo=&lt;br /&gt;
%Datos&lt;br /&gt;
L=5; %Longitud de varilla&lt;br /&gt;
T=5;&lt;br /&gt;
q=1;&lt;br /&gt;
%Discretización temporal y espacial&lt;br /&gt;
N=500; %Número de subintervalos&lt;br /&gt;
h=L/N;&lt;br /&gt;
x=0:h:L; % Vector de espacio&lt;br /&gt;
dt=h/4; % Paso en tiempo&lt;br /&gt;
t=0:dt:T; % Vector de tiempos&lt;br /&gt;
% Matriz de coeficientes. Aproximacion de -q*u_xx&lt;br /&gt;
K=2*diag(ones(1,N+1))-diag(ones(1,N),1)-diag(ones(1,N),-1);&lt;br /&gt;
K(1,2)=-2;&lt;br /&gt;
K(N+1,N)=-2;&lt;br /&gt;
K=q*K/h^2;&lt;br /&gt;
% Calculamos u0 condición inicial&lt;br /&gt;
u0=[zeros(1,1+N*3/5),3*ones(1,N*2/5)]';&lt;br /&gt;
% F=0 (no la consideramos)&lt;br /&gt;
sol(1,:)=u0'; % Guardamos la solucion&lt;br /&gt;
U=u0; % Inicializacion&lt;br /&gt;
% Calculamos U_n -&amp;gt; U_n+1&lt;br /&gt;
for j=1:length(t)-1 &lt;br /&gt;
U=(eye(N+1)+dt*K)\(U+dt*F); &lt;br /&gt;
sol(j+1,:)= U'; % Guardamos solucion&lt;br /&gt;
end&lt;br /&gt;
% Calculamos el area de la funcion en cada tiempo (area = cantidad de contaminante)&lt;br /&gt;
areas=zeros(1,length(t));&lt;br /&gt;
for i=1:length(t)&lt;br /&gt;
f=sol(i,:);&lt;br /&gt;
w=trapz(x,f);&lt;br /&gt;
area(i)=w;&lt;br /&gt;
end&lt;br /&gt;
%Dibujamos&lt;br /&gt;
plot(t,area)&lt;br /&gt;
xlabel('Tiempo')&lt;br /&gt;
ylabel('Cantidad de contaminante')&lt;br /&gt;
}}&lt;br /&gt;
[[Archivo:aleeex.jpg|500px|thumb|centro|Conservación masa total de contaminante]]&lt;br /&gt;
[[Archivo:gime.jpg|500px|thumb|centro|Conservación masa total de contaminante]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Concentración a lo largo del tiempo==&lt;br /&gt;
La concentración de la sustancia contaminante en la varilla varía con el tiempo, pero en un cierto momento esta concentración se va homogeneizando, y deja de variar, entrando en un estado estacionario::&lt;br /&gt;
&amp;lt;math&amp;gt; u_t(x,t)- D*u_{xx}(x,t)=0 &amp;lt;/math&amp;gt; :    &lt;br /&gt;
&amp;lt;math&amp;gt; u_t(x,t)=0 \rightarrow D*u_{xx}(x,t)=0 &amp;lt;/math&amp;gt; :&lt;br /&gt;
&amp;lt;math&amp;gt; u=c_1*x+c_2 &amp;lt;/math&amp;gt; &lt;br /&gt;
Utizando Matlab comprobaremos que &amp;lt;math&amp;gt; c_1=0 &amp;lt;/math&amp;gt; &amp;lt;math&amp;gt; c_2=1.17 &amp;lt;/math&amp;gt;&lt;br /&gt;
Para tiempos grandes la concentración se estabiliza en torno a 1.17 en toda la varilla, de forma que la solución se asemejará a una función lineal constante.&lt;br /&gt;
&lt;br /&gt;
{{matlab| codigo=&lt;br /&gt;
%Datos&lt;br /&gt;
L=5; %Longitud de varilla&lt;br /&gt;
T=50;&lt;br /&gt;
q=1;&lt;br /&gt;
%Discretización temporal y espacial&lt;br /&gt;
dx=0.1; % Paso en espacio&lt;br /&gt;
N=L/dx; %Número de subintervalos&lt;br /&gt;
h=L/N;&lt;br /&gt;
x=0:h:L; % Vector de espacio&lt;br /&gt;
dt=h/4; % Paso en tiempo&lt;br /&gt;
t=0:dt:T; % Vector de tiempos&lt;br /&gt;
% Matriz de coeficientes. Aproximacion de -q*u_xx&lt;br /&gt;
K=2*diag(ones(1,N+1))-diag(ones(1,N),1)-diag(ones(1,N),-1);&lt;br /&gt;
K(1,2)=-2;&lt;br /&gt;
K(N+1,N)=-2;&lt;br /&gt;
K=q*K/h^2;&lt;br /&gt;
% Calculamos u0 condición inicial&lt;br /&gt;
u0=[zeros(1,1+N*3/5),3*ones(1,N*2/5)]';&lt;br /&gt;
% F=0 (no la consideramos)&lt;br /&gt;
sol(1,:)=u0'; % Guardamos la solucion&lt;br /&gt;
U=u0; % Inicializacion&lt;br /&gt;
% Calculamos U_n -&amp;gt; U_n+1&lt;br /&gt;
%Aplicamos método trapecio método del trapecio&lt;br /&gt;
for j=1:length(t)-1&lt;br /&gt;
U=(eye(N+1)+(dt*K)/2)\((eye(N+1)-(K*dt)/2)*U);&lt;br /&gt;
sol(j+1,:)= U'; % Guardamos solucion&lt;br /&gt;
end&lt;br /&gt;
%Solución estacionaria&lt;br /&gt;
a=sol(length(t),:);&lt;br /&gt;
b=sol(1,:);&lt;br /&gt;
c=sol((length(t)-1)/50+1,:);&lt;br /&gt;
d=sol((length(t)-1)*2/50+1,:);&lt;br /&gt;
e=sol((length(t)-1)*10/50+1,:);&lt;br /&gt;
hold on&lt;br /&gt;
plot(x,a,'xk','linewidth',2);&lt;br /&gt;
plot(x,b,'-m','linewidth',1);&lt;br /&gt;
plot(x,c,'-g','linewidth',1);&lt;br /&gt;
plot(x,d,'-y','linewidth',1);&lt;br /&gt;
plot(x,e,'-b','linewidth',1);&lt;br /&gt;
legend('u(50s)','u(0s)','u(1s)','u(2s)','u(10s)');&lt;br /&gt;
xlabel('Posición en la varilla')&lt;br /&gt;
ylabel('Concentracion')&lt;br /&gt;
hold off&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Soluciones(t).jpg|500px|thumb|centro|Soluciones a lo largo del tiempo]]&lt;br /&gt;
&lt;br /&gt;
La distancia entre la solución estacionaria y las soluciones para los siguientes instantes: 0s, 1s, 2s y 10s; se puede apreciar en la imagen anterior. &lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
Una vez analizado los datos, se demuestra que la sustancia contaminante se estabiliza en t=9.98s, con un error del 5%.&lt;br /&gt;
&lt;br /&gt;
En el caso de que consideremos Δx'=Δx/10,el tiempo en el que se estabiliza la cantidad de sustancia contaminante será t=10s, dato que será más preciso debido a que el paso realizado en el programa es menor.&lt;br /&gt;
&lt;br /&gt;
==Nueva condición de frontera==&lt;br /&gt;
&lt;br /&gt;
Si colocamos un limpiador, que elimina la sustancia contaminante, en el extremo izquierdo de la varilla, varían las condiciones de contorno del problema. En este caso, en el extremo izquierdo, la condición inicial será de tipo Dirichlet ya que se esta variación esta provocada por un mecanismo físico externo que actúa sobre el extremo. &amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;math&amp;gt;\begin{cases}&lt;br /&gt;
u_t(x,t)- D u_{xx}(x,t)= 0 ; x\in (0,5) \\&lt;br /&gt;
u(x,0)=u_0 , x\in (0,5) \\&lt;br /&gt;
u(0,t)=0 , u_x(5,t)=0 ; t\geq 0&lt;br /&gt;
\end{cases}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Dadas las nuevas condiciones, resolvemos el problema por el método de diferencias finitas con la ayuda de Matlab.&lt;br /&gt;
&lt;br /&gt;
{{matlab| codigo=&lt;br /&gt;
%Datos&lt;br /&gt;
L=5; %Longitud de varilla&lt;br /&gt;
T=5; %tiempo final&lt;br /&gt;
q=1;&lt;br /&gt;
%Discretización temporal y espacial&lt;br /&gt;
dx=0.1; % Paso en espacio&lt;br /&gt;
N=L/dx; %Número de subintervalos&lt;br /&gt;
x=0:dx:L;% Vector de espacio&lt;br /&gt;
dt=dx/4; % Paso en tiempo&lt;br /&gt;
t=0:dt:T; % Vector de tiempos&lt;br /&gt;
xint=dx:dx:L; %Vector de espacio sin el extremo izquierdo&lt;br /&gt;
% Matriz de coeficientes. Aproximacion de -q*u_xx&lt;br /&gt;
K=2*diag(ones(1,N))-diag(ones(1,N-1),1)-diag(ones(1,N-1),-1);&lt;br /&gt;
K(N,N-1)=-2;&lt;br /&gt;
K=q*K/dx^2;&lt;br /&gt;
% Matriz F&lt;br /&gt;
F=zeros(N,1);&lt;br /&gt;
% Calculamos u0 condición inicial&lt;br /&gt;
u0=[zeros(1,N*3/5),3*ones(1,N*2/5)]';&lt;br /&gt;
sol(1,:)=[0,u0']; &lt;br /&gt;
U=u0; % Inicializacion&lt;br /&gt;
% Calculamos U_n -&amp;gt; U_n+1&lt;br /&gt;
%Aplicamos método trapecio método del trapecio&lt;br /&gt;
for j=1:length(t)-1&lt;br /&gt;
U=(eye(N)+(dt*K))\(dt*F+U);&lt;br /&gt;
sol(j+1,:)= [0,U'];&lt;br /&gt;
end&lt;br /&gt;
%Dibujamos la solucion&lt;br /&gt;
[xx,tt]=meshgrid(x,t);&lt;br /&gt;
surf(xx,tt,sol);&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Xata.JPG|500px|thumb|centro|Solución al variar las condiciones de contorno del probblema.]]&lt;/div&gt;</summary>
		<author><name>Karlo André</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Difusi%C3%B3n_de_una_sustancia_contaminante_(Grupo_10)&amp;diff=12773</id>
		<title>Difusión de una sustancia contaminante (Grupo 10)</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Difusi%C3%B3n_de_una_sustancia_contaminante_(Grupo_10)&amp;diff=12773"/>
				<updated>2014-05-19T14:19:22Z</updated>
		
		<summary type="html">&lt;p&gt;Karlo André: /* Nueva condición de frontera */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;''''''Texto en negrita''''''[[Archivo:nuriat.png|200px|thumb|right|Tubo con sustancia contaminante]]&lt;br /&gt;
La difusión implica un movimiento espontáneo y desordenado de moléculas individuales y, especialmente, nos interesa la difusión de moléculas de una sustancia disuelta en otra.&lt;br /&gt;
&lt;br /&gt;
La difusión de una sustancia puede considerarse análoga al flujo de calor, y la ley de Fick establece que el ritmo de difusión por unidad de superficie, en dirección perpendicular a ésta, es proporcional al gradiente de la concentración de esa sustancia en esa dirección. La concentración es la masa de la sustancia por unidad de volumen, y el gradiente de concentración es la variación de concentración por unidad de distancia.&lt;br /&gt;
&lt;br /&gt;
Para determinar como se distribuye la concentración de una sustancia contaminante tomaremos como ejemplo un tubo largo compuesto por dos sustancias de las cuáles una de ellas es contaminante.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
= Simplificación del problema =&lt;br /&gt;
&lt;br /&gt;
Para que este problema resulte más sencillo aplicaremos una serie de condiciones, facilitando el cálculo del mismo.&lt;br /&gt;
&lt;br /&gt;
En primer lugar denotaremos su concentración &amp;lt;math&amp;gt; u &amp;lt;/math&amp;gt;, concentración de contaminante en cada posición del tubo y constante en cada sección, medida en &amp;lt;math&amp;gt; \frac{mol}{m^2*s} &amp;lt;/math&amp;gt;. &lt;br /&gt;
&lt;br /&gt;
Supondremos que el tubo mide L=5 m, ocupando el intervalo &amp;lt;math&amp;gt; x \in (0,L) &amp;lt;/math&amp;gt;, y que la concentración es la misma en cualquier punto de la sección transversal del tubo. Por tanto, la concentración dependerá unicamente de dos variables &amp;lt;math&amp;gt; u = u(x,t) &amp;lt;/math&amp;gt;. En los extremos se ha colocado un aislante que hace que el flujo de contaminante al exterior del tubo sea nulo. Además, consideraremos la simplificación de que se trata de un tubo aislado por sus laterales, pero abierto por las bases del cilindro.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Ley de conservación de masa ==&lt;br /&gt;
&lt;br /&gt;
Tras una serie de experimentos realizados por Lavoisier, se pusieron de manifiesto que si tenemos en cuenta todas las sustancias que forman parte en una reacción química y todos los productos formados, nunca varía la masa. Esta ley exige que no haya una generación espontánea de materia. Es decir, en la región del espacio estudiada, no existe entrada o salida por un punto cualquiera (frontera o interior), la masa en esta región se mantiene constante. Esta es la ley de la conservación de la masa, que podemos enunciarla, pues, de la siguiente manera: &amp;lt;br /&amp;gt;&lt;br /&gt;
''&amp;quot;En toda reacción química la masa se conserva, esto es, la masa total de los reactivos es igual a la masa total de los productos&amp;quot;'' &amp;lt;br /&amp;gt;&lt;br /&gt;
La ley de conservación de masas exige que no haya una generación espontánea de materia. Es decir, en la región del espacio estudiada, no existe entrada o salida por un punto cualquiera (frontera o interior), la masa en esta región se mantiene constante.&lt;br /&gt;
&lt;br /&gt;
Esta suposición, en términos de variación de masa, puede quedar determinada como:&lt;br /&gt;
&lt;br /&gt;
''Variación de la masa en el tiempo = flujo de masa a través de la frontera por unidad de tiempo + flujo de masa generada en el interior por unidad de tiempo. ''&lt;br /&gt;
&lt;br /&gt;
== Ley de Fick ==&lt;br /&gt;
Se trata de una ley cuantitativa en forma diferencial que describe la difusión de materia o energía en un medio en el que inicialmente existe equilibrio químico o físico. Esta ley se trata de una generalización de los fenómenos descritos por la '''Ley de Fourier''', ya que esta es una consideración concreta del calor.&lt;br /&gt;
&lt;br /&gt;
La ley de Fick anuncia que en el caso de existir diferencias de concentración en cualquier especie, el paso de estas especies se llevará a cabo desde las regiones con mayor concentración a las de menor. Formulado matemáticamente:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;F(x,t)=-D\frac{\partial u}{\partial x}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Donde &amp;lt;math&amp;gt;F&amp;lt;/math&amp;gt; es el flujo de la sustancia y &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; el coeficiente de difusión, que representa la facilidad en que un soluto particular se mueve por un disolvente determinado.&lt;br /&gt;
&lt;br /&gt;
La ley de Fick establece que el flujo de difusión del contaminante es proporcional a la variación de concentración:&lt;br /&gt;
&amp;lt;math&amp;gt; F(x,t)=-D\frac{\partial u}{\partial x} &amp;lt;/math&amp;gt;&lt;br /&gt;
donde D es el coeficiente de difusión (medido en &amp;lt;math&amp;gt; \frac{m^2}{s} &amp;lt;/math&amp;gt;), que depende de las propiedades físicas de los compuestos, y que se supone constante D=1.&lt;br /&gt;
&lt;br /&gt;
= Modelización de la ecuación diferencial =&lt;br /&gt;
&lt;br /&gt;
Aplicando el principio de conservación de la masa y la ley de Fourier, definimos la variable &amp;lt;math&amp;gt; u(x,t)&amp;lt;/math&amp;gt; en unidades de sustancia por área, es decir, concentración por superficie del tubo.&lt;br /&gt;
&lt;br /&gt;
Consideramos &amp;lt;math&amp;gt; A &amp;lt;/math&amp;gt; como variable superficie, y tomamos un pequeño trozo, definido por &amp;lt;math&amp;gt;\Delta x&amp;lt;/math&amp;gt;. Entonces, para obtener la variación de la masa en el tiempo:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; A u(x,t) \Delta x &amp;lt;/math&amp;gt; &lt;br /&gt;
&lt;br /&gt;
Y derivando en el tiempo:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; A u_t(x,t) \Delta x &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
obtenemos el primer término de la igualdad anteriormente enunciada.&lt;br /&gt;
&lt;br /&gt;
En el segundo, consideramos nulo el flujo de masa en los puntos interiores por unidad de tiempo, pues suponemos la tubería perfecta y sin sumideros.&lt;br /&gt;
&lt;br /&gt;
Como la superﬁcie lateral del tubo está aislada, solamente habrá flujo de sustancia en la dirección del eje &amp;lt;math&amp;gt;x&amp;lt;/math&amp;gt;. Si &amp;lt;math&amp;gt;F(x,t)&amp;gt; 0&amp;lt;/math&amp;gt; pensamos que el ﬂujo va hacia la derecha, si &amp;lt;math&amp;gt;F(x,t)&amp;lt; 0&amp;lt;/math&amp;gt;, este va a hacia la izquierda. El ﬂujo de&lt;br /&gt;
calor en un intervalo &amp;lt;math&amp;gt;[x, x + ∆x ] &amp;lt;/math&amp;gt; viene dado dado por:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;F(x,t)A-F(x+\Delta x, t)A&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Con lo que queda &amp;lt;math&amp;gt;A u_t(x,t) \Delta x = F(x,t)A-F(x+\Delta x, t)A&amp;lt;/math&amp;gt;, y al dividir &amp;lt;math&amp;gt;A \Delta x&amp;lt;/math&amp;gt;, nos queda &amp;lt;math&amp;gt;u_t(x,t)= \frac {F(x,t)-F(x+\Delta x, t)}{\Delta x}&amp;lt;/math&amp;gt;. &amp;lt;br /&amp;gt;&lt;br /&gt;
Como &amp;lt;math&amp;gt;\Delta x \rightarrow 0 &amp;lt;/math&amp;gt;, &amp;lt;math&amp;gt;u_t(x,t)= -F_x(x,t)&amp;lt;/math&amp;gt;, y aplicando ley de Fick, &amp;lt;math&amp;gt;u_t(x,t)=-\frac{\partial }{\partial x}(-D u_x(x,t)) = D u_xx(x,t) &amp;lt;/math&amp;gt;.&amp;lt;br /&amp;gt;&lt;br /&gt;
Con lo que resulta una ecuación en derivadas parciales que determina la concentración de sustancia:&lt;br /&gt;
&amp;lt;math&amp;gt;u_t(x,t)- D u_xx(x,t)= 0 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Planteamiento del problema bien propuesto ==&lt;br /&gt;
&lt;br /&gt;
Suponemos que el flujo será nula al haber una tapa en los extremos del tubo, con lo que el problema bien propuesto quedaría::&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\begin{cases}&lt;br /&gt;
u_t(x,t)- D u_{xx}(x,t)= 0 ; x\in (0,5) \\&lt;br /&gt;
u(x,0)=u_0 , x\in (0,5) \\&lt;br /&gt;
u_x(0,t)=0 , u_x(5,t)=0 ; t\geq 0&lt;br /&gt;
\end{cases}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= Resolución numérica =&lt;br /&gt;
Para la resolución de ésta ecuación necesitaremos mínimo tres condiciones, dos de las cuales serán de contorno, y la otra será la condición inicial.Si suponemos &amp;lt;math&amp;gt;u_0(x,0)&amp;lt;/math&amp;gt;, entonces:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; u_0(x,0)=\begin{cases}&lt;br /&gt;
0,  si x\leq 3\\&lt;br /&gt;
3,  si x&amp;gt;3&lt;br /&gt;
\end{cases}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Resolución por el método de las diferencias finitas ==&lt;br /&gt;
En el primer caso particular que estudiaremos, trataremos de obtener una resolución numérica del problema anteriormente planteado, dónde tenemos las fronteras aisladas y las concentraciones iniciales conocidas:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\begin{cases}&lt;br /&gt;
u_t(x,t)- D u_{xx}(x,t)= 0; x\in (0,5), t\geq 0 \\&lt;br /&gt;
u_0(x,0), x\in (0,5) \\&lt;br /&gt;
u_x(0,t)=0, u_x(5,t)=0, t\geq 0&lt;br /&gt;
\end{cases}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
La resolución por el método de las diferencias finitas se basa en expresar el problema continuo a un sistema discreto de ecuaciones diferenciales de primer orden. Particularizando para nuestro caso con las condiciones dadas, el problema planteado sería:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\begin{cases}&lt;br /&gt;
u'_n(t)+\frac{-u_{n-1}(t)+2u_n(t)+u_{n+1}(t)}{h^2} \\&lt;br /&gt;
\frac{u_1(t)-u_-1(t)}{2h} \rightarrow u_1(t)=u_-1(t) \\&lt;br /&gt;
\frac{u_{N+1}(t)-u_{N-1}(t)}{2h} \rightarrow u_{N+1}(t)=u_{N-1}\\&lt;br /&gt;
u_n(0)=u^0(x)&lt;br /&gt;
\end{cases}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Por lo que tenemos un sistema de la forma:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\begin{cases}&lt;br /&gt;
U'(t)+KU(t)=F(t)=0\\&lt;br /&gt;
U(0)=U^0&lt;br /&gt;
\end{cases}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Con &amp;lt;math&amp;gt;N+1&amp;lt;/math&amp;gt; ecuaciones.&lt;br /&gt;
==== Resolución por método del trapecio ====&lt;br /&gt;
Suponiendo que en el instante inicial se verifica  :&amp;lt;math&amp;gt;&lt;br /&gt;
u(x,0)=\left\{\begin{matrix}\\0, x≤3\\3, x&amp;gt;3\end{matrix}\right.&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Si tomamos &amp;lt;math&amp;gt;\triangle t= \triangle x/4&amp;lt;/math&amp;gt; en &amp;lt;math&amp;gt;t\in\ [0,5]&amp;lt;/math&amp;gt;, con &amp;lt;math&amp;gt;\triangle x=0.1&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
El código en MATLAB del método sería:&lt;br /&gt;
&lt;br /&gt;
{{matlab| codigo=&lt;br /&gt;
%Datos&lt;br /&gt;
L=5; %Longitud de varilla&lt;br /&gt;
T=5; %tiempo final&lt;br /&gt;
q=1;&lt;br /&gt;
%Discretización temporal y espacial&lt;br /&gt;
dx=0.1; % Paso en espacio&lt;br /&gt;
N=L/dx; %Número de subintervalos&lt;br /&gt;
x=0:dx:L; % Vector de espacio&lt;br /&gt;
dt=dx/4; % Paso en tiempo&lt;br /&gt;
t=0:dt:T; % Vector de tiempos&lt;br /&gt;
% Matriz de coeficientes. Aproximacion de -q*u_xx&lt;br /&gt;
K=2*diag(ones(1,N+1))-diag(ones(1,N),1)-diag(ones(1,N),-1);&lt;br /&gt;
K(1,2)=-2;&lt;br /&gt;
K(N+1,N)=-2;&lt;br /&gt;
K=q*K/dx^2;&lt;br /&gt;
% Calculamos u0 condición inicial&lt;br /&gt;
u0=[zeros(1,1+N*3/5),3*ones(1,N*2/5)]';&lt;br /&gt;
% F=0 (no la consideramos)&lt;br /&gt;
sol(1,:)=u0'; % Guardamos la solucion&lt;br /&gt;
U=u0; % Inicializacion&lt;br /&gt;
% Calculamos U_n -&amp;gt; U_n+1&lt;br /&gt;
%Aplicamos método trapecio método del trapecio&lt;br /&gt;
for j=1:length(t)-1&lt;br /&gt;
U=(eye(N+1)+(dt*K)/2)\((eye(N+1)-(K*dt)/2)*U);&lt;br /&gt;
sol(j+1,:)= U'; % Guardamos solucion&lt;br /&gt;
end&lt;br /&gt;
%Dibujamos la solucion&lt;br /&gt;
[xx,tt]=meshgrid(x,t);&lt;br /&gt;
surf(xx,tt,sol);&lt;br /&gt;
}}&lt;br /&gt;
[[Archivo:nur.jpg|500px|thumb|centro|Gráfica concentración / espacio-tiempo. Resolución por el método del trapecio.]]&lt;br /&gt;
&lt;br /&gt;
==== Resolución por método de Euler explícito ====&lt;br /&gt;
{{matlab| codigo=&lt;br /&gt;
%Datos&lt;br /&gt;
L=5; %Longitud de varilla&lt;br /&gt;
T=5; %tiempo final&lt;br /&gt;
q=1;&lt;br /&gt;
%Discretización temporal y espacial&lt;br /&gt;
dx=0.1; % Paso en espacio&lt;br /&gt;
N=L/dx; %Número de subintervalos&lt;br /&gt;
x=0:dx:L; % Vector de espacio&lt;br /&gt;
dt=dx/20; % Paso en tiempo&lt;br /&gt;
t=0:dt:T; % Vector de tiempos&lt;br /&gt;
% Matriz de coeficientes. Aproximacion de -q*u_xx&lt;br /&gt;
K=2*diag(ones(1,N+1))-diag(ones(1,N),1)-diag(ones(1,N),-1);&lt;br /&gt;
K(1,2)=-2;&lt;br /&gt;
K(N+1,N)=-2;&lt;br /&gt;
K=q*K/dx^2;&lt;br /&gt;
% Calculamos u0 condición inicial&lt;br /&gt;
u0=[zeros(1,1+N*3/5),3*ones(1,N*2/5)]';&lt;br /&gt;
% F=0 (no la consideramos)&lt;br /&gt;
sol(1,:)=u0'; % Guardamos la solucion&lt;br /&gt;
U=u0; % Inicializacion&lt;br /&gt;
% Calculamos U_n -&amp;gt; U_n+1&lt;br /&gt;
%Aplicamos método Euler explícito&lt;br /&gt;
for j=1:length(t)-1 &lt;br /&gt;
k1=-K*U; % Calculamos k1=h*f(tn,yn)&lt;br /&gt;
k2=-K*(U+dt*k1); % Calculamos k2=h*f(tn+h/2,yn+1/2*k1)&lt;br /&gt;
% Meto los datos en el vector&lt;br /&gt;
U=U+(dt/2)*(k1+k2);&lt;br /&gt;
sol(j+1,:)= U'; % Guardamos solucion&lt;br /&gt;
end&lt;br /&gt;
%Dibujamos la solucion&lt;br /&gt;
[xx,tt]=meshgrid(x,t);&lt;br /&gt;
surf(xx,tt,sol);&lt;br /&gt;
}}&lt;br /&gt;
[[Archivo:mig.jpg|500px|thumb|centro|Gráfica concentración / espacio-tiempo. Resolución por el método de Euler explícito.]]&lt;br /&gt;
&lt;br /&gt;
==== Resolución por método de Euler implícito ====&lt;br /&gt;
{{matlab| codigo=&lt;br /&gt;
%Datos&lt;br /&gt;
L=5; %Longitud de varilla&lt;br /&gt;
T=5;&lt;br /&gt;
q=1;&lt;br /&gt;
%Discretización temporal y espacial&lt;br /&gt;
dx=0.1; % Paso en espacio&lt;br /&gt;
N=L/dx; %Número de subintervalos&lt;br /&gt;
h=L/N;&lt;br /&gt;
x=0:h:L; % Vector de espacio&lt;br /&gt;
dt=h/20; % Paso en tiempo&lt;br /&gt;
t=0:dt:T; % Vector de tiempos&lt;br /&gt;
% Matriz de coeficientes. Aproximacion de -q*u_xx&lt;br /&gt;
K=2*diag(ones(1,N+1))-diag(ones(1,N),1)-diag(ones(1,N),-1);&lt;br /&gt;
K(1,2)=-2;&lt;br /&gt;
K(N+1,N)=-2;&lt;br /&gt;
K=q*K/h^2;&lt;br /&gt;
% Calculamos u0 condición inicial&lt;br /&gt;
u0=[zeros(1,1+N*3/5),3*ones(1,N*2/5)]';&lt;br /&gt;
% F=0 (no la consideramos)&lt;br /&gt;
sol(1,:)=u0'; % Guardamos la solucion&lt;br /&gt;
U=u0; % Inicializacion&lt;br /&gt;
% Calculamos U_n -&amp;gt; U_n+1&lt;br /&gt;
% Aplicamos método implícito&lt;br /&gt;
for j=1:length(t)-1 &lt;br /&gt;
U=U-dt*K*U; &lt;br /&gt;
sol(j+1,:)= U'; % Guardamos solucion&lt;br /&gt;
end&lt;br /&gt;
%Dibujamos la solucion&lt;br /&gt;
[xx,tt]=meshgrid(x,t);&lt;br /&gt;
surf(xx,tt,sol);&lt;br /&gt;
}}&lt;br /&gt;
[[Archivo:migap.jpg|500px|thumb|centro|Gráfica concentración / espacio-tiempo. Resolución por el método de Euler implícito.]]&lt;br /&gt;
&lt;br /&gt;
==== Resolución por método de Euler modificado ====&lt;br /&gt;
{{matlab| codigo=&lt;br /&gt;
%Datos&lt;br /&gt;
L=5; %Longitud de varilla&lt;br /&gt;
T=5;&lt;br /&gt;
q=1;&lt;br /&gt;
%Discretización temporal y espacial&lt;br /&gt;
dx=0.1; % Paso en espacio&lt;br /&gt;
N=L/dx; %Número de subintervalos&lt;br /&gt;
h=L/N;&lt;br /&gt;
x=0:h:L; % Vector de espacio&lt;br /&gt;
dt=h/20; % Paso en tiempo&lt;br /&gt;
t=0:dt:T; % Vector de tiempos&lt;br /&gt;
% Matriz de coeficientes. Aproximacion de -q*u_xx&lt;br /&gt;
K=2*diag(ones(1,N+1))-diag(ones(1,N),1)-diag(ones(1,N),-1);&lt;br /&gt;
K(1,2)=-2;&lt;br /&gt;
K(N+1,N)=-2;&lt;br /&gt;
K=q*K/h^2;&lt;br /&gt;
% Calculamos u0 condición inicial&lt;br /&gt;
u0=[zeros(1,1+N*3/5),3*ones(1,N*2/5)]';&lt;br /&gt;
% F=0 (no la consideramos)&lt;br /&gt;
sol(1,:)=u0'; % Guardamos la solucion&lt;br /&gt;
U=u0; % Inicializacion&lt;br /&gt;
% Calculamos U_n -&amp;gt; U_n+1&lt;br /&gt;
for j=1:length(t)-1 &lt;br /&gt;
k1=-K*U; % Calculamos k1=h*f(tn,yn)&lt;br /&gt;
k2=-K*(U+dt*k1); % Calculamos k2=h*f(tn+h/2,yn+1/2*k1)&lt;br /&gt;
% Meto los datos en el vector&lt;br /&gt;
U=U+(dt/2)*(k1+k2);&lt;br /&gt;
sol(j+1,:)= U'; % Guardamos solucion&lt;br /&gt;
end&lt;br /&gt;
%Dibujamos la solucion&lt;br /&gt;
[xx,tt]=meshgrid(x,t);&lt;br /&gt;
surf(xx,tt,sol);&lt;br /&gt;
}}&lt;br /&gt;
[[Archivo: mig.jpg|500px|thumb|centro|Gráfica concentración / espacio-tiempo. Resolución por el método de Euler modificado.]]&lt;br /&gt;
&lt;br /&gt;
== Conservación de la masa total de contaminante ==&lt;br /&gt;
A continuación demostraremos que la masa total de contaminante en el tubo se conserva a lo largo del tiempo, que se puede deducir a partir de la ecuación sin tener que resolverla. Integramos la ecuación y debido a las condiciones de frontera:&lt;br /&gt;
&amp;lt;math&amp;gt;\frac d {dt} \int_0^5 u(x,t)\,dx= \int_0^5 u_{xx}(x,t)\,dx= u_x(x,t)|_0^5=0&amp;lt;/math&amp;gt;&lt;br /&gt;
{{matlab| codigo=&lt;br /&gt;
%Datos&lt;br /&gt;
L=5; %Longitud de varilla&lt;br /&gt;
T=5;&lt;br /&gt;
q=1;&lt;br /&gt;
%Discretización temporal y espacial&lt;br /&gt;
N=500; %Número de subintervalos&lt;br /&gt;
h=L/N;&lt;br /&gt;
x=0:h:L; % Vector de espacio&lt;br /&gt;
dt=h/4; % Paso en tiempo&lt;br /&gt;
t=0:dt:T; % Vector de tiempos&lt;br /&gt;
% Matriz de coeficientes. Aproximacion de -q*u_xx&lt;br /&gt;
K=2*diag(ones(1,N+1))-diag(ones(1,N),1)-diag(ones(1,N),-1);&lt;br /&gt;
K(1,2)=-2;&lt;br /&gt;
K(N+1,N)=-2;&lt;br /&gt;
K=q*K/h^2;&lt;br /&gt;
% Calculamos u0 condición inicial&lt;br /&gt;
u0=[zeros(1,1+N*3/5),3*ones(1,N*2/5)]';&lt;br /&gt;
% F=0 (no la consideramos)&lt;br /&gt;
sol(1,:)=u0'; % Guardamos la solucion&lt;br /&gt;
U=u0; % Inicializacion&lt;br /&gt;
% Calculamos U_n -&amp;gt; U_n+1&lt;br /&gt;
for j=1:length(t)-1 &lt;br /&gt;
U=(eye(N+1)+dt*K)\(U+dt*F); &lt;br /&gt;
sol(j+1,:)= U'; % Guardamos solucion&lt;br /&gt;
end&lt;br /&gt;
% Calculamos el area de la funcion en cada tiempo (area = cantidad de contaminante)&lt;br /&gt;
areas=zeros(1,length(t));&lt;br /&gt;
for i=1:length(t)&lt;br /&gt;
f=sol(i,:);&lt;br /&gt;
w=trapz(x,f);&lt;br /&gt;
area(i)=w;&lt;br /&gt;
end&lt;br /&gt;
%Dibujamos&lt;br /&gt;
plot(t,area)&lt;br /&gt;
xlabel('Tiempo')&lt;br /&gt;
ylabel('Cantidad de contaminante')&lt;br /&gt;
}}&lt;br /&gt;
[[Archivo:aleeex.jpg|500px|thumb|centro|Conservación masa total de contaminante]]&lt;br /&gt;
[[Archivo:gime.jpg|500px|thumb|centro|Conservación masa total de contaminante]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Concentración a lo largo del tiempo==&lt;br /&gt;
La concentración de la sustancia contaminante en la varilla varía con el tiempo, pero en un cierto momento esta concentración se va homogeneizando, y deja de variar, entrando en un estado estacionario::&lt;br /&gt;
&amp;lt;math&amp;gt; u_t(x,t)- D*u_{xx}(x,t)=0 &amp;lt;/math&amp;gt; :    &lt;br /&gt;
&amp;lt;math&amp;gt; u_t(x,t)=0 \rightarrow D*u_{xx}(x,t)=0 &amp;lt;/math&amp;gt; :&lt;br /&gt;
&amp;lt;math&amp;gt; u=c_1*x+c_2 &amp;lt;/math&amp;gt; &lt;br /&gt;
Utizando Matlab comprobaremos que &amp;lt;math&amp;gt; c_1=0 &amp;lt;/math&amp;gt; &amp;lt;math&amp;gt; c_2=1.17 &amp;lt;/math&amp;gt;&lt;br /&gt;
Para tiempos grandes la concentración se estabiliza en torno a 1.17 en toda la varilla, de forma que la solución se asemejará a una función lineal constante.&lt;br /&gt;
&lt;br /&gt;
{{matlab| codigo=&lt;br /&gt;
%Datos&lt;br /&gt;
L=5; %Longitud de varilla&lt;br /&gt;
T=50;&lt;br /&gt;
q=1;&lt;br /&gt;
%Discretización temporal y espacial&lt;br /&gt;
dx=0.1; % Paso en espacio&lt;br /&gt;
N=L/dx; %Número de subintervalos&lt;br /&gt;
h=L/N;&lt;br /&gt;
x=0:h:L; % Vector de espacio&lt;br /&gt;
dt=h/4; % Paso en tiempo&lt;br /&gt;
t=0:dt:T; % Vector de tiempos&lt;br /&gt;
% Matriz de coeficientes. Aproximacion de -q*u_xx&lt;br /&gt;
K=2*diag(ones(1,N+1))-diag(ones(1,N),1)-diag(ones(1,N),-1);&lt;br /&gt;
K(1,2)=-2;&lt;br /&gt;
K(N+1,N)=-2;&lt;br /&gt;
K=q*K/h^2;&lt;br /&gt;
% Calculamos u0 condición inicial&lt;br /&gt;
u0=[zeros(1,1+N*3/5),3*ones(1,N*2/5)]';&lt;br /&gt;
% F=0 (no la consideramos)&lt;br /&gt;
sol(1,:)=u0'; % Guardamos la solucion&lt;br /&gt;
U=u0; % Inicializacion&lt;br /&gt;
% Calculamos U_n -&amp;gt; U_n+1&lt;br /&gt;
%Aplicamos método trapecio método del trapecio&lt;br /&gt;
for j=1:length(t)-1&lt;br /&gt;
U=(eye(N+1)+(dt*K)/2)\((eye(N+1)-(K*dt)/2)*U);&lt;br /&gt;
sol(j+1,:)= U'; % Guardamos solucion&lt;br /&gt;
end&lt;br /&gt;
%Solución estacionaria&lt;br /&gt;
a=sol(length(t),:);&lt;br /&gt;
b=sol(1,:);&lt;br /&gt;
c=sol((length(t)-1)/50+1,:);&lt;br /&gt;
d=sol((length(t)-1)*2/50+1,:);&lt;br /&gt;
e=sol((length(t)-1)*10/50+1,:);&lt;br /&gt;
hold on&lt;br /&gt;
plot(x,a,'xk','linewidth',2);&lt;br /&gt;
plot(x,b,'-m','linewidth',1);&lt;br /&gt;
plot(x,c,'-g','linewidth',1);&lt;br /&gt;
plot(x,d,'-y','linewidth',1);&lt;br /&gt;
plot(x,e,'-b','linewidth',1);&lt;br /&gt;
legend('u(50s)','u(0s)','u(1s)','u(2s)','u(10s)');&lt;br /&gt;
xlabel('Posición en la varilla')&lt;br /&gt;
ylabel('Concentracion')&lt;br /&gt;
hold off&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Soluciones(t).jpg|500px|thumb|centro|Soluciones a lo largo del tiempo]]&lt;br /&gt;
&lt;br /&gt;
La distancia entre la solución estacionaria y las soluciones para los siguientes instantes: 0s, 1s, 2s y 10s; se puede apreciar en la imagen anterior. &lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
Una vez analizado los datos, se demuestra que la sustancia contaminante se estabiliza en t=9.98s, con un error del 5%.&lt;br /&gt;
&lt;br /&gt;
En el caso de que consideremos Δx'=Δx/10,el tiempo en el que se estabiliza la cantidad de sustancia contaminante será t=10s, dato que será más preciso debido a que el paso realizado en el programa es menor.&lt;br /&gt;
&lt;br /&gt;
==Nueva condición de frontera==&lt;br /&gt;
&lt;br /&gt;
Si colocamos un limpiador, que elimina la sustancia contaminante, en el extremo izquierdo de la varilla, varían las condiciones de contorno del problema. En este caso, en el extremo izquierdo, la condición inicial será de tipo Dirichlet ya que se esta variación esta provocada por un mecanismo físico externo que actúa sobre el extremo. &amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;math&amp;gt;\begin{cases}&lt;br /&gt;
u_t(x,t)- D u_{xx}(x,t)= 0 ; x\in (0,5) \\&lt;br /&gt;
u(x,0)=u_0 , x\in (0,5) \\&lt;br /&gt;
u(0,t)=0 , u_x(5,t)=0 ; t\geq 0&lt;br /&gt;
\end{cases}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Dadas las nuevas condiciones, resolvemos el problema por el método de diferencias finitas con la ayuda de Matlab.&lt;br /&gt;
&lt;br /&gt;
{{matlab| codigo=&lt;br /&gt;
%Datos&lt;br /&gt;
L=5; %Longitud de varilla&lt;br /&gt;
T=5; %tiempo final&lt;br /&gt;
q=1;&lt;br /&gt;
%Discretización temporal y espacial&lt;br /&gt;
dx=0.1; % Paso en espacio&lt;br /&gt;
N=L/dx; %Número de subintervalos&lt;br /&gt;
x=0:dx:L;% Vector de espacio&lt;br /&gt;
dt=dx/4; % Paso en tiempo&lt;br /&gt;
t=0:dt:T; % Vector de tiempos&lt;br /&gt;
xint=dx:dx:L; %Vector de espacio sin el extremo izquierdo&lt;br /&gt;
% Matriz de coeficientes. Aproximacion de -q*u_xx&lt;br /&gt;
K=2*diag(ones(1,N))-diag(ones(1,N-1),1)-diag(ones(1,N-1),-1);&lt;br /&gt;
K(N,N-1)=-2;&lt;br /&gt;
K=q*K/dx^2;&lt;br /&gt;
% Matriz F&lt;br /&gt;
F=zeros(N,1);&lt;br /&gt;
% Calculamos u0 condición inicial&lt;br /&gt;
u0=[zeros(1,N*3/5),3*ones(1,N*2/5)]';&lt;br /&gt;
sol(1,:)=[0,u0']; &lt;br /&gt;
U=u0; % Inicializacion&lt;br /&gt;
% Calculamos U_n -&amp;gt; U_n+1&lt;br /&gt;
%Aplicamos método trapecio método del trapecio&lt;br /&gt;
for j=1:length(t)-1&lt;br /&gt;
U=(eye(N)+(dt*K))\(dt*F+U);&lt;br /&gt;
sol(j+1,:)= [0,U'];&lt;br /&gt;
end&lt;br /&gt;
%Dibujamos la solucion&lt;br /&gt;
[xx,tt]=meshgrid(x,t);&lt;br /&gt;
surf(xx,tt,sol);&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:xata.jpg|500px|thumb|centro|Solución al variar las condiciones de contorno del probblema.]]&lt;/div&gt;</summary>
		<author><name>Karlo André</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Difusi%C3%B3n_de_una_sustancia_contaminante_(Grupo_10)&amp;diff=12769</id>
		<title>Difusión de una sustancia contaminante (Grupo 10)</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Difusi%C3%B3n_de_una_sustancia_contaminante_(Grupo_10)&amp;diff=12769"/>
				<updated>2014-05-19T14:16:03Z</updated>
		
		<summary type="html">&lt;p&gt;Karlo André: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;''''''Texto en negrita''''''[[Archivo:nuriat.png|200px|thumb|right|Tubo con sustancia contaminante]]&lt;br /&gt;
La difusión implica un movimiento espontáneo y desordenado de moléculas individuales y, especialmente, nos interesa la difusión de moléculas de una sustancia disuelta en otra.&lt;br /&gt;
&lt;br /&gt;
La difusión de una sustancia puede considerarse análoga al flujo de calor, y la ley de Fick establece que el ritmo de difusión por unidad de superficie, en dirección perpendicular a ésta, es proporcional al gradiente de la concentración de esa sustancia en esa dirección. La concentración es la masa de la sustancia por unidad de volumen, y el gradiente de concentración es la variación de concentración por unidad de distancia.&lt;br /&gt;
&lt;br /&gt;
Para determinar como se distribuye la concentración de una sustancia contaminante tomaremos como ejemplo un tubo largo compuesto por dos sustancias de las cuáles una de ellas es contaminante.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
= Simplificación del problema =&lt;br /&gt;
&lt;br /&gt;
Para que este problema resulte más sencillo aplicaremos una serie de condiciones, facilitando el cálculo del mismo.&lt;br /&gt;
&lt;br /&gt;
En primer lugar denotaremos su concentración &amp;lt;math&amp;gt; u &amp;lt;/math&amp;gt;, concentración de contaminante en cada posición del tubo y constante en cada sección, medida en &amp;lt;math&amp;gt; \frac{mol}{m^2*s} &amp;lt;/math&amp;gt;. &lt;br /&gt;
&lt;br /&gt;
Supondremos que el tubo mide L=5 m, ocupando el intervalo &amp;lt;math&amp;gt; x \in (0,L) &amp;lt;/math&amp;gt;, y que la concentración es la misma en cualquier punto de la sección transversal del tubo. Por tanto, la concentración dependerá unicamente de dos variables &amp;lt;math&amp;gt; u = u(x,t) &amp;lt;/math&amp;gt;. En los extremos se ha colocado un aislante que hace que el flujo de contaminante al exterior del tubo sea nulo. Además, consideraremos la simplificación de que se trata de un tubo aislado por sus laterales, pero abierto por las bases del cilindro.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Ley de conservación de masa ==&lt;br /&gt;
&lt;br /&gt;
Tras una serie de experimentos realizados por Lavoisier, se pusieron de manifiesto que si tenemos en cuenta todas las sustancias que forman parte en una reacción química y todos los productos formados, nunca varía la masa. Esta ley exige que no haya una generación espontánea de materia. Es decir, en la región del espacio estudiada, no existe entrada o salida por un punto cualquiera (frontera o interior), la masa en esta región se mantiene constante. Esta es la ley de la conservación de la masa, que podemos enunciarla, pues, de la siguiente manera: &amp;lt;br /&amp;gt;&lt;br /&gt;
''&amp;quot;En toda reacción química la masa se conserva, esto es, la masa total de los reactivos es igual a la masa total de los productos&amp;quot;'' &amp;lt;br /&amp;gt;&lt;br /&gt;
La ley de conservación de masas exige que no haya una generación espontánea de materia. Es decir, en la región del espacio estudiada, no existe entrada o salida por un punto cualquiera (frontera o interior), la masa en esta región se mantiene constante.&lt;br /&gt;
&lt;br /&gt;
Esta suposición, en términos de variación de masa, puede quedar determinada como:&lt;br /&gt;
&lt;br /&gt;
''Variación de la masa en el tiempo = flujo de masa a través de la frontera por unidad de tiempo + flujo de masa generada en el interior por unidad de tiempo. ''&lt;br /&gt;
&lt;br /&gt;
== Ley de Fick ==&lt;br /&gt;
Se trata de una ley cuantitativa en forma diferencial que describe la difusión de materia o energía en un medio en el que inicialmente existe equilibrio químico o físico. Esta ley se trata de una generalización de los fenómenos descritos por la '''Ley de Fourier''', ya que esta es una consideración concreta del calor.&lt;br /&gt;
&lt;br /&gt;
La ley de Fick anuncia que en el caso de existir diferencias de concentración en cualquier especie, el paso de estas especies se llevará a cabo desde las regiones con mayor concentración a las de menor. Formulado matemáticamente:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;F(x,t)=-D\frac{\partial u}{\partial x}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Donde &amp;lt;math&amp;gt;F&amp;lt;/math&amp;gt; es el flujo de la sustancia y &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; el coeficiente de difusión, que representa la facilidad en que un soluto particular se mueve por un disolvente determinado.&lt;br /&gt;
&lt;br /&gt;
La ley de Fick establece que el flujo de difusión del contaminante es proporcional a la variación de concentración:&lt;br /&gt;
&amp;lt;math&amp;gt; F(x,t)=-D\frac{\partial u}{\partial x} &amp;lt;/math&amp;gt;&lt;br /&gt;
donde D es el coeficiente de difusión (medido en &amp;lt;math&amp;gt; \frac{m^2}{s} &amp;lt;/math&amp;gt;), que depende de las propiedades físicas de los compuestos, y que se supone constante D=1.&lt;br /&gt;
&lt;br /&gt;
= Modelización de la ecuación diferencial =&lt;br /&gt;
&lt;br /&gt;
Aplicando el principio de conservación de la masa y la ley de Fourier, definimos la variable &amp;lt;math&amp;gt; u(x,t)&amp;lt;/math&amp;gt; en unidades de sustancia por área, es decir, concentración por superficie del tubo.&lt;br /&gt;
&lt;br /&gt;
Consideramos &amp;lt;math&amp;gt; A &amp;lt;/math&amp;gt; como variable superficie, y tomamos un pequeño trozo, definido por &amp;lt;math&amp;gt;\Delta x&amp;lt;/math&amp;gt;. Entonces, para obtener la variación de la masa en el tiempo:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; A u(x,t) \Delta x &amp;lt;/math&amp;gt; &lt;br /&gt;
&lt;br /&gt;
Y derivando en el tiempo:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; A u_t(x,t) \Delta x &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
obtenemos el primer término de la igualdad anteriormente enunciada.&lt;br /&gt;
&lt;br /&gt;
En el segundo, consideramos nulo el flujo de masa en los puntos interiores por unidad de tiempo, pues suponemos la tubería perfecta y sin sumideros.&lt;br /&gt;
&lt;br /&gt;
Como la superﬁcie lateral del tubo está aislada, solamente habrá flujo de sustancia en la dirección del eje &amp;lt;math&amp;gt;x&amp;lt;/math&amp;gt;. Si &amp;lt;math&amp;gt;F(x,t)&amp;gt; 0&amp;lt;/math&amp;gt; pensamos que el ﬂujo va hacia la derecha, si &amp;lt;math&amp;gt;F(x,t)&amp;lt; 0&amp;lt;/math&amp;gt;, este va a hacia la izquierda. El ﬂujo de&lt;br /&gt;
calor en un intervalo &amp;lt;math&amp;gt;[x, x + ∆x ] &amp;lt;/math&amp;gt; viene dado dado por:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;F(x,t)A-F(x+\Delta x, t)A&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Con lo que queda &amp;lt;math&amp;gt;A u_t(x,t) \Delta x = F(x,t)A-F(x+\Delta x, t)A&amp;lt;/math&amp;gt;, y al dividir &amp;lt;math&amp;gt;A \Delta x&amp;lt;/math&amp;gt;, nos queda &amp;lt;math&amp;gt;u_t(x,t)= \frac {F(x,t)-F(x+\Delta x, t)}{\Delta x}&amp;lt;/math&amp;gt;. &amp;lt;br /&amp;gt;&lt;br /&gt;
Como &amp;lt;math&amp;gt;\Delta x \rightarrow 0 &amp;lt;/math&amp;gt;, &amp;lt;math&amp;gt;u_t(x,t)= -F_x(x,t)&amp;lt;/math&amp;gt;, y aplicando ley de Fick, &amp;lt;math&amp;gt;u_t(x,t)=-\frac{\partial }{\partial x}(-D u_x(x,t)) = D u_xx(x,t) &amp;lt;/math&amp;gt;.&amp;lt;br /&amp;gt;&lt;br /&gt;
Con lo que resulta una ecuación en derivadas parciales que determina la concentración de sustancia:&lt;br /&gt;
&amp;lt;math&amp;gt;u_t(x,t)- D u_xx(x,t)= 0 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Planteamiento del problema bien propuesto ==&lt;br /&gt;
&lt;br /&gt;
Suponemos que el flujo será nula al haber una tapa en los extremos del tubo, con lo que el problema bien propuesto quedaría::&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\begin{cases}&lt;br /&gt;
u_t(x,t)- D u_{xx}(x,t)= 0 ; x\in (0,5) \\&lt;br /&gt;
u(x,0)=u_0 , x\in (0,5) \\&lt;br /&gt;
u_x(0,t)=0 , u_x(5,t)=0 ; t\geq 0&lt;br /&gt;
\end{cases}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= Resolución numérica =&lt;br /&gt;
Para la resolución de ésta ecuación necesitaremos mínimo tres condiciones, dos de las cuales serán de contorno, y la otra será la condición inicial.Si suponemos &amp;lt;math&amp;gt;u_0(x,0)&amp;lt;/math&amp;gt;, entonces:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; u_0(x,0)=\begin{cases}&lt;br /&gt;
0,  si x\leq 3\\&lt;br /&gt;
3,  si x&amp;gt;3&lt;br /&gt;
\end{cases}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Resolución por el método de las diferencias finitas ==&lt;br /&gt;
En el primer caso particular que estudiaremos, trataremos de obtener una resolución numérica del problema anteriormente planteado, dónde tenemos las fronteras aisladas y las concentraciones iniciales conocidas:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\begin{cases}&lt;br /&gt;
u_t(x,t)- D u_{xx}(x,t)= 0; x\in (0,5), t\geq 0 \\&lt;br /&gt;
u_0(x,0), x\in (0,5) \\&lt;br /&gt;
u_x(0,t)=0, u_x(5,t)=0, t\geq 0&lt;br /&gt;
\end{cases}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
La resolución por el método de las diferencias finitas se basa en expresar el problema continuo a un sistema discreto de ecuaciones diferenciales de primer orden. Particularizando para nuestro caso con las condiciones dadas, el problema planteado sería:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\begin{cases}&lt;br /&gt;
u'_n(t)+\frac{-u_{n-1}(t)+2u_n(t)+u_{n+1}(t)}{h^2} \\&lt;br /&gt;
\frac{u_1(t)-u_-1(t)}{2h} \rightarrow u_1(t)=u_-1(t) \\&lt;br /&gt;
\frac{u_{N+1}(t)-u_{N-1}(t)}{2h} \rightarrow u_{N+1}(t)=u_{N-1}\\&lt;br /&gt;
u_n(0)=u^0(x)&lt;br /&gt;
\end{cases}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Por lo que tenemos un sistema de la forma:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\begin{cases}&lt;br /&gt;
U'(t)+KU(t)=F(t)=0\\&lt;br /&gt;
U(0)=U^0&lt;br /&gt;
\end{cases}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Con &amp;lt;math&amp;gt;N+1&amp;lt;/math&amp;gt; ecuaciones.&lt;br /&gt;
==== Resolución por método del trapecio ====&lt;br /&gt;
Suponiendo que en el instante inicial se verifica  :&amp;lt;math&amp;gt;&lt;br /&gt;
u(x,0)=\left\{\begin{matrix}\\0, x≤3\\3, x&amp;gt;3\end{matrix}\right.&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Si tomamos &amp;lt;math&amp;gt;\triangle t= \triangle x/4&amp;lt;/math&amp;gt; en &amp;lt;math&amp;gt;t\in\ [0,5]&amp;lt;/math&amp;gt;, con &amp;lt;math&amp;gt;\triangle x=0.1&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
El código en MATLAB del método sería:&lt;br /&gt;
&lt;br /&gt;
{{matlab| codigo=&lt;br /&gt;
%Datos&lt;br /&gt;
L=5; %Longitud de varilla&lt;br /&gt;
T=5; %tiempo final&lt;br /&gt;
q=1;&lt;br /&gt;
%Discretización temporal y espacial&lt;br /&gt;
dx=0.1; % Paso en espacio&lt;br /&gt;
N=L/dx; %Número de subintervalos&lt;br /&gt;
x=0:dx:L; % Vector de espacio&lt;br /&gt;
dt=dx/4; % Paso en tiempo&lt;br /&gt;
t=0:dt:T; % Vector de tiempos&lt;br /&gt;
% Matriz de coeficientes. Aproximacion de -q*u_xx&lt;br /&gt;
K=2*diag(ones(1,N+1))-diag(ones(1,N),1)-diag(ones(1,N),-1);&lt;br /&gt;
K(1,2)=-2;&lt;br /&gt;
K(N+1,N)=-2;&lt;br /&gt;
K=q*K/dx^2;&lt;br /&gt;
% Calculamos u0 condición inicial&lt;br /&gt;
u0=[zeros(1,1+N*3/5),3*ones(1,N*2/5)]';&lt;br /&gt;
% F=0 (no la consideramos)&lt;br /&gt;
sol(1,:)=u0'; % Guardamos la solucion&lt;br /&gt;
U=u0; % Inicializacion&lt;br /&gt;
% Calculamos U_n -&amp;gt; U_n+1&lt;br /&gt;
%Aplicamos método trapecio método del trapecio&lt;br /&gt;
for j=1:length(t)-1&lt;br /&gt;
U=(eye(N+1)+(dt*K)/2)\((eye(N+1)-(K*dt)/2)*U);&lt;br /&gt;
sol(j+1,:)= U'; % Guardamos solucion&lt;br /&gt;
end&lt;br /&gt;
%Dibujamos la solucion&lt;br /&gt;
[xx,tt]=meshgrid(x,t);&lt;br /&gt;
surf(xx,tt,sol);&lt;br /&gt;
}}&lt;br /&gt;
[[Archivo:nur.jpg|500px|thumb|centro|Gráfica concentración / espacio-tiempo. Resolución por el método del trapecio.]]&lt;br /&gt;
&lt;br /&gt;
==== Resolución por método de Euler explícito ====&lt;br /&gt;
{{matlab| codigo=&lt;br /&gt;
%Datos&lt;br /&gt;
L=5; %Longitud de varilla&lt;br /&gt;
T=5; %tiempo final&lt;br /&gt;
q=1;&lt;br /&gt;
%Discretización temporal y espacial&lt;br /&gt;
dx=0.1; % Paso en espacio&lt;br /&gt;
N=L/dx; %Número de subintervalos&lt;br /&gt;
x=0:dx:L; % Vector de espacio&lt;br /&gt;
dt=dx/20; % Paso en tiempo&lt;br /&gt;
t=0:dt:T; % Vector de tiempos&lt;br /&gt;
% Matriz de coeficientes. Aproximacion de -q*u_xx&lt;br /&gt;
K=2*diag(ones(1,N+1))-diag(ones(1,N),1)-diag(ones(1,N),-1);&lt;br /&gt;
K(1,2)=-2;&lt;br /&gt;
K(N+1,N)=-2;&lt;br /&gt;
K=q*K/dx^2;&lt;br /&gt;
% Calculamos u0 condición inicial&lt;br /&gt;
u0=[zeros(1,1+N*3/5),3*ones(1,N*2/5)]';&lt;br /&gt;
% F=0 (no la consideramos)&lt;br /&gt;
sol(1,:)=u0'; % Guardamos la solucion&lt;br /&gt;
U=u0; % Inicializacion&lt;br /&gt;
% Calculamos U_n -&amp;gt; U_n+1&lt;br /&gt;
%Aplicamos método Euler explícito&lt;br /&gt;
for j=1:length(t)-1 &lt;br /&gt;
k1=-K*U; % Calculamos k1=h*f(tn,yn)&lt;br /&gt;
k2=-K*(U+dt*k1); % Calculamos k2=h*f(tn+h/2,yn+1/2*k1)&lt;br /&gt;
% Meto los datos en el vector&lt;br /&gt;
U=U+(dt/2)*(k1+k2);&lt;br /&gt;
sol(j+1,:)= U'; % Guardamos solucion&lt;br /&gt;
end&lt;br /&gt;
%Dibujamos la solucion&lt;br /&gt;
[xx,tt]=meshgrid(x,t);&lt;br /&gt;
surf(xx,tt,sol);&lt;br /&gt;
}}&lt;br /&gt;
[[Archivo:mig.jpg|500px|thumb|centro|Gráfica concentración / espacio-tiempo. Resolución por el método de Euler explícito.]]&lt;br /&gt;
&lt;br /&gt;
==== Resolución por método de Euler implícito ====&lt;br /&gt;
{{matlab| codigo=&lt;br /&gt;
%Datos&lt;br /&gt;
L=5; %Longitud de varilla&lt;br /&gt;
T=5;&lt;br /&gt;
q=1;&lt;br /&gt;
%Discretización temporal y espacial&lt;br /&gt;
dx=0.1; % Paso en espacio&lt;br /&gt;
N=L/dx; %Número de subintervalos&lt;br /&gt;
h=L/N;&lt;br /&gt;
x=0:h:L; % Vector de espacio&lt;br /&gt;
dt=h/20; % Paso en tiempo&lt;br /&gt;
t=0:dt:T; % Vector de tiempos&lt;br /&gt;
% Matriz de coeficientes. Aproximacion de -q*u_xx&lt;br /&gt;
K=2*diag(ones(1,N+1))-diag(ones(1,N),1)-diag(ones(1,N),-1);&lt;br /&gt;
K(1,2)=-2;&lt;br /&gt;
K(N+1,N)=-2;&lt;br /&gt;
K=q*K/h^2;&lt;br /&gt;
% Calculamos u0 condición inicial&lt;br /&gt;
u0=[zeros(1,1+N*3/5),3*ones(1,N*2/5)]';&lt;br /&gt;
% F=0 (no la consideramos)&lt;br /&gt;
sol(1,:)=u0'; % Guardamos la solucion&lt;br /&gt;
U=u0; % Inicializacion&lt;br /&gt;
% Calculamos U_n -&amp;gt; U_n+1&lt;br /&gt;
% Aplicamos método implícito&lt;br /&gt;
for j=1:length(t)-1 &lt;br /&gt;
U=U-dt*K*U; &lt;br /&gt;
sol(j+1,:)= U'; % Guardamos solucion&lt;br /&gt;
end&lt;br /&gt;
%Dibujamos la solucion&lt;br /&gt;
[xx,tt]=meshgrid(x,t);&lt;br /&gt;
surf(xx,tt,sol);&lt;br /&gt;
}}&lt;br /&gt;
[[Archivo:migap.jpg|500px|thumb|centro|Gráfica concentración / espacio-tiempo. Resolución por el método de Euler implícito.]]&lt;br /&gt;
&lt;br /&gt;
==== Resolución por método de Euler modificado ====&lt;br /&gt;
{{matlab| codigo=&lt;br /&gt;
%Datos&lt;br /&gt;
L=5; %Longitud de varilla&lt;br /&gt;
T=5;&lt;br /&gt;
q=1;&lt;br /&gt;
%Discretización temporal y espacial&lt;br /&gt;
dx=0.1; % Paso en espacio&lt;br /&gt;
N=L/dx; %Número de subintervalos&lt;br /&gt;
h=L/N;&lt;br /&gt;
x=0:h:L; % Vector de espacio&lt;br /&gt;
dt=h/20; % Paso en tiempo&lt;br /&gt;
t=0:dt:T; % Vector de tiempos&lt;br /&gt;
% Matriz de coeficientes. Aproximacion de -q*u_xx&lt;br /&gt;
K=2*diag(ones(1,N+1))-diag(ones(1,N),1)-diag(ones(1,N),-1);&lt;br /&gt;
K(1,2)=-2;&lt;br /&gt;
K(N+1,N)=-2;&lt;br /&gt;
K=q*K/h^2;&lt;br /&gt;
% Calculamos u0 condición inicial&lt;br /&gt;
u0=[zeros(1,1+N*3/5),3*ones(1,N*2/5)]';&lt;br /&gt;
% F=0 (no la consideramos)&lt;br /&gt;
sol(1,:)=u0'; % Guardamos la solucion&lt;br /&gt;
U=u0; % Inicializacion&lt;br /&gt;
% Calculamos U_n -&amp;gt; U_n+1&lt;br /&gt;
for j=1:length(t)-1 &lt;br /&gt;
k1=-K*U; % Calculamos k1=h*f(tn,yn)&lt;br /&gt;
k2=-K*(U+dt*k1); % Calculamos k2=h*f(tn+h/2,yn+1/2*k1)&lt;br /&gt;
% Meto los datos en el vector&lt;br /&gt;
U=U+(dt/2)*(k1+k2);&lt;br /&gt;
sol(j+1,:)= U'; % Guardamos solucion&lt;br /&gt;
end&lt;br /&gt;
%Dibujamos la solucion&lt;br /&gt;
[xx,tt]=meshgrid(x,t);&lt;br /&gt;
surf(xx,tt,sol);&lt;br /&gt;
}}&lt;br /&gt;
[[Archivo: mig.jpg|500px|thumb|centro|Gráfica concentración / espacio-tiempo. Resolución por el método de Euler modificado.]]&lt;br /&gt;
&lt;br /&gt;
== Conservación de la masa total de contaminante ==&lt;br /&gt;
A continuación demostraremos que la masa total de contaminante en el tubo se conserva a lo largo del tiempo, que se puede deducir a partir de la ecuación sin tener que resolverla. Integramos la ecuación y debido a las condiciones de frontera:&lt;br /&gt;
&amp;lt;math&amp;gt;\frac d {dt} \int_0^5 u(x,t)\,dx= \int_0^5 u_{xx}(x,t)\,dx= u_x(x,t)|_0^5=0&amp;lt;/math&amp;gt;&lt;br /&gt;
{{matlab| codigo=&lt;br /&gt;
%Datos&lt;br /&gt;
L=5; %Longitud de varilla&lt;br /&gt;
T=5;&lt;br /&gt;
q=1;&lt;br /&gt;
%Discretización temporal y espacial&lt;br /&gt;
N=500; %Número de subintervalos&lt;br /&gt;
h=L/N;&lt;br /&gt;
x=0:h:L; % Vector de espacio&lt;br /&gt;
dt=h/4; % Paso en tiempo&lt;br /&gt;
t=0:dt:T; % Vector de tiempos&lt;br /&gt;
% Matriz de coeficientes. Aproximacion de -q*u_xx&lt;br /&gt;
K=2*diag(ones(1,N+1))-diag(ones(1,N),1)-diag(ones(1,N),-1);&lt;br /&gt;
K(1,2)=-2;&lt;br /&gt;
K(N+1,N)=-2;&lt;br /&gt;
K=q*K/h^2;&lt;br /&gt;
% Calculamos u0 condición inicial&lt;br /&gt;
u0=[zeros(1,1+N*3/5),3*ones(1,N*2/5)]';&lt;br /&gt;
% F=0 (no la consideramos)&lt;br /&gt;
sol(1,:)=u0'; % Guardamos la solucion&lt;br /&gt;
U=u0; % Inicializacion&lt;br /&gt;
% Calculamos U_n -&amp;gt; U_n+1&lt;br /&gt;
for j=1:length(t)-1 &lt;br /&gt;
U=(eye(N+1)+dt*K)\(U+dt*F); &lt;br /&gt;
sol(j+1,:)= U'; % Guardamos solucion&lt;br /&gt;
end&lt;br /&gt;
% Calculamos el area de la funcion en cada tiempo (area = cantidad de contaminante)&lt;br /&gt;
areas=zeros(1,length(t));&lt;br /&gt;
for i=1:length(t)&lt;br /&gt;
f=sol(i,:);&lt;br /&gt;
w=trapz(x,f);&lt;br /&gt;
area(i)=w;&lt;br /&gt;
end&lt;br /&gt;
%Dibujamos&lt;br /&gt;
plot(t,area)&lt;br /&gt;
xlabel('Tiempo')&lt;br /&gt;
ylabel('Cantidad de contaminante')&lt;br /&gt;
}}&lt;br /&gt;
[[Archivo:aleeex.jpg|500px|thumb|centro|Conservación masa total de contaminante]]&lt;br /&gt;
[[Archivo:gime.jpg|500px|thumb|centro|Conservación masa total de contaminante]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Concentración a lo largo del tiempo==&lt;br /&gt;
La concentración de la sustancia contaminante en la varilla varía con el tiempo, pero en un cierto momento esta concentración se va homogeneizando, y deja de variar, entrando en un estado estacionario::&lt;br /&gt;
&amp;lt;math&amp;gt; u_t(x,t)- D*u_{xx}(x,t)=0 &amp;lt;/math&amp;gt; :    &lt;br /&gt;
&amp;lt;math&amp;gt; u_t(x,t)=0 \rightarrow D*u_{xx}(x,t)=0 &amp;lt;/math&amp;gt; :&lt;br /&gt;
&amp;lt;math&amp;gt; u=c_1*x+c_2 &amp;lt;/math&amp;gt; &lt;br /&gt;
Utizando Matlab comprobaremos que &amp;lt;math&amp;gt; c_1=0 &amp;lt;/math&amp;gt; &amp;lt;math&amp;gt; c_2=1.17 &amp;lt;/math&amp;gt;&lt;br /&gt;
Para tiempos grandes la concentración se estabiliza en torno a 1.17 en toda la varilla, de forma que la solución se asemejará a una función lineal constante.&lt;br /&gt;
&lt;br /&gt;
{{matlab| codigo=&lt;br /&gt;
%Datos&lt;br /&gt;
L=5; %Longitud de varilla&lt;br /&gt;
T=50;&lt;br /&gt;
q=1;&lt;br /&gt;
%Discretización temporal y espacial&lt;br /&gt;
dx=0.1; % Paso en espacio&lt;br /&gt;
N=L/dx; %Número de subintervalos&lt;br /&gt;
h=L/N;&lt;br /&gt;
x=0:h:L; % Vector de espacio&lt;br /&gt;
dt=h/4; % Paso en tiempo&lt;br /&gt;
t=0:dt:T; % Vector de tiempos&lt;br /&gt;
% Matriz de coeficientes. Aproximacion de -q*u_xx&lt;br /&gt;
K=2*diag(ones(1,N+1))-diag(ones(1,N),1)-diag(ones(1,N),-1);&lt;br /&gt;
K(1,2)=-2;&lt;br /&gt;
K(N+1,N)=-2;&lt;br /&gt;
K=q*K/h^2;&lt;br /&gt;
% Calculamos u0 condición inicial&lt;br /&gt;
u0=[zeros(1,1+N*3/5),3*ones(1,N*2/5)]';&lt;br /&gt;
% F=0 (no la consideramos)&lt;br /&gt;
sol(1,:)=u0'; % Guardamos la solucion&lt;br /&gt;
U=u0; % Inicializacion&lt;br /&gt;
% Calculamos U_n -&amp;gt; U_n+1&lt;br /&gt;
%Aplicamos método trapecio método del trapecio&lt;br /&gt;
for j=1:length(t)-1&lt;br /&gt;
U=(eye(N+1)+(dt*K)/2)\((eye(N+1)-(K*dt)/2)*U);&lt;br /&gt;
sol(j+1,:)= U'; % Guardamos solucion&lt;br /&gt;
end&lt;br /&gt;
%Solución estacionaria&lt;br /&gt;
a=sol(length(t),:);&lt;br /&gt;
b=sol(1,:);&lt;br /&gt;
c=sol((length(t)-1)/50+1,:);&lt;br /&gt;
d=sol((length(t)-1)*2/50+1,:);&lt;br /&gt;
e=sol((length(t)-1)*10/50+1,:);&lt;br /&gt;
hold on&lt;br /&gt;
plot(x,a,'xk','linewidth',2);&lt;br /&gt;
plot(x,b,'-m','linewidth',1);&lt;br /&gt;
plot(x,c,'-g','linewidth',1);&lt;br /&gt;
plot(x,d,'-y','linewidth',1);&lt;br /&gt;
plot(x,e,'-b','linewidth',1);&lt;br /&gt;
legend('u(50s)','u(0s)','u(1s)','u(2s)','u(10s)');&lt;br /&gt;
xlabel('Posición en la varilla')&lt;br /&gt;
ylabel('Concentracion')&lt;br /&gt;
hold off&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Soluciones(t).jpg|500px|thumb|centro|Soluciones a lo largo del tiempo]]&lt;br /&gt;
&lt;br /&gt;
La distancia entre la solución estacionaria y las soluciones para los siguientes instantes: 0s, 1s, 2s y 10s; se puede apreciar en la imagen anterior. &lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
Una vez analizado los datos, se demuestra que la sustancia contaminante se estabiliza en t=9.98s, con un error del 5%.&lt;br /&gt;
&lt;br /&gt;
En el caso de que consideremos Δx'=Δx/10,el tiempo en el que se estabiliza la cantidad de sustancia contaminante será t=10s, dato que será más preciso debido a que el paso realizado en el programa es menor.&lt;br /&gt;
&lt;br /&gt;
==Nueva condición de frontera==&lt;br /&gt;
&lt;br /&gt;
Si colocamos un limpiador, que elimina la sustancia contaminante, en el extremo izquierdo de la varilla, varían las condiciones de contorno del problema. En este caso, en el extremo izquierdo, la condición inicial será de tipo Dirichlet ya que se esta variación esta provocada por un mecanismo físico externo que actúa sobre el extremo. &amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;math&amp;gt;\begin{cases}&lt;br /&gt;
u_t(x,t)- D u_{xx}(x,t)= 0 ; x\in (0,5) \\&lt;br /&gt;
u(x,0)=u_0 , x\in (0,5) \\&lt;br /&gt;
u(0,t)=0 , u_x(5,t)=0 ; t\geq 0&lt;br /&gt;
\end{cases}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Dadas las nuevas condiciones, resolvemos el problema por el método de diferencias finitas con la ayuda de Matlab.&lt;br /&gt;
&lt;br /&gt;
{{matlab| codigo=&lt;br /&gt;
%Datos&lt;br /&gt;
L=5; %Longitud de varilla&lt;br /&gt;
T=5; %tiempo final&lt;br /&gt;
q=1;&lt;br /&gt;
%Discretización temporal y espacial&lt;br /&gt;
dx=0.1; % Paso en espacio&lt;br /&gt;
N=L/dx; %Número de subintervalos&lt;br /&gt;
x=0:dx:L;% Vector de espacio&lt;br /&gt;
dt=dx/4; % Paso en tiempo&lt;br /&gt;
t=0:dt:T; % Vector de tiempos&lt;br /&gt;
xint=dx:dx:L; %Vector de espacio sin el extremo izquierdo&lt;br /&gt;
% Matriz de coeficientes. Aproximacion de -q*u_xx&lt;br /&gt;
K=2*diag(ones(1,N))-diag(ones(1,N-1),1)-diag(ones(1,N-1),-1);&lt;br /&gt;
K(N,N-1)=-2;&lt;br /&gt;
K=q*K/dx^2;&lt;br /&gt;
% Matriz F&lt;br /&gt;
F=zeros(N,1);&lt;br /&gt;
% Calculamos u0 condición inicial&lt;br /&gt;
u0=[zeros(1,N*3/5),3*ones(1,N*2/5)]';&lt;br /&gt;
sol(1,:)=[0,u0']; &lt;br /&gt;
U=u0; % Inicializacion&lt;br /&gt;
% Calculamos U_n -&amp;gt; U_n+1&lt;br /&gt;
%Aplicamos método trapecio método del trapecio&lt;br /&gt;
for j=1:length(t)-1&lt;br /&gt;
U=(eye(N)+(dt*K))\(dt*F+U);&lt;br /&gt;
sol(j+1,:)= [0,U'];&lt;br /&gt;
end&lt;br /&gt;
%Dibujamos la solucion&lt;br /&gt;
[xx,tt]=meshgrid(x,t);&lt;br /&gt;
surf(xx,tt,sol);&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Xata.jpg|500px|thumb|centro|Solución al variar las condiciones de contorno del probblema.]]&lt;/div&gt;</summary>
		<author><name>Karlo André</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Archivo:Xata.JPG&amp;diff=12766</id>
		<title>Archivo:Xata.JPG</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Archivo:Xata.JPG&amp;diff=12766"/>
				<updated>2014-05-19T14:14:45Z</updated>
		
		<summary type="html">&lt;p&gt;Karlo André: Solución al variar las condiciones de contorno.&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Solución al variar las condiciones de contorno.&lt;/div&gt;</summary>
		<author><name>Karlo André</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Difusi%C3%B3n_de_una_sustancia_contaminante_(Grupo_10)&amp;diff=12764</id>
		<title>Difusión de una sustancia contaminante (Grupo 10)</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Difusi%C3%B3n_de_una_sustancia_contaminante_(Grupo_10)&amp;diff=12764"/>
				<updated>2014-05-19T14:13:21Z</updated>
		
		<summary type="html">&lt;p&gt;Karlo André: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;''''''Texto en negrita''''''[[Archivo:nuriat.png|200px|thumb|right|Tubo con sustancia contaminante]]&lt;br /&gt;
La difusión implica un movimiento espontáneo y desordenado de moléculas individuales y, especialmente, nos interesa la difusión de moléculas de una sustancia disuelta en otra.&lt;br /&gt;
&lt;br /&gt;
La difusión de una sustancia puede considerarse análoga al flujo de calor, y la ley de Fick establece que el ritmo de difusión por unidad de superficie, en dirección perpendicular a ésta, es proporcional al gradiente de la concentración de esa sustancia en esa dirección. La concentración es la masa de la sustancia por unidad de volumen, y el gradiente de concentración es la variación de concentración por unidad de distancia.&lt;br /&gt;
&lt;br /&gt;
Para determinar como se distribuye la concentración de una sustancia contaminante tomaremos como ejemplo un tubo largo compuesto por dos sustancias de las cuáles una de ellas es contaminante.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
= Simplificación del problema =&lt;br /&gt;
&lt;br /&gt;
Para que este problema resulte más sencillo aplicaremos una serie de condiciones, facilitando el cálculo del mismo.&lt;br /&gt;
&lt;br /&gt;
En primer lugar denotaremos su concentración &amp;lt;math&amp;gt; u &amp;lt;/math&amp;gt;, concentración de contaminante en cada posición del tubo y constante en cada sección, medida en &amp;lt;math&amp;gt; \frac{mol}{m^2*s} &amp;lt;/math&amp;gt;. &lt;br /&gt;
&lt;br /&gt;
Supondremos que el tubo mide L=5 m, ocupando el intervalo &amp;lt;math&amp;gt; x \in (0,L) &amp;lt;/math&amp;gt;, y que la concentración es la misma en cualquier punto de la sección transversal del tubo. Por tanto, la concentración dependerá unicamente de dos variables &amp;lt;math&amp;gt; u = u(x,t) &amp;lt;/math&amp;gt;. En los extremos se ha colocado un aislante que hace que el flujo de contaminante al exterior del tubo sea nulo. Además, consideraremos la simplificación de que se trata de un tubo aislado por sus laterales, pero abierto por las bases del cilindro.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Ley de conservación de masa ==&lt;br /&gt;
&lt;br /&gt;
Tras una serie de experimentos realizados por Lavoisier, se pusieron de manifiesto que si tenemos en cuenta todas las sustancias que forman parte en una reacción química y todos los productos formados, nunca varía la masa. Esta ley exige que no haya una generación espontánea de materia. Es decir, en la región del espacio estudiada, no existe entrada o salida por un punto cualquiera (frontera o interior), la masa en esta región se mantiene constante. Esta es la ley de la conservación de la masa, que podemos enunciarla, pues, de la siguiente manera: &amp;lt;br /&amp;gt;&lt;br /&gt;
''&amp;quot;En toda reacción química la masa se conserva, esto es, la masa total de los reactivos es igual a la masa total de los productos&amp;quot;'' &amp;lt;br /&amp;gt;&lt;br /&gt;
La ley de conservación de masas exige que no haya una generación espontánea de materia. Es decir, en la región del espacio estudiada, no existe entrada o salida por un punto cualquiera (frontera o interior), la masa en esta región se mantiene constante.&lt;br /&gt;
&lt;br /&gt;
Esta suposición, en términos de variación de masa, puede quedar determinada como:&lt;br /&gt;
&lt;br /&gt;
''Variación de la masa en el tiempo = flujo de masa a través de la frontera por unidad de tiempo + flujo de masa generada en el interior por unidad de tiempo. ''&lt;br /&gt;
&lt;br /&gt;
== Ley de Fick ==&lt;br /&gt;
Se trata de una ley cuantitativa en forma diferencial que describe la difusión de materia o energía en un medio en el que inicialmente existe equilibrio químico o físico. Esta ley se trata de una generalización de los fenómenos descritos por la '''Ley de Fourier''', ya que esta es una consideración concreta del calor.&lt;br /&gt;
&lt;br /&gt;
La ley de Fick anuncia que en el caso de existir diferencias de concentración en cualquier especie, el paso de estas especies se llevará a cabo desde las regiones con mayor concentración a las de menor. Formulado matemáticamente:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;F(x,t)=-D\frac{\partial u}{\partial x}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Donde &amp;lt;math&amp;gt;F&amp;lt;/math&amp;gt; es el flujo de la sustancia y &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; el coeficiente de difusión, que representa la facilidad en que un soluto particular se mueve por un disolvente determinado.&lt;br /&gt;
&lt;br /&gt;
La ley de Fick establece que el flujo de difusión del contaminante es proporcional a la variación de concentración:&lt;br /&gt;
&amp;lt;math&amp;gt; F(x,t)=-D\frac{\partial u}{\partial x} &amp;lt;/math&amp;gt;&lt;br /&gt;
donde D es el coeficiente de difusión (medido en &amp;lt;math&amp;gt; \frac{m^2}{s} &amp;lt;/math&amp;gt;), que depende de las propiedades físicas de los compuestos, y que se supone constante D=1.&lt;br /&gt;
&lt;br /&gt;
= Modelización de la ecuación diferencial =&lt;br /&gt;
&lt;br /&gt;
Aplicando el principio de conservación de la masa y la ley de Fourier, definimos la variable &amp;lt;math&amp;gt; u(x,t)&amp;lt;/math&amp;gt; en unidades de sustancia por área, es decir, concentración por superficie del tubo.&lt;br /&gt;
&lt;br /&gt;
Consideramos &amp;lt;math&amp;gt; A &amp;lt;/math&amp;gt; como variable superficie, y tomamos un pequeño trozo, definido por &amp;lt;math&amp;gt;\Delta x&amp;lt;/math&amp;gt;. Entonces, para obtener la variación de la masa en el tiempo:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; A u(x,t) \Delta x &amp;lt;/math&amp;gt; &lt;br /&gt;
&lt;br /&gt;
Y derivando en el tiempo:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; A u_t(x,t) \Delta x &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
obtenemos el primer término de la igualdad anteriormente enunciada.&lt;br /&gt;
&lt;br /&gt;
En el segundo, consideramos nulo el flujo de masa en los puntos interiores por unidad de tiempo, pues suponemos la tubería perfecta y sin sumideros.&lt;br /&gt;
&lt;br /&gt;
Como la superﬁcie lateral del tubo está aislada, solamente habrá flujo de sustancia en la dirección del eje &amp;lt;math&amp;gt;x&amp;lt;/math&amp;gt;. Si &amp;lt;math&amp;gt;F(x,t)&amp;gt; 0&amp;lt;/math&amp;gt; pensamos que el ﬂujo va hacia la derecha, si &amp;lt;math&amp;gt;F(x,t)&amp;lt; 0&amp;lt;/math&amp;gt;, este va a hacia la izquierda. El ﬂujo de&lt;br /&gt;
calor en un intervalo &amp;lt;math&amp;gt;[x, x + ∆x ] &amp;lt;/math&amp;gt; viene dado dado por:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;F(x,t)A-F(x+\Delta x, t)A&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Con lo que queda &amp;lt;math&amp;gt;A u_t(x,t) \Delta x = F(x,t)A-F(x+\Delta x, t)A&amp;lt;/math&amp;gt;, y al dividir &amp;lt;math&amp;gt;A \Delta x&amp;lt;/math&amp;gt;, nos queda &amp;lt;math&amp;gt;u_t(x,t)= \frac {F(x,t)-F(x+\Delta x, t)}{\Delta x}&amp;lt;/math&amp;gt;. &amp;lt;br /&amp;gt;&lt;br /&gt;
Como &amp;lt;math&amp;gt;\Delta x \rightarrow 0 &amp;lt;/math&amp;gt;, &amp;lt;math&amp;gt;u_t(x,t)= -F_x(x,t)&amp;lt;/math&amp;gt;, y aplicando ley de Fick, &amp;lt;math&amp;gt;u_t(x,t)=-\frac{\partial }{\partial x}(-D u_x(x,t)) = D u_xx(x,t) &amp;lt;/math&amp;gt;.&amp;lt;br /&amp;gt;&lt;br /&gt;
Con lo que resulta una ecuación en derivadas parciales que determina la concentración de sustancia:&lt;br /&gt;
&amp;lt;math&amp;gt;u_t(x,t)- D u_xx(x,t)= 0 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Planteamiento del problema bien propuesto ==&lt;br /&gt;
&lt;br /&gt;
Suponemos que el flujo será nula al haber una tapa en los extremos del tubo, con lo que el problema bien propuesto quedaría::&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\begin{cases}&lt;br /&gt;
u_t(x,t)- D u_{xx}(x,t)= 0 ; x\in (0,5) \\&lt;br /&gt;
u(x,0)=u_0 , x\in (0,5) \\&lt;br /&gt;
u_x(0,t)=0 , u_x(5,t)=0 ; t\geq 0&lt;br /&gt;
\end{cases}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= Resolución numérica =&lt;br /&gt;
Para la resolución de ésta ecuación necesitaremos mínimo tres condiciones, dos de las cuales serán de contorno, y la otra será la condición inicial.Si suponemos &amp;lt;math&amp;gt;u_0(x,0)&amp;lt;/math&amp;gt;, entonces:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; u_0(x,0)=\begin{cases}&lt;br /&gt;
0,  si x\leq 3\\&lt;br /&gt;
3,  si x&amp;gt;3&lt;br /&gt;
\end{cases}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Resolución por el método de las diferencias finitas ==&lt;br /&gt;
En el primer caso particular que estudiaremos, trataremos de obtener una resolución numérica del problema anteriormente planteado, dónde tenemos las fronteras aisladas y las concentraciones iniciales conocidas:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\begin{cases}&lt;br /&gt;
u_t(x,t)- D u_{xx}(x,t)= 0; x\in (0,5), t\geq 0 \\&lt;br /&gt;
u_0(x,0), x\in (0,5) \\&lt;br /&gt;
u_x(0,t)=0, u_x(5,t)=0, t\geq 0&lt;br /&gt;
\end{cases}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
La resolución por el método de las diferencias finitas se basa en expresar el problema continuo a un sistema discreto de ecuaciones diferenciales de primer orden. Particularizando para nuestro caso con las condiciones dadas, el problema planteado sería:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\begin{cases}&lt;br /&gt;
u'_n(t)+\frac{-u_{n-1}(t)+2u_n(t)+u_{n+1}(t)}{h^2} \\&lt;br /&gt;
\frac{u_1(t)-u_-1(t)}{2h} \rightarrow u_1(t)=u_-1(t) \\&lt;br /&gt;
\frac{u_{N+1}(t)-u_{N-1}(t)}{2h} \rightarrow u_{N+1}(t)=u_{N-1}\\&lt;br /&gt;
u_n(0)=u^0(x)&lt;br /&gt;
\end{cases}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Por lo que tenemos un sistema de la forma:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\begin{cases}&lt;br /&gt;
U'(t)+KU(t)=F(t)=0\\&lt;br /&gt;
U(0)=U^0&lt;br /&gt;
\end{cases}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Con &amp;lt;math&amp;gt;N+1&amp;lt;/math&amp;gt; ecuaciones.&lt;br /&gt;
==== Resolución por método del trapecio ====&lt;br /&gt;
Suponiendo que en el instante inicial se verifica  :&amp;lt;math&amp;gt;&lt;br /&gt;
u(x,0)=\left\{\begin{matrix}\\0, x≤3\\3, x&amp;gt;3\end{matrix}\right.&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Si tomamos &amp;lt;math&amp;gt;\triangle t= \triangle x/4&amp;lt;/math&amp;gt; en &amp;lt;math&amp;gt;t\in\ [0,5]&amp;lt;/math&amp;gt;, con &amp;lt;math&amp;gt;\triangle x=0.1&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
El código en MATLAB del método sería:&lt;br /&gt;
&lt;br /&gt;
{{matlab| codigo=&lt;br /&gt;
%Datos&lt;br /&gt;
L=5; %Longitud de varilla&lt;br /&gt;
T=5; %tiempo final&lt;br /&gt;
q=1;&lt;br /&gt;
%Discretización temporal y espacial&lt;br /&gt;
dx=0.1; % Paso en espacio&lt;br /&gt;
N=L/dx; %Número de subintervalos&lt;br /&gt;
x=0:dx:L; % Vector de espacio&lt;br /&gt;
dt=dx/4; % Paso en tiempo&lt;br /&gt;
t=0:dt:T; % Vector de tiempos&lt;br /&gt;
% Matriz de coeficientes. Aproximacion de -q*u_xx&lt;br /&gt;
K=2*diag(ones(1,N+1))-diag(ones(1,N),1)-diag(ones(1,N),-1);&lt;br /&gt;
K(1,2)=-2;&lt;br /&gt;
K(N+1,N)=-2;&lt;br /&gt;
K=q*K/dx^2;&lt;br /&gt;
% Calculamos u0 condición inicial&lt;br /&gt;
u0=[zeros(1,1+N*3/5),3*ones(1,N*2/5)]';&lt;br /&gt;
% F=0 (no la consideramos)&lt;br /&gt;
sol(1,:)=u0'; % Guardamos la solucion&lt;br /&gt;
U=u0; % Inicializacion&lt;br /&gt;
% Calculamos U_n -&amp;gt; U_n+1&lt;br /&gt;
%Aplicamos método trapecio método del trapecio&lt;br /&gt;
for j=1:length(t)-1&lt;br /&gt;
U=(eye(N+1)+(dt*K)/2)\((eye(N+1)-(K*dt)/2)*U);&lt;br /&gt;
sol(j+1,:)= U'; % Guardamos solucion&lt;br /&gt;
end&lt;br /&gt;
%Dibujamos la solucion&lt;br /&gt;
[xx,tt]=meshgrid(x,t);&lt;br /&gt;
surf(xx,tt,sol);&lt;br /&gt;
}}&lt;br /&gt;
[[Archivo:nur.jpg|500px|thumb|centro|Gráfica concentración / espacio-tiempo. Resolución por el método del trapecio.]]&lt;br /&gt;
&lt;br /&gt;
==== Resolución por método de Euler explícito ====&lt;br /&gt;
{{matlab| codigo=&lt;br /&gt;
%Datos&lt;br /&gt;
L=5; %Longitud de varilla&lt;br /&gt;
T=5; %tiempo final&lt;br /&gt;
q=1;&lt;br /&gt;
%Discretización temporal y espacial&lt;br /&gt;
dx=0.1; % Paso en espacio&lt;br /&gt;
N=L/dx; %Número de subintervalos&lt;br /&gt;
x=0:dx:L; % Vector de espacio&lt;br /&gt;
dt=dx/20; % Paso en tiempo&lt;br /&gt;
t=0:dt:T; % Vector de tiempos&lt;br /&gt;
% Matriz de coeficientes. Aproximacion de -q*u_xx&lt;br /&gt;
K=2*diag(ones(1,N+1))-diag(ones(1,N),1)-diag(ones(1,N),-1);&lt;br /&gt;
K(1,2)=-2;&lt;br /&gt;
K(N+1,N)=-2;&lt;br /&gt;
K=q*K/dx^2;&lt;br /&gt;
% Calculamos u0 condición inicial&lt;br /&gt;
u0=[zeros(1,1+N*3/5),3*ones(1,N*2/5)]';&lt;br /&gt;
% F=0 (no la consideramos)&lt;br /&gt;
sol(1,:)=u0'; % Guardamos la solucion&lt;br /&gt;
U=u0; % Inicializacion&lt;br /&gt;
% Calculamos U_n -&amp;gt; U_n+1&lt;br /&gt;
%Aplicamos método Euler explícito&lt;br /&gt;
for j=1:length(t)-1 &lt;br /&gt;
k1=-K*U; % Calculamos k1=h*f(tn,yn)&lt;br /&gt;
k2=-K*(U+dt*k1); % Calculamos k2=h*f(tn+h/2,yn+1/2*k1)&lt;br /&gt;
% Meto los datos en el vector&lt;br /&gt;
U=U+(dt/2)*(k1+k2);&lt;br /&gt;
sol(j+1,:)= U'; % Guardamos solucion&lt;br /&gt;
end&lt;br /&gt;
%Dibujamos la solucion&lt;br /&gt;
[xx,tt]=meshgrid(x,t);&lt;br /&gt;
surf(xx,tt,sol);&lt;br /&gt;
}}&lt;br /&gt;
[[Archivo:mig.jpg|500px|thumb|centro|Gráfica concentración / espacio-tiempo. Resolución por el método de Euler explícito.]]&lt;br /&gt;
&lt;br /&gt;
==== Resolución por método de Euler implícito ====&lt;br /&gt;
{{matlab| codigo=&lt;br /&gt;
%Datos&lt;br /&gt;
L=5; %Longitud de varilla&lt;br /&gt;
T=5;&lt;br /&gt;
q=1;&lt;br /&gt;
%Discretización temporal y espacial&lt;br /&gt;
dx=0.1; % Paso en espacio&lt;br /&gt;
N=L/dx; %Número de subintervalos&lt;br /&gt;
h=L/N;&lt;br /&gt;
x=0:h:L; % Vector de espacio&lt;br /&gt;
dt=h/20; % Paso en tiempo&lt;br /&gt;
t=0:dt:T; % Vector de tiempos&lt;br /&gt;
% Matriz de coeficientes. Aproximacion de -q*u_xx&lt;br /&gt;
K=2*diag(ones(1,N+1))-diag(ones(1,N),1)-diag(ones(1,N),-1);&lt;br /&gt;
K(1,2)=-2;&lt;br /&gt;
K(N+1,N)=-2;&lt;br /&gt;
K=q*K/h^2;&lt;br /&gt;
% Calculamos u0 condición inicial&lt;br /&gt;
u0=[zeros(1,1+N*3/5),3*ones(1,N*2/5)]';&lt;br /&gt;
% F=0 (no la consideramos)&lt;br /&gt;
sol(1,:)=u0'; % Guardamos la solucion&lt;br /&gt;
U=u0; % Inicializacion&lt;br /&gt;
% Calculamos U_n -&amp;gt; U_n+1&lt;br /&gt;
% Aplicamos método implícito&lt;br /&gt;
for j=1:length(t)-1 &lt;br /&gt;
U=U-dt*K*U; &lt;br /&gt;
sol(j+1,:)= U'; % Guardamos solucion&lt;br /&gt;
end&lt;br /&gt;
%Dibujamos la solucion&lt;br /&gt;
[xx,tt]=meshgrid(x,t);&lt;br /&gt;
surf(xx,tt,sol);&lt;br /&gt;
}}&lt;br /&gt;
[[Archivo:migap.jpg|500px|thumb|centro|Gráfica concentración / espacio-tiempo. Resolución por el método de Euler implícito.]]&lt;br /&gt;
&lt;br /&gt;
==== Resolución por método de Euler modificado ====&lt;br /&gt;
{{matlab| codigo=&lt;br /&gt;
%Datos&lt;br /&gt;
L=5; %Longitud de varilla&lt;br /&gt;
T=5;&lt;br /&gt;
q=1;&lt;br /&gt;
%Discretización temporal y espacial&lt;br /&gt;
dx=0.1; % Paso en espacio&lt;br /&gt;
N=L/dx; %Número de subintervalos&lt;br /&gt;
h=L/N;&lt;br /&gt;
x=0:h:L; % Vector de espacio&lt;br /&gt;
dt=h/20; % Paso en tiempo&lt;br /&gt;
t=0:dt:T; % Vector de tiempos&lt;br /&gt;
% Matriz de coeficientes. Aproximacion de -q*u_xx&lt;br /&gt;
K=2*diag(ones(1,N+1))-diag(ones(1,N),1)-diag(ones(1,N),-1);&lt;br /&gt;
K(1,2)=-2;&lt;br /&gt;
K(N+1,N)=-2;&lt;br /&gt;
K=q*K/h^2;&lt;br /&gt;
% Calculamos u0 condición inicial&lt;br /&gt;
u0=[zeros(1,1+N*3/5),3*ones(1,N*2/5)]';&lt;br /&gt;
% F=0 (no la consideramos)&lt;br /&gt;
sol(1,:)=u0'; % Guardamos la solucion&lt;br /&gt;
U=u0; % Inicializacion&lt;br /&gt;
% Calculamos U_n -&amp;gt; U_n+1&lt;br /&gt;
for j=1:length(t)-1 &lt;br /&gt;
k1=-K*U; % Calculamos k1=h*f(tn,yn)&lt;br /&gt;
k2=-K*(U+dt*k1); % Calculamos k2=h*f(tn+h/2,yn+1/2*k1)&lt;br /&gt;
% Meto los datos en el vector&lt;br /&gt;
U=U+(dt/2)*(k1+k2);&lt;br /&gt;
sol(j+1,:)= U'; % Guardamos solucion&lt;br /&gt;
end&lt;br /&gt;
%Dibujamos la solucion&lt;br /&gt;
[xx,tt]=meshgrid(x,t);&lt;br /&gt;
surf(xx,tt,sol);&lt;br /&gt;
}}&lt;br /&gt;
[[Archivo: mig.jpg|500px|thumb|centro|Gráfica concentración / espacio-tiempo. Resolución por el método de Euler modificado.]]&lt;br /&gt;
&lt;br /&gt;
== Conservación de la masa total de contaminante ==&lt;br /&gt;
A continuación demostraremos que la masa total de contaminante en el tubo se conserva a lo largo del tiempo, que se puede deducir a partir de la ecuación sin tener que resolverla. Integramos la ecuación y debido a las condiciones de frontera:&lt;br /&gt;
&amp;lt;math&amp;gt;\frac d {dt} \int_0^5 u(x,t)\,dx= \int_0^5 u_{xx}(x,t)\,dx= u_x(x,t)|_0^5=0&amp;lt;/math&amp;gt;&lt;br /&gt;
{{matlab| codigo=&lt;br /&gt;
%Datos&lt;br /&gt;
L=5; %Longitud de varilla&lt;br /&gt;
T=5;&lt;br /&gt;
q=1;&lt;br /&gt;
%Discretización temporal y espacial&lt;br /&gt;
N=500; %Número de subintervalos&lt;br /&gt;
h=L/N;&lt;br /&gt;
x=0:h:L; % Vector de espacio&lt;br /&gt;
dt=h/4; % Paso en tiempo&lt;br /&gt;
t=0:dt:T; % Vector de tiempos&lt;br /&gt;
% Matriz de coeficientes. Aproximacion de -q*u_xx&lt;br /&gt;
K=2*diag(ones(1,N+1))-diag(ones(1,N),1)-diag(ones(1,N),-1);&lt;br /&gt;
K(1,2)=-2;&lt;br /&gt;
K(N+1,N)=-2;&lt;br /&gt;
K=q*K/h^2;&lt;br /&gt;
% Calculamos u0 condición inicial&lt;br /&gt;
u0=[zeros(1,1+N*3/5),3*ones(1,N*2/5)]';&lt;br /&gt;
% F=0 (no la consideramos)&lt;br /&gt;
sol(1,:)=u0'; % Guardamos la solucion&lt;br /&gt;
U=u0; % Inicializacion&lt;br /&gt;
% Calculamos U_n -&amp;gt; U_n+1&lt;br /&gt;
for j=1:length(t)-1 &lt;br /&gt;
U=(eye(N+1)+dt*K)\(U+dt*F); &lt;br /&gt;
sol(j+1,:)= U'; % Guardamos solucion&lt;br /&gt;
end&lt;br /&gt;
% Calculamos el area de la funcion en cada tiempo (area = cantidad de contaminante)&lt;br /&gt;
areas=zeros(1,length(t));&lt;br /&gt;
for i=1:length(t)&lt;br /&gt;
f=sol(i,:);&lt;br /&gt;
w=trapz(x,f);&lt;br /&gt;
area(i)=w;&lt;br /&gt;
end&lt;br /&gt;
%Dibujamos&lt;br /&gt;
plot(t,area)&lt;br /&gt;
xlabel('Tiempo')&lt;br /&gt;
ylabel('Cantidad de contaminante')&lt;br /&gt;
}}&lt;br /&gt;
[[Archivo:aleeex.jpg|500px|thumb|centro|Conservación masa total de contaminante]]&lt;br /&gt;
[[Archivo:gime.jpg|500px|thumb|centro|Conservación masa total de contaminante]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Concentración a lo largo del tiempo==&lt;br /&gt;
La concentración de la sustancia contaminante en la varilla varía con el tiempo, pero en un cierto momento esta concentración se va homogeneizando, y deja de variar, entrando en un estado estacionario::&lt;br /&gt;
&amp;lt;math&amp;gt; u_t(x,t)- D*u_{xx}(x,t)=0 &amp;lt;/math&amp;gt; :    &lt;br /&gt;
&amp;lt;math&amp;gt; u_t(x,t)=0 \rightarrow D*u_{xx}(x,t)=0 &amp;lt;/math&amp;gt; :&lt;br /&gt;
&amp;lt;math&amp;gt; u=c_1*x+c_2 &amp;lt;/math&amp;gt; &lt;br /&gt;
Utizando Matlab comprobaremos que &amp;lt;math&amp;gt; c_1=0 &amp;lt;/math&amp;gt; &amp;lt;math&amp;gt; c_2=1.17 &amp;lt;/math&amp;gt;&lt;br /&gt;
Para tiempos grandes la concentración se estabiliza en torno a 1.17 en toda la varilla, de forma que la solución se asemejará a una función lineal constante.&lt;br /&gt;
&lt;br /&gt;
{{matlab| codigo=&lt;br /&gt;
%Datos&lt;br /&gt;
L=5; %Longitud de varilla&lt;br /&gt;
T=50;&lt;br /&gt;
q=1;&lt;br /&gt;
%Discretización temporal y espacial&lt;br /&gt;
dx=0.1; % Paso en espacio&lt;br /&gt;
N=L/dx; %Número de subintervalos&lt;br /&gt;
h=L/N;&lt;br /&gt;
x=0:h:L; % Vector de espacio&lt;br /&gt;
dt=h/4; % Paso en tiempo&lt;br /&gt;
t=0:dt:T; % Vector de tiempos&lt;br /&gt;
% Matriz de coeficientes. Aproximacion de -q*u_xx&lt;br /&gt;
K=2*diag(ones(1,N+1))-diag(ones(1,N),1)-diag(ones(1,N),-1);&lt;br /&gt;
K(1,2)=-2;&lt;br /&gt;
K(N+1,N)=-2;&lt;br /&gt;
K=q*K/h^2;&lt;br /&gt;
% Calculamos u0 condición inicial&lt;br /&gt;
u0=[zeros(1,1+N*3/5),3*ones(1,N*2/5)]';&lt;br /&gt;
% F=0 (no la consideramos)&lt;br /&gt;
sol(1,:)=u0'; % Guardamos la solucion&lt;br /&gt;
U=u0; % Inicializacion&lt;br /&gt;
% Calculamos U_n -&amp;gt; U_n+1&lt;br /&gt;
%Aplicamos método trapecio método del trapecio&lt;br /&gt;
for j=1:length(t)-1&lt;br /&gt;
U=(eye(N+1)+(dt*K)/2)\((eye(N+1)-(K*dt)/2)*U);&lt;br /&gt;
sol(j+1,:)= U'; % Guardamos solucion&lt;br /&gt;
end&lt;br /&gt;
%Solución estacionaria&lt;br /&gt;
a=sol(length(t),:);&lt;br /&gt;
b=sol(1,:);&lt;br /&gt;
c=sol((length(t)-1)/50+1,:);&lt;br /&gt;
d=sol((length(t)-1)*2/50+1,:);&lt;br /&gt;
e=sol((length(t)-1)*10/50+1,:);&lt;br /&gt;
hold on&lt;br /&gt;
plot(x,a,'xk','linewidth',2);&lt;br /&gt;
plot(x,b,'-m','linewidth',1);&lt;br /&gt;
plot(x,c,'-g','linewidth',1);&lt;br /&gt;
plot(x,d,'-y','linewidth',1);&lt;br /&gt;
plot(x,e,'-b','linewidth',1);&lt;br /&gt;
legend('u(50s)','u(0s)','u(1s)','u(2s)','u(10s)');&lt;br /&gt;
xlabel('Posición en la varilla')&lt;br /&gt;
ylabel('Concentracion')&lt;br /&gt;
hold off&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Soluciones(t).jpg|500px|thumb|centro|Soluciones a lo largo del tiempo]]&lt;br /&gt;
&lt;br /&gt;
La distancia entre la solución estacionaria y las soluciones para los siguientes instantes: 0s, 1s, 2s y 10s; se puede apreciar en la imagen anterior. &lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
Una vez analizado los datos, se demuestra que la sustancia contaminante se estabiliza en t=9.98s, con un error del 5%.&lt;br /&gt;
&lt;br /&gt;
En el caso de que consideremos Δx'=Δx/10,el tiempo en el que se estabiliza la cantidad de sustancia contaminante será t=10s, dato que será más preciso debido a que el paso realizado en el programa es menor.&lt;br /&gt;
&lt;br /&gt;
==Nueva condición de frontera==&lt;br /&gt;
&lt;br /&gt;
Si colocamos un limpiador, que elimina la sustancia contaminante, en el extremo izquierdo de la varilla, varían las condiciones de contorno del problema. En este caso, en el extremo izquierdo, la condición inicial será de tipo Dirichlet ya que se esta variación esta provocada por un mecanismo físico externo que actúa sobre el extremo. &amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;math&amp;gt;\begin{cases}&lt;br /&gt;
u_t(x,t)- D u_{xx}(x,t)= 0 ; x\in (0,5) \\&lt;br /&gt;
u(x,0)=u_0 , x\in (0,5) \\&lt;br /&gt;
u(0,t)=0 , u_x(5,t)=0 ; t\geq 0&lt;br /&gt;
\end{cases}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Dadas las nuevas condiciones, resolvemos el problema por el método de diferencias finitas con la ayuda de Matlab.&lt;br /&gt;
&lt;br /&gt;
{{matlab| codigo=&lt;br /&gt;
%Datos&lt;br /&gt;
L=5; %Longitud de varilla&lt;br /&gt;
T=5; %tiempo final&lt;br /&gt;
q=1;&lt;br /&gt;
%Discretización temporal y espacial&lt;br /&gt;
dx=0.1; % Paso en espacio&lt;br /&gt;
N=L/dx; %Número de subintervalos&lt;br /&gt;
x=0:dx:L;% Vector de espacio&lt;br /&gt;
dt=dx/4; % Paso en tiempo&lt;br /&gt;
t=0:dt:T; % Vector de tiempos&lt;br /&gt;
xint=dx:dx:L; %Vector de espacio sin el extremo izquierdo&lt;br /&gt;
% Matriz de coeficientes. Aproximacion de -q*u_xx&lt;br /&gt;
K=2*diag(ones(1,N))-diag(ones(1,N-1),1)-diag(ones(1,N-1),-1);&lt;br /&gt;
K(N,N-1)=-2;&lt;br /&gt;
K=q*K/dx^2;&lt;br /&gt;
% Matriz F&lt;br /&gt;
F=zeros(N,1);&lt;br /&gt;
% Calculamos u0 condición inicial&lt;br /&gt;
u0=[zeros(1,N*3/5),3*ones(1,N*2/5)]';&lt;br /&gt;
sol(1,:)=[0,u0']; &lt;br /&gt;
U=u0; % Inicializacion&lt;br /&gt;
% Calculamos U_n -&amp;gt; U_n+1&lt;br /&gt;
%Aplicamos método trapecio método del trapecio&lt;br /&gt;
for j=1:length(t)-1&lt;br /&gt;
U=(eye(N)+(dt*K))\(dt*F+U);&lt;br /&gt;
sol(j+1,:)= [0,U'];&lt;br /&gt;
end&lt;br /&gt;
%Dibujamos la solucion&lt;br /&gt;
[xx,tt]=meshgrid(x,t);&lt;br /&gt;
surf(xx,tt,sol);&lt;br /&gt;
}}&lt;/div&gt;</summary>
		<author><name>Karlo André</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Difusi%C3%B3n_de_una_sustancia_contaminante_(Grupo_10)&amp;diff=12707</id>
		<title>Difusión de una sustancia contaminante (Grupo 10)</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Difusi%C3%B3n_de_una_sustancia_contaminante_(Grupo_10)&amp;diff=12707"/>
				<updated>2014-05-19T13:28:37Z</updated>
		
		<summary type="html">&lt;p&gt;Karlo André: /* Concentración a lo largo del tiempo */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;''''''Texto en negrita''''''[[Archivo:nuriat.png|200px|thumb|right|Tubo con sustancia contaminante]]&lt;br /&gt;
La difusión implica un movimiento espontáneo y desordenado de moléculas individuales y, especialmente, nos interesa la difusión de moléculas de una sustancia disuelta en otra.&lt;br /&gt;
&lt;br /&gt;
La difusión de una sustancia puede considerarse análoga al flujo de calor, y la ley de Fick establece que el ritmo de difusión por unidad de superficie, en dirección perpendicular a ésta, es proporcional al gradiente de la concentración de esa sustancia en esa dirección. La concentración es la masa de la sustancia por unidad de volumen, y el gradiente de concentración es la variación de concentración por unidad de distancia.&lt;br /&gt;
&lt;br /&gt;
Para determinar como se distribuye la concentración de una sustancia contaminante tomaremos como ejemplo un tubo largo compuesto por dos sustancias de las cuáles una de ellas es contaminante.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
= Simplificación del problema =&lt;br /&gt;
&lt;br /&gt;
Para que este problema resulte más sencillo aplicaremos una serie de condiciones, facilitando el cálculo del mismo.&lt;br /&gt;
&lt;br /&gt;
En primer lugar denotaremos su concentración &amp;lt;math&amp;gt; u &amp;lt;/math&amp;gt;, concentración de contaminante en cada posición del tubo y constante en cada sección, medida en &amp;lt;math&amp;gt; \frac{mol}{m^2*s} &amp;lt;/math&amp;gt;. &lt;br /&gt;
&lt;br /&gt;
Supondremos que el tubo mide L=5 m, ocupando el intervalo &amp;lt;math&amp;gt; x \in (0,L) &amp;lt;/math&amp;gt;, y que la concentración es la misma en cualquier punto de la sección transversal del tubo. Por tanto, la concentración dependerá unicamente de dos variables &amp;lt;math&amp;gt; u = u(x,t) &amp;lt;/math&amp;gt;. En los extremos se ha colocado un aislante que hace que el flujo de contaminante al exterior del tubo sea nulo. Además, consideraremos la simplificación de que se trata de un tubo aislado por sus laterales, pero abierto por las bases del cilindro.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Ley de conservación de masa ==&lt;br /&gt;
&lt;br /&gt;
Tras una serie de experimentos realizados por Lavoisier, se pusieron de manifiesto que si tenemos en cuenta todas las sustancias que forman parte en una reacción química y todos los productos formados, nunca varía la masa. Esta ley exige que no haya una generación espontánea de materia. Es decir, en la región del espacio estudiada, no existe entrada o salida por un punto cualquiera (frontera o interior), la masa en esta región se mantiene constante. Esta es la ley de la conservación de la masa, que podemos enunciarla, pues, de la siguiente manera: &amp;lt;br /&amp;gt;&lt;br /&gt;
''&amp;quot;En toda reacción química la masa se conserva, esto es, la masa total de los reactivos es igual a la masa total de los productos&amp;quot;'' &amp;lt;br /&amp;gt;&lt;br /&gt;
La ley de conservación de masas exige que no haya una generación espontánea de materia. Es decir, en la región del espacio estudiada, no existe entrada o salida por un punto cualquiera (frontera o interior), la masa en esta región se mantiene constante.&lt;br /&gt;
&lt;br /&gt;
Esta suposición, en términos de variación de masa, puede quedar determinada como:&lt;br /&gt;
&lt;br /&gt;
''Variación de la masa en el tiempo = flujo de masa a través de la frontera por unidad de tiempo + flujo de masa generada en el interior por unidad de tiempo. ''&lt;br /&gt;
&lt;br /&gt;
== Ley de Fick ==&lt;br /&gt;
Se trata de una ley cuantitativa en forma diferencial que describe la difusión de materia o energía en un medio en el que inicialmente existe equilibrio químico o físico. Esta ley se trata de una generalización de los fenómenos descritos por la '''Ley de Fourier''', ya que esta es una consideración concreta del calor.&lt;br /&gt;
&lt;br /&gt;
La ley de Fick anuncia que en el caso de existir diferencias de concentración en cualquier especie, el paso de estas especies se llevará a cabo desde las regiones con mayor concentración a las de menor. Formulado matemáticamente:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;F(x,t)=-D\frac{\partial u}{\partial x}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Donde &amp;lt;math&amp;gt;F&amp;lt;/math&amp;gt; es el flujo de la sustancia y &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; el coeficiente de difusión, que representa la facilidad en que un soluto particular se mueve por un disolvente determinado.&lt;br /&gt;
&lt;br /&gt;
La ley de Fick establece que el flujo de difusión del contaminante es proporcional a la variación de concentración:&lt;br /&gt;
&amp;lt;math&amp;gt; F(x,t)=-D\frac{\partial u}{\partial x} &amp;lt;/math&amp;gt;&lt;br /&gt;
donde D es el coeficiente de difusión (medido en &amp;lt;math&amp;gt; \frac{m^2}{s} &amp;lt;/math&amp;gt;), que depende de las propiedades físicas de los compuestos, y que se supone constante D=1.&lt;br /&gt;
&lt;br /&gt;
= Modelización de la ecuación diferencial =&lt;br /&gt;
&lt;br /&gt;
Aplicando el principio de conservación de la masa y la ley de Fourier, definimos la variable &amp;lt;math&amp;gt; u(x,t)&amp;lt;/math&amp;gt; en unidades de sustancia por área, es decir, concentración por superficie del tubo.&lt;br /&gt;
&lt;br /&gt;
Consideramos &amp;lt;math&amp;gt; A &amp;lt;/math&amp;gt; como variable superficie, y tomamos un pequeño trozo, definido por &amp;lt;math&amp;gt;\Delta x&amp;lt;/math&amp;gt;. Entonces, para obtener la variación de la masa en el tiempo:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; A u(x,t) \Delta x &amp;lt;/math&amp;gt; &lt;br /&gt;
&lt;br /&gt;
Y derivando en el tiempo:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; A u_t(x,t) \Delta x &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
obtenemos el primer término de la igualdad anteriormente enunciada.&lt;br /&gt;
&lt;br /&gt;
En el segundo, consideramos nulo el flujo de masa en los puntos interiores por unidad de tiempo, pues suponemos la tubería perfecta y sin sumideros.&lt;br /&gt;
&lt;br /&gt;
Como la superﬁcie lateral del tubo está aislada, solamente habrá flujo de sustancia en la dirección del eje &amp;lt;math&amp;gt;x&amp;lt;/math&amp;gt;. Si &amp;lt;math&amp;gt;F(x,t)&amp;gt; 0&amp;lt;/math&amp;gt; pensamos que el ﬂujo va hacia la derecha, si &amp;lt;math&amp;gt;F(x,t)&amp;lt; 0&amp;lt;/math&amp;gt;, este va a hacia la izquierda. El ﬂujo de&lt;br /&gt;
calor en un intervalo &amp;lt;math&amp;gt;[x, x + ∆x ] &amp;lt;/math&amp;gt; viene dado dado por:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;F(x,t)A-F(x+\Delta x, t)A&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Con lo que queda &amp;lt;math&amp;gt;A u_t(x,t) \Delta x = F(x,t)A-F(x+\Delta x, t)A&amp;lt;/math&amp;gt;, y al dividir &amp;lt;math&amp;gt;A \Delta x&amp;lt;/math&amp;gt;, nos queda &amp;lt;math&amp;gt;u_t(x,t)= \frac {F(x,t)-F(x+\Delta x, t)}{\Delta x}&amp;lt;/math&amp;gt;. &amp;lt;br /&amp;gt;&lt;br /&gt;
Como &amp;lt;math&amp;gt;\Delta x \rightarrow 0 &amp;lt;/math&amp;gt;, &amp;lt;math&amp;gt;u_t(x,t)= -F_x(x,t)&amp;lt;/math&amp;gt;, y aplicando ley de Fick, &amp;lt;math&amp;gt;u_t(x,t)=-\frac{\partial }{\partial x}(-D u_x(x,t)) = D u_xx(x,t) &amp;lt;/math&amp;gt;.&amp;lt;br /&amp;gt;&lt;br /&gt;
Con lo que resulta una ecuación en derivadas parciales que determina la concentración de sustancia:&lt;br /&gt;
&amp;lt;math&amp;gt;u_t(x,t)- D u_xx(x,t)= 0 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Planteamiento del problema bien propuesto ==&lt;br /&gt;
&lt;br /&gt;
Suponemos que el flujo será nula al haber una tapa en los extremos del tubo, con lo que el problema bien propuesto quedaría::&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\begin{cases}&lt;br /&gt;
u_t(x,t)- D u_{xx}(x,t)= 0 ; x\in (0,5) \\&lt;br /&gt;
u(x,0)=u_0 , x\in (0,5) \\&lt;br /&gt;
u_x(0,t)=0 , u_x(5,t)=0 ; t\geq 0&lt;br /&gt;
\end{cases}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= Resolución numérica =&lt;br /&gt;
Para la resolución de ésta ecuación necesitaremos mínimo tres condiciones, dos de las cuales serán de contorno, y la otra será la condición inicial.Si suponemos &amp;lt;math&amp;gt;u_0(x,0)&amp;lt;/math&amp;gt;, entonces:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; u_0(x,0)=\begin{cases}&lt;br /&gt;
0,  si x\leq 3\\&lt;br /&gt;
3,  si x&amp;gt;3&lt;br /&gt;
\end{cases}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Resolución por el método de las diferencias finitas ==&lt;br /&gt;
En el primer caso particular que estudiaremos, trataremos de obtener una resolución numérica del problema anteriormente planteado, dónde tenemos las fronteras aisladas y las concentraciones iniciales conocidas:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\begin{cases}&lt;br /&gt;
u_t(x,t)- D u_{xx}(x,t)= 0; x\in (0,5), t\geq 0 \\&lt;br /&gt;
u_0(x,0), x\in (0,5) \\&lt;br /&gt;
u_x(0,t)=0, u_x(5,t)=0, t\geq 0&lt;br /&gt;
\end{cases}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
La resolución por el método de las diferencias finitas se basa en expresar el problema continuo a un sistema discreto de ecuaciones diferenciales de primer orden. Particularizando para nuestro caso con las condiciones dadas, el problema planteado sería:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\begin{cases}&lt;br /&gt;
u'_n(t)+\frac{-u_{n-1}(t)+2u_n(t)+u_{n+1}(t)}{h^2} \\&lt;br /&gt;
\frac{u_1(t)-u_-1(t)}{2h} \rightarrow u_1(t)=u_-1(t) \\&lt;br /&gt;
\frac{u_{N+1}(t)-u_{N-1}(t)}{2h} \rightarrow u_{N+1}(t)=u_{N-1}\\&lt;br /&gt;
u_n(0)=u^0(x)&lt;br /&gt;
\end{cases}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Por lo que tenemos un sistema de la forma:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\begin{cases}&lt;br /&gt;
U'(t)+KU(t)=F(t)=0\\&lt;br /&gt;
U(0)=U^0&lt;br /&gt;
\end{cases}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Con &amp;lt;math&amp;gt;N+1&amp;lt;/math&amp;gt; ecuaciones.&lt;br /&gt;
==== Resolución por método del trapecio ====&lt;br /&gt;
Suponiendo que en el instante inicial se verifica  :&amp;lt;math&amp;gt;&lt;br /&gt;
u(x,0)=\left\{\begin{matrix}\\0, x≤3\\3, x&amp;gt;3\end{matrix}\right.&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Si tomamos &amp;lt;math&amp;gt;\triangle t= \triangle x/4&amp;lt;/math&amp;gt; en &amp;lt;math&amp;gt;t\in\ [0,5]&amp;lt;/math&amp;gt;, con &amp;lt;math&amp;gt;\triangle x=0.1&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
El código en MATLAB del método sería:&lt;br /&gt;
&lt;br /&gt;
{{matlab| codigo=&lt;br /&gt;
%Datos&lt;br /&gt;
L=5; %Longitud de varilla&lt;br /&gt;
T=5; %tiempo final&lt;br /&gt;
q=1;&lt;br /&gt;
%Discretización temporal y espacial&lt;br /&gt;
dx=0.1; % Paso en espacio&lt;br /&gt;
N=L/dx; %Número de subintervalos&lt;br /&gt;
x=0:dx:L; % Vector de espacio&lt;br /&gt;
dt=dx/4; % Paso en tiempo&lt;br /&gt;
t=0:dt:T; % Vector de tiempos&lt;br /&gt;
% Matriz de coeficientes. Aproximacion de -q*u_xx&lt;br /&gt;
K=2*diag(ones(1,N+1))-diag(ones(1,N),1)-diag(ones(1,N),-1);&lt;br /&gt;
K(1,2)=-2;&lt;br /&gt;
K(N+1,N)=-2;&lt;br /&gt;
K=q*K/dx^2;&lt;br /&gt;
% Calculamos u0 condición inicial&lt;br /&gt;
u0=[zeros(1,1+N*3/5),3*ones(1,N*2/5)]';&lt;br /&gt;
% F=0 (no la consideramos)&lt;br /&gt;
sol(1,:)=u0'; % Guardamos la solucion&lt;br /&gt;
U=u0; % Inicializacion&lt;br /&gt;
% Calculamos U_n -&amp;gt; U_n+1&lt;br /&gt;
%Aplicamos método trapecio método del trapecio&lt;br /&gt;
for j=1:length(t)-1&lt;br /&gt;
U=(eye(N+1)+(dt*K)/2)\((eye(N+1)-(K*dt)/2)*U);&lt;br /&gt;
sol(j+1,:)= U'; % Guardamos solucion&lt;br /&gt;
end&lt;br /&gt;
%Dibujamos la solucion&lt;br /&gt;
[xx,tt]=meshgrid(x,t);&lt;br /&gt;
surf(xx,tt,sol);&lt;br /&gt;
}}&lt;br /&gt;
[[Archivo:nur.jpg|500px|thumb|centro|Gráfica concentración / espacio-tiempo. Resolución por el método del trapecio.]]&lt;br /&gt;
&lt;br /&gt;
==== Resolución por método de Euler explícito ====&lt;br /&gt;
{{matlab| codigo=&lt;br /&gt;
%Datos&lt;br /&gt;
L=5; %Longitud de varilla&lt;br /&gt;
T=5; %tiempo final&lt;br /&gt;
q=1;&lt;br /&gt;
%Discretización temporal y espacial&lt;br /&gt;
dx=0.1; % Paso en espacio&lt;br /&gt;
N=L/dx; %Número de subintervalos&lt;br /&gt;
x=0:dx:L; % Vector de espacio&lt;br /&gt;
dt=dx/20; % Paso en tiempo&lt;br /&gt;
t=0:dt:T; % Vector de tiempos&lt;br /&gt;
% Matriz de coeficientes. Aproximacion de -q*u_xx&lt;br /&gt;
K=2*diag(ones(1,N+1))-diag(ones(1,N),1)-diag(ones(1,N),-1);&lt;br /&gt;
K(1,2)=-2;&lt;br /&gt;
K(N+1,N)=-2;&lt;br /&gt;
K=q*K/dx^2;&lt;br /&gt;
% Calculamos u0 condición inicial&lt;br /&gt;
u0=[zeros(1,1+N*3/5),3*ones(1,N*2/5)]';&lt;br /&gt;
% F=0 (no la consideramos)&lt;br /&gt;
sol(1,:)=u0'; % Guardamos la solucion&lt;br /&gt;
U=u0; % Inicializacion&lt;br /&gt;
% Calculamos U_n -&amp;gt; U_n+1&lt;br /&gt;
%Aplicamos método Euler explícito&lt;br /&gt;
for j=1:length(t)-1 &lt;br /&gt;
k1=-K*U; % Calculamos k1=h*f(tn,yn)&lt;br /&gt;
k2=-K*(U+dt*k1); % Calculamos k2=h*f(tn+h/2,yn+1/2*k1)&lt;br /&gt;
% Meto los datos en el vector&lt;br /&gt;
U=U+(dt/2)*(k1+k2);&lt;br /&gt;
sol(j+1,:)= U'; % Guardamos solucion&lt;br /&gt;
end&lt;br /&gt;
%Dibujamos la solucion&lt;br /&gt;
[xx,tt]=meshgrid(x,t);&lt;br /&gt;
surf(xx,tt,sol);&lt;br /&gt;
}}&lt;br /&gt;
[[Archivo:mig.jpg|500px|thumb|centro|Gráfica concentración / espacio-tiempo. Resolución por el método de Euler explícito.]]&lt;br /&gt;
&lt;br /&gt;
==== Resolución por método de Euler implícito ====&lt;br /&gt;
{{matlab| codigo=&lt;br /&gt;
%Datos&lt;br /&gt;
L=5; %Longitud de varilla&lt;br /&gt;
T=5;&lt;br /&gt;
q=1;&lt;br /&gt;
%Discretización temporal y espacial&lt;br /&gt;
dx=0.1; % Paso en espacio&lt;br /&gt;
N=L/dx; %Número de subintervalos&lt;br /&gt;
h=L/N;&lt;br /&gt;
x=0:h:L; % Vector de espacio&lt;br /&gt;
dt=h/20; % Paso en tiempo&lt;br /&gt;
t=0:dt:T; % Vector de tiempos&lt;br /&gt;
% Matriz de coeficientes. Aproximacion de -q*u_xx&lt;br /&gt;
K=2*diag(ones(1,N+1))-diag(ones(1,N),1)-diag(ones(1,N),-1);&lt;br /&gt;
K(1,2)=-2;&lt;br /&gt;
K(N+1,N)=-2;&lt;br /&gt;
K=q*K/h^2;&lt;br /&gt;
% Calculamos u0 condición inicial&lt;br /&gt;
u0=[zeros(1,1+N*3/5),3*ones(1,N*2/5)]';&lt;br /&gt;
% F=0 (no la consideramos)&lt;br /&gt;
sol(1,:)=u0'; % Guardamos la solucion&lt;br /&gt;
U=u0; % Inicializacion&lt;br /&gt;
% Calculamos U_n -&amp;gt; U_n+1&lt;br /&gt;
% Aplicamos método implícito&lt;br /&gt;
for j=1:length(t)-1 &lt;br /&gt;
U=U-dt*K*U; &lt;br /&gt;
sol(j+1,:)= U'; % Guardamos solucion&lt;br /&gt;
end&lt;br /&gt;
%Dibujamos la solucion&lt;br /&gt;
[xx,tt]=meshgrid(x,t);&lt;br /&gt;
surf(xx,tt,sol);&lt;br /&gt;
}}&lt;br /&gt;
[[Archivo:migap.jpg|500px|thumb|centro|Gráfica concentración / espacio-tiempo. Resolución por el método de Euler implícito.]]&lt;br /&gt;
&lt;br /&gt;
==== Resolución por método de Euler modificado ====&lt;br /&gt;
{{matlab| codigo=&lt;br /&gt;
%Datos&lt;br /&gt;
L=5; %Longitud de varilla&lt;br /&gt;
T=5;&lt;br /&gt;
q=1;&lt;br /&gt;
%Discretización temporal y espacial&lt;br /&gt;
dx=0.1; % Paso en espacio&lt;br /&gt;
N=L/dx; %Número de subintervalos&lt;br /&gt;
h=L/N;&lt;br /&gt;
x=0:h:L; % Vector de espacio&lt;br /&gt;
dt=h/20; % Paso en tiempo&lt;br /&gt;
t=0:dt:T; % Vector de tiempos&lt;br /&gt;
% Matriz de coeficientes. Aproximacion de -q*u_xx&lt;br /&gt;
K=2*diag(ones(1,N+1))-diag(ones(1,N),1)-diag(ones(1,N),-1);&lt;br /&gt;
K(1,2)=-2;&lt;br /&gt;
K(N+1,N)=-2;&lt;br /&gt;
K=q*K/h^2;&lt;br /&gt;
% Calculamos u0 condición inicial&lt;br /&gt;
u0=[zeros(1,1+N*3/5),3*ones(1,N*2/5)]';&lt;br /&gt;
% F=0 (no la consideramos)&lt;br /&gt;
sol(1,:)=u0'; % Guardamos la solucion&lt;br /&gt;
U=u0; % Inicializacion&lt;br /&gt;
% Calculamos U_n -&amp;gt; U_n+1&lt;br /&gt;
for j=1:length(t)-1 &lt;br /&gt;
k1=-K*U; % Calculamos k1=h*f(tn,yn)&lt;br /&gt;
k2=-K*(U+dt*k1); % Calculamos k2=h*f(tn+h/2,yn+1/2*k1)&lt;br /&gt;
% Meto los datos en el vector&lt;br /&gt;
U=U+(dt/2)*(k1+k2);&lt;br /&gt;
sol(j+1,:)= U'; % Guardamos solucion&lt;br /&gt;
end&lt;br /&gt;
%Dibujamos la solucion&lt;br /&gt;
[xx,tt]=meshgrid(x,t);&lt;br /&gt;
surf(xx,tt,sol);&lt;br /&gt;
}}&lt;br /&gt;
[[Archivo: mig.jpg|500px|thumb|centro|Gráfica concentración / espacio-tiempo. Resolución por el método de Euler modificado.]]&lt;br /&gt;
&lt;br /&gt;
== Conservación de la masa total de contaminante ==&lt;br /&gt;
A continuación demostraremos que la masa total de contaminante en el tubo se conserva a lo largo del tiempo, que se puede deducir a partir de la ecuación sin tener que resolverla. Integramos la ecuación y debido a las condiciones de frontera:&lt;br /&gt;
&amp;lt;math&amp;gt;\frac d {dt} \int_0^5 u(x,t)\,dx= \int_0^5 u_{xx}(x,t)\,dx= u_x(x,t)|_0^5=0&amp;lt;/math&amp;gt;&lt;br /&gt;
{{matlab| codigo=&lt;br /&gt;
%Datos&lt;br /&gt;
L=5; %Longitud de varilla&lt;br /&gt;
T=5;&lt;br /&gt;
q=1;&lt;br /&gt;
%Discretización temporal y espacial&lt;br /&gt;
N=500; %Número de subintervalos&lt;br /&gt;
h=L/N;&lt;br /&gt;
x=0:h:L; % Vector de espacio&lt;br /&gt;
dt=h/4; % Paso en tiempo&lt;br /&gt;
t=0:dt:T; % Vector de tiempos&lt;br /&gt;
% Matriz de coeficientes. Aproximacion de -q*u_xx&lt;br /&gt;
K=2*diag(ones(1,N+1))-diag(ones(1,N),1)-diag(ones(1,N),-1);&lt;br /&gt;
K(1,2)=-2;&lt;br /&gt;
K(N+1,N)=-2;&lt;br /&gt;
K=q*K/h^2;&lt;br /&gt;
% Calculamos u0 condición inicial&lt;br /&gt;
u0=[zeros(1,1+N*3/5),3*ones(1,N*2/5)]';&lt;br /&gt;
% F=0 (no la consideramos)&lt;br /&gt;
sol(1,:)=u0'; % Guardamos la solucion&lt;br /&gt;
U=u0; % Inicializacion&lt;br /&gt;
% Calculamos U_n -&amp;gt; U_n+1&lt;br /&gt;
for j=1:length(t)-1 &lt;br /&gt;
U=(eye(N+1)+dt*K)\(U+dt*F); &lt;br /&gt;
sol(j+1,:)= U'; % Guardamos solucion&lt;br /&gt;
end&lt;br /&gt;
% Calculamos el area de la funcion en cada tiempo (area = cantidad de contaminante)&lt;br /&gt;
areas=zeros(1,length(t));&lt;br /&gt;
for i=1:length(t)&lt;br /&gt;
f=sol(i,:);&lt;br /&gt;
w=trapz(x,f);&lt;br /&gt;
area(i)=w;&lt;br /&gt;
end&lt;br /&gt;
%Dibujamos&lt;br /&gt;
plot(t,area)&lt;br /&gt;
xlabel('Tiempo')&lt;br /&gt;
ylabel('Cantidad de contaminante')&lt;br /&gt;
}}&lt;br /&gt;
[[Archivo:aleeex.jpg|500px|thumb|centro|Conservación masa total de contaminante]]&lt;br /&gt;
[[Archivo:gime.jpg|500px|thumb|centro|Conservación masa total de contaminante]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Concentración a lo largo del tiempo==&lt;br /&gt;
La concentración de la sustancia contaminante en la varilla varía con el tiempo, pero en un cierto momento esta concentración se va homogeneizando, y deja de variar, entrando en un estado estacionario::&lt;br /&gt;
&amp;lt;math&amp;gt; u_t(x,t)- D*u_{xx}(x,t)=0 &amp;lt;/math&amp;gt; :    &lt;br /&gt;
&amp;lt;math&amp;gt; u_t(x,t)=0 \rightarrow D*u_{xx}(x,t)=0 &amp;lt;/math&amp;gt; :&lt;br /&gt;
&amp;lt;math&amp;gt; u=c_1*x+c_2 &amp;lt;/math&amp;gt; &lt;br /&gt;
Utizando Matlab comprobaremos que &amp;lt;math&amp;gt; c_1=0 &amp;lt;/math&amp;gt; &amp;lt;math&amp;gt; c_2=1.17 &amp;lt;/math&amp;gt;&lt;br /&gt;
Para tiempos grandes la concentración se estabiliza en torno a 1.17 en toda la varilla, de forma que la solución se asemejará a una función lineal constante.&lt;br /&gt;
&lt;br /&gt;
{{matlab| codigo=&lt;br /&gt;
%Datos&lt;br /&gt;
L=5; %Longitud de varilla&lt;br /&gt;
T=50;&lt;br /&gt;
q=1;&lt;br /&gt;
%Discretización temporal y espacial&lt;br /&gt;
dx=0.1; % Paso en espacio&lt;br /&gt;
N=L/dx; %Número de subintervalos&lt;br /&gt;
h=L/N;&lt;br /&gt;
x=0:h:L; % Vector de espacio&lt;br /&gt;
dt=h/4; % Paso en tiempo&lt;br /&gt;
t=0:dt:T; % Vector de tiempos&lt;br /&gt;
% Matriz de coeficientes. Aproximacion de -q*u_xx&lt;br /&gt;
K=2*diag(ones(1,N+1))-diag(ones(1,N),1)-diag(ones(1,N),-1);&lt;br /&gt;
K(1,2)=-2;&lt;br /&gt;
K(N+1,N)=-2;&lt;br /&gt;
K=q*K/h^2;&lt;br /&gt;
% Calculamos u0 condición inicial&lt;br /&gt;
u0=[zeros(1,1+N*3/5),3*ones(1,N*2/5)]';&lt;br /&gt;
% F=0 (no la consideramos)&lt;br /&gt;
sol(1,:)=u0'; % Guardamos la solucion&lt;br /&gt;
U=u0; % Inicializacion&lt;br /&gt;
% Calculamos U_n -&amp;gt; U_n+1&lt;br /&gt;
%Aplicamos método trapecio método del trapecio&lt;br /&gt;
for j=1:length(t)-1&lt;br /&gt;
U=(eye(N+1)+(dt*K)/2)\((eye(N+1)-(K*dt)/2)*U);&lt;br /&gt;
sol(j+1,:)= U'; % Guardamos solucion&lt;br /&gt;
end&lt;br /&gt;
%Solución estacionaria&lt;br /&gt;
a=sol(length(t),:);&lt;br /&gt;
b=sol(1,:);&lt;br /&gt;
c=sol((length(t)-1)/50+1,:);&lt;br /&gt;
d=sol((length(t)-1)*2/50+1,:);&lt;br /&gt;
e=sol((length(t)-1)*10/50+1,:);&lt;br /&gt;
hold on&lt;br /&gt;
plot(x,a,'xk','linewidth',2);&lt;br /&gt;
plot(x,b,'-m','linewidth',1);&lt;br /&gt;
plot(x,c,'-g','linewidth',1);&lt;br /&gt;
plot(x,d,'-y','linewidth',1);&lt;br /&gt;
plot(x,e,'-b','linewidth',1);&lt;br /&gt;
legend('u(50s)','u(0s)','u(1s)','u(2s)','u(10s)');&lt;br /&gt;
xlabel('Posición en la varilla')&lt;br /&gt;
ylabel('Concentracion')&lt;br /&gt;
hold off&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Soluciones(t).jpg|500px|thumb|centro|Soluciones a lo largo del tiempo]]&lt;br /&gt;
&lt;br /&gt;
La distancia entre la solución estacionaria y las soluciones para los siguientes instantes: 0s, 1s, 2s y 10s; se puede apreciar en la imagen anterior. &lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
Una vez analizado los datos, se demuestra que la sustancia contaminante se estabiliza en t=9.98s, con un error del 5%.&lt;br /&gt;
&lt;br /&gt;
En el caso de que consideremos Δx'=Δx/10,el tiempo en el que se estabiliza la cantidad de sustancia contaminante será t=10s, dato que será más preciso debido a que el paso realizado en el programa es menor.&lt;br /&gt;
&lt;br /&gt;
==Nueva condición de frontera==&lt;br /&gt;
&lt;br /&gt;
Si colocamos un limpiador, que elimina la sustancia contaminante, en el extremo izquierdo de la varilla, varían las condiciones de contorno del problema. En este caso, en el extremo izquierdo, la condición inicial será de tipo Dirichlet ya que se esta variación esta provocada por un mecanismo físico externo que actúa sobre el extremo. &amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;math&amp;gt;\begin{cases}&lt;br /&gt;
u_t(x,t)- D u_{xx}(x,t)= 0 ; x\in (0,5) \\&lt;br /&gt;
u(x,0)=u_0 , x\in (0,5) \\&lt;br /&gt;
u(0,t)=0 , u_x(5,t)=0 ; t\geq 0&lt;br /&gt;
\end{cases}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Dadas las nuevas condiciones resolvemos el problema por el método de diferencias finitas.&lt;/div&gt;</summary>
		<author><name>Karlo André</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Difusi%C3%B3n_de_una_sustancia_contaminante_(Grupo_10)&amp;diff=12704</id>
		<title>Difusión de una sustancia contaminante (Grupo 10)</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Difusi%C3%B3n_de_una_sustancia_contaminante_(Grupo_10)&amp;diff=12704"/>
				<updated>2014-05-19T13:27:37Z</updated>
		
		<summary type="html">&lt;p&gt;Karlo André: /* Resolución por método del trapecio */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;''''''Texto en negrita''''''[[Archivo:nuriat.png|200px|thumb|right|Tubo con sustancia contaminante]]&lt;br /&gt;
La difusión implica un movimiento espontáneo y desordenado de moléculas individuales y, especialmente, nos interesa la difusión de moléculas de una sustancia disuelta en otra.&lt;br /&gt;
&lt;br /&gt;
La difusión de una sustancia puede considerarse análoga al flujo de calor, y la ley de Fick establece que el ritmo de difusión por unidad de superficie, en dirección perpendicular a ésta, es proporcional al gradiente de la concentración de esa sustancia en esa dirección. La concentración es la masa de la sustancia por unidad de volumen, y el gradiente de concentración es la variación de concentración por unidad de distancia.&lt;br /&gt;
&lt;br /&gt;
Para determinar como se distribuye la concentración de una sustancia contaminante tomaremos como ejemplo un tubo largo compuesto por dos sustancias de las cuáles una de ellas es contaminante.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
= Simplificación del problema =&lt;br /&gt;
&lt;br /&gt;
Para que este problema resulte más sencillo aplicaremos una serie de condiciones, facilitando el cálculo del mismo.&lt;br /&gt;
&lt;br /&gt;
En primer lugar denotaremos su concentración &amp;lt;math&amp;gt; u &amp;lt;/math&amp;gt;, concentración de contaminante en cada posición del tubo y constante en cada sección, medida en &amp;lt;math&amp;gt; \frac{mol}{m^2*s} &amp;lt;/math&amp;gt;. &lt;br /&gt;
&lt;br /&gt;
Supondremos que el tubo mide L=5 m, ocupando el intervalo &amp;lt;math&amp;gt; x \in (0,L) &amp;lt;/math&amp;gt;, y que la concentración es la misma en cualquier punto de la sección transversal del tubo. Por tanto, la concentración dependerá unicamente de dos variables &amp;lt;math&amp;gt; u = u(x,t) &amp;lt;/math&amp;gt;. En los extremos se ha colocado un aislante que hace que el flujo de contaminante al exterior del tubo sea nulo. Además, consideraremos la simplificación de que se trata de un tubo aislado por sus laterales, pero abierto por las bases del cilindro.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Ley de conservación de masa ==&lt;br /&gt;
&lt;br /&gt;
Tras una serie de experimentos realizados por Lavoisier, se pusieron de manifiesto que si tenemos en cuenta todas las sustancias que forman parte en una reacción química y todos los productos formados, nunca varía la masa. Esta ley exige que no haya una generación espontánea de materia. Es decir, en la región del espacio estudiada, no existe entrada o salida por un punto cualquiera (frontera o interior), la masa en esta región se mantiene constante. Esta es la ley de la conservación de la masa, que podemos enunciarla, pues, de la siguiente manera: &amp;lt;br /&amp;gt;&lt;br /&gt;
''&amp;quot;En toda reacción química la masa se conserva, esto es, la masa total de los reactivos es igual a la masa total de los productos&amp;quot;'' &amp;lt;br /&amp;gt;&lt;br /&gt;
La ley de conservación de masas exige que no haya una generación espontánea de materia. Es decir, en la región del espacio estudiada, no existe entrada o salida por un punto cualquiera (frontera o interior), la masa en esta región se mantiene constante.&lt;br /&gt;
&lt;br /&gt;
Esta suposición, en términos de variación de masa, puede quedar determinada como:&lt;br /&gt;
&lt;br /&gt;
''Variación de la masa en el tiempo = flujo de masa a través de la frontera por unidad de tiempo + flujo de masa generada en el interior por unidad de tiempo. ''&lt;br /&gt;
&lt;br /&gt;
== Ley de Fick ==&lt;br /&gt;
Se trata de una ley cuantitativa en forma diferencial que describe la difusión de materia o energía en un medio en el que inicialmente existe equilibrio químico o físico. Esta ley se trata de una generalización de los fenómenos descritos por la '''Ley de Fourier''', ya que esta es una consideración concreta del calor.&lt;br /&gt;
&lt;br /&gt;
La ley de Fick anuncia que en el caso de existir diferencias de concentración en cualquier especie, el paso de estas especies se llevará a cabo desde las regiones con mayor concentración a las de menor. Formulado matemáticamente:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;F(x,t)=-D\frac{\partial u}{\partial x}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Donde &amp;lt;math&amp;gt;F&amp;lt;/math&amp;gt; es el flujo de la sustancia y &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; el coeficiente de difusión, que representa la facilidad en que un soluto particular se mueve por un disolvente determinado.&lt;br /&gt;
&lt;br /&gt;
La ley de Fick establece que el flujo de difusión del contaminante es proporcional a la variación de concentración:&lt;br /&gt;
&amp;lt;math&amp;gt; F(x,t)=-D\frac{\partial u}{\partial x} &amp;lt;/math&amp;gt;&lt;br /&gt;
donde D es el coeficiente de difusión (medido en &amp;lt;math&amp;gt; \frac{m^2}{s} &amp;lt;/math&amp;gt;), que depende de las propiedades físicas de los compuestos, y que se supone constante D=1.&lt;br /&gt;
&lt;br /&gt;
= Modelización de la ecuación diferencial =&lt;br /&gt;
&lt;br /&gt;
Aplicando el principio de conservación de la masa y la ley de Fourier, definimos la variable &amp;lt;math&amp;gt; u(x,t)&amp;lt;/math&amp;gt; en unidades de sustancia por área, es decir, concentración por superficie del tubo.&lt;br /&gt;
&lt;br /&gt;
Consideramos &amp;lt;math&amp;gt; A &amp;lt;/math&amp;gt; como variable superficie, y tomamos un pequeño trozo, definido por &amp;lt;math&amp;gt;\Delta x&amp;lt;/math&amp;gt;. Entonces, para obtener la variación de la masa en el tiempo:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; A u(x,t) \Delta x &amp;lt;/math&amp;gt; &lt;br /&gt;
&lt;br /&gt;
Y derivando en el tiempo:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; A u_t(x,t) \Delta x &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
obtenemos el primer término de la igualdad anteriormente enunciada.&lt;br /&gt;
&lt;br /&gt;
En el segundo, consideramos nulo el flujo de masa en los puntos interiores por unidad de tiempo, pues suponemos la tubería perfecta y sin sumideros.&lt;br /&gt;
&lt;br /&gt;
Como la superﬁcie lateral del tubo está aislada, solamente habrá flujo de sustancia en la dirección del eje &amp;lt;math&amp;gt;x&amp;lt;/math&amp;gt;. Si &amp;lt;math&amp;gt;F(x,t)&amp;gt; 0&amp;lt;/math&amp;gt; pensamos que el ﬂujo va hacia la derecha, si &amp;lt;math&amp;gt;F(x,t)&amp;lt; 0&amp;lt;/math&amp;gt;, este va a hacia la izquierda. El ﬂujo de&lt;br /&gt;
calor en un intervalo &amp;lt;math&amp;gt;[x, x + ∆x ] &amp;lt;/math&amp;gt; viene dado dado por:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;F(x,t)A-F(x+\Delta x, t)A&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Con lo que queda &amp;lt;math&amp;gt;A u_t(x,t) \Delta x = F(x,t)A-F(x+\Delta x, t)A&amp;lt;/math&amp;gt;, y al dividir &amp;lt;math&amp;gt;A \Delta x&amp;lt;/math&amp;gt;, nos queda &amp;lt;math&amp;gt;u_t(x,t)= \frac {F(x,t)-F(x+\Delta x, t)}{\Delta x}&amp;lt;/math&amp;gt;. &amp;lt;br /&amp;gt;&lt;br /&gt;
Como &amp;lt;math&amp;gt;\Delta x \rightarrow 0 &amp;lt;/math&amp;gt;, &amp;lt;math&amp;gt;u_t(x,t)= -F_x(x,t)&amp;lt;/math&amp;gt;, y aplicando ley de Fick, &amp;lt;math&amp;gt;u_t(x,t)=-\frac{\partial }{\partial x}(-D u_x(x,t)) = D u_xx(x,t) &amp;lt;/math&amp;gt;.&amp;lt;br /&amp;gt;&lt;br /&gt;
Con lo que resulta una ecuación en derivadas parciales que determina la concentración de sustancia:&lt;br /&gt;
&amp;lt;math&amp;gt;u_t(x,t)- D u_xx(x,t)= 0 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Planteamiento del problema bien propuesto ==&lt;br /&gt;
&lt;br /&gt;
Suponemos que el flujo será nula al haber una tapa en los extremos del tubo, con lo que el problema bien propuesto quedaría::&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\begin{cases}&lt;br /&gt;
u_t(x,t)- D u_{xx}(x,t)= 0 ; x\in (0,5) \\&lt;br /&gt;
u(x,0)=u_0 , x\in (0,5) \\&lt;br /&gt;
u_x(0,t)=0 , u_x(5,t)=0 ; t\geq 0&lt;br /&gt;
\end{cases}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= Resolución numérica =&lt;br /&gt;
Para la resolución de ésta ecuación necesitaremos mínimo tres condiciones, dos de las cuales serán de contorno, y la otra será la condición inicial.Si suponemos &amp;lt;math&amp;gt;u_0(x,0)&amp;lt;/math&amp;gt;, entonces:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; u_0(x,0)=\begin{cases}&lt;br /&gt;
0,  si x\leq 3\\&lt;br /&gt;
3,  si x&amp;gt;3&lt;br /&gt;
\end{cases}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Resolución por el método de las diferencias finitas ==&lt;br /&gt;
En el primer caso particular que estudiaremos, trataremos de obtener una resolución numérica del problema anteriormente planteado, dónde tenemos las fronteras aisladas y las concentraciones iniciales conocidas:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\begin{cases}&lt;br /&gt;
u_t(x,t)- D u_{xx}(x,t)= 0; x\in (0,5), t\geq 0 \\&lt;br /&gt;
u_0(x,0), x\in (0,5) \\&lt;br /&gt;
u_x(0,t)=0, u_x(5,t)=0, t\geq 0&lt;br /&gt;
\end{cases}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
La resolución por el método de las diferencias finitas se basa en expresar el problema continuo a un sistema discreto de ecuaciones diferenciales de primer orden. Particularizando para nuestro caso con las condiciones dadas, el problema planteado sería:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\begin{cases}&lt;br /&gt;
u'_n(t)+\frac{-u_{n-1}(t)+2u_n(t)+u_{n+1}(t)}{h^2} \\&lt;br /&gt;
\frac{u_1(t)-u_-1(t)}{2h} \rightarrow u_1(t)=u_-1(t) \\&lt;br /&gt;
\frac{u_{N+1}(t)-u_{N-1}(t)}{2h} \rightarrow u_{N+1}(t)=u_{N-1}\\&lt;br /&gt;
u_n(0)=u^0(x)&lt;br /&gt;
\end{cases}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Por lo que tenemos un sistema de la forma:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\begin{cases}&lt;br /&gt;
U'(t)+KU(t)=F(t)=0\\&lt;br /&gt;
U(0)=U^0&lt;br /&gt;
\end{cases}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Con &amp;lt;math&amp;gt;N+1&amp;lt;/math&amp;gt; ecuaciones.&lt;br /&gt;
==== Resolución por método del trapecio ====&lt;br /&gt;
Suponiendo que en el instante inicial se verifica  :&amp;lt;math&amp;gt;&lt;br /&gt;
u(x,0)=\left\{\begin{matrix}\\0, x≤3\\3, x&amp;gt;3\end{matrix}\right.&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Si tomamos &amp;lt;math&amp;gt;\triangle t= \triangle x/4&amp;lt;/math&amp;gt; en &amp;lt;math&amp;gt;t\in\ [0,5]&amp;lt;/math&amp;gt;, con &amp;lt;math&amp;gt;\triangle x=0.1&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
El código en MATLAB del método sería:&lt;br /&gt;
&lt;br /&gt;
{{matlab| codigo=&lt;br /&gt;
%Datos&lt;br /&gt;
L=5; %Longitud de varilla&lt;br /&gt;
T=5; %tiempo final&lt;br /&gt;
q=1;&lt;br /&gt;
%Discretización temporal y espacial&lt;br /&gt;
dx=0.1; % Paso en espacio&lt;br /&gt;
N=L/dx; %Número de subintervalos&lt;br /&gt;
x=0:dx:L; % Vector de espacio&lt;br /&gt;
dt=dx/4; % Paso en tiempo&lt;br /&gt;
t=0:dt:T; % Vector de tiempos&lt;br /&gt;
% Matriz de coeficientes. Aproximacion de -q*u_xx&lt;br /&gt;
K=2*diag(ones(1,N+1))-diag(ones(1,N),1)-diag(ones(1,N),-1);&lt;br /&gt;
K(1,2)=-2;&lt;br /&gt;
K(N+1,N)=-2;&lt;br /&gt;
K=q*K/dx^2;&lt;br /&gt;
% Calculamos u0 condición inicial&lt;br /&gt;
u0=[zeros(1,1+N*3/5),3*ones(1,N*2/5)]';&lt;br /&gt;
% F=0 (no la consideramos)&lt;br /&gt;
sol(1,:)=u0'; % Guardamos la solucion&lt;br /&gt;
U=u0; % Inicializacion&lt;br /&gt;
% Calculamos U_n -&amp;gt; U_n+1&lt;br /&gt;
%Aplicamos método trapecio método del trapecio&lt;br /&gt;
for j=1:length(t)-1&lt;br /&gt;
U=(eye(N+1)+(dt*K)/2)\((eye(N+1)-(K*dt)/2)*U);&lt;br /&gt;
sol(j+1,:)= U'; % Guardamos solucion&lt;br /&gt;
end&lt;br /&gt;
%Dibujamos la solucion&lt;br /&gt;
[xx,tt]=meshgrid(x,t);&lt;br /&gt;
surf(xx,tt,sol);&lt;br /&gt;
}}&lt;br /&gt;
[[Archivo:nur.jpg|500px|thumb|centro|Gráfica concentración / espacio-tiempo. Resolución por el método del trapecio.]]&lt;br /&gt;
&lt;br /&gt;
==== Resolución por método de Euler explícito ====&lt;br /&gt;
{{matlab| codigo=&lt;br /&gt;
%Datos&lt;br /&gt;
L=5; %Longitud de varilla&lt;br /&gt;
T=5; %tiempo final&lt;br /&gt;
q=1;&lt;br /&gt;
%Discretización temporal y espacial&lt;br /&gt;
dx=0.1; % Paso en espacio&lt;br /&gt;
N=L/dx; %Número de subintervalos&lt;br /&gt;
x=0:dx:L; % Vector de espacio&lt;br /&gt;
dt=dx/20; % Paso en tiempo&lt;br /&gt;
t=0:dt:T; % Vector de tiempos&lt;br /&gt;
% Matriz de coeficientes. Aproximacion de -q*u_xx&lt;br /&gt;
K=2*diag(ones(1,N+1))-diag(ones(1,N),1)-diag(ones(1,N),-1);&lt;br /&gt;
K(1,2)=-2;&lt;br /&gt;
K(N+1,N)=-2;&lt;br /&gt;
K=q*K/dx^2;&lt;br /&gt;
% Calculamos u0 condición inicial&lt;br /&gt;
u0=[zeros(1,1+N*3/5),3*ones(1,N*2/5)]';&lt;br /&gt;
% F=0 (no la consideramos)&lt;br /&gt;
sol(1,:)=u0'; % Guardamos la solucion&lt;br /&gt;
U=u0; % Inicializacion&lt;br /&gt;
% Calculamos U_n -&amp;gt; U_n+1&lt;br /&gt;
%Aplicamos método Euler explícito&lt;br /&gt;
for j=1:length(t)-1 &lt;br /&gt;
k1=-K*U; % Calculamos k1=h*f(tn,yn)&lt;br /&gt;
k2=-K*(U+dt*k1); % Calculamos k2=h*f(tn+h/2,yn+1/2*k1)&lt;br /&gt;
% Meto los datos en el vector&lt;br /&gt;
U=U+(dt/2)*(k1+k2);&lt;br /&gt;
sol(j+1,:)= U'; % Guardamos solucion&lt;br /&gt;
end&lt;br /&gt;
%Dibujamos la solucion&lt;br /&gt;
[xx,tt]=meshgrid(x,t);&lt;br /&gt;
surf(xx,tt,sol);&lt;br /&gt;
}}&lt;br /&gt;
[[Archivo:mig.jpg|500px|thumb|centro|Gráfica concentración / espacio-tiempo. Resolución por el método de Euler explícito.]]&lt;br /&gt;
&lt;br /&gt;
==== Resolución por método de Euler implícito ====&lt;br /&gt;
{{matlab| codigo=&lt;br /&gt;
%Datos&lt;br /&gt;
L=5; %Longitud de varilla&lt;br /&gt;
T=5;&lt;br /&gt;
q=1;&lt;br /&gt;
%Discretización temporal y espacial&lt;br /&gt;
dx=0.1; % Paso en espacio&lt;br /&gt;
N=L/dx; %Número de subintervalos&lt;br /&gt;
h=L/N;&lt;br /&gt;
x=0:h:L; % Vector de espacio&lt;br /&gt;
dt=h/20; % Paso en tiempo&lt;br /&gt;
t=0:dt:T; % Vector de tiempos&lt;br /&gt;
% Matriz de coeficientes. Aproximacion de -q*u_xx&lt;br /&gt;
K=2*diag(ones(1,N+1))-diag(ones(1,N),1)-diag(ones(1,N),-1);&lt;br /&gt;
K(1,2)=-2;&lt;br /&gt;
K(N+1,N)=-2;&lt;br /&gt;
K=q*K/h^2;&lt;br /&gt;
% Calculamos u0 condición inicial&lt;br /&gt;
u0=[zeros(1,1+N*3/5),3*ones(1,N*2/5)]';&lt;br /&gt;
% F=0 (no la consideramos)&lt;br /&gt;
sol(1,:)=u0'; % Guardamos la solucion&lt;br /&gt;
U=u0; % Inicializacion&lt;br /&gt;
% Calculamos U_n -&amp;gt; U_n+1&lt;br /&gt;
% Aplicamos método implícito&lt;br /&gt;
for j=1:length(t)-1 &lt;br /&gt;
U=U-dt*K*U; &lt;br /&gt;
sol(j+1,:)= U'; % Guardamos solucion&lt;br /&gt;
end&lt;br /&gt;
%Dibujamos la solucion&lt;br /&gt;
[xx,tt]=meshgrid(x,t);&lt;br /&gt;
surf(xx,tt,sol);&lt;br /&gt;
}}&lt;br /&gt;
[[Archivo:migap.jpg|500px|thumb|centro|Gráfica concentración / espacio-tiempo. Resolución por el método de Euler implícito.]]&lt;br /&gt;
&lt;br /&gt;
==== Resolución por método de Euler modificado ====&lt;br /&gt;
{{matlab| codigo=&lt;br /&gt;
%Datos&lt;br /&gt;
L=5; %Longitud de varilla&lt;br /&gt;
T=5;&lt;br /&gt;
q=1;&lt;br /&gt;
%Discretización temporal y espacial&lt;br /&gt;
dx=0.1; % Paso en espacio&lt;br /&gt;
N=L/dx; %Número de subintervalos&lt;br /&gt;
h=L/N;&lt;br /&gt;
x=0:h:L; % Vector de espacio&lt;br /&gt;
dt=h/20; % Paso en tiempo&lt;br /&gt;
t=0:dt:T; % Vector de tiempos&lt;br /&gt;
% Matriz de coeficientes. Aproximacion de -q*u_xx&lt;br /&gt;
K=2*diag(ones(1,N+1))-diag(ones(1,N),1)-diag(ones(1,N),-1);&lt;br /&gt;
K(1,2)=-2;&lt;br /&gt;
K(N+1,N)=-2;&lt;br /&gt;
K=q*K/h^2;&lt;br /&gt;
% Calculamos u0 condición inicial&lt;br /&gt;
u0=[zeros(1,1+N*3/5),3*ones(1,N*2/5)]';&lt;br /&gt;
% F=0 (no la consideramos)&lt;br /&gt;
sol(1,:)=u0'; % Guardamos la solucion&lt;br /&gt;
U=u0; % Inicializacion&lt;br /&gt;
% Calculamos U_n -&amp;gt; U_n+1&lt;br /&gt;
for j=1:length(t)-1 &lt;br /&gt;
k1=-K*U; % Calculamos k1=h*f(tn,yn)&lt;br /&gt;
k2=-K*(U+dt*k1); % Calculamos k2=h*f(tn+h/2,yn+1/2*k1)&lt;br /&gt;
% Meto los datos en el vector&lt;br /&gt;
U=U+(dt/2)*(k1+k2);&lt;br /&gt;
sol(j+1,:)= U'; % Guardamos solucion&lt;br /&gt;
end&lt;br /&gt;
%Dibujamos la solucion&lt;br /&gt;
[xx,tt]=meshgrid(x,t);&lt;br /&gt;
surf(xx,tt,sol);&lt;br /&gt;
}}&lt;br /&gt;
[[Archivo: mig.jpg|500px|thumb|centro|Gráfica concentración / espacio-tiempo. Resolución por el método de Euler modificado.]]&lt;br /&gt;
&lt;br /&gt;
== Conservación de la masa total de contaminante ==&lt;br /&gt;
A continuación demostraremos que la masa total de contaminante en el tubo se conserva a lo largo del tiempo, que se puede deducir a partir de la ecuación sin tener que resolverla. Integramos la ecuación y debido a las condiciones de frontera:&lt;br /&gt;
&amp;lt;math&amp;gt;\frac d {dt} \int_0^5 u(x,t)\,dx= \int_0^5 u_{xx}(x,t)\,dx= u_x(x,t)|_0^5=0&amp;lt;/math&amp;gt;&lt;br /&gt;
{{matlab| codigo=&lt;br /&gt;
%Datos&lt;br /&gt;
L=5; %Longitud de varilla&lt;br /&gt;
T=5;&lt;br /&gt;
q=1;&lt;br /&gt;
%Discretización temporal y espacial&lt;br /&gt;
N=500; %Número de subintervalos&lt;br /&gt;
h=L/N;&lt;br /&gt;
x=0:h:L; % Vector de espacio&lt;br /&gt;
dt=h/4; % Paso en tiempo&lt;br /&gt;
t=0:dt:T; % Vector de tiempos&lt;br /&gt;
% Matriz de coeficientes. Aproximacion de -q*u_xx&lt;br /&gt;
K=2*diag(ones(1,N+1))-diag(ones(1,N),1)-diag(ones(1,N),-1);&lt;br /&gt;
K(1,2)=-2;&lt;br /&gt;
K(N+1,N)=-2;&lt;br /&gt;
K=q*K/h^2;&lt;br /&gt;
% Calculamos u0 condición inicial&lt;br /&gt;
u0=[zeros(1,1+N*3/5),3*ones(1,N*2/5)]';&lt;br /&gt;
% F=0 (no la consideramos)&lt;br /&gt;
sol(1,:)=u0'; % Guardamos la solucion&lt;br /&gt;
U=u0; % Inicializacion&lt;br /&gt;
% Calculamos U_n -&amp;gt; U_n+1&lt;br /&gt;
for j=1:length(t)-1 &lt;br /&gt;
U=(eye(N+1)+dt*K)\(U+dt*F); &lt;br /&gt;
sol(j+1,:)= U'; % Guardamos solucion&lt;br /&gt;
end&lt;br /&gt;
% Calculamos el area de la funcion en cada tiempo (area = cantidad de contaminante)&lt;br /&gt;
areas=zeros(1,length(t));&lt;br /&gt;
for i=1:length(t)&lt;br /&gt;
f=sol(i,:);&lt;br /&gt;
w=trapz(x,f);&lt;br /&gt;
area(i)=w;&lt;br /&gt;
end&lt;br /&gt;
%Dibujamos&lt;br /&gt;
plot(t,area)&lt;br /&gt;
xlabel('Tiempo')&lt;br /&gt;
ylabel('Cantidad de contaminante')&lt;br /&gt;
}}&lt;br /&gt;
[[Archivo:aleeex.jpg|500px|thumb|centro|Conservación masa total de contaminante]]&lt;br /&gt;
[[Archivo:gime.jpg|500px|thumb|centro|Conservación masa total de contaminante]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Concentración a lo largo del tiempo==&lt;br /&gt;
La concentración de la sustancia contaminante en la varilla varía con el tiempo, pero en un cierto momento esta concentración se va homogeneizando, y deja de variar, entrando en un estado estacionario::&lt;br /&gt;
&amp;lt;math&amp;gt; u_t(x,t)- D*u_{xx}(x,t)=0 &amp;lt;/math&amp;gt; :    &lt;br /&gt;
&amp;lt;math&amp;gt; u_t(x,t)=0 \rightarrow D*u_{xx}(x,t)=0 &amp;lt;/math&amp;gt; :&lt;br /&gt;
&amp;lt;math&amp;gt; u=c_1*x+c_2 &amp;lt;/math&amp;gt; &lt;br /&gt;
Utizando Matlab comprobaremos que &amp;lt;math&amp;gt; c_1=0 &amp;lt;/math&amp;gt; &amp;lt;math&amp;gt; c_2=1.17 &amp;lt;/math&amp;gt;&lt;br /&gt;
Para tiempos grandes la concentración se estabiliza en torno a 1.17 en toda la varilla, de forma que la solución se asemejará a una función lineal constante.&lt;br /&gt;
&lt;br /&gt;
{{matlab| codigo=&lt;br /&gt;
%Datos&lt;br /&gt;
L=5; %Longitud de varilla&lt;br /&gt;
T=50;&lt;br /&gt;
q=1;&lt;br /&gt;
%Discretización temporal y espacial&lt;br /&gt;
dx=0.1; % Paso en espacio&lt;br /&gt;
N=L/dx; %Número de subintervalos&lt;br /&gt;
h=L/N;&lt;br /&gt;
x=0:h:L; % Vector de espacio&lt;br /&gt;
dt=h/4; % Paso en tiempo&lt;br /&gt;
t=0:dt:T; % Vector de tiempos&lt;br /&gt;
% Matriz de coeficientes. Aproximacion de -q*u_xx&lt;br /&gt;
K=2*diag(ones(1,N+1))-diag(ones(1,N),1)-diag(ones(1,N),-1);&lt;br /&gt;
K(1,2)=-2;&lt;br /&gt;
K(N+1,N)=-2;&lt;br /&gt;
K=q*K/h^2;&lt;br /&gt;
% Calculamos u0 condición inicial&lt;br /&gt;
u0=[zeros(1,1+N*3/5),3*ones(1,N*2/5)]';&lt;br /&gt;
% F=0 (no la consideramos)&lt;br /&gt;
sol(1,:)=u0'; % Guardamos la solucion&lt;br /&gt;
U=u0; % Inicializacion&lt;br /&gt;
% Calculamos U_n -&amp;gt; U_n+1&lt;br /&gt;
%Aplicamos método trapecio método del trapecio&lt;br /&gt;
for j=1:length(t)-1&lt;br /&gt;
U=(eye(N+1)+(dt*K)/2)\((eye(N+1)-(K*dt)/2)*U);&lt;br /&gt;
sol(j+1,:)= U'; % Guardamos solucion&lt;br /&gt;
end&lt;br /&gt;
%Solución estacionaria&lt;br /&gt;
a=sol(length(t),:);&lt;br /&gt;
b=sol(1,:);&lt;br /&gt;
c=sol((length(t)-1)/50+1,:);&lt;br /&gt;
d=sol((length(t)-1)*2/50+1,:);&lt;br /&gt;
e=sol((length(t)-1)*10/50+1,:);&lt;br /&gt;
hold on&lt;br /&gt;
plot(x,a,'xk','linewidth',2);&lt;br /&gt;
plot(x,b,'-m','linewidth',1);&lt;br /&gt;
plot(x,c,'-g','linewidth',1);&lt;br /&gt;
plot(x,d,'-y','linewidth',1);&lt;br /&gt;
plot(x,e,'-b','linewidth',1);&lt;br /&gt;
legend('u(50s)','u(0s)','u(1s)','u(2s)','u(10s)');&lt;br /&gt;
xlabel('Posición en la varilla')&lt;br /&gt;
ylabel('Concentracion')&lt;br /&gt;
hold off&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Soluciones(t).jpg|500px|thumb|centro|Soluciones a lo largo del tiempo]]&lt;br /&gt;
&lt;br /&gt;
La distancia entre la solución estacionaria y las soluciones para los siguientes instantes: 0s, 1s, 2s y 10s; se puede apreciar en la imagen anterior. &lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
Una vez analizado los datos, se demuestra que la sustancia contaminante se estabiliza en t=9.98s, con un error del 5%.&lt;br /&gt;
&lt;br /&gt;
En el caso de que consideremos Δx'=Δx/10,el tiempo en el que se estabiliza la cantidad de sustancia contaminante será t=10.05s, dato que será más preciso debido a que el paso realizado en el programa es menor.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Nueva condición de frontera==&lt;br /&gt;
&lt;br /&gt;
Si colocamos un limpiador, que elimina la sustancia contaminante, en el extremo izquierdo de la varilla, varían las condiciones de contorno del problema. En este caso, en el extremo izquierdo, la condición inicial será de tipo Dirichlet ya que se esta variación esta provocada por un mecanismo físico externo que actúa sobre el extremo. &amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;math&amp;gt;\begin{cases}&lt;br /&gt;
u_t(x,t)- D u_{xx}(x,t)= 0 ; x\in (0,5) \\&lt;br /&gt;
u(x,0)=u_0 , x\in (0,5) \\&lt;br /&gt;
u(0,t)=0 , u_x(5,t)=0 ; t\geq 0&lt;br /&gt;
\end{cases}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Dadas las nuevas condiciones resolvemos el problema por el método de diferencias finitas.&lt;/div&gt;</summary>
		<author><name>Karlo André</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Difusi%C3%B3n_de_una_sustancia_contaminante_(Grupo_10)&amp;diff=12699</id>
		<title>Difusión de una sustancia contaminante (Grupo 10)</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Difusi%C3%B3n_de_una_sustancia_contaminante_(Grupo_10)&amp;diff=12699"/>
				<updated>2014-05-19T13:22:09Z</updated>
		
		<summary type="html">&lt;p&gt;Karlo André: /* Nueva condición de frontera */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;''''''Texto en negrita''''''[[Archivo:nuriat.png|200px|thumb|right|Tubo con sustancia contaminante]]&lt;br /&gt;
La difusión implica un movimiento espontáneo y desordenado de moléculas individuales y, especialmente, nos interesa la difusión de moléculas de una sustancia disuelta en otra.&lt;br /&gt;
&lt;br /&gt;
La difusión de una sustancia puede considerarse análoga al flujo de calor, y la ley de Fick establece que el ritmo de difusión por unidad de superficie, en dirección perpendicular a ésta, es proporcional al gradiente de la concentración de esa sustancia en esa dirección. La concentración es la masa de la sustancia por unidad de volumen, y el gradiente de concentración es la variación de concentración por unidad de distancia.&lt;br /&gt;
&lt;br /&gt;
Para determinar como se distribuye la concentración de una sustancia contaminante tomaremos como ejemplo un tubo largo compuesto por dos sustancias de las cuáles una de ellas es contaminante.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
= Simplificación del problema =&lt;br /&gt;
&lt;br /&gt;
Para que este problema resulte más sencillo aplicaremos una serie de condiciones, facilitando el cálculo del mismo.&lt;br /&gt;
&lt;br /&gt;
En primer lugar denotaremos su concentración &amp;lt;math&amp;gt; u &amp;lt;/math&amp;gt;, concentración de contaminante en cada posición del tubo y constante en cada sección, medida en &amp;lt;math&amp;gt; \frac{mol}{m^2*s} &amp;lt;/math&amp;gt;. &lt;br /&gt;
&lt;br /&gt;
Supondremos que el tubo mide L=5 m, ocupando el intervalo &amp;lt;math&amp;gt; x \in (0,L) &amp;lt;/math&amp;gt;, y que la concentración es la misma en cualquier punto de la sección transversal del tubo. Por tanto, la concentración dependerá unicamente de dos variables &amp;lt;math&amp;gt; u = u(x,t) &amp;lt;/math&amp;gt;. En los extremos se ha colocado un aislante que hace que el flujo de contaminante al exterior del tubo sea nulo. Además, consideraremos la simplificación de que se trata de un tubo aislado por sus laterales, pero abierto por las bases del cilindro.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Ley de conservación de masa ==&lt;br /&gt;
&lt;br /&gt;
Tras una serie de experimentos realizados por Lavoisier, se pusieron de manifiesto que si tenemos en cuenta todas las sustancias que forman parte en una reacción química y todos los productos formados, nunca varía la masa. Esta ley exige que no haya una generación espontánea de materia. Es decir, en la región del espacio estudiada, no existe entrada o salida por un punto cualquiera (frontera o interior), la masa en esta región se mantiene constante. Esta es la ley de la conservación de la masa, que podemos enunciarla, pues, de la siguiente manera: &amp;lt;br /&amp;gt;&lt;br /&gt;
''&amp;quot;En toda reacción química la masa se conserva, esto es, la masa total de los reactivos es igual a la masa total de los productos&amp;quot;'' &amp;lt;br /&amp;gt;&lt;br /&gt;
La ley de conservación de masas exige que no haya una generación espontánea de materia. Es decir, en la región del espacio estudiada, no existe entrada o salida por un punto cualquiera (frontera o interior), la masa en esta región se mantiene constante.&lt;br /&gt;
&lt;br /&gt;
Esta suposición, en términos de variación de masa, puede quedar determinada como:&lt;br /&gt;
&lt;br /&gt;
''Variación de la masa en el tiempo = flujo de masa a través de la frontera por unidad de tiempo + flujo de masa generada en el interior por unidad de tiempo. ''&lt;br /&gt;
&lt;br /&gt;
== Ley de Fick ==&lt;br /&gt;
Se trata de una ley cuantitativa en forma diferencial que describe la difusión de materia o energía en un medio en el que inicialmente existe equilibrio químico o físico. Esta ley se trata de una generalización de los fenómenos descritos por la '''Ley de Fourier''', ya que esta es una consideración concreta del calor.&lt;br /&gt;
&lt;br /&gt;
La ley de Fick anuncia que en el caso de existir diferencias de concentración en cualquier especie, el paso de estas especies se llevará a cabo desde las regiones con mayor concentración a las de menor. Formulado matemáticamente:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;F(x,t)=-D\frac{\partial u}{\partial x}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Donde &amp;lt;math&amp;gt;F&amp;lt;/math&amp;gt; es el flujo de la sustancia y &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; el coeficiente de difusión, que representa la facilidad en que un soluto particular se mueve por un disolvente determinado.&lt;br /&gt;
&lt;br /&gt;
La ley de Fick establece que el flujo de difusión del contaminante es proporcional a la variación de concentración:&lt;br /&gt;
&amp;lt;math&amp;gt; F(x,t)=-D\frac{\partial u}{\partial x} &amp;lt;/math&amp;gt;&lt;br /&gt;
donde D es el coeficiente de difusión (medido en &amp;lt;math&amp;gt; \frac{m^2}{s} &amp;lt;/math&amp;gt;), que depende de las propiedades físicas de los compuestos, y que se supone constante D=1.&lt;br /&gt;
&lt;br /&gt;
= Modelización de la ecuación diferencial =&lt;br /&gt;
&lt;br /&gt;
Aplicando el principio de conservación de la masa y la ley de Fourier, definimos la variable &amp;lt;math&amp;gt; u(x,t)&amp;lt;/math&amp;gt; en unidades de sustancia por área, es decir, concentración por superficie del tubo.&lt;br /&gt;
&lt;br /&gt;
Consideramos &amp;lt;math&amp;gt; A &amp;lt;/math&amp;gt; como variable superficie, y tomamos un pequeño trozo, definido por &amp;lt;math&amp;gt;\Delta x&amp;lt;/math&amp;gt;. Entonces, para obtener la variación de la masa en el tiempo:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; A u(x,t) \Delta x &amp;lt;/math&amp;gt; &lt;br /&gt;
&lt;br /&gt;
Y derivando en el tiempo:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; A u_t(x,t) \Delta x &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
obtenemos el primer término de la igualdad anteriormente enunciada.&lt;br /&gt;
&lt;br /&gt;
En el segundo, consideramos nulo el flujo de masa en los puntos interiores por unidad de tiempo, pues suponemos la tubería perfecta y sin sumideros.&lt;br /&gt;
&lt;br /&gt;
Como la superﬁcie lateral del tubo está aislada, solamente habrá flujo de sustancia en la dirección del eje &amp;lt;math&amp;gt;x&amp;lt;/math&amp;gt;. Si &amp;lt;math&amp;gt;F(x,t)&amp;gt; 0&amp;lt;/math&amp;gt; pensamos que el ﬂujo va hacia la derecha, si &amp;lt;math&amp;gt;F(x,t)&amp;lt; 0&amp;lt;/math&amp;gt;, este va a hacia la izquierda. El ﬂujo de&lt;br /&gt;
calor en un intervalo &amp;lt;math&amp;gt;[x, x + ∆x ] &amp;lt;/math&amp;gt; viene dado dado por:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;F(x,t)A-F(x+\Delta x, t)A&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Con lo que queda &amp;lt;math&amp;gt;A u_t(x,t) \Delta x = F(x,t)A-F(x+\Delta x, t)A&amp;lt;/math&amp;gt;, y al dividir &amp;lt;math&amp;gt;A \Delta x&amp;lt;/math&amp;gt;, nos queda &amp;lt;math&amp;gt;u_t(x,t)= \frac {F(x,t)-F(x+\Delta x, t)}{\Delta x}&amp;lt;/math&amp;gt;. &amp;lt;br /&amp;gt;&lt;br /&gt;
Como &amp;lt;math&amp;gt;\Delta x \rightarrow 0 &amp;lt;/math&amp;gt;, &amp;lt;math&amp;gt;u_t(x,t)= -F_x(x,t)&amp;lt;/math&amp;gt;, y aplicando ley de Fick, &amp;lt;math&amp;gt;u_t(x,t)=-\frac{\partial }{\partial x}(-D u_x(x,t)) = D u_xx(x,t) &amp;lt;/math&amp;gt;.&amp;lt;br /&amp;gt;&lt;br /&gt;
Con lo que resulta una ecuación en derivadas parciales que determina la concentración de sustancia:&lt;br /&gt;
&amp;lt;math&amp;gt;u_t(x,t)- D u_xx(x,t)= 0 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Planteamiento del problema bien propuesto ==&lt;br /&gt;
&lt;br /&gt;
Suponemos que el flujo será nula al haber una tapa en los extremos del tubo, con lo que el problema bien propuesto quedaría::&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\begin{cases}&lt;br /&gt;
u_t(x,t)- D u_{xx}(x,t)= 0 ; x\in (0,5) \\&lt;br /&gt;
u(x,0)=u_0 , x\in (0,5) \\&lt;br /&gt;
u_x(0,t)=0 , u_x(5,t)=0 ; t\geq 0&lt;br /&gt;
\end{cases}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= Resolución numérica =&lt;br /&gt;
Para la resolución de ésta ecuación necesitaremos mínimo tres condiciones, dos de las cuales serán de contorno, y la otra será la condición inicial.Si suponemos &amp;lt;math&amp;gt;u_0(x,0)&amp;lt;/math&amp;gt;, entonces:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; u_0(x,0)=\begin{cases}&lt;br /&gt;
0,  si x\leq 3\\&lt;br /&gt;
3,  si x&amp;gt;3&lt;br /&gt;
\end{cases}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Resolución por el método de las diferencias finitas ==&lt;br /&gt;
En el primer caso particular que estudiaremos, trataremos de obtener una resolución numérica del problema anteriormente planteado, dónde tenemos las fronteras aisladas y las concentraciones iniciales conocidas:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\begin{cases}&lt;br /&gt;
u_t(x,t)- D u_{xx}(x,t)= 0; x\in (0,5), t\geq 0 \\&lt;br /&gt;
u_0(x,0), x\in (0,5) \\&lt;br /&gt;
u_x(0,t)=0, u_x(5,t)=0, t\geq 0&lt;br /&gt;
\end{cases}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
La resolución por el método de las diferencias finitas se basa en expresar el problema continuo a un sistema discreto de ecuaciones diferenciales de primer orden. Particularizando para nuestro caso con las condiciones dadas, el problema planteado sería:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\begin{cases}&lt;br /&gt;
u'_n(t)+\frac{-u_{n-1}(t)+2u_n(t)+u_{n+1}(t)}{h^2} \\&lt;br /&gt;
\frac{u_1(t)-u_-1(t)}{2h} \rightarrow u_1(t)=u_-1(t) \\&lt;br /&gt;
\frac{u_{N+1}(t)-u_{N-1}(t)}{2h} \rightarrow u_{N+1}(t)=u_{N-1}\\&lt;br /&gt;
u_n(0)=u^0(x)&lt;br /&gt;
\end{cases}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Por lo que tenemos un sistema de la forma:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\begin{cases}&lt;br /&gt;
U'(t)+KU(t)=F(t)=0\\&lt;br /&gt;
U(0)=U^0&lt;br /&gt;
\end{cases}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Con &amp;lt;math&amp;gt;N+1&amp;lt;/math&amp;gt; ecuaciones.&lt;br /&gt;
==== Resolución por método del trapecio ====&lt;br /&gt;
Suponiendo que en el instante inicial se verifica  :&amp;lt;math&amp;gt;&lt;br /&gt;
u(x,0)=\left\{\begin{matrix}\\0, x≤3\\3, x&amp;gt;3\end{matrix}\right.&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Si tomamos &amp;lt;math&amp;gt;\triangle t= \triangle x/4&amp;lt;/math&amp;gt; en &amp;lt;math&amp;gt;t\in\ [0,5]&amp;lt;/math&amp;gt;, con &amp;lt;math&amp;gt;\triangle x=0.1&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
El código en MATLAB del método sería:&lt;br /&gt;
&lt;br /&gt;
{{matlab| codigo=&lt;br /&gt;
%Datos&lt;br /&gt;
L=5; %Longitud de varilla&lt;br /&gt;
T=5; %tiempo final&lt;br /&gt;
q=1;&lt;br /&gt;
%Discretización temporal y espacial&lt;br /&gt;
dx=0.1; % Paso en espacio&lt;br /&gt;
N=L/dx; %Número de subintervalos&lt;br /&gt;
x=dx:dx:L-dx; % Vector de espacio&lt;br /&gt;
dt=dx/4; % Paso en tiempo&lt;br /&gt;
t=0:dt:T; % Vector de tiempos&lt;br /&gt;
% Matriz de coeficientes. Aproximacion de -q*u_xx&lt;br /&gt;
K=2*diag(ones(1,N+1))-diag(ones(1,N),1)-diag(ones(1,N),-1);&lt;br /&gt;
K(1,2)=-2;&lt;br /&gt;
K(N+1,N)=-2;&lt;br /&gt;
K=q*K/dx^2;&lt;br /&gt;
% Calculamos u0 condición inicial&lt;br /&gt;
u0=[zeros(1,1+N*3/5),3*ones(1,N*2/5)]';&lt;br /&gt;
% F=0 (no la consideramos)&lt;br /&gt;
sol(1,:)=u0'; % Guardamos la solucion&lt;br /&gt;
U=u0; % Inicializacion&lt;br /&gt;
% Calculamos U_n -&amp;gt; U_n+1&lt;br /&gt;
%Aplicamos método trapecio método del trapecio&lt;br /&gt;
for j=1:length(t)-1&lt;br /&gt;
U=(eye(N+1)+(dt*K)/2)\((eye(N+1)-(K*dt)/2)*U);&lt;br /&gt;
sol(j+1,:)= U'; % Guardamos solucion&lt;br /&gt;
end&lt;br /&gt;
%Dibujamos la solucion&lt;br /&gt;
[xx,tt]=meshgrid(x,t);&lt;br /&gt;
surf(xx,tt,sol);&lt;br /&gt;
}}&lt;br /&gt;
[[Archivo:nur.jpg|500px|thumb|centro|Gráfica concentración / espacio-tiempo. Resolución por el método del trapecio.]]&lt;br /&gt;
&lt;br /&gt;
==== Resolución por método de Euler explícito ====&lt;br /&gt;
{{matlab| codigo=&lt;br /&gt;
%Datos&lt;br /&gt;
L=5; %Longitud de varilla&lt;br /&gt;
T=5; %tiempo final&lt;br /&gt;
q=1;&lt;br /&gt;
%Discretización temporal y espacial&lt;br /&gt;
dx=0.1; % Paso en espacio&lt;br /&gt;
N=L/dx; %Número de subintervalos&lt;br /&gt;
x=0:dx:L; % Vector de espacio&lt;br /&gt;
dt=dx/20; % Paso en tiempo&lt;br /&gt;
t=0:dt:T; % Vector de tiempos&lt;br /&gt;
% Matriz de coeficientes. Aproximacion de -q*u_xx&lt;br /&gt;
K=2*diag(ones(1,N+1))-diag(ones(1,N),1)-diag(ones(1,N),-1);&lt;br /&gt;
K(1,2)=-2;&lt;br /&gt;
K(N+1,N)=-2;&lt;br /&gt;
K=q*K/dx^2;&lt;br /&gt;
% Calculamos u0 condición inicial&lt;br /&gt;
u0=[zeros(1,1+N*3/5),3*ones(1,N*2/5)]';&lt;br /&gt;
% F=0 (no la consideramos)&lt;br /&gt;
sol(1,:)=u0'; % Guardamos la solucion&lt;br /&gt;
U=u0; % Inicializacion&lt;br /&gt;
% Calculamos U_n -&amp;gt; U_n+1&lt;br /&gt;
%Aplicamos método Euler explícito&lt;br /&gt;
for j=1:length(t)-1 &lt;br /&gt;
k1=-K*U; % Calculamos k1=h*f(tn,yn)&lt;br /&gt;
k2=-K*(U+dt*k1); % Calculamos k2=h*f(tn+h/2,yn+1/2*k1)&lt;br /&gt;
% Meto los datos en el vector&lt;br /&gt;
U=U+(dt/2)*(k1+k2);&lt;br /&gt;
sol(j+1,:)= U'; % Guardamos solucion&lt;br /&gt;
end&lt;br /&gt;
%Dibujamos la solucion&lt;br /&gt;
[xx,tt]=meshgrid(x,t);&lt;br /&gt;
surf(xx,tt,sol);&lt;br /&gt;
}}&lt;br /&gt;
[[Archivo:mig.jpg|500px|thumb|centro|Gráfica concentración / espacio-tiempo. Resolución por el método de Euler explícito.]]&lt;br /&gt;
&lt;br /&gt;
==== Resolución por método de Euler implícito ====&lt;br /&gt;
{{matlab| codigo=&lt;br /&gt;
%Datos&lt;br /&gt;
L=5; %Longitud de varilla&lt;br /&gt;
T=5;&lt;br /&gt;
q=1;&lt;br /&gt;
%Discretización temporal y espacial&lt;br /&gt;
dx=0.1; % Paso en espacio&lt;br /&gt;
N=L/dx; %Número de subintervalos&lt;br /&gt;
h=L/N;&lt;br /&gt;
x=0:h:L; % Vector de espacio&lt;br /&gt;
dt=h/20; % Paso en tiempo&lt;br /&gt;
t=0:dt:T; % Vector de tiempos&lt;br /&gt;
% Matriz de coeficientes. Aproximacion de -q*u_xx&lt;br /&gt;
K=2*diag(ones(1,N+1))-diag(ones(1,N),1)-diag(ones(1,N),-1);&lt;br /&gt;
K(1,2)=-2;&lt;br /&gt;
K(N+1,N)=-2;&lt;br /&gt;
K=q*K/h^2;&lt;br /&gt;
% Calculamos u0 condición inicial&lt;br /&gt;
u0=[zeros(1,1+N*3/5),3*ones(1,N*2/5)]';&lt;br /&gt;
% F=0 (no la consideramos)&lt;br /&gt;
sol(1,:)=u0'; % Guardamos la solucion&lt;br /&gt;
U=u0; % Inicializacion&lt;br /&gt;
% Calculamos U_n -&amp;gt; U_n+1&lt;br /&gt;
% Aplicamos método implícito&lt;br /&gt;
for j=1:length(t)-1 &lt;br /&gt;
U=U-dt*K*U; &lt;br /&gt;
sol(j+1,:)= U'; % Guardamos solucion&lt;br /&gt;
end&lt;br /&gt;
%Dibujamos la solucion&lt;br /&gt;
[xx,tt]=meshgrid(x,t);&lt;br /&gt;
surf(xx,tt,sol);&lt;br /&gt;
}}&lt;br /&gt;
[[Archivo:migap.jpg|500px|thumb|centro|Gráfica concentración / espacio-tiempo. Resolución por el método de Euler implícito.]]&lt;br /&gt;
&lt;br /&gt;
==== Resolución por método de Euler modificado ====&lt;br /&gt;
{{matlab| codigo=&lt;br /&gt;
%Datos&lt;br /&gt;
L=5; %Longitud de varilla&lt;br /&gt;
T=5;&lt;br /&gt;
q=1;&lt;br /&gt;
%Discretización temporal y espacial&lt;br /&gt;
dx=0.1; % Paso en espacio&lt;br /&gt;
N=L/dx; %Número de subintervalos&lt;br /&gt;
h=L/N;&lt;br /&gt;
x=0:h:L; % Vector de espacio&lt;br /&gt;
dt=h/20; % Paso en tiempo&lt;br /&gt;
t=0:dt:T; % Vector de tiempos&lt;br /&gt;
% Matriz de coeficientes. Aproximacion de -q*u_xx&lt;br /&gt;
K=2*diag(ones(1,N+1))-diag(ones(1,N),1)-diag(ones(1,N),-1);&lt;br /&gt;
K(1,2)=-2;&lt;br /&gt;
K(N+1,N)=-2;&lt;br /&gt;
K=q*K/h^2;&lt;br /&gt;
% Calculamos u0 condición inicial&lt;br /&gt;
u0=[zeros(1,1+N*3/5),3*ones(1,N*2/5)]';&lt;br /&gt;
% F=0 (no la consideramos)&lt;br /&gt;
sol(1,:)=u0'; % Guardamos la solucion&lt;br /&gt;
U=u0; % Inicializacion&lt;br /&gt;
% Calculamos U_n -&amp;gt; U_n+1&lt;br /&gt;
for j=1:length(t)-1 &lt;br /&gt;
k1=-K*U; % Calculamos k1=h*f(tn,yn)&lt;br /&gt;
k2=-K*(U+dt*k1); % Calculamos k2=h*f(tn+h/2,yn+1/2*k1)&lt;br /&gt;
% Meto los datos en el vector&lt;br /&gt;
U=U+(dt/2)*(k1+k2);&lt;br /&gt;
sol(j+1,:)= U'; % Guardamos solucion&lt;br /&gt;
end&lt;br /&gt;
%Dibujamos la solucion&lt;br /&gt;
[xx,tt]=meshgrid(x,t);&lt;br /&gt;
surf(xx,tt,sol);&lt;br /&gt;
}}&lt;br /&gt;
[[Archivo: mig.jpg|500px|thumb|centro|Gráfica concentración / espacio-tiempo. Resolución por el método de Euler modificado.]]&lt;br /&gt;
&lt;br /&gt;
== Conservación de la masa total de contaminante ==&lt;br /&gt;
A continuación demostraremos que la masa total de contaminante en el tubo se conserva a lo largo del tiempo, que se puede deducir a partir de la ecuación sin tener que resolverla. Integramos la ecuación y debido a las condiciones de frontera:&lt;br /&gt;
&amp;lt;math&amp;gt;\frac d {dt} \int_0^5 u(x,t)\,dx= \int_0^5 u_{xx}(x,t)\,dx= u_x(x,t)|_0^5=0&amp;lt;/math&amp;gt;&lt;br /&gt;
{{matlab| codigo=&lt;br /&gt;
%Datos&lt;br /&gt;
L=5; %Longitud de varilla&lt;br /&gt;
T=5;&lt;br /&gt;
q=1;&lt;br /&gt;
%Discretización temporal y espacial&lt;br /&gt;
N=500; %Número de subintervalos&lt;br /&gt;
h=L/N;&lt;br /&gt;
x=0:h:L; % Vector de espacio&lt;br /&gt;
dt=h/4; % Paso en tiempo&lt;br /&gt;
t=0:dt:T; % Vector de tiempos&lt;br /&gt;
% Matriz de coeficientes. Aproximacion de -q*u_xx&lt;br /&gt;
K=2*diag(ones(1,N+1))-diag(ones(1,N),1)-diag(ones(1,N),-1);&lt;br /&gt;
K(1,2)=-2;&lt;br /&gt;
K(N+1,N)=-2;&lt;br /&gt;
K=q*K/h^2;&lt;br /&gt;
% Calculamos u0 condición inicial&lt;br /&gt;
u0=[zeros(1,1+N*3/5),3*ones(1,N*2/5)]';&lt;br /&gt;
% F=0 (no la consideramos)&lt;br /&gt;
sol(1,:)=u0'; % Guardamos la solucion&lt;br /&gt;
U=u0; % Inicializacion&lt;br /&gt;
% Calculamos U_n -&amp;gt; U_n+1&lt;br /&gt;
for j=1:length(t)-1 &lt;br /&gt;
U=(eye(N+1)+dt*K)\(U+dt*F); &lt;br /&gt;
sol(j+1,:)= U'; % Guardamos solucion&lt;br /&gt;
end&lt;br /&gt;
% Calculamos el area de la funcion en cada tiempo (area = cantidad de contaminante)&lt;br /&gt;
areas=zeros(1,length(t));&lt;br /&gt;
for i=1:length(t)&lt;br /&gt;
f=sol(i,:);&lt;br /&gt;
w=trapz(x,f);&lt;br /&gt;
area(i)=w;&lt;br /&gt;
end&lt;br /&gt;
%Dibujamos&lt;br /&gt;
plot(t,area)&lt;br /&gt;
xlabel('Tiempo')&lt;br /&gt;
ylabel('Cantidad de contaminante')&lt;br /&gt;
}}&lt;br /&gt;
[[Archivo:aleeex.jpg|500px|thumb|centro|Conservación masa total de contaminante]]&lt;br /&gt;
[[Archivo:gime.jpg|500px|thumb|centro|Conservación masa total de contaminante]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Concentración a lo largo del tiempo==&lt;br /&gt;
La concentración de la sustancia contaminante en la varilla varía con el tiempo, pero en un cierto momento esta concentración se va homogeneizando, y deja de variar, entrando en un estado estacionario::&lt;br /&gt;
&amp;lt;math&amp;gt; u_t(x,t)- D*u_{xx}(x,t)=0 &amp;lt;/math&amp;gt; :    &lt;br /&gt;
&amp;lt;math&amp;gt; u_t(x,t)=0 \rightarrow D*u_{xx}(x,t)=0 &amp;lt;/math&amp;gt; :&lt;br /&gt;
&amp;lt;math&amp;gt; u=c_1*x+c_2 &amp;lt;/math&amp;gt; &lt;br /&gt;
Utizando Matlab comprobaremos que &amp;lt;math&amp;gt; c_1=0 &amp;lt;/math&amp;gt; &amp;lt;math&amp;gt; c_2=1.17 &amp;lt;/math&amp;gt;&lt;br /&gt;
Para tiempos grandes la concentración se estabiliza en torno a 1.17 en toda la varilla, de forma que la solución se asemejará a una función lineal constante.&lt;br /&gt;
&lt;br /&gt;
{{matlab| codigo=&lt;br /&gt;
%Datos&lt;br /&gt;
L=5; %Longitud de varilla&lt;br /&gt;
T=50;&lt;br /&gt;
q=1;&lt;br /&gt;
%Discretización temporal y espacial&lt;br /&gt;
dx=0.1; % Paso en espacio&lt;br /&gt;
N=L/dx; %Número de subintervalos&lt;br /&gt;
h=L/N;&lt;br /&gt;
x=0:h:L; % Vector de espacio&lt;br /&gt;
dt=h/4; % Paso en tiempo&lt;br /&gt;
t=0:dt:T; % Vector de tiempos&lt;br /&gt;
% Matriz de coeficientes. Aproximacion de -q*u_xx&lt;br /&gt;
K=2*diag(ones(1,N+1))-diag(ones(1,N),1)-diag(ones(1,N),-1);&lt;br /&gt;
K(1,2)=-2;&lt;br /&gt;
K(N+1,N)=-2;&lt;br /&gt;
K=q*K/h^2;&lt;br /&gt;
% Calculamos u0 condición inicial&lt;br /&gt;
u0=[zeros(1,1+N*3/5),3*ones(1,N*2/5)]';&lt;br /&gt;
% F=0 (no la consideramos)&lt;br /&gt;
sol(1,:)=u0'; % Guardamos la solucion&lt;br /&gt;
U=u0; % Inicializacion&lt;br /&gt;
% Calculamos U_n -&amp;gt; U_n+1&lt;br /&gt;
%Aplicamos método trapecio método del trapecio&lt;br /&gt;
for j=1:length(t)-1&lt;br /&gt;
U=(eye(N+1)+(dt*K)/2)\((eye(N+1)-(K*dt)/2)*U);&lt;br /&gt;
sol(j+1,:)= U'; % Guardamos solucion&lt;br /&gt;
end&lt;br /&gt;
%Solución estacionaria&lt;br /&gt;
a=sol(length(t),:);&lt;br /&gt;
b=sol(1,:);&lt;br /&gt;
c=sol((length(t)-1)/50+1,:);&lt;br /&gt;
d=sol((length(t)-1)*2/50+1,:);&lt;br /&gt;
e=sol((length(t)-1)*10/50+1,:);&lt;br /&gt;
hold on&lt;br /&gt;
plot(x,a,'xk','linewidth',2);&lt;br /&gt;
plot(x,b,'-m','linewidth',1);&lt;br /&gt;
plot(x,c,'-g','linewidth',1);&lt;br /&gt;
plot(x,d,'-y','linewidth',1);&lt;br /&gt;
plot(x,e,'-b','linewidth',1);&lt;br /&gt;
legend('u(50s)','u(0s)','u(1s)','u(2s)','u(10s)');&lt;br /&gt;
xlabel('Posición en la varilla')&lt;br /&gt;
ylabel('Concentracion')&lt;br /&gt;
hold off&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Soluciones(t).jpg|500px|thumb|centro|Soluciones a lo largo del tiempo]]&lt;br /&gt;
&lt;br /&gt;
La distancia entre la solución estacionaria y las soluciones para los siguientes instantes: 0s, 1s, 2s y 10s; se puede apreciar en la imagen anterior. &lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
Una vez analizado los datos, se demuestra que la sustancia contaminante se estabiliza en t=9.98s, con un error del 5%.&lt;br /&gt;
&lt;br /&gt;
En el caso de que consideremos Δx'=Δx/10,el tiempo en el que se estabiliza la cantidad de sustancia contaminante será t=10.05s, dato que será más preciso debido a que el paso realizado en el programa es menor.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Nueva condición de frontera==&lt;br /&gt;
&lt;br /&gt;
Si colocamos un limpiador, que elimina la sustancia contaminante, en el extremo izquierdo de la varilla, varían las condiciones de contorno del problema. En este caso, en el extremo izquierdo, la condición inicial será de tipo Dirichlet ya que se esta variación esta provocada por un mecanismo físico externo que actúa sobre el extremo. &amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;math&amp;gt;\begin{cases}&lt;br /&gt;
u_t(x,t)- D u_{xx}(x,t)= 0 ; x\in (0,5) \\&lt;br /&gt;
u(x,0)=u_0 , x\in (0,5) \\&lt;br /&gt;
u(0,t)=0 , u_x(5,t)=0 ; t\geq 0&lt;br /&gt;
\end{cases}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Dadas las nuevas condiciones resolvemos el problema por el método de diferencias finitas.&lt;/div&gt;</summary>
		<author><name>Karlo André</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Difusi%C3%B3n_de_una_sustancia_contaminante_(Grupo_10)&amp;diff=12697</id>
		<title>Difusión de una sustancia contaminante (Grupo 10)</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Difusi%C3%B3n_de_una_sustancia_contaminante_(Grupo_10)&amp;diff=12697"/>
				<updated>2014-05-19T13:21:24Z</updated>
		
		<summary type="html">&lt;p&gt;Karlo André: /* Nueva condición de frontera */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;''''''Texto en negrita''''''[[Archivo:nuriat.png|200px|thumb|right|Tubo con sustancia contaminante]]&lt;br /&gt;
La difusión implica un movimiento espontáneo y desordenado de moléculas individuales y, especialmente, nos interesa la difusión de moléculas de una sustancia disuelta en otra.&lt;br /&gt;
&lt;br /&gt;
La difusión de una sustancia puede considerarse análoga al flujo de calor, y la ley de Fick establece que el ritmo de difusión por unidad de superficie, en dirección perpendicular a ésta, es proporcional al gradiente de la concentración de esa sustancia en esa dirección. La concentración es la masa de la sustancia por unidad de volumen, y el gradiente de concentración es la variación de concentración por unidad de distancia.&lt;br /&gt;
&lt;br /&gt;
Para determinar como se distribuye la concentración de una sustancia contaminante tomaremos como ejemplo un tubo largo compuesto por dos sustancias de las cuáles una de ellas es contaminante.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
= Simplificación del problema =&lt;br /&gt;
&lt;br /&gt;
Para que este problema resulte más sencillo aplicaremos una serie de condiciones, facilitando el cálculo del mismo.&lt;br /&gt;
&lt;br /&gt;
En primer lugar denotaremos su concentración &amp;lt;math&amp;gt; u &amp;lt;/math&amp;gt;, concentración de contaminante en cada posición del tubo y constante en cada sección, medida en &amp;lt;math&amp;gt; \frac{mol}{m^2*s} &amp;lt;/math&amp;gt;. &lt;br /&gt;
&lt;br /&gt;
Supondremos que el tubo mide L=5 m, ocupando el intervalo &amp;lt;math&amp;gt; x \in (0,L) &amp;lt;/math&amp;gt;, y que la concentración es la misma en cualquier punto de la sección transversal del tubo. Por tanto, la concentración dependerá unicamente de dos variables &amp;lt;math&amp;gt; u = u(x,t) &amp;lt;/math&amp;gt;. En los extremos se ha colocado un aislante que hace que el flujo de contaminante al exterior del tubo sea nulo. Además, consideraremos la simplificación de que se trata de un tubo aislado por sus laterales, pero abierto por las bases del cilindro.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Ley de conservación de masa ==&lt;br /&gt;
&lt;br /&gt;
Tras una serie de experimentos realizados por Lavoisier, se pusieron de manifiesto que si tenemos en cuenta todas las sustancias que forman parte en una reacción química y todos los productos formados, nunca varía la masa. Esta ley exige que no haya una generación espontánea de materia. Es decir, en la región del espacio estudiada, no existe entrada o salida por un punto cualquiera (frontera o interior), la masa en esta región se mantiene constante. Esta es la ley de la conservación de la masa, que podemos enunciarla, pues, de la siguiente manera: &amp;lt;br /&amp;gt;&lt;br /&gt;
''&amp;quot;En toda reacción química la masa se conserva, esto es, la masa total de los reactivos es igual a la masa total de los productos&amp;quot;'' &amp;lt;br /&amp;gt;&lt;br /&gt;
La ley de conservación de masas exige que no haya una generación espontánea de materia. Es decir, en la región del espacio estudiada, no existe entrada o salida por un punto cualquiera (frontera o interior), la masa en esta región se mantiene constante.&lt;br /&gt;
&lt;br /&gt;
Esta suposición, en términos de variación de masa, puede quedar determinada como:&lt;br /&gt;
&lt;br /&gt;
''Variación de la masa en el tiempo = flujo de masa a través de la frontera por unidad de tiempo + flujo de masa generada en el interior por unidad de tiempo. ''&lt;br /&gt;
&lt;br /&gt;
== Ley de Fick ==&lt;br /&gt;
Se trata de una ley cuantitativa en forma diferencial que describe la difusión de materia o energía en un medio en el que inicialmente existe equilibrio químico o físico. Esta ley se trata de una generalización de los fenómenos descritos por la '''Ley de Fourier''', ya que esta es una consideración concreta del calor.&lt;br /&gt;
&lt;br /&gt;
La ley de Fick anuncia que en el caso de existir diferencias de concentración en cualquier especie, el paso de estas especies se llevará a cabo desde las regiones con mayor concentración a las de menor. Formulado matemáticamente:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;F(x,t)=-D\frac{\partial u}{\partial x}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Donde &amp;lt;math&amp;gt;F&amp;lt;/math&amp;gt; es el flujo de la sustancia y &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; el coeficiente de difusión, que representa la facilidad en que un soluto particular se mueve por un disolvente determinado.&lt;br /&gt;
&lt;br /&gt;
La ley de Fick establece que el flujo de difusión del contaminante es proporcional a la variación de concentración:&lt;br /&gt;
&amp;lt;math&amp;gt; F(x,t)=-D\frac{\partial u}{\partial x} &amp;lt;/math&amp;gt;&lt;br /&gt;
donde D es el coeficiente de difusión (medido en &amp;lt;math&amp;gt; \frac{m^2}{s} &amp;lt;/math&amp;gt;), que depende de las propiedades físicas de los compuestos, y que se supone constante D=1.&lt;br /&gt;
&lt;br /&gt;
= Modelización de la ecuación diferencial =&lt;br /&gt;
&lt;br /&gt;
Aplicando el principio de conservación de la masa y la ley de Fourier, definimos la variable &amp;lt;math&amp;gt; u(x,t)&amp;lt;/math&amp;gt; en unidades de sustancia por área, es decir, concentración por superficie del tubo.&lt;br /&gt;
&lt;br /&gt;
Consideramos &amp;lt;math&amp;gt; A &amp;lt;/math&amp;gt; como variable superficie, y tomamos un pequeño trozo, definido por &amp;lt;math&amp;gt;\Delta x&amp;lt;/math&amp;gt;. Entonces, para obtener la variación de la masa en el tiempo:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; A u(x,t) \Delta x &amp;lt;/math&amp;gt; &lt;br /&gt;
&lt;br /&gt;
Y derivando en el tiempo:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; A u_t(x,t) \Delta x &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
obtenemos el primer término de la igualdad anteriormente enunciada.&lt;br /&gt;
&lt;br /&gt;
En el segundo, consideramos nulo el flujo de masa en los puntos interiores por unidad de tiempo, pues suponemos la tubería perfecta y sin sumideros.&lt;br /&gt;
&lt;br /&gt;
Como la superﬁcie lateral del tubo está aislada, solamente habrá flujo de sustancia en la dirección del eje &amp;lt;math&amp;gt;x&amp;lt;/math&amp;gt;. Si &amp;lt;math&amp;gt;F(x,t)&amp;gt; 0&amp;lt;/math&amp;gt; pensamos que el ﬂujo va hacia la derecha, si &amp;lt;math&amp;gt;F(x,t)&amp;lt; 0&amp;lt;/math&amp;gt;, este va a hacia la izquierda. El ﬂujo de&lt;br /&gt;
calor en un intervalo &amp;lt;math&amp;gt;[x, x + ∆x ] &amp;lt;/math&amp;gt; viene dado dado por:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;F(x,t)A-F(x+\Delta x, t)A&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Con lo que queda &amp;lt;math&amp;gt;A u_t(x,t) \Delta x = F(x,t)A-F(x+\Delta x, t)A&amp;lt;/math&amp;gt;, y al dividir &amp;lt;math&amp;gt;A \Delta x&amp;lt;/math&amp;gt;, nos queda &amp;lt;math&amp;gt;u_t(x,t)= \frac {F(x,t)-F(x+\Delta x, t)}{\Delta x}&amp;lt;/math&amp;gt;. &amp;lt;br /&amp;gt;&lt;br /&gt;
Como &amp;lt;math&amp;gt;\Delta x \rightarrow 0 &amp;lt;/math&amp;gt;, &amp;lt;math&amp;gt;u_t(x,t)= -F_x(x,t)&amp;lt;/math&amp;gt;, y aplicando ley de Fick, &amp;lt;math&amp;gt;u_t(x,t)=-\frac{\partial }{\partial x}(-D u_x(x,t)) = D u_xx(x,t) &amp;lt;/math&amp;gt;.&amp;lt;br /&amp;gt;&lt;br /&gt;
Con lo que resulta una ecuación en derivadas parciales que determina la concentración de sustancia:&lt;br /&gt;
&amp;lt;math&amp;gt;u_t(x,t)- D u_xx(x,t)= 0 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Planteamiento del problema bien propuesto ==&lt;br /&gt;
&lt;br /&gt;
Suponemos que el flujo será nula al haber una tapa en los extremos del tubo, con lo que el problema bien propuesto quedaría::&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\begin{cases}&lt;br /&gt;
u_t(x,t)- D u_{xx}(x,t)= 0 ; x\in (0,5) \\&lt;br /&gt;
u(x,0)=u_0 , x\in (0,5) \\&lt;br /&gt;
u_x(0,t)=0 , u_x(5,t)=0 ; t\geq 0&lt;br /&gt;
\end{cases}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= Resolución numérica =&lt;br /&gt;
Para la resolución de ésta ecuación necesitaremos mínimo tres condiciones, dos de las cuales serán de contorno, y la otra será la condición inicial.Si suponemos &amp;lt;math&amp;gt;u_0(x,0)&amp;lt;/math&amp;gt;, entonces:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; u_0(x,0)=\begin{cases}&lt;br /&gt;
0,  si x\leq 3\\&lt;br /&gt;
3,  si x&amp;gt;3&lt;br /&gt;
\end{cases}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Resolución por el método de las diferencias finitas ==&lt;br /&gt;
En el primer caso particular que estudiaremos, trataremos de obtener una resolución numérica del problema anteriormente planteado, dónde tenemos las fronteras aisladas y las concentraciones iniciales conocidas:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\begin{cases}&lt;br /&gt;
u_t(x,t)- D u_{xx}(x,t)= 0; x\in (0,5), t\geq 0 \\&lt;br /&gt;
u_0(x,0), x\in (0,5) \\&lt;br /&gt;
u_x(0,t)=0, u_x(5,t)=0, t\geq 0&lt;br /&gt;
\end{cases}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
La resolución por el método de las diferencias finitas se basa en expresar el problema continuo a un sistema discreto de ecuaciones diferenciales de primer orden. Particularizando para nuestro caso con las condiciones dadas, el problema planteado sería:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\begin{cases}&lt;br /&gt;
u'_n(t)+\frac{-u_{n-1}(t)+2u_n(t)+u_{n+1}(t)}{h^2} \\&lt;br /&gt;
\frac{u_1(t)-u_-1(t)}{2h} \rightarrow u_1(t)=u_-1(t) \\&lt;br /&gt;
\frac{u_{N+1}(t)-u_{N-1}(t)}{2h} \rightarrow u_{N+1}(t)=u_{N-1}\\&lt;br /&gt;
u_n(0)=u^0(x)&lt;br /&gt;
\end{cases}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Por lo que tenemos un sistema de la forma:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\begin{cases}&lt;br /&gt;
U'(t)+KU(t)=F(t)=0\\&lt;br /&gt;
U(0)=U^0&lt;br /&gt;
\end{cases}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Con &amp;lt;math&amp;gt;N+1&amp;lt;/math&amp;gt; ecuaciones.&lt;br /&gt;
==== Resolución por método del trapecio ====&lt;br /&gt;
Suponiendo que en el instante inicial se verifica  :&amp;lt;math&amp;gt;&lt;br /&gt;
u(x,0)=\left\{\begin{matrix}\\0, x≤3\\3, x&amp;gt;3\end{matrix}\right.&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Si tomamos &amp;lt;math&amp;gt;\triangle t= \triangle x/4&amp;lt;/math&amp;gt; en &amp;lt;math&amp;gt;t\in\ [0,5]&amp;lt;/math&amp;gt;, con &amp;lt;math&amp;gt;\triangle x=0.1&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
El código en MATLAB del método sería:&lt;br /&gt;
&lt;br /&gt;
{{matlab| codigo=&lt;br /&gt;
%Datos&lt;br /&gt;
L=5; %Longitud de varilla&lt;br /&gt;
T=5; %tiempo final&lt;br /&gt;
q=1;&lt;br /&gt;
%Discretización temporal y espacial&lt;br /&gt;
dx=0.1; % Paso en espacio&lt;br /&gt;
N=L/dx; %Número de subintervalos&lt;br /&gt;
x=dx:dx:L-dx; % Vector de espacio&lt;br /&gt;
dt=dx/4; % Paso en tiempo&lt;br /&gt;
t=0:dt:T; % Vector de tiempos&lt;br /&gt;
% Matriz de coeficientes. Aproximacion de -q*u_xx&lt;br /&gt;
K=2*diag(ones(1,N+1))-diag(ones(1,N),1)-diag(ones(1,N),-1);&lt;br /&gt;
K(1,2)=-2;&lt;br /&gt;
K(N+1,N)=-2;&lt;br /&gt;
K=q*K/dx^2;&lt;br /&gt;
% Calculamos u0 condición inicial&lt;br /&gt;
u0=[zeros(1,1+N*3/5),3*ones(1,N*2/5)]';&lt;br /&gt;
% F=0 (no la consideramos)&lt;br /&gt;
sol(1,:)=u0'; % Guardamos la solucion&lt;br /&gt;
U=u0; % Inicializacion&lt;br /&gt;
% Calculamos U_n -&amp;gt; U_n+1&lt;br /&gt;
%Aplicamos método trapecio método del trapecio&lt;br /&gt;
for j=1:length(t)-1&lt;br /&gt;
U=(eye(N+1)+(dt*K)/2)\((eye(N+1)-(K*dt)/2)*U);&lt;br /&gt;
sol(j+1,:)= U'; % Guardamos solucion&lt;br /&gt;
end&lt;br /&gt;
%Dibujamos la solucion&lt;br /&gt;
[xx,tt]=meshgrid(x,t);&lt;br /&gt;
surf(xx,tt,sol);&lt;br /&gt;
}}&lt;br /&gt;
[[Archivo:nur.jpg|500px|thumb|centro|Gráfica concentración / espacio-tiempo. Resolución por el método del trapecio.]]&lt;br /&gt;
&lt;br /&gt;
==== Resolución por método de Euler explícito ====&lt;br /&gt;
{{matlab| codigo=&lt;br /&gt;
%Datos&lt;br /&gt;
L=5; %Longitud de varilla&lt;br /&gt;
T=5; %tiempo final&lt;br /&gt;
q=1;&lt;br /&gt;
%Discretización temporal y espacial&lt;br /&gt;
dx=0.1; % Paso en espacio&lt;br /&gt;
N=L/dx; %Número de subintervalos&lt;br /&gt;
x=0:dx:L; % Vector de espacio&lt;br /&gt;
dt=dx/20; % Paso en tiempo&lt;br /&gt;
t=0:dt:T; % Vector de tiempos&lt;br /&gt;
% Matriz de coeficientes. Aproximacion de -q*u_xx&lt;br /&gt;
K=2*diag(ones(1,N+1))-diag(ones(1,N),1)-diag(ones(1,N),-1);&lt;br /&gt;
K(1,2)=-2;&lt;br /&gt;
K(N+1,N)=-2;&lt;br /&gt;
K=q*K/dx^2;&lt;br /&gt;
% Calculamos u0 condición inicial&lt;br /&gt;
u0=[zeros(1,1+N*3/5),3*ones(1,N*2/5)]';&lt;br /&gt;
% F=0 (no la consideramos)&lt;br /&gt;
sol(1,:)=u0'; % Guardamos la solucion&lt;br /&gt;
U=u0; % Inicializacion&lt;br /&gt;
% Calculamos U_n -&amp;gt; U_n+1&lt;br /&gt;
%Aplicamos método Euler explícito&lt;br /&gt;
for j=1:length(t)-1 &lt;br /&gt;
k1=-K*U; % Calculamos k1=h*f(tn,yn)&lt;br /&gt;
k2=-K*(U+dt*k1); % Calculamos k2=h*f(tn+h/2,yn+1/2*k1)&lt;br /&gt;
% Meto los datos en el vector&lt;br /&gt;
U=U+(dt/2)*(k1+k2);&lt;br /&gt;
sol(j+1,:)= U'; % Guardamos solucion&lt;br /&gt;
end&lt;br /&gt;
%Dibujamos la solucion&lt;br /&gt;
[xx,tt]=meshgrid(x,t);&lt;br /&gt;
surf(xx,tt,sol);&lt;br /&gt;
}}&lt;br /&gt;
[[Archivo:mig.jpg|500px|thumb|centro|Gráfica concentración / espacio-tiempo. Resolución por el método de Euler explícito.]]&lt;br /&gt;
&lt;br /&gt;
==== Resolución por método de Euler implícito ====&lt;br /&gt;
{{matlab| codigo=&lt;br /&gt;
%Datos&lt;br /&gt;
L=5; %Longitud de varilla&lt;br /&gt;
T=5;&lt;br /&gt;
q=1;&lt;br /&gt;
%Discretización temporal y espacial&lt;br /&gt;
dx=0.1; % Paso en espacio&lt;br /&gt;
N=L/dx; %Número de subintervalos&lt;br /&gt;
h=L/N;&lt;br /&gt;
x=0:h:L; % Vector de espacio&lt;br /&gt;
dt=h/20; % Paso en tiempo&lt;br /&gt;
t=0:dt:T; % Vector de tiempos&lt;br /&gt;
% Matriz de coeficientes. Aproximacion de -q*u_xx&lt;br /&gt;
K=2*diag(ones(1,N+1))-diag(ones(1,N),1)-diag(ones(1,N),-1);&lt;br /&gt;
K(1,2)=-2;&lt;br /&gt;
K(N+1,N)=-2;&lt;br /&gt;
K=q*K/h^2;&lt;br /&gt;
% Calculamos u0 condición inicial&lt;br /&gt;
u0=[zeros(1,1+N*3/5),3*ones(1,N*2/5)]';&lt;br /&gt;
% F=0 (no la consideramos)&lt;br /&gt;
sol(1,:)=u0'; % Guardamos la solucion&lt;br /&gt;
U=u0; % Inicializacion&lt;br /&gt;
% Calculamos U_n -&amp;gt; U_n+1&lt;br /&gt;
% Aplicamos método implícito&lt;br /&gt;
for j=1:length(t)-1 &lt;br /&gt;
U=U-dt*K*U; &lt;br /&gt;
sol(j+1,:)= U'; % Guardamos solucion&lt;br /&gt;
end&lt;br /&gt;
%Dibujamos la solucion&lt;br /&gt;
[xx,tt]=meshgrid(x,t);&lt;br /&gt;
surf(xx,tt,sol);&lt;br /&gt;
}}&lt;br /&gt;
[[Archivo:migap.jpg|500px|thumb|centro|Gráfica concentración / espacio-tiempo. Resolución por el método de Euler implícito.]]&lt;br /&gt;
&lt;br /&gt;
==== Resolución por método de Euler modificado ====&lt;br /&gt;
{{matlab| codigo=&lt;br /&gt;
%Datos&lt;br /&gt;
L=5; %Longitud de varilla&lt;br /&gt;
T=5;&lt;br /&gt;
q=1;&lt;br /&gt;
%Discretización temporal y espacial&lt;br /&gt;
dx=0.1; % Paso en espacio&lt;br /&gt;
N=L/dx; %Número de subintervalos&lt;br /&gt;
h=L/N;&lt;br /&gt;
x=0:h:L; % Vector de espacio&lt;br /&gt;
dt=h/20; % Paso en tiempo&lt;br /&gt;
t=0:dt:T; % Vector de tiempos&lt;br /&gt;
% Matriz de coeficientes. Aproximacion de -q*u_xx&lt;br /&gt;
K=2*diag(ones(1,N+1))-diag(ones(1,N),1)-diag(ones(1,N),-1);&lt;br /&gt;
K(1,2)=-2;&lt;br /&gt;
K(N+1,N)=-2;&lt;br /&gt;
K=q*K/h^2;&lt;br /&gt;
% Calculamos u0 condición inicial&lt;br /&gt;
u0=[zeros(1,1+N*3/5),3*ones(1,N*2/5)]';&lt;br /&gt;
% F=0 (no la consideramos)&lt;br /&gt;
sol(1,:)=u0'; % Guardamos la solucion&lt;br /&gt;
U=u0; % Inicializacion&lt;br /&gt;
% Calculamos U_n -&amp;gt; U_n+1&lt;br /&gt;
for j=1:length(t)-1 &lt;br /&gt;
k1=-K*U; % Calculamos k1=h*f(tn,yn)&lt;br /&gt;
k2=-K*(U+dt*k1); % Calculamos k2=h*f(tn+h/2,yn+1/2*k1)&lt;br /&gt;
% Meto los datos en el vector&lt;br /&gt;
U=U+(dt/2)*(k1+k2);&lt;br /&gt;
sol(j+1,:)= U'; % Guardamos solucion&lt;br /&gt;
end&lt;br /&gt;
%Dibujamos la solucion&lt;br /&gt;
[xx,tt]=meshgrid(x,t);&lt;br /&gt;
surf(xx,tt,sol);&lt;br /&gt;
}}&lt;br /&gt;
[[Archivo: mig.jpg|500px|thumb|centro|Gráfica concentración / espacio-tiempo. Resolución por el método de Euler modificado.]]&lt;br /&gt;
&lt;br /&gt;
== Conservación de la masa total de contaminante ==&lt;br /&gt;
A continuación demostraremos que la masa total de contaminante en el tubo se conserva a lo largo del tiempo, que se puede deducir a partir de la ecuación sin tener que resolverla. Integramos la ecuación y debido a las condiciones de frontera:&lt;br /&gt;
&amp;lt;math&amp;gt;\frac d {dt} \int_0^5 u(x,t)\,dx= \int_0^5 u_{xx}(x,t)\,dx= u_x(x,t)|_0^5=0&amp;lt;/math&amp;gt;&lt;br /&gt;
{{matlab| codigo=&lt;br /&gt;
%Datos&lt;br /&gt;
L=5; %Longitud de varilla&lt;br /&gt;
T=5;&lt;br /&gt;
q=1;&lt;br /&gt;
%Discretización temporal y espacial&lt;br /&gt;
N=500; %Número de subintervalos&lt;br /&gt;
h=L/N;&lt;br /&gt;
x=0:h:L; % Vector de espacio&lt;br /&gt;
dt=h/4; % Paso en tiempo&lt;br /&gt;
t=0:dt:T; % Vector de tiempos&lt;br /&gt;
% Matriz de coeficientes. Aproximacion de -q*u_xx&lt;br /&gt;
K=2*diag(ones(1,N+1))-diag(ones(1,N),1)-diag(ones(1,N),-1);&lt;br /&gt;
K(1,2)=-2;&lt;br /&gt;
K(N+1,N)=-2;&lt;br /&gt;
K=q*K/h^2;&lt;br /&gt;
% Calculamos u0 condición inicial&lt;br /&gt;
u0=[zeros(1,1+N*3/5),3*ones(1,N*2/5)]';&lt;br /&gt;
% F=0 (no la consideramos)&lt;br /&gt;
sol(1,:)=u0'; % Guardamos la solucion&lt;br /&gt;
U=u0; % Inicializacion&lt;br /&gt;
% Calculamos U_n -&amp;gt; U_n+1&lt;br /&gt;
for j=1:length(t)-1 &lt;br /&gt;
U=(eye(N+1)+dt*K)\(U+dt*F); &lt;br /&gt;
sol(j+1,:)= U'; % Guardamos solucion&lt;br /&gt;
end&lt;br /&gt;
% Calculamos el area de la funcion en cada tiempo (area = cantidad de contaminante)&lt;br /&gt;
areas=zeros(1,length(t));&lt;br /&gt;
for i=1:length(t)&lt;br /&gt;
f=sol(i,:);&lt;br /&gt;
w=trapz(x,f);&lt;br /&gt;
area(i)=w;&lt;br /&gt;
end&lt;br /&gt;
%Dibujamos&lt;br /&gt;
plot(t,area)&lt;br /&gt;
xlabel('Tiempo')&lt;br /&gt;
ylabel('Cantidad de contaminante')&lt;br /&gt;
}}&lt;br /&gt;
[[Archivo:aleeex.jpg|500px|thumb|centro|Conservación masa total de contaminante]]&lt;br /&gt;
[[Archivo:gime.jpg|500px|thumb|centro|Conservación masa total de contaminante]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Concentración a lo largo del tiempo==&lt;br /&gt;
La concentración de la sustancia contaminante en la varilla varía con el tiempo, pero en un cierto momento esta concentración se va homogeneizando, y deja de variar, entrando en un estado estacionario::&lt;br /&gt;
&amp;lt;math&amp;gt; u_t(x,t)- D*u_{xx}(x,t)=0 &amp;lt;/math&amp;gt; :    &lt;br /&gt;
&amp;lt;math&amp;gt; u_t(x,t)=0 \rightarrow D*u_{xx}(x,t)=0 &amp;lt;/math&amp;gt; :&lt;br /&gt;
&amp;lt;math&amp;gt; u=c_1*x+c_2 &amp;lt;/math&amp;gt; &lt;br /&gt;
Utizando Matlab comprobaremos que &amp;lt;math&amp;gt; c_1=0 &amp;lt;/math&amp;gt; &amp;lt;math&amp;gt; c_2=1.17 &amp;lt;/math&amp;gt;&lt;br /&gt;
Para tiempos grandes la concentración se estabiliza en torno a 1.17 en toda la varilla, de forma que la solución se asemejará a una función lineal constante.&lt;br /&gt;
&lt;br /&gt;
{{matlab| codigo=&lt;br /&gt;
%Datos&lt;br /&gt;
L=5; %Longitud de varilla&lt;br /&gt;
T=50;&lt;br /&gt;
q=1;&lt;br /&gt;
%Discretización temporal y espacial&lt;br /&gt;
dx=0.1; % Paso en espacio&lt;br /&gt;
N=L/dx; %Número de subintervalos&lt;br /&gt;
h=L/N;&lt;br /&gt;
x=0:h:L; % Vector de espacio&lt;br /&gt;
dt=h/4; % Paso en tiempo&lt;br /&gt;
t=0:dt:T; % Vector de tiempos&lt;br /&gt;
% Matriz de coeficientes. Aproximacion de -q*u_xx&lt;br /&gt;
K=2*diag(ones(1,N+1))-diag(ones(1,N),1)-diag(ones(1,N),-1);&lt;br /&gt;
K(1,2)=-2;&lt;br /&gt;
K(N+1,N)=-2;&lt;br /&gt;
K=q*K/h^2;&lt;br /&gt;
% Calculamos u0 condición inicial&lt;br /&gt;
u0=[zeros(1,1+N*3/5),3*ones(1,N*2/5)]';&lt;br /&gt;
% F=0 (no la consideramos)&lt;br /&gt;
sol(1,:)=u0'; % Guardamos la solucion&lt;br /&gt;
U=u0; % Inicializacion&lt;br /&gt;
% Calculamos U_n -&amp;gt; U_n+1&lt;br /&gt;
%Aplicamos método trapecio método del trapecio&lt;br /&gt;
for j=1:length(t)-1&lt;br /&gt;
U=(eye(N+1)+(dt*K)/2)\((eye(N+1)-(K*dt)/2)*U);&lt;br /&gt;
sol(j+1,:)= U'; % Guardamos solucion&lt;br /&gt;
end&lt;br /&gt;
%Solución estacionaria&lt;br /&gt;
a=sol(length(t),:);&lt;br /&gt;
b=sol(1,:);&lt;br /&gt;
c=sol((length(t)-1)/50+1,:);&lt;br /&gt;
d=sol((length(t)-1)*2/50+1,:);&lt;br /&gt;
e=sol((length(t)-1)*10/50+1,:);&lt;br /&gt;
hold on&lt;br /&gt;
plot(x,a,'xk','linewidth',2);&lt;br /&gt;
plot(x,b,'-m','linewidth',1);&lt;br /&gt;
plot(x,c,'-g','linewidth',1);&lt;br /&gt;
plot(x,d,'-y','linewidth',1);&lt;br /&gt;
plot(x,e,'-b','linewidth',1);&lt;br /&gt;
legend('u(50s)','u(0s)','u(1s)','u(2s)','u(10s)');&lt;br /&gt;
xlabel('Posición en la varilla')&lt;br /&gt;
ylabel('Concentracion')&lt;br /&gt;
hold off&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Soluciones(t).jpg|500px|thumb|centro|Soluciones a lo largo del tiempo]]&lt;br /&gt;
&lt;br /&gt;
La distancia entre la solución estacionaria y las soluciones para los siguientes instantes: 0s, 1s, 2s y 10s; se puede apreciar en la imagen anterior. &lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
Una vez analizado los datos, se demuestra que la sustancia contaminante se estabiliza en t=9.98s, con un error del 5%.&lt;br /&gt;
&lt;br /&gt;
En el caso de que consideremos Δx'=Δx/10,el tiempo en el que se estabiliza la cantidad de sustancia contaminante será t=10.05s, dato que será más preciso debido a que el paso realizado en el programa es menor.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Nueva condición de frontera==&lt;br /&gt;
&lt;br /&gt;
Si colocamos un limpiador, que elimina la sustancia contaminante, en el extremo izquierdo de la varilla, varían las condiciones de contorno del problema. En este caso, en el extremo izquierdo, la condición inicial será de tipo Dirichlet ya que se esta variación esta provocada por un mecanismo externo que actúa sobre el extremo. &amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;math&amp;gt;\begin{cases}&lt;br /&gt;
u_t(x,t)- D u_{xx}(x,t)= 0 ; x\in (0,5) \\&lt;br /&gt;
u(x,0)=u_0 , x\in (0,5) \\&lt;br /&gt;
u(0,t)=0 , u_x(5,t)=0 ; t\geq 0&lt;br /&gt;
\end{cases}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Dadas las nuevas condiciones resolvemos el problema por el método de diferencias finitas.&lt;/div&gt;</summary>
		<author><name>Karlo André</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Difusi%C3%B3n_de_una_sustancia_contaminante_(Grupo_10)&amp;diff=12696</id>
		<title>Difusión de una sustancia contaminante (Grupo 10)</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Difusi%C3%B3n_de_una_sustancia_contaminante_(Grupo_10)&amp;diff=12696"/>
				<updated>2014-05-19T13:21:04Z</updated>
		
		<summary type="html">&lt;p&gt;Karlo André: /* Nueva condición de frontera */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;''''''Texto en negrita''''''[[Archivo:nuriat.png|200px|thumb|right|Tubo con sustancia contaminante]]&lt;br /&gt;
La difusión implica un movimiento espontáneo y desordenado de moléculas individuales y, especialmente, nos interesa la difusión de moléculas de una sustancia disuelta en otra.&lt;br /&gt;
&lt;br /&gt;
La difusión de una sustancia puede considerarse análoga al flujo de calor, y la ley de Fick establece que el ritmo de difusión por unidad de superficie, en dirección perpendicular a ésta, es proporcional al gradiente de la concentración de esa sustancia en esa dirección. La concentración es la masa de la sustancia por unidad de volumen, y el gradiente de concentración es la variación de concentración por unidad de distancia.&lt;br /&gt;
&lt;br /&gt;
Para determinar como se distribuye la concentración de una sustancia contaminante tomaremos como ejemplo un tubo largo compuesto por dos sustancias de las cuáles una de ellas es contaminante.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
= Simplificación del problema =&lt;br /&gt;
&lt;br /&gt;
Para que este problema resulte más sencillo aplicaremos una serie de condiciones, facilitando el cálculo del mismo.&lt;br /&gt;
&lt;br /&gt;
En primer lugar denotaremos su concentración &amp;lt;math&amp;gt; u &amp;lt;/math&amp;gt;, concentración de contaminante en cada posición del tubo y constante en cada sección, medida en &amp;lt;math&amp;gt; \frac{mol}{m^2*s} &amp;lt;/math&amp;gt;. &lt;br /&gt;
&lt;br /&gt;
Supondremos que el tubo mide L=5 m, ocupando el intervalo &amp;lt;math&amp;gt; x \in (0,L) &amp;lt;/math&amp;gt;, y que la concentración es la misma en cualquier punto de la sección transversal del tubo. Por tanto, la concentración dependerá unicamente de dos variables &amp;lt;math&amp;gt; u = u(x,t) &amp;lt;/math&amp;gt;. En los extremos se ha colocado un aislante que hace que el flujo de contaminante al exterior del tubo sea nulo. Además, consideraremos la simplificación de que se trata de un tubo aislado por sus laterales, pero abierto por las bases del cilindro.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Ley de conservación de masa ==&lt;br /&gt;
&lt;br /&gt;
Tras una serie de experimentos realizados por Lavoisier, se pusieron de manifiesto que si tenemos en cuenta todas las sustancias que forman parte en una reacción química y todos los productos formados, nunca varía la masa. Esta ley exige que no haya una generación espontánea de materia. Es decir, en la región del espacio estudiada, no existe entrada o salida por un punto cualquiera (frontera o interior), la masa en esta región se mantiene constante. Esta es la ley de la conservación de la masa, que podemos enunciarla, pues, de la siguiente manera: &amp;lt;br /&amp;gt;&lt;br /&gt;
''&amp;quot;En toda reacción química la masa se conserva, esto es, la masa total de los reactivos es igual a la masa total de los productos&amp;quot;'' &amp;lt;br /&amp;gt;&lt;br /&gt;
La ley de conservación de masas exige que no haya una generación espontánea de materia. Es decir, en la región del espacio estudiada, no existe entrada o salida por un punto cualquiera (frontera o interior), la masa en esta región se mantiene constante.&lt;br /&gt;
&lt;br /&gt;
Esta suposición, en términos de variación de masa, puede quedar determinada como:&lt;br /&gt;
&lt;br /&gt;
''Variación de la masa en el tiempo = flujo de masa a través de la frontera por unidad de tiempo + flujo de masa generada en el interior por unidad de tiempo. ''&lt;br /&gt;
&lt;br /&gt;
== Ley de Fick ==&lt;br /&gt;
Se trata de una ley cuantitativa en forma diferencial que describe la difusión de materia o energía en un medio en el que inicialmente existe equilibrio químico o físico. Esta ley se trata de una generalización de los fenómenos descritos por la '''Ley de Fourier''', ya que esta es una consideración concreta del calor.&lt;br /&gt;
&lt;br /&gt;
La ley de Fick anuncia que en el caso de existir diferencias de concentración en cualquier especie, el paso de estas especies se llevará a cabo desde las regiones con mayor concentración a las de menor. Formulado matemáticamente:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;F(x,t)=-D\frac{\partial u}{\partial x}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Donde &amp;lt;math&amp;gt;F&amp;lt;/math&amp;gt; es el flujo de la sustancia y &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; el coeficiente de difusión, que representa la facilidad en que un soluto particular se mueve por un disolvente determinado.&lt;br /&gt;
&lt;br /&gt;
La ley de Fick establece que el flujo de difusión del contaminante es proporcional a la variación de concentración:&lt;br /&gt;
&amp;lt;math&amp;gt; F(x,t)=-D\frac{\partial u}{\partial x} &amp;lt;/math&amp;gt;&lt;br /&gt;
donde D es el coeficiente de difusión (medido en &amp;lt;math&amp;gt; \frac{m^2}{s} &amp;lt;/math&amp;gt;), que depende de las propiedades físicas de los compuestos, y que se supone constante D=1.&lt;br /&gt;
&lt;br /&gt;
= Modelización de la ecuación diferencial =&lt;br /&gt;
&lt;br /&gt;
Aplicando el principio de conservación de la masa y la ley de Fourier, definimos la variable &amp;lt;math&amp;gt; u(x,t)&amp;lt;/math&amp;gt; en unidades de sustancia por área, es decir, concentración por superficie del tubo.&lt;br /&gt;
&lt;br /&gt;
Consideramos &amp;lt;math&amp;gt; A &amp;lt;/math&amp;gt; como variable superficie, y tomamos un pequeño trozo, definido por &amp;lt;math&amp;gt;\Delta x&amp;lt;/math&amp;gt;. Entonces, para obtener la variación de la masa en el tiempo:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; A u(x,t) \Delta x &amp;lt;/math&amp;gt; &lt;br /&gt;
&lt;br /&gt;
Y derivando en el tiempo:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; A u_t(x,t) \Delta x &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
obtenemos el primer término de la igualdad anteriormente enunciada.&lt;br /&gt;
&lt;br /&gt;
En el segundo, consideramos nulo el flujo de masa en los puntos interiores por unidad de tiempo, pues suponemos la tubería perfecta y sin sumideros.&lt;br /&gt;
&lt;br /&gt;
Como la superﬁcie lateral del tubo está aislada, solamente habrá flujo de sustancia en la dirección del eje &amp;lt;math&amp;gt;x&amp;lt;/math&amp;gt;. Si &amp;lt;math&amp;gt;F(x,t)&amp;gt; 0&amp;lt;/math&amp;gt; pensamos que el ﬂujo va hacia la derecha, si &amp;lt;math&amp;gt;F(x,t)&amp;lt; 0&amp;lt;/math&amp;gt;, este va a hacia la izquierda. El ﬂujo de&lt;br /&gt;
calor en un intervalo &amp;lt;math&amp;gt;[x, x + ∆x ] &amp;lt;/math&amp;gt; viene dado dado por:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;F(x,t)A-F(x+\Delta x, t)A&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Con lo que queda &amp;lt;math&amp;gt;A u_t(x,t) \Delta x = F(x,t)A-F(x+\Delta x, t)A&amp;lt;/math&amp;gt;, y al dividir &amp;lt;math&amp;gt;A \Delta x&amp;lt;/math&amp;gt;, nos queda &amp;lt;math&amp;gt;u_t(x,t)= \frac {F(x,t)-F(x+\Delta x, t)}{\Delta x}&amp;lt;/math&amp;gt;. &amp;lt;br /&amp;gt;&lt;br /&gt;
Como &amp;lt;math&amp;gt;\Delta x \rightarrow 0 &amp;lt;/math&amp;gt;, &amp;lt;math&amp;gt;u_t(x,t)= -F_x(x,t)&amp;lt;/math&amp;gt;, y aplicando ley de Fick, &amp;lt;math&amp;gt;u_t(x,t)=-\frac{\partial }{\partial x}(-D u_x(x,t)) = D u_xx(x,t) &amp;lt;/math&amp;gt;.&amp;lt;br /&amp;gt;&lt;br /&gt;
Con lo que resulta una ecuación en derivadas parciales que determina la concentración de sustancia:&lt;br /&gt;
&amp;lt;math&amp;gt;u_t(x,t)- D u_xx(x,t)= 0 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Planteamiento del problema bien propuesto ==&lt;br /&gt;
&lt;br /&gt;
Suponemos que el flujo será nula al haber una tapa en los extremos del tubo, con lo que el problema bien propuesto quedaría::&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\begin{cases}&lt;br /&gt;
u_t(x,t)- D u_{xx}(x,t)= 0 ; x\in (0,5) \\&lt;br /&gt;
u(x,0)=u_0 , x\in (0,5) \\&lt;br /&gt;
u_x(0,t)=0 , u_x(5,t)=0 ; t\geq 0&lt;br /&gt;
\end{cases}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= Resolución numérica =&lt;br /&gt;
Para la resolución de ésta ecuación necesitaremos mínimo tres condiciones, dos de las cuales serán de contorno, y la otra será la condición inicial.Si suponemos &amp;lt;math&amp;gt;u_0(x,0)&amp;lt;/math&amp;gt;, entonces:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; u_0(x,0)=\begin{cases}&lt;br /&gt;
0,  si x\leq 3\\&lt;br /&gt;
3,  si x&amp;gt;3&lt;br /&gt;
\end{cases}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Resolución por el método de las diferencias finitas ==&lt;br /&gt;
En el primer caso particular que estudiaremos, trataremos de obtener una resolución numérica del problema anteriormente planteado, dónde tenemos las fronteras aisladas y las concentraciones iniciales conocidas:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\begin{cases}&lt;br /&gt;
u_t(x,t)- D u_{xx}(x,t)= 0; x\in (0,5), t\geq 0 \\&lt;br /&gt;
u_0(x,0), x\in (0,5) \\&lt;br /&gt;
u_x(0,t)=0, u_x(5,t)=0, t\geq 0&lt;br /&gt;
\end{cases}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
La resolución por el método de las diferencias finitas se basa en expresar el problema continuo a un sistema discreto de ecuaciones diferenciales de primer orden. Particularizando para nuestro caso con las condiciones dadas, el problema planteado sería:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\begin{cases}&lt;br /&gt;
u'_n(t)+\frac{-u_{n-1}(t)+2u_n(t)+u_{n+1}(t)}{h^2} \\&lt;br /&gt;
\frac{u_1(t)-u_-1(t)}{2h} \rightarrow u_1(t)=u_-1(t) \\&lt;br /&gt;
\frac{u_{N+1}(t)-u_{N-1}(t)}{2h} \rightarrow u_{N+1}(t)=u_{N-1}\\&lt;br /&gt;
u_n(0)=u^0(x)&lt;br /&gt;
\end{cases}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Por lo que tenemos un sistema de la forma:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\begin{cases}&lt;br /&gt;
U'(t)+KU(t)=F(t)=0\\&lt;br /&gt;
U(0)=U^0&lt;br /&gt;
\end{cases}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Con &amp;lt;math&amp;gt;N+1&amp;lt;/math&amp;gt; ecuaciones.&lt;br /&gt;
==== Resolución por método del trapecio ====&lt;br /&gt;
Suponiendo que en el instante inicial se verifica  :&amp;lt;math&amp;gt;&lt;br /&gt;
u(x,0)=\left\{\begin{matrix}\\0, x≤3\\3, x&amp;gt;3\end{matrix}\right.&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Si tomamos &amp;lt;math&amp;gt;\triangle t= \triangle x/4&amp;lt;/math&amp;gt; en &amp;lt;math&amp;gt;t\in\ [0,5]&amp;lt;/math&amp;gt;, con &amp;lt;math&amp;gt;\triangle x=0.1&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
El código en MATLAB del método sería:&lt;br /&gt;
&lt;br /&gt;
{{matlab| codigo=&lt;br /&gt;
%Datos&lt;br /&gt;
L=5; %Longitud de varilla&lt;br /&gt;
T=5; %tiempo final&lt;br /&gt;
q=1;&lt;br /&gt;
%Discretización temporal y espacial&lt;br /&gt;
dx=0.1; % Paso en espacio&lt;br /&gt;
N=L/dx; %Número de subintervalos&lt;br /&gt;
x=dx:dx:L-dx; % Vector de espacio&lt;br /&gt;
dt=dx/4; % Paso en tiempo&lt;br /&gt;
t=0:dt:T; % Vector de tiempos&lt;br /&gt;
% Matriz de coeficientes. Aproximacion de -q*u_xx&lt;br /&gt;
K=2*diag(ones(1,N+1))-diag(ones(1,N),1)-diag(ones(1,N),-1);&lt;br /&gt;
K(1,2)=-2;&lt;br /&gt;
K(N+1,N)=-2;&lt;br /&gt;
K=q*K/dx^2;&lt;br /&gt;
% Calculamos u0 condición inicial&lt;br /&gt;
u0=[zeros(1,1+N*3/5),3*ones(1,N*2/5)]';&lt;br /&gt;
% F=0 (no la consideramos)&lt;br /&gt;
sol(1,:)=u0'; % Guardamos la solucion&lt;br /&gt;
U=u0; % Inicializacion&lt;br /&gt;
% Calculamos U_n -&amp;gt; U_n+1&lt;br /&gt;
%Aplicamos método trapecio método del trapecio&lt;br /&gt;
for j=1:length(t)-1&lt;br /&gt;
U=(eye(N+1)+(dt*K)/2)\((eye(N+1)-(K*dt)/2)*U);&lt;br /&gt;
sol(j+1,:)= U'; % Guardamos solucion&lt;br /&gt;
end&lt;br /&gt;
%Dibujamos la solucion&lt;br /&gt;
[xx,tt]=meshgrid(x,t);&lt;br /&gt;
surf(xx,tt,sol);&lt;br /&gt;
}}&lt;br /&gt;
[[Archivo:nur.jpg|500px|thumb|centro|Gráfica concentración / espacio-tiempo. Resolución por el método del trapecio.]]&lt;br /&gt;
&lt;br /&gt;
==== Resolución por método de Euler explícito ====&lt;br /&gt;
{{matlab| codigo=&lt;br /&gt;
%Datos&lt;br /&gt;
L=5; %Longitud de varilla&lt;br /&gt;
T=5; %tiempo final&lt;br /&gt;
q=1;&lt;br /&gt;
%Discretización temporal y espacial&lt;br /&gt;
dx=0.1; % Paso en espacio&lt;br /&gt;
N=L/dx; %Número de subintervalos&lt;br /&gt;
x=0:dx:L; % Vector de espacio&lt;br /&gt;
dt=dx/20; % Paso en tiempo&lt;br /&gt;
t=0:dt:T; % Vector de tiempos&lt;br /&gt;
% Matriz de coeficientes. Aproximacion de -q*u_xx&lt;br /&gt;
K=2*diag(ones(1,N+1))-diag(ones(1,N),1)-diag(ones(1,N),-1);&lt;br /&gt;
K(1,2)=-2;&lt;br /&gt;
K(N+1,N)=-2;&lt;br /&gt;
K=q*K/dx^2;&lt;br /&gt;
% Calculamos u0 condición inicial&lt;br /&gt;
u0=[zeros(1,1+N*3/5),3*ones(1,N*2/5)]';&lt;br /&gt;
% F=0 (no la consideramos)&lt;br /&gt;
sol(1,:)=u0'; % Guardamos la solucion&lt;br /&gt;
U=u0; % Inicializacion&lt;br /&gt;
% Calculamos U_n -&amp;gt; U_n+1&lt;br /&gt;
%Aplicamos método Euler explícito&lt;br /&gt;
for j=1:length(t)-1 &lt;br /&gt;
k1=-K*U; % Calculamos k1=h*f(tn,yn)&lt;br /&gt;
k2=-K*(U+dt*k1); % Calculamos k2=h*f(tn+h/2,yn+1/2*k1)&lt;br /&gt;
% Meto los datos en el vector&lt;br /&gt;
U=U+(dt/2)*(k1+k2);&lt;br /&gt;
sol(j+1,:)= U'; % Guardamos solucion&lt;br /&gt;
end&lt;br /&gt;
%Dibujamos la solucion&lt;br /&gt;
[xx,tt]=meshgrid(x,t);&lt;br /&gt;
surf(xx,tt,sol);&lt;br /&gt;
}}&lt;br /&gt;
[[Archivo:mig.jpg|500px|thumb|centro|Gráfica concentración / espacio-tiempo. Resolución por el método de Euler explícito.]]&lt;br /&gt;
&lt;br /&gt;
==== Resolución por método de Euler implícito ====&lt;br /&gt;
{{matlab| codigo=&lt;br /&gt;
%Datos&lt;br /&gt;
L=5; %Longitud de varilla&lt;br /&gt;
T=5;&lt;br /&gt;
q=1;&lt;br /&gt;
%Discretización temporal y espacial&lt;br /&gt;
dx=0.1; % Paso en espacio&lt;br /&gt;
N=L/dx; %Número de subintervalos&lt;br /&gt;
h=L/N;&lt;br /&gt;
x=0:h:L; % Vector de espacio&lt;br /&gt;
dt=h/20; % Paso en tiempo&lt;br /&gt;
t=0:dt:T; % Vector de tiempos&lt;br /&gt;
% Matriz de coeficientes. Aproximacion de -q*u_xx&lt;br /&gt;
K=2*diag(ones(1,N+1))-diag(ones(1,N),1)-diag(ones(1,N),-1);&lt;br /&gt;
K(1,2)=-2;&lt;br /&gt;
K(N+1,N)=-2;&lt;br /&gt;
K=q*K/h^2;&lt;br /&gt;
% Calculamos u0 condición inicial&lt;br /&gt;
u0=[zeros(1,1+N*3/5),3*ones(1,N*2/5)]';&lt;br /&gt;
% F=0 (no la consideramos)&lt;br /&gt;
sol(1,:)=u0'; % Guardamos la solucion&lt;br /&gt;
U=u0; % Inicializacion&lt;br /&gt;
% Calculamos U_n -&amp;gt; U_n+1&lt;br /&gt;
% Aplicamos método implícito&lt;br /&gt;
for j=1:length(t)-1 &lt;br /&gt;
U=U-dt*K*U; &lt;br /&gt;
sol(j+1,:)= U'; % Guardamos solucion&lt;br /&gt;
end&lt;br /&gt;
%Dibujamos la solucion&lt;br /&gt;
[xx,tt]=meshgrid(x,t);&lt;br /&gt;
surf(xx,tt,sol);&lt;br /&gt;
}}&lt;br /&gt;
[[Archivo:migap.jpg|500px|thumb|centro|Gráfica concentración / espacio-tiempo. Resolución por el método de Euler implícito.]]&lt;br /&gt;
&lt;br /&gt;
==== Resolución por método de Euler modificado ====&lt;br /&gt;
{{matlab| codigo=&lt;br /&gt;
%Datos&lt;br /&gt;
L=5; %Longitud de varilla&lt;br /&gt;
T=5;&lt;br /&gt;
q=1;&lt;br /&gt;
%Discretización temporal y espacial&lt;br /&gt;
dx=0.1; % Paso en espacio&lt;br /&gt;
N=L/dx; %Número de subintervalos&lt;br /&gt;
h=L/N;&lt;br /&gt;
x=0:h:L; % Vector de espacio&lt;br /&gt;
dt=h/20; % Paso en tiempo&lt;br /&gt;
t=0:dt:T; % Vector de tiempos&lt;br /&gt;
% Matriz de coeficientes. Aproximacion de -q*u_xx&lt;br /&gt;
K=2*diag(ones(1,N+1))-diag(ones(1,N),1)-diag(ones(1,N),-1);&lt;br /&gt;
K(1,2)=-2;&lt;br /&gt;
K(N+1,N)=-2;&lt;br /&gt;
K=q*K/h^2;&lt;br /&gt;
% Calculamos u0 condición inicial&lt;br /&gt;
u0=[zeros(1,1+N*3/5),3*ones(1,N*2/5)]';&lt;br /&gt;
% F=0 (no la consideramos)&lt;br /&gt;
sol(1,:)=u0'; % Guardamos la solucion&lt;br /&gt;
U=u0; % Inicializacion&lt;br /&gt;
% Calculamos U_n -&amp;gt; U_n+1&lt;br /&gt;
for j=1:length(t)-1 &lt;br /&gt;
k1=-K*U; % Calculamos k1=h*f(tn,yn)&lt;br /&gt;
k2=-K*(U+dt*k1); % Calculamos k2=h*f(tn+h/2,yn+1/2*k1)&lt;br /&gt;
% Meto los datos en el vector&lt;br /&gt;
U=U+(dt/2)*(k1+k2);&lt;br /&gt;
sol(j+1,:)= U'; % Guardamos solucion&lt;br /&gt;
end&lt;br /&gt;
%Dibujamos la solucion&lt;br /&gt;
[xx,tt]=meshgrid(x,t);&lt;br /&gt;
surf(xx,tt,sol);&lt;br /&gt;
}}&lt;br /&gt;
[[Archivo: mig.jpg|500px|thumb|centro|Gráfica concentración / espacio-tiempo. Resolución por el método de Euler modificado.]]&lt;br /&gt;
&lt;br /&gt;
== Conservación de la masa total de contaminante ==&lt;br /&gt;
A continuación demostraremos que la masa total de contaminante en el tubo se conserva a lo largo del tiempo, que se puede deducir a partir de la ecuación sin tener que resolverla. Integramos la ecuación y debido a las condiciones de frontera:&lt;br /&gt;
&amp;lt;math&amp;gt;\frac d {dt} \int_0^5 u(x,t)\,dx= \int_0^5 u_{xx}(x,t)\,dx= u_x(x,t)|_0^5=0&amp;lt;/math&amp;gt;&lt;br /&gt;
{{matlab| codigo=&lt;br /&gt;
%Datos&lt;br /&gt;
L=5; %Longitud de varilla&lt;br /&gt;
T=5;&lt;br /&gt;
q=1;&lt;br /&gt;
%Discretización temporal y espacial&lt;br /&gt;
N=500; %Número de subintervalos&lt;br /&gt;
h=L/N;&lt;br /&gt;
x=0:h:L; % Vector de espacio&lt;br /&gt;
dt=h/4; % Paso en tiempo&lt;br /&gt;
t=0:dt:T; % Vector de tiempos&lt;br /&gt;
% Matriz de coeficientes. Aproximacion de -q*u_xx&lt;br /&gt;
K=2*diag(ones(1,N+1))-diag(ones(1,N),1)-diag(ones(1,N),-1);&lt;br /&gt;
K(1,2)=-2;&lt;br /&gt;
K(N+1,N)=-2;&lt;br /&gt;
K=q*K/h^2;&lt;br /&gt;
% Calculamos u0 condición inicial&lt;br /&gt;
u0=[zeros(1,1+N*3/5),3*ones(1,N*2/5)]';&lt;br /&gt;
% F=0 (no la consideramos)&lt;br /&gt;
sol(1,:)=u0'; % Guardamos la solucion&lt;br /&gt;
U=u0; % Inicializacion&lt;br /&gt;
% Calculamos U_n -&amp;gt; U_n+1&lt;br /&gt;
for j=1:length(t)-1 &lt;br /&gt;
U=(eye(N+1)+dt*K)\(U+dt*F); &lt;br /&gt;
sol(j+1,:)= U'; % Guardamos solucion&lt;br /&gt;
end&lt;br /&gt;
% Calculamos el area de la funcion en cada tiempo (area = cantidad de contaminante)&lt;br /&gt;
areas=zeros(1,length(t));&lt;br /&gt;
for i=1:length(t)&lt;br /&gt;
f=sol(i,:);&lt;br /&gt;
w=trapz(x,f);&lt;br /&gt;
area(i)=w;&lt;br /&gt;
end&lt;br /&gt;
%Dibujamos&lt;br /&gt;
plot(t,area)&lt;br /&gt;
xlabel('Tiempo')&lt;br /&gt;
ylabel('Cantidad de contaminante')&lt;br /&gt;
}}&lt;br /&gt;
[[Archivo:aleeex.jpg|500px|thumb|centro|Conservación masa total de contaminante]]&lt;br /&gt;
[[Archivo:gime.jpg|500px|thumb|centro|Conservación masa total de contaminante]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Concentración a lo largo del tiempo==&lt;br /&gt;
La concentración de la sustancia contaminante en la varilla varía con el tiempo, pero en un cierto momento esta concentración se va homogeneizando, y deja de variar, entrando en un estado estacionario::&lt;br /&gt;
&amp;lt;math&amp;gt; u_t(x,t)- D*u_{xx}(x,t)=0 &amp;lt;/math&amp;gt; :    &lt;br /&gt;
&amp;lt;math&amp;gt; u_t(x,t)=0 \rightarrow D*u_{xx}(x,t)=0 &amp;lt;/math&amp;gt; :&lt;br /&gt;
&amp;lt;math&amp;gt; u=c_1*x+c_2 &amp;lt;/math&amp;gt; &lt;br /&gt;
Utizando Matlab comprobaremos que &amp;lt;math&amp;gt; c_1=0 &amp;lt;/math&amp;gt; &amp;lt;math&amp;gt; c_2=1.17 &amp;lt;/math&amp;gt;&lt;br /&gt;
Para tiempos grandes la concentración se estabiliza en torno a 1.17 en toda la varilla, de forma que la solución se asemejará a una función lineal constante.&lt;br /&gt;
&lt;br /&gt;
{{matlab| codigo=&lt;br /&gt;
%Datos&lt;br /&gt;
L=5; %Longitud de varilla&lt;br /&gt;
T=50;&lt;br /&gt;
q=1;&lt;br /&gt;
%Discretización temporal y espacial&lt;br /&gt;
dx=0.1; % Paso en espacio&lt;br /&gt;
N=L/dx; %Número de subintervalos&lt;br /&gt;
h=L/N;&lt;br /&gt;
x=0:h:L; % Vector de espacio&lt;br /&gt;
dt=h/4; % Paso en tiempo&lt;br /&gt;
t=0:dt:T; % Vector de tiempos&lt;br /&gt;
% Matriz de coeficientes. Aproximacion de -q*u_xx&lt;br /&gt;
K=2*diag(ones(1,N+1))-diag(ones(1,N),1)-diag(ones(1,N),-1);&lt;br /&gt;
K(1,2)=-2;&lt;br /&gt;
K(N+1,N)=-2;&lt;br /&gt;
K=q*K/h^2;&lt;br /&gt;
% Calculamos u0 condición inicial&lt;br /&gt;
u0=[zeros(1,1+N*3/5),3*ones(1,N*2/5)]';&lt;br /&gt;
% F=0 (no la consideramos)&lt;br /&gt;
sol(1,:)=u0'; % Guardamos la solucion&lt;br /&gt;
U=u0; % Inicializacion&lt;br /&gt;
% Calculamos U_n -&amp;gt; U_n+1&lt;br /&gt;
%Aplicamos método trapecio método del trapecio&lt;br /&gt;
for j=1:length(t)-1&lt;br /&gt;
U=(eye(N+1)+(dt*K)/2)\((eye(N+1)-(K*dt)/2)*U);&lt;br /&gt;
sol(j+1,:)= U'; % Guardamos solucion&lt;br /&gt;
end&lt;br /&gt;
%Solución estacionaria&lt;br /&gt;
a=sol(length(t),:);&lt;br /&gt;
b=sol(1,:);&lt;br /&gt;
c=sol((length(t)-1)/50+1,:);&lt;br /&gt;
d=sol((length(t)-1)*2/50+1,:);&lt;br /&gt;
e=sol((length(t)-1)*10/50+1,:);&lt;br /&gt;
hold on&lt;br /&gt;
plot(x,a,'xk','linewidth',2);&lt;br /&gt;
plot(x,b,'-m','linewidth',1);&lt;br /&gt;
plot(x,c,'-g','linewidth',1);&lt;br /&gt;
plot(x,d,'-y','linewidth',1);&lt;br /&gt;
plot(x,e,'-b','linewidth',1);&lt;br /&gt;
legend('u(50s)','u(0s)','u(1s)','u(2s)','u(10s)');&lt;br /&gt;
xlabel('Posición en la varilla')&lt;br /&gt;
ylabel('Concentracion')&lt;br /&gt;
hold off&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Soluciones(t).jpg|500px|thumb|centro|Soluciones a lo largo del tiempo]]&lt;br /&gt;
&lt;br /&gt;
La distancia entre la solución estacionaria y las soluciones para los siguientes instantes: 0s, 1s, 2s y 10s; se puede apreciar en la imagen anterior. &lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
Una vez analizado los datos, se demuestra que la sustancia contaminante se estabiliza en t=9.98s, con un error del 5%.&lt;br /&gt;
&lt;br /&gt;
En el caso de que consideremos Δx'=Δx/10,el tiempo en el que se estabiliza la cantidad de sustancia contaminante será t=10.05s, dato que será más preciso debido a que el paso realizado en el programa es menor.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Nueva condición de frontera==&lt;br /&gt;
&lt;br /&gt;
Si colocamos un limpiador, que elimina la sustancia contaminante, en el extremo izquierdo de la varilla, varían las condiciones de contorno del problema. En este caso, en el extremo izquierdo, la condición inicial será de tipo Dirichlet ya que se esta variación esta provocada por un mecanismo externo que actúa sobre el extremo.&lt;br /&gt;
&amp;lt;math&amp;gt;\begin{cases}&lt;br /&gt;
u_t(x,t)- D u_{xx}(x,t)= 0 ; x\in (0,5) \\&lt;br /&gt;
u(x,0)=u_0 , x\in (0,5) \\&lt;br /&gt;
u(0,t)=0 , u_x(5,t)=0 ; t\geq 0&lt;br /&gt;
\end{cases}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Dadas las nuevas condiciones resolvemos el problema por el método de diferencias finitas.&lt;/div&gt;</summary>
		<author><name>Karlo André</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Difusi%C3%B3n_de_una_sustancia_contaminante_(Grupo_10)&amp;diff=12688</id>
		<title>Difusión de una sustancia contaminante (Grupo 10)</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Difusi%C3%B3n_de_una_sustancia_contaminante_(Grupo_10)&amp;diff=12688"/>
				<updated>2014-05-19T13:14:09Z</updated>
		
		<summary type="html">&lt;p&gt;Karlo André: /* Nueva condición de frontera */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;''''''Texto en negrita''''''[[Archivo:nuriat.png|200px|thumb|right|Tubo con sustancia contaminante]]&lt;br /&gt;
La difusión implica un movimiento espontáneo y desordenado de moléculas individuales y, especialmente, nos interesa la difusión de moléculas de una sustancia disuelta en otra.&lt;br /&gt;
&lt;br /&gt;
La difusión de una sustancia puede considerarse análoga al flujo de calor, y la ley de Fick establece que el ritmo de difusión por unidad de superficie, en dirección perpendicular a ésta, es proporcional al gradiente de la concentración de esa sustancia en esa dirección. La concentración es la masa de la sustancia por unidad de volumen, y el gradiente de concentración es la variación de concentración por unidad de distancia.&lt;br /&gt;
&lt;br /&gt;
Para determinar como se distribuye la concentración de una sustancia contaminante tomaremos como ejemplo un tubo largo compuesto por dos sustancias de las cuáles una de ellas es contaminante.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
= Simplificación del problema =&lt;br /&gt;
&lt;br /&gt;
Para que este problema resulte más sencillo aplicaremos una serie de condiciones, facilitando el cálculo del mismo.&lt;br /&gt;
&lt;br /&gt;
En primer lugar denotaremos su concentración &amp;lt;math&amp;gt; u &amp;lt;/math&amp;gt;, concentración de contaminante en cada posición del tubo y constante en cada sección, medida en &amp;lt;math&amp;gt; \frac{mol}{m^2*s} &amp;lt;/math&amp;gt;. &lt;br /&gt;
&lt;br /&gt;
Supondremos que el tubo mide L=5 m, ocupando el intervalo &amp;lt;math&amp;gt; x \in (0,L) &amp;lt;/math&amp;gt;, y que la concentración es la misma en cualquier punto de la sección transversal del tubo. Por tanto, la concentración dependerá unicamente de dos variables &amp;lt;math&amp;gt; u = u(x,t) &amp;lt;/math&amp;gt;. En los extremos se ha colocado un aislante que hace que el flujo de contaminante al exterior del tubo sea nulo. Además, consideraremos la simplificación de que se trata de un tubo aislado por sus laterales, pero abierto por las bases del cilindro.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Ley de conservación de masa ==&lt;br /&gt;
&lt;br /&gt;
Tras una serie de experimentos realizados por Lavoisier, se pusieron de manifiesto que si tenemos en cuenta todas las sustancias que forman parte en una reacción química y todos los productos formados, nunca varía la masa. Esta ley exige que no haya una generación espontánea de materia. Es decir, en la región del espacio estudiada, no existe entrada o salida por un punto cualquiera (frontera o interior), la masa en esta región se mantiene constante. Esta es la ley de la conservación de la masa, que podemos enunciarla, pues, de la siguiente manera: &amp;lt;br /&amp;gt;&lt;br /&gt;
''&amp;quot;En toda reacción química la masa se conserva, esto es, la masa total de los reactivos es igual a la masa total de los productos&amp;quot;'' &amp;lt;br /&amp;gt;&lt;br /&gt;
La ley de conservación de masas exige que no haya una generación espontánea de materia. Es decir, en la región del espacio estudiada, no existe entrada o salida por un punto cualquiera (frontera o interior), la masa en esta región se mantiene constante.&lt;br /&gt;
&lt;br /&gt;
Esta suposición, en términos de variación de masa, puede quedar determinada como:&lt;br /&gt;
&lt;br /&gt;
''Variación de la masa en el tiempo = flujo de masa a través de la frontera por unidad de tiempo + flujo de masa generada en el interior por unidad de tiempo. ''&lt;br /&gt;
&lt;br /&gt;
== Ley de Fick ==&lt;br /&gt;
Se trata de una ley cuantitativa en forma diferencial que describe la difusión de materia o energía en un medio en el que inicialmente existe equilibrio químico o físico. Esta ley se trata de una generalización de los fenómenos descritos por la '''Ley de Fourier''', ya que esta es una consideración concreta del calor.&lt;br /&gt;
&lt;br /&gt;
La ley de Fick anuncia que en el caso de existir diferencias de concentración en cualquier especie, el paso de estas especies se llevará a cabo desde las regiones con mayor concentración a las de menor. Formulado matemáticamente:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;F(x,t)=-D\frac{\partial u}{\partial x}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Donde &amp;lt;math&amp;gt;F&amp;lt;/math&amp;gt; es el flujo de la sustancia y &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; el coeficiente de difusión, que representa la facilidad en que un soluto particular se mueve por un disolvente determinado.&lt;br /&gt;
&lt;br /&gt;
La ley de Fick establece que el flujo de difusión del contaminante es proporcional a la variación de concentración:&lt;br /&gt;
&amp;lt;math&amp;gt; F(x,t)=-D\frac{\partial u}{\partial x} &amp;lt;/math&amp;gt;&lt;br /&gt;
donde D es el coeficiente de difusión (medido en &amp;lt;math&amp;gt; \frac{m^2}{s} &amp;lt;/math&amp;gt;), que depende de las propiedades físicas de los compuestos, y que se supone constante D=1.&lt;br /&gt;
&lt;br /&gt;
= Modelización de la ecuación diferencial =&lt;br /&gt;
&lt;br /&gt;
Aplicando el principio de conservación de la masa y la ley de Fourier, definimos la variable &amp;lt;math&amp;gt; u(x,t)&amp;lt;/math&amp;gt; en unidades de sustancia por área, es decir, concentración por superficie del tubo.&lt;br /&gt;
&lt;br /&gt;
Consideramos &amp;lt;math&amp;gt; A &amp;lt;/math&amp;gt; como variable superficie, y tomamos un pequeño trozo, definido por &amp;lt;math&amp;gt;\Delta x&amp;lt;/math&amp;gt;. Entonces, para obtener la variación de la masa en el tiempo:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; A u(x,t) \Delta x &amp;lt;/math&amp;gt; &lt;br /&gt;
&lt;br /&gt;
Y derivando en el tiempo:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; A u_t(x,t) \Delta x &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
obtenemos el primer término de la igualdad anteriormente enunciada.&lt;br /&gt;
&lt;br /&gt;
En el segundo, consideramos nulo el flujo de masa en los puntos interiores por unidad de tiempo, pues suponemos la tubería perfecta y sin sumideros.&lt;br /&gt;
&lt;br /&gt;
Como la superﬁcie lateral del tubo está aislada, solamente habrá flujo de sustancia en la dirección del eje &amp;lt;math&amp;gt;x&amp;lt;/math&amp;gt;. Si &amp;lt;math&amp;gt;F(x,t)&amp;gt; 0&amp;lt;/math&amp;gt; pensamos que el ﬂujo va hacia la derecha, si &amp;lt;math&amp;gt;F(x,t)&amp;lt; 0&amp;lt;/math&amp;gt;, este va a hacia la izquierda. El ﬂujo de&lt;br /&gt;
calor en un intervalo &amp;lt;math&amp;gt;[x, x + ∆x ] &amp;lt;/math&amp;gt; viene dado dado por:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;F(x,t)A-F(x+\Delta x, t)A&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Con lo que queda &amp;lt;math&amp;gt;A u_t(x,t) \Delta x = F(x,t)A-F(x+\Delta x, t)A&amp;lt;/math&amp;gt;, y al dividir &amp;lt;math&amp;gt;A \Delta x&amp;lt;/math&amp;gt;, nos queda &amp;lt;math&amp;gt;u_t(x,t)= \frac {F(x,t)-F(x+\Delta x, t)}{\Delta x}&amp;lt;/math&amp;gt;. &amp;lt;br /&amp;gt;&lt;br /&gt;
Como &amp;lt;math&amp;gt;\Delta x \rightarrow 0 &amp;lt;/math&amp;gt;, &amp;lt;math&amp;gt;u_t(x,t)= -F_x(x,t)&amp;lt;/math&amp;gt;, y aplicando ley de Fick, &amp;lt;math&amp;gt;u_t(x,t)=-\frac{\partial }{\partial x}(-D u_x(x,t)) = D u_xx(x,t) &amp;lt;/math&amp;gt;.&amp;lt;br /&amp;gt;&lt;br /&gt;
Con lo que resulta una ecuación en derivadas parciales que determina la concentración de sustancia:&lt;br /&gt;
&amp;lt;math&amp;gt;u_t(x,t)- D u_xx(x,t)= 0 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Planteamiento del problema bien propuesto ==&lt;br /&gt;
&lt;br /&gt;
Suponemos que el flujo será nula al haber una tapa en los extremos del tubo, con lo que el problema bien propuesto quedaría::&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\begin{cases}&lt;br /&gt;
u_t(x,t)- D u_{xx}(x,t)= 0 ; x\in (0,5) \\&lt;br /&gt;
u(x,0)=u_0 , x\in (0,5) \\&lt;br /&gt;
u_x(0,t)=0 , u_x(5,t)=0 ; t\geq 0&lt;br /&gt;
\end{cases}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= Resolución numérica =&lt;br /&gt;
Para la resolución de ésta ecuación necesitaremos mínimo tres condiciones, dos de las cuales serán de contorno, y la otra será la condición inicial.Si suponemos &amp;lt;math&amp;gt;u_0(x,0)&amp;lt;/math&amp;gt;, entonces:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; u_0(x,0)=\begin{cases}&lt;br /&gt;
0,  si x\leq 3\\&lt;br /&gt;
3,  si x&amp;gt;3&lt;br /&gt;
\end{cases}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Resolución por el método de las diferencias finitas ==&lt;br /&gt;
En el primer caso particular que estudiaremos, trataremos de obtener una resolución numérica del problema anteriormente planteado, dónde tenemos las fronteras aisladas y las concentraciones iniciales conocidas:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\begin{cases}&lt;br /&gt;
u_t(x,t)- D u_{xx}(x,t)= 0; x\in (0,5), t\geq 0 \\&lt;br /&gt;
u_0(x,0), x\in (0,5) \\&lt;br /&gt;
u_x(0,t)=0, u_x(5,t)=0, t\geq 0&lt;br /&gt;
\end{cases}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
La resolución por el método de las diferencias finitas se basa en expresar el problema continuo a un sistema discreto de ecuaciones diferenciales de primer orden. Particularizando para nuestro caso con las condiciones dadas, el problema planteado sería:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\begin{cases}&lt;br /&gt;
u'_n(t)+\frac{-u_{n-1}(t)+2u_n(t)+u_{n+1}(t)}{h^2} \\&lt;br /&gt;
\frac{u_1(t)-u_-1(t)}{2h} \rightarrow u_1(t)=u_-1(t) \\&lt;br /&gt;
\frac{u_{N+1}(t)-u_{N-1}(t)}{2h} \rightarrow u_{N+1}(t)=u_{N-1}\\&lt;br /&gt;
u_n(0)=u^0(x)&lt;br /&gt;
\end{cases}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Por lo que tenemos un sistema de la forma:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\begin{cases}&lt;br /&gt;
U'(t)+KU(t)=F(t)=0\\&lt;br /&gt;
U(0)=U^0&lt;br /&gt;
\end{cases}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Con &amp;lt;math&amp;gt;N+1&amp;lt;/math&amp;gt; ecuaciones.&lt;br /&gt;
==== Resolución por método del trapecio ====&lt;br /&gt;
Suponiendo que en el instante inicial se verifica  :&amp;lt;math&amp;gt;&lt;br /&gt;
u(x,0)=\left\{\begin{matrix}\\0, x≤3\\3, x&amp;gt;3\end{matrix}\right.&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Si tomamos &amp;lt;math&amp;gt;\triangle t= \triangle x/4&amp;lt;/math&amp;gt; en &amp;lt;math&amp;gt;t\in\ [0,5]&amp;lt;/math&amp;gt;, con &amp;lt;math&amp;gt;\triangle x=0.1&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
El código en MATLAB del método sería:&lt;br /&gt;
&lt;br /&gt;
{{matlab| codigo=&lt;br /&gt;
%Datos&lt;br /&gt;
L=5; %Longitud de varilla&lt;br /&gt;
T=5; %tiempo final&lt;br /&gt;
q=1;&lt;br /&gt;
%Discretización temporal y espacial&lt;br /&gt;
dx=0.1; % Paso en espacio&lt;br /&gt;
N=L/dx; %Número de subintervalos&lt;br /&gt;
x=dx:dx:L-dx; % Vector de espacio&lt;br /&gt;
dt=dx/4; % Paso en tiempo&lt;br /&gt;
t=0:dt:T; % Vector de tiempos&lt;br /&gt;
% Matriz de coeficientes. Aproximacion de -q*u_xx&lt;br /&gt;
K=2*diag(ones(1,N+1))-diag(ones(1,N),1)-diag(ones(1,N),-1);&lt;br /&gt;
K(1,2)=-2;&lt;br /&gt;
K(N+1,N)=-2;&lt;br /&gt;
K=q*K/dx^2;&lt;br /&gt;
% Calculamos u0 condición inicial&lt;br /&gt;
u0=[zeros(1,1+N*3/5),3*ones(1,N*2/5)]';&lt;br /&gt;
% F=0 (no la consideramos)&lt;br /&gt;
sol(1,:)=u0'; % Guardamos la solucion&lt;br /&gt;
U=u0; % Inicializacion&lt;br /&gt;
% Calculamos U_n -&amp;gt; U_n+1&lt;br /&gt;
%Aplicamos método trapecio método del trapecio&lt;br /&gt;
for j=1:length(t)-1&lt;br /&gt;
U=(eye(N+1)+(dt*K)/2)\((eye(N+1)-(K*dt)/2)*U);&lt;br /&gt;
sol(j+1,:)= U'; % Guardamos solucion&lt;br /&gt;
end&lt;br /&gt;
%Dibujamos la solucion&lt;br /&gt;
[xx,tt]=meshgrid(x,t);&lt;br /&gt;
surf(xx,tt,sol);&lt;br /&gt;
}}&lt;br /&gt;
[[Archivo:nur.jpg|500px|thumb|centro|Gráfica concentración / espacio-tiempo. Resolución por el método del trapecio.]]&lt;br /&gt;
&lt;br /&gt;
==== Resolución por método de Euler explícito ====&lt;br /&gt;
{{matlab| codigo=&lt;br /&gt;
%Datos&lt;br /&gt;
L=5; %Longitud de varilla&lt;br /&gt;
T=5; %tiempo final&lt;br /&gt;
q=1;&lt;br /&gt;
%Discretización temporal y espacial&lt;br /&gt;
dx=0.1; % Paso en espacio&lt;br /&gt;
N=L/dx; %Número de subintervalos&lt;br /&gt;
x=0:dx:L; % Vector de espacio&lt;br /&gt;
dt=dx/20; % Paso en tiempo&lt;br /&gt;
t=0:dt:T; % Vector de tiempos&lt;br /&gt;
% Matriz de coeficientes. Aproximacion de -q*u_xx&lt;br /&gt;
K=2*diag(ones(1,N+1))-diag(ones(1,N),1)-diag(ones(1,N),-1);&lt;br /&gt;
K(1,2)=-2;&lt;br /&gt;
K(N+1,N)=-2;&lt;br /&gt;
K=q*K/dx^2;&lt;br /&gt;
% Calculamos u0 condición inicial&lt;br /&gt;
u0=[zeros(1,1+N*3/5),3*ones(1,N*2/5)]';&lt;br /&gt;
% F=0 (no la consideramos)&lt;br /&gt;
sol(1,:)=u0'; % Guardamos la solucion&lt;br /&gt;
U=u0; % Inicializacion&lt;br /&gt;
% Calculamos U_n -&amp;gt; U_n+1&lt;br /&gt;
%Aplicamos método Euler explícito&lt;br /&gt;
for j=1:length(t)-1 &lt;br /&gt;
k1=-K*U; % Calculamos k1=h*f(tn,yn)&lt;br /&gt;
k2=-K*(U+dt*k1); % Calculamos k2=h*f(tn+h/2,yn+1/2*k1)&lt;br /&gt;
% Meto los datos en el vector&lt;br /&gt;
U=U+(dt/2)*(k1+k2);&lt;br /&gt;
sol(j+1,:)= U'; % Guardamos solucion&lt;br /&gt;
end&lt;br /&gt;
%Dibujamos la solucion&lt;br /&gt;
[xx,tt]=meshgrid(x,t);&lt;br /&gt;
surf(xx,tt,sol);&lt;br /&gt;
}}&lt;br /&gt;
[[Archivo:mig.jpg|500px|thumb|centro|Gráfica concentración / espacio-tiempo. Resolución por el método de Euler explícito.]]&lt;br /&gt;
&lt;br /&gt;
==== Resolución por método de Euler implícito ====&lt;br /&gt;
{{matlab| codigo=&lt;br /&gt;
%Datos&lt;br /&gt;
L=5; %Longitud de varilla&lt;br /&gt;
T=5;&lt;br /&gt;
q=1;&lt;br /&gt;
%Discretización temporal y espacial&lt;br /&gt;
dx=0.1; % Paso en espacio&lt;br /&gt;
N=L/dx; %Número de subintervalos&lt;br /&gt;
h=L/N;&lt;br /&gt;
x=0:h:L; % Vector de espacio&lt;br /&gt;
dt=h/20; % Paso en tiempo&lt;br /&gt;
t=0:dt:T; % Vector de tiempos&lt;br /&gt;
% Matriz de coeficientes. Aproximacion de -q*u_xx&lt;br /&gt;
K=2*diag(ones(1,N+1))-diag(ones(1,N),1)-diag(ones(1,N),-1);&lt;br /&gt;
K(1,2)=-2;&lt;br /&gt;
K(N+1,N)=-2;&lt;br /&gt;
K=q*K/h^2;&lt;br /&gt;
% Calculamos u0 condición inicial&lt;br /&gt;
u0=[zeros(1,1+N*3/5),3*ones(1,N*2/5)]';&lt;br /&gt;
% F=0 (no la consideramos)&lt;br /&gt;
sol(1,:)=u0'; % Guardamos la solucion&lt;br /&gt;
U=u0; % Inicializacion&lt;br /&gt;
% Calculamos U_n -&amp;gt; U_n+1&lt;br /&gt;
% Aplicamos método implícito&lt;br /&gt;
for j=1:length(t)-1 &lt;br /&gt;
U=U-dt*K*U; &lt;br /&gt;
sol(j+1,:)= U'; % Guardamos solucion&lt;br /&gt;
end&lt;br /&gt;
%Dibujamos la solucion&lt;br /&gt;
[xx,tt]=meshgrid(x,t);&lt;br /&gt;
surf(xx,tt,sol);&lt;br /&gt;
}}&lt;br /&gt;
[[Archivo:migap.jpg|500px|thumb|centro|Gráfica concentración / espacio-tiempo. Resolución por el método de Euler implícito.]]&lt;br /&gt;
&lt;br /&gt;
==== Resolución por método de Euler modificado ====&lt;br /&gt;
{{matlab| codigo=&lt;br /&gt;
%Datos&lt;br /&gt;
L=5; %Longitud de varilla&lt;br /&gt;
T=5;&lt;br /&gt;
q=1;&lt;br /&gt;
%Discretización temporal y espacial&lt;br /&gt;
dx=0.1; % Paso en espacio&lt;br /&gt;
N=L/dx; %Número de subintervalos&lt;br /&gt;
h=L/N;&lt;br /&gt;
x=0:h:L; % Vector de espacio&lt;br /&gt;
dt=h/20; % Paso en tiempo&lt;br /&gt;
t=0:dt:T; % Vector de tiempos&lt;br /&gt;
% Matriz de coeficientes. Aproximacion de -q*u_xx&lt;br /&gt;
K=2*diag(ones(1,N+1))-diag(ones(1,N),1)-diag(ones(1,N),-1);&lt;br /&gt;
K(1,2)=-2;&lt;br /&gt;
K(N+1,N)=-2;&lt;br /&gt;
K=q*K/h^2;&lt;br /&gt;
% Calculamos u0 condición inicial&lt;br /&gt;
u0=[zeros(1,1+N*3/5),3*ones(1,N*2/5)]';&lt;br /&gt;
% F=0 (no la consideramos)&lt;br /&gt;
sol(1,:)=u0'; % Guardamos la solucion&lt;br /&gt;
U=u0; % Inicializacion&lt;br /&gt;
% Calculamos U_n -&amp;gt; U_n+1&lt;br /&gt;
for j=1:length(t)-1 &lt;br /&gt;
k1=-K*U; % Calculamos k1=h*f(tn,yn)&lt;br /&gt;
k2=-K*(U+dt*k1); % Calculamos k2=h*f(tn+h/2,yn+1/2*k1)&lt;br /&gt;
% Meto los datos en el vector&lt;br /&gt;
U=U+(dt/2)*(k1+k2);&lt;br /&gt;
sol(j+1,:)= U'; % Guardamos solucion&lt;br /&gt;
end&lt;br /&gt;
%Dibujamos la solucion&lt;br /&gt;
[xx,tt]=meshgrid(x,t);&lt;br /&gt;
surf(xx,tt,sol);&lt;br /&gt;
}}&lt;br /&gt;
[[Archivo: mig.jpg|500px|thumb|centro|Gráfica concentración / espacio-tiempo. Resolución por el método de Euler modificado.]]&lt;br /&gt;
&lt;br /&gt;
== Conservación de la masa total de contaminante ==&lt;br /&gt;
A continuación demostraremos que la masa total de contaminante en el tubo se conserva a lo largo del tiempo, que se puede deducir a partir de la ecuación sin tener que resolverla. Integramos la ecuación y debido a las condiciones de frontera:&lt;br /&gt;
&amp;lt;math&amp;gt;\frac d {dt} \int_0^5 u(x,t)\,dx= \int_0^5 u_{xx}(x,t)\,dx= u_x(x,t)|_0^5=0&amp;lt;/math&amp;gt;&lt;br /&gt;
{{matlab| codigo=&lt;br /&gt;
%Datos&lt;br /&gt;
L=5; %Longitud de varilla&lt;br /&gt;
T=5;&lt;br /&gt;
q=1;&lt;br /&gt;
%Discretización temporal y espacial&lt;br /&gt;
N=500; %Número de subintervalos&lt;br /&gt;
h=L/N;&lt;br /&gt;
x=0:h:L; % Vector de espacio&lt;br /&gt;
dt=h/4; % Paso en tiempo&lt;br /&gt;
t=0:dt:T; % Vector de tiempos&lt;br /&gt;
% Matriz de coeficientes. Aproximacion de -q*u_xx&lt;br /&gt;
K=2*diag(ones(1,N+1))-diag(ones(1,N),1)-diag(ones(1,N),-1);&lt;br /&gt;
K(1,2)=-2;&lt;br /&gt;
K(N+1,N)=-2;&lt;br /&gt;
K=q*K/h^2;&lt;br /&gt;
% Calculamos u0 condición inicial&lt;br /&gt;
u0=[zeros(1,1+N*3/5),3*ones(1,N*2/5)]';&lt;br /&gt;
% F=0 (no la consideramos)&lt;br /&gt;
sol(1,:)=u0'; % Guardamos la solucion&lt;br /&gt;
U=u0; % Inicializacion&lt;br /&gt;
% Calculamos U_n -&amp;gt; U_n+1&lt;br /&gt;
for j=1:length(t)-1 &lt;br /&gt;
U=(eye(N+1)+dt*K)\(U+dt*F); &lt;br /&gt;
sol(j+1,:)= U'; % Guardamos solucion&lt;br /&gt;
end&lt;br /&gt;
% Calculamos el area de la funcion en cada tiempo (area = cantidad de contaminante)&lt;br /&gt;
areas=zeros(1,length(t));&lt;br /&gt;
for i=1:length(t)&lt;br /&gt;
f=sol(i,:);&lt;br /&gt;
w=trapz(x,f);&lt;br /&gt;
area(i)=w;&lt;br /&gt;
end&lt;br /&gt;
%Dibujamos&lt;br /&gt;
plot(t,area)&lt;br /&gt;
xlabel('Tiempo')&lt;br /&gt;
ylabel('Cantidad de contaminante')&lt;br /&gt;
}}&lt;br /&gt;
[[Archivo:aleeex.jpg|500px|thumb|centro|Conservación masa total de contaminante]]&lt;br /&gt;
[[Archivo:gime.jpg|500px|thumb|centro|Conservación masa total de contaminante]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Concentración a lo largo del tiempo==&lt;br /&gt;
La concentración de la sustancia contaminante en la varilla varía con el tiempo, pero en un cierto momento esta concentración se va homogeneizando, y deja de variar, entrando en un estado estacionario::&lt;br /&gt;
&amp;lt;math&amp;gt; u_t(x,t)- D*u_{xx}(x,t)=0 &amp;lt;/math&amp;gt; :    &lt;br /&gt;
&amp;lt;math&amp;gt; u_t(x,t)=0 \rightarrow D*u_{xx}(x,t)=0 &amp;lt;/math&amp;gt; :&lt;br /&gt;
&amp;lt;math&amp;gt; u=c_1*x+c_2 &amp;lt;/math&amp;gt; &lt;br /&gt;
Utizando Matlab comprobaremos que &amp;lt;math&amp;gt; c_1=0 &amp;lt;/math&amp;gt; &amp;lt;math&amp;gt; c_2=1.17 &amp;lt;/math&amp;gt;&lt;br /&gt;
Para tiempos grandes la concentración se estabiliza en torno a 1.17 en toda la varilla, de forma que la solución se asemejará a una función lineal constante.&lt;br /&gt;
&lt;br /&gt;
{{matlab| codigo=&lt;br /&gt;
%Datos&lt;br /&gt;
L=5; %Longitud de varilla&lt;br /&gt;
T=50;&lt;br /&gt;
q=1;&lt;br /&gt;
%Discretización temporal y espacial&lt;br /&gt;
dx=0.1; % Paso en espacio&lt;br /&gt;
N=L/dx; %Número de subintervalos&lt;br /&gt;
h=L/N;&lt;br /&gt;
x=0:h:L; % Vector de espacio&lt;br /&gt;
dt=h/4; % Paso en tiempo&lt;br /&gt;
t=0:dt:T; % Vector de tiempos&lt;br /&gt;
% Matriz de coeficientes. Aproximacion de -q*u_xx&lt;br /&gt;
K=2*diag(ones(1,N+1))-diag(ones(1,N),1)-diag(ones(1,N),-1);&lt;br /&gt;
K(1,2)=-2;&lt;br /&gt;
K(N+1,N)=-2;&lt;br /&gt;
K=q*K/h^2;&lt;br /&gt;
% Calculamos u0 condición inicial&lt;br /&gt;
u0=[zeros(1,1+N*3/5),3*ones(1,N*2/5)]';&lt;br /&gt;
% F=0 (no la consideramos)&lt;br /&gt;
sol(1,:)=u0'; % Guardamos la solucion&lt;br /&gt;
U=u0; % Inicializacion&lt;br /&gt;
% Calculamos U_n -&amp;gt; U_n+1&lt;br /&gt;
%Aplicamos método trapecio método del trapecio&lt;br /&gt;
for j=1:length(t)-1&lt;br /&gt;
U=(eye(N+1)+(dt*K)/2)\((eye(N+1)-(K*dt)/2)*U);&lt;br /&gt;
sol(j+1,:)= U'; % Guardamos solucion&lt;br /&gt;
end&lt;br /&gt;
%Solución estacionaria&lt;br /&gt;
a=sol(length(t),:);&lt;br /&gt;
b=sol(1,:);&lt;br /&gt;
c=sol((length(t)-1)/50+1,:);&lt;br /&gt;
d=sol((length(t)-1)*2/50+1,:);&lt;br /&gt;
e=sol((length(t)-1)*10/50+1,:);&lt;br /&gt;
hold on&lt;br /&gt;
plot(x,a,'xk','linewidth',2);&lt;br /&gt;
plot(x,b,'-m','linewidth',1);&lt;br /&gt;
plot(x,c,'-g','linewidth',1);&lt;br /&gt;
plot(x,d,'-y','linewidth',1);&lt;br /&gt;
plot(x,e,'-b','linewidth',1);&lt;br /&gt;
legend('u(50s)','u(0s)','u(1s)','u(2s)','u(10s)');&lt;br /&gt;
xlabel('Posición en la varilla')&lt;br /&gt;
ylabel('Concentracion')&lt;br /&gt;
hold off&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Soluciones(t).jpg|500px|thumb|centro|Soluciones a lo largo del tiempo]]&lt;br /&gt;
&lt;br /&gt;
La distancia entre la solución estacionaria y las soluciones para los siguientes instantes: 0s, 1s, 2s y 10s; se puede apreciar en la imagen anterior. &lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
Una vez analizado los datos, se demuestra que la sustancia contaminante se estabiliza en t=9.98s, con un error del 5%.&lt;br /&gt;
&lt;br /&gt;
En el caso de que consideremos Δx'=Δx/10,el tiempo en el que se estabiliza la cantidad de sustancia contaminante será t=10.05s, dato que será más preciso debido a que el paso realizado en el programa es menor.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Nueva condición de frontera==&lt;br /&gt;
&lt;br /&gt;
Si colocásemos un limpiador, que elimina la sustancia contaminante, en el extremo izquierdo de la varilla, las ecuaciones que nos proporcionan datos sobre su difusión cambiarán debido a la variación de las condiciones.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\begin{cases}&lt;br /&gt;
u_t(x,t)- D u_{xx}(x,t)= 0 ; x\in (0,5) \\&lt;br /&gt;
u(x,0)=u_0 , x\in (0,5) \\&lt;br /&gt;
u(0,t)=0 , u_x(5,t)=0 ; t\geq 0&lt;br /&gt;
\end{cases}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;/div&gt;</summary>
		<author><name>Karlo André</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Difusi%C3%B3n_de_una_sustancia_contaminante_(Grupo_10)&amp;diff=12686</id>
		<title>Difusión de una sustancia contaminante (Grupo 10)</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Difusi%C3%B3n_de_una_sustancia_contaminante_(Grupo_10)&amp;diff=12686"/>
				<updated>2014-05-19T13:11:08Z</updated>
		
		<summary type="html">&lt;p&gt;Karlo André: /* Nueva condición de frontera */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;''''''Texto en negrita''''''[[Archivo:nuriat.png|200px|thumb|right|Tubo con sustancia contaminante]]&lt;br /&gt;
La difusión implica un movimiento espontáneo y desordenado de moléculas individuales y, especialmente, nos interesa la difusión de moléculas de una sustancia disuelta en otra.&lt;br /&gt;
&lt;br /&gt;
La difusión de una sustancia puede considerarse análoga al flujo de calor, y la ley de Fick establece que el ritmo de difusión por unidad de superficie, en dirección perpendicular a ésta, es proporcional al gradiente de la concentración de esa sustancia en esa dirección. La concentración es la masa de la sustancia por unidad de volumen, y el gradiente de concentración es la variación de concentración por unidad de distancia.&lt;br /&gt;
&lt;br /&gt;
Para determinar como se distribuye la concentración de una sustancia contaminante tomaremos como ejemplo un tubo largo compuesto por dos sustancias de las cuáles una de ellas es contaminante.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
= Simplificación del problema =&lt;br /&gt;
&lt;br /&gt;
Para que este problema resulte más sencillo aplicaremos una serie de condiciones, facilitando el cálculo del mismo.&lt;br /&gt;
&lt;br /&gt;
En primer lugar denotaremos su concentración &amp;lt;math&amp;gt; u &amp;lt;/math&amp;gt;, concentración de contaminante en cada posición del tubo y constante en cada sección, medida en &amp;lt;math&amp;gt; \frac{mol}{m^2*s} &amp;lt;/math&amp;gt;. &lt;br /&gt;
&lt;br /&gt;
Supondremos que el tubo mide L=5 m, ocupando el intervalo &amp;lt;math&amp;gt; x \in (0,L) &amp;lt;/math&amp;gt;, y que la concentración es la misma en cualquier punto de la sección transversal del tubo. Por tanto, la concentración dependerá unicamente de dos variables &amp;lt;math&amp;gt; u = u(x,t) &amp;lt;/math&amp;gt;. En los extremos se ha colocado un aislante que hace que el flujo de contaminante al exterior del tubo sea nulo. Además, consideraremos la simplificación de que se trata de un tubo aislado por sus laterales, pero abierto por las bases del cilindro.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Ley de conservación de masa ==&lt;br /&gt;
&lt;br /&gt;
Tras una serie de experimentos realizados por Lavoisier, se pusieron de manifiesto que si tenemos en cuenta todas las sustancias que forman parte en una reacción química y todos los productos formados, nunca varía la masa. Esta ley exige que no haya una generación espontánea de materia. Es decir, en la región del espacio estudiada, no existe entrada o salida por un punto cualquiera (frontera o interior), la masa en esta región se mantiene constante. Esta es la ley de la conservación de la masa, que podemos enunciarla, pues, de la siguiente manera: &amp;lt;br /&amp;gt;&lt;br /&gt;
''&amp;quot;En toda reacción química la masa se conserva, esto es, la masa total de los reactivos es igual a la masa total de los productos&amp;quot;'' &amp;lt;br /&amp;gt;&lt;br /&gt;
La ley de conservación de masas exige que no haya una generación espontánea de materia. Es decir, en la región del espacio estudiada, no existe entrada o salida por un punto cualquiera (frontera o interior), la masa en esta región se mantiene constante.&lt;br /&gt;
&lt;br /&gt;
Esta suposición, en términos de variación de masa, puede quedar determinada como:&lt;br /&gt;
&lt;br /&gt;
''Variación de la masa en el tiempo = flujo de masa a través de la frontera por unidad de tiempo + flujo de masa generada en el interior por unidad de tiempo. ''&lt;br /&gt;
&lt;br /&gt;
== Ley de Fick ==&lt;br /&gt;
Se trata de una ley cuantitativa en forma diferencial que describe la difusión de materia o energía en un medio en el que inicialmente existe equilibrio químico o físico. Esta ley se trata de una generalización de los fenómenos descritos por la '''Ley de Fourier''', ya que esta es una consideración concreta del calor.&lt;br /&gt;
&lt;br /&gt;
La ley de Fick anuncia que en el caso de existir diferencias de concentración en cualquier especie, el paso de estas especies se llevará a cabo desde las regiones con mayor concentración a las de menor. Formulado matemáticamente:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;F(x,t)=-D\frac{\partial u}{\partial x}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Donde &amp;lt;math&amp;gt;F&amp;lt;/math&amp;gt; es el flujo de la sustancia y &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; el coeficiente de difusión, que representa la facilidad en que un soluto particular se mueve por un disolvente determinado.&lt;br /&gt;
&lt;br /&gt;
La ley de Fick establece que el flujo de difusión del contaminante es proporcional a la variación de concentración:&lt;br /&gt;
&amp;lt;math&amp;gt; F(x,t)=-D\frac{\partial u}{\partial x} &amp;lt;/math&amp;gt;&lt;br /&gt;
donde D es el coeficiente de difusión (medido en &amp;lt;math&amp;gt; \frac{m^2}{s} &amp;lt;/math&amp;gt;), que depende de las propiedades físicas de los compuestos, y que se supone constante D=1.&lt;br /&gt;
&lt;br /&gt;
= Modelización de la ecuación diferencial =&lt;br /&gt;
&lt;br /&gt;
Aplicando el principio de conservación de la masa y la ley de Fourier, definimos la variable &amp;lt;math&amp;gt; u(x,t)&amp;lt;/math&amp;gt; en unidades de sustancia por área, es decir, concentración por superficie del tubo.&lt;br /&gt;
&lt;br /&gt;
Consideramos &amp;lt;math&amp;gt; A &amp;lt;/math&amp;gt; como variable superficie, y tomamos un pequeño trozo, definido por &amp;lt;math&amp;gt;\Delta x&amp;lt;/math&amp;gt;. Entonces, para obtener la variación de la masa en el tiempo:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; A u(x,t) \Delta x &amp;lt;/math&amp;gt; &lt;br /&gt;
&lt;br /&gt;
Y derivando en el tiempo:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; A u_t(x,t) \Delta x &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
obtenemos el primer término de la igualdad anteriormente enunciada.&lt;br /&gt;
&lt;br /&gt;
En el segundo, consideramos nulo el flujo de masa en los puntos interiores por unidad de tiempo, pues suponemos la tubería perfecta y sin sumideros.&lt;br /&gt;
&lt;br /&gt;
Como la superﬁcie lateral del tubo está aislada, solamente habrá flujo de sustancia en la dirección del eje &amp;lt;math&amp;gt;x&amp;lt;/math&amp;gt;. Si &amp;lt;math&amp;gt;F(x,t)&amp;gt; 0&amp;lt;/math&amp;gt; pensamos que el ﬂujo va hacia la derecha, si &amp;lt;math&amp;gt;F(x,t)&amp;lt; 0&amp;lt;/math&amp;gt;, este va a hacia la izquierda. El ﬂujo de&lt;br /&gt;
calor en un intervalo &amp;lt;math&amp;gt;[x, x + ∆x ] &amp;lt;/math&amp;gt; viene dado dado por:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;F(x,t)A-F(x+\Delta x, t)A&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Con lo que queda &amp;lt;math&amp;gt;A u_t(x,t) \Delta x = F(x,t)A-F(x+\Delta x, t)A&amp;lt;/math&amp;gt;, y al dividir &amp;lt;math&amp;gt;A \Delta x&amp;lt;/math&amp;gt;, nos queda &amp;lt;math&amp;gt;u_t(x,t)= \frac {F(x,t)-F(x+\Delta x, t)}{\Delta x}&amp;lt;/math&amp;gt;. &amp;lt;br /&amp;gt;&lt;br /&gt;
Como &amp;lt;math&amp;gt;\Delta x \rightarrow 0 &amp;lt;/math&amp;gt;, &amp;lt;math&amp;gt;u_t(x,t)= -F_x(x,t)&amp;lt;/math&amp;gt;, y aplicando ley de Fick, &amp;lt;math&amp;gt;u_t(x,t)=-\frac{\partial }{\partial x}(-D u_x(x,t)) = D u_xx(x,t) &amp;lt;/math&amp;gt;.&amp;lt;br /&amp;gt;&lt;br /&gt;
Con lo que resulta una ecuación en derivadas parciales que determina la concentración de sustancia:&lt;br /&gt;
&amp;lt;math&amp;gt;u_t(x,t)- D u_xx(x,t)= 0 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Planteamiento del problema bien propuesto ==&lt;br /&gt;
&lt;br /&gt;
Suponemos que el flujo será nula al haber una tapa en los extremos del tubo, con lo que el problema bien propuesto quedaría::&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\begin{cases}&lt;br /&gt;
u_t(x,t)- D u_{xx}(x,t)= 0 ; x\in (0,5) \\&lt;br /&gt;
u(x,0)=u_0 , x\in (0,5) \\&lt;br /&gt;
u_x(0,t)=0 , u_x(5,t)=0 ; t\geq 0&lt;br /&gt;
\end{cases}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= Resolución numérica =&lt;br /&gt;
Para la resolución de ésta ecuación necesitaremos mínimo tres condiciones, dos de las cuales serán de contorno, y la otra será la condición inicial.Si suponemos &amp;lt;math&amp;gt;u_0(x,0)&amp;lt;/math&amp;gt;, entonces:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; u_0(x,0)=\begin{cases}&lt;br /&gt;
0,  si x\leq 3\\&lt;br /&gt;
3,  si x&amp;gt;3&lt;br /&gt;
\end{cases}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Resolución por el método de las diferencias finitas ==&lt;br /&gt;
En el primer caso particular que estudiaremos, trataremos de obtener una resolución numérica del problema anteriormente planteado, dónde tenemos las fronteras aisladas y las concentraciones iniciales conocidas:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\begin{cases}&lt;br /&gt;
u_t(x,t)- D u_{xx}(x,t)= 0; x\in (0,5), t\geq 0 \\&lt;br /&gt;
u_0(x,0), x\in (0,5) \\&lt;br /&gt;
u_x(0,t)=0, u_x(5,t)=0, t\geq 0&lt;br /&gt;
\end{cases}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
La resolución por el método de las diferencias finitas se basa en expresar el problema continuo a un sistema discreto de ecuaciones diferenciales de primer orden. Particularizando para nuestro caso con las condiciones dadas, el problema planteado sería:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\begin{cases}&lt;br /&gt;
u'_n(t)+\frac{-u_{n-1}(t)+2u_n(t)+u_{n+1}(t)}{h^2} \\&lt;br /&gt;
\frac{u_1(t)-u_-1(t)}{2h} \rightarrow u_1(t)=u_-1(t) \\&lt;br /&gt;
\frac{u_{N+1}(t)-u_{N-1}(t)}{2h} \rightarrow u_{N+1}(t)=u_{N-1}\\&lt;br /&gt;
u_n(0)=u^0(x)&lt;br /&gt;
\end{cases}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Por lo que tenemos un sistema de la forma:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\begin{cases}&lt;br /&gt;
U'(t)+KU(t)=F(t)=0\\&lt;br /&gt;
U(0)=U^0&lt;br /&gt;
\end{cases}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Con &amp;lt;math&amp;gt;N+1&amp;lt;/math&amp;gt; ecuaciones.&lt;br /&gt;
==== Resolución por método del trapecio ====&lt;br /&gt;
Suponiendo que en el instante inicial se verifica  :&amp;lt;math&amp;gt;&lt;br /&gt;
u(x,0)=\left\{\begin{matrix}\\0, x≤3\\3, x&amp;gt;3\end{matrix}\right.&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Si tomamos &amp;lt;math&amp;gt;\triangle t= \triangle x/4&amp;lt;/math&amp;gt; en &amp;lt;math&amp;gt;t\in\ [0,5]&amp;lt;/math&amp;gt;, con &amp;lt;math&amp;gt;\triangle x=0.1&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
El código en MATLAB del método sería:&lt;br /&gt;
&lt;br /&gt;
{{matlab| codigo=&lt;br /&gt;
%Datos&lt;br /&gt;
L=5; %Longitud de varilla&lt;br /&gt;
T=5; %tiempo final&lt;br /&gt;
q=1;&lt;br /&gt;
%Discretización temporal y espacial&lt;br /&gt;
dx=0.1; % Paso en espacio&lt;br /&gt;
N=L/dx; %Número de subintervalos&lt;br /&gt;
x=dx:dx:L-dx; % Vector de espacio&lt;br /&gt;
dt=dx/4; % Paso en tiempo&lt;br /&gt;
t=0:dt:T; % Vector de tiempos&lt;br /&gt;
% Matriz de coeficientes. Aproximacion de -q*u_xx&lt;br /&gt;
K=2*diag(ones(1,N+1))-diag(ones(1,N),1)-diag(ones(1,N),-1);&lt;br /&gt;
K(1,2)=-2;&lt;br /&gt;
K(N+1,N)=-2;&lt;br /&gt;
K=q*K/dx^2;&lt;br /&gt;
% Calculamos u0 condición inicial&lt;br /&gt;
u0=[zeros(1,1+N*3/5),3*ones(1,N*2/5)]';&lt;br /&gt;
% F=0 (no la consideramos)&lt;br /&gt;
sol(1,:)=u0'; % Guardamos la solucion&lt;br /&gt;
U=u0; % Inicializacion&lt;br /&gt;
% Calculamos U_n -&amp;gt; U_n+1&lt;br /&gt;
%Aplicamos método trapecio método del trapecio&lt;br /&gt;
for j=1:length(t)-1&lt;br /&gt;
U=(eye(N+1)+(dt*K)/2)\((eye(N+1)-(K*dt)/2)*U);&lt;br /&gt;
sol(j+1,:)= U'; % Guardamos solucion&lt;br /&gt;
end&lt;br /&gt;
%Dibujamos la solucion&lt;br /&gt;
[xx,tt]=meshgrid(x,t);&lt;br /&gt;
surf(xx,tt,sol);&lt;br /&gt;
}}&lt;br /&gt;
[[Archivo:nur.jpg|500px|thumb|centro|Gráfica concentración / espacio-tiempo. Resolución por el método del trapecio.]]&lt;br /&gt;
&lt;br /&gt;
==== Resolución por método de Euler explícito ====&lt;br /&gt;
{{matlab| codigo=&lt;br /&gt;
%Datos&lt;br /&gt;
L=5; %Longitud de varilla&lt;br /&gt;
T=5; %tiempo final&lt;br /&gt;
q=1;&lt;br /&gt;
%Discretización temporal y espacial&lt;br /&gt;
dx=0.1; % Paso en espacio&lt;br /&gt;
N=L/dx; %Número de subintervalos&lt;br /&gt;
x=0:dx:L; % Vector de espacio&lt;br /&gt;
dt=dx/20; % Paso en tiempo&lt;br /&gt;
t=0:dt:T; % Vector de tiempos&lt;br /&gt;
% Matriz de coeficientes. Aproximacion de -q*u_xx&lt;br /&gt;
K=2*diag(ones(1,N+1))-diag(ones(1,N),1)-diag(ones(1,N),-1);&lt;br /&gt;
K(1,2)=-2;&lt;br /&gt;
K(N+1,N)=-2;&lt;br /&gt;
K=q*K/dx^2;&lt;br /&gt;
% Calculamos u0 condición inicial&lt;br /&gt;
u0=[zeros(1,1+N*3/5),3*ones(1,N*2/5)]';&lt;br /&gt;
% F=0 (no la consideramos)&lt;br /&gt;
sol(1,:)=u0'; % Guardamos la solucion&lt;br /&gt;
U=u0; % Inicializacion&lt;br /&gt;
% Calculamos U_n -&amp;gt; U_n+1&lt;br /&gt;
%Aplicamos método Euler explícito&lt;br /&gt;
for j=1:length(t)-1 &lt;br /&gt;
k1=-K*U; % Calculamos k1=h*f(tn,yn)&lt;br /&gt;
k2=-K*(U+dt*k1); % Calculamos k2=h*f(tn+h/2,yn+1/2*k1)&lt;br /&gt;
% Meto los datos en el vector&lt;br /&gt;
U=U+(dt/2)*(k1+k2);&lt;br /&gt;
sol(j+1,:)= U'; % Guardamos solucion&lt;br /&gt;
end&lt;br /&gt;
%Dibujamos la solucion&lt;br /&gt;
[xx,tt]=meshgrid(x,t);&lt;br /&gt;
surf(xx,tt,sol);&lt;br /&gt;
}}&lt;br /&gt;
[[Archivo:mig.jpg|500px|thumb|centro|Gráfica concentración / espacio-tiempo. Resolución por el método de Euler explícito.]]&lt;br /&gt;
&lt;br /&gt;
==== Resolución por método de Euler implícito ====&lt;br /&gt;
{{matlab| codigo=&lt;br /&gt;
%Datos&lt;br /&gt;
L=5; %Longitud de varilla&lt;br /&gt;
T=5;&lt;br /&gt;
q=1;&lt;br /&gt;
%Discretización temporal y espacial&lt;br /&gt;
dx=0.1; % Paso en espacio&lt;br /&gt;
N=L/dx; %Número de subintervalos&lt;br /&gt;
h=L/N;&lt;br /&gt;
x=0:h:L; % Vector de espacio&lt;br /&gt;
dt=h/20; % Paso en tiempo&lt;br /&gt;
t=0:dt:T; % Vector de tiempos&lt;br /&gt;
% Matriz de coeficientes. Aproximacion de -q*u_xx&lt;br /&gt;
K=2*diag(ones(1,N+1))-diag(ones(1,N),1)-diag(ones(1,N),-1);&lt;br /&gt;
K(1,2)=-2;&lt;br /&gt;
K(N+1,N)=-2;&lt;br /&gt;
K=q*K/h^2;&lt;br /&gt;
% Calculamos u0 condición inicial&lt;br /&gt;
u0=[zeros(1,1+N*3/5),3*ones(1,N*2/5)]';&lt;br /&gt;
% F=0 (no la consideramos)&lt;br /&gt;
sol(1,:)=u0'; % Guardamos la solucion&lt;br /&gt;
U=u0; % Inicializacion&lt;br /&gt;
% Calculamos U_n -&amp;gt; U_n+1&lt;br /&gt;
% Aplicamos método implícito&lt;br /&gt;
for j=1:length(t)-1 &lt;br /&gt;
U=U-dt*K*U; &lt;br /&gt;
sol(j+1,:)= U'; % Guardamos solucion&lt;br /&gt;
end&lt;br /&gt;
%Dibujamos la solucion&lt;br /&gt;
[xx,tt]=meshgrid(x,t);&lt;br /&gt;
surf(xx,tt,sol);&lt;br /&gt;
}}&lt;br /&gt;
[[Archivo:migap.jpg|500px|thumb|centro|Gráfica concentración / espacio-tiempo. Resolución por el método de Euler implícito.]]&lt;br /&gt;
&lt;br /&gt;
==== Resolución por método de Euler modificado ====&lt;br /&gt;
{{matlab| codigo=&lt;br /&gt;
%Datos&lt;br /&gt;
L=5; %Longitud de varilla&lt;br /&gt;
T=5;&lt;br /&gt;
q=1;&lt;br /&gt;
%Discretización temporal y espacial&lt;br /&gt;
dx=0.1; % Paso en espacio&lt;br /&gt;
N=L/dx; %Número de subintervalos&lt;br /&gt;
h=L/N;&lt;br /&gt;
x=0:h:L; % Vector de espacio&lt;br /&gt;
dt=h/20; % Paso en tiempo&lt;br /&gt;
t=0:dt:T; % Vector de tiempos&lt;br /&gt;
% Matriz de coeficientes. Aproximacion de -q*u_xx&lt;br /&gt;
K=2*diag(ones(1,N+1))-diag(ones(1,N),1)-diag(ones(1,N),-1);&lt;br /&gt;
K(1,2)=-2;&lt;br /&gt;
K(N+1,N)=-2;&lt;br /&gt;
K=q*K/h^2;&lt;br /&gt;
% Calculamos u0 condición inicial&lt;br /&gt;
u0=[zeros(1,1+N*3/5),3*ones(1,N*2/5)]';&lt;br /&gt;
% F=0 (no la consideramos)&lt;br /&gt;
sol(1,:)=u0'; % Guardamos la solucion&lt;br /&gt;
U=u0; % Inicializacion&lt;br /&gt;
% Calculamos U_n -&amp;gt; U_n+1&lt;br /&gt;
for j=1:length(t)-1 &lt;br /&gt;
k1=-K*U; % Calculamos k1=h*f(tn,yn)&lt;br /&gt;
k2=-K*(U+dt*k1); % Calculamos k2=h*f(tn+h/2,yn+1/2*k1)&lt;br /&gt;
% Meto los datos en el vector&lt;br /&gt;
U=U+(dt/2)*(k1+k2);&lt;br /&gt;
sol(j+1,:)= U'; % Guardamos solucion&lt;br /&gt;
end&lt;br /&gt;
%Dibujamos la solucion&lt;br /&gt;
[xx,tt]=meshgrid(x,t);&lt;br /&gt;
surf(xx,tt,sol);&lt;br /&gt;
}}&lt;br /&gt;
[[Archivo: mig.jpg|500px|thumb|centro|Gráfica concentración / espacio-tiempo. Resolución por el método de Euler modificado.]]&lt;br /&gt;
&lt;br /&gt;
== Conservación de la masa total de contaminante ==&lt;br /&gt;
A continuación demostraremos que la masa total de contaminante en el tubo se conserva a lo largo del tiempo, que se puede deducir a partir de la ecuación sin tener que resolverla. Integramos la ecuación y debido a las condiciones de frontera:&lt;br /&gt;
&amp;lt;math&amp;gt;\frac d {dt} \int_0^5 u(x,t)\,dx= \int_0^5 u_{xx}(x,t)\,dx= u_x(x,t)|_0^5=0&amp;lt;/math&amp;gt;&lt;br /&gt;
{{matlab| codigo=&lt;br /&gt;
%Datos&lt;br /&gt;
L=5; %Longitud de varilla&lt;br /&gt;
T=5;&lt;br /&gt;
q=1;&lt;br /&gt;
%Discretización temporal y espacial&lt;br /&gt;
N=500; %Número de subintervalos&lt;br /&gt;
h=L/N;&lt;br /&gt;
x=0:h:L; % Vector de espacio&lt;br /&gt;
dt=h/4; % Paso en tiempo&lt;br /&gt;
t=0:dt:T; % Vector de tiempos&lt;br /&gt;
% Matriz de coeficientes. Aproximacion de -q*u_xx&lt;br /&gt;
K=2*diag(ones(1,N+1))-diag(ones(1,N),1)-diag(ones(1,N),-1);&lt;br /&gt;
K(1,2)=-2;&lt;br /&gt;
K(N+1,N)=-2;&lt;br /&gt;
K=q*K/h^2;&lt;br /&gt;
% Calculamos u0 condición inicial&lt;br /&gt;
u0=[zeros(1,1+N*3/5),3*ones(1,N*2/5)]';&lt;br /&gt;
% F=0 (no la consideramos)&lt;br /&gt;
sol(1,:)=u0'; % Guardamos la solucion&lt;br /&gt;
U=u0; % Inicializacion&lt;br /&gt;
% Calculamos U_n -&amp;gt; U_n+1&lt;br /&gt;
for j=1:length(t)-1 &lt;br /&gt;
U=(eye(N+1)+dt*K)\(U+dt*F); &lt;br /&gt;
sol(j+1,:)= U'; % Guardamos solucion&lt;br /&gt;
end&lt;br /&gt;
% Calculamos el area de la funcion en cada tiempo (area = cantidad de contaminante)&lt;br /&gt;
areas=zeros(1,length(t));&lt;br /&gt;
for i=1:length(t)&lt;br /&gt;
f=sol(i,:);&lt;br /&gt;
w=trapz(x,f);&lt;br /&gt;
area(i)=w;&lt;br /&gt;
end&lt;br /&gt;
%Dibujamos&lt;br /&gt;
plot(t,area)&lt;br /&gt;
xlabel('Tiempo')&lt;br /&gt;
ylabel('Cantidad de contaminante')&lt;br /&gt;
}}&lt;br /&gt;
[[Archivo:aleeex.jpg|500px|thumb|centro|Conservación masa total de contaminante]]&lt;br /&gt;
[[Archivo:gime.jpg|500px|thumb|centro|Conservación masa total de contaminante]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Concentración a lo largo del tiempo==&lt;br /&gt;
La concentración de la sustancia contaminante en la varilla varía con el tiempo, pero en un cierto momento esta concentración se va homogeneizando, y deja de variar, entrando en un estado estacionario::&lt;br /&gt;
&amp;lt;math&amp;gt; u_t(x,t)- D*u_{xx}(x,t)=0 &amp;lt;/math&amp;gt; :    &lt;br /&gt;
&amp;lt;math&amp;gt; u_t(x,t)=0 \rightarrow D*u_{xx}(x,t)=0 &amp;lt;/math&amp;gt; :&lt;br /&gt;
&amp;lt;math&amp;gt; u=c_1*x+c_2 &amp;lt;/math&amp;gt; &lt;br /&gt;
Utizando Matlab comprobaremos que &amp;lt;math&amp;gt; c_1=0 &amp;lt;/math&amp;gt; &amp;lt;math&amp;gt; c_2=1.17 &amp;lt;/math&amp;gt;&lt;br /&gt;
Para tiempos grandes la concentración se estabiliza en torno a 1.17 en toda la varilla, de forma que la solución se asemejará a una función lineal constante.&lt;br /&gt;
&lt;br /&gt;
{{matlab| codigo=&lt;br /&gt;
%Datos&lt;br /&gt;
L=5; %Longitud de varilla&lt;br /&gt;
T=50;&lt;br /&gt;
q=1;&lt;br /&gt;
%Discretización temporal y espacial&lt;br /&gt;
dx=0.1; % Paso en espacio&lt;br /&gt;
N=L/dx; %Número de subintervalos&lt;br /&gt;
h=L/N;&lt;br /&gt;
x=0:h:L; % Vector de espacio&lt;br /&gt;
dt=h/4; % Paso en tiempo&lt;br /&gt;
t=0:dt:T; % Vector de tiempos&lt;br /&gt;
% Matriz de coeficientes. Aproximacion de -q*u_xx&lt;br /&gt;
K=2*diag(ones(1,N+1))-diag(ones(1,N),1)-diag(ones(1,N),-1);&lt;br /&gt;
K(1,2)=-2;&lt;br /&gt;
K(N+1,N)=-2;&lt;br /&gt;
K=q*K/h^2;&lt;br /&gt;
% Calculamos u0 condición inicial&lt;br /&gt;
u0=[zeros(1,1+N*3/5),3*ones(1,N*2/5)]';&lt;br /&gt;
% F=0 (no la consideramos)&lt;br /&gt;
sol(1,:)=u0'; % Guardamos la solucion&lt;br /&gt;
U=u0; % Inicializacion&lt;br /&gt;
% Calculamos U_n -&amp;gt; U_n+1&lt;br /&gt;
%Aplicamos método trapecio método del trapecio&lt;br /&gt;
for j=1:length(t)-1&lt;br /&gt;
U=(eye(N+1)+(dt*K)/2)\((eye(N+1)-(K*dt)/2)*U);&lt;br /&gt;
sol(j+1,:)= U'; % Guardamos solucion&lt;br /&gt;
end&lt;br /&gt;
%Solución estacionaria&lt;br /&gt;
a=sol(length(t),:);&lt;br /&gt;
b=sol(1,:);&lt;br /&gt;
c=sol((length(t)-1)/50+1,:);&lt;br /&gt;
d=sol((length(t)-1)*2/50+1,:);&lt;br /&gt;
e=sol((length(t)-1)*10/50+1,:);&lt;br /&gt;
hold on&lt;br /&gt;
plot(x,a,'xk','linewidth',2);&lt;br /&gt;
plot(x,b,'-m','linewidth',1);&lt;br /&gt;
plot(x,c,'-g','linewidth',1);&lt;br /&gt;
plot(x,d,'-y','linewidth',1);&lt;br /&gt;
plot(x,e,'-b','linewidth',1);&lt;br /&gt;
legend('u(50s)','u(0s)','u(1s)','u(2s)','u(10s)');&lt;br /&gt;
xlabel('Posición en la varilla')&lt;br /&gt;
ylabel('Concentracion')&lt;br /&gt;
hold off&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Soluciones(t).jpg|500px|thumb|centro|Soluciones a lo largo del tiempo]]&lt;br /&gt;
&lt;br /&gt;
La distancia entre la solución estacionaria y las soluciones para los siguientes instantes: 0s, 1s, 2s y 10s; se puede apreciar en la imagen anterior. &lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
Una vez analizado los datos, se demuestra que la sustancia contaminante se estabiliza en t=9.98s, con un error del 5%.&lt;br /&gt;
&lt;br /&gt;
En el caso de que consideremos Δx'=Δx/10,el tiempo en el que se estabiliza la cantidad de sustancia contaminante será t=10.05s, dato que será más preciso debido a que el paso realizado en el programa es menor.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Nueva condición de frontera==&lt;br /&gt;
&lt;br /&gt;
Si colocásemos un limpiador, que elimina la sustancia contaminante, en el extremo izquierdo de la varilla, las ecuaciones que nos proporcionan datos sobre su difusión cambiarán debido a la variación de las condiciones.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\begin{cases}&lt;br /&gt;
u_t(x,t)- D u_{xx}(x,t)= 0 ; x\in (0,5) \\&lt;br /&gt;
u(0,t)=0 ; t\geq 0 \\ &lt;br /&gt;
u_x(5,t)=0 ; t\geq 0 \\&lt;br /&gt;
\end{cases}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;/div&gt;</summary>
		<author><name>Karlo André</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Difusi%C3%B3n_de_una_sustancia_contaminante_(Grupo_10)&amp;diff=12685</id>
		<title>Difusión de una sustancia contaminante (Grupo 10)</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Difusi%C3%B3n_de_una_sustancia_contaminante_(Grupo_10)&amp;diff=12685"/>
				<updated>2014-05-19T13:10:37Z</updated>
		
		<summary type="html">&lt;p&gt;Karlo André: /* Nueva condición de frontera */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;''''''Texto en negrita''''''[[Archivo:nuriat.png|200px|thumb|right|Tubo con sustancia contaminante]]&lt;br /&gt;
La difusión implica un movimiento espontáneo y desordenado de moléculas individuales y, especialmente, nos interesa la difusión de moléculas de una sustancia disuelta en otra.&lt;br /&gt;
&lt;br /&gt;
La difusión de una sustancia puede considerarse análoga al flujo de calor, y la ley de Fick establece que el ritmo de difusión por unidad de superficie, en dirección perpendicular a ésta, es proporcional al gradiente de la concentración de esa sustancia en esa dirección. La concentración es la masa de la sustancia por unidad de volumen, y el gradiente de concentración es la variación de concentración por unidad de distancia.&lt;br /&gt;
&lt;br /&gt;
Para determinar como se distribuye la concentración de una sustancia contaminante tomaremos como ejemplo un tubo largo compuesto por dos sustancias de las cuáles una de ellas es contaminante.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
= Simplificación del problema =&lt;br /&gt;
&lt;br /&gt;
Para que este problema resulte más sencillo aplicaremos una serie de condiciones, facilitando el cálculo del mismo.&lt;br /&gt;
&lt;br /&gt;
En primer lugar denotaremos su concentración &amp;lt;math&amp;gt; u &amp;lt;/math&amp;gt;, concentración de contaminante en cada posición del tubo y constante en cada sección, medida en &amp;lt;math&amp;gt; \frac{mol}{m^2*s} &amp;lt;/math&amp;gt;. &lt;br /&gt;
&lt;br /&gt;
Supondremos que el tubo mide L=5 m, ocupando el intervalo &amp;lt;math&amp;gt; x \in (0,L) &amp;lt;/math&amp;gt;, y que la concentración es la misma en cualquier punto de la sección transversal del tubo. Por tanto, la concentración dependerá unicamente de dos variables &amp;lt;math&amp;gt; u = u(x,t) &amp;lt;/math&amp;gt;. En los extremos se ha colocado un aislante que hace que el flujo de contaminante al exterior del tubo sea nulo. Además, consideraremos la simplificación de que se trata de un tubo aislado por sus laterales, pero abierto por las bases del cilindro.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Ley de conservación de masa ==&lt;br /&gt;
&lt;br /&gt;
Tras una serie de experimentos realizados por Lavoisier, se pusieron de manifiesto que si tenemos en cuenta todas las sustancias que forman parte en una reacción química y todos los productos formados, nunca varía la masa. Esta ley exige que no haya una generación espontánea de materia. Es decir, en la región del espacio estudiada, no existe entrada o salida por un punto cualquiera (frontera o interior), la masa en esta región se mantiene constante. Esta es la ley de la conservación de la masa, que podemos enunciarla, pues, de la siguiente manera: &amp;lt;br /&amp;gt;&lt;br /&gt;
''&amp;quot;En toda reacción química la masa se conserva, esto es, la masa total de los reactivos es igual a la masa total de los productos&amp;quot;'' &amp;lt;br /&amp;gt;&lt;br /&gt;
La ley de conservación de masas exige que no haya una generación espontánea de materia. Es decir, en la región del espacio estudiada, no existe entrada o salida por un punto cualquiera (frontera o interior), la masa en esta región se mantiene constante.&lt;br /&gt;
&lt;br /&gt;
Esta suposición, en términos de variación de masa, puede quedar determinada como:&lt;br /&gt;
&lt;br /&gt;
''Variación de la masa en el tiempo = flujo de masa a través de la frontera por unidad de tiempo + flujo de masa generada en el interior por unidad de tiempo. ''&lt;br /&gt;
&lt;br /&gt;
== Ley de Fick ==&lt;br /&gt;
Se trata de una ley cuantitativa en forma diferencial que describe la difusión de materia o energía en un medio en el que inicialmente existe equilibrio químico o físico. Esta ley se trata de una generalización de los fenómenos descritos por la '''Ley de Fourier''', ya que esta es una consideración concreta del calor.&lt;br /&gt;
&lt;br /&gt;
La ley de Fick anuncia que en el caso de existir diferencias de concentración en cualquier especie, el paso de estas especies se llevará a cabo desde las regiones con mayor concentración a las de menor. Formulado matemáticamente:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;F(x,t)=-D\frac{\partial u}{\partial x}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Donde &amp;lt;math&amp;gt;F&amp;lt;/math&amp;gt; es el flujo de la sustancia y &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; el coeficiente de difusión, que representa la facilidad en que un soluto particular se mueve por un disolvente determinado.&lt;br /&gt;
&lt;br /&gt;
La ley de Fick establece que el flujo de difusión del contaminante es proporcional a la variación de concentración:&lt;br /&gt;
&amp;lt;math&amp;gt; F(x,t)=-D\frac{\partial u}{\partial x} &amp;lt;/math&amp;gt;&lt;br /&gt;
donde D es el coeficiente de difusión (medido en &amp;lt;math&amp;gt; \frac{m^2}{s} &amp;lt;/math&amp;gt;), que depende de las propiedades físicas de los compuestos, y que se supone constante D=1.&lt;br /&gt;
&lt;br /&gt;
= Modelización de la ecuación diferencial =&lt;br /&gt;
&lt;br /&gt;
Aplicando el principio de conservación de la masa y la ley de Fourier, definimos la variable &amp;lt;math&amp;gt; u(x,t)&amp;lt;/math&amp;gt; en unidades de sustancia por área, es decir, concentración por superficie del tubo.&lt;br /&gt;
&lt;br /&gt;
Consideramos &amp;lt;math&amp;gt; A &amp;lt;/math&amp;gt; como variable superficie, y tomamos un pequeño trozo, definido por &amp;lt;math&amp;gt;\Delta x&amp;lt;/math&amp;gt;. Entonces, para obtener la variación de la masa en el tiempo:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; A u(x,t) \Delta x &amp;lt;/math&amp;gt; &lt;br /&gt;
&lt;br /&gt;
Y derivando en el tiempo:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; A u_t(x,t) \Delta x &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
obtenemos el primer término de la igualdad anteriormente enunciada.&lt;br /&gt;
&lt;br /&gt;
En el segundo, consideramos nulo el flujo de masa en los puntos interiores por unidad de tiempo, pues suponemos la tubería perfecta y sin sumideros.&lt;br /&gt;
&lt;br /&gt;
Como la superﬁcie lateral del tubo está aislada, solamente habrá flujo de sustancia en la dirección del eje &amp;lt;math&amp;gt;x&amp;lt;/math&amp;gt;. Si &amp;lt;math&amp;gt;F(x,t)&amp;gt; 0&amp;lt;/math&amp;gt; pensamos que el ﬂujo va hacia la derecha, si &amp;lt;math&amp;gt;F(x,t)&amp;lt; 0&amp;lt;/math&amp;gt;, este va a hacia la izquierda. El ﬂujo de&lt;br /&gt;
calor en un intervalo &amp;lt;math&amp;gt;[x, x + ∆x ] &amp;lt;/math&amp;gt; viene dado dado por:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;F(x,t)A-F(x+\Delta x, t)A&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Con lo que queda &amp;lt;math&amp;gt;A u_t(x,t) \Delta x = F(x,t)A-F(x+\Delta x, t)A&amp;lt;/math&amp;gt;, y al dividir &amp;lt;math&amp;gt;A \Delta x&amp;lt;/math&amp;gt;, nos queda &amp;lt;math&amp;gt;u_t(x,t)= \frac {F(x,t)-F(x+\Delta x, t)}{\Delta x}&amp;lt;/math&amp;gt;. &amp;lt;br /&amp;gt;&lt;br /&gt;
Como &amp;lt;math&amp;gt;\Delta x \rightarrow 0 &amp;lt;/math&amp;gt;, &amp;lt;math&amp;gt;u_t(x,t)= -F_x(x,t)&amp;lt;/math&amp;gt;, y aplicando ley de Fick, &amp;lt;math&amp;gt;u_t(x,t)=-\frac{\partial }{\partial x}(-D u_x(x,t)) = D u_xx(x,t) &amp;lt;/math&amp;gt;.&amp;lt;br /&amp;gt;&lt;br /&gt;
Con lo que resulta una ecuación en derivadas parciales que determina la concentración de sustancia:&lt;br /&gt;
&amp;lt;math&amp;gt;u_t(x,t)- D u_xx(x,t)= 0 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Planteamiento del problema bien propuesto ==&lt;br /&gt;
&lt;br /&gt;
Suponemos que el flujo será nula al haber una tapa en los extremos del tubo, con lo que el problema bien propuesto quedaría::&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\begin{cases}&lt;br /&gt;
u_t(x,t)- D u_{xx}(x,t)= 0 ; x\in (0,5) \\&lt;br /&gt;
u(x,0)=u_0 , x\in (0,5) \\&lt;br /&gt;
u_x(0,t)=0 , u_x(5,t)=0 ; t\geq 0&lt;br /&gt;
\end{cases}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= Resolución numérica =&lt;br /&gt;
Para la resolución de ésta ecuación necesitaremos mínimo tres condiciones, dos de las cuales serán de contorno, y la otra será la condición inicial.Si suponemos &amp;lt;math&amp;gt;u_0(x,0)&amp;lt;/math&amp;gt;, entonces:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; u_0(x,0)=\begin{cases}&lt;br /&gt;
0,  si x\leq 3\\&lt;br /&gt;
3,  si x&amp;gt;3&lt;br /&gt;
\end{cases}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Resolución por el método de las diferencias finitas ==&lt;br /&gt;
En el primer caso particular que estudiaremos, trataremos de obtener una resolución numérica del problema anteriormente planteado, dónde tenemos las fronteras aisladas y las concentraciones iniciales conocidas:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\begin{cases}&lt;br /&gt;
u_t(x,t)- D u_{xx}(x,t)= 0; x\in (0,5), t\geq 0 \\&lt;br /&gt;
u_0(x,0), x\in (0,5) \\&lt;br /&gt;
u_x(0,t)=0, u_x(5,t)=0, t\geq 0&lt;br /&gt;
\end{cases}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
La resolución por el método de las diferencias finitas se basa en expresar el problema continuo a un sistema discreto de ecuaciones diferenciales de primer orden. Particularizando para nuestro caso con las condiciones dadas, el problema planteado sería:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\begin{cases}&lt;br /&gt;
u'_n(t)+\frac{-u_{n-1}(t)+2u_n(t)+u_{n+1}(t)}{h^2} \\&lt;br /&gt;
\frac{u_1(t)-u_-1(t)}{2h} \rightarrow u_1(t)=u_-1(t) \\&lt;br /&gt;
\frac{u_{N+1}(t)-u_{N-1}(t)}{2h} \rightarrow u_{N+1}(t)=u_{N-1}\\&lt;br /&gt;
u_n(0)=u^0(x)&lt;br /&gt;
\end{cases}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Por lo que tenemos un sistema de la forma:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\begin{cases}&lt;br /&gt;
U'(t)+KU(t)=F(t)=0\\&lt;br /&gt;
U(0)=U^0&lt;br /&gt;
\end{cases}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Con &amp;lt;math&amp;gt;N+1&amp;lt;/math&amp;gt; ecuaciones.&lt;br /&gt;
==== Resolución por método del trapecio ====&lt;br /&gt;
Suponiendo que en el instante inicial se verifica  :&amp;lt;math&amp;gt;&lt;br /&gt;
u(x,0)=\left\{\begin{matrix}\\0, x≤3\\3, x&amp;gt;3\end{matrix}\right.&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Si tomamos &amp;lt;math&amp;gt;\triangle t= \triangle x/4&amp;lt;/math&amp;gt; en &amp;lt;math&amp;gt;t\in\ [0,5]&amp;lt;/math&amp;gt;, con &amp;lt;math&amp;gt;\triangle x=0.1&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
El código en MATLAB del método sería:&lt;br /&gt;
&lt;br /&gt;
{{matlab| codigo=&lt;br /&gt;
%Datos&lt;br /&gt;
L=5; %Longitud de varilla&lt;br /&gt;
T=5; %tiempo final&lt;br /&gt;
q=1;&lt;br /&gt;
%Discretización temporal y espacial&lt;br /&gt;
dx=0.1; % Paso en espacio&lt;br /&gt;
N=L/dx; %Número de subintervalos&lt;br /&gt;
x=dx:dx:L-dx; % Vector de espacio&lt;br /&gt;
dt=dx/4; % Paso en tiempo&lt;br /&gt;
t=0:dt:T; % Vector de tiempos&lt;br /&gt;
% Matriz de coeficientes. Aproximacion de -q*u_xx&lt;br /&gt;
K=2*diag(ones(1,N+1))-diag(ones(1,N),1)-diag(ones(1,N),-1);&lt;br /&gt;
K(1,2)=-2;&lt;br /&gt;
K(N+1,N)=-2;&lt;br /&gt;
K=q*K/dx^2;&lt;br /&gt;
% Calculamos u0 condición inicial&lt;br /&gt;
u0=[zeros(1,1+N*3/5),3*ones(1,N*2/5)]';&lt;br /&gt;
% F=0 (no la consideramos)&lt;br /&gt;
sol(1,:)=u0'; % Guardamos la solucion&lt;br /&gt;
U=u0; % Inicializacion&lt;br /&gt;
% Calculamos U_n -&amp;gt; U_n+1&lt;br /&gt;
%Aplicamos método trapecio método del trapecio&lt;br /&gt;
for j=1:length(t)-1&lt;br /&gt;
U=(eye(N+1)+(dt*K)/2)\((eye(N+1)-(K*dt)/2)*U);&lt;br /&gt;
sol(j+1,:)= U'; % Guardamos solucion&lt;br /&gt;
end&lt;br /&gt;
%Dibujamos la solucion&lt;br /&gt;
[xx,tt]=meshgrid(x,t);&lt;br /&gt;
surf(xx,tt,sol);&lt;br /&gt;
}}&lt;br /&gt;
[[Archivo:nur.jpg|500px|thumb|centro|Gráfica concentración / espacio-tiempo. Resolución por el método del trapecio.]]&lt;br /&gt;
&lt;br /&gt;
==== Resolución por método de Euler explícito ====&lt;br /&gt;
{{matlab| codigo=&lt;br /&gt;
%Datos&lt;br /&gt;
L=5; %Longitud de varilla&lt;br /&gt;
T=5; %tiempo final&lt;br /&gt;
q=1;&lt;br /&gt;
%Discretización temporal y espacial&lt;br /&gt;
dx=0.1; % Paso en espacio&lt;br /&gt;
N=L/dx; %Número de subintervalos&lt;br /&gt;
x=0:dx:L; % Vector de espacio&lt;br /&gt;
dt=dx/20; % Paso en tiempo&lt;br /&gt;
t=0:dt:T; % Vector de tiempos&lt;br /&gt;
% Matriz de coeficientes. Aproximacion de -q*u_xx&lt;br /&gt;
K=2*diag(ones(1,N+1))-diag(ones(1,N),1)-diag(ones(1,N),-1);&lt;br /&gt;
K(1,2)=-2;&lt;br /&gt;
K(N+1,N)=-2;&lt;br /&gt;
K=q*K/dx^2;&lt;br /&gt;
% Calculamos u0 condición inicial&lt;br /&gt;
u0=[zeros(1,1+N*3/5),3*ones(1,N*2/5)]';&lt;br /&gt;
% F=0 (no la consideramos)&lt;br /&gt;
sol(1,:)=u0'; % Guardamos la solucion&lt;br /&gt;
U=u0; % Inicializacion&lt;br /&gt;
% Calculamos U_n -&amp;gt; U_n+1&lt;br /&gt;
%Aplicamos método Euler explícito&lt;br /&gt;
for j=1:length(t)-1 &lt;br /&gt;
k1=-K*U; % Calculamos k1=h*f(tn,yn)&lt;br /&gt;
k2=-K*(U+dt*k1); % Calculamos k2=h*f(tn+h/2,yn+1/2*k1)&lt;br /&gt;
% Meto los datos en el vector&lt;br /&gt;
U=U+(dt/2)*(k1+k2);&lt;br /&gt;
sol(j+1,:)= U'; % Guardamos solucion&lt;br /&gt;
end&lt;br /&gt;
%Dibujamos la solucion&lt;br /&gt;
[xx,tt]=meshgrid(x,t);&lt;br /&gt;
surf(xx,tt,sol);&lt;br /&gt;
}}&lt;br /&gt;
[[Archivo:mig.jpg|500px|thumb|centro|Gráfica concentración / espacio-tiempo. Resolución por el método de Euler explícito.]]&lt;br /&gt;
&lt;br /&gt;
==== Resolución por método de Euler implícito ====&lt;br /&gt;
{{matlab| codigo=&lt;br /&gt;
%Datos&lt;br /&gt;
L=5; %Longitud de varilla&lt;br /&gt;
T=5;&lt;br /&gt;
q=1;&lt;br /&gt;
%Discretización temporal y espacial&lt;br /&gt;
dx=0.1; % Paso en espacio&lt;br /&gt;
N=L/dx; %Número de subintervalos&lt;br /&gt;
h=L/N;&lt;br /&gt;
x=0:h:L; % Vector de espacio&lt;br /&gt;
dt=h/20; % Paso en tiempo&lt;br /&gt;
t=0:dt:T; % Vector de tiempos&lt;br /&gt;
% Matriz de coeficientes. Aproximacion de -q*u_xx&lt;br /&gt;
K=2*diag(ones(1,N+1))-diag(ones(1,N),1)-diag(ones(1,N),-1);&lt;br /&gt;
K(1,2)=-2;&lt;br /&gt;
K(N+1,N)=-2;&lt;br /&gt;
K=q*K/h^2;&lt;br /&gt;
% Calculamos u0 condición inicial&lt;br /&gt;
u0=[zeros(1,1+N*3/5),3*ones(1,N*2/5)]';&lt;br /&gt;
% F=0 (no la consideramos)&lt;br /&gt;
sol(1,:)=u0'; % Guardamos la solucion&lt;br /&gt;
U=u0; % Inicializacion&lt;br /&gt;
% Calculamos U_n -&amp;gt; U_n+1&lt;br /&gt;
% Aplicamos método implícito&lt;br /&gt;
for j=1:length(t)-1 &lt;br /&gt;
U=U-dt*K*U; &lt;br /&gt;
sol(j+1,:)= U'; % Guardamos solucion&lt;br /&gt;
end&lt;br /&gt;
%Dibujamos la solucion&lt;br /&gt;
[xx,tt]=meshgrid(x,t);&lt;br /&gt;
surf(xx,tt,sol);&lt;br /&gt;
}}&lt;br /&gt;
[[Archivo:migap.jpg|500px|thumb|centro|Gráfica concentración / espacio-tiempo. Resolución por el método de Euler implícito.]]&lt;br /&gt;
&lt;br /&gt;
==== Resolución por método de Euler modificado ====&lt;br /&gt;
{{matlab| codigo=&lt;br /&gt;
%Datos&lt;br /&gt;
L=5; %Longitud de varilla&lt;br /&gt;
T=5;&lt;br /&gt;
q=1;&lt;br /&gt;
%Discretización temporal y espacial&lt;br /&gt;
dx=0.1; % Paso en espacio&lt;br /&gt;
N=L/dx; %Número de subintervalos&lt;br /&gt;
h=L/N;&lt;br /&gt;
x=0:h:L; % Vector de espacio&lt;br /&gt;
dt=h/20; % Paso en tiempo&lt;br /&gt;
t=0:dt:T; % Vector de tiempos&lt;br /&gt;
% Matriz de coeficientes. Aproximacion de -q*u_xx&lt;br /&gt;
K=2*diag(ones(1,N+1))-diag(ones(1,N),1)-diag(ones(1,N),-1);&lt;br /&gt;
K(1,2)=-2;&lt;br /&gt;
K(N+1,N)=-2;&lt;br /&gt;
K=q*K/h^2;&lt;br /&gt;
% Calculamos u0 condición inicial&lt;br /&gt;
u0=[zeros(1,1+N*3/5),3*ones(1,N*2/5)]';&lt;br /&gt;
% F=0 (no la consideramos)&lt;br /&gt;
sol(1,:)=u0'; % Guardamos la solucion&lt;br /&gt;
U=u0; % Inicializacion&lt;br /&gt;
% Calculamos U_n -&amp;gt; U_n+1&lt;br /&gt;
for j=1:length(t)-1 &lt;br /&gt;
k1=-K*U; % Calculamos k1=h*f(tn,yn)&lt;br /&gt;
k2=-K*(U+dt*k1); % Calculamos k2=h*f(tn+h/2,yn+1/2*k1)&lt;br /&gt;
% Meto los datos en el vector&lt;br /&gt;
U=U+(dt/2)*(k1+k2);&lt;br /&gt;
sol(j+1,:)= U'; % Guardamos solucion&lt;br /&gt;
end&lt;br /&gt;
%Dibujamos la solucion&lt;br /&gt;
[xx,tt]=meshgrid(x,t);&lt;br /&gt;
surf(xx,tt,sol);&lt;br /&gt;
}}&lt;br /&gt;
[[Archivo: mig.jpg|500px|thumb|centro|Gráfica concentración / espacio-tiempo. Resolución por el método de Euler modificado.]]&lt;br /&gt;
&lt;br /&gt;
== Conservación de la masa total de contaminante ==&lt;br /&gt;
A continuación demostraremos que la masa total de contaminante en el tubo se conserva a lo largo del tiempo, que se puede deducir a partir de la ecuación sin tener que resolverla. Integramos la ecuación y debido a las condiciones de frontera:&lt;br /&gt;
&amp;lt;math&amp;gt;\frac d {dt} \int_0^5 u(x,t)\,dx= \int_0^5 u_{xx}(x,t)\,dx= u_x(x,t)|_0^5=0&amp;lt;/math&amp;gt;&lt;br /&gt;
{{matlab| codigo=&lt;br /&gt;
%Datos&lt;br /&gt;
L=5; %Longitud de varilla&lt;br /&gt;
T=5;&lt;br /&gt;
q=1;&lt;br /&gt;
%Discretización temporal y espacial&lt;br /&gt;
N=500; %Número de subintervalos&lt;br /&gt;
h=L/N;&lt;br /&gt;
x=0:h:L; % Vector de espacio&lt;br /&gt;
dt=h/4; % Paso en tiempo&lt;br /&gt;
t=0:dt:T; % Vector de tiempos&lt;br /&gt;
% Matriz de coeficientes. Aproximacion de -q*u_xx&lt;br /&gt;
K=2*diag(ones(1,N+1))-diag(ones(1,N),1)-diag(ones(1,N),-1);&lt;br /&gt;
K(1,2)=-2;&lt;br /&gt;
K(N+1,N)=-2;&lt;br /&gt;
K=q*K/h^2;&lt;br /&gt;
% Calculamos u0 condición inicial&lt;br /&gt;
u0=[zeros(1,1+N*3/5),3*ones(1,N*2/5)]';&lt;br /&gt;
% F=0 (no la consideramos)&lt;br /&gt;
sol(1,:)=u0'; % Guardamos la solucion&lt;br /&gt;
U=u0; % Inicializacion&lt;br /&gt;
% Calculamos U_n -&amp;gt; U_n+1&lt;br /&gt;
for j=1:length(t)-1 &lt;br /&gt;
U=(eye(N+1)+dt*K)\(U+dt*F); &lt;br /&gt;
sol(j+1,:)= U'; % Guardamos solucion&lt;br /&gt;
end&lt;br /&gt;
% Calculamos el area de la funcion en cada tiempo (area = cantidad de contaminante)&lt;br /&gt;
areas=zeros(1,length(t));&lt;br /&gt;
for i=1:length(t)&lt;br /&gt;
f=sol(i,:);&lt;br /&gt;
w=trapz(x,f);&lt;br /&gt;
area(i)=w;&lt;br /&gt;
end&lt;br /&gt;
%Dibujamos&lt;br /&gt;
plot(t,area)&lt;br /&gt;
xlabel('Tiempo')&lt;br /&gt;
ylabel('Cantidad de contaminante')&lt;br /&gt;
}}&lt;br /&gt;
[[Archivo:aleeex.jpg|500px|thumb|centro|Conservación masa total de contaminante]]&lt;br /&gt;
[[Archivo:gime.jpg|500px|thumb|centro|Conservación masa total de contaminante]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Concentración a lo largo del tiempo==&lt;br /&gt;
La concentración de la sustancia contaminante en la varilla varía con el tiempo, pero en un cierto momento esta concentración se va homogeneizando, y deja de variar, entrando en un estado estacionario::&lt;br /&gt;
&amp;lt;math&amp;gt; u_t(x,t)- D*u_{xx}(x,t)=0 &amp;lt;/math&amp;gt; :    &lt;br /&gt;
&amp;lt;math&amp;gt; u_t(x,t)=0 \rightarrow D*u_{xx}(x,t)=0 &amp;lt;/math&amp;gt; :&lt;br /&gt;
&amp;lt;math&amp;gt; u=c_1*x+c_2 &amp;lt;/math&amp;gt; &lt;br /&gt;
Utizando Matlab comprobaremos que &amp;lt;math&amp;gt; c_1=0 &amp;lt;/math&amp;gt; &amp;lt;math&amp;gt; c_2=1.17 &amp;lt;/math&amp;gt;&lt;br /&gt;
Para tiempos grandes la concentración se estabiliza en torno a 1.17 en toda la varilla, de forma que la solución se asemejará a una función lineal constante.&lt;br /&gt;
&lt;br /&gt;
{{matlab| codigo=&lt;br /&gt;
%Datos&lt;br /&gt;
L=5; %Longitud de varilla&lt;br /&gt;
T=50;&lt;br /&gt;
q=1;&lt;br /&gt;
%Discretización temporal y espacial&lt;br /&gt;
dx=0.1; % Paso en espacio&lt;br /&gt;
N=L/dx; %Número de subintervalos&lt;br /&gt;
h=L/N;&lt;br /&gt;
x=0:h:L; % Vector de espacio&lt;br /&gt;
dt=h/4; % Paso en tiempo&lt;br /&gt;
t=0:dt:T; % Vector de tiempos&lt;br /&gt;
% Matriz de coeficientes. Aproximacion de -q*u_xx&lt;br /&gt;
K=2*diag(ones(1,N+1))-diag(ones(1,N),1)-diag(ones(1,N),-1);&lt;br /&gt;
K(1,2)=-2;&lt;br /&gt;
K(N+1,N)=-2;&lt;br /&gt;
K=q*K/h^2;&lt;br /&gt;
% Calculamos u0 condición inicial&lt;br /&gt;
u0=[zeros(1,1+N*3/5),3*ones(1,N*2/5)]';&lt;br /&gt;
% F=0 (no la consideramos)&lt;br /&gt;
sol(1,:)=u0'; % Guardamos la solucion&lt;br /&gt;
U=u0; % Inicializacion&lt;br /&gt;
% Calculamos U_n -&amp;gt; U_n+1&lt;br /&gt;
%Aplicamos método trapecio método del trapecio&lt;br /&gt;
for j=1:length(t)-1&lt;br /&gt;
U=(eye(N+1)+(dt*K)/2)\((eye(N+1)-(K*dt)/2)*U);&lt;br /&gt;
sol(j+1,:)= U'; % Guardamos solucion&lt;br /&gt;
end&lt;br /&gt;
%Solución estacionaria&lt;br /&gt;
a=sol(length(t),:);&lt;br /&gt;
b=sol(1,:);&lt;br /&gt;
c=sol((length(t)-1)/50+1,:);&lt;br /&gt;
d=sol((length(t)-1)*2/50+1,:);&lt;br /&gt;
e=sol((length(t)-1)*10/50+1,:);&lt;br /&gt;
hold on&lt;br /&gt;
plot(x,a,'xk','linewidth',2);&lt;br /&gt;
plot(x,b,'-m','linewidth',1);&lt;br /&gt;
plot(x,c,'-g','linewidth',1);&lt;br /&gt;
plot(x,d,'-y','linewidth',1);&lt;br /&gt;
plot(x,e,'-b','linewidth',1);&lt;br /&gt;
legend('u(50s)','u(0s)','u(1s)','u(2s)','u(10s)');&lt;br /&gt;
xlabel('Posición en la varilla')&lt;br /&gt;
ylabel('Concentracion')&lt;br /&gt;
hold off&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Soluciones(t).jpg|500px|thumb|centro|Soluciones a lo largo del tiempo]]&lt;br /&gt;
&lt;br /&gt;
La distancia entre la solución estacionaria y las soluciones para los siguientes instantes: 0s, 1s, 2s y 10s; se puede apreciar en la imagen anterior. &lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
Una vez analizado los datos, se demuestra que la sustancia contaminante se estabiliza en t=9.98s, con un error del 5%.&lt;br /&gt;
&lt;br /&gt;
En el caso de que consideremos Δx'=Δx/10,el tiempo en el que se estabiliza la cantidad de sustancia contaminante será t=10.05s, dato que será más preciso debido a que el paso realizado en el programa es menor.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Nueva condición de frontera==&lt;br /&gt;
&lt;br /&gt;
Si colocásemos un limpiador, que elimina la sustancia contaminante, en el extremo izquierdo de la varilla, las ecuaciones que nos proporcionan datos sobre su difusión cambiarán debido a la variación de las condiciones.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\begin{cases}&lt;br /&gt;
u_t(x,t)- D u_{xx}(x,t)= 0 ; x\in (0,5) \\&lt;br /&gt;
u(0,t)=0 t\geq 0 \\ &lt;br /&gt;
, u_x(5,t)=0 ; t\geq 0 \\&lt;br /&gt;
&lt;br /&gt;
\end{cases}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;/div&gt;</summary>
		<author><name>Karlo André</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Difusi%C3%B3n_de_una_sustancia_contaminante_(Grupo_10)&amp;diff=12684</id>
		<title>Difusión de una sustancia contaminante (Grupo 10)</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Difusi%C3%B3n_de_una_sustancia_contaminante_(Grupo_10)&amp;diff=12684"/>
				<updated>2014-05-19T13:09:13Z</updated>
		
		<summary type="html">&lt;p&gt;Karlo André: /* Nueva condición de frontera */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;''''''Texto en negrita''''''[[Archivo:nuriat.png|200px|thumb|right|Tubo con sustancia contaminante]]&lt;br /&gt;
La difusión implica un movimiento espontáneo y desordenado de moléculas individuales y, especialmente, nos interesa la difusión de moléculas de una sustancia disuelta en otra.&lt;br /&gt;
&lt;br /&gt;
La difusión de una sustancia puede considerarse análoga al flujo de calor, y la ley de Fick establece que el ritmo de difusión por unidad de superficie, en dirección perpendicular a ésta, es proporcional al gradiente de la concentración de esa sustancia en esa dirección. La concentración es la masa de la sustancia por unidad de volumen, y el gradiente de concentración es la variación de concentración por unidad de distancia.&lt;br /&gt;
&lt;br /&gt;
Para determinar como se distribuye la concentración de una sustancia contaminante tomaremos como ejemplo un tubo largo compuesto por dos sustancias de las cuáles una de ellas es contaminante.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
= Simplificación del problema =&lt;br /&gt;
&lt;br /&gt;
Para que este problema resulte más sencillo aplicaremos una serie de condiciones, facilitando el cálculo del mismo.&lt;br /&gt;
&lt;br /&gt;
En primer lugar denotaremos su concentración &amp;lt;math&amp;gt; u &amp;lt;/math&amp;gt;, concentración de contaminante en cada posición del tubo y constante en cada sección, medida en &amp;lt;math&amp;gt; \frac{mol}{m^2*s} &amp;lt;/math&amp;gt;. &lt;br /&gt;
&lt;br /&gt;
Supondremos que el tubo mide L=5 m, ocupando el intervalo &amp;lt;math&amp;gt; x \in (0,L) &amp;lt;/math&amp;gt;, y que la concentración es la misma en cualquier punto de la sección transversal del tubo. Por tanto, la concentración dependerá unicamente de dos variables &amp;lt;math&amp;gt; u = u(x,t) &amp;lt;/math&amp;gt;. En los extremos se ha colocado un aislante que hace que el flujo de contaminante al exterior del tubo sea nulo. Además, consideraremos la simplificación de que se trata de un tubo aislado por sus laterales, pero abierto por las bases del cilindro.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Ley de conservación de masa ==&lt;br /&gt;
&lt;br /&gt;
Tras una serie de experimentos realizados por Lavoisier, se pusieron de manifiesto que si tenemos en cuenta todas las sustancias que forman parte en una reacción química y todos los productos formados, nunca varía la masa. Esta ley exige que no haya una generación espontánea de materia. Es decir, en la región del espacio estudiada, no existe entrada o salida por un punto cualquiera (frontera o interior), la masa en esta región se mantiene constante. Esta es la ley de la conservación de la masa, que podemos enunciarla, pues, de la siguiente manera: &amp;lt;br /&amp;gt;&lt;br /&gt;
''&amp;quot;En toda reacción química la masa se conserva, esto es, la masa total de los reactivos es igual a la masa total de los productos&amp;quot;'' &amp;lt;br /&amp;gt;&lt;br /&gt;
La ley de conservación de masas exige que no haya una generación espontánea de materia. Es decir, en la región del espacio estudiada, no existe entrada o salida por un punto cualquiera (frontera o interior), la masa en esta región se mantiene constante.&lt;br /&gt;
&lt;br /&gt;
Esta suposición, en términos de variación de masa, puede quedar determinada como:&lt;br /&gt;
&lt;br /&gt;
''Variación de la masa en el tiempo = flujo de masa a través de la frontera por unidad de tiempo + flujo de masa generada en el interior por unidad de tiempo. ''&lt;br /&gt;
&lt;br /&gt;
== Ley de Fick ==&lt;br /&gt;
Se trata de una ley cuantitativa en forma diferencial que describe la difusión de materia o energía en un medio en el que inicialmente existe equilibrio químico o físico. Esta ley se trata de una generalización de los fenómenos descritos por la '''Ley de Fourier''', ya que esta es una consideración concreta del calor.&lt;br /&gt;
&lt;br /&gt;
La ley de Fick anuncia que en el caso de existir diferencias de concentración en cualquier especie, el paso de estas especies se llevará a cabo desde las regiones con mayor concentración a las de menor. Formulado matemáticamente:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;F(x,t)=-D\frac{\partial u}{\partial x}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Donde &amp;lt;math&amp;gt;F&amp;lt;/math&amp;gt; es el flujo de la sustancia y &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; el coeficiente de difusión, que representa la facilidad en que un soluto particular se mueve por un disolvente determinado.&lt;br /&gt;
&lt;br /&gt;
La ley de Fick establece que el flujo de difusión del contaminante es proporcional a la variación de concentración:&lt;br /&gt;
&amp;lt;math&amp;gt; F(x,t)=-D\frac{\partial u}{\partial x} &amp;lt;/math&amp;gt;&lt;br /&gt;
donde D es el coeficiente de difusión (medido en &amp;lt;math&amp;gt; \frac{m^2}{s} &amp;lt;/math&amp;gt;), que depende de las propiedades físicas de los compuestos, y que se supone constante D=1.&lt;br /&gt;
&lt;br /&gt;
= Modelización de la ecuación diferencial =&lt;br /&gt;
&lt;br /&gt;
Aplicando el principio de conservación de la masa y la ley de Fourier, definimos la variable &amp;lt;math&amp;gt; u(x,t)&amp;lt;/math&amp;gt; en unidades de sustancia por área, es decir, concentración por superficie del tubo.&lt;br /&gt;
&lt;br /&gt;
Consideramos &amp;lt;math&amp;gt; A &amp;lt;/math&amp;gt; como variable superficie, y tomamos un pequeño trozo, definido por &amp;lt;math&amp;gt;\Delta x&amp;lt;/math&amp;gt;. Entonces, para obtener la variación de la masa en el tiempo:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; A u(x,t) \Delta x &amp;lt;/math&amp;gt; &lt;br /&gt;
&lt;br /&gt;
Y derivando en el tiempo:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; A u_t(x,t) \Delta x &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
obtenemos el primer término de la igualdad anteriormente enunciada.&lt;br /&gt;
&lt;br /&gt;
En el segundo, consideramos nulo el flujo de masa en los puntos interiores por unidad de tiempo, pues suponemos la tubería perfecta y sin sumideros.&lt;br /&gt;
&lt;br /&gt;
Como la superﬁcie lateral del tubo está aislada, solamente habrá flujo de sustancia en la dirección del eje &amp;lt;math&amp;gt;x&amp;lt;/math&amp;gt;. Si &amp;lt;math&amp;gt;F(x,t)&amp;gt; 0&amp;lt;/math&amp;gt; pensamos que el ﬂujo va hacia la derecha, si &amp;lt;math&amp;gt;F(x,t)&amp;lt; 0&amp;lt;/math&amp;gt;, este va a hacia la izquierda. El ﬂujo de&lt;br /&gt;
calor en un intervalo &amp;lt;math&amp;gt;[x, x + ∆x ] &amp;lt;/math&amp;gt; viene dado dado por:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;F(x,t)A-F(x+\Delta x, t)A&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Con lo que queda &amp;lt;math&amp;gt;A u_t(x,t) \Delta x = F(x,t)A-F(x+\Delta x, t)A&amp;lt;/math&amp;gt;, y al dividir &amp;lt;math&amp;gt;A \Delta x&amp;lt;/math&amp;gt;, nos queda &amp;lt;math&amp;gt;u_t(x,t)= \frac {F(x,t)-F(x+\Delta x, t)}{\Delta x}&amp;lt;/math&amp;gt;. &amp;lt;br /&amp;gt;&lt;br /&gt;
Como &amp;lt;math&amp;gt;\Delta x \rightarrow 0 &amp;lt;/math&amp;gt;, &amp;lt;math&amp;gt;u_t(x,t)= -F_x(x,t)&amp;lt;/math&amp;gt;, y aplicando ley de Fick, &amp;lt;math&amp;gt;u_t(x,t)=-\frac{\partial }{\partial x}(-D u_x(x,t)) = D u_xx(x,t) &amp;lt;/math&amp;gt;.&amp;lt;br /&amp;gt;&lt;br /&gt;
Con lo que resulta una ecuación en derivadas parciales que determina la concentración de sustancia:&lt;br /&gt;
&amp;lt;math&amp;gt;u_t(x,t)- D u_xx(x,t)= 0 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Planteamiento del problema bien propuesto ==&lt;br /&gt;
&lt;br /&gt;
Suponemos que el flujo será nula al haber una tapa en los extremos del tubo, con lo que el problema bien propuesto quedaría::&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\begin{cases}&lt;br /&gt;
u_t(x,t)- D u_{xx}(x,t)= 0 ; x\in (0,5) \\&lt;br /&gt;
u(x,0)=u_0 , x\in (0,5) \\&lt;br /&gt;
u_x(0,t)=0 , u_x(5,t)=0 ; t\geq 0&lt;br /&gt;
\end{cases}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= Resolución numérica =&lt;br /&gt;
Para la resolución de ésta ecuación necesitaremos mínimo tres condiciones, dos de las cuales serán de contorno, y la otra será la condición inicial.Si suponemos &amp;lt;math&amp;gt;u_0(x,0)&amp;lt;/math&amp;gt;, entonces:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; u_0(x,0)=\begin{cases}&lt;br /&gt;
0,  si x\leq 3\\&lt;br /&gt;
3,  si x&amp;gt;3&lt;br /&gt;
\end{cases}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Resolución por el método de las diferencias finitas ==&lt;br /&gt;
En el primer caso particular que estudiaremos, trataremos de obtener una resolución numérica del problema anteriormente planteado, dónde tenemos las fronteras aisladas y las concentraciones iniciales conocidas:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\begin{cases}&lt;br /&gt;
u_t(x,t)- D u_{xx}(x,t)= 0; x\in (0,5), t\geq 0 \\&lt;br /&gt;
u_0(x,0), x\in (0,5) \\&lt;br /&gt;
u_x(0,t)=0, u_x(5,t)=0, t\geq 0&lt;br /&gt;
\end{cases}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
La resolución por el método de las diferencias finitas se basa en expresar el problema continuo a un sistema discreto de ecuaciones diferenciales de primer orden. Particularizando para nuestro caso con las condiciones dadas, el problema planteado sería:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\begin{cases}&lt;br /&gt;
u'_n(t)+\frac{-u_{n-1}(t)+2u_n(t)+u_{n+1}(t)}{h^2} \\&lt;br /&gt;
\frac{u_1(t)-u_-1(t)}{2h} \rightarrow u_1(t)=u_-1(t) \\&lt;br /&gt;
\frac{u_{N+1}(t)-u_{N-1}(t)}{2h} \rightarrow u_{N+1}(t)=u_{N-1}\\&lt;br /&gt;
u_n(0)=u^0(x)&lt;br /&gt;
\end{cases}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Por lo que tenemos un sistema de la forma:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\begin{cases}&lt;br /&gt;
U'(t)+KU(t)=F(t)=0\\&lt;br /&gt;
U(0)=U^0&lt;br /&gt;
\end{cases}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Con &amp;lt;math&amp;gt;N+1&amp;lt;/math&amp;gt; ecuaciones.&lt;br /&gt;
==== Resolución por método del trapecio ====&lt;br /&gt;
Suponiendo que en el instante inicial se verifica  :&amp;lt;math&amp;gt;&lt;br /&gt;
u(x,0)=\left\{\begin{matrix}\\0, x≤3\\3, x&amp;gt;3\end{matrix}\right.&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Si tomamos &amp;lt;math&amp;gt;\triangle t= \triangle x/4&amp;lt;/math&amp;gt; en &amp;lt;math&amp;gt;t\in\ [0,5]&amp;lt;/math&amp;gt;, con &amp;lt;math&amp;gt;\triangle x=0.1&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
El código en MATLAB del método sería:&lt;br /&gt;
&lt;br /&gt;
{{matlab| codigo=&lt;br /&gt;
%Datos&lt;br /&gt;
L=5; %Longitud de varilla&lt;br /&gt;
T=5; %tiempo final&lt;br /&gt;
q=1;&lt;br /&gt;
%Discretización temporal y espacial&lt;br /&gt;
dx=0.1; % Paso en espacio&lt;br /&gt;
N=L/dx; %Número de subintervalos&lt;br /&gt;
x=dx:dx:L-dx; % Vector de espacio&lt;br /&gt;
dt=dx/4; % Paso en tiempo&lt;br /&gt;
t=0:dt:T; % Vector de tiempos&lt;br /&gt;
% Matriz de coeficientes. Aproximacion de -q*u_xx&lt;br /&gt;
K=2*diag(ones(1,N+1))-diag(ones(1,N),1)-diag(ones(1,N),-1);&lt;br /&gt;
K(1,2)=-2;&lt;br /&gt;
K(N+1,N)=-2;&lt;br /&gt;
K=q*K/dx^2;&lt;br /&gt;
% Calculamos u0 condición inicial&lt;br /&gt;
u0=[zeros(1,1+N*3/5),3*ones(1,N*2/5)]';&lt;br /&gt;
% F=0 (no la consideramos)&lt;br /&gt;
sol(1,:)=u0'; % Guardamos la solucion&lt;br /&gt;
U=u0; % Inicializacion&lt;br /&gt;
% Calculamos U_n -&amp;gt; U_n+1&lt;br /&gt;
%Aplicamos método trapecio método del trapecio&lt;br /&gt;
for j=1:length(t)-1&lt;br /&gt;
U=(eye(N+1)+(dt*K)/2)\((eye(N+1)-(K*dt)/2)*U);&lt;br /&gt;
sol(j+1,:)= U'; % Guardamos solucion&lt;br /&gt;
end&lt;br /&gt;
%Dibujamos la solucion&lt;br /&gt;
[xx,tt]=meshgrid(x,t);&lt;br /&gt;
surf(xx,tt,sol);&lt;br /&gt;
}}&lt;br /&gt;
[[Archivo:nur.jpg|500px|thumb|centro|Gráfica concentración / espacio-tiempo. Resolución por el método del trapecio.]]&lt;br /&gt;
&lt;br /&gt;
==== Resolución por método de Euler explícito ====&lt;br /&gt;
{{matlab| codigo=&lt;br /&gt;
%Datos&lt;br /&gt;
L=5; %Longitud de varilla&lt;br /&gt;
T=5; %tiempo final&lt;br /&gt;
q=1;&lt;br /&gt;
%Discretización temporal y espacial&lt;br /&gt;
dx=0.1; % Paso en espacio&lt;br /&gt;
N=L/dx; %Número de subintervalos&lt;br /&gt;
x=0:dx:L; % Vector de espacio&lt;br /&gt;
dt=dx/20; % Paso en tiempo&lt;br /&gt;
t=0:dt:T; % Vector de tiempos&lt;br /&gt;
% Matriz de coeficientes. Aproximacion de -q*u_xx&lt;br /&gt;
K=2*diag(ones(1,N+1))-diag(ones(1,N),1)-diag(ones(1,N),-1);&lt;br /&gt;
K(1,2)=-2;&lt;br /&gt;
K(N+1,N)=-2;&lt;br /&gt;
K=q*K/dx^2;&lt;br /&gt;
% Calculamos u0 condición inicial&lt;br /&gt;
u0=[zeros(1,1+N*3/5),3*ones(1,N*2/5)]';&lt;br /&gt;
% F=0 (no la consideramos)&lt;br /&gt;
sol(1,:)=u0'; % Guardamos la solucion&lt;br /&gt;
U=u0; % Inicializacion&lt;br /&gt;
% Calculamos U_n -&amp;gt; U_n+1&lt;br /&gt;
%Aplicamos método Euler explícito&lt;br /&gt;
for j=1:length(t)-1 &lt;br /&gt;
k1=-K*U; % Calculamos k1=h*f(tn,yn)&lt;br /&gt;
k2=-K*(U+dt*k1); % Calculamos k2=h*f(tn+h/2,yn+1/2*k1)&lt;br /&gt;
% Meto los datos en el vector&lt;br /&gt;
U=U+(dt/2)*(k1+k2);&lt;br /&gt;
sol(j+1,:)= U'; % Guardamos solucion&lt;br /&gt;
end&lt;br /&gt;
%Dibujamos la solucion&lt;br /&gt;
[xx,tt]=meshgrid(x,t);&lt;br /&gt;
surf(xx,tt,sol);&lt;br /&gt;
}}&lt;br /&gt;
[[Archivo:mig.jpg|500px|thumb|centro|Gráfica concentración / espacio-tiempo. Resolución por el método de Euler explícito.]]&lt;br /&gt;
&lt;br /&gt;
==== Resolución por método de Euler implícito ====&lt;br /&gt;
{{matlab| codigo=&lt;br /&gt;
%Datos&lt;br /&gt;
L=5; %Longitud de varilla&lt;br /&gt;
T=5;&lt;br /&gt;
q=1;&lt;br /&gt;
%Discretización temporal y espacial&lt;br /&gt;
dx=0.1; % Paso en espacio&lt;br /&gt;
N=L/dx; %Número de subintervalos&lt;br /&gt;
h=L/N;&lt;br /&gt;
x=0:h:L; % Vector de espacio&lt;br /&gt;
dt=h/20; % Paso en tiempo&lt;br /&gt;
t=0:dt:T; % Vector de tiempos&lt;br /&gt;
% Matriz de coeficientes. Aproximacion de -q*u_xx&lt;br /&gt;
K=2*diag(ones(1,N+1))-diag(ones(1,N),1)-diag(ones(1,N),-1);&lt;br /&gt;
K(1,2)=-2;&lt;br /&gt;
K(N+1,N)=-2;&lt;br /&gt;
K=q*K/h^2;&lt;br /&gt;
% Calculamos u0 condición inicial&lt;br /&gt;
u0=[zeros(1,1+N*3/5),3*ones(1,N*2/5)]';&lt;br /&gt;
% F=0 (no la consideramos)&lt;br /&gt;
sol(1,:)=u0'; % Guardamos la solucion&lt;br /&gt;
U=u0; % Inicializacion&lt;br /&gt;
% Calculamos U_n -&amp;gt; U_n+1&lt;br /&gt;
% Aplicamos método implícito&lt;br /&gt;
for j=1:length(t)-1 &lt;br /&gt;
U=U-dt*K*U; &lt;br /&gt;
sol(j+1,:)= U'; % Guardamos solucion&lt;br /&gt;
end&lt;br /&gt;
%Dibujamos la solucion&lt;br /&gt;
[xx,tt]=meshgrid(x,t);&lt;br /&gt;
surf(xx,tt,sol);&lt;br /&gt;
}}&lt;br /&gt;
[[Archivo:migap.jpg|500px|thumb|centro|Gráfica concentración / espacio-tiempo. Resolución por el método de Euler implícito.]]&lt;br /&gt;
&lt;br /&gt;
==== Resolución por método de Euler modificado ====&lt;br /&gt;
{{matlab| codigo=&lt;br /&gt;
%Datos&lt;br /&gt;
L=5; %Longitud de varilla&lt;br /&gt;
T=5;&lt;br /&gt;
q=1;&lt;br /&gt;
%Discretización temporal y espacial&lt;br /&gt;
dx=0.1; % Paso en espacio&lt;br /&gt;
N=L/dx; %Número de subintervalos&lt;br /&gt;
h=L/N;&lt;br /&gt;
x=0:h:L; % Vector de espacio&lt;br /&gt;
dt=h/20; % Paso en tiempo&lt;br /&gt;
t=0:dt:T; % Vector de tiempos&lt;br /&gt;
% Matriz de coeficientes. Aproximacion de -q*u_xx&lt;br /&gt;
K=2*diag(ones(1,N+1))-diag(ones(1,N),1)-diag(ones(1,N),-1);&lt;br /&gt;
K(1,2)=-2;&lt;br /&gt;
K(N+1,N)=-2;&lt;br /&gt;
K=q*K/h^2;&lt;br /&gt;
% Calculamos u0 condición inicial&lt;br /&gt;
u0=[zeros(1,1+N*3/5),3*ones(1,N*2/5)]';&lt;br /&gt;
% F=0 (no la consideramos)&lt;br /&gt;
sol(1,:)=u0'; % Guardamos la solucion&lt;br /&gt;
U=u0; % Inicializacion&lt;br /&gt;
% Calculamos U_n -&amp;gt; U_n+1&lt;br /&gt;
for j=1:length(t)-1 &lt;br /&gt;
k1=-K*U; % Calculamos k1=h*f(tn,yn)&lt;br /&gt;
k2=-K*(U+dt*k1); % Calculamos k2=h*f(tn+h/2,yn+1/2*k1)&lt;br /&gt;
% Meto los datos en el vector&lt;br /&gt;
U=U+(dt/2)*(k1+k2);&lt;br /&gt;
sol(j+1,:)= U'; % Guardamos solucion&lt;br /&gt;
end&lt;br /&gt;
%Dibujamos la solucion&lt;br /&gt;
[xx,tt]=meshgrid(x,t);&lt;br /&gt;
surf(xx,tt,sol);&lt;br /&gt;
}}&lt;br /&gt;
[[Archivo: mig.jpg|500px|thumb|centro|Gráfica concentración / espacio-tiempo. Resolución por el método de Euler modificado.]]&lt;br /&gt;
&lt;br /&gt;
== Conservación de la masa total de contaminante ==&lt;br /&gt;
A continuación demostraremos que la masa total de contaminante en el tubo se conserva a lo largo del tiempo, que se puede deducir a partir de la ecuación sin tener que resolverla. Integramos la ecuación y debido a las condiciones de frontera:&lt;br /&gt;
&amp;lt;math&amp;gt;\frac d {dt} \int_0^5 u(x,t)\,dx= \int_0^5 u_{xx}(x,t)\,dx= u_x(x,t)|_0^5=0&amp;lt;/math&amp;gt;&lt;br /&gt;
{{matlab| codigo=&lt;br /&gt;
%Datos&lt;br /&gt;
L=5; %Longitud de varilla&lt;br /&gt;
T=5;&lt;br /&gt;
q=1;&lt;br /&gt;
%Discretización temporal y espacial&lt;br /&gt;
N=500; %Número de subintervalos&lt;br /&gt;
h=L/N;&lt;br /&gt;
x=0:h:L; % Vector de espacio&lt;br /&gt;
dt=h/4; % Paso en tiempo&lt;br /&gt;
t=0:dt:T; % Vector de tiempos&lt;br /&gt;
% Matriz de coeficientes. Aproximacion de -q*u_xx&lt;br /&gt;
K=2*diag(ones(1,N+1))-diag(ones(1,N),1)-diag(ones(1,N),-1);&lt;br /&gt;
K(1,2)=-2;&lt;br /&gt;
K(N+1,N)=-2;&lt;br /&gt;
K=q*K/h^2;&lt;br /&gt;
% Calculamos u0 condición inicial&lt;br /&gt;
u0=[zeros(1,1+N*3/5),3*ones(1,N*2/5)]';&lt;br /&gt;
% F=0 (no la consideramos)&lt;br /&gt;
sol(1,:)=u0'; % Guardamos la solucion&lt;br /&gt;
U=u0; % Inicializacion&lt;br /&gt;
% Calculamos U_n -&amp;gt; U_n+1&lt;br /&gt;
for j=1:length(t)-1 &lt;br /&gt;
U=(eye(N+1)+dt*K)\(U+dt*F); &lt;br /&gt;
sol(j+1,:)= U'; % Guardamos solucion&lt;br /&gt;
end&lt;br /&gt;
% Calculamos el area de la funcion en cada tiempo (area = cantidad de contaminante)&lt;br /&gt;
areas=zeros(1,length(t));&lt;br /&gt;
for i=1:length(t)&lt;br /&gt;
f=sol(i,:);&lt;br /&gt;
w=trapz(x,f);&lt;br /&gt;
area(i)=w;&lt;br /&gt;
end&lt;br /&gt;
%Dibujamos&lt;br /&gt;
plot(t,area)&lt;br /&gt;
xlabel('Tiempo')&lt;br /&gt;
ylabel('Cantidad de contaminante')&lt;br /&gt;
}}&lt;br /&gt;
[[Archivo:aleeex.jpg|500px|thumb|centro|Conservación masa total de contaminante]]&lt;br /&gt;
[[Archivo:gime.jpg|500px|thumb|centro|Conservación masa total de contaminante]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Concentración a lo largo del tiempo==&lt;br /&gt;
La concentración de la sustancia contaminante en la varilla varía con el tiempo, pero en un cierto momento esta concentración se va homogeneizando, y deja de variar, entrando en un estado estacionario::&lt;br /&gt;
&amp;lt;math&amp;gt; u_t(x,t)- D*u_{xx}(x,t)=0 &amp;lt;/math&amp;gt; :    &lt;br /&gt;
&amp;lt;math&amp;gt; u_t(x,t)=0 \rightarrow D*u_{xx}(x,t)=0 &amp;lt;/math&amp;gt; :&lt;br /&gt;
&amp;lt;math&amp;gt; u=c_1*x+c_2 &amp;lt;/math&amp;gt; &lt;br /&gt;
Utizando Matlab comprobaremos que &amp;lt;math&amp;gt; c_1=0 &amp;lt;/math&amp;gt; &amp;lt;math&amp;gt; c_2=1.17 &amp;lt;/math&amp;gt;&lt;br /&gt;
Para tiempos grandes la concentración se estabiliza en torno a 1.17 en toda la varilla, de forma que la solución se asemejará a una función lineal constante.&lt;br /&gt;
&lt;br /&gt;
{{matlab| codigo=&lt;br /&gt;
%Datos&lt;br /&gt;
L=5; %Longitud de varilla&lt;br /&gt;
T=50;&lt;br /&gt;
q=1;&lt;br /&gt;
%Discretización temporal y espacial&lt;br /&gt;
dx=0.1; % Paso en espacio&lt;br /&gt;
N=L/dx; %Número de subintervalos&lt;br /&gt;
h=L/N;&lt;br /&gt;
x=0:h:L; % Vector de espacio&lt;br /&gt;
dt=h/4; % Paso en tiempo&lt;br /&gt;
t=0:dt:T; % Vector de tiempos&lt;br /&gt;
% Matriz de coeficientes. Aproximacion de -q*u_xx&lt;br /&gt;
K=2*diag(ones(1,N+1))-diag(ones(1,N),1)-diag(ones(1,N),-1);&lt;br /&gt;
K(1,2)=-2;&lt;br /&gt;
K(N+1,N)=-2;&lt;br /&gt;
K=q*K/h^2;&lt;br /&gt;
% Calculamos u0 condición inicial&lt;br /&gt;
u0=[zeros(1,1+N*3/5),3*ones(1,N*2/5)]';&lt;br /&gt;
% F=0 (no la consideramos)&lt;br /&gt;
sol(1,:)=u0'; % Guardamos la solucion&lt;br /&gt;
U=u0; % Inicializacion&lt;br /&gt;
% Calculamos U_n -&amp;gt; U_n+1&lt;br /&gt;
%Aplicamos método trapecio método del trapecio&lt;br /&gt;
for j=1:length(t)-1&lt;br /&gt;
U=(eye(N+1)+(dt*K)/2)\((eye(N+1)-(K*dt)/2)*U);&lt;br /&gt;
sol(j+1,:)= U'; % Guardamos solucion&lt;br /&gt;
end&lt;br /&gt;
%Solución estacionaria&lt;br /&gt;
a=sol(length(t),:);&lt;br /&gt;
b=sol(1,:);&lt;br /&gt;
c=sol((length(t)-1)/50+1,:);&lt;br /&gt;
d=sol((length(t)-1)*2/50+1,:);&lt;br /&gt;
e=sol((length(t)-1)*10/50+1,:);&lt;br /&gt;
hold on&lt;br /&gt;
plot(x,a,'xk','linewidth',2);&lt;br /&gt;
plot(x,b,'-m','linewidth',1);&lt;br /&gt;
plot(x,c,'-g','linewidth',1);&lt;br /&gt;
plot(x,d,'-y','linewidth',1);&lt;br /&gt;
plot(x,e,'-b','linewidth',1);&lt;br /&gt;
legend('u(50s)','u(0s)','u(1s)','u(2s)','u(10s)');&lt;br /&gt;
xlabel('Posición en la varilla')&lt;br /&gt;
ylabel('Concentracion')&lt;br /&gt;
hold off&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Soluciones(t).jpg|500px|thumb|centro|Soluciones a lo largo del tiempo]]&lt;br /&gt;
&lt;br /&gt;
La distancia entre la solución estacionaria y las soluciones para los siguientes instantes: 0s, 1s, 2s y 10s; se puede apreciar en la imagen anterior. &lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
Una vez analizado los datos, se demuestra que la sustancia contaminante se estabiliza en t=9.98s, con un error del 5%.&lt;br /&gt;
&lt;br /&gt;
En el caso de que consideremos Δx'=Δx/10,el tiempo en el que se estabiliza la cantidad de sustancia contaminante será t=10.05s, dato que será más preciso debido a que el paso realizado en el programa es menor.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Nueva condición de frontera==&lt;br /&gt;
&lt;br /&gt;
Si colocásemos un limpiador, que elimina la sustancia contaminante, en el extremo izquierdo de la varilla, las ecuaciones que nos proporcionan datos sobre su difusión cambiarán debido a la variación de las condiciones.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\begin{cases}&lt;br /&gt;
u_t(x,t)- D u_{xx}(x,t)= 0 ; x\in (0,5) \\&lt;br /&gt;
u_x(0,t)=0 , u_x(5,t)=0 ; t\geq 0 \\&lt;br /&gt;
u_x(0,t)&lt;br /&gt;
\end{cases}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;/div&gt;</summary>
		<author><name>Karlo André</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Difusi%C3%B3n_de_una_sustancia_contaminante_(Grupo_10)&amp;diff=12683</id>
		<title>Difusión de una sustancia contaminante (Grupo 10)</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Difusi%C3%B3n_de_una_sustancia_contaminante_(Grupo_10)&amp;diff=12683"/>
				<updated>2014-05-19T13:04:41Z</updated>
		
		<summary type="html">&lt;p&gt;Karlo André: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;''''''Texto en negrita''''''[[Archivo:nuriat.png|200px|thumb|right|Tubo con sustancia contaminante]]&lt;br /&gt;
La difusión implica un movimiento espontáneo y desordenado de moléculas individuales y, especialmente, nos interesa la difusión de moléculas de una sustancia disuelta en otra.&lt;br /&gt;
&lt;br /&gt;
La difusión de una sustancia puede considerarse análoga al flujo de calor, y la ley de Fick establece que el ritmo de difusión por unidad de superficie, en dirección perpendicular a ésta, es proporcional al gradiente de la concentración de esa sustancia en esa dirección. La concentración es la masa de la sustancia por unidad de volumen, y el gradiente de concentración es la variación de concentración por unidad de distancia.&lt;br /&gt;
&lt;br /&gt;
Para determinar como se distribuye la concentración de una sustancia contaminante tomaremos como ejemplo un tubo largo compuesto por dos sustancias de las cuáles una de ellas es contaminante.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
= Simplificación del problema =&lt;br /&gt;
&lt;br /&gt;
Para que este problema resulte más sencillo aplicaremos una serie de condiciones, facilitando el cálculo del mismo.&lt;br /&gt;
&lt;br /&gt;
En primer lugar denotaremos su concentración &amp;lt;math&amp;gt; u &amp;lt;/math&amp;gt;, concentración de contaminante en cada posición del tubo y constante en cada sección, medida en &amp;lt;math&amp;gt; \frac{mol}{m^2*s} &amp;lt;/math&amp;gt;. &lt;br /&gt;
&lt;br /&gt;
Supondremos que el tubo mide L=5 m, ocupando el intervalo &amp;lt;math&amp;gt; x \in (0,L) &amp;lt;/math&amp;gt;, y que la concentración es la misma en cualquier punto de la sección transversal del tubo. Por tanto, la concentración dependerá unicamente de dos variables &amp;lt;math&amp;gt; u = u(x,t) &amp;lt;/math&amp;gt;. En los extremos se ha colocado un aislante que hace que el flujo de contaminante al exterior del tubo sea nulo. Además, consideraremos la simplificación de que se trata de un tubo aislado por sus laterales, pero abierto por las bases del cilindro.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Ley de conservación de masa ==&lt;br /&gt;
&lt;br /&gt;
Tras una serie de experimentos realizados por Lavoisier, se pusieron de manifiesto que si tenemos en cuenta todas las sustancias que forman parte en una reacción química y todos los productos formados, nunca varía la masa. Esta ley exige que no haya una generación espontánea de materia. Es decir, en la región del espacio estudiada, no existe entrada o salida por un punto cualquiera (frontera o interior), la masa en esta región se mantiene constante. Esta es la ley de la conservación de la masa, que podemos enunciarla, pues, de la siguiente manera: &amp;lt;br /&amp;gt;&lt;br /&gt;
''&amp;quot;En toda reacción química la masa se conserva, esto es, la masa total de los reactivos es igual a la masa total de los productos&amp;quot;'' &amp;lt;br /&amp;gt;&lt;br /&gt;
La ley de conservación de masas exige que no haya una generación espontánea de materia. Es decir, en la región del espacio estudiada, no existe entrada o salida por un punto cualquiera (frontera o interior), la masa en esta región se mantiene constante.&lt;br /&gt;
&lt;br /&gt;
Esta suposición, en términos de variación de masa, puede quedar determinada como:&lt;br /&gt;
&lt;br /&gt;
''Variación de la masa en el tiempo = flujo de masa a través de la frontera por unidad de tiempo + flujo de masa generada en el interior por unidad de tiempo. ''&lt;br /&gt;
&lt;br /&gt;
== Ley de Fick ==&lt;br /&gt;
Se trata de una ley cuantitativa en forma diferencial que describe la difusión de materia o energía en un medio en el que inicialmente existe equilibrio químico o físico. Esta ley se trata de una generalización de los fenómenos descritos por la '''Ley de Fourier''', ya que esta es una consideración concreta del calor.&lt;br /&gt;
&lt;br /&gt;
La ley de Fick anuncia que en el caso de existir diferencias de concentración en cualquier especie, el paso de estas especies se llevará a cabo desde las regiones con mayor concentración a las de menor. Formulado matemáticamente:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;F(x,t)=-D\frac{\partial u}{\partial x}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Donde &amp;lt;math&amp;gt;F&amp;lt;/math&amp;gt; es el flujo de la sustancia y &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; el coeficiente de difusión, que representa la facilidad en que un soluto particular se mueve por un disolvente determinado.&lt;br /&gt;
&lt;br /&gt;
La ley de Fick establece que el flujo de difusión del contaminante es proporcional a la variación de concentración:&lt;br /&gt;
&amp;lt;math&amp;gt; F(x,t)=-D\frac{\partial u}{\partial x} &amp;lt;/math&amp;gt;&lt;br /&gt;
donde D es el coeficiente de difusión (medido en &amp;lt;math&amp;gt; \frac{m^2}{s} &amp;lt;/math&amp;gt;), que depende de las propiedades físicas de los compuestos, y que se supone constante D=1.&lt;br /&gt;
&lt;br /&gt;
= Modelización de la ecuación diferencial =&lt;br /&gt;
&lt;br /&gt;
Aplicando el principio de conservación de la masa y la ley de Fourier, definimos la variable &amp;lt;math&amp;gt; u(x,t)&amp;lt;/math&amp;gt; en unidades de sustancia por área, es decir, concentración por superficie del tubo.&lt;br /&gt;
&lt;br /&gt;
Consideramos &amp;lt;math&amp;gt; A &amp;lt;/math&amp;gt; como variable superficie, y tomamos un pequeño trozo, definido por &amp;lt;math&amp;gt;\Delta x&amp;lt;/math&amp;gt;. Entonces, para obtener la variación de la masa en el tiempo:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; A u(x,t) \Delta x &amp;lt;/math&amp;gt; &lt;br /&gt;
&lt;br /&gt;
Y derivando en el tiempo:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; A u_t(x,t) \Delta x &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
obtenemos el primer término de la igualdad anteriormente enunciada.&lt;br /&gt;
&lt;br /&gt;
En el segundo, consideramos nulo el flujo de masa en los puntos interiores por unidad de tiempo, pues suponemos la tubería perfecta y sin sumideros.&lt;br /&gt;
&lt;br /&gt;
Como la superﬁcie lateral del tubo está aislada, solamente habrá flujo de sustancia en la dirección del eje &amp;lt;math&amp;gt;x&amp;lt;/math&amp;gt;. Si &amp;lt;math&amp;gt;F(x,t)&amp;gt; 0&amp;lt;/math&amp;gt; pensamos que el ﬂujo va hacia la derecha, si &amp;lt;math&amp;gt;F(x,t)&amp;lt; 0&amp;lt;/math&amp;gt;, este va a hacia la izquierda. El ﬂujo de&lt;br /&gt;
calor en un intervalo &amp;lt;math&amp;gt;[x, x + ∆x ] &amp;lt;/math&amp;gt; viene dado dado por:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;F(x,t)A-F(x+\Delta x, t)A&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Con lo que queda &amp;lt;math&amp;gt;A u_t(x,t) \Delta x = F(x,t)A-F(x+\Delta x, t)A&amp;lt;/math&amp;gt;, y al dividir &amp;lt;math&amp;gt;A \Delta x&amp;lt;/math&amp;gt;, nos queda &amp;lt;math&amp;gt;u_t(x,t)= \frac {F(x,t)-F(x+\Delta x, t)}{\Delta x}&amp;lt;/math&amp;gt;. &amp;lt;br /&amp;gt;&lt;br /&gt;
Como &amp;lt;math&amp;gt;\Delta x \rightarrow 0 &amp;lt;/math&amp;gt;, &amp;lt;math&amp;gt;u_t(x,t)= -F_x(x,t)&amp;lt;/math&amp;gt;, y aplicando ley de Fick, &amp;lt;math&amp;gt;u_t(x,t)=-\frac{\partial }{\partial x}(-D u_x(x,t)) = D u_xx(x,t) &amp;lt;/math&amp;gt;.&amp;lt;br /&amp;gt;&lt;br /&gt;
Con lo que resulta una ecuación en derivadas parciales que determina la concentración de sustancia:&lt;br /&gt;
&amp;lt;math&amp;gt;u_t(x,t)- D u_xx(x,t)= 0 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Planteamiento del problema bien propuesto ==&lt;br /&gt;
&lt;br /&gt;
Suponemos que el flujo será nula al haber una tapa en los extremos del tubo, con lo que el problema bien propuesto quedaría::&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\begin{cases}&lt;br /&gt;
u_t(x,t)- D u_{xx}(x,t)= 0 ; x\in (0,5) \\&lt;br /&gt;
u(x,0)=u_0 , x\in (0,5) \\&lt;br /&gt;
u_x(0,t)=0 , u_x(5,t)=0 ; t\geq 0&lt;br /&gt;
\end{cases}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= Resolución numérica =&lt;br /&gt;
Para la resolución de ésta ecuación necesitaremos mínimo tres condiciones, dos de las cuales serán de contorno, y la otra será la condición inicial.Si suponemos &amp;lt;math&amp;gt;u_0(x,0)&amp;lt;/math&amp;gt;, entonces:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; u_0(x,0)=\begin{cases}&lt;br /&gt;
0,  si x\leq 3\\&lt;br /&gt;
3,  si x&amp;gt;3&lt;br /&gt;
\end{cases}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Resolución por el método de las diferencias finitas ==&lt;br /&gt;
En el primer caso particular que estudiaremos, trataremos de obtener una resolución numérica del problema anteriormente planteado, dónde tenemos las fronteras aisladas y las concentraciones iniciales conocidas:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\begin{cases}&lt;br /&gt;
u_t(x,t)- D u_{xx}(x,t)= 0; x\in (0,5), t\geq 0 \\&lt;br /&gt;
u_0(x,0), x\in (0,5) \\&lt;br /&gt;
u_x(0,t)=0, u_x(5,t)=0, t\geq 0&lt;br /&gt;
\end{cases}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
La resolución por el método de las diferencias finitas se basa en expresar el problema continuo a un sistema discreto de ecuaciones diferenciales de primer orden. Particularizando para nuestro caso con las condiciones dadas, el problema planteado sería:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\begin{cases}&lt;br /&gt;
u'_n(t)+\frac{-u_{n-1}(t)+2u_n(t)+u_{n+1}(t)}{h^2} \\&lt;br /&gt;
\frac{u_1(t)-u_-1(t)}{2h} \rightarrow u_1(t)=u_-1(t) \\&lt;br /&gt;
\frac{u_{N+1}(t)-u_{N-1}(t)}{2h} \rightarrow u_{N+1}(t)=u_{N-1}\\&lt;br /&gt;
u_n(0)=u^0(x)&lt;br /&gt;
\end{cases}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Por lo que tenemos un sistema de la forma:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\begin{cases}&lt;br /&gt;
U'(t)+KU(t)=F(t)=0\\&lt;br /&gt;
U(0)=U^0&lt;br /&gt;
\end{cases}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Con &amp;lt;math&amp;gt;N+1&amp;lt;/math&amp;gt; ecuaciones.&lt;br /&gt;
==== Resolución por método del trapecio ====&lt;br /&gt;
Suponiendo que en el instante inicial se verifica  :&amp;lt;math&amp;gt;&lt;br /&gt;
u(x,0)=\left\{\begin{matrix}\\0, x≤3\\3, x&amp;gt;3\end{matrix}\right.&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Si tomamos &amp;lt;math&amp;gt;\triangle t= \triangle x/4&amp;lt;/math&amp;gt; en &amp;lt;math&amp;gt;t\in\ [0,5]&amp;lt;/math&amp;gt;, con &amp;lt;math&amp;gt;\triangle x=0.1&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
El código en MATLAB del método sería:&lt;br /&gt;
&lt;br /&gt;
{{matlab| codigo=&lt;br /&gt;
%Datos&lt;br /&gt;
L=5; %Longitud de varilla&lt;br /&gt;
T=5; %tiempo final&lt;br /&gt;
q=1;&lt;br /&gt;
%Discretización temporal y espacial&lt;br /&gt;
dx=0.1; % Paso en espacio&lt;br /&gt;
N=L/dx; %Número de subintervalos&lt;br /&gt;
x=dx:dx:L-dx; % Vector de espacio&lt;br /&gt;
dt=dx/4; % Paso en tiempo&lt;br /&gt;
t=0:dt:T; % Vector de tiempos&lt;br /&gt;
% Matriz de coeficientes. Aproximacion de -q*u_xx&lt;br /&gt;
K=2*diag(ones(1,N+1))-diag(ones(1,N),1)-diag(ones(1,N),-1);&lt;br /&gt;
K(1,2)=-2;&lt;br /&gt;
K(N+1,N)=-2;&lt;br /&gt;
K=q*K/dx^2;&lt;br /&gt;
% Calculamos u0 condición inicial&lt;br /&gt;
u0=[zeros(1,1+N*3/5),3*ones(1,N*2/5)]';&lt;br /&gt;
% F=0 (no la consideramos)&lt;br /&gt;
sol(1,:)=u0'; % Guardamos la solucion&lt;br /&gt;
U=u0; % Inicializacion&lt;br /&gt;
% Calculamos U_n -&amp;gt; U_n+1&lt;br /&gt;
%Aplicamos método trapecio método del trapecio&lt;br /&gt;
for j=1:length(t)-1&lt;br /&gt;
U=(eye(N+1)+(dt*K)/2)\((eye(N+1)-(K*dt)/2)*U);&lt;br /&gt;
sol(j+1,:)= U'; % Guardamos solucion&lt;br /&gt;
end&lt;br /&gt;
%Dibujamos la solucion&lt;br /&gt;
[xx,tt]=meshgrid(x,t);&lt;br /&gt;
surf(xx,tt,sol);&lt;br /&gt;
}}&lt;br /&gt;
[[Archivo:nur.jpg|500px|thumb|centro|Gráfica concentración / espacio-tiempo. Resolución por el método del trapecio.]]&lt;br /&gt;
&lt;br /&gt;
==== Resolución por método de Euler explícito ====&lt;br /&gt;
{{matlab| codigo=&lt;br /&gt;
%Datos&lt;br /&gt;
L=5; %Longitud de varilla&lt;br /&gt;
T=5; %tiempo final&lt;br /&gt;
q=1;&lt;br /&gt;
%Discretización temporal y espacial&lt;br /&gt;
dx=0.1; % Paso en espacio&lt;br /&gt;
N=L/dx; %Número de subintervalos&lt;br /&gt;
x=0:dx:L; % Vector de espacio&lt;br /&gt;
dt=dx/20; % Paso en tiempo&lt;br /&gt;
t=0:dt:T; % Vector de tiempos&lt;br /&gt;
% Matriz de coeficientes. Aproximacion de -q*u_xx&lt;br /&gt;
K=2*diag(ones(1,N+1))-diag(ones(1,N),1)-diag(ones(1,N),-1);&lt;br /&gt;
K(1,2)=-2;&lt;br /&gt;
K(N+1,N)=-2;&lt;br /&gt;
K=q*K/dx^2;&lt;br /&gt;
% Calculamos u0 condición inicial&lt;br /&gt;
u0=[zeros(1,1+N*3/5),3*ones(1,N*2/5)]';&lt;br /&gt;
% F=0 (no la consideramos)&lt;br /&gt;
sol(1,:)=u0'; % Guardamos la solucion&lt;br /&gt;
U=u0; % Inicializacion&lt;br /&gt;
% Calculamos U_n -&amp;gt; U_n+1&lt;br /&gt;
%Aplicamos método Euler explícito&lt;br /&gt;
for j=1:length(t)-1 &lt;br /&gt;
k1=-K*U; % Calculamos k1=h*f(tn,yn)&lt;br /&gt;
k2=-K*(U+dt*k1); % Calculamos k2=h*f(tn+h/2,yn+1/2*k1)&lt;br /&gt;
% Meto los datos en el vector&lt;br /&gt;
U=U+(dt/2)*(k1+k2);&lt;br /&gt;
sol(j+1,:)= U'; % Guardamos solucion&lt;br /&gt;
end&lt;br /&gt;
%Dibujamos la solucion&lt;br /&gt;
[xx,tt]=meshgrid(x,t);&lt;br /&gt;
surf(xx,tt,sol);&lt;br /&gt;
}}&lt;br /&gt;
[[Archivo:mig.jpg|500px|thumb|centro|Gráfica concentración / espacio-tiempo. Resolución por el método de Euler explícito.]]&lt;br /&gt;
&lt;br /&gt;
==== Resolución por método de Euler implícito ====&lt;br /&gt;
{{matlab| codigo=&lt;br /&gt;
%Datos&lt;br /&gt;
L=5; %Longitud de varilla&lt;br /&gt;
T=5;&lt;br /&gt;
q=1;&lt;br /&gt;
%Discretización temporal y espacial&lt;br /&gt;
dx=0.1; % Paso en espacio&lt;br /&gt;
N=L/dx; %Número de subintervalos&lt;br /&gt;
h=L/N;&lt;br /&gt;
x=0:h:L; % Vector de espacio&lt;br /&gt;
dt=h/20; % Paso en tiempo&lt;br /&gt;
t=0:dt:T; % Vector de tiempos&lt;br /&gt;
% Matriz de coeficientes. Aproximacion de -q*u_xx&lt;br /&gt;
K=2*diag(ones(1,N+1))-diag(ones(1,N),1)-diag(ones(1,N),-1);&lt;br /&gt;
K(1,2)=-2;&lt;br /&gt;
K(N+1,N)=-2;&lt;br /&gt;
K=q*K/h^2;&lt;br /&gt;
% Calculamos u0 condición inicial&lt;br /&gt;
u0=[zeros(1,1+N*3/5),3*ones(1,N*2/5)]';&lt;br /&gt;
% F=0 (no la consideramos)&lt;br /&gt;
sol(1,:)=u0'; % Guardamos la solucion&lt;br /&gt;
U=u0; % Inicializacion&lt;br /&gt;
% Calculamos U_n -&amp;gt; U_n+1&lt;br /&gt;
% Aplicamos método implícito&lt;br /&gt;
for j=1:length(t)-1 &lt;br /&gt;
U=U-dt*K*U; &lt;br /&gt;
sol(j+1,:)= U'; % Guardamos solucion&lt;br /&gt;
end&lt;br /&gt;
%Dibujamos la solucion&lt;br /&gt;
[xx,tt]=meshgrid(x,t);&lt;br /&gt;
surf(xx,tt,sol);&lt;br /&gt;
}}&lt;br /&gt;
[[Archivo:migap.jpg|500px|thumb|centro|Gráfica concentración / espacio-tiempo. Resolución por el método de Euler implícito.]]&lt;br /&gt;
&lt;br /&gt;
==== Resolución por método de Euler modificado ====&lt;br /&gt;
{{matlab| codigo=&lt;br /&gt;
%Datos&lt;br /&gt;
L=5; %Longitud de varilla&lt;br /&gt;
T=5;&lt;br /&gt;
q=1;&lt;br /&gt;
%Discretización temporal y espacial&lt;br /&gt;
dx=0.1; % Paso en espacio&lt;br /&gt;
N=L/dx; %Número de subintervalos&lt;br /&gt;
h=L/N;&lt;br /&gt;
x=0:h:L; % Vector de espacio&lt;br /&gt;
dt=h/20; % Paso en tiempo&lt;br /&gt;
t=0:dt:T; % Vector de tiempos&lt;br /&gt;
% Matriz de coeficientes. Aproximacion de -q*u_xx&lt;br /&gt;
K=2*diag(ones(1,N+1))-diag(ones(1,N),1)-diag(ones(1,N),-1);&lt;br /&gt;
K(1,2)=-2;&lt;br /&gt;
K(N+1,N)=-2;&lt;br /&gt;
K=q*K/h^2;&lt;br /&gt;
% Calculamos u0 condición inicial&lt;br /&gt;
u0=[zeros(1,1+N*3/5),3*ones(1,N*2/5)]';&lt;br /&gt;
% F=0 (no la consideramos)&lt;br /&gt;
sol(1,:)=u0'; % Guardamos la solucion&lt;br /&gt;
U=u0; % Inicializacion&lt;br /&gt;
% Calculamos U_n -&amp;gt; U_n+1&lt;br /&gt;
for j=1:length(t)-1 &lt;br /&gt;
k1=-K*U; % Calculamos k1=h*f(tn,yn)&lt;br /&gt;
k2=-K*(U+dt*k1); % Calculamos k2=h*f(tn+h/2,yn+1/2*k1)&lt;br /&gt;
% Meto los datos en el vector&lt;br /&gt;
U=U+(dt/2)*(k1+k2);&lt;br /&gt;
sol(j+1,:)= U'; % Guardamos solucion&lt;br /&gt;
end&lt;br /&gt;
%Dibujamos la solucion&lt;br /&gt;
[xx,tt]=meshgrid(x,t);&lt;br /&gt;
surf(xx,tt,sol);&lt;br /&gt;
}}&lt;br /&gt;
[[Archivo: mig.jpg|500px|thumb|centro|Gráfica concentración / espacio-tiempo. Resolución por el método de Euler modificado.]]&lt;br /&gt;
&lt;br /&gt;
== Conservación de la masa total de contaminante ==&lt;br /&gt;
A continuación demostraremos que la masa total de contaminante en el tubo se conserva a lo largo del tiempo, que se puede deducir a partir de la ecuación sin tener que resolverla. Integramos la ecuación y debido a las condiciones de frontera:&lt;br /&gt;
&amp;lt;math&amp;gt;\frac d {dt} \int_0^5 u(x,t)\,dx= \int_0^5 u_{xx}(x,t)\,dx= u_x(x,t)|_0^5=0&amp;lt;/math&amp;gt;&lt;br /&gt;
{{matlab| codigo=&lt;br /&gt;
%Datos&lt;br /&gt;
L=5; %Longitud de varilla&lt;br /&gt;
T=5;&lt;br /&gt;
q=1;&lt;br /&gt;
%Discretización temporal y espacial&lt;br /&gt;
N=500; %Número de subintervalos&lt;br /&gt;
h=L/N;&lt;br /&gt;
x=0:h:L; % Vector de espacio&lt;br /&gt;
dt=h/4; % Paso en tiempo&lt;br /&gt;
t=0:dt:T; % Vector de tiempos&lt;br /&gt;
% Matriz de coeficientes. Aproximacion de -q*u_xx&lt;br /&gt;
K=2*diag(ones(1,N+1))-diag(ones(1,N),1)-diag(ones(1,N),-1);&lt;br /&gt;
K(1,2)=-2;&lt;br /&gt;
K(N+1,N)=-2;&lt;br /&gt;
K=q*K/h^2;&lt;br /&gt;
% Calculamos u0 condición inicial&lt;br /&gt;
u0=[zeros(1,1+N*3/5),3*ones(1,N*2/5)]';&lt;br /&gt;
% F=0 (no la consideramos)&lt;br /&gt;
sol(1,:)=u0'; % Guardamos la solucion&lt;br /&gt;
U=u0; % Inicializacion&lt;br /&gt;
% Calculamos U_n -&amp;gt; U_n+1&lt;br /&gt;
for j=1:length(t)-1 &lt;br /&gt;
U=(eye(N+1)+dt*K)\(U+dt*F); &lt;br /&gt;
sol(j+1,:)= U'; % Guardamos solucion&lt;br /&gt;
end&lt;br /&gt;
% Calculamos el area de la funcion en cada tiempo (area = cantidad de contaminante)&lt;br /&gt;
areas=zeros(1,length(t));&lt;br /&gt;
for i=1:length(t)&lt;br /&gt;
f=sol(i,:);&lt;br /&gt;
w=trapz(x,f);&lt;br /&gt;
area(i)=w;&lt;br /&gt;
end&lt;br /&gt;
%Dibujamos&lt;br /&gt;
plot(t,area)&lt;br /&gt;
xlabel('Tiempo')&lt;br /&gt;
ylabel('Cantidad de contaminante')&lt;br /&gt;
}}&lt;br /&gt;
[[Archivo:aleeex.jpg|500px|thumb|centro|Conservación masa total de contaminante]]&lt;br /&gt;
[[Archivo:gime.jpg|500px|thumb|centro|Conservación masa total de contaminante]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Concentración a lo largo del tiempo==&lt;br /&gt;
La concentración de la sustancia contaminante en la varilla varía con el tiempo, pero en un cierto momento esta concentración se va homogeneizando, y deja de variar, entrando en un estado estacionario::&lt;br /&gt;
&amp;lt;math&amp;gt; u_t(x,t)- D*u_{xx}(x,t)=0 &amp;lt;/math&amp;gt; :    &lt;br /&gt;
&amp;lt;math&amp;gt; u_t(x,t)=0 \rightarrow D*u_{xx}(x,t)=0 &amp;lt;/math&amp;gt; :&lt;br /&gt;
&amp;lt;math&amp;gt; u=c_1*x+c_2 &amp;lt;/math&amp;gt; &lt;br /&gt;
Utizando Matlab comprobaremos que &amp;lt;math&amp;gt; c_1=0 &amp;lt;/math&amp;gt; &amp;lt;math&amp;gt; c_2=1.17 &amp;lt;/math&amp;gt;&lt;br /&gt;
Para tiempos grandes la concentración se estabiliza en torno a 1.17 en toda la varilla, de forma que la solución se asemejará a una función lineal constante.&lt;br /&gt;
&lt;br /&gt;
{{matlab| codigo=&lt;br /&gt;
%Datos&lt;br /&gt;
L=5; %Longitud de varilla&lt;br /&gt;
T=50;&lt;br /&gt;
q=1;&lt;br /&gt;
%Discretización temporal y espacial&lt;br /&gt;
dx=0.1; % Paso en espacio&lt;br /&gt;
N=L/dx; %Número de subintervalos&lt;br /&gt;
h=L/N;&lt;br /&gt;
x=0:h:L; % Vector de espacio&lt;br /&gt;
dt=h/4; % Paso en tiempo&lt;br /&gt;
t=0:dt:T; % Vector de tiempos&lt;br /&gt;
% Matriz de coeficientes. Aproximacion de -q*u_xx&lt;br /&gt;
K=2*diag(ones(1,N+1))-diag(ones(1,N),1)-diag(ones(1,N),-1);&lt;br /&gt;
K(1,2)=-2;&lt;br /&gt;
K(N+1,N)=-2;&lt;br /&gt;
K=q*K/h^2;&lt;br /&gt;
% Calculamos u0 condición inicial&lt;br /&gt;
u0=[zeros(1,1+N*3/5),3*ones(1,N*2/5)]';&lt;br /&gt;
% F=0 (no la consideramos)&lt;br /&gt;
sol(1,:)=u0'; % Guardamos la solucion&lt;br /&gt;
U=u0; % Inicializacion&lt;br /&gt;
% Calculamos U_n -&amp;gt; U_n+1&lt;br /&gt;
%Aplicamos método trapecio método del trapecio&lt;br /&gt;
for j=1:length(t)-1&lt;br /&gt;
U=(eye(N+1)+(dt*K)/2)\((eye(N+1)-(K*dt)/2)*U);&lt;br /&gt;
sol(j+1,:)= U'; % Guardamos solucion&lt;br /&gt;
end&lt;br /&gt;
%Solución estacionaria&lt;br /&gt;
a=sol(length(t),:);&lt;br /&gt;
b=sol(1,:);&lt;br /&gt;
c=sol((length(t)-1)/50+1,:);&lt;br /&gt;
d=sol((length(t)-1)*2/50+1,:);&lt;br /&gt;
e=sol((length(t)-1)*10/50+1,:);&lt;br /&gt;
hold on&lt;br /&gt;
plot(x,a,'xk','linewidth',2);&lt;br /&gt;
plot(x,b,'-m','linewidth',1);&lt;br /&gt;
plot(x,c,'-g','linewidth',1);&lt;br /&gt;
plot(x,d,'-y','linewidth',1);&lt;br /&gt;
plot(x,e,'-b','linewidth',1);&lt;br /&gt;
legend('u(50s)','u(0s)','u(1s)','u(2s)','u(10s)');&lt;br /&gt;
xlabel('Posición en la varilla')&lt;br /&gt;
ylabel('Concentracion')&lt;br /&gt;
hold off&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Soluciones(t).jpg|500px|thumb|centro|Soluciones a lo largo del tiempo]]&lt;br /&gt;
&lt;br /&gt;
La distancia entre la solución estacionaria y las soluciones para los siguientes instantes: 0s, 1s, 2s y 10s; se puede apreciar en la imagen anterior. &lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
Una vez analizado los datos, se demuestra que la sustancia contaminante se estabiliza en t=9.98s, con un error del 5%.&lt;br /&gt;
&lt;br /&gt;
En el caso de que consideremos Δx'=Δx/10,el tiempo en el que se estabiliza la cantidad de sustancia contaminante será t=10.05s, dato que será más preciso debido a que el paso realizado en el programa es menor.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Nueva condición de frontera==&lt;br /&gt;
&lt;br /&gt;
Si colocásemos un limpiador, que elimina la sustancia contaminante, en el extremo izquierdo de la varilla, las ecuaciones que nos proporcionan datos sobre su difusión&lt;/div&gt;</summary>
		<author><name>Karlo André</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Difusi%C3%B3n_de_una_sustancia_contaminante_(Grupo_10)&amp;diff=12674</id>
		<title>Difusión de una sustancia contaminante (Grupo 10)</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Difusi%C3%B3n_de_una_sustancia_contaminante_(Grupo_10)&amp;diff=12674"/>
				<updated>2014-05-19T12:47:13Z</updated>
		
		<summary type="html">&lt;p&gt;Karlo André: /* Concentración a lo largo del tiempo */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Archivo:nuriat.png|200px|thumb|right|Tubo con sustancia contaminante]]&lt;br /&gt;
La difusión implica un movimiento espontáneo y desordenado de moléculas individuales y, especialmente, nos interesa la difusión de moléculas de una sustancia disuelta en otra.&lt;br /&gt;
&lt;br /&gt;
La difusión de una sustancia puede considerarse análoga al flujo de calor, y la ley de Fick establece que el ritmo de difusión por unidad de superficie, en dirección perpendicular a ésta, es proporcional al gradiente de la concentración de esa sustancia en esa dirección. La concentración es la masa de la sustancia por unidad de volumen, y el gradiente de concentración es la variación de concentración por unidad de distancia.&lt;br /&gt;
&lt;br /&gt;
Para determinar como se distribuye la concentración de una sustancia contaminante tomaremos como ejemplo un tubo largo compuesto por dos sustancias de las cuáles una de ellas es contaminante.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
= Simplificación del problema =&lt;br /&gt;
&lt;br /&gt;
Para que este problema resulte más sencillo aplicaremos una serie de condiciones, facilitando el cálculo del mismo.&lt;br /&gt;
&lt;br /&gt;
En primer lugar denotaremos su concentración &amp;lt;math&amp;gt; u &amp;lt;/math&amp;gt;, concentración de contaminante en cada posición del tubo y constante en cada sección, medida en &amp;lt;math&amp;gt; \frac{mol}{m^2*s} &amp;lt;/math&amp;gt;. &lt;br /&gt;
&lt;br /&gt;
Supondremos que el tubo mide L=5 m, ocupando el intervalo &amp;lt;math&amp;gt; x \in (0,L) &amp;lt;/math&amp;gt;, y que la concentración es la misma en cualquier punto de la sección transversal del tubo. Por tanto, la concentración dependerá unicamente de dos variables &amp;lt;math&amp;gt; u = u(x,t) &amp;lt;/math&amp;gt;. En los extremos se ha colocado un aislante que hace que el flujo de contaminante al exterior del tubo sea nulo. Además, consideraremos la simplificación de que se trata de un tubo aislado por sus laterales, pero abierto por las bases del cilindro.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Ley de conservación de masa ==&lt;br /&gt;
&lt;br /&gt;
Tras una serie de experimentos realizados por Lavoisier, se pusieron de manifiesto que si tenemos en cuenta todas las sustancias que forman parte en una reacción química y todos los productos formados, nunca varía la masa. Esta ley exige que no haya una generación espontánea de materia. Es decir, en la región del espacio estudiada, no existe entrada o salida por un punto cualquiera (frontera o interior), la masa en esta región se mantiene constante. Esta es la ley de la conservación de la masa, que podemos enunciarla, pues, de la siguiente manera: &amp;lt;br /&amp;gt;&lt;br /&gt;
''&amp;quot;En toda reacción química la masa se conserva, esto es, la masa total de los reactivos es igual a la masa total de los productos&amp;quot;'' &amp;lt;br /&amp;gt;&lt;br /&gt;
La ley de conservación de masas exige que no haya una generación espontánea de materia. Es decir, en la región del espacio estudiada, no existe entrada o salida por un punto cualquiera (frontera o interior), la masa en esta región se mantiene constante.&lt;br /&gt;
&lt;br /&gt;
Esta suposición, en términos de variación de masa, puede quedar determinada como:&lt;br /&gt;
&lt;br /&gt;
''Variación de la masa en el tiempo = flujo de masa a través de la frontera por unidad de tiempo + flujo de masa generada en el interior por unidad de tiempo. ''&lt;br /&gt;
&lt;br /&gt;
== Ley de Fick ==&lt;br /&gt;
Se trata de una ley cuantitativa en forma diferencial que describe la difusión de materia o energía en un medio en el que inicialmente existe equilibrio químico o físico. Esta ley se trata de una generalización de los fenómenos descritos por la '''Ley de Fourier''', ya que esta es una consideración concreta del calor.&lt;br /&gt;
&lt;br /&gt;
La ley de Fick anuncia que en el caso de existir diferencias de concentración en cualquier especie, el paso de estas especies se llevará a cabo desde las regiones con mayor concentración a las de menor. Formulado matemáticamente:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;F(x,t)=-D\frac{\partial u}{\partial x}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Donde &amp;lt;math&amp;gt;F&amp;lt;/math&amp;gt; es el flujo de la sustancia y &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; el coeficiente de difusión, que representa la facilidad en que un soluto particular se mueve por un disolvente determinado.&lt;br /&gt;
&lt;br /&gt;
La ley de Fick establece que el flujo de difusión del contaminante es proporcional a la variación de concentración:&lt;br /&gt;
&amp;lt;math&amp;gt; F(x,t)=-D\frac{\partial u}{\partial x} &amp;lt;/math&amp;gt;&lt;br /&gt;
donde D es el coeficiente de difusión (medido en &amp;lt;math&amp;gt; \frac{m^2}{s} &amp;lt;/math&amp;gt;), que depende de las propiedades físicas de los compuestos, y que se supone constante D=1.&lt;br /&gt;
&lt;br /&gt;
= Modelización de la ecuación diferencial =&lt;br /&gt;
&lt;br /&gt;
Aplicando el principio de conservación de la masa y la ley de Fourier, definimos la variable &amp;lt;math&amp;gt; u(x,t)&amp;lt;/math&amp;gt; en unidades de sustancia por área, es decir, concentración por superficie del tubo.&lt;br /&gt;
&lt;br /&gt;
Consideramos &amp;lt;math&amp;gt; A &amp;lt;/math&amp;gt; como variable superficie, y tomamos un pequeño trozo, definido por &amp;lt;math&amp;gt;\Delta x&amp;lt;/math&amp;gt;. Entonces, para obtener la variación de la masa en el tiempo:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; A u(x,t) \Delta x &amp;lt;/math&amp;gt; &lt;br /&gt;
&lt;br /&gt;
Y derivando en el tiempo:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; A u_t(x,t) \Delta x &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
obtenemos el primer término de la igualdad anteriormente enunciada.&lt;br /&gt;
&lt;br /&gt;
En el segundo, consideramos nulo el flujo de masa en los puntos interiores por unidad de tiempo, pues suponemos la tubería perfecta y sin sumideros.&lt;br /&gt;
&lt;br /&gt;
Como la superﬁcie lateral del tubo está aislada, solamente habrá flujo de sustancia en la dirección del eje &amp;lt;math&amp;gt;x&amp;lt;/math&amp;gt;. Si &amp;lt;math&amp;gt;F(x,t)&amp;gt; 0&amp;lt;/math&amp;gt; pensamos que el ﬂujo va hacia la derecha, si &amp;lt;math&amp;gt;F(x,t)&amp;lt; 0&amp;lt;/math&amp;gt;, este va a hacia la izquierda. El ﬂujo de&lt;br /&gt;
calor en un intervalo &amp;lt;math&amp;gt;[x, x + ∆x ] &amp;lt;/math&amp;gt; viene dado dado por:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;F(x,t)A-F(x+\Delta x, t)A&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Con lo que queda &amp;lt;math&amp;gt;A u_t(x,t) \Delta x = F(x,t)A-F(x+\Delta x, t)A&amp;lt;/math&amp;gt;, y al dividir &amp;lt;math&amp;gt;A \Delta x&amp;lt;/math&amp;gt;, nos queda &amp;lt;math&amp;gt;u_t(x,t)= \frac {F(x,t)-F(x+\Delta x, t)}{\Delta x}&amp;lt;/math&amp;gt;. &amp;lt;br /&amp;gt;&lt;br /&gt;
Como &amp;lt;math&amp;gt;\Delta x \rightarrow 0 &amp;lt;/math&amp;gt;, &amp;lt;math&amp;gt;u_t(x,t)= -F_x(x,t)&amp;lt;/math&amp;gt;, y aplicando ley de Fick, &amp;lt;math&amp;gt;u_t(x,t)=-\frac{\partial }{\partial x}(-D u_x(x,t)) = D u_xx(x,t) &amp;lt;/math&amp;gt;.&amp;lt;br /&amp;gt;&lt;br /&gt;
Con lo que resulta una ecuación en derivadas parciales que determina la concentración de sustancia:&lt;br /&gt;
&amp;lt;math&amp;gt;u_t(x,t)- D u_xx(x,t)= 0 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Planteamiento del problema bien propuesto ==&lt;br /&gt;
&lt;br /&gt;
Suponemos que el flujo será nula al haber una tapa en los extremos del tubo, con lo que el problema bien propuesto quedaría::&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\begin{cases}&lt;br /&gt;
u_t(x,t)- D u_{xx}(x,t)= 0 ; x\in (0,5) \\&lt;br /&gt;
u(x,0)=u_0 , x\in (0,5) \\&lt;br /&gt;
u_x(0,t)=0 , u_x(5,t)=0 ; t\geq 0&lt;br /&gt;
\end{cases}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= Resolución numérica =&lt;br /&gt;
Para la resolución de ésta ecuación necesitaremos mínimo tres condiciones, dos de las cuales serán de contorno, y la otra será la condición inicial.Si suponemos &amp;lt;math&amp;gt;u_0(x,0)&amp;lt;/math&amp;gt;, entonces:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; u_0(x,0)=\begin{cases}&lt;br /&gt;
0,  si x\leq 3\\&lt;br /&gt;
3,  si x&amp;gt;3&lt;br /&gt;
\end{cases}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Resolución por el método de las diferencias finitas ==&lt;br /&gt;
En el primer caso particular que estudiaremos, trataremos de obtener una resolución numérica del problema anteriormente planteado, dónde tenemos las fronteras aisladas y las concentraciones iniciales conocidas:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\begin{cases}&lt;br /&gt;
u_t(x,t)- D u_{xx}(x,t)= 0; x\in (0,5), t\geq 0 \\&lt;br /&gt;
u_0(x,0), x\in (0,5) \\&lt;br /&gt;
u_x(0,t)=0, u_x(5,t)=0, t\geq 0&lt;br /&gt;
\end{cases}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
La resolución por el método de las diferencias finitas se basa en expresar el problema continuo a un sistema discreto de ecuaciones diferenciales de primer orden. Particularizando para nuestro caso con las condiciones dadas, el problema planteado sería:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\begin{cases}&lt;br /&gt;
u'_n(t)+\frac{-u_{n-1}(t)+2u_n(t)+u_{n+1}(t)}{h^2} \\&lt;br /&gt;
\frac{u_1(t)-u_-1(t)}{2h} \rightarrow u_1(t)=u_-1(t) \\&lt;br /&gt;
\frac{u_{N+1}(t)-u_{N-1}(t)}{2h} \rightarrow u_{N+1}(t)=u_{N-1}\\&lt;br /&gt;
u_n(0)=u^0(x)&lt;br /&gt;
\end{cases}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Por lo que tenemos un sistema de la forma:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\begin{cases}&lt;br /&gt;
U'(t)+KU(t)=F(t)=0\\&lt;br /&gt;
U(0)=U^0&lt;br /&gt;
\end{cases}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Con &amp;lt;math&amp;gt;N+1&amp;lt;/math&amp;gt; ecuaciones.&lt;br /&gt;
==== Resolución por método del trapecio ====&lt;br /&gt;
Suponiendo que en el instante inicial se verifica  :&amp;lt;math&amp;gt;&lt;br /&gt;
u(x,0)=\left\{\begin{matrix}\\0, x≤3\\3, x&amp;gt;3\end{matrix}\right.&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Si tomamos &amp;lt;math&amp;gt;\triangle t= \triangle x/4&amp;lt;/math&amp;gt; en &amp;lt;math&amp;gt;t\in\ [0,5]&amp;lt;/math&amp;gt;, con &amp;lt;math&amp;gt;\triangle x=0.1&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
El código en MATLAB del método sería:&lt;br /&gt;
&lt;br /&gt;
{{matlab| codigo=&lt;br /&gt;
%Datos&lt;br /&gt;
L=5; %Longitud de varilla&lt;br /&gt;
T=5; %tiempo final&lt;br /&gt;
q=1;&lt;br /&gt;
%Discretización temporal y espacial&lt;br /&gt;
dx=0.1; % Paso en espacio&lt;br /&gt;
N=L/dx; %Número de subintervalos&lt;br /&gt;
x=dx:dx:L-dx; % Vector de espacio&lt;br /&gt;
dt=dx/4; % Paso en tiempo&lt;br /&gt;
t=0:dt:T; % Vector de tiempos&lt;br /&gt;
% Matriz de coeficientes. Aproximacion de -q*u_xx&lt;br /&gt;
K=2*diag(ones(1,N+1))-diag(ones(1,N),1)-diag(ones(1,N),-1);&lt;br /&gt;
K(1,2)=-2;&lt;br /&gt;
K(N+1,N)=-2;&lt;br /&gt;
K=q*K/dx^2;&lt;br /&gt;
% Calculamos u0 condición inicial&lt;br /&gt;
u0=[zeros(1,1+N*3/5),3*ones(1,N*2/5)]';&lt;br /&gt;
% F=0 (no la consideramos)&lt;br /&gt;
sol(1,:)=u0'; % Guardamos la solucion&lt;br /&gt;
U=u0; % Inicializacion&lt;br /&gt;
% Calculamos U_n -&amp;gt; U_n+1&lt;br /&gt;
%Aplicamos método trapecio método del trapecio&lt;br /&gt;
for j=1:length(t)-1&lt;br /&gt;
U=(eye(N+1)+(dt*K)/2)\((eye(N+1)-(K*dt)/2)*U);&lt;br /&gt;
sol(j+1,:)= U'; % Guardamos solucion&lt;br /&gt;
end&lt;br /&gt;
%Dibujamos la solucion&lt;br /&gt;
[xx,tt]=meshgrid(x,t);&lt;br /&gt;
surf(xx,tt,sol);&lt;br /&gt;
}}&lt;br /&gt;
[[Archivo:nur.jpg|500px|thumb|centro|Gráfica concentración / espacio-tiempo. Resolución por el método del trapecio.]]&lt;br /&gt;
&lt;br /&gt;
==== Resolución por método de Euler explícito ====&lt;br /&gt;
{{matlab| codigo=&lt;br /&gt;
%Datos&lt;br /&gt;
L=5; %Longitud de varilla&lt;br /&gt;
T=5; %tiempo final&lt;br /&gt;
q=1;&lt;br /&gt;
%Discretización temporal y espacial&lt;br /&gt;
dx=0.1; % Paso en espacio&lt;br /&gt;
N=L/dx; %Número de subintervalos&lt;br /&gt;
x=0:dx:L; % Vector de espacio&lt;br /&gt;
dt=dx/20; % Paso en tiempo&lt;br /&gt;
t=0:dt:T; % Vector de tiempos&lt;br /&gt;
% Matriz de coeficientes. Aproximacion de -q*u_xx&lt;br /&gt;
K=2*diag(ones(1,N+1))-diag(ones(1,N),1)-diag(ones(1,N),-1);&lt;br /&gt;
K(1,2)=-2;&lt;br /&gt;
K(N+1,N)=-2;&lt;br /&gt;
K=q*K/dx^2;&lt;br /&gt;
% Calculamos u0 condición inicial&lt;br /&gt;
u0=[zeros(1,1+N*3/5),3*ones(1,N*2/5)]';&lt;br /&gt;
% F=0 (no la consideramos)&lt;br /&gt;
sol(1,:)=u0'; % Guardamos la solucion&lt;br /&gt;
U=u0; % Inicializacion&lt;br /&gt;
% Calculamos U_n -&amp;gt; U_n+1&lt;br /&gt;
%Aplicamos método Euler explícito&lt;br /&gt;
for j=1:length(t)-1 &lt;br /&gt;
k1=-K*U; % Calculamos k1=h*f(tn,yn)&lt;br /&gt;
k2=-K*(U+dt*k1); % Calculamos k2=h*f(tn+h/2,yn+1/2*k1)&lt;br /&gt;
% Meto los datos en el vector&lt;br /&gt;
U=U+(dt/2)*(k1+k2);&lt;br /&gt;
sol(j+1,:)= U'; % Guardamos solucion&lt;br /&gt;
end&lt;br /&gt;
%Dibujamos la solucion&lt;br /&gt;
[xx,tt]=meshgrid(x,t);&lt;br /&gt;
surf(xx,tt,sol);&lt;br /&gt;
}}&lt;br /&gt;
[[Archivo:mig.jpg|500px|thumb|centro|Gráfica concentración / espacio-tiempo. Resolución por el método de Euler explícito.]]&lt;br /&gt;
&lt;br /&gt;
==== Resolución por método de Euler implícito ====&lt;br /&gt;
{{matlab| codigo=&lt;br /&gt;
%Datos&lt;br /&gt;
L=5; %Longitud de varilla&lt;br /&gt;
T=5;&lt;br /&gt;
q=1;&lt;br /&gt;
%Discretización temporal y espacial&lt;br /&gt;
dx=0.1; % Paso en espacio&lt;br /&gt;
N=L/dx; %Número de subintervalos&lt;br /&gt;
h=L/N;&lt;br /&gt;
x=0:h:L; % Vector de espacio&lt;br /&gt;
dt=h/20; % Paso en tiempo&lt;br /&gt;
t=0:dt:T; % Vector de tiempos&lt;br /&gt;
% Matriz de coeficientes. Aproximacion de -q*u_xx&lt;br /&gt;
K=2*diag(ones(1,N+1))-diag(ones(1,N),1)-diag(ones(1,N),-1);&lt;br /&gt;
K(1,2)=-2;&lt;br /&gt;
K(N+1,N)=-2;&lt;br /&gt;
K=q*K/h^2;&lt;br /&gt;
% Calculamos u0 condición inicial&lt;br /&gt;
u0=[zeros(1,1+N*3/5),3*ones(1,N*2/5)]';&lt;br /&gt;
% F=0 (no la consideramos)&lt;br /&gt;
sol(1,:)=u0'; % Guardamos la solucion&lt;br /&gt;
U=u0; % Inicializacion&lt;br /&gt;
% Calculamos U_n -&amp;gt; U_n+1&lt;br /&gt;
% Aplicamos método implícito&lt;br /&gt;
for j=1:length(t)-1 &lt;br /&gt;
U=U-dt*K*U; &lt;br /&gt;
sol(j+1,:)= U'; % Guardamos solucion&lt;br /&gt;
end&lt;br /&gt;
%Dibujamos la solucion&lt;br /&gt;
[xx,tt]=meshgrid(x,t);&lt;br /&gt;
surf(xx,tt,sol);&lt;br /&gt;
}}&lt;br /&gt;
[[Archivo:migap.jpg|500px|thumb|centro|Gráfica concentración / espacio-tiempo. Resolución por el método de Euler implícito.]]&lt;br /&gt;
&lt;br /&gt;
==== Resolución por método de Euler modificado ====&lt;br /&gt;
{{matlab| codigo=&lt;br /&gt;
%Datos&lt;br /&gt;
L=5; %Longitud de varilla&lt;br /&gt;
T=5;&lt;br /&gt;
q=1;&lt;br /&gt;
%Discretización temporal y espacial&lt;br /&gt;
dx=0.1; % Paso en espacio&lt;br /&gt;
N=L/dx; %Número de subintervalos&lt;br /&gt;
h=L/N;&lt;br /&gt;
x=0:h:L; % Vector de espacio&lt;br /&gt;
dt=h/20; % Paso en tiempo&lt;br /&gt;
t=0:dt:T; % Vector de tiempos&lt;br /&gt;
% Matriz de coeficientes. Aproximacion de -q*u_xx&lt;br /&gt;
K=2*diag(ones(1,N+1))-diag(ones(1,N),1)-diag(ones(1,N),-1);&lt;br /&gt;
K(1,2)=-2;&lt;br /&gt;
K(N+1,N)=-2;&lt;br /&gt;
K=q*K/h^2;&lt;br /&gt;
% Calculamos u0 condición inicial&lt;br /&gt;
u0=[zeros(1,1+N*3/5),3*ones(1,N*2/5)]';&lt;br /&gt;
% F=0 (no la consideramos)&lt;br /&gt;
sol(1,:)=u0'; % Guardamos la solucion&lt;br /&gt;
U=u0; % Inicializacion&lt;br /&gt;
% Calculamos U_n -&amp;gt; U_n+1&lt;br /&gt;
for j=1:length(t)-1 &lt;br /&gt;
k1=-K*U; % Calculamos k1=h*f(tn,yn)&lt;br /&gt;
k2=-K*(U+dt*k1); % Calculamos k2=h*f(tn+h/2,yn+1/2*k1)&lt;br /&gt;
% Meto los datos en el vector&lt;br /&gt;
U=U+(dt/2)*(k1+k2);&lt;br /&gt;
sol(j+1,:)= U'; % Guardamos solucion&lt;br /&gt;
end&lt;br /&gt;
%Dibujamos la solucion&lt;br /&gt;
[xx,tt]=meshgrid(x,t);&lt;br /&gt;
surf(xx,tt,sol);&lt;br /&gt;
}}&lt;br /&gt;
[[Archivo: mig.jpg|500px|thumb|centro|Gráfica concentración / espacio-tiempo. Resolución por el método de Euler modificado.]]&lt;br /&gt;
&lt;br /&gt;
== Conservación de la masa total de contaminante ==&lt;br /&gt;
A continuación demostraremos que la masa total de contaminante en el tubo se conserva a lo largo del tiempo, que se puede deducir a partir de la ecuación sin tener que resolverla. Integramos la ecuación y debido a las condiciones de frontera:&lt;br /&gt;
&amp;lt;math&amp;gt;\frac d {dt} \int_0^5 u(x,t)\,dx= \int_0^5 u_{xx}(x,t)\,dx= u_x(x,t)|_0^5=0&amp;lt;/math&amp;gt;&lt;br /&gt;
{{matlab| codigo=&lt;br /&gt;
%Datos&lt;br /&gt;
L=5; %Longitud de varilla&lt;br /&gt;
T=5;&lt;br /&gt;
q=1;&lt;br /&gt;
%Discretización temporal y espacial&lt;br /&gt;
N=500; %Número de subintervalos&lt;br /&gt;
h=L/N;&lt;br /&gt;
x=0:h:L; % Vector de espacio&lt;br /&gt;
dt=h/4; % Paso en tiempo&lt;br /&gt;
t=0:dt:T; % Vector de tiempos&lt;br /&gt;
% Matriz de coeficientes. Aproximacion de -q*u_xx&lt;br /&gt;
K=2*diag(ones(1,N+1))-diag(ones(1,N),1)-diag(ones(1,N),-1);&lt;br /&gt;
K(1,2)=-2;&lt;br /&gt;
K(N+1,N)=-2;&lt;br /&gt;
K=q*K/h^2;&lt;br /&gt;
% Calculamos u0 condición inicial&lt;br /&gt;
u0=[zeros(1,1+N*3/5),3*ones(1,N*2/5)]';&lt;br /&gt;
% F=0 (no la consideramos)&lt;br /&gt;
sol(1,:)=u0'; % Guardamos la solucion&lt;br /&gt;
U=u0; % Inicializacion&lt;br /&gt;
% Calculamos U_n -&amp;gt; U_n+1&lt;br /&gt;
for j=1:length(t)-1 &lt;br /&gt;
U=(eye(N+1)+dt*K)\(U+dt*F); &lt;br /&gt;
sol(j+1,:)= U'; % Guardamos solucion&lt;br /&gt;
end&lt;br /&gt;
% Calculamos el area de la funcion en cada tiempo (area = cantidad de contaminante)&lt;br /&gt;
areas=zeros(1,length(t));&lt;br /&gt;
for i=1:length(t)&lt;br /&gt;
f=sol(i,:);&lt;br /&gt;
w=trapz(x,f);&lt;br /&gt;
area(i)=w;&lt;br /&gt;
end&lt;br /&gt;
%Dibujamos&lt;br /&gt;
plot(t,area)&lt;br /&gt;
xlabel('Tiempo')&lt;br /&gt;
ylabel('Cantidad de contaminante')&lt;br /&gt;
}}&lt;br /&gt;
[[Archivo:aleeex.jpg|500px|thumb|centro|Conservación masa total de contaminante]]&lt;br /&gt;
[[Archivo:gime.jpg|500px|thumb|centro|Conservación masa total de contaminante]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Concentración a lo largo del tiempo==&lt;br /&gt;
La concentración de la sustancia contaminante en la varilla varía con el tiempo, pero en un cierto momento esta concentración se va homogeneizando, y deja de variar, entrando en un estado estacionario::&lt;br /&gt;
&amp;lt;math&amp;gt; u_t(x,t)- D*u_{xx}(x,t)=0 &amp;lt;/math&amp;gt; :    &lt;br /&gt;
&amp;lt;math&amp;gt; u_t(x,t)=0 \rightarrow D*u_{xx}(x,t)=0 &amp;lt;/math&amp;gt; :&lt;br /&gt;
&amp;lt;math&amp;gt; u=c_1*x+c_2 &amp;lt;/math&amp;gt; &lt;br /&gt;
Utizando Matlab comprobaremos que &amp;lt;math&amp;gt; c_1=0 &amp;lt;/math&amp;gt; &amp;lt;math&amp;gt; c_2=1.17 &amp;lt;/math&amp;gt;&lt;br /&gt;
Para tiempos grandes la concentración se estabiliza en torno a 1.17 en toda la varilla, de forma que la solución se asemejará a una función lineal constante.&lt;br /&gt;
&lt;br /&gt;
{{matlab| codigo=&lt;br /&gt;
%Datos&lt;br /&gt;
L=5; %Longitud de varilla&lt;br /&gt;
T=50;&lt;br /&gt;
q=1;&lt;br /&gt;
%Discretización temporal y espacial&lt;br /&gt;
dx=0.1; % Paso en espacio&lt;br /&gt;
N=L/dx; %Número de subintervalos&lt;br /&gt;
h=L/N;&lt;br /&gt;
x=0:h:L; % Vector de espacio&lt;br /&gt;
dt=h/4; % Paso en tiempo&lt;br /&gt;
t=0:dt:T; % Vector de tiempos&lt;br /&gt;
% Matriz de coeficientes. Aproximacion de -q*u_xx&lt;br /&gt;
K=2*diag(ones(1,N+1))-diag(ones(1,N),1)-diag(ones(1,N),-1);&lt;br /&gt;
K(1,2)=-2;&lt;br /&gt;
K(N+1,N)=-2;&lt;br /&gt;
K=q*K/h^2;&lt;br /&gt;
% Calculamos u0 condición inicial&lt;br /&gt;
u0=[zeros(1,1+N*3/5),3*ones(1,N*2/5)]';&lt;br /&gt;
% F=0 (no la consideramos)&lt;br /&gt;
sol(1,:)=u0'; % Guardamos la solucion&lt;br /&gt;
U=u0; % Inicializacion&lt;br /&gt;
% Calculamos U_n -&amp;gt; U_n+1&lt;br /&gt;
%Aplicamos método trapecio método del trapecio&lt;br /&gt;
for j=1:length(t)-1&lt;br /&gt;
U=(eye(N+1)+(dt*K)/2)\((eye(N+1)-(K*dt)/2)*U);&lt;br /&gt;
sol(j+1,:)= U'; % Guardamos solucion&lt;br /&gt;
end&lt;br /&gt;
%Solución estacionaria&lt;br /&gt;
a=sol(length(t),:);&lt;br /&gt;
b=sol(1,:);&lt;br /&gt;
c=sol((length(t)-1)/50+1,:);&lt;br /&gt;
d=sol((length(t)-1)*2/50+1,:);&lt;br /&gt;
e=sol((length(t)-1)*10/50+1,:);&lt;br /&gt;
hold on&lt;br /&gt;
plot(x,a,'xk','linewidth',2);&lt;br /&gt;
plot(x,b,'-m','linewidth',1);&lt;br /&gt;
plot(x,c,'-g','linewidth',1);&lt;br /&gt;
plot(x,d,'-y','linewidth',1);&lt;br /&gt;
plot(x,e,'-b','linewidth',1);&lt;br /&gt;
legend('u(50s)','u(0s)','u(1s)','u(2s)','u(10s)');&lt;br /&gt;
xlabel('Posición en la varilla')&lt;br /&gt;
ylabel('Concentracion')&lt;br /&gt;
hold off&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Soluciones(t).jpg|500px|thumb|centro|Soluciones a lo largo del tiempo]]&lt;br /&gt;
&lt;br /&gt;
La distancia entre la solución estacionaria y las soluciones para los siguientes instantes: 0s, 1s, 2s y 10s; se puede apreciar en la imagen anterior. &lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
Una vez analizado los datos, se demuestra que la sustancia contaminante se estabiliza en t=9.98s, con un error del 5%.&lt;br /&gt;
&lt;br /&gt;
En el caso de que consideremos Δx'=Δx/10,el tiempo en el que se estabiliza la cantidad de sustancia contaminante será t=10.05s, dato que será más preciso debido a que el paso realizado en el programa es menor.&lt;/div&gt;</summary>
		<author><name>Karlo André</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Difusi%C3%B3n_de_una_sustancia_contaminante_(Grupo_10)&amp;diff=12647</id>
		<title>Difusión de una sustancia contaminante (Grupo 10)</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Difusi%C3%B3n_de_una_sustancia_contaminante_(Grupo_10)&amp;diff=12647"/>
				<updated>2014-05-19T09:57:40Z</updated>
		
		<summary type="html">&lt;p&gt;Karlo André: /* Concentración a lo largo del tiempo */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Archivo:nuriat.png|200px|thumb|right|Tubo con sustancia contaminante]]&lt;br /&gt;
La difusión implica un movimiento espontáneo y desordenado de moléculas individuales y, especialmente, nos interesa la difusión de moléculas de una sustancia disuelta en otra.&lt;br /&gt;
&lt;br /&gt;
La difusión de una sustancia puede considerarse análoga al flujo de calor, y la ley de Fick establece que el ritmo de difusión por unidad de superficie, en dirección perpendicular a ésta, es proporcional al gradiente de la concentración de esa sustancia en esa dirección. La concentración es la masa de la sustancia por unidad de volumen, y el gradiente de concentración es la variación de concentración por unidad de distancia.&lt;br /&gt;
&lt;br /&gt;
Para determinar como se distribuye la concentración de una sustancia contaminante tomaremos como ejemplo un tubo largo compuesto por dos sustancias de las cuáles una de ellas es contaminante.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
= Simplificación del problema =&lt;br /&gt;
&lt;br /&gt;
Para que este problema resulte más sencillo aplicaremos una serie de condiciones, facilitando el cálculo del mismo.&lt;br /&gt;
&lt;br /&gt;
En primer lugar denotaremos su concentración &amp;lt;math&amp;gt; u &amp;lt;/math&amp;gt;, concentración de contaminante en cada posición del tubo y constante en cada sección, medida en &amp;lt;math&amp;gt; \frac{mol}{m^2*s} &amp;lt;/math&amp;gt;. &lt;br /&gt;
&lt;br /&gt;
Supondremos que el tubo mide L=5 m, ocupando el intervalo &amp;lt;math&amp;gt; x \in (0,L) &amp;lt;/math&amp;gt;, y que la concentración es la misma en cualquier punto de la sección transversal del tubo. Por tanto, la concentración dependerá unicamente de dos variables &amp;lt;math&amp;gt; u = u(x,t) &amp;lt;/math&amp;gt;. En los extremos se ha colocado un aislante que hace que el flujo de contaminante al exterior del tubo sea nulo. Además, consideraremos la simplificación de que se trata de un tubo aislado por sus laterales, pero abierto por las bases del cilindro.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Ley de conservación de masa ==&lt;br /&gt;
&lt;br /&gt;
Tras una serie de experimentos realizados por Lavoisier, se pusieron de manifiesto que si tenemos en cuenta todas las sustancias que forman parte en una reacción química y todos los productos formados, nunca varía la masa. Esta ley exige que no haya una generación espontánea de materia. Es decir, en la región del espacio estudiada, no existe entrada o salida por un punto cualquiera (frontera o interior), la masa en esta región se mantiene constante. Esta es la ley de la conservación de la masa, que podemos enunciarla, pues, de la siguiente manera: &amp;lt;br /&amp;gt;&lt;br /&gt;
''&amp;quot;En toda reacción química la masa se conserva, esto es, la masa total de los reactivos es igual a la masa total de los productos&amp;quot;'' &amp;lt;br /&amp;gt;&lt;br /&gt;
La ley de conservación de masas exige que no haya una generación espontánea de materia. Es decir, en la región del espacio estudiada, no existe entrada o salida por un punto cualquiera (frontera o interior), la masa en esta región se mantiene constante.&lt;br /&gt;
&lt;br /&gt;
Esta suposición, en términos de variación de masa, puede quedar determinada como:&lt;br /&gt;
&lt;br /&gt;
''Variación de la masa en el tiempo = flujo de masa a través de la frontera por unidad de tiempo + flujo de masa generada en el interior por unidad de tiempo. ''&lt;br /&gt;
&lt;br /&gt;
== Ley de Fick ==&lt;br /&gt;
Se trata de una ley cuantitativa en forma diferencial que describe la difusión de materia o energía en un medio en el que inicialmente existe equilibrio químico o físico. Esta ley se trata de una generalización de los fenómenos descritos por la '''Ley de Fourier''', ya que esta es una consideración concreta del calor.&lt;br /&gt;
&lt;br /&gt;
La ley de Fick anuncia que en el caso de existir diferencias de concentración en cualquier especie, el paso de estas especies se llevará a cabo desde las regiones con mayor concentración a las de menor. Formulado matemáticamente:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;F(x,t)=-D\frac{\partial u}{\partial x}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Donde &amp;lt;math&amp;gt;F&amp;lt;/math&amp;gt; es el flujo de la sustancia y &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; el coeficiente de difusión, que representa la facilidad en que un soluto particular se mueve por un disolvente determinado.&lt;br /&gt;
&lt;br /&gt;
La ley de Fick establece que el flujo de difusión del contaminante es proporcional a la variación de concentración:&lt;br /&gt;
&amp;lt;math&amp;gt; F(x,t)=-D\frac{\partial u}{\partial x} &amp;lt;/math&amp;gt;&lt;br /&gt;
donde D es el coeficiente de difusión (medido en &amp;lt;math&amp;gt; \frac{m^2}{s} &amp;lt;/math&amp;gt;), que depende de las propiedades físicas de los compuestos, y que se supone constante D=1.&lt;br /&gt;
&lt;br /&gt;
= Modelización de la ecuación diferencial =&lt;br /&gt;
&lt;br /&gt;
Aplicando el principio de conservación de la masa y la ley de Fourier, definimos la variable &amp;lt;math&amp;gt; u(x,t)&amp;lt;/math&amp;gt; en unidades de sustancia por área, es decir, concentración por superficie del tubo.&lt;br /&gt;
&lt;br /&gt;
Consideramos &amp;lt;math&amp;gt; A &amp;lt;/math&amp;gt; como variable superficie, y tomamos un pequeño trozo, definido por &amp;lt;math&amp;gt;\Delta x&amp;lt;/math&amp;gt;. Entonces, para obtener la variación de la masa en el tiempo:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; A u(x,t) \Delta x &amp;lt;/math&amp;gt; &lt;br /&gt;
&lt;br /&gt;
Y derivando en el tiempo:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; A u_t(x,t) \Delta x &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
obtenemos el primer término de la igualdad anteriormente enunciada.&lt;br /&gt;
&lt;br /&gt;
En el segundo, consideramos nulo el flujo de masa en los puntos interiores por unidad de tiempo, pues suponemos la tubería perfecta y sin sumideros.&lt;br /&gt;
&lt;br /&gt;
Como la superﬁcie lateral del tubo está aislada, solamente habrá flujo de sustancia en la dirección del eje &amp;lt;math&amp;gt;x&amp;lt;/math&amp;gt;. Si &amp;lt;math&amp;gt;F(x,t)&amp;gt; 0&amp;lt;/math&amp;gt; pensamos que el ﬂujo va hacia la derecha, si &amp;lt;math&amp;gt;F(x,t)&amp;lt; 0&amp;lt;/math&amp;gt;, este va a hacia la izquierda. El ﬂujo de&lt;br /&gt;
calor en un intervalo &amp;lt;math&amp;gt;[x, x + ∆x ] &amp;lt;/math&amp;gt; viene dado dado por:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;F(x,t)A-F(x+\Delta x, t)A&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Con lo que queda &amp;lt;math&amp;gt;A u_t(x,t) \Delta x = F(x,t)A-F(x+\Delta x, t)A&amp;lt;/math&amp;gt;, y al dividir &amp;lt;math&amp;gt;A \Delta x&amp;lt;/math&amp;gt;, nos queda &amp;lt;math&amp;gt;u_t(x,t)= \frac {F(x,t)-F(x+\Delta x, t)}{\Delta x}&amp;lt;/math&amp;gt;. &amp;lt;br /&amp;gt;&lt;br /&gt;
Como &amp;lt;math&amp;gt;\Delta x \rightarrow 0 &amp;lt;/math&amp;gt;, &amp;lt;math&amp;gt;u_t(x,t)= -F_x(x,t)&amp;lt;/math&amp;gt;, y aplicando ley de Fick, &amp;lt;math&amp;gt;u_t(x,t)=-\frac{\partial }{\partial x}(-D u_x(x,t)) = D u_xx(x,t) &amp;lt;/math&amp;gt;.&amp;lt;br /&amp;gt;&lt;br /&gt;
Con lo que resulta una ecuación en derivadas parciales que determina la concentración de sustancia:&lt;br /&gt;
&amp;lt;math&amp;gt;u_t(x,t)- D u_xx(x,t)= 0 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Planteamiento del problema bien propuesto ==&lt;br /&gt;
&lt;br /&gt;
Suponemos que el flujo será nula al haber una tapa en los extremos del tubo, con lo que el problema bien propuesto quedaría::&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\begin{cases}&lt;br /&gt;
u_t(x,t)- D u_{xx}(x,t)= 0 ; x\in (0,5) \\&lt;br /&gt;
u(x,0)=u_0 , x\in (0,5) \\&lt;br /&gt;
u_x(0,t)=0 , u_x(5,t)=0 ; t\geq 0&lt;br /&gt;
\end{cases}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= Resolución numérica =&lt;br /&gt;
Para la resolución de ésta ecuación necesitaremos mínimo tres condiciones, dos de las cuales serán de contorno, y la otra será la condición inicial.Si suponemos &amp;lt;math&amp;gt;u_0(x,0)&amp;lt;/math&amp;gt;, entonces:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; u_0(x,0)=\begin{cases}&lt;br /&gt;
0,  si x\leq 3\\&lt;br /&gt;
3,  si x&amp;gt;3&lt;br /&gt;
\end{cases}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Resolución por el método de las diferencias finitas ==&lt;br /&gt;
En el primer caso particular que estudiaremos, trataremos de obtener una resolución numérica del problema anteriormente planteado, dónde tenemos las fronteras aisladas y las concentraciones iniciales conocidas:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\begin{cases}&lt;br /&gt;
u_t(x,t)- D u_{xx}(x,t)= 0; x\in (0,5), t\geq 0 \\&lt;br /&gt;
u_0(x,0), x\in (0,5) \\&lt;br /&gt;
u_x(0,t)=0, u_x(5,t)=0, t\geq 0&lt;br /&gt;
\end{cases}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
La resolución por el método de las diferencias finitas se basa en expresar el problema continuo a un sistema discreto de ecuaciones diferenciales de primer orden. Particularizando para nuestro caso con las condiciones dadas, el problema planteado sería:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\begin{cases}&lt;br /&gt;
u'_n(t)+\frac{-u_{n-1}(t)+2u_n(t)+u_{n+1}(t)}{h^2} \\&lt;br /&gt;
\frac{u_1(t)-u_-1(t)}{2h} \rightarrow u_1(t)=u_-1(t) \\&lt;br /&gt;
\frac{u_{N+1}(t)-u_{N-1}(t)}{2h} \rightarrow u_{N+1}(t)=u_{N-1}\\&lt;br /&gt;
u_n(0)=u^0(x)&lt;br /&gt;
\end{cases}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Por lo que tenemos un sistema de la forma:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\begin{cases}&lt;br /&gt;
U'(t)+KU(t)=F(t)=0\\&lt;br /&gt;
U(0)=U^0&lt;br /&gt;
\end{cases}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Con &amp;lt;math&amp;gt;N+1&amp;lt;/math&amp;gt; ecuaciones.&lt;br /&gt;
==== Resolución por método del trapecio ====&lt;br /&gt;
Suponiendo que en el instante inicial se verifica  :&amp;lt;math&amp;gt;&lt;br /&gt;
u(x,0)=\left\{\begin{matrix}\\0, x≤3\\3, x&amp;gt;3\end{matrix}\right.&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Si tomamos &amp;lt;math&amp;gt;\triangle t= \triangle x/4&amp;lt;/math&amp;gt; en &amp;lt;math&amp;gt;t\in\ [0,5]&amp;lt;/math&amp;gt;, con &amp;lt;math&amp;gt;\triangle x=0.1&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
El código en MATLAB del método sería:&lt;br /&gt;
&lt;br /&gt;
{{matlab| codigo=&lt;br /&gt;
%Datos&lt;br /&gt;
L=5; %Longitud de varilla&lt;br /&gt;
T=5;&lt;br /&gt;
q=1;&lt;br /&gt;
%Discretización temporal y espacial&lt;br /&gt;
dx=0.1; % Paso en espacio&lt;br /&gt;
N=L/dx; %Número de subintervalos&lt;br /&gt;
h=L/N;&lt;br /&gt;
x=0:h:L; % Vector de espacio&lt;br /&gt;
dt=h/4; % Paso en tiempo&lt;br /&gt;
t=0:dt:T; % Vector de tiempos&lt;br /&gt;
% Matriz de coeficientes. Aproximacion de -q*u_xx&lt;br /&gt;
K=2*diag(ones(1,N+1))-diag(ones(1,N),1)-diag(ones(1,N),-1);&lt;br /&gt;
K(1,2)=-2;&lt;br /&gt;
K(N+1,N)=-2;&lt;br /&gt;
K=q*K/h^2;&lt;br /&gt;
% Calculamos u0 condición inicial&lt;br /&gt;
u0=[zeros(1,1+N*3/5),3*ones(1,N*2/5)]';&lt;br /&gt;
% F=0 (no la consideramos)&lt;br /&gt;
sol(1,:)=u0'; % Guardamos la solucion&lt;br /&gt;
U=u0; % Inicializacion&lt;br /&gt;
% Calculamos U_n -&amp;gt; U_n+1&lt;br /&gt;
%Aplicamos método trapecio método del trapecio&lt;br /&gt;
for j=1:length(t)-1&lt;br /&gt;
U=(eye(N+1)+(dt*K)/2)\((eye(N+1)-(K*dt)/2)*U);&lt;br /&gt;
sol(j+1,:)= U'; % Guardamos solucion&lt;br /&gt;
end&lt;br /&gt;
%Dibujamos la solucion&lt;br /&gt;
[xx,tt]=meshgrid(x,t);&lt;br /&gt;
surf(xx,tt,sol);&lt;br /&gt;
}}&lt;br /&gt;
[[Archivo:nur.jpg|500px|thumb|centro|Gráfica concentración / espacio-tiempo. Resolución por el método del trapecio.]]&lt;br /&gt;
&lt;br /&gt;
==== Resolución por método de Euler explícito ====&lt;br /&gt;
{{matlab| codigo=&lt;br /&gt;
%Datos&lt;br /&gt;
L=5; %Longitud de varilla&lt;br /&gt;
T=5;&lt;br /&gt;
q=1;&lt;br /&gt;
%Discretización temporal y espacial&lt;br /&gt;
dx=0.1; % Paso en espacio&lt;br /&gt;
N=L/dx; %Número de subintervalos&lt;br /&gt;
h=L/N;&lt;br /&gt;
x=0:h:L; % Vector de espacio&lt;br /&gt;
dt=h/20; % Paso en tiempo&lt;br /&gt;
t=0:dt:T; % Vector de tiempos&lt;br /&gt;
% Matriz de coeficientes. Aproximacion de -q*u_xx&lt;br /&gt;
K=2*diag(ones(1,N+1))-diag(ones(1,N),1)-diag(ones(1,N),-1);&lt;br /&gt;
K(1,2)=-2;&lt;br /&gt;
K(N+1,N)=-2;&lt;br /&gt;
K=q*K/h^2;&lt;br /&gt;
% Calculamos u0 condición inicial&lt;br /&gt;
u0=[zeros(1,1+N*3/5),3*ones(1,N*2/5)]';&lt;br /&gt;
% F=0 (no la consideramos)&lt;br /&gt;
sol(1,:)=u0'; % Guardamos la solucion&lt;br /&gt;
U=u0; % Inicializacion&lt;br /&gt;
% Calculamos U_n -&amp;gt; U_n+1&lt;br /&gt;
%Aplicamos método Euler explícito&lt;br /&gt;
for j=1:length(t)-1 &lt;br /&gt;
k1=-K*U;% Calculamos k1=h*f(tn,yn)&lt;br /&gt;
k2=-K*(U+dt*k1);% Calculamos k2=h*f(tn+h/2,yn+1/2*k1)&lt;br /&gt;
% Meto los datos en el vector&lt;br /&gt;
U=U+(dt/2)*(k1+k2);&lt;br /&gt;
sol(j+1,:)= U'; % Guardamos solucion&lt;br /&gt;
end&lt;br /&gt;
%Dibujamos la solucion&lt;br /&gt;
[xx,tt]=meshgrid(x,t);&lt;br /&gt;
surf(xx,tt,sol);&lt;br /&gt;
}}&lt;br /&gt;
[[Archivo:mig.jpg|500px|thumb|centro|Gráfica concentración / espacio-tiempo. Resolución por el método de Euler explícito.]]&lt;br /&gt;
&lt;br /&gt;
==== Resolución por método de Euler implícito ====&lt;br /&gt;
{{matlab| codigo=&lt;br /&gt;
%Datos&lt;br /&gt;
L=5; %Longitud de varilla&lt;br /&gt;
T=5;&lt;br /&gt;
q=1;&lt;br /&gt;
%Discretización temporal y espacial&lt;br /&gt;
dx=0.1; % Paso en espacio&lt;br /&gt;
N=L/dx; %Número de subintervalos&lt;br /&gt;
h=L/N;&lt;br /&gt;
x=0:h:L; % Vector de espacio&lt;br /&gt;
dt=h/20; % Paso en tiempo&lt;br /&gt;
t=0:dt:T; % Vector de tiempos&lt;br /&gt;
% Matriz de coeficientes. Aproximacion de -q*u_xx&lt;br /&gt;
K=2*diag(ones(1,N+1))-diag(ones(1,N),1)-diag(ones(1,N),-1);&lt;br /&gt;
K(1,2)=-2;&lt;br /&gt;
K(N+1,N)=-2;&lt;br /&gt;
K=q*K/h^2;&lt;br /&gt;
% Calculamos u0 condición inicial&lt;br /&gt;
u0=[zeros(1,1+N*3/5),3*ones(1,N*2/5)]';&lt;br /&gt;
% F=0 (no la consideramos)&lt;br /&gt;
sol(1,:)=u0'; % Guardamos la solucion&lt;br /&gt;
U=u0; % Inicializacion&lt;br /&gt;
% Calculamos U_n -&amp;gt; U_n+1&lt;br /&gt;
% Aplicamos método implícito&lt;br /&gt;
for j=1:length(t)-1 &lt;br /&gt;
U=U-dt*K*U; &lt;br /&gt;
sol(j+1,:)= U'; % Guardamos solucion&lt;br /&gt;
end&lt;br /&gt;
%Dibujamos la solucion&lt;br /&gt;
[xx,tt]=meshgrid(x,t);&lt;br /&gt;
surf(xx,tt,sol);&lt;br /&gt;
}}&lt;br /&gt;
[[Archivo:migap.jpg|500px|thumb|centro|Gráfica concentración / espacio-tiempo. Resolución por el método de Euler implícito.]]&lt;br /&gt;
&lt;br /&gt;
==== Resolución por método de Euler modificado ====&lt;br /&gt;
{{matlab| codigo=&lt;br /&gt;
%Datos&lt;br /&gt;
L=5; %Longitud de varilla&lt;br /&gt;
T=5;&lt;br /&gt;
q=1;&lt;br /&gt;
%Discretización temporal y espacial&lt;br /&gt;
dx=0.1; % Paso en espacio&lt;br /&gt;
N=L/dx; %Número de subintervalos&lt;br /&gt;
h=L/N;&lt;br /&gt;
x=0:h:L; % Vector de espacio&lt;br /&gt;
dt=h/20; % Paso en tiempo&lt;br /&gt;
t=0:dt:T; % Vector de tiempos&lt;br /&gt;
% Matriz de coeficientes. Aproximacion de -q*u_xx&lt;br /&gt;
K=2*diag(ones(1,N+1))-diag(ones(1,N),1)-diag(ones(1,N),-1);&lt;br /&gt;
K(1,2)=-2;&lt;br /&gt;
K(N+1,N)=-2;&lt;br /&gt;
K=q*K/h^2;&lt;br /&gt;
% Calculamos u0 condición inicial&lt;br /&gt;
u0=[zeros(1,1+N*3/5),3*ones(1,N*2/5)]';&lt;br /&gt;
% F=0 (no la consideramos)&lt;br /&gt;
sol(1,:)=u0'; % Guardamos la solucion&lt;br /&gt;
U=u0; % Inicializacion&lt;br /&gt;
% Calculamos U_n -&amp;gt; U_n+1&lt;br /&gt;
for j=1:length(t)-1 &lt;br /&gt;
k1=-K*U; % Calculamos k1=h*f(tn,yn)&lt;br /&gt;
k2=-K*(U+dt*k1); % Calculamos k2=h*f(tn+h/2,yn+1/2*k1)&lt;br /&gt;
% Meto los datos en el vector&lt;br /&gt;
U=U+(dt/2)*(k1+k2);&lt;br /&gt;
sol(j+1,:)= U'; % Guardamos solucion&lt;br /&gt;
end&lt;br /&gt;
%Dibujamos la solucion&lt;br /&gt;
[xx,tt]=meshgrid(x,t);&lt;br /&gt;
surf(xx,tt,sol);&lt;br /&gt;
}}&lt;br /&gt;
[[Archivo: mig.jpg|500px|thumb|centro|Gráfica concentración / espacio-tiempo. Resolución por el método de Euler modificado.]]&lt;br /&gt;
&lt;br /&gt;
== Conservación de la masa total de contaminante ==&lt;br /&gt;
A continuación demostraremos que la masa total de contaminante en el tubo se conserva a lo largo del tiempo, que se puede deducir a partir de la ecuación sin tener que resolverla. Integramos la ecuación y debido a las condiciones de frontera:&lt;br /&gt;
&amp;lt;math&amp;gt;\frac d {dt} \int_0^5 u(x,t)\,dx= \int_0^5 u_{xx}(x,t)\,dx= u_x(x,t)|_0^5=0&amp;lt;/math&amp;gt;&lt;br /&gt;
{{matlab| codigo=&lt;br /&gt;
%Datos&lt;br /&gt;
L=5; %Longitud de varilla&lt;br /&gt;
T=5;&lt;br /&gt;
q=1;&lt;br /&gt;
%Discretización temporal y espacial&lt;br /&gt;
N=500; %Número de subintervalos&lt;br /&gt;
h=L/N;&lt;br /&gt;
x=0:h:L; % Vector de espacio&lt;br /&gt;
dt=h/4; % Paso en tiempo&lt;br /&gt;
t=0:dt:T; % Vector de tiempos&lt;br /&gt;
% Matriz de coeficientes. Aproximacion de -q*u_xx&lt;br /&gt;
K=2*diag(ones(1,N+1))-diag(ones(1,N),1)-diag(ones(1,N),-1);&lt;br /&gt;
K(1,2)=-2;&lt;br /&gt;
K(N+1,N)=-2;&lt;br /&gt;
K=q*K/h^2;&lt;br /&gt;
% Calculamos u0 condición inicial&lt;br /&gt;
u0=[zeros(1,1+N*3/5),3*ones(1,N*2/5)]';&lt;br /&gt;
% F=0 (no la consideramos)&lt;br /&gt;
sol(1,:)=u0'; % Guardamos la solucion&lt;br /&gt;
U=u0; % Inicializacion&lt;br /&gt;
% Calculamos U_n -&amp;gt; U_n+1&lt;br /&gt;
for j=1:length(t)-1 &lt;br /&gt;
U=(eye(N+1)+dt*K)\(U+dt*F); &lt;br /&gt;
sol(j+1,:)= U'; % Guardamos solucion&lt;br /&gt;
end&lt;br /&gt;
% Calculamos el area de la funcion en cada tiempo (area = cantidad de contaminante)&lt;br /&gt;
areas=zeros(1,length(t));&lt;br /&gt;
for i=1:length(t)&lt;br /&gt;
f=sol(i,:);&lt;br /&gt;
w=trapz(x,f);&lt;br /&gt;
area(i)=w;&lt;br /&gt;
end&lt;br /&gt;
%Dibujamos&lt;br /&gt;
plot(t,area)&lt;br /&gt;
xlabel('Tiempo')&lt;br /&gt;
ylabel('Cantidad de contaminante')&lt;br /&gt;
}}&lt;br /&gt;
[[Archivo:aleeex.jpg|500px|thumb|centro|Conservación masa total de contaminante]]&lt;br /&gt;
[[Archivo:gime.jpg|500px|thumb|centro|Conservación masa total de contaminante]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Concentración a lo largo del tiempo==&lt;br /&gt;
La concentración de la sustancia contaminante en la varilla varía con el tiempo, pero en un cierto momento esta concentración se va homogeneizando, y deja de variar, entrando en un estado estacionario::&lt;br /&gt;
&amp;lt;math&amp;gt; u_t(x,t)- D*u_{xx}(x,t)=0 &amp;lt;/math&amp;gt; :    &lt;br /&gt;
&amp;lt;math&amp;gt; u_t(x,t)=0 \rightarrow D*u_{xx}(x,t)=0 &amp;lt;/math&amp;gt; :&lt;br /&gt;
&amp;lt;math&amp;gt; u=c_1*x+c_2 &amp;lt;/math&amp;gt; :&lt;br /&gt;
Utizando Matlab comprobaremos que &amp;lt;math&amp;gt; c_1=0 &amp;lt;/math&amp;gt; &amp;lt;math&amp;gt; c_2=1.17 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Soluciones(t).jpg|500px|thumb|centro|Soluciones a lo largo del tiempo]]&lt;/div&gt;</summary>
		<author><name>Karlo André</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Difusi%C3%B3n_de_una_sustancia_contaminante_(Grupo_10)&amp;diff=12646</id>
		<title>Difusión de una sustancia contaminante (Grupo 10)</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Difusi%C3%B3n_de_una_sustancia_contaminante_(Grupo_10)&amp;diff=12646"/>
				<updated>2014-05-19T09:56:26Z</updated>
		
		<summary type="html">&lt;p&gt;Karlo André: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Archivo:nuriat.png|200px|thumb|right|Tubo con sustancia contaminante]]&lt;br /&gt;
La difusión implica un movimiento espontáneo y desordenado de moléculas individuales y, especialmente, nos interesa la difusión de moléculas de una sustancia disuelta en otra.&lt;br /&gt;
&lt;br /&gt;
La difusión de una sustancia puede considerarse análoga al flujo de calor, y la ley de Fick establece que el ritmo de difusión por unidad de superficie, en dirección perpendicular a ésta, es proporcional al gradiente de la concentración de esa sustancia en esa dirección. La concentración es la masa de la sustancia por unidad de volumen, y el gradiente de concentración es la variación de concentración por unidad de distancia.&lt;br /&gt;
&lt;br /&gt;
Para determinar como se distribuye la concentración de una sustancia contaminante tomaremos como ejemplo un tubo largo compuesto por dos sustancias de las cuáles una de ellas es contaminante.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
= Simplificación del problema =&lt;br /&gt;
&lt;br /&gt;
Para que este problema resulte más sencillo aplicaremos una serie de condiciones, facilitando el cálculo del mismo.&lt;br /&gt;
&lt;br /&gt;
En primer lugar denotaremos su concentración &amp;lt;math&amp;gt; u &amp;lt;/math&amp;gt;, concentración de contaminante en cada posición del tubo y constante en cada sección, medida en &amp;lt;math&amp;gt; \frac{mol}{m^2*s} &amp;lt;/math&amp;gt;. &lt;br /&gt;
&lt;br /&gt;
Supondremos que el tubo mide L=5 m, ocupando el intervalo &amp;lt;math&amp;gt; x \in (0,L) &amp;lt;/math&amp;gt;, y que la concentración es la misma en cualquier punto de la sección transversal del tubo. Por tanto, la concentración dependerá unicamente de dos variables &amp;lt;math&amp;gt; u = u(x,t) &amp;lt;/math&amp;gt;. En los extremos se ha colocado un aislante que hace que el flujo de contaminante al exterior del tubo sea nulo. Además, consideraremos la simplificación de que se trata de un tubo aislado por sus laterales, pero abierto por las bases del cilindro.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Ley de conservación de masa ==&lt;br /&gt;
&lt;br /&gt;
Tras una serie de experimentos realizados por Lavoisier, se pusieron de manifiesto que si tenemos en cuenta todas las sustancias que forman parte en una reacción química y todos los productos formados, nunca varía la masa. Esta ley exige que no haya una generación espontánea de materia. Es decir, en la región del espacio estudiada, no existe entrada o salida por un punto cualquiera (frontera o interior), la masa en esta región se mantiene constante. Esta es la ley de la conservación de la masa, que podemos enunciarla, pues, de la siguiente manera: &amp;lt;br /&amp;gt;&lt;br /&gt;
''&amp;quot;En toda reacción química la masa se conserva, esto es, la masa total de los reactivos es igual a la masa total de los productos&amp;quot;'' &amp;lt;br /&amp;gt;&lt;br /&gt;
La ley de conservación de masas exige que no haya una generación espontánea de materia. Es decir, en la región del espacio estudiada, no existe entrada o salida por un punto cualquiera (frontera o interior), la masa en esta región se mantiene constante.&lt;br /&gt;
&lt;br /&gt;
Esta suposición, en términos de variación de masa, puede quedar determinada como:&lt;br /&gt;
&lt;br /&gt;
''Variación de la masa en el tiempo = flujo de masa a través de la frontera por unidad de tiempo + flujo de masa generada en el interior por unidad de tiempo. ''&lt;br /&gt;
&lt;br /&gt;
== Ley de Fick ==&lt;br /&gt;
Se trata de una ley cuantitativa en forma diferencial que describe la difusión de materia o energía en un medio en el que inicialmente existe equilibrio químico o físico. Esta ley se trata de una generalización de los fenómenos descritos por la '''Ley de Fourier''', ya que esta es una consideración concreta del calor.&lt;br /&gt;
&lt;br /&gt;
La ley de Fick anuncia que en el caso de existir diferencias de concentración en cualquier especie, el paso de estas especies se llevará a cabo desde las regiones con mayor concentración a las de menor. Formulado matemáticamente:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;F(x,t)=-D\frac{\partial u}{\partial x}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Donde &amp;lt;math&amp;gt;F&amp;lt;/math&amp;gt; es el flujo de la sustancia y &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; el coeficiente de difusión, que representa la facilidad en que un soluto particular se mueve por un disolvente determinado.&lt;br /&gt;
&lt;br /&gt;
La ley de Fick establece que el flujo de difusión del contaminante es proporcional a la variación de concentración:&lt;br /&gt;
&amp;lt;math&amp;gt; F(x,t)=-D\frac{\partial u}{\partial x} &amp;lt;/math&amp;gt;&lt;br /&gt;
donde D es el coeficiente de difusión (medido en &amp;lt;math&amp;gt; \frac{m^2}{s} &amp;lt;/math&amp;gt;), que depende de las propiedades físicas de los compuestos, y que se supone constante D=1.&lt;br /&gt;
&lt;br /&gt;
= Modelización de la ecuación diferencial =&lt;br /&gt;
&lt;br /&gt;
Aplicando el principio de conservación de la masa y la ley de Fourier, definimos la variable &amp;lt;math&amp;gt; u(x,t)&amp;lt;/math&amp;gt; en unidades de sustancia por área, es decir, concentración por superficie del tubo.&lt;br /&gt;
&lt;br /&gt;
Consideramos &amp;lt;math&amp;gt; A &amp;lt;/math&amp;gt; como variable superficie, y tomamos un pequeño trozo, definido por &amp;lt;math&amp;gt;\Delta x&amp;lt;/math&amp;gt;. Entonces, para obtener la variación de la masa en el tiempo:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; A u(x,t) \Delta x &amp;lt;/math&amp;gt; &lt;br /&gt;
&lt;br /&gt;
Y derivando en el tiempo:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; A u_t(x,t) \Delta x &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
obtenemos el primer término de la igualdad anteriormente enunciada.&lt;br /&gt;
&lt;br /&gt;
En el segundo, consideramos nulo el flujo de masa en los puntos interiores por unidad de tiempo, pues suponemos la tubería perfecta y sin sumideros.&lt;br /&gt;
&lt;br /&gt;
Como la superﬁcie lateral del tubo está aislada, solamente habrá flujo de sustancia en la dirección del eje &amp;lt;math&amp;gt;x&amp;lt;/math&amp;gt;. Si &amp;lt;math&amp;gt;F(x,t)&amp;gt; 0&amp;lt;/math&amp;gt; pensamos que el ﬂujo va hacia la derecha, si &amp;lt;math&amp;gt;F(x,t)&amp;lt; 0&amp;lt;/math&amp;gt;, este va a hacia la izquierda. El ﬂujo de&lt;br /&gt;
calor en un intervalo &amp;lt;math&amp;gt;[x, x + ∆x ] &amp;lt;/math&amp;gt; viene dado dado por:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;F(x,t)A-F(x+\Delta x, t)A&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Con lo que queda &amp;lt;math&amp;gt;A u_t(x,t) \Delta x = F(x,t)A-F(x+\Delta x, t)A&amp;lt;/math&amp;gt;, y al dividir &amp;lt;math&amp;gt;A \Delta x&amp;lt;/math&amp;gt;, nos queda &amp;lt;math&amp;gt;u_t(x,t)= \frac {F(x,t)-F(x+\Delta x, t)}{\Delta x}&amp;lt;/math&amp;gt;. &amp;lt;br /&amp;gt;&lt;br /&gt;
Como &amp;lt;math&amp;gt;\Delta x \rightarrow 0 &amp;lt;/math&amp;gt;, &amp;lt;math&amp;gt;u_t(x,t)= -F_x(x,t)&amp;lt;/math&amp;gt;, y aplicando ley de Fick, &amp;lt;math&amp;gt;u_t(x,t)=-\frac{\partial }{\partial x}(-D u_x(x,t)) = D u_xx(x,t) &amp;lt;/math&amp;gt;.&amp;lt;br /&amp;gt;&lt;br /&gt;
Con lo que resulta una ecuación en derivadas parciales que determina la concentración de sustancia:&lt;br /&gt;
&amp;lt;math&amp;gt;u_t(x,t)- D u_xx(x,t)= 0 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Planteamiento del problema bien propuesto ==&lt;br /&gt;
&lt;br /&gt;
Suponemos que el flujo será nula al haber una tapa en los extremos del tubo, con lo que el problema bien propuesto quedaría::&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\begin{cases}&lt;br /&gt;
u_t(x,t)- D u_{xx}(x,t)= 0 ; x\in (0,5) \\&lt;br /&gt;
u(x,0)=u_0 , x\in (0,5) \\&lt;br /&gt;
u_x(0,t)=0 , u_x(5,t)=0 ; t\geq 0&lt;br /&gt;
\end{cases}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= Resolución numérica =&lt;br /&gt;
Para la resolución de ésta ecuación necesitaremos mínimo tres condiciones, dos de las cuales serán de contorno, y la otra será la condición inicial.Si suponemos &amp;lt;math&amp;gt;u_0(x,0)&amp;lt;/math&amp;gt;, entonces:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; u_0(x,0)=\begin{cases}&lt;br /&gt;
0,  si x\leq 3\\&lt;br /&gt;
3,  si x&amp;gt;3&lt;br /&gt;
\end{cases}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Resolución por el método de las diferencias finitas ==&lt;br /&gt;
En el primer caso particular que estudiaremos, trataremos de obtener una resolución numérica del problema anteriormente planteado, dónde tenemos las fronteras aisladas y las concentraciones iniciales conocidas:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\begin{cases}&lt;br /&gt;
u_t(x,t)- D u_{xx}(x,t)= 0; x\in (0,5), t\geq 0 \\&lt;br /&gt;
u_0(x,0), x\in (0,5) \\&lt;br /&gt;
u_x(0,t)=0, u_x(5,t)=0, t\geq 0&lt;br /&gt;
\end{cases}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
La resolución por el método de las diferencias finitas se basa en expresar el problema continuo a un sistema discreto de ecuaciones diferenciales de primer orden. Particularizando para nuestro caso con las condiciones dadas, el problema planteado sería:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\begin{cases}&lt;br /&gt;
u'_n(t)+\frac{-u_{n-1}(t)+2u_n(t)+u_{n+1}(t)}{h^2} \\&lt;br /&gt;
\frac{u_1(t)-u_-1(t)}{2h} \rightarrow u_1(t)=u_-1(t) \\&lt;br /&gt;
\frac{u_{N+1}(t)-u_{N-1}(t)}{2h} \rightarrow u_{N+1}(t)=u_{N-1}\\&lt;br /&gt;
u_n(0)=u^0(x)&lt;br /&gt;
\end{cases}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Por lo que tenemos un sistema de la forma:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\begin{cases}&lt;br /&gt;
U'(t)+KU(t)=F(t)=0\\&lt;br /&gt;
U(0)=U^0&lt;br /&gt;
\end{cases}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Con &amp;lt;math&amp;gt;N+1&amp;lt;/math&amp;gt; ecuaciones.&lt;br /&gt;
==== Resolución por método del trapecio ====&lt;br /&gt;
Suponiendo que en el instante inicial se verifica  :&amp;lt;math&amp;gt;&lt;br /&gt;
u(x,0)=\left\{\begin{matrix}\\0, x≤3\\3, x&amp;gt;3\end{matrix}\right.&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Si tomamos &amp;lt;math&amp;gt;\triangle t= \triangle x/4&amp;lt;/math&amp;gt; en &amp;lt;math&amp;gt;t\in\ [0,5]&amp;lt;/math&amp;gt;, con &amp;lt;math&amp;gt;\triangle x=0.1&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
El código en MATLAB del método sería:&lt;br /&gt;
&lt;br /&gt;
{{matlab| codigo=&lt;br /&gt;
%Datos&lt;br /&gt;
L=5; %Longitud de varilla&lt;br /&gt;
T=5;&lt;br /&gt;
q=1;&lt;br /&gt;
%Discretización temporal y espacial&lt;br /&gt;
dx=0.1; % Paso en espacio&lt;br /&gt;
N=L/dx; %Número de subintervalos&lt;br /&gt;
h=L/N;&lt;br /&gt;
x=0:h:L; % Vector de espacio&lt;br /&gt;
dt=h/4; % Paso en tiempo&lt;br /&gt;
t=0:dt:T; % Vector de tiempos&lt;br /&gt;
% Matriz de coeficientes. Aproximacion de -q*u_xx&lt;br /&gt;
K=2*diag(ones(1,N+1))-diag(ones(1,N),1)-diag(ones(1,N),-1);&lt;br /&gt;
K(1,2)=-2;&lt;br /&gt;
K(N+1,N)=-2;&lt;br /&gt;
K=q*K/h^2;&lt;br /&gt;
% Calculamos u0 condición inicial&lt;br /&gt;
u0=[zeros(1,1+N*3/5),3*ones(1,N*2/5)]';&lt;br /&gt;
% F=0 (no la consideramos)&lt;br /&gt;
sol(1,:)=u0'; % Guardamos la solucion&lt;br /&gt;
U=u0; % Inicializacion&lt;br /&gt;
% Calculamos U_n -&amp;gt; U_n+1&lt;br /&gt;
%Aplicamos método trapecio método del trapecio&lt;br /&gt;
for j=1:length(t)-1&lt;br /&gt;
U=(eye(N+1)+(dt*K)/2)\((eye(N+1)-(K*dt)/2)*U);&lt;br /&gt;
sol(j+1,:)= U'; % Guardamos solucion&lt;br /&gt;
end&lt;br /&gt;
%Dibujamos la solucion&lt;br /&gt;
[xx,tt]=meshgrid(x,t);&lt;br /&gt;
surf(xx,tt,sol);&lt;br /&gt;
}}&lt;br /&gt;
[[Archivo:nur.jpg|500px|thumb|centro|Gráfica concentración / espacio-tiempo. Resolución por el método del trapecio.]]&lt;br /&gt;
&lt;br /&gt;
==== Resolución por método de Euler explícito ====&lt;br /&gt;
{{matlab| codigo=&lt;br /&gt;
%Datos&lt;br /&gt;
L=5; %Longitud de varilla&lt;br /&gt;
T=5;&lt;br /&gt;
q=1;&lt;br /&gt;
%Discretización temporal y espacial&lt;br /&gt;
dx=0.1; % Paso en espacio&lt;br /&gt;
N=L/dx; %Número de subintervalos&lt;br /&gt;
h=L/N;&lt;br /&gt;
x=0:h:L; % Vector de espacio&lt;br /&gt;
dt=h/20; % Paso en tiempo&lt;br /&gt;
t=0:dt:T; % Vector de tiempos&lt;br /&gt;
% Matriz de coeficientes. Aproximacion de -q*u_xx&lt;br /&gt;
K=2*diag(ones(1,N+1))-diag(ones(1,N),1)-diag(ones(1,N),-1);&lt;br /&gt;
K(1,2)=-2;&lt;br /&gt;
K(N+1,N)=-2;&lt;br /&gt;
K=q*K/h^2;&lt;br /&gt;
% Calculamos u0 condición inicial&lt;br /&gt;
u0=[zeros(1,1+N*3/5),3*ones(1,N*2/5)]';&lt;br /&gt;
% F=0 (no la consideramos)&lt;br /&gt;
sol(1,:)=u0'; % Guardamos la solucion&lt;br /&gt;
U=u0; % Inicializacion&lt;br /&gt;
% Calculamos U_n -&amp;gt; U_n+1&lt;br /&gt;
%Aplicamos método Euler explícito&lt;br /&gt;
for j=1:length(t)-1 &lt;br /&gt;
k1=-K*U;% Calculamos k1=h*f(tn,yn)&lt;br /&gt;
k2=-K*(U+dt*k1);% Calculamos k2=h*f(tn+h/2,yn+1/2*k1)&lt;br /&gt;
% Meto los datos en el vector&lt;br /&gt;
U=U+(dt/2)*(k1+k2);&lt;br /&gt;
sol(j+1,:)= U'; % Guardamos solucion&lt;br /&gt;
end&lt;br /&gt;
%Dibujamos la solucion&lt;br /&gt;
[xx,tt]=meshgrid(x,t);&lt;br /&gt;
surf(xx,tt,sol);&lt;br /&gt;
}}&lt;br /&gt;
[[Archivo:mig.jpg|500px|thumb|centro|Gráfica concentración / espacio-tiempo. Resolución por el método de Euler explícito.]]&lt;br /&gt;
&lt;br /&gt;
==== Resolución por método de Euler implícito ====&lt;br /&gt;
{{matlab| codigo=&lt;br /&gt;
%Datos&lt;br /&gt;
L=5; %Longitud de varilla&lt;br /&gt;
T=5;&lt;br /&gt;
q=1;&lt;br /&gt;
%Discretización temporal y espacial&lt;br /&gt;
dx=0.1; % Paso en espacio&lt;br /&gt;
N=L/dx; %Número de subintervalos&lt;br /&gt;
h=L/N;&lt;br /&gt;
x=0:h:L; % Vector de espacio&lt;br /&gt;
dt=h/20; % Paso en tiempo&lt;br /&gt;
t=0:dt:T; % Vector de tiempos&lt;br /&gt;
% Matriz de coeficientes. Aproximacion de -q*u_xx&lt;br /&gt;
K=2*diag(ones(1,N+1))-diag(ones(1,N),1)-diag(ones(1,N),-1);&lt;br /&gt;
K(1,2)=-2;&lt;br /&gt;
K(N+1,N)=-2;&lt;br /&gt;
K=q*K/h^2;&lt;br /&gt;
% Calculamos u0 condición inicial&lt;br /&gt;
u0=[zeros(1,1+N*3/5),3*ones(1,N*2/5)]';&lt;br /&gt;
% F=0 (no la consideramos)&lt;br /&gt;
sol(1,:)=u0'; % Guardamos la solucion&lt;br /&gt;
U=u0; % Inicializacion&lt;br /&gt;
% Calculamos U_n -&amp;gt; U_n+1&lt;br /&gt;
% Aplicamos método implícito&lt;br /&gt;
for j=1:length(t)-1 &lt;br /&gt;
U=U-dt*K*U; &lt;br /&gt;
sol(j+1,:)= U'; % Guardamos solucion&lt;br /&gt;
end&lt;br /&gt;
%Dibujamos la solucion&lt;br /&gt;
[xx,tt]=meshgrid(x,t);&lt;br /&gt;
surf(xx,tt,sol);&lt;br /&gt;
}}&lt;br /&gt;
[[Archivo:migap.jpg|500px|thumb|centro|Gráfica concentración / espacio-tiempo. Resolución por el método de Euler implícito.]]&lt;br /&gt;
&lt;br /&gt;
==== Resolución por método de Euler modificado ====&lt;br /&gt;
{{matlab| codigo=&lt;br /&gt;
%Datos&lt;br /&gt;
L=5; %Longitud de varilla&lt;br /&gt;
T=5;&lt;br /&gt;
q=1;&lt;br /&gt;
%Discretización temporal y espacial&lt;br /&gt;
dx=0.1; % Paso en espacio&lt;br /&gt;
N=L/dx; %Número de subintervalos&lt;br /&gt;
h=L/N;&lt;br /&gt;
x=0:h:L; % Vector de espacio&lt;br /&gt;
dt=h/20; % Paso en tiempo&lt;br /&gt;
t=0:dt:T; % Vector de tiempos&lt;br /&gt;
% Matriz de coeficientes. Aproximacion de -q*u_xx&lt;br /&gt;
K=2*diag(ones(1,N+1))-diag(ones(1,N),1)-diag(ones(1,N),-1);&lt;br /&gt;
K(1,2)=-2;&lt;br /&gt;
K(N+1,N)=-2;&lt;br /&gt;
K=q*K/h^2;&lt;br /&gt;
% Calculamos u0 condición inicial&lt;br /&gt;
u0=[zeros(1,1+N*3/5),3*ones(1,N*2/5)]';&lt;br /&gt;
% F=0 (no la consideramos)&lt;br /&gt;
sol(1,:)=u0'; % Guardamos la solucion&lt;br /&gt;
U=u0; % Inicializacion&lt;br /&gt;
% Calculamos U_n -&amp;gt; U_n+1&lt;br /&gt;
for j=1:length(t)-1 &lt;br /&gt;
k1=-K*U; % Calculamos k1=h*f(tn,yn)&lt;br /&gt;
k2=-K*(U+dt*k1); % Calculamos k2=h*f(tn+h/2,yn+1/2*k1)&lt;br /&gt;
% Meto los datos en el vector&lt;br /&gt;
U=U+(dt/2)*(k1+k2);&lt;br /&gt;
sol(j+1,:)= U'; % Guardamos solucion&lt;br /&gt;
end&lt;br /&gt;
%Dibujamos la solucion&lt;br /&gt;
[xx,tt]=meshgrid(x,t);&lt;br /&gt;
surf(xx,tt,sol);&lt;br /&gt;
}}&lt;br /&gt;
[[Archivo: mig.jpg|500px|thumb|centro|Gráfica concentración / espacio-tiempo. Resolución por el método de Euler modificado.]]&lt;br /&gt;
&lt;br /&gt;
== Conservación de la masa total de contaminante ==&lt;br /&gt;
A continuación demostraremos que la masa total de contaminante en el tubo se conserva a lo largo del tiempo, que se puede deducir a partir de la ecuación sin tener que resolverla. Integramos la ecuación y debido a las condiciones de frontera:&lt;br /&gt;
&amp;lt;math&amp;gt;\frac d {dt} \int_0^5 u(x,t)\,dx= \int_0^5 u_{xx}(x,t)\,dx= u_x(x,t)|_0^5=0&amp;lt;/math&amp;gt;&lt;br /&gt;
{{matlab| codigo=&lt;br /&gt;
%Datos&lt;br /&gt;
L=5; %Longitud de varilla&lt;br /&gt;
T=5;&lt;br /&gt;
q=1;&lt;br /&gt;
%Discretización temporal y espacial&lt;br /&gt;
N=500; %Número de subintervalos&lt;br /&gt;
h=L/N;&lt;br /&gt;
x=0:h:L; % Vector de espacio&lt;br /&gt;
dt=h/4; % Paso en tiempo&lt;br /&gt;
t=0:dt:T; % Vector de tiempos&lt;br /&gt;
% Matriz de coeficientes. Aproximacion de -q*u_xx&lt;br /&gt;
K=2*diag(ones(1,N+1))-diag(ones(1,N),1)-diag(ones(1,N),-1);&lt;br /&gt;
K(1,2)=-2;&lt;br /&gt;
K(N+1,N)=-2;&lt;br /&gt;
K=q*K/h^2;&lt;br /&gt;
% Calculamos u0 condición inicial&lt;br /&gt;
u0=[zeros(1,1+N*3/5),3*ones(1,N*2/5)]';&lt;br /&gt;
% F=0 (no la consideramos)&lt;br /&gt;
sol(1,:)=u0'; % Guardamos la solucion&lt;br /&gt;
U=u0; % Inicializacion&lt;br /&gt;
% Calculamos U_n -&amp;gt; U_n+1&lt;br /&gt;
for j=1:length(t)-1 &lt;br /&gt;
U=(eye(N+1)+dt*K)\(U+dt*F); &lt;br /&gt;
sol(j+1,:)= U'; % Guardamos solucion&lt;br /&gt;
end&lt;br /&gt;
% Calculamos el area de la funcion en cada tiempo (area = cantidad de contaminante)&lt;br /&gt;
areas=zeros(1,length(t));&lt;br /&gt;
for i=1:length(t)&lt;br /&gt;
f=sol(i,:);&lt;br /&gt;
w=trapz(x,f);&lt;br /&gt;
area(i)=w;&lt;br /&gt;
end&lt;br /&gt;
%Dibujamos&lt;br /&gt;
plot(t,area)&lt;br /&gt;
xlabel('Tiempo')&lt;br /&gt;
ylabel('Cantidad de contaminante')&lt;br /&gt;
}}&lt;br /&gt;
[[Archivo:aleeex.jpg|500px|thumb|centro|Conservación masa total de contaminante]]&lt;br /&gt;
[[Archivo:gime.jpg|500px|thumb|centro|Conservación masa total de contaminante]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Concentración a lo largo del tiempo==&lt;br /&gt;
La concentración de la sustancia contaminante en la varilla varía con el tiempo, pero en un cierto momento esta concentración se va homogeneizando, y deja de variar, entrando en un estado estacionario::&lt;br /&gt;
&amp;lt;math&amp;gt; u_t(x,t)- D*u_{xx}(x,t)=0 &amp;lt;/math&amp;gt; :    &lt;br /&gt;
&amp;lt;math&amp;gt; u_t(x,t)=0 \rightarrow D*u_{xx}(x,t)=0 &amp;lt;/math&amp;gt; :&lt;br /&gt;
&amp;lt;math&amp;gt; u=c_1*x+c_2 &amp;lt;/math&amp;gt; :&lt;br /&gt;
Utizando Matlab comprobaremos que &amp;lt;math&amp;gt; c_1=0 &amp;lt;/math&amp;gt; &amp;lt;math&amp;gt; c_2=1.17 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Soluciones(t).jpg|miniaturadeimagen|centro|Soluciones a lo largo del tiempo]]&lt;/div&gt;</summary>
		<author><name>Karlo André</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Circuitos_el%C3%A9ctricos_RL_(Resistencia-Inductancia)&amp;diff=10268</id>
		<title>Circuitos eléctricos RL (Resistencia-Inductancia)</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Circuitos_el%C3%A9ctricos_RL_(Resistencia-Inductancia)&amp;diff=10268"/>
				<updated>2014-03-05T12:49:45Z</updated>
		
		<summary type="html">&lt;p&gt;Karlo André: /* Cálculo intensidades iniciales */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;br /&gt;
&lt;br /&gt;
{{ TrabajoED | Circuitos eléctricos RL. Grupo 10-B | [[:Categoría:Ecuaciones Diferenciales|Ecuaciones Diferenciales]]|[[:Categoría:ED13/14|Curso 2013-14]] | Alejandro Giménez Alves, Miguel Aparicio Martín Romo, Nuria Trapote García, Karlo André Palomino Paredes }}&lt;br /&gt;
&lt;br /&gt;
==Circuito eléctrico RL==&lt;br /&gt;
&lt;br /&gt;
El circuito eléctrico RL más simple tiene un inductor o bobina, una resistencia y una fuente de alimentación. &lt;br /&gt;
&lt;br /&gt;
* En una resistencia R, la ley de Ohm establece:: &amp;lt;math&amp;gt;i(t) = \frac{v(t)}{R}&amp;lt;/math&amp;gt;&lt;br /&gt;
donde: &amp;lt;br /&amp;gt;&lt;br /&gt;
 &amp;lt;math&amp;gt; i(t) &amp;lt;/math&amp;gt; = intesidad de corriente (&amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt;)&amp;lt;br /&amp;gt;&lt;br /&gt;
 &amp;lt;math&amp;gt; v(t) &amp;lt;/math&amp;gt; = voltaje (&amp;lt;math&amp;gt;V&amp;lt;/math&amp;gt;)&amp;lt;br /&amp;gt;&lt;br /&gt;
 &amp;lt;math&amp;gt; R &amp;lt;/math&amp;gt; = coeficiente de resistencia (&amp;lt;math&amp;gt;Ω&amp;lt;/math&amp;gt;)&lt;br /&gt;
* En un inductor L, la ley de Faraday establece:: &amp;lt;math&amp;gt;v(t) = L\frac{d}{d_t}i(t)=L\cdot i'(t)&amp;lt;/math&amp;gt;&lt;br /&gt;
donde: &amp;lt;br /&amp;gt;&lt;br /&gt;
 &amp;lt;math&amp;gt; L &amp;lt;/math&amp;gt; = coeficiente de autoinducción (&amp;lt;math&amp;gt;H&amp;lt;/math&amp;gt;)&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
Las leyes de Kirchoff establecen el comportamiento de los circuitos:&lt;br /&gt;
# '''''Ley de corriente:''''' en cada nodo la suma de corrientes que entra coincide con la suma de corrientes que sale.&lt;br /&gt;
# '''''Ley de tensiones:''''' en cada ciclo cerrado, la suma de las diferencias de potencial eléctrico es nula.&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Ley de Kirchoff en un circuito simple (malla 1)== &lt;br /&gt;
&lt;br /&gt;
[[Archivo:cicuito1.jpg|200px|thumb|right|Circuito simple (malla 1)]]&lt;br /&gt;
&lt;br /&gt;
Cuando cerramos el circuito, la cantidad de voltaje total segun ''' &amp;quot;la ley de tensiones de Kirchoff&amp;quot; ''' será la suma del voltaje que hay en la resistencia (intensidad por resistencia) y el que hay en la bobina (resistencia de la bobina por la derivada de la intensidad con respecto al tiempo). En un circuito RL cerrado, aplicando las leyes de Kirchoff, nos da la siguiente ecuación diferencial::&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; i'(t)+{R\over L}i(t)-{V(t)\over L}=0 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Método analítico===&lt;br /&gt;
&lt;br /&gt;
En el instante t=0, el circuito está abierto, por lo que la intensidad que circula es nula (&amp;lt;math&amp;gt; i_0(t)=0 &amp;lt;/math&amp;gt;). En el momento en el que t&amp;gt;0, el circuito adquiere una intensidad, que con las condiciones: &lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
  &amp;lt;math&amp;gt; V(t)=20V &amp;lt;/math&amp;gt; &amp;lt;br /&amp;gt;&lt;br /&gt;
  &amp;lt;math&amp;gt; L=0.2 &amp;lt;/math&amp;gt; &amp;lt;br /&amp;gt;&lt;br /&gt;
  &amp;lt;math&amp;gt;R=5Ω &amp;lt;/math&amp;gt; &lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
hará que la ecuacion diferencial sea: &amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;math&amp;gt;L\frac{d}{dt}i(t)+R\cdot i=V_0 \hspace{0.5cm} \rightarrow \hspace{0.5cm} &amp;lt;/math&amp;gt; &lt;br /&gt;
&amp;lt;math&amp;gt;i'(t)+\frac{R}{L}i(t)=\frac{V}{L} \hspace{0.5cm} \rightarrow \hspace{0.5cm} &amp;lt;/math&amp;gt; &lt;br /&gt;
&amp;lt;math&amp;gt;i \cdot e^{\int{\frac{R}{L}dt}} = \int{e^{\frac{R \cdot t}{L}}dt} \hspace{0.5cm} \rightarrow \hspace{0.5cm} &amp;lt;/math&amp;gt; &lt;br /&gt;
&amp;lt;math&amp;gt;i \cdot e^{\frac{R \cdot t}{L}} = \frac{V}{R}e^{\frac{R \cdot t}{L}}+C&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;Obteniendo como solución de la ecuación diferencial::&lt;br /&gt;
&amp;lt;math&amp;gt;i(t) = \frac{V}{R} + C \cdot e^{\frac{-R \cdot t}{L}}&amp;lt;/math&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
En t=0, el circuito está cerrado. Con la condición inicial &amp;lt;math&amp;gt;i(0)=0 &amp;lt;/math&amp;gt;, obtenemos el valor de la constante &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt;:: &amp;lt;math&amp;gt;i(0)=0 \Rightarrow C= - \frac{V}{R}&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
Finalmente, la solución resulta::&lt;br /&gt;
&amp;lt;math&amp;gt; i(t)= \frac{V}{R} - \frac{V}{R} e^{(-\frac{R}{L})t} = 4-4e^{-25t} &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Con la gráfica:&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
t=[0:0.0001:1];&lt;br /&gt;
i=4-4*exp(-25*t); &lt;br /&gt;
figure(1)&lt;br /&gt;
plot(t,i,'-b','linewidth',5)&lt;br /&gt;
xlabel('Tiempo en segundos');&lt;br /&gt;
ylabel('Intensidad en amperios');&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Image:alex.png|center|thumb|1000px|Solución]]&lt;br /&gt;
&lt;br /&gt;
Si observamos con detenimiento la gráfica, vemos que la variación de la intesidad sigue una ley exponencial que ha medida que pasa el tiempo, crece de manera muy rápida, debido a que en la malla empieza a circular una corriente de manera prácticamente instantánea una vez cerramos el circuito. &amp;lt;br /&amp;gt;&lt;br /&gt;
Por otro lado, vemos que el intervalo de tiempo en el que la intensidad pasa de 0 a 4 amperios (se vuelve constante) es muy pequeño.&lt;br /&gt;
&lt;br /&gt;
=== Método de Euler===&lt;br /&gt;
&lt;br /&gt;
Este método se basa en un procedimiento de integración numérica para resolver ecuaciones diferenciales ordinarias a partir de un valor inicial dado, donde se aproxima el valor de la función a la tangente en cada punto. &amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Con la gráfica:&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
V=20;&lt;br /&gt;
R=5;&lt;br /&gt;
L=0.2;&lt;br /&gt;
t0=0; &lt;br /&gt;
tN=1;&lt;br /&gt;
h=0.0000001;&lt;br /&gt;
N=(tN-t0)/h;&lt;br /&gt;
i0=0;&lt;br /&gt;
ii=i0;&lt;br /&gt;
i(1)=ii;&lt;br /&gt;
for n=1:N&lt;br /&gt;
ii=ii+h*[V/L+(-R/L)*ii];&lt;br /&gt;
i(n+1)=ii;&lt;br /&gt;
end&lt;br /&gt;
t=t0:h:tN;&lt;br /&gt;
figure(1)&lt;br /&gt;
plot(t,i,'-r','linewidth',5)&lt;br /&gt;
xlabel('Tiempo en segundos');&lt;br /&gt;
ylabel('Intensidad en amperios');&lt;br /&gt;
}}&lt;br /&gt;
Como estamos usando un método explícito para aproximar una función exponencial de elevada pendiente, el paso de discretización temporal ha de ser muy pequeño (para que sea estable). &amp;lt;br /&amp;gt;&lt;br /&gt;
Cuanto más cercanos cojamos los puntos, mayor será la aproximación al resultado real, haciéndolo más exacto (ya que el error acumulado será menor). &amp;lt;br /&amp;gt;&lt;br /&gt;
[[Image:alexx.png|center|thumb|1000px|Solución Euler]]&lt;br /&gt;
&lt;br /&gt;
===Método del trapecio=== &lt;br /&gt;
&lt;br /&gt;
Este método se basa en la integración numérica, es decir, es un método para calcular aproximadamente el valor de una integral definida. &amp;lt;br /&amp;gt;&lt;br /&gt;
Se basa en aproximar en la valor de la integral de la función por el de la función lineal que pasa a través de los puntos de inicio y final de la función, aproximandolo al área de un trapecio. El método del trapecio es más exacto que el de Euler.&amp;lt;br /&amp;gt;&lt;br /&gt;
Con la gráfica:&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
V=20;&lt;br /&gt;
R=5;&lt;br /&gt;
L=0.2;&lt;br /&gt;
t0=0; &lt;br /&gt;
tN=1;&lt;br /&gt;
N=100000; &lt;br /&gt;
h=(tN-t0)/N;&lt;br /&gt;
t=t0:h:tN;&lt;br /&gt;
i=t*0;&lt;br /&gt;
i0=0;&lt;br /&gt;
ii=i0;&lt;br /&gt;
i(1)=ii;&lt;br /&gt;
for n=1:N&lt;br /&gt;
    %% Aplicando el método del trapecio, cuya expresión es i_n+1=i_n+h/2*(f(t_n,i_n)+f(t_n+1,i_n+1).&lt;br /&gt;
    %% Despejando el término i_n+1 resulta la expresion siguiente.&lt;br /&gt;
    ii=((1-(h*R)/(2*L))*ii+h*V/L)/(1+((h*R)/(2*L)));&lt;br /&gt;
    i(n+1)=ii;&lt;br /&gt;
end&lt;br /&gt;
figure(1)&lt;br /&gt;
plot(t,i,'-y','linewidth',5)&lt;br /&gt;
xlabel('Tiempo en segundos');&lt;br /&gt;
ylabel('Intensidad en amperios');&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Image:miguel.png|center|thumb|1000px|Solución Trapecio]]&lt;br /&gt;
&lt;br /&gt;
Podemos observar que la intensidad se estabiliza a un valor constante en un período de tiempo muy corto (aproximadamente 0.2 segundos), casi de manera instantánea. &amp;lt;br /&amp;gt;&lt;br /&gt;
Cuánto más aumentemos L, más tiempo tardará la intensidad en llegar a ser una constante.&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
==Ley de Kirchoff en un circuito complejo (malla 2)==&lt;br /&gt;
&lt;br /&gt;
[[Archivo:nuria.png|200px|thumb|right|Circuito completo (malla 2)]]&lt;br /&gt;
&lt;br /&gt;
Según las  leyes de Kirchoff, el sistema de ecuaciones diferenciales correspondiente al circuito 2 es el siguiente:&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
* &amp;lt;math&amp;gt;E(t) = R_1\cdot i_1(t) + L_2\cdot \frac{d}{dt} i_2(t) + R_2\cdot i_2(t)&amp;lt;/math&amp;gt;: corresponde al recorrido exterior del circuito. &lt;br /&gt;
* &amp;lt;math&amp;gt;E(t) = R_1\cdot i_1(t) + L_1\cdot \frac{d}{dt} i_3(t) + R_3\cdot i_3(t)&amp;lt;/math&amp;gt;: corresponde a la malla 1.&lt;br /&gt;
* &amp;lt;math&amp;gt;i_1(t) = i_2(t) + i_3(t)&amp;lt;/math&amp;gt;: es la correspondiente a la Ley de corriente de Kirchoff.&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
donde &amp;lt;br /&amp;gt;&lt;br /&gt;
 &amp;lt;math&amp;gt;i_1(t)&amp;lt;/math&amp;gt; = intensidad de la malla 1 &amp;lt;br /&amp;gt; &lt;br /&gt;
 &amp;lt;math&amp;gt;i_2(t)&amp;lt;/math&amp;gt; = intensidad de la malla 2 &amp;lt;br /&amp;gt;&lt;br /&gt;
 &amp;lt;math&amp;gt;i_3(t)&amp;lt;/math&amp;gt; = intensidad de la intersección de mallas &amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Sustituyendo la tercera ecuación enlas otras dos se obtiene el sistema en términos de &amp;lt;math&amp;gt;i_2(t)&amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt;i_3(t)&amp;lt;/math&amp;gt;:&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
* &amp;lt;math&amp;gt; i_2'(t)+{R_1+R_2\over L_2}i_2(t)+{R_1\over L_2}i_3(t)={E(t)\over L_2} &amp;lt;/math&amp;gt;&lt;br /&gt;
* &amp;lt;math&amp;gt; i_3'(t)+{R_1\over L_1}i_2(t)+{R_1+R_3\over L_1}i_3(t)={E(t)\over L_1} &amp;lt;/math&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
Matricialmente::&amp;lt;math&amp;gt;\frac{d}{dt}\begin{pmatrix} i_2\\i_3 \end{pmatrix} = - \begin{pmatrix} \frac{R_1+R_2}{L_2}&amp;amp;\frac{R_1}{L_2} \\ \frac{R_1}{L_1}&amp;amp;\frac{R_1+R_3}{L_1} \end{pmatrix}\begin{pmatrix} i_2\\i_3 \end{pmatrix} + \begin{pmatrix} \frac{E}{L_2} \\ \frac{E}{L_1} \end{pmatrix}&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
A partir de las condiciones iniciales &amp;lt;math&amp;gt;i_2(0)&amp;lt;/math&amp;gt; = &amp;lt;math&amp;gt;i_3(0)&amp;lt;/math&amp;gt; = 0; y por consiguiente &amp;lt;math&amp;gt;i_2'(0)&amp;lt;/math&amp;gt; = &amp;lt;math&amp;gt;i_3'(0)&amp;lt;/math&amp;gt; = 0, se puede interpretar que la corriente en el circuito es nula en el momento inicial, cuando se conecta el generador.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Método de Euler===&lt;br /&gt;
&lt;br /&gt;
Resolveremos el sistema anterior para los siguientes datos: &amp;lt;br /&amp;gt;&lt;br /&gt;
 &amp;lt;math&amp;gt; R_1=R_2=6Ω &amp;lt;/math&amp;gt; &amp;lt;br /&amp;gt;&lt;br /&gt;
 &amp;lt;math&amp;gt; R_3=3Ω &amp;lt;/math&amp;gt; &amp;lt;br /&amp;gt;&lt;br /&gt;
 &amp;lt;math&amp;gt; L_1=0.3H &amp;lt;/math&amp;gt; &amp;lt;br /&amp;gt;&lt;br /&gt;
 &amp;lt;math&amp;gt; L_2=0.11H &amp;lt;/math&amp;gt; &amp;lt;br /&amp;gt;&lt;br /&gt;
 &amp;lt;math&amp;gt; E(t)=20V &amp;lt;/math&amp;gt; &amp;lt;br /&amp;gt;&lt;br /&gt;
Para ello emplearemos el método de Euler utilizando Matlab. &lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
t0=0;&lt;br /&gt;
tf=0.4;&lt;br /&gt;
R1=6;&lt;br /&gt;
R2=6;&lt;br /&gt;
R3=3;&lt;br /&gt;
L1=0.3;&lt;br /&gt;
L2=0.11;&lt;br /&gt;
E=20;&lt;br /&gt;
i0=[0 0]';&lt;br /&gt;
A=[-(R1+R2)/L2 -R1/L2 ; -R1/L1 -(R1+R3)/L1];&lt;br /&gt;
N=400;&lt;br /&gt;
h=(tf-t0)/N;&lt;br /&gt;
t=t0:h:tf;&lt;br /&gt;
i=zeros(2,N+1);&lt;br /&gt;
i(:,1)=i0;&lt;br /&gt;
ii=i0;&lt;br /&gt;
% Iteraciones i(t_n) --&amp;gt; i(t_n+1)&lt;br /&gt;
for n=1:N&lt;br /&gt;
  g=[E/L2 E/L1]';&lt;br /&gt;
  ii=ii+h*(A*ii+g)&lt;br /&gt;
  i(:,n+1)=ii;&lt;br /&gt;
end&lt;br /&gt;
clf&lt;br /&gt;
plot(t,i,'-','linewidth',3)&lt;br /&gt;
legend('i2(t)','i3(t)')&lt;br /&gt;
xlabel('Tiempo en segundos')&lt;br /&gt;
ylabel('Intensidad en amperios')&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:karloandre.png|600px|thumb|centro|Resolución del sistema por el método de Euler]]&lt;br /&gt;
&lt;br /&gt;
===Método del trapecio===&lt;br /&gt;
&lt;br /&gt;
Otro método más preciso sería el método del trapecio.&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
t0=0;&lt;br /&gt;
tf=0.4;&lt;br /&gt;
R1=6;&lt;br /&gt;
R2=6;&lt;br /&gt;
R3=3;&lt;br /&gt;
L1=0.3;&lt;br /&gt;
L2=0.11;&lt;br /&gt;
E=20;&lt;br /&gt;
i0=[0 0]';&lt;br /&gt;
A=[-(R1+R2)/L2 -R1/L2 ; -R1/L1 -(R1+R3)/L1];&lt;br /&gt;
N=400;&lt;br /&gt;
h=(tf-t0)/N;&lt;br /&gt;
t=t0:h:tf;&lt;br /&gt;
i=zeros(2,N+1);&lt;br /&gt;
i(:,1)=i0;&lt;br /&gt;
ii=i0;&lt;br /&gt;
% Iteraciones y(t_n) --&amp;gt; y(t_n+1)&lt;br /&gt;
for n=1:N&lt;br /&gt;
  gn=[E/L2 E/L1]';&lt;br /&gt;
  gnp1=gn;&lt;br /&gt;
  ii=(eye(2)-h/2*A)\((eye(2)+h/2*A)*ii+h/2*(gn+gnp1));&lt;br /&gt;
  i(:,n+1)=ii;&lt;br /&gt;
end&lt;br /&gt;
clf&lt;br /&gt;
plot(t,i,'-','linewidth',3)&lt;br /&gt;
legend('i2(t)','i3(t)')&lt;br /&gt;
xlabel('Tiempo en segundos')&lt;br /&gt;
ylabel('Intensidad en amperios')&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Método del trapecio.png|600px|thumb|centre|Resolución del sistema por el Método del Trapecio]]&lt;br /&gt;
&lt;br /&gt;
Podemos observar que el resultado es muy similar al obtenido mediante el método de Euler.&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Efecto al aumentar una resistencia===&lt;br /&gt;
&lt;br /&gt;
Si aumentamos el valor de una de las resistencias la solución será distinta, mediante uno de los procedimientos anteriormente descritos podemos obtener esta nueva solución.&lt;br /&gt;
El dato que vamos a cambiar es:&amp;lt;br /&amp;gt;&lt;br /&gt;
 &amp;lt;math&amp;gt; R_3=9Ω &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
t0=0;&lt;br /&gt;
tf=0.4;&lt;br /&gt;
R1=6;&lt;br /&gt;
R2=6;&lt;br /&gt;
R3=3;&lt;br /&gt;
L1=0.3;&lt;br /&gt;
L2=0.11;&lt;br /&gt;
E=20;&lt;br /&gt;
i0=[0 0]';&lt;br /&gt;
A=[-(R1+R2)/L2 -R1/L2 ; -R1/L1 -(R1+R3)/L1];&lt;br /&gt;
N=100;&lt;br /&gt;
h=(tf-t0)/N;&lt;br /&gt;
t=t0:h:tf;&lt;br /&gt;
i=zeros(2,N+1);&lt;br /&gt;
i(:,1)=i0;&lt;br /&gt;
ii=i0;&lt;br /&gt;
% Iteraciones i(t_n) --&amp;gt; i(t_n+1)&lt;br /&gt;
for n=1:N&lt;br /&gt;
  g=[E/L2 E/L1]';&lt;br /&gt;
  ii=ii+h*(A*ii+g)&lt;br /&gt;
  i(:,n+1)=ii;&lt;br /&gt;
end&lt;br /&gt;
Rn3=9;&lt;br /&gt;
j0=[0 0]';&lt;br /&gt;
B=[-(R1+R2)/L2 -R1/L2 ; -R1/L1 -(R1+Rn3)/L1];&lt;br /&gt;
N=100;&lt;br /&gt;
h=(tf-t0)/N;&lt;br /&gt;
t=t0:h:tf;&lt;br /&gt;
j=zeros(2,N+1);&lt;br /&gt;
j(:,1)=j0;&lt;br /&gt;
jj=j0;&lt;br /&gt;
% Iteraciones j(t_n) --&amp;gt; j(t_n+1)&lt;br /&gt;
for n=1:N&lt;br /&gt;
  g=[E/L2 E/L1]';&lt;br /&gt;
  jj=jj+h*(B*jj+g)&lt;br /&gt;
  j(:,n+1)=jj;&lt;br /&gt;
end&lt;br /&gt;
hold on&lt;br /&gt;
plot(t,i,'-','linewidth',2)&lt;br /&gt;
legend('i2(t)','i3(t)')&lt;br /&gt;
plot(t,j,'x','linewidth',2)&lt;br /&gt;
xlabel('Tiempo en segundos')&lt;br /&gt;
ylabel('Intensidad en amperios')&lt;br /&gt;
hold off&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Comparacion2.png|600px|miniaturadeimagen|centro|Comparación resultados (cambio R3)]]&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
Podemos observar en la gráfica que al aumentar el valor de una de las resistencias, la intensidad se estabiliza en un periodo de tiempo más reducido y debido a la ley de Ohm, la tercera intensidad decrece bastante.&lt;br /&gt;
&lt;br /&gt;
===Cálculo intensidades iniciales===&lt;br /&gt;
Para resolver ecuaciones diferenciales, es habitual considerar como condiciones iniciales t=0, pero no siempre es necesario, se puede tomar cualquier t. En este caso consideraremos los siguientes datos: &amp;lt;br /&amp;gt;&lt;br /&gt;
 &amp;lt;math&amp;gt; t_0=0.02s &amp;lt;/math&amp;gt;&lt;br /&gt;
 &amp;lt;math&amp;gt; i_2(0)=1A &amp;lt;/math&amp;gt;&lt;br /&gt;
 &amp;lt;math&amp;gt; i_3(0)=1A &amp;lt;/math&amp;gt;&lt;br /&gt;
Aunque empleemos una t&amp;gt;0, necesitamos deducir las intensidades en t=0, para ello utilizaremos el método de Euler pero teniendo en cuenta que el paso es negativo para progresar desde nuestro tiempo inicial (0,02s) a nuestro tiempo final (0s) . Con ayuda de esto conseguiremos::&lt;br /&gt;
&amp;lt;math&amp;gt; i_{n+1}=i_n+h*f(t_n,i_n) → i_{n-1}=i_n-h*f(t_n,i_n) &amp;lt;/math&amp;gt;&lt;br /&gt;
Siendo la función: &amp;lt;br /&amp;gt;&lt;br /&gt;
 &amp;lt;math&amp;gt; i'(t)=A*i(t)+g &amp;lt;/math&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
t0=0.02;&lt;br /&gt;
tf=0;&lt;br /&gt;
R1=6;&lt;br /&gt;
R2=6;&lt;br /&gt;
R3=3;&lt;br /&gt;
L1=0.3;&lt;br /&gt;
L2=0.11;&lt;br /&gt;
E=20;&lt;br /&gt;
i0=[1 1]';&lt;br /&gt;
A=[-(R1+R2)/L2 -R1/L2 ; -R1/L1 -(R1+R3)/L1];&lt;br /&gt;
N=400;&lt;br /&gt;
h=(tf-t0)/N;&lt;br /&gt;
t=t0:h:tf;&lt;br /&gt;
i=zeros(2,N+1);&lt;br /&gt;
i(:,1)=i0;&lt;br /&gt;
ii=i0;&lt;br /&gt;
% Iteraciones i(t_n) --&amp;gt; i(t_n+1)&lt;br /&gt;
for n=1:N&lt;br /&gt;
  g=[E/L2 E/L1]';&lt;br /&gt;
  ii=ii+h*(A*ii+g)&lt;br /&gt;
  i(:,n+1)=ii;&lt;br /&gt;
end&lt;br /&gt;
clf&lt;br /&gt;
plot(t,i,'-','linewidth',3)&lt;br /&gt;
legend('i2(t)','i3(t)')&lt;br /&gt;
xlabel('Tiempo en segundos')&lt;br /&gt;
ylabel('Intensidad en amperios')&lt;br /&gt;
}}&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
Finalmente, gracias a este método obtendremos  una gráfica para conocer la evolución de la intensidad:&lt;br /&gt;
&lt;br /&gt;
[[Archivo:graficachungados.png|600px|thumb|centro|Evolución de las intensidades con condición inicial en t=0,02s]]&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
En ella podemos apreciar que las intensidades en el instante t=0s alcanza los siguientes valores:&amp;lt;br /&amp;gt;&lt;br /&gt;
 &amp;lt;math&amp;gt; i_2(0)=-0,9313A &amp;lt;/math&amp;gt;&lt;br /&gt;
 &amp;lt;math&amp;gt; i_3(0)=0,2708A &amp;lt;/math&amp;gt;&lt;br /&gt;
[[Categoría:Ecuaciones Diferentiales]]&lt;br /&gt;
[[Categoría:ED13/14]]&lt;br /&gt;
[[Categoría:Trabajos 2013-14]]&lt;/div&gt;</summary>
		<author><name>Karlo André</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Circuitos_el%C3%A9ctricos_RL_(Resistencia-Inductancia)&amp;diff=10267</id>
		<title>Circuitos eléctricos RL (Resistencia-Inductancia)</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Circuitos_el%C3%A9ctricos_RL_(Resistencia-Inductancia)&amp;diff=10267"/>
				<updated>2014-03-05T12:49:16Z</updated>
		
		<summary type="html">&lt;p&gt;Karlo André: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;br /&gt;
&lt;br /&gt;
{{ TrabajoED | Circuitos eléctricos RL. Grupo 10-B | [[:Categoría:Ecuaciones Diferenciales|Ecuaciones Diferenciales]]|[[:Categoría:ED13/14|Curso 2013-14]] | Alejandro Giménez Alves, Miguel Aparicio Martín Romo, Nuria Trapote García, Karlo André Palomino Paredes }}&lt;br /&gt;
&lt;br /&gt;
==Circuito eléctrico RL==&lt;br /&gt;
&lt;br /&gt;
El circuito eléctrico RL más simple tiene un inductor o bobina, una resistencia y una fuente de alimentación. &lt;br /&gt;
&lt;br /&gt;
* En una resistencia R, la ley de Ohm establece:: &amp;lt;math&amp;gt;i(t) = \frac{v(t)}{R}&amp;lt;/math&amp;gt;&lt;br /&gt;
donde: &amp;lt;br /&amp;gt;&lt;br /&gt;
 &amp;lt;math&amp;gt; i(t) &amp;lt;/math&amp;gt; = intesidad de corriente (&amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt;)&amp;lt;br /&amp;gt;&lt;br /&gt;
 &amp;lt;math&amp;gt; v(t) &amp;lt;/math&amp;gt; = voltaje (&amp;lt;math&amp;gt;V&amp;lt;/math&amp;gt;)&amp;lt;br /&amp;gt;&lt;br /&gt;
 &amp;lt;math&amp;gt; R &amp;lt;/math&amp;gt; = coeficiente de resistencia (&amp;lt;math&amp;gt;Ω&amp;lt;/math&amp;gt;)&lt;br /&gt;
* En un inductor L, la ley de Faraday establece:: &amp;lt;math&amp;gt;v(t) = L\frac{d}{d_t}i(t)=L\cdot i'(t)&amp;lt;/math&amp;gt;&lt;br /&gt;
donde: &amp;lt;br /&amp;gt;&lt;br /&gt;
 &amp;lt;math&amp;gt; L &amp;lt;/math&amp;gt; = coeficiente de autoinducción (&amp;lt;math&amp;gt;H&amp;lt;/math&amp;gt;)&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
Las leyes de Kirchoff establecen el comportamiento de los circuitos:&lt;br /&gt;
# '''''Ley de corriente:''''' en cada nodo la suma de corrientes que entra coincide con la suma de corrientes que sale.&lt;br /&gt;
# '''''Ley de tensiones:''''' en cada ciclo cerrado, la suma de las diferencias de potencial eléctrico es nula.&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Ley de Kirchoff en un circuito simple (malla 1)== &lt;br /&gt;
&lt;br /&gt;
[[Archivo:cicuito1.jpg|200px|thumb|right|Circuito simple (malla 1)]]&lt;br /&gt;
&lt;br /&gt;
Cuando cerramos el circuito, la cantidad de voltaje total segun ''' &amp;quot;la ley de tensiones de Kirchoff&amp;quot; ''' será la suma del voltaje que hay en la resistencia (intensidad por resistencia) y el que hay en la bobina (resistencia de la bobina por la derivada de la intensidad con respecto al tiempo). En un circuito RL cerrado, aplicando las leyes de Kirchoff, nos da la siguiente ecuación diferencial::&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; i'(t)+{R\over L}i(t)-{V(t)\over L}=0 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Método analítico===&lt;br /&gt;
&lt;br /&gt;
En el instante t=0, el circuito está abierto, por lo que la intensidad que circula es nula (&amp;lt;math&amp;gt; i_0(t)=0 &amp;lt;/math&amp;gt;). En el momento en el que t&amp;gt;0, el circuito adquiere una intensidad, que con las condiciones: &lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
  &amp;lt;math&amp;gt; V(t)=20V &amp;lt;/math&amp;gt; &amp;lt;br /&amp;gt;&lt;br /&gt;
  &amp;lt;math&amp;gt; L=0.2 &amp;lt;/math&amp;gt; &amp;lt;br /&amp;gt;&lt;br /&gt;
  &amp;lt;math&amp;gt;R=5Ω &amp;lt;/math&amp;gt; &lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
hará que la ecuacion diferencial sea: &amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;math&amp;gt;L\frac{d}{dt}i(t)+R\cdot i=V_0 \hspace{0.5cm} \rightarrow \hspace{0.5cm} &amp;lt;/math&amp;gt; &lt;br /&gt;
&amp;lt;math&amp;gt;i'(t)+\frac{R}{L}i(t)=\frac{V}{L} \hspace{0.5cm} \rightarrow \hspace{0.5cm} &amp;lt;/math&amp;gt; &lt;br /&gt;
&amp;lt;math&amp;gt;i \cdot e^{\int{\frac{R}{L}dt}} = \int{e^{\frac{R \cdot t}{L}}dt} \hspace{0.5cm} \rightarrow \hspace{0.5cm} &amp;lt;/math&amp;gt; &lt;br /&gt;
&amp;lt;math&amp;gt;i \cdot e^{\frac{R \cdot t}{L}} = \frac{V}{R}e^{\frac{R \cdot t}{L}}+C&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;Obteniendo como solución de la ecuación diferencial::&lt;br /&gt;
&amp;lt;math&amp;gt;i(t) = \frac{V}{R} + C \cdot e^{\frac{-R \cdot t}{L}}&amp;lt;/math&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
En t=0, el circuito está cerrado. Con la condición inicial &amp;lt;math&amp;gt;i(0)=0 &amp;lt;/math&amp;gt;, obtenemos el valor de la constante &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt;:: &amp;lt;math&amp;gt;i(0)=0 \Rightarrow C= - \frac{V}{R}&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
Finalmente, la solución resulta::&lt;br /&gt;
&amp;lt;math&amp;gt; i(t)= \frac{V}{R} - \frac{V}{R} e^{(-\frac{R}{L})t} = 4-4e^{-25t} &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Con la gráfica:&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
t=[0:0.0001:1];&lt;br /&gt;
i=4-4*exp(-25*t); &lt;br /&gt;
figure(1)&lt;br /&gt;
plot(t,i,'-b','linewidth',5)&lt;br /&gt;
xlabel('Tiempo en segundos');&lt;br /&gt;
ylabel('Intensidad en amperios');&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Image:alex.png|center|thumb|1000px|Solución]]&lt;br /&gt;
&lt;br /&gt;
Si observamos con detenimiento la gráfica, vemos que la variación de la intesidad sigue una ley exponencial que ha medida que pasa el tiempo, crece de manera muy rápida, debido a que en la malla empieza a circular una corriente de manera prácticamente instantánea una vez cerramos el circuito. &amp;lt;br /&amp;gt;&lt;br /&gt;
Por otro lado, vemos que el intervalo de tiempo en el que la intensidad pasa de 0 a 4 amperios (se vuelve constante) es muy pequeño.&lt;br /&gt;
&lt;br /&gt;
=== Método de Euler===&lt;br /&gt;
&lt;br /&gt;
Este método se basa en un procedimiento de integración numérica para resolver ecuaciones diferenciales ordinarias a partir de un valor inicial dado, donde se aproxima el valor de la función a la tangente en cada punto. &amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Con la gráfica:&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
V=20;&lt;br /&gt;
R=5;&lt;br /&gt;
L=0.2;&lt;br /&gt;
t0=0; &lt;br /&gt;
tN=1;&lt;br /&gt;
h=0.0000001;&lt;br /&gt;
N=(tN-t0)/h;&lt;br /&gt;
i0=0;&lt;br /&gt;
ii=i0;&lt;br /&gt;
i(1)=ii;&lt;br /&gt;
for n=1:N&lt;br /&gt;
ii=ii+h*[V/L+(-R/L)*ii];&lt;br /&gt;
i(n+1)=ii;&lt;br /&gt;
end&lt;br /&gt;
t=t0:h:tN;&lt;br /&gt;
figure(1)&lt;br /&gt;
plot(t,i,'-r','linewidth',5)&lt;br /&gt;
xlabel('Tiempo en segundos');&lt;br /&gt;
ylabel('Intensidad en amperios');&lt;br /&gt;
}}&lt;br /&gt;
Como estamos usando un método explícito para aproximar una función exponencial de elevada pendiente, el paso de discretización temporal ha de ser muy pequeño (para que sea estable). &amp;lt;br /&amp;gt;&lt;br /&gt;
Cuanto más cercanos cojamos los puntos, mayor será la aproximación al resultado real, haciéndolo más exacto (ya que el error acumulado será menor). &amp;lt;br /&amp;gt;&lt;br /&gt;
[[Image:alexx.png|center|thumb|1000px|Solución Euler]]&lt;br /&gt;
&lt;br /&gt;
===Método del trapecio=== &lt;br /&gt;
&lt;br /&gt;
Este método se basa en la integración numérica, es decir, es un método para calcular aproximadamente el valor de una integral definida. &amp;lt;br /&amp;gt;&lt;br /&gt;
Se basa en aproximar en la valor de la integral de la función por el de la función lineal que pasa a través de los puntos de inicio y final de la función, aproximandolo al área de un trapecio. El método del trapecio es más exacto que el de Euler.&amp;lt;br /&amp;gt;&lt;br /&gt;
Con la gráfica:&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
V=20;&lt;br /&gt;
R=5;&lt;br /&gt;
L=0.2;&lt;br /&gt;
t0=0; &lt;br /&gt;
tN=1;&lt;br /&gt;
N=100000; &lt;br /&gt;
h=(tN-t0)/N;&lt;br /&gt;
t=t0:h:tN;&lt;br /&gt;
i=t*0;&lt;br /&gt;
i0=0;&lt;br /&gt;
ii=i0;&lt;br /&gt;
i(1)=ii;&lt;br /&gt;
for n=1:N&lt;br /&gt;
    %% Aplicando el método del trapecio, cuya expresión es i_n+1=i_n+h/2*(f(t_n,i_n)+f(t_n+1,i_n+1).&lt;br /&gt;
    %% Despejando el término i_n+1 resulta la expresion siguiente.&lt;br /&gt;
    ii=((1-(h*R)/(2*L))*ii+h*V/L)/(1+((h*R)/(2*L)));&lt;br /&gt;
    i(n+1)=ii;&lt;br /&gt;
end&lt;br /&gt;
figure(1)&lt;br /&gt;
plot(t,i,'-y','linewidth',5)&lt;br /&gt;
xlabel('Tiempo en segundos');&lt;br /&gt;
ylabel('Intensidad en amperios');&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Image:miguel.png|center|thumb|1000px|Solución Trapecio]]&lt;br /&gt;
&lt;br /&gt;
Podemos observar que la intensidad se estabiliza a un valor constante en un período de tiempo muy corto (aproximadamente 0.2 segundos), casi de manera instantánea. &amp;lt;br /&amp;gt;&lt;br /&gt;
Cuánto más aumentemos L, más tiempo tardará la intensidad en llegar a ser una constante.&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
==Ley de Kirchoff en un circuito complejo (malla 2)==&lt;br /&gt;
&lt;br /&gt;
[[Archivo:nuria.png|200px|thumb|right|Circuito completo (malla 2)]]&lt;br /&gt;
&lt;br /&gt;
Según las  leyes de Kirchoff, el sistema de ecuaciones diferenciales correspondiente al circuito 2 es el siguiente:&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
* &amp;lt;math&amp;gt;E(t) = R_1\cdot i_1(t) + L_2\cdot \frac{d}{dt} i_2(t) + R_2\cdot i_2(t)&amp;lt;/math&amp;gt;: corresponde al recorrido exterior del circuito. &lt;br /&gt;
* &amp;lt;math&amp;gt;E(t) = R_1\cdot i_1(t) + L_1\cdot \frac{d}{dt} i_3(t) + R_3\cdot i_3(t)&amp;lt;/math&amp;gt;: corresponde a la malla 1.&lt;br /&gt;
* &amp;lt;math&amp;gt;i_1(t) = i_2(t) + i_3(t)&amp;lt;/math&amp;gt;: es la correspondiente a la Ley de corriente de Kirchoff.&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
donde &amp;lt;br /&amp;gt;&lt;br /&gt;
 &amp;lt;math&amp;gt;i_1(t)&amp;lt;/math&amp;gt; = intensidad de la malla 1 &amp;lt;br /&amp;gt; &lt;br /&gt;
 &amp;lt;math&amp;gt;i_2(t)&amp;lt;/math&amp;gt; = intensidad de la malla 2 &amp;lt;br /&amp;gt;&lt;br /&gt;
 &amp;lt;math&amp;gt;i_3(t)&amp;lt;/math&amp;gt; = intensidad de la intersección de mallas &amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Sustituyendo la tercera ecuación enlas otras dos se obtiene el sistema en términos de &amp;lt;math&amp;gt;i_2(t)&amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt;i_3(t)&amp;lt;/math&amp;gt;:&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
* &amp;lt;math&amp;gt; i_2'(t)+{R_1+R_2\over L_2}i_2(t)+{R_1\over L_2}i_3(t)={E(t)\over L_2} &amp;lt;/math&amp;gt;&lt;br /&gt;
* &amp;lt;math&amp;gt; i_3'(t)+{R_1\over L_1}i_2(t)+{R_1+R_3\over L_1}i_3(t)={E(t)\over L_1} &amp;lt;/math&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
Matricialmente::&amp;lt;math&amp;gt;\frac{d}{dt}\begin{pmatrix} i_2\\i_3 \end{pmatrix} = - \begin{pmatrix} \frac{R_1+R_2}{L_2}&amp;amp;\frac{R_1}{L_2} \\ \frac{R_1}{L_1}&amp;amp;\frac{R_1+R_3}{L_1} \end{pmatrix}\begin{pmatrix} i_2\\i_3 \end{pmatrix} + \begin{pmatrix} \frac{E}{L_2} \\ \frac{E}{L_1} \end{pmatrix}&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
A partir de las condiciones iniciales &amp;lt;math&amp;gt;i_2(0)&amp;lt;/math&amp;gt; = &amp;lt;math&amp;gt;i_3(0)&amp;lt;/math&amp;gt; = 0; y por consiguiente &amp;lt;math&amp;gt;i_2'(0)&amp;lt;/math&amp;gt; = &amp;lt;math&amp;gt;i_3'(0)&amp;lt;/math&amp;gt; = 0, se puede interpretar que la corriente en el circuito es nula en el momento inicial, cuando se conecta el generador.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Método de Euler===&lt;br /&gt;
&lt;br /&gt;
Resolveremos el sistema anterior para los siguientes datos: &amp;lt;br /&amp;gt;&lt;br /&gt;
 &amp;lt;math&amp;gt; R_1=R_2=6Ω &amp;lt;/math&amp;gt; &amp;lt;br /&amp;gt;&lt;br /&gt;
 &amp;lt;math&amp;gt; R_3=3Ω &amp;lt;/math&amp;gt; &amp;lt;br /&amp;gt;&lt;br /&gt;
 &amp;lt;math&amp;gt; L_1=0.3H &amp;lt;/math&amp;gt; &amp;lt;br /&amp;gt;&lt;br /&gt;
 &amp;lt;math&amp;gt; L_2=0.11H &amp;lt;/math&amp;gt; &amp;lt;br /&amp;gt;&lt;br /&gt;
 &amp;lt;math&amp;gt; E(t)=20V &amp;lt;/math&amp;gt; &amp;lt;br /&amp;gt;&lt;br /&gt;
Para ello emplearemos el método de Euler utilizando Matlab. &lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
t0=0;&lt;br /&gt;
tf=0.4;&lt;br /&gt;
R1=6;&lt;br /&gt;
R2=6;&lt;br /&gt;
R3=3;&lt;br /&gt;
L1=0.3;&lt;br /&gt;
L2=0.11;&lt;br /&gt;
E=20;&lt;br /&gt;
i0=[0 0]';&lt;br /&gt;
A=[-(R1+R2)/L2 -R1/L2 ; -R1/L1 -(R1+R3)/L1];&lt;br /&gt;
N=400;&lt;br /&gt;
h=(tf-t0)/N;&lt;br /&gt;
t=t0:h:tf;&lt;br /&gt;
i=zeros(2,N+1);&lt;br /&gt;
i(:,1)=i0;&lt;br /&gt;
ii=i0;&lt;br /&gt;
% Iteraciones i(t_n) --&amp;gt; i(t_n+1)&lt;br /&gt;
for n=1:N&lt;br /&gt;
  g=[E/L2 E/L1]';&lt;br /&gt;
  ii=ii+h*(A*ii+g)&lt;br /&gt;
  i(:,n+1)=ii;&lt;br /&gt;
end&lt;br /&gt;
clf&lt;br /&gt;
plot(t,i,'-','linewidth',3)&lt;br /&gt;
legend('i2(t)','i3(t)')&lt;br /&gt;
xlabel('Tiempo en segundos')&lt;br /&gt;
ylabel('Intensidad en amperios')&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:karloandre.png|600px|thumb|centro|Resolución del sistema por el método de Euler]]&lt;br /&gt;
&lt;br /&gt;
===Método del trapecio===&lt;br /&gt;
&lt;br /&gt;
Otro método más preciso sería el método del trapecio.&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
t0=0;&lt;br /&gt;
tf=0.4;&lt;br /&gt;
R1=6;&lt;br /&gt;
R2=6;&lt;br /&gt;
R3=3;&lt;br /&gt;
L1=0.3;&lt;br /&gt;
L2=0.11;&lt;br /&gt;
E=20;&lt;br /&gt;
i0=[0 0]';&lt;br /&gt;
A=[-(R1+R2)/L2 -R1/L2 ; -R1/L1 -(R1+R3)/L1];&lt;br /&gt;
N=400;&lt;br /&gt;
h=(tf-t0)/N;&lt;br /&gt;
t=t0:h:tf;&lt;br /&gt;
i=zeros(2,N+1);&lt;br /&gt;
i(:,1)=i0;&lt;br /&gt;
ii=i0;&lt;br /&gt;
% Iteraciones y(t_n) --&amp;gt; y(t_n+1)&lt;br /&gt;
for n=1:N&lt;br /&gt;
  gn=[E/L2 E/L1]';&lt;br /&gt;
  gnp1=gn;&lt;br /&gt;
  ii=(eye(2)-h/2*A)\((eye(2)+h/2*A)*ii+h/2*(gn+gnp1));&lt;br /&gt;
  i(:,n+1)=ii;&lt;br /&gt;
end&lt;br /&gt;
clf&lt;br /&gt;
plot(t,i,'-','linewidth',3)&lt;br /&gt;
legend('i2(t)','i3(t)')&lt;br /&gt;
xlabel('Tiempo en segundos')&lt;br /&gt;
ylabel('Intensidad en amperios')&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Método del trapecio.png|600px|thumb|centre|Resolución del sistema por el Método del Trapecio]]&lt;br /&gt;
&lt;br /&gt;
Podemos observar que el resultado es muy similar al obtenido mediante el método de Euler.&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Efecto al aumentar una resistencia===&lt;br /&gt;
&lt;br /&gt;
Si aumentamos el valor de una de las resistencias la solución será distinta, mediante uno de los procedimientos anteriormente descritos podemos obtener esta nueva solución.&lt;br /&gt;
El dato que vamos a cambiar es:&amp;lt;br /&amp;gt;&lt;br /&gt;
 &amp;lt;math&amp;gt; R_3=9Ω &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
t0=0;&lt;br /&gt;
tf=0.4;&lt;br /&gt;
R1=6;&lt;br /&gt;
R2=6;&lt;br /&gt;
R3=3;&lt;br /&gt;
L1=0.3;&lt;br /&gt;
L2=0.11;&lt;br /&gt;
E=20;&lt;br /&gt;
i0=[0 0]';&lt;br /&gt;
A=[-(R1+R2)/L2 -R1/L2 ; -R1/L1 -(R1+R3)/L1];&lt;br /&gt;
N=100;&lt;br /&gt;
h=(tf-t0)/N;&lt;br /&gt;
t=t0:h:tf;&lt;br /&gt;
i=zeros(2,N+1);&lt;br /&gt;
i(:,1)=i0;&lt;br /&gt;
ii=i0;&lt;br /&gt;
% Iteraciones i(t_n) --&amp;gt; i(t_n+1)&lt;br /&gt;
for n=1:N&lt;br /&gt;
  g=[E/L2 E/L1]';&lt;br /&gt;
  ii=ii+h*(A*ii+g)&lt;br /&gt;
  i(:,n+1)=ii;&lt;br /&gt;
end&lt;br /&gt;
Rn3=9;&lt;br /&gt;
j0=[0 0]';&lt;br /&gt;
B=[-(R1+R2)/L2 -R1/L2 ; -R1/L1 -(R1+Rn3)/L1];&lt;br /&gt;
N=100;&lt;br /&gt;
h=(tf-t0)/N;&lt;br /&gt;
t=t0:h:tf;&lt;br /&gt;
j=zeros(2,N+1);&lt;br /&gt;
j(:,1)=j0;&lt;br /&gt;
jj=j0;&lt;br /&gt;
% Iteraciones j(t_n) --&amp;gt; j(t_n+1)&lt;br /&gt;
for n=1:N&lt;br /&gt;
  g=[E/L2 E/L1]';&lt;br /&gt;
  jj=jj+h*(B*jj+g)&lt;br /&gt;
  j(:,n+1)=jj;&lt;br /&gt;
end&lt;br /&gt;
hold on&lt;br /&gt;
plot(t,i,'-','linewidth',2)&lt;br /&gt;
legend('i2(t)','i3(t)')&lt;br /&gt;
plot(t,j,'x','linewidth',2)&lt;br /&gt;
xlabel('Tiempo en segundos')&lt;br /&gt;
ylabel('Intensidad en amperios')&lt;br /&gt;
hold off&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Comparacion2.png|600px|miniaturadeimagen|centro|Comparación resultados (cambio R3)]]&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
Podemos observar en la gráfica que al aumentar el valor de una de las resistencias, la intensidad se estabiliza en un periodo de tiempo más reducido y debido a la ley de Ohm, la tercera intensidad decrece bastante.&lt;br /&gt;
&lt;br /&gt;
===Cálculo intensidades iniciales===&lt;br /&gt;
Para resolver ecuaciones diferenciales, es habitual considerar como condiciones iniciales t=0, pero no siempre es necesario, se puede tomar cualquier t. En este caso consideraremos los siguientes datos: &amp;lt;br /&amp;gt;&lt;br /&gt;
 &amp;lt;math&amp;gt; t_0=0.02s &amp;lt;/math&amp;gt;&lt;br /&gt;
 &amp;lt;math&amp;gt; i_2(0)=1A &amp;lt;/math&amp;gt;&lt;br /&gt;
 &amp;lt;math&amp;gt; i_3(0)=1A &amp;lt;/math&amp;gt;&lt;br /&gt;
Aunque empleemos una t&amp;gt;0, necesitamos deducir las intensidades en t=0, para ello utilizaremos el método de Euler pero teniendo en cuenta que el paso es negativo para progresar desde nuestro tiempo inicial (0,02s) a nuestro tiempo final (0s) . Con ayuda de esto conseguiremos::&lt;br /&gt;
&amp;lt;math&amp;gt; i_{n+1}=i_n+h*f(t_n,i_n) → i_{n-1}=i_n-h*f(t_n,i_n) &amp;lt;/math&amp;gt;&lt;br /&gt;
Siendo la función: &amp;lt;br /&amp;gt;&lt;br /&gt;
 &amp;lt;math&amp;gt; i'(t)=A*i(t)+g &amp;lt;/math&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
t0=0.02;&lt;br /&gt;
tf=0;&lt;br /&gt;
R1=6;&lt;br /&gt;
R2=6;&lt;br /&gt;
R3=3;&lt;br /&gt;
L1=0.3;&lt;br /&gt;
L2=0.11;&lt;br /&gt;
E=20;&lt;br /&gt;
i0=[1 1]';&lt;br /&gt;
A=[-(R1+R2)/L2 -R1/L2 ; -R1/L1 -(R1+R3)/L1];&lt;br /&gt;
N=400;&lt;br /&gt;
h=(tf-t0)/N;&lt;br /&gt;
t=t0:h:tf;&lt;br /&gt;
i=zeros(2,N+1);&lt;br /&gt;
i(:,1)=i0;&lt;br /&gt;
ii=i0;&lt;br /&gt;
% Iteraciones i(t_n) --&amp;gt; i(t_n+1)&lt;br /&gt;
for n=1:N&lt;br /&gt;
  g=[E/L2 E/L1]';&lt;br /&gt;
  ii=ii+h*(A*ii+g)&lt;br /&gt;
  i(:,n+1)=ii;&lt;br /&gt;
end&lt;br /&gt;
clf&lt;br /&gt;
plot(t,i,'-','linewidth',3)&lt;br /&gt;
legend('i2(t)','i3(t)')&lt;br /&gt;
xlabel('Tiempo en segundos')&lt;br /&gt;
ylabel('Intensidad en amperios')&lt;br /&gt;
}}&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
Finalmente, gracias a este método obtendremos  una gráfica para conocer la evolución de la intensidad:&lt;br /&gt;
&lt;br /&gt;
[[Archivo:graficachungados.png|600px|thumb|centro|Evolución de las intensidades con condición inicial en t=0,02s]]&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
En ella podemos apreciar que las intensidades en el instante t=0s alcanza los siguientes valores::&amp;lt;br /&amp;gt;&lt;br /&gt;
 &amp;lt;math&amp;gt; i_2(0)=-0,9313A &amp;lt;/math&amp;gt;&lt;br /&gt;
 &amp;lt;math&amp;gt; i_3(0)=0,2708A &amp;lt;/math&amp;gt;&lt;br /&gt;
[[Categoría:Ecuaciones Diferentiales]]&lt;br /&gt;
[[Categoría:ED13/14]]&lt;br /&gt;
[[Categoría:Trabajos 2013-14]]&lt;/div&gt;</summary>
		<author><name>Karlo André</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Circuitos_el%C3%A9ctricos_RL_(Resistencia-Inductancia)&amp;diff=10243</id>
		<title>Circuitos eléctricos RL (Resistencia-Inductancia)</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Circuitos_el%C3%A9ctricos_RL_(Resistencia-Inductancia)&amp;diff=10243"/>
				<updated>2014-03-05T12:17:16Z</updated>
		
		<summary type="html">&lt;p&gt;Karlo André: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;br /&gt;
&lt;br /&gt;
{{ TrabajoED | Circuitos eléctricos RL. Grupo 10-B | [[:Categoría:Ecuaciones Diferenciales|Ecuaciones Diferenciales]]|[[:Categoría:ED13/14|Curso 2013-14]] | Alejandro Giménez Alves, Miguel Aparicio Martín Romo, Nuria Trapote García, Karlo André Palomino Paredes }}&lt;br /&gt;
&lt;br /&gt;
==Circuito eléctrico RL==&lt;br /&gt;
&lt;br /&gt;
El circuito eléctrico RL más simple tiene un inductor o bobina, una resistencia y una fuente de alimentación. &lt;br /&gt;
&lt;br /&gt;
* En una resistencia R, la ley de Ohm establece:: &amp;lt;math&amp;gt;i(t) = \frac{v(t)}{R}&amp;lt;/math&amp;gt;&lt;br /&gt;
donde: &amp;lt;br /&amp;gt;&lt;br /&gt;
 &amp;lt;math&amp;gt; i(t) &amp;lt;/math&amp;gt; = intesidad de corriente (&amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt;)&amp;lt;br /&amp;gt;&lt;br /&gt;
 &amp;lt;math&amp;gt; v(t) &amp;lt;/math&amp;gt; = voltaje (&amp;lt;math&amp;gt;V&amp;lt;/math&amp;gt;)&amp;lt;br /&amp;gt;&lt;br /&gt;
 &amp;lt;math&amp;gt; R &amp;lt;/math&amp;gt; = coeficiente de resistencia (&amp;lt;math&amp;gt;Ω&amp;lt;/math&amp;gt;)&lt;br /&gt;
* En un inductor L, la ley de Faraday establece:: &amp;lt;math&amp;gt;v(t) = L\frac{d}{d_t}i(t)=L\cdot i'(t)&amp;lt;/math&amp;gt;&lt;br /&gt;
donde: &amp;lt;br /&amp;gt;&lt;br /&gt;
 &amp;lt;math&amp;gt; L &amp;lt;/math&amp;gt; = coeficiente de autoinducción (&amp;lt;math&amp;gt;H&amp;lt;/math&amp;gt;)&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
Las leyes de Kirchoff establecen el comportamiento de los circuitos:&lt;br /&gt;
# '''''Ley de corriente:''''' en cada nodo la suma de corrientes que entra coincide con la suma de corrientes que sale.&lt;br /&gt;
# '''''Ley de tensiones:''''' en cada ciclo cerrado, la suma de las diferencias de potencial eléctrico es nula.&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Ley de Kirchoff en un circuito simple (malla 1)== &lt;br /&gt;
&lt;br /&gt;
[[Archivo:cicuito1.jpg|200px|thumb|right|Circuito simple (malla 1)]]&lt;br /&gt;
&lt;br /&gt;
Cuando cerramos el circuito, la cantidad de voltaje total segun ''' &amp;quot;la ley de tensiones de Kirchoff&amp;quot; ''' será la suma del voltaje que hay en la resistencia (intensidad por resistencia) y el que hay en la bobina (resistencia de la bobina por la derivada de la intensidad con respecto al tiempo). En un circuito RL cerrado, aplicando las leyes de Kirchoff, nos da la siguiente ecuación diferencial::&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; i'(t)+{R\over L}i(t)-{V(t)\over L}=0 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Método analítico===&lt;br /&gt;
&lt;br /&gt;
En el instante t=0, el circuito está abierto, por lo que la intensidad que circula es nula (&amp;lt;math&amp;gt; i_0(t)=0 &amp;lt;/math&amp;gt;). En el momento en el que t&amp;gt;0, el circuito adquiere una intensidad, que con las condiciones: &lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
  &amp;lt;math&amp;gt; V(t)=20V &amp;lt;/math&amp;gt; &amp;lt;br /&amp;gt;&lt;br /&gt;
  &amp;lt;math&amp;gt; L=0.2 &amp;lt;/math&amp;gt; &amp;lt;br /&amp;gt;&lt;br /&gt;
  &amp;lt;math&amp;gt;R=5Ω &amp;lt;/math&amp;gt; &lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
hará que la ecuacion diferencial sea: &amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;math&amp;gt;L\frac{d}{dt}i(t)+R\cdot i=V_0 \hspace{0.5cm} \rightarrow \hspace{0.5cm} &amp;lt;/math&amp;gt; &lt;br /&gt;
&amp;lt;math&amp;gt;i'(t)+\frac{R}{L}i(t)=\frac{V}{L} \hspace{0.5cm} \rightarrow \hspace{0.5cm} &amp;lt;/math&amp;gt; &lt;br /&gt;
&amp;lt;math&amp;gt;i \cdot e^{\int{\frac{R}{L}dt}} = \int{e^{\frac{R \cdot t}{L}}dt} \hspace{0.5cm} \rightarrow \hspace{0.5cm} &amp;lt;/math&amp;gt; &lt;br /&gt;
&amp;lt;math&amp;gt;i \cdot e^{\frac{R \cdot t}{L}} = \frac{V}{R}e^{\frac{R \cdot t}{L}}+C&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;Obteniendo como solución de la ecuación diferencial::&lt;br /&gt;
&amp;lt;math&amp;gt;i(t) = \frac{V}{R} + C \cdot e^{\frac{-R \cdot t}{L}}&amp;lt;/math&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
En t=0, el circuito está cerrado. Con la condición inicial &amp;lt;math&amp;gt;i(0)=0 &amp;lt;/math&amp;gt;, obtenemos el valor de la constante &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt;:: &amp;lt;math&amp;gt;i(0)=0 \Rightarrow C= - \frac{V}{R}&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
Finalmente, la solución resulta::&lt;br /&gt;
&amp;lt;math&amp;gt; i(t)= \frac{V}{R} - \frac{V}{R} e^{(-\frac{R}{L})t} = 4-4e^{-25t} &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Con la gráfica:&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
t=[0:0.0001:1];&lt;br /&gt;
i=4-4*exp(-25*t); &lt;br /&gt;
figure(1)&lt;br /&gt;
plot(t,i,'-b','linewidth',5)&lt;br /&gt;
xlabel('Tiempo en segundos');&lt;br /&gt;
ylabel('Intensidad en amperios');&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Image:alex.png|center|thumb|1000px|Solución]]&lt;br /&gt;
&lt;br /&gt;
Si observamos con detenimiento la gráfica, vemos que la variación de la intesidad sigue una ley exponencial que ha medida que pasa el tiempo, crece de manera muy rápida, debido a que en la malla empieza a circular una corriente de manera prácticamente instantánea una vez cerramos el circuito. &amp;lt;br /&amp;gt;&lt;br /&gt;
Por otro lado, vemos que el intervalo de tiempo en el que la intensidad pasa de 0 a 4 amperios (se vuelve constante) es muy pequeño.&lt;br /&gt;
&lt;br /&gt;
=== Método de Euler===&lt;br /&gt;
&lt;br /&gt;
Este método se basa en un procedimiento de integración numérica para resolver ecuaciones diferenciales ordinarias a partir de un valor inicial dado, donde se aproxima el valor de la función a la tangente en cada punto. &amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Con la gráfica:&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
V=20;&lt;br /&gt;
R=5;&lt;br /&gt;
L=0.2;&lt;br /&gt;
t0=0; &lt;br /&gt;
tN=1;&lt;br /&gt;
h=0.0000001;&lt;br /&gt;
N=(tN-t0)/h;&lt;br /&gt;
i0=0;&lt;br /&gt;
ii=i0;&lt;br /&gt;
i(1)=ii;&lt;br /&gt;
for n=1:N&lt;br /&gt;
ii=ii+h*[V/L+(-R/L)*ii];&lt;br /&gt;
i(n+1)=ii;&lt;br /&gt;
end&lt;br /&gt;
t=t0:h:tN;&lt;br /&gt;
figure(1)&lt;br /&gt;
plot(t,i,'-r','linewidth',5)&lt;br /&gt;
xlabel('Tiempo en segundos');&lt;br /&gt;
ylabel('Intensidad en amperios');&lt;br /&gt;
}}&lt;br /&gt;
Como estamos usando un método explícito para aproximar una función exponencial de elevada pendiente, el paso de discretización temporal ha de ser muy pequeño (para que sea estable). &amp;lt;br /&amp;gt;&lt;br /&gt;
Cuanto más cercanos cojamos los puntos, mayor será la aproximación al resultado real, haciéndolo más exacto (ya que el error acumulado será menor). &amp;lt;br /&amp;gt;&lt;br /&gt;
[[Image:alexx.png|center|thumb|1000px|Solución Euler]]&lt;br /&gt;
&lt;br /&gt;
===Método del trapecio=== &lt;br /&gt;
&lt;br /&gt;
Este método se basa en la integración numérica, es decir, es un método para calcular aproximadamente el valor de una integral definida. &amp;lt;br /&amp;gt;&lt;br /&gt;
Se basa en aproximar en la valor de la integral de la función por el de la función lineal que pasa a través de los puntos de inicio y final de la función, aproximandolo al área de un trapecio. El método del trapecio es más exacto que el de Euler.&amp;lt;br /&amp;gt;&lt;br /&gt;
Con la gráfica:&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
V=20;&lt;br /&gt;
R=5;&lt;br /&gt;
L=0.2;&lt;br /&gt;
t0=0; &lt;br /&gt;
tN=1;&lt;br /&gt;
N=100000; &lt;br /&gt;
h=(tN-t0)/N;&lt;br /&gt;
t=t0:h:tN;&lt;br /&gt;
i=t*0;&lt;br /&gt;
i0=0;&lt;br /&gt;
ii=i0;&lt;br /&gt;
i(1)=ii;&lt;br /&gt;
for n=1:N&lt;br /&gt;
    %% Aplicando el método del trapecio, cuya expresión es i_n+1=i_n+h/2*(f(t_n,i_n)+f(t_n+1,i_n+1).&lt;br /&gt;
    %% Despejando el término i_n+1 resulta la expresion siguiente.&lt;br /&gt;
    ii=((1-(h*R)/(2*L))*ii+h*V/L)/(1+((h*R)/(2*L)));&lt;br /&gt;
    i(n+1)=ii;&lt;br /&gt;
end&lt;br /&gt;
figure(1)&lt;br /&gt;
plot(t,i,'-y','linewidth',5)&lt;br /&gt;
xlabel('Tiempo en segundos');&lt;br /&gt;
ylabel('Intensidad en amperios');&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Image:miguel.png|center|thumb|1000px|Solución Trapecio]]&lt;br /&gt;
&lt;br /&gt;
Podemos observar que la intensidad se estabiliza a un valor constante en un período de tiempo muy corto (aproximadamente 0.2 segundos), casi de manera instantánea. &amp;lt;br /&amp;gt;&lt;br /&gt;
Cuánto más aumentemos L, más tiempo tardará la intensidad en llegar a ser una constante.&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
==Ley de Kirchoff en un circuito complejo (malla 2)==&lt;br /&gt;
&lt;br /&gt;
[[Archivo:nuria.png|200px|thumb|right|Circuito completo (malla 2)]]&lt;br /&gt;
&lt;br /&gt;
Según las  leyes de Kirchoff, el sistema de ecuaciones diferenciales correspondiente al circuito 2 es el siguiente:&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
* &amp;lt;math&amp;gt;E(t) = R_1\cdot i_1(t) + L_2\cdot \frac{d}{dt} i_2(t) + R_2\cdot i_2(t)&amp;lt;/math&amp;gt;: corresponde al recorrido exterior del circuito. &lt;br /&gt;
* &amp;lt;math&amp;gt;E(t) = R_1\cdot i_1(t) + L_1\cdot \frac{d}{dt} i_3(t) + R_3\cdot i_3(t)&amp;lt;/math&amp;gt;: corresponde a la malla 1.&lt;br /&gt;
* &amp;lt;math&amp;gt;i_1(t) = i_2(t) + i_3(t)&amp;lt;/math&amp;gt;: es la correspondiente a la Ley de corriente de Kirchoff.&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
donde &amp;lt;br /&amp;gt;&lt;br /&gt;
 &amp;lt;math&amp;gt;i_1(t)&amp;lt;/math&amp;gt; = intensidad de la malla 1 &amp;lt;br /&amp;gt; &lt;br /&gt;
 &amp;lt;math&amp;gt;i_2(t)&amp;lt;/math&amp;gt; = intensidad de la malla 2 &amp;lt;br /&amp;gt;&lt;br /&gt;
 &amp;lt;math&amp;gt;i_3(t)&amp;lt;/math&amp;gt; = intensidad de la intersección de mallas &amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Sustituyendo la tercera ecuación enlas otras dos se obtiene el sistema en términos de &amp;lt;math&amp;gt;i_2(t)&amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt;i_3(t)&amp;lt;/math&amp;gt;:&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
* &amp;lt;math&amp;gt; i_2'(t)+{R_1+R_2\over L_2}i_2(t)+{R_1\over L_2}i_3(t)={E(t)\over L_2} &amp;lt;/math&amp;gt;&lt;br /&gt;
* &amp;lt;math&amp;gt; i_3'(t)+{R_1\over L_1}i_2(t)+{R_1+R_3\over L_1}i_3(t)={E(t)\over L_1} &amp;lt;/math&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
Matricialmente::&amp;lt;math&amp;gt;\frac{d}{dt}\begin{pmatrix} i_2\\i_3 \end{pmatrix} = - \begin{pmatrix} \frac{R_1+R_2}{L_2}&amp;amp;\frac{R_1}{L_2} \\ \frac{R_1}{L_1}&amp;amp;\frac{R_1+R_3}{L_1} \end{pmatrix}\begin{pmatrix} i_2\\i_3 \end{pmatrix} + \begin{pmatrix} \frac{E}{L_2} \\ \frac{E}{L_1} \end{pmatrix}&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
A partir de las condiciones iniciales &amp;lt;math&amp;gt;i_2(0)&amp;lt;/math&amp;gt; = &amp;lt;math&amp;gt;i_3(0)&amp;lt;/math&amp;gt; = 0; y por consiguiente &amp;lt;math&amp;gt;i_2'(0)&amp;lt;/math&amp;gt; = &amp;lt;math&amp;gt;i_3'(0)&amp;lt;/math&amp;gt; = 0, se puede interpretar que la corriente en el circuito es nula en el momento inicial, cuando se conecta el generador.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Método de Euler===&lt;br /&gt;
&lt;br /&gt;
Resolveremos el sistema anterior para los siguientes datos: &amp;lt;br /&amp;gt;&lt;br /&gt;
 &amp;lt;math&amp;gt; R_1=R_2=6Ω &amp;lt;/math&amp;gt; &amp;lt;br /&amp;gt;&lt;br /&gt;
 &amp;lt;math&amp;gt; R_3=3Ω &amp;lt;/math&amp;gt; &amp;lt;br /&amp;gt;&lt;br /&gt;
 &amp;lt;math&amp;gt; L_1=0.3H &amp;lt;/math&amp;gt; &amp;lt;br /&amp;gt;&lt;br /&gt;
 &amp;lt;math&amp;gt; L_2=0.11H &amp;lt;/math&amp;gt; &amp;lt;br /&amp;gt;&lt;br /&gt;
 &amp;lt;math&amp;gt; E(t)=20V &amp;lt;/math&amp;gt; &amp;lt;br /&amp;gt;&lt;br /&gt;
Para ello emplearemos el método de Euler utilizando Matlab. &lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
t0=0;&lt;br /&gt;
tf=0.4;&lt;br /&gt;
R1=6;&lt;br /&gt;
R2=6;&lt;br /&gt;
R3=3;&lt;br /&gt;
L1=0.3;&lt;br /&gt;
L2=0.11;&lt;br /&gt;
E=20;&lt;br /&gt;
i0=[0 0]';&lt;br /&gt;
A=[-(R1+R2)/L2 -R1/L2 ; -R1/L1 -(R1+R3)/L1];&lt;br /&gt;
N=400;&lt;br /&gt;
h=(tf-t0)/N;&lt;br /&gt;
t=t0:h:tf;&lt;br /&gt;
i=zeros(2,N+1);&lt;br /&gt;
i(:,1)=i0;&lt;br /&gt;
ii=i0;&lt;br /&gt;
% Iteraciones i(t_n) --&amp;gt; i(t_n+1)&lt;br /&gt;
for n=1:N&lt;br /&gt;
  g=[E/L2 E/L1]';&lt;br /&gt;
  ii=ii+h*(A*ii+g)&lt;br /&gt;
  i(:,n+1)=ii;&lt;br /&gt;
end&lt;br /&gt;
clf&lt;br /&gt;
plot(t,i,'-','linewidth',3)&lt;br /&gt;
legend('i2(t)','i3(t)')&lt;br /&gt;
xlabel('Tiempo en segundos')&lt;br /&gt;
ylabel('Intensidad en amperios')&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:karloandre.png|600px|thumb|centro|Resolución del sistema por el método de Euler]]&lt;br /&gt;
&lt;br /&gt;
===Método del trapecio===&lt;br /&gt;
&lt;br /&gt;
Otro método más preciso sería el método del trapecio.&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
t0=0;&lt;br /&gt;
tf=0.4;&lt;br /&gt;
R1=6;&lt;br /&gt;
R2=6;&lt;br /&gt;
R3=3;&lt;br /&gt;
L1=0.3;&lt;br /&gt;
L2=0.11;&lt;br /&gt;
E=20;&lt;br /&gt;
i0=[0 0]';&lt;br /&gt;
A=[-(R1+R2)/L2 -R1/L2 ; -R1/L1 -(R1+R3)/L1];&lt;br /&gt;
N=400;&lt;br /&gt;
h=(tf-t0)/N;&lt;br /&gt;
t=t0:h:tf;&lt;br /&gt;
i=zeros(2,N+1);&lt;br /&gt;
i(:,1)=i0;&lt;br /&gt;
ii=i0;&lt;br /&gt;
% Iteraciones y(t_n) --&amp;gt; y(t_n+1)&lt;br /&gt;
for n=1:N&lt;br /&gt;
  gn=[E/L2 E/L1]';&lt;br /&gt;
  gnp1=gn;&lt;br /&gt;
  ii=(eye(2)-h/2*A)\((eye(2)+h/2*A)*ii+h/2*(gn+gnp1));&lt;br /&gt;
  i(:,n+1)=ii;&lt;br /&gt;
end&lt;br /&gt;
clf&lt;br /&gt;
plot(t,i,'-','linewidth',3)&lt;br /&gt;
legend('i2(t)','i3(t)')&lt;br /&gt;
xlabel('Tiempo en segundos')&lt;br /&gt;
ylabel('Intensidad en amperios')&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Método del trapecio.png|600px|thumb|centre|Resolución del sistema por el Método del Trapecio]]&lt;br /&gt;
&lt;br /&gt;
Podemos observar que el resultado es muy similar al obtenido mediante el método de Euler.&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Efecto al aumentar una resistencia===&lt;br /&gt;
&lt;br /&gt;
Si aumentamos el valor de una de las resistencias la solución será distinta, mediante uno de los procedimientos anteriormente descritos podemos obtener esta nueva solución.&lt;br /&gt;
El dato que vamos a cambiar es:&amp;lt;br /&amp;gt;&lt;br /&gt;
 &amp;lt;math&amp;gt; R_3=9Ω &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
t0=0;&lt;br /&gt;
tf=0.4;&lt;br /&gt;
R1=6;&lt;br /&gt;
R2=6;&lt;br /&gt;
R3=3;&lt;br /&gt;
L1=0.3;&lt;br /&gt;
L2=0.11;&lt;br /&gt;
E=20;&lt;br /&gt;
i0=[0 0]';&lt;br /&gt;
A=[-(R1+R2)/L2 -R1/L2 ; -R1/L1 -(R1+R3)/L1];&lt;br /&gt;
N=100;&lt;br /&gt;
h=(tf-t0)/N;&lt;br /&gt;
t=t0:h:tf;&lt;br /&gt;
i=zeros(2,N+1);&lt;br /&gt;
i(:,1)=i0;&lt;br /&gt;
ii=i0;&lt;br /&gt;
% Iteraciones i(t_n) --&amp;gt; i(t_n+1)&lt;br /&gt;
for n=1:N&lt;br /&gt;
  g=[E/L2 E/L1]';&lt;br /&gt;
  ii=ii+h*(A*ii+g)&lt;br /&gt;
  i(:,n+1)=ii;&lt;br /&gt;
end&lt;br /&gt;
Rn3=9;&lt;br /&gt;
j0=[0 0]';&lt;br /&gt;
B=[-(R1+R2)/L2 -R1/L2 ; -R1/L1 -(R1+Rn3)/L1];&lt;br /&gt;
N=100;&lt;br /&gt;
h=(tf-t0)/N;&lt;br /&gt;
t=t0:h:tf;&lt;br /&gt;
j=zeros(2,N+1);&lt;br /&gt;
j(:,1)=j0;&lt;br /&gt;
jj=j0;&lt;br /&gt;
% Iteraciones j(t_n) --&amp;gt; j(t_n+1)&lt;br /&gt;
for n=1:N&lt;br /&gt;
  g=[E/L2 E/L1]';&lt;br /&gt;
  jj=jj+h*(B*jj+g)&lt;br /&gt;
  j(:,n+1)=jj;&lt;br /&gt;
end&lt;br /&gt;
hold on&lt;br /&gt;
plot(t,i,'-','linewidth',2)&lt;br /&gt;
legend('i2(t)','i3(t)')&lt;br /&gt;
plot(t,j,'x','linewidth',2)&lt;br /&gt;
xlabel('Tiempo en segundos')&lt;br /&gt;
ylabel('Intensidad en amperios')&lt;br /&gt;
hold off&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Comparacion2.png|600px|miniaturadeimagen|centro|Comparación resultados (cambio R3)]]&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
Podemos observar en la gráfica que al aumentar el valor de una de las resistencias, la intensidad se estabiliza en un periodo de tiempo más reducido y debido a la ley de Ohm, la tercera intensidad decrece bastante.&lt;br /&gt;
&lt;br /&gt;
===Cálculo intensidades iniciales===&lt;br /&gt;
Para resolver ecuaciones diferenciales, es habitual considerar como condiciones iniciales t=0, pero no siempre es necesario, se puede tomar cualquier t. En este caso consideraremos los siguientes datos: &amp;lt;br /&amp;gt;&lt;br /&gt;
 &amp;lt;math&amp;gt; t_0=0.02s &amp;lt;/math&amp;gt;&lt;br /&gt;
 &amp;lt;math&amp;gt; i_2(0)=1A &amp;lt;/math&amp;gt;&lt;br /&gt;
 &amp;lt;math&amp;gt; i_3(0)=1A &amp;lt;/math&amp;gt;&lt;br /&gt;
Aunque empleemos una t&amp;gt;0, necesitamos deducir las intensidades en t=0, para ello utilizaremos el método de Euler pero teniendo en cuenta que el paso es negativo para progresar desde nuestro tiempo inicial (0,02s) a nuestro tiempo final (0s) . Con ayuda de esto conseguiremos::&lt;br /&gt;
&amp;lt;math&amp;gt; i_{n+1}=i_n+h*f(t_n,i_n) → i_{n-1}=i_n-h*f(t_n,i_n) &amp;lt;/math&amp;gt;&lt;br /&gt;
Siendo la función: &amp;lt;br /&amp;gt;&lt;br /&gt;
 &amp;lt;math&amp;gt; i'(t)=A*i(t)+g &amp;lt;/math&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
t0=0.02;&lt;br /&gt;
tf=0;&lt;br /&gt;
R1=6;&lt;br /&gt;
R2=6;&lt;br /&gt;
R3=3;&lt;br /&gt;
L1=0.3;&lt;br /&gt;
L2=0.11;&lt;br /&gt;
E=20;&lt;br /&gt;
i0=[1 1]';&lt;br /&gt;
A=[-(R1+R2)/L2 -R1/L2 ; -R1/L1 -(R1+R3)/L1];&lt;br /&gt;
N=400;&lt;br /&gt;
h=(tf-t0)/N;&lt;br /&gt;
t=t0:h:tf;&lt;br /&gt;
i=zeros(2,N+1);&lt;br /&gt;
i(:,1)=i0;&lt;br /&gt;
ii=i0;&lt;br /&gt;
% Iteraciones i(t_n) --&amp;gt; i(t_n+1)&lt;br /&gt;
for n=1:N&lt;br /&gt;
  g=[E/L2 E/L1]';&lt;br /&gt;
  ii=ii+h*(A*ii+g)&lt;br /&gt;
  i(:,n+1)=ii;&lt;br /&gt;
end&lt;br /&gt;
clf&lt;br /&gt;
plot(t,i,'-','linewidth',3)&lt;br /&gt;
legend('i2(t)','i3(t)')&lt;br /&gt;
xlabel('Tiempo en segundos')&lt;br /&gt;
ylabel('Intensidad en amperios')&lt;br /&gt;
}}&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
Finalmente, gracias a este método obtendremos  una gráfica para conocer la evolución de la intensidad:&lt;br /&gt;
&lt;br /&gt;
[[Archivo:graficachungados.png|600px|thumb|centro|Evolución de las intensidades con condición inicial en t=0,02s]]&lt;br /&gt;
&lt;br /&gt;
[[Categoría:Ecuaciones Diferentiales]]&lt;br /&gt;
[[Categoría:ED13/14]]&lt;br /&gt;
[[Categoría:Trabajos 2013-14]]&lt;/div&gt;</summary>
		<author><name>Karlo André</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Circuitos_el%C3%A9ctricos_RL_(Resistencia-Inductancia)&amp;diff=10240</id>
		<title>Circuitos eléctricos RL (Resistencia-Inductancia)</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Circuitos_el%C3%A9ctricos_RL_(Resistencia-Inductancia)&amp;diff=10240"/>
				<updated>2014-03-05T12:16:31Z</updated>
		
		<summary type="html">&lt;p&gt;Karlo André: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;br /&gt;
&lt;br /&gt;
{{ TrabajoED | Circuitos eléctricos RL. Grupo 10-B | [[:Categoría:Ecuaciones Diferenciales|Ecuaciones Diferenciales]]|[[:Categoría:ED13/14|Curso 2013-14]] | Alejandro Giménez Alves, Miguel Aparicio Martín Romo, Nuria Trapote García, Karlo André Palomino Paredes }}&lt;br /&gt;
&lt;br /&gt;
==Circuito eléctrico RL==&lt;br /&gt;
&lt;br /&gt;
El circuito eléctrico RL más simple tiene un inductor o bobina, una resistencia y una fuente de alimentación. &lt;br /&gt;
&lt;br /&gt;
* En una resistencia R, la ley de Ohm establece:: &amp;lt;math&amp;gt;i(t) = \frac{v(t)}{R}&amp;lt;/math&amp;gt;&lt;br /&gt;
donde: &amp;lt;br /&amp;gt;&lt;br /&gt;
 &amp;lt;math&amp;gt; i(t) &amp;lt;/math&amp;gt; = intesidad de corriente (&amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt;)&amp;lt;br /&amp;gt;&lt;br /&gt;
 &amp;lt;math&amp;gt; v(t) &amp;lt;/math&amp;gt; = voltaje (&amp;lt;math&amp;gt;V&amp;lt;/math&amp;gt;)&amp;lt;br /&amp;gt;&lt;br /&gt;
 &amp;lt;math&amp;gt; R &amp;lt;/math&amp;gt; = coeficiente de resistencia (&amp;lt;math&amp;gt;Ω&amp;lt;/math&amp;gt;)&lt;br /&gt;
* En un inductor L, la ley de Faraday establece:: &amp;lt;math&amp;gt;v(t) = L\frac{d}{d_t}i(t)=L\cdot i'(t)&amp;lt;/math&amp;gt;&lt;br /&gt;
donde: &amp;lt;br /&amp;gt;&lt;br /&gt;
 &amp;lt;math&amp;gt; L &amp;lt;/math&amp;gt; = coeficiente de autoinducción (&amp;lt;math&amp;gt;H&amp;lt;/math&amp;gt;)&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
Las leyes de Kirchoff establecen el comportamiento de los circuitos:&lt;br /&gt;
# '''''Ley de corriente:''''' en cada nodo la suma de corrientes que entra coincide con la suma de corrientes que sale.&lt;br /&gt;
# '''''Ley de tensiones:''''' en cada ciclo cerrado, la suma de las diferencias de potencial eléctrico es nula.&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Ley de Kirchoff en un circuito simple (malla 1)== &lt;br /&gt;
&lt;br /&gt;
[[Archivo:cicuito1.jpg|200px|thumb|right|Circuito simple (malla 1)]]&lt;br /&gt;
&lt;br /&gt;
Cuando cerramos el circuito, la cantidad de voltaje total segun ''' &amp;quot;la ley de tensiones de Kirchoff&amp;quot; ''' será la suma del voltaje que hay en la resistencia (intensidad por resistencia) y el que hay en la bobina (resistencia de la bobina por la derivada de la intensidad con respecto al tiempo). En un circuito RL cerrado, aplicando las leyes de Kirchoff, nos da la siguiente ecuación diferencial::&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; i'(t)+{R\over L}i(t)-{V(t)\over L}=0 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Método analítico===&lt;br /&gt;
&lt;br /&gt;
En el instante t=0, el circuito está abierto, por lo que la intensidad que circula es nula (&amp;lt;math&amp;gt; i_0(t)=0 &amp;lt;/math&amp;gt;). En el momento en el que t&amp;gt;0, el circuito adquiere una intensidad, que con las condiciones: &lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
  &amp;lt;math&amp;gt; V(t)=20V &amp;lt;/math&amp;gt; &amp;lt;br /&amp;gt;&lt;br /&gt;
  &amp;lt;math&amp;gt; L=0.2 &amp;lt;/math&amp;gt; &amp;lt;br /&amp;gt;&lt;br /&gt;
  &amp;lt;math&amp;gt;R=5Ω &amp;lt;/math&amp;gt; &lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
hará que la ecuacion diferencial sea: &amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;math&amp;gt;L\frac{d}{dt}i(t)+R\cdot i=V_0 \hspace{0.5cm} \rightarrow \hspace{0.5cm} &amp;lt;/math&amp;gt; &lt;br /&gt;
&amp;lt;math&amp;gt;i'(t)+\frac{R}{L}i(t)=\frac{V}{L} \hspace{0.5cm} \rightarrow \hspace{0.5cm} &amp;lt;/math&amp;gt; &lt;br /&gt;
&amp;lt;math&amp;gt;i \cdot e^{\int{\frac{R}{L}dt}} = \int{e^{\frac{R \cdot t}{L}}dt} \hspace{0.5cm} \rightarrow \hspace{0.5cm} &amp;lt;/math&amp;gt; &lt;br /&gt;
&amp;lt;math&amp;gt;i \cdot e^{\frac{R \cdot t}{L}} = \frac{V}{R}e^{\frac{R \cdot t}{L}}+C&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;Obteniendo como solución de la ecuación diferencial::&lt;br /&gt;
&amp;lt;math&amp;gt;i(t) = \frac{V}{R} + C \cdot e^{\frac{-R \cdot t}{L}}&amp;lt;/math&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
En t=0, el circuito está cerrado. Con la condición inicial &amp;lt;math&amp;gt;i(0)=0 &amp;lt;/math&amp;gt;, obtenemos el valor de la constante &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt;:: &amp;lt;math&amp;gt;i(0)=0 \Rightarrow C= - \frac{V}{R}&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
Finalmente, la solución resulta::&lt;br /&gt;
&amp;lt;math&amp;gt; i(t)= \frac{V}{R} - \frac{V}{R} e^{(-\frac{R}{L})t} = 4-4e^{-25t} &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Con la gráfica:&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
t=[0:0.0001:1];&lt;br /&gt;
i=4-4*exp(-25*t); &lt;br /&gt;
figure(1)&lt;br /&gt;
plot(t,i,'-b','linewidth',5)&lt;br /&gt;
xlabel('Tiempo en segundos');&lt;br /&gt;
ylabel('Intensidad en amperios');&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Image:alex.png|center|thumb|1000px|Solución]]&lt;br /&gt;
&lt;br /&gt;
Si observamos con detenimiento la gráfica, vemos que la variación de la intesidad sigue una ley exponencial que ha medida que pasa el tiempo, crece de manera muy rápida, debido a que en la malla empieza a circular una corriente de manera prácticamente instantánea una vez cerramos el circuito. &amp;lt;br /&amp;gt;&lt;br /&gt;
Por otro lado, vemos que el intervalo de tiempo en el que la intensidad pasa de 0 a 4 amperios (se vuelve constante) es muy pequeño.&lt;br /&gt;
&lt;br /&gt;
=== Método de Euler===&lt;br /&gt;
&lt;br /&gt;
Este método se basa en un procedimiento de integración numérica para resolver ecuaciones diferenciales ordinarias a partir de un valor inicial dado, donde se aproxima el valor de la función a la tangente en cada punto. &amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Con la gráfica:&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
V=20;&lt;br /&gt;
R=5;&lt;br /&gt;
L=0.2;&lt;br /&gt;
t0=0; &lt;br /&gt;
tN=1;&lt;br /&gt;
h=0.0000001;&lt;br /&gt;
N=(tN-t0)/h;&lt;br /&gt;
i0=0;&lt;br /&gt;
ii=i0;&lt;br /&gt;
i(1)=ii;&lt;br /&gt;
for n=1:N&lt;br /&gt;
ii=ii+h*[V/L+(-R/L)*ii];&lt;br /&gt;
i(n+1)=ii;&lt;br /&gt;
end&lt;br /&gt;
t=t0:h:tN;&lt;br /&gt;
figure(1)&lt;br /&gt;
plot(t,i,'-r','linewidth',5)&lt;br /&gt;
xlabel('Tiempo en segundos');&lt;br /&gt;
ylabel('Intensidad en amperios');&lt;br /&gt;
}}&lt;br /&gt;
Como estamos usando un método explícito para aproximar una función exponencial de elevada pendiente, el paso de discretización temporal ha de ser muy pequeño (para que sea estable). &amp;lt;br /&amp;gt;&lt;br /&gt;
Cuanto más cercanos cojamos los puntos, mayor será la aproximación al resultado real, haciéndolo más exacto (ya que el error acumulado será menor). &amp;lt;br /&amp;gt;&lt;br /&gt;
[[Image:alexx.png|center|thumb|1000px|Solución Euler]]&lt;br /&gt;
&lt;br /&gt;
===Método del trapecio=== &lt;br /&gt;
&lt;br /&gt;
Este método se basa en la integración numérica, es decir, es un método para calcular aproximadamente el valor de una integral definida. &amp;lt;br /&amp;gt;&lt;br /&gt;
Se basa en aproximar en la valor de la integral de la función por el de la función lineal que pasa a través de los puntos de inicio y final de la función, aproximandolo al área de un trapecio. El método del trapecio es más exacto que el de Euler.&amp;lt;br /&amp;gt;&lt;br /&gt;
Con la gráfica:&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
V=20;&lt;br /&gt;
R=5;&lt;br /&gt;
L=0.2;&lt;br /&gt;
t0=0; &lt;br /&gt;
tN=1;&lt;br /&gt;
N=100000; &lt;br /&gt;
h=(tN-t0)/N;&lt;br /&gt;
t=t0:h:tN;&lt;br /&gt;
i=t*0;&lt;br /&gt;
i0=0;&lt;br /&gt;
ii=i0;&lt;br /&gt;
i(1)=ii;&lt;br /&gt;
for n=1:N&lt;br /&gt;
    %% Aplicando el método del trapecio, cuya expresión es i_n+1=i_n+h/2*(f(t_n,i_n)+f(t_n+1,i_n+1).&lt;br /&gt;
    %% Despejando el término i_n+1 resulta la expresion siguiente.&lt;br /&gt;
    ii=((1-(h*R)/(2*L))*ii+h*V/L)/(1+((h*R)/(2*L)));&lt;br /&gt;
    i(n+1)=ii;&lt;br /&gt;
end&lt;br /&gt;
figure(1)&lt;br /&gt;
plot(t,i,'-y','linewidth',5)&lt;br /&gt;
xlabel('Tiempo en segundos');&lt;br /&gt;
ylabel('Intensidad en amperios');&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Image:miguel.png|center|thumb|1000px|Solución Trapecio]]&lt;br /&gt;
&lt;br /&gt;
Podemos observar que la intensidad se estabiliza a un valor constante en un período de tiempo muy corto (aproximadamente 0.2 segundos), casi de manera instantánea. &amp;lt;br /&amp;gt;&lt;br /&gt;
Cuánto más aumentemos L, más tiempo tardará la intensidad en llegar a ser una constante.&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
==Ley de Kirchoff en un circuito complejo (malla 2)==&lt;br /&gt;
&lt;br /&gt;
[[Archivo:nuria.png|200px|thumb|right|Circuito completo (malla 2)]]&lt;br /&gt;
&lt;br /&gt;
Según las  leyes de Kirchoff, el sistema de ecuaciones diferenciales correspondiente al circuito 2 es el siguiente:&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
* &amp;lt;math&amp;gt;E(t) = R_1\cdot i_1(t) + L_2\cdot \frac{d}{dt} i_2(t) + R_2\cdot i_2(t)&amp;lt;/math&amp;gt;: corresponde al recorrido exterior del circuito. &lt;br /&gt;
* &amp;lt;math&amp;gt;E(t) = R_1\cdot i_1(t) + L_1\cdot \frac{d}{dt} i_3(t) + R_3\cdot i_3(t)&amp;lt;/math&amp;gt;: corresponde a la malla 1.&lt;br /&gt;
* &amp;lt;math&amp;gt;i_1(t) = i_2(t) + i_3(t)&amp;lt;/math&amp;gt;: es la correspondiente a la Ley de corriente de Kirchoff.&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
donde &amp;lt;br /&amp;gt;&lt;br /&gt;
 &amp;lt;math&amp;gt;i_1(t)&amp;lt;/math&amp;gt; = intensidad de la malla 1 &amp;lt;br /&amp;gt; &lt;br /&gt;
 &amp;lt;math&amp;gt;i_2(t)&amp;lt;/math&amp;gt; = intensidad de la malla 2 &amp;lt;br /&amp;gt;&lt;br /&gt;
 &amp;lt;math&amp;gt;i_3(t)&amp;lt;/math&amp;gt; = intensidad de la intersección de mallas &amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Sustituyendo la tercera ecuación enlas otras dos se obtiene el sistema en términos de &amp;lt;math&amp;gt;i_2(t)&amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt;i_3(t)&amp;lt;/math&amp;gt;:&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
* &amp;lt;math&amp;gt; i_2'(t)+{R_1+R_2\over L_2}i_2(t)+{R_1\over L_2}i_3(t)={E(t)\over L_2} &amp;lt;/math&amp;gt;&lt;br /&gt;
* &amp;lt;math&amp;gt; i_3'(t)+{R_1\over L_1}i_2(t)+{R_1+R_3\over L_1}i_3(t)={E(t)\over L_1} &amp;lt;/math&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
Matricialmente::&amp;lt;math&amp;gt;\frac{d}{dt}\begin{pmatrix} i_2\\i_3 \end{pmatrix} = - \begin{pmatrix} \frac{R_1+R_2}{L_2}&amp;amp;\frac{R_1}{L_2} \\ \frac{R_1}{L_1}&amp;amp;\frac{R_1+R_3}{L_1} \end{pmatrix}\begin{pmatrix} i_2\\i_3 \end{pmatrix} + \begin{pmatrix} \frac{E}{L_2} \\ \frac{E}{L_1} \end{pmatrix}&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
A partir de las condiciones iniciales &amp;lt;math&amp;gt;i_2(0)&amp;lt;/math&amp;gt; = &amp;lt;math&amp;gt;i_3(0)&amp;lt;/math&amp;gt; = 0; y por consiguiente &amp;lt;math&amp;gt;i_2'(0)&amp;lt;/math&amp;gt; = &amp;lt;math&amp;gt;i_3'(0)&amp;lt;/math&amp;gt; = 0, se puede interpretar que la corriente en el circuito es nula en el momento inicial, cuando se conecta el generador.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Método de Euler===&lt;br /&gt;
&lt;br /&gt;
Resolveremos el sistema anterior para los siguientes datos: &amp;lt;br /&amp;gt;&lt;br /&gt;
 &amp;lt;math&amp;gt; R_1=R_2=6Ω &amp;lt;/math&amp;gt; &amp;lt;br /&amp;gt;&lt;br /&gt;
 &amp;lt;math&amp;gt; R_3=3Ω &amp;lt;/math&amp;gt; &amp;lt;br /&amp;gt;&lt;br /&gt;
 &amp;lt;math&amp;gt; L_1=0.3H &amp;lt;/math&amp;gt; &amp;lt;br /&amp;gt;&lt;br /&gt;
 &amp;lt;math&amp;gt; L_2=0.11H &amp;lt;/math&amp;gt; &amp;lt;br /&amp;gt;&lt;br /&gt;
 &amp;lt;math&amp;gt; E(t)=20V &amp;lt;/math&amp;gt; &amp;lt;br /&amp;gt;&lt;br /&gt;
Para ello emplearemos el método de Euler utilizando Matlab. &lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
t0=0;&lt;br /&gt;
tf=0.4;&lt;br /&gt;
R1=6;&lt;br /&gt;
R2=6;&lt;br /&gt;
R3=3;&lt;br /&gt;
L1=0.3;&lt;br /&gt;
L2=0.11;&lt;br /&gt;
E=20;&lt;br /&gt;
i0=[0 0]';&lt;br /&gt;
A=[-(R1+R2)/L2 -R1/L2 ; -R1/L1 -(R1+R3)/L1];&lt;br /&gt;
N=400;&lt;br /&gt;
h=(tf-t0)/N;&lt;br /&gt;
t=t0:h:tf;&lt;br /&gt;
i=zeros(2,N+1);&lt;br /&gt;
i(:,1)=i0;&lt;br /&gt;
ii=i0;&lt;br /&gt;
% Iteraciones i(t_n) --&amp;gt; i(t_n+1)&lt;br /&gt;
for n=1:N&lt;br /&gt;
  g=[E/L2 E/L1]';&lt;br /&gt;
  ii=ii+h*(A*ii+g)&lt;br /&gt;
  i(:,n+1)=ii;&lt;br /&gt;
end&lt;br /&gt;
clf&lt;br /&gt;
plot(t,i,'-','linewidth',3)&lt;br /&gt;
legend('i2(t)','i3(t)')&lt;br /&gt;
xlabel('Tiempo en segundos')&lt;br /&gt;
ylabel('Intensidad en amperios')&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:karloandre.png|600px|thumb|centro|Resolución del sistema por el método de Euler]]&lt;br /&gt;
&lt;br /&gt;
===Método del trapecio===&lt;br /&gt;
&lt;br /&gt;
Otro método más preciso sería el método del trapecio.&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
t0=0;&lt;br /&gt;
tf=0.4;&lt;br /&gt;
R1=6;&lt;br /&gt;
R2=6;&lt;br /&gt;
R3=3;&lt;br /&gt;
L1=0.3;&lt;br /&gt;
L2=0.11;&lt;br /&gt;
E=20;&lt;br /&gt;
i0=[0 0]';&lt;br /&gt;
A=[-(R1+R2)/L2 -R1/L2 ; -R1/L1 -(R1+R3)/L1];&lt;br /&gt;
N=400;&lt;br /&gt;
h=(tf-t0)/N;&lt;br /&gt;
t=t0:h:tf;&lt;br /&gt;
i=zeros(2,N+1);&lt;br /&gt;
i(:,1)=i0;&lt;br /&gt;
ii=i0;&lt;br /&gt;
% Iteraciones y(t_n) --&amp;gt; y(t_n+1)&lt;br /&gt;
for n=1:N&lt;br /&gt;
  gn=[E/L2 E/L1]';&lt;br /&gt;
  gnp1=gn;&lt;br /&gt;
  ii=(eye(2)-h/2*A)\((eye(2)+h/2*A)*ii+h/2*(gn+gnp1));&lt;br /&gt;
  i(:,n+1)=ii;&lt;br /&gt;
end&lt;br /&gt;
clf&lt;br /&gt;
plot(t,i,'-','linewidth',3)&lt;br /&gt;
legend('i2(t)','i3(t)')&lt;br /&gt;
xlabel('Tiempo en segundos')&lt;br /&gt;
ylabel('Intensidad en amperios')&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Método del trapecio.png|600px|thumb|centre|Resolución del sistema por el Método del Trapecio]]&lt;br /&gt;
&lt;br /&gt;
Podemos observar que el resultado es muy similar al obtenido mediante el método de Euler.&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Efecto al aumentar una resistencia===&lt;br /&gt;
&lt;br /&gt;
Si aumentamos el valor de una de las resistencias la solución será distinta, mediante uno de los procedimientos anteriormente descritos podemos obtener esta nueva solución.&lt;br /&gt;
El dato que vamos a cambiar es:&amp;lt;br /&amp;gt;&lt;br /&gt;
 &amp;lt;math&amp;gt; R_3=9Ω &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
t0=0;&lt;br /&gt;
tf=0.4;&lt;br /&gt;
R1=6;&lt;br /&gt;
R2=6;&lt;br /&gt;
R3=3;&lt;br /&gt;
L1=0.3;&lt;br /&gt;
L2=0.11;&lt;br /&gt;
E=20;&lt;br /&gt;
i0=[0 0]';&lt;br /&gt;
A=[-(R1+R2)/L2 -R1/L2 ; -R1/L1 -(R1+R3)/L1];&lt;br /&gt;
N=100;&lt;br /&gt;
h=(tf-t0)/N;&lt;br /&gt;
t=t0:h:tf;&lt;br /&gt;
i=zeros(2,N+1);&lt;br /&gt;
i(:,1)=i0;&lt;br /&gt;
ii=i0;&lt;br /&gt;
% Iteraciones i(t_n) --&amp;gt; i(t_n+1)&lt;br /&gt;
for n=1:N&lt;br /&gt;
  g=[E/L2 E/L1]';&lt;br /&gt;
  ii=ii+h*(A*ii+g)&lt;br /&gt;
  i(:,n+1)=ii;&lt;br /&gt;
end&lt;br /&gt;
Rn3=9;&lt;br /&gt;
j0=[0 0]';&lt;br /&gt;
B=[-(R1+R2)/L2 -R1/L2 ; -R1/L1 -(R1+Rn3)/L1];&lt;br /&gt;
N=100;&lt;br /&gt;
h=(tf-t0)/N;&lt;br /&gt;
t=t0:h:tf;&lt;br /&gt;
j=zeros(2,N+1);&lt;br /&gt;
j(:,1)=j0;&lt;br /&gt;
jj=j0;&lt;br /&gt;
% Iteraciones j(t_n) --&amp;gt; j(t_n+1)&lt;br /&gt;
for n=1:N&lt;br /&gt;
  g=[E/L2 E/L1]';&lt;br /&gt;
  jj=jj+h*(B*jj+g)&lt;br /&gt;
  j(:,n+1)=jj;&lt;br /&gt;
end&lt;br /&gt;
hold on&lt;br /&gt;
plot(t,i,'-','linewidth',2)&lt;br /&gt;
legend('i2(t)','i3(t)')&lt;br /&gt;
plot(t,j,'x','linewidth',2)&lt;br /&gt;
xlabel('Tiempo en segundos')&lt;br /&gt;
ylabel('Intensidad en amperios')&lt;br /&gt;
hold off&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Comparacion2.png|600px|miniaturadeimagen|centro|Comparación resultados (cambio R3)]]&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
Podemos observar en la gráfica que al aumentar el valor de una de las resistencias, la intensidad se estabiliza en un periodo de tiempo más reducido y debido a la ley de Ohm, la tercera intensidad decrece bastante.&lt;br /&gt;
&lt;br /&gt;
===Cálculo intensidades iniciales===&lt;br /&gt;
Para resolver ecuaciones diferenciales, es habitual considerar como condiciones iniciales t=0, pero no siempre es necesario, se puede tomar cualquier t. En este caso consideraremos los siguientes datos: &amp;lt;br /&amp;gt;&lt;br /&gt;
 &amp;lt;math&amp;gt; t_0=0.02s &amp;lt;/math&amp;gt;&lt;br /&gt;
 &amp;lt;math&amp;gt; i_2(0)=1A &amp;lt;/math&amp;gt;&lt;br /&gt;
 &amp;lt;math&amp;gt; i_3(0)=1A &amp;lt;/math&amp;gt;&lt;br /&gt;
Aunque empleemos una t&amp;gt;0, necesitamos deducir las intensidades en t=0, para ello utilizaremos el método de Euler pero teniendo en cuenta que el paso es negativo para progresar desde nuestro tiempo inicial (0,02s) a nuestro tiempo final (0s) . Con ayuda de esto conseguiremos::&lt;br /&gt;
&amp;lt;math&amp;gt; i_{n+1}=i_n+h*f(t_n,i_n) → i_{n-1}=i_n-h*f(t_n,i_n) &amp;lt;/math&amp;gt;&lt;br /&gt;
Siendo la función: &amp;lt;br /&amp;gt;&lt;br /&gt;
 &amp;lt;math&amp;gt; i'(t)=A*i(t)+g &amp;lt;/math&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
t0=0.02;&lt;br /&gt;
tf=0;&lt;br /&gt;
R1=6;&lt;br /&gt;
R2=6;&lt;br /&gt;
R3=3;&lt;br /&gt;
L1=0.3;&lt;br /&gt;
L2=0.11;&lt;br /&gt;
E=20;&lt;br /&gt;
i0=[1 1]';&lt;br /&gt;
A=[-(R1+R2)/L2 -R1/L2 ; -R1/L1 -(R1+R3)/L1];&lt;br /&gt;
N=400;&lt;br /&gt;
h=(tf-t0)/N;&lt;br /&gt;
t=t0:h:tf;&lt;br /&gt;
i=zeros(2,N+1);&lt;br /&gt;
i(:,1)=i0;&lt;br /&gt;
ii=i0;&lt;br /&gt;
% Iteraciones i(t_n) --&amp;gt; i(t_n+1)&lt;br /&gt;
for n=1:N&lt;br /&gt;
  g=[E/L2 E/L1]';&lt;br /&gt;
  ii=ii+h*(A*ii+g)&lt;br /&gt;
  i(:,n+1)=ii;&lt;br /&gt;
end&lt;br /&gt;
clf&lt;br /&gt;
plot(t,i,'-','linewidth',3)&lt;br /&gt;
legend('i2(t)','i3(t)')&lt;br /&gt;
xlabel('Tiempo en segundos')&lt;br /&gt;
ylabel('Intensidad en amperios')&lt;br /&gt;
}}&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
Finalmente, gracias a este método obtendremos  una gráfica para conocer la evolución de la intensidad:&lt;br /&gt;
&lt;br /&gt;
[[Archivo:graficachungados.png|600|thumb|centro|Evolución de las intensidades con condición inicial en t=0,02s]]&lt;br /&gt;
&lt;br /&gt;
[[Categoría:Ecuaciones Diferentiales]]&lt;br /&gt;
[[Categoría:ED13/14]]&lt;br /&gt;
[[Categoría:Trabajos 2013-14]]&lt;/div&gt;</summary>
		<author><name>Karlo André</name></author>	</entry>

	</feed>