<?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=Marta+Cavero</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=Marta+Cavero"/>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/wiki/Especial:Contribuciones/Marta_Cavero"/>
		<updated>2026-04-28T20:46:41Z</updated>
		<subtitle>Contribuciones del usuario</subtitle>
		<generator>MediaWiki 1.26.2</generator>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Modelo_t%C3%A9rmico_de_un_edificio_(GRUPO_3)&amp;diff=34651</id>
		<title>Modelo térmico de un edificio (GRUPO 3)</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Modelo_t%C3%A9rmico_de_un_edificio_(GRUPO_3)&amp;diff=34651"/>
				<updated>2016-04-28T18:35:02Z</updated>
		
		<summary type="html">&lt;p&gt;Marta Cavero: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=Introducción y objetivo=&lt;br /&gt;
Vamos a desarrollar un modelo matemático que aproxime el comportamiento de la temperatura en un edificio con unos parámetros de aislamiento definidos y expuesto a una cierta temperatura ambiente exterior.&lt;br /&gt;
Para modelizar este suceso utilizaremos la teoría de ecuaciones diferenciales y modelos numéricos resueltos mediante programas de código Matlab (Matlab R2016a y Octave UPM).&lt;br /&gt;
=Apartado 1=&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
% TRABAJO APARTADO A&lt;br /&gt;
clear all, clc, close all&lt;br /&gt;
% Ecuación diferencial: T'(t)=1/3*(T0-T(t));&lt;br /&gt;
% Solución exacta T(t)=(T0-M0)*exp(-1/3*t)+M0;&lt;br /&gt;
&lt;br /&gt;
k=1/3; %Cte tiempo del edificio&lt;br /&gt;
M0=8; % Temperatura exterior&lt;br /&gt;
T0=14;&lt;br /&gt;
% Discretización&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=24;&lt;br /&gt;
h= input('Dame el paso: h = ');&lt;br /&gt;
N=round((tN-t0)/h);&lt;br /&gt;
&lt;br /&gt;
t=linspace(t0,tN,N+1);&lt;br /&gt;
y=zeros(size(t));&lt;br /&gt;
&lt;br /&gt;
% Solución&lt;br /&gt;
Tex=(T0-M0)*exp(-1/3*t)+M0;&lt;br /&gt;
figure&lt;br /&gt;
plot(t,Tex)&lt;br /&gt;
xlabel('Time')&lt;br /&gt;
ylabel('Temperature')&lt;br /&gt;
title('Temperature variation')&lt;br /&gt;
legend('exact ecuation')&lt;br /&gt;
% Cálculo numérico&lt;br /&gt;
T(1)=T0; %input('Valor inicial = ');&lt;br /&gt;
&lt;br /&gt;
disp('--------')&lt;br /&gt;
disp('Si no hay valor de T o t en la EDO, poner:')&lt;br /&gt;
disp('0*T ó 0*t')&lt;br /&gt;
disp('-------')&lt;br /&gt;
&lt;br /&gt;
fun=input('Introduce la función f(t,T) = ','s');&lt;br /&gt;
f=inline(fun,'t','T');&lt;br /&gt;
&lt;br /&gt;
for k=1:N&lt;br /&gt;
  T(k+1)=(T(k)+8*h/3)/(1+h/3);&lt;br /&gt;
end&lt;br /&gt;
figure&lt;br /&gt;
plot(t,T)&lt;br /&gt;
xlabel('Time')&lt;br /&gt;
ylabel('Temperature')&lt;br /&gt;
title('Temperature variation')&lt;br /&gt;
legend('Euler implicito EN INGLÉS')&lt;br /&gt;
&lt;br /&gt;
% Estudio de los errores&lt;br /&gt;
format long;&lt;br /&gt;
err=abs(Tex-T);&lt;br /&gt;
maxi= max(err);&lt;br /&gt;
% fprintf('el error máximo es %')&lt;br /&gt;
 &lt;br /&gt;
pos=1:1:length(t);&lt;br /&gt;
&lt;br /&gt;
% Tabl=[pos', t',T',Tex',err']&lt;br /&gt;
}}&lt;br /&gt;
=Apartado 2=&lt;br /&gt;
==d.)==&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
clear, close all&lt;br /&gt;
&lt;br /&gt;
%Introducimos los datos del problema&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=24;&lt;br /&gt;
T0=13;&lt;br /&gt;
disp('introduce los pasos que desees tomar en forma de vector')&lt;br /&gt;
h=input('introduzca longitud de paso: ');&lt;br /&gt;
&lt;br /&gt;
% Creamos un bucle que nos representa la solución para cada uno de los valores de h&lt;br /&gt;
for i=1:length(h)&lt;br /&gt;
    h2=h(i);&lt;br /&gt;
%discretizamos la variable independiente&lt;br /&gt;
t=t0:h2:tN;&lt;br /&gt;
f=inline('1/3*(7-5*cos((pi/12)*t)-T)+3','t','T');&lt;br /&gt;
figure(i)&lt;br /&gt;
&lt;br /&gt;
hold on&lt;br /&gt;
%definimos la función que modeliza la temperatura exterior&lt;br /&gt;
Text=7-5*cos((pi/12)*t);&lt;br /&gt;
subplot(2,1,1)&lt;br /&gt;
plot(t,Text,'b')&lt;br /&gt;
&lt;br /&gt;
%generamos el vector TE que es el que contendra la solucion por Euler&lt;br /&gt;
TE=zeros(1,length(t));&lt;br /&gt;
%Euler&lt;br /&gt;
TE(1)=T0;&lt;br /&gt;
for j=1:length(t)-1;&lt;br /&gt;
    TE(j+1)=TE(j)+h2*f(t(j),TE(j));&lt;br /&gt;
end&lt;br /&gt;
plot(t,TE,'r')&lt;br /&gt;
k=h(i);&lt;br /&gt;
%El título variará en función del paso que se utilice en cada iteración&lt;br /&gt;
title(['Método de Euler con paso ' num2str(k) ''])&lt;br /&gt;
xlabel('horas')&lt;br /&gt;
ylabel('ºC')&lt;br /&gt;
hold off&lt;br /&gt;
&lt;br /&gt;
%metodo de Runge-Kutta&lt;br /&gt;
subplot(2,1,2)&lt;br /&gt;
plot(t,Text,'b')&lt;br /&gt;
TRK=zeros(1,length(t));&lt;br /&gt;
TRK(1)=T0;&lt;br /&gt;
for j=1:length(t)-1&lt;br /&gt;
  K1=f(t(j),TRK(j));&lt;br /&gt;
  K2=f(t(j)+h2/2,TRK(j)+(h2/2)*K1);&lt;br /&gt;
  K3=f(t(j)+h2/2,TRK(j)+(h2/2)+K2);&lt;br /&gt;
  K4=f(t(j)+h2,TRK(j)+h2*K3);&lt;br /&gt;
  TRK(j+1)=TRK(j)+(h2/6)*(K1+2*K2+2*K3+K4);&lt;br /&gt;
end&lt;br /&gt;
plot(t,TRK,'r')&lt;br /&gt;
title(['Método de Runge Kutta orden 4 con paso ' num2str(k) ''])&lt;br /&gt;
xlabel('horas')&lt;br /&gt;
ylabel('ºC')&lt;br /&gt;
hold off&lt;br /&gt;
end&lt;br /&gt;
}}&lt;/div&gt;</summary>
		<author><name>Marta Cavero</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Modelo_t%C3%A9rmico_de_un_edificio_(GRUPO_3)&amp;diff=34650</id>
		<title>Modelo térmico de un edificio (GRUPO 3)</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Modelo_t%C3%A9rmico_de_un_edificio_(GRUPO_3)&amp;diff=34650"/>
				<updated>2016-04-28T18:34:35Z</updated>
		
		<summary type="html">&lt;p&gt;Marta Cavero: /* d.) */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==Introducción y objetivo==&lt;br /&gt;
Vamos a desarrollar un modelo matemático que aproxime el comportamiento de la temperatura en un edificio con unos parámetros de aislamiento definidos y expuesto a una cierta temperatura ambiente exterior.&lt;br /&gt;
Para modelizar este suceso utilizaremos la teoría de ecuaciones diferenciales y modelos numéricos resueltos mediante programas de código Matlab (Matlab R2016a y Octave UPM).&lt;br /&gt;
==Apartado 1==&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
% TRABAJO APARTADO A&lt;br /&gt;
clear all, clc, close all&lt;br /&gt;
% Ecuación diferencial: T'(t)=1/3*(T0-T(t));&lt;br /&gt;
% Solución exacta T(t)=(T0-M0)*exp(-1/3*t)+M0;&lt;br /&gt;
&lt;br /&gt;
k=1/3; %Cte tiempo del edificio&lt;br /&gt;
M0=8; % Temperatura exterior&lt;br /&gt;
T0=14;&lt;br /&gt;
% Discretización&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=24;&lt;br /&gt;
h= input('Dame el paso: h = ');&lt;br /&gt;
N=round((tN-t0)/h);&lt;br /&gt;
&lt;br /&gt;
t=linspace(t0,tN,N+1);&lt;br /&gt;
y=zeros(size(t));&lt;br /&gt;
&lt;br /&gt;
% Solución&lt;br /&gt;
Tex=(T0-M0)*exp(-1/3*t)+M0;&lt;br /&gt;
figure&lt;br /&gt;
plot(t,Tex)&lt;br /&gt;
xlabel('Time')&lt;br /&gt;
ylabel('Temperature')&lt;br /&gt;
title('Temperature variation')&lt;br /&gt;
legend('exact ecuation')&lt;br /&gt;
% Cálculo numérico&lt;br /&gt;
T(1)=T0; %input('Valor inicial = ');&lt;br /&gt;
&lt;br /&gt;
disp('--------')&lt;br /&gt;
disp('Si no hay valor de T o t en la EDO, poner:')&lt;br /&gt;
disp('0*T ó 0*t')&lt;br /&gt;
disp('-------')&lt;br /&gt;
&lt;br /&gt;
fun=input('Introduce la función f(t,T) = ','s');&lt;br /&gt;
f=inline(fun,'t','T');&lt;br /&gt;
&lt;br /&gt;
for k=1:N&lt;br /&gt;
  T(k+1)=(T(k)+8*h/3)/(1+h/3);&lt;br /&gt;
end&lt;br /&gt;
figure&lt;br /&gt;
plot(t,T)&lt;br /&gt;
xlabel('Time')&lt;br /&gt;
ylabel('Temperature')&lt;br /&gt;
title('Temperature variation')&lt;br /&gt;
legend('Euler implicito EN INGLÉS')&lt;br /&gt;
&lt;br /&gt;
% Estudio de los errores&lt;br /&gt;
format long;&lt;br /&gt;
err=abs(Tex-T);&lt;br /&gt;
maxi= max(err);&lt;br /&gt;
% fprintf('el error máximo es %')&lt;br /&gt;
 &lt;br /&gt;
pos=1:1:length(t);&lt;br /&gt;
&lt;br /&gt;
% Tabl=[pos', t',T',Tex',err']&lt;br /&gt;
}}&lt;br /&gt;
==Apartado 2==&lt;br /&gt;
==d.)==&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
clear, close all&lt;br /&gt;
&lt;br /&gt;
%Introducimos los datos del problema&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=24;&lt;br /&gt;
T0=13;&lt;br /&gt;
disp('introduce los pasos que desees tomar en forma de vector')&lt;br /&gt;
h=input('introduzca longitud de paso: ');&lt;br /&gt;
&lt;br /&gt;
% Creamos un bucle que nos representa la solución para cada uno de los valores de h&lt;br /&gt;
for i=1:length(h)&lt;br /&gt;
    h2=h(i);&lt;br /&gt;
%discretizamos la variable independiente&lt;br /&gt;
t=t0:h2:tN;&lt;br /&gt;
f=inline('1/3*(7-5*cos((pi/12)*t)-T)+3','t','T');&lt;br /&gt;
figure(i)&lt;br /&gt;
&lt;br /&gt;
hold on&lt;br /&gt;
%definimos la función que modeliza la temperatura exterior&lt;br /&gt;
Text=7-5*cos((pi/12)*t);&lt;br /&gt;
subplot(2,1,1)&lt;br /&gt;
plot(t,Text,'b')&lt;br /&gt;
&lt;br /&gt;
%generamos el vector TE que es el que contendra la solucion por Euler&lt;br /&gt;
TE=zeros(1,length(t));&lt;br /&gt;
%Euler&lt;br /&gt;
TE(1)=T0;&lt;br /&gt;
for j=1:length(t)-1;&lt;br /&gt;
    TE(j+1)=TE(j)+h2*f(t(j),TE(j));&lt;br /&gt;
end&lt;br /&gt;
plot(t,TE,'r')&lt;br /&gt;
k=h(i);&lt;br /&gt;
%El título variará en función del paso que se utilice en cada iteración&lt;br /&gt;
title(['Método de Euler con paso ' num2str(k) ''])&lt;br /&gt;
xlabel('horas')&lt;br /&gt;
ylabel('ºC')&lt;br /&gt;
hold off&lt;br /&gt;
&lt;br /&gt;
%metodo de Runge-Kutta&lt;br /&gt;
subplot(2,1,2)&lt;br /&gt;
plot(t,Text,'b')&lt;br /&gt;
TRK=zeros(1,length(t));&lt;br /&gt;
TRK(1)=T0;&lt;br /&gt;
for j=1:length(t)-1&lt;br /&gt;
  K1=f(t(j),TRK(j));&lt;br /&gt;
  K2=f(t(j)+h2/2,TRK(j)+(h2/2)*K1);&lt;br /&gt;
  K3=f(t(j)+h2/2,TRK(j)+(h2/2)+K2);&lt;br /&gt;
  K4=f(t(j)+h2,TRK(j)+h2*K3);&lt;br /&gt;
  TRK(j+1)=TRK(j)+(h2/6)*(K1+2*K2+2*K3+K4);&lt;br /&gt;
end&lt;br /&gt;
plot(t,TRK,'r')&lt;br /&gt;
title(['Método de Runge Kutta orden 4 con paso ' num2str(k) ''])&lt;br /&gt;
xlabel('horas')&lt;br /&gt;
ylabel('ºC')&lt;br /&gt;
hold off&lt;br /&gt;
end&lt;br /&gt;
}}&lt;/div&gt;</summary>
		<author><name>Marta Cavero</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Modelo_t%C3%A9rmico_de_un_edificio_(GRUPO_3)&amp;diff=34649</id>
		<title>Modelo térmico de un edificio (GRUPO 3)</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Modelo_t%C3%A9rmico_de_un_edificio_(GRUPO_3)&amp;diff=34649"/>
				<updated>2016-04-28T18:34:16Z</updated>
		
		<summary type="html">&lt;p&gt;Marta Cavero: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==Introducción y objetivo==&lt;br /&gt;
Vamos a desarrollar un modelo matemático que aproxime el comportamiento de la temperatura en un edificio con unos parámetros de aislamiento definidos y expuesto a una cierta temperatura ambiente exterior.&lt;br /&gt;
Para modelizar este suceso utilizaremos la teoría de ecuaciones diferenciales y modelos numéricos resueltos mediante programas de código Matlab (Matlab R2016a y Octave UPM).&lt;br /&gt;
==Apartado 1==&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
% TRABAJO APARTADO A&lt;br /&gt;
clear all, clc, close all&lt;br /&gt;
% Ecuación diferencial: T'(t)=1/3*(T0-T(t));&lt;br /&gt;
% Solución exacta T(t)=(T0-M0)*exp(-1/3*t)+M0;&lt;br /&gt;
&lt;br /&gt;
k=1/3; %Cte tiempo del edificio&lt;br /&gt;
M0=8; % Temperatura exterior&lt;br /&gt;
T0=14;&lt;br /&gt;
% Discretización&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=24;&lt;br /&gt;
h= input('Dame el paso: h = ');&lt;br /&gt;
N=round((tN-t0)/h);&lt;br /&gt;
&lt;br /&gt;
t=linspace(t0,tN,N+1);&lt;br /&gt;
y=zeros(size(t));&lt;br /&gt;
&lt;br /&gt;
% Solución&lt;br /&gt;
Tex=(T0-M0)*exp(-1/3*t)+M0;&lt;br /&gt;
figure&lt;br /&gt;
plot(t,Tex)&lt;br /&gt;
xlabel('Time')&lt;br /&gt;
ylabel('Temperature')&lt;br /&gt;
title('Temperature variation')&lt;br /&gt;
legend('exact ecuation')&lt;br /&gt;
% Cálculo numérico&lt;br /&gt;
T(1)=T0; %input('Valor inicial = ');&lt;br /&gt;
&lt;br /&gt;
disp('--------')&lt;br /&gt;
disp('Si no hay valor de T o t en la EDO, poner:')&lt;br /&gt;
disp('0*T ó 0*t')&lt;br /&gt;
disp('-------')&lt;br /&gt;
&lt;br /&gt;
fun=input('Introduce la función f(t,T) = ','s');&lt;br /&gt;
f=inline(fun,'t','T');&lt;br /&gt;
&lt;br /&gt;
for k=1:N&lt;br /&gt;
  T(k+1)=(T(k)+8*h/3)/(1+h/3);&lt;br /&gt;
end&lt;br /&gt;
figure&lt;br /&gt;
plot(t,T)&lt;br /&gt;
xlabel('Time')&lt;br /&gt;
ylabel('Temperature')&lt;br /&gt;
title('Temperature variation')&lt;br /&gt;
legend('Euler implicito EN INGLÉS')&lt;br /&gt;
&lt;br /&gt;
% Estudio de los errores&lt;br /&gt;
format long;&lt;br /&gt;
err=abs(Tex-T);&lt;br /&gt;
maxi= max(err);&lt;br /&gt;
% fprintf('el error máximo es %')&lt;br /&gt;
 &lt;br /&gt;
pos=1:1:length(t);&lt;br /&gt;
&lt;br /&gt;
% Tabl=[pos', t',T',Tex',err']&lt;br /&gt;
}}&lt;br /&gt;
==Apartado 2==&lt;br /&gt;
=d.)=&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
clear, close all&lt;br /&gt;
&lt;br /&gt;
%Introducimos los datos del problema&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=24;&lt;br /&gt;
T0=13;&lt;br /&gt;
disp('introduce los pasos que desees tomar en forma de vector')&lt;br /&gt;
h=input('introduzca longitud de paso: ');&lt;br /&gt;
&lt;br /&gt;
% Creamos un bucle que nos representa la solución para cada uno de los valores de h&lt;br /&gt;
for i=1:length(h)&lt;br /&gt;
    h2=h(i);&lt;br /&gt;
%discretizamos la variable independiente&lt;br /&gt;
t=t0:h2:tN;&lt;br /&gt;
f=inline('1/3*(7-5*cos((pi/12)*t)-T)+3','t','T');&lt;br /&gt;
figure(i)&lt;br /&gt;
&lt;br /&gt;
hold on&lt;br /&gt;
%definimos la función que modeliza la temperatura exterior&lt;br /&gt;
Text=7-5*cos((pi/12)*t);&lt;br /&gt;
subplot(2,1,1)&lt;br /&gt;
plot(t,Text,'b')&lt;br /&gt;
&lt;br /&gt;
%generamos el vector TE que es el que contendra la solucion por Euler&lt;br /&gt;
TE=zeros(1,length(t));&lt;br /&gt;
%Euler&lt;br /&gt;
TE(1)=T0;&lt;br /&gt;
for j=1:length(t)-1;&lt;br /&gt;
    TE(j+1)=TE(j)+h2*f(t(j),TE(j));&lt;br /&gt;
end&lt;br /&gt;
plot(t,TE,'r')&lt;br /&gt;
k=h(i);&lt;br /&gt;
%El título variará en función del paso que se utilice en cada iteración&lt;br /&gt;
title(['Método de Euler con paso ' num2str(k) ''])&lt;br /&gt;
xlabel('horas')&lt;br /&gt;
ylabel('ºC')&lt;br /&gt;
hold off&lt;br /&gt;
&lt;br /&gt;
%metodo de Runge-Kutta&lt;br /&gt;
subplot(2,1,2)&lt;br /&gt;
plot(t,Text,'b')&lt;br /&gt;
TRK=zeros(1,length(t));&lt;br /&gt;
TRK(1)=T0;&lt;br /&gt;
for j=1:length(t)-1&lt;br /&gt;
  K1=f(t(j),TRK(j));&lt;br /&gt;
  K2=f(t(j)+h2/2,TRK(j)+(h2/2)*K1);&lt;br /&gt;
  K3=f(t(j)+h2/2,TRK(j)+(h2/2)+K2);&lt;br /&gt;
  K4=f(t(j)+h2,TRK(j)+h2*K3);&lt;br /&gt;
  TRK(j+1)=TRK(j)+(h2/6)*(K1+2*K2+2*K3+K4);&lt;br /&gt;
end&lt;br /&gt;
plot(t,TRK,'r')&lt;br /&gt;
title(['Método de Runge Kutta orden 4 con paso ' num2str(k) ''])&lt;br /&gt;
xlabel('horas')&lt;br /&gt;
ylabel('ºC')&lt;br /&gt;
hold off&lt;br /&gt;
end&lt;br /&gt;
}}&lt;/div&gt;</summary>
		<author><name>Marta Cavero</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Modelo_t%C3%A9rmico_de_un_edificio_(GRUPO_3)&amp;diff=34648</id>
		<title>Modelo térmico de un edificio (GRUPO 3)</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Modelo_t%C3%A9rmico_de_un_edificio_(GRUPO_3)&amp;diff=34648"/>
				<updated>2016-04-28T18:33:41Z</updated>
		
		<summary type="html">&lt;p&gt;Marta Cavero: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==Introducción y objetivo==&lt;br /&gt;
Vamos a desarrollar un modelo matemático que aproxime el comportamiento de la temperatura en un edificio con unos parámetros de aislamiento definidos y expuesto a una cierta temperatura ambiente exterior.&lt;br /&gt;
Para modelizar este suceso utilizaremos la teoría de ecuaciones diferenciales y modelos numéricos resueltos mediante programas de código Matlab (Matlab R2016a y Octave UPM).&lt;br /&gt;
==Apartado 1==&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
% TRABAJO APARTADO A&lt;br /&gt;
clear all, clc, close all&lt;br /&gt;
% Ecuación diferencial: T'(t)=1/3*(T0-T(t));&lt;br /&gt;
% Solución exacta T(t)=(T0-M0)*exp(-1/3*t)+M0;&lt;br /&gt;
&lt;br /&gt;
k=1/3; %Cte tiempo del edificio&lt;br /&gt;
M0=8; % Temperatura exterior&lt;br /&gt;
T0=14;&lt;br /&gt;
% Discretización&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=24;&lt;br /&gt;
h= input('Dame el paso: h = ');&lt;br /&gt;
N=round((tN-t0)/h);&lt;br /&gt;
&lt;br /&gt;
t=linspace(t0,tN,N+1);&lt;br /&gt;
y=zeros(size(t));&lt;br /&gt;
&lt;br /&gt;
% Solución&lt;br /&gt;
Tex=(T0-M0)*exp(-1/3*t)+M0;&lt;br /&gt;
figure&lt;br /&gt;
plot(t,Tex)&lt;br /&gt;
xlabel('Time')&lt;br /&gt;
ylabel('Temperature')&lt;br /&gt;
title('Temperature variation')&lt;br /&gt;
legend('exact ecuation')&lt;br /&gt;
% Cálculo numérico&lt;br /&gt;
T(1)=T0; %input('Valor inicial = ');&lt;br /&gt;
&lt;br /&gt;
disp('--------')&lt;br /&gt;
disp('Si no hay valor de T o t en la EDO, poner:')&lt;br /&gt;
disp('0*T ó 0*t')&lt;br /&gt;
disp('-------')&lt;br /&gt;
&lt;br /&gt;
fun=input('Introduce la función f(t,T) = ','s');&lt;br /&gt;
f=inline(fun,'t','T');&lt;br /&gt;
&lt;br /&gt;
for k=1:N&lt;br /&gt;
  T(k+1)=(T(k)+8*h/3)/(1+h/3);&lt;br /&gt;
end&lt;br /&gt;
figure&lt;br /&gt;
plot(t,T)&lt;br /&gt;
xlabel('Time')&lt;br /&gt;
ylabel('Temperature')&lt;br /&gt;
title('Temperature variation')&lt;br /&gt;
legend('Euler implicito EN INGLÉS')&lt;br /&gt;
&lt;br /&gt;
% Estudio de los errores&lt;br /&gt;
format long;&lt;br /&gt;
err=abs(Tex-T);&lt;br /&gt;
maxi= max(err);&lt;br /&gt;
% fprintf('el error máximo es %')&lt;br /&gt;
 &lt;br /&gt;
pos=1:1:length(t);&lt;br /&gt;
&lt;br /&gt;
% Tabl=[pos', t',T',Tex',err']&lt;br /&gt;
}}&lt;br /&gt;
==Apartado 2==&lt;br /&gt;
==d.)==&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
clear, close all&lt;br /&gt;
&lt;br /&gt;
%Introducimos los datos del problema&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=24;&lt;br /&gt;
T0=13;&lt;br /&gt;
disp('introduce los pasos que desees tomar en forma de vector')&lt;br /&gt;
h=input('introduzca longitud de paso: ');&lt;br /&gt;
&lt;br /&gt;
% Creamos un bucle que nos representa la solución para cada uno de los valores de h&lt;br /&gt;
for i=1:length(h)&lt;br /&gt;
    h2=h(i);&lt;br /&gt;
%discretizamos la variable independiente&lt;br /&gt;
t=t0:h2:tN;&lt;br /&gt;
f=inline('1/3*(7-5*cos((pi/12)*t)-T)+3','t','T');&lt;br /&gt;
figure(i)&lt;br /&gt;
&lt;br /&gt;
hold on&lt;br /&gt;
%definimos la función que modeliza la temperatura exterior&lt;br /&gt;
Text=7-5*cos((pi/12)*t);&lt;br /&gt;
subplot(2,1,1)&lt;br /&gt;
plot(t,Text,'b')&lt;br /&gt;
&lt;br /&gt;
%generamos el vector TE que es el que contendra la solucion por Euler&lt;br /&gt;
TE=zeros(1,length(t));&lt;br /&gt;
%Euler&lt;br /&gt;
TE(1)=T0;&lt;br /&gt;
for j=1:length(t)-1;&lt;br /&gt;
    TE(j+1)=TE(j)+h2*f(t(j),TE(j));&lt;br /&gt;
end&lt;br /&gt;
plot(t,TE,'r')&lt;br /&gt;
k=h(i);&lt;br /&gt;
%El título variará en función del paso que se utilice en cada iteración&lt;br /&gt;
title(['Método de Euler con paso ' num2str(k) ''])&lt;br /&gt;
xlabel('horas')&lt;br /&gt;
ylabel('ºC')&lt;br /&gt;
hold off&lt;br /&gt;
&lt;br /&gt;
%metodo de Runge-Kutta&lt;br /&gt;
subplot(2,1,2)&lt;br /&gt;
plot(t,Text,'b')&lt;br /&gt;
TRK=zeros(1,length(t));&lt;br /&gt;
TRK(1)=T0;&lt;br /&gt;
for j=1:length(t)-1&lt;br /&gt;
  K1=f(t(j),TRK(j));&lt;br /&gt;
  K2=f(t(j)+h2/2,TRK(j)+(h2/2)*K1);&lt;br /&gt;
  K3=f(t(j)+h2/2,TRK(j)+(h2/2)+K2);&lt;br /&gt;
  K4=f(t(j)+h2,TRK(j)+h2*K3);&lt;br /&gt;
  TRK(j+1)=TRK(j)+(h2/6)*(K1+2*K2+2*K3+K4);&lt;br /&gt;
end&lt;br /&gt;
plot(t,TRK,'r')&lt;br /&gt;
title(['Método de Runge Kutta orden 4 con paso ' num2str(k) ''])&lt;br /&gt;
xlabel('horas')&lt;br /&gt;
ylabel('ºC')&lt;br /&gt;
hold off&lt;br /&gt;
end&lt;br /&gt;
}}&lt;/div&gt;</summary>
		<author><name>Marta Cavero</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Modelo_t%C3%A9rmico_de_un_edificio_(GRUPO_3)&amp;diff=34647</id>
		<title>Modelo térmico de un edificio (GRUPO 3)</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Modelo_t%C3%A9rmico_de_un_edificio_(GRUPO_3)&amp;diff=34647"/>
				<updated>2016-04-28T18:23:14Z</updated>
		
		<summary type="html">&lt;p&gt;Marta Cavero: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==Introducción y objetivo==&lt;br /&gt;
&lt;br /&gt;
Vamos a desarrollar un modelo matemático que aproxime el comportamiento de la temperatura en un edificio con unos parámetros de aislamiento definidos y expuesto a una cierta temperatura ambiente exterior.&lt;br /&gt;
Para modelizar este suceso utilizaremos la teoría de ecuaciones diferenciales y modelos numéricos resueltos mediante programas de código Matlab (Matlab R2016a y Octave UPM).&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
clear, close all&lt;br /&gt;
&lt;br /&gt;
%Introducimos los datos del problema&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=24;&lt;br /&gt;
T0=13;&lt;br /&gt;
disp('introduce los pasos que desees tomar en forma de vector')&lt;br /&gt;
h=input('introduzca longitud de paso: ');&lt;br /&gt;
&lt;br /&gt;
% Creamos un bucle que nos representa la solución para cada uno de los valores de h&lt;br /&gt;
for i=1:length(h)&lt;br /&gt;
    h2=h(i);&lt;br /&gt;
%discretizamos la variable independiente&lt;br /&gt;
t=t0:h2:tN;&lt;br /&gt;
f=inline('1/3*(7-5*cos((pi/12)*t)-T)+3','t','T');&lt;br /&gt;
figure(i)&lt;br /&gt;
&lt;br /&gt;
hold on&lt;br /&gt;
%definimos la función que modeliza la temperatura exterior&lt;br /&gt;
Text=7-5*cos((pi/12)*t);&lt;br /&gt;
subplot(2,1,1)&lt;br /&gt;
plot(t,Text,'b')&lt;br /&gt;
&lt;br /&gt;
%generamos el vector TE que es el que contendra la solucion por Euler&lt;br /&gt;
TE=zeros(1,length(t));&lt;br /&gt;
%Euler&lt;br /&gt;
TE(1)=T0;&lt;br /&gt;
for j=1:length(t)-1;&lt;br /&gt;
    TE(j+1)=TE(j)+h2*f(t(j),TE(j));&lt;br /&gt;
end&lt;br /&gt;
plot(t,TE,'r')&lt;br /&gt;
k=h(i);&lt;br /&gt;
%El título variará en función del paso que se utilice en cada iteración&lt;br /&gt;
title(['Método de Euler con paso ' num2str(k) ''])&lt;br /&gt;
xlabel('horas')&lt;br /&gt;
ylabel('ºC')&lt;br /&gt;
hold off&lt;br /&gt;
&lt;br /&gt;
%metodo de Runge-Kutta&lt;br /&gt;
subplot(2,1,2)&lt;br /&gt;
plot(t,Text,'b')&lt;br /&gt;
TRK=zeros(1,length(t));&lt;br /&gt;
TRK(1)=T0;&lt;br /&gt;
for j=1:length(t)-1&lt;br /&gt;
  K1=f(t(j),TRK(j));&lt;br /&gt;
  K2=f(t(j)+h2/2,TRK(j)+(h2/2)*K1);&lt;br /&gt;
  K3=f(t(j)+h2/2,TRK(j)+(h2/2)+K2);&lt;br /&gt;
  K4=f(t(j)+h2,TRK(j)+h2*K3);&lt;br /&gt;
  TRK(j+1)=TRK(j)+(h2/6)*(K1+2*K2+2*K3+K4);&lt;br /&gt;
end&lt;br /&gt;
plot(t,TRK,'r')&lt;br /&gt;
title(['Método de Runge Kutta orden 4 con paso ' num2str(k) ''])&lt;br /&gt;
xlabel('horas')&lt;br /&gt;
ylabel('ºC')&lt;br /&gt;
hold off&lt;br /&gt;
end&lt;br /&gt;
}}&lt;/div&gt;</summary>
		<author><name>Marta Cavero</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Modelo_t%C3%A9rmico_de_un_edificio_(GRUPO_3)&amp;diff=34645</id>
		<title>Modelo térmico de un edificio (GRUPO 3)</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Modelo_t%C3%A9rmico_de_un_edificio_(GRUPO_3)&amp;diff=34645"/>
				<updated>2016-04-28T18:17:06Z</updated>
		
		<summary type="html">&lt;p&gt;Marta Cavero: /* Introducción y objetivo */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==Introducción y objetivo==&lt;br /&gt;
&lt;br /&gt;
Vamos a desarrollar un modelo matemático que aproxime el comportamiento de la temperatura en un edificio con unos parámetros de aislamiento definidos y expuesto a una cierta temperatura ambiente exterior.&lt;br /&gt;
Para modelizar este suceso utilizaremos la teoría de ecuaciones diferenciales y modelos numéricos resueltos mediante programas de código Matlab (Matlab R2016a y Octave UPM).&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
clear, close all&lt;br /&gt;
%Apartado 2.d&lt;br /&gt;
%Introducir los datos del problema&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=24;&lt;br /&gt;
T0=13;&lt;br /&gt;
disp('introduce los pasos que desees tomar en forma de vector')&lt;br /&gt;
h=input('introduzca longitud de paso: ');&lt;br /&gt;
for i=1:length(h)&lt;br /&gt;
    h2=h(i);&lt;br /&gt;
%discretizamos la variable independiente&lt;br /&gt;
t=t0:h2:tN;&lt;br /&gt;
f=inline('1/3*(7-5*cos((pi/12)*t)-T)+3','t','T');&lt;br /&gt;
figure(i)&lt;br /&gt;
hold on&lt;br /&gt;
%definimos la función que modeliza la temperatura exterior&lt;br /&gt;
Text=7-5*cos((pi/12)*t);&lt;br /&gt;
subplot(2,1,1)&lt;br /&gt;
plot(t,Text,'b')&lt;br /&gt;
%generamos el vector TE que es el que contendra la solucion por Euler&lt;br /&gt;
TE=zeros(1,length(t));&lt;br /&gt;
%Euler (solucion por trapecio)&lt;br /&gt;
TE(1)=T0;&lt;br /&gt;
for j=1:length(t)-1;&lt;br /&gt;
    TE(j+1)=TE(j)+h2*f(t(j),TE(j));&lt;br /&gt;
end&lt;br /&gt;
plot(t,TE,'r')&lt;br /&gt;
k=h(i);&lt;br /&gt;
title(['Método de Euler con paso ' num2str(k) ''])&lt;br /&gt;
xlabel('horas')&lt;br /&gt;
ylabel('ºC')&lt;br /&gt;
hold off&lt;br /&gt;
&lt;br /&gt;
%metodo de Runge-Kutta&lt;br /&gt;
subplot(2,1,2)&lt;br /&gt;
plot(t,Text,'b')&lt;br /&gt;
TRK=zeros(1,length(t));&lt;br /&gt;
TRK(1)=T0;&lt;br /&gt;
for j=1:length(t)-1&lt;br /&gt;
  K1=f(t(j),TRK(j));&lt;br /&gt;
  K2=f(t(j)+h2/2,TRK(j)+(h2/2)*K1);&lt;br /&gt;
  K3=f(t(j)+h2/2,TRK(j)+(h2/2)+K2);&lt;br /&gt;
  K4=f(t(j)+h2,TRK(j)+h2*K3);&lt;br /&gt;
  TRK(j+1)=TRK(j)+(h2/6)*(K1+2*K2+2*K3+K4);&lt;br /&gt;
end&lt;br /&gt;
plot(t,TRK,'r')&lt;br /&gt;
title(['Método de Runge Kutta orden 4 con paso ' num2str(k) ''])&lt;br /&gt;
xlabel('horas')&lt;br /&gt;
ylabel('ºC')&lt;br /&gt;
hold off&lt;br /&gt;
end&lt;br /&gt;
}}&lt;/div&gt;</summary>
		<author><name>Marta Cavero</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Modelo_t%C3%A9rmico_de_un_edificio_(GRUPO_3)&amp;diff=34633</id>
		<title>Modelo térmico de un edificio (GRUPO 3)</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Modelo_t%C3%A9rmico_de_un_edificio_(GRUPO_3)&amp;diff=34633"/>
				<updated>2016-04-28T16:12:21Z</updated>
		
		<summary type="html">&lt;p&gt;Marta Cavero: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==Introducción y objetivo==&lt;br /&gt;
&lt;br /&gt;
Vamos a desarrollar un modelo matemático que aproxime el comportamiento de la temperatura en un edificio con unos parámetros de aislamiento definidos y expuesto a una cierta temperatura ambiente exterior.&lt;br /&gt;
Para modelizar este suceso utilizaremos la teoría de ecuaciones diferenciales y modelos numéricos resueltos mediante programas de código Matlab (Matlab R2016a y Octave UPM).&lt;/div&gt;</summary>
		<author><name>Marta Cavero</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Modelo_t%C3%A9rmico_de_un_edificio_(GRUPO_3)&amp;diff=34632</id>
		<title>Modelo térmico de un edificio (GRUPO 3)</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Modelo_t%C3%A9rmico_de_un_edificio_(GRUPO_3)&amp;diff=34632"/>
				<updated>2016-04-28T16:11:56Z</updated>
		
		<summary type="html">&lt;p&gt;Marta Cavero: /* # Introducción y objetivo */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==&lt;br /&gt;
#&lt;br /&gt;
 Introducción y objetivo==&lt;br /&gt;
&lt;br /&gt;
Vamos a desarrollar un modelo matemático que aproxime el comportamiento de la temperatura en un edificio con unos parámetros de aislamiento definidos y expuesto a una cierta temperatura ambiente exterior.&lt;br /&gt;
Para modelizar este suceso utilizaremos la teoría de ecuaciones diferenciales y modelos numéricos resueltos mediante programas de código Matlab (Matlab R2016a y Octave UPM).&lt;/div&gt;</summary>
		<author><name>Marta Cavero</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Modelo_t%C3%A9rmico_de_un_edificio_(GRUPO_3)&amp;diff=34631</id>
		<title>Modelo térmico de un edificio (GRUPO 3)</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Modelo_t%C3%A9rmico_de_un_edificio_(GRUPO_3)&amp;diff=34631"/>
				<updated>2016-04-28T16:11:41Z</updated>
		
		<summary type="html">&lt;p&gt;Marta Cavero: /* #Introducción y objetivo */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==# Introducción y objetivo==&lt;br /&gt;
&lt;br /&gt;
Vamos a desarrollar un modelo matemático que aproxime el comportamiento de la temperatura en un edificio con unos parámetros de aislamiento definidos y expuesto a una cierta temperatura ambiente exterior.&lt;br /&gt;
Para modelizar este suceso utilizaremos la teoría de ecuaciones diferenciales y modelos numéricos resueltos mediante programas de código Matlab (Matlab R2016a y Octave UPM).&lt;/div&gt;</summary>
		<author><name>Marta Cavero</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Modelo_t%C3%A9rmico_de_un_edificio_(GRUPO_3)&amp;diff=34630</id>
		<title>Modelo térmico de un edificio (GRUPO 3)</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Modelo_t%C3%A9rmico_de_un_edificio_(GRUPO_3)&amp;diff=34630"/>
				<updated>2016-04-28T16:11:29Z</updated>
		
		<summary type="html">&lt;p&gt;Marta Cavero: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==#Introducción y objetivo==&lt;br /&gt;
&lt;br /&gt;
Vamos a desarrollar un modelo matemático que aproxime el comportamiento de la temperatura en un edificio con unos parámetros de aislamiento definidos y expuesto a una cierta temperatura ambiente exterior.&lt;br /&gt;
Para modelizar este suceso utilizaremos la teoría de ecuaciones diferenciales y modelos numéricos resueltos mediante programas de código Matlab (Matlab R2016a y Octave UPM).&lt;/div&gt;</summary>
		<author><name>Marta Cavero</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Modelo_t%C3%A9rmico_de_un_edificio_(GRUPO_3)&amp;diff=34629</id>
		<title>Modelo térmico de un edificio (GRUPO 3)</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Modelo_t%C3%A9rmico_de_un_edificio_(GRUPO_3)&amp;diff=34629"/>
				<updated>2016-04-28T16:10:50Z</updated>
		
		<summary type="html">&lt;p&gt;Marta Cavero: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;# Introducción y objetivo&lt;br /&gt;
&lt;br /&gt;
Vamos a desarrollar un modelo matemático que aproxime el comportamiento de la temperatura en un edificio con unos parámetros de aislamiento definidos y expuesto a una cierta temperatura ambiente exterior.&lt;br /&gt;
Para modelizar este suceso utilizaremos la teoría de ecuaciones diferenciales y modelos numéricos resueltos mediante programas de código Matlab (Matlab R2016a y Octave UPM).&lt;/div&gt;</summary>
		<author><name>Marta Cavero</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Modelo_t%C3%A9rmico_de_un_edificio_(GRUPO_3)&amp;diff=34628</id>
		<title>Modelo térmico de un edificio (GRUPO 3)</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Modelo_t%C3%A9rmico_de_un_edificio_(GRUPO_3)&amp;diff=34628"/>
				<updated>2016-04-28T16:10:08Z</updated>
		
		<summary type="html">&lt;p&gt;Marta Cavero: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Introducción y objetivo ==&lt;br /&gt;
Vamos a desarrollar un modelo matemático que aproxime el comportamiento de la temperatura en un edificio con unos parámetros de aislamiento definidos y expuesto a una cierta temperatura ambiente exterior.&lt;br /&gt;
Para modelizar este suceso utilizaremos la teoría de ecuaciones diferenciales y modelos numéricos resueltos mediante programas de código Matlab (Matlab R2016a y Octave UPM).&lt;/div&gt;</summary>
		<author><name>Marta Cavero</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Modelo_t%C3%A9rmico_de_un_edificio_(GRUPO_3)&amp;diff=34627</id>
		<title>Modelo térmico de un edificio (GRUPO 3)</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Modelo_t%C3%A9rmico_de_un_edificio_(GRUPO_3)&amp;diff=34627"/>
				<updated>2016-04-28T16:09:36Z</updated>
		
		<summary type="html">&lt;p&gt;Marta Cavero: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;br /&gt;
Vamos a desarrollar un modelo matemático que aproxime el comportamiento de la temperatura en un edificio con unos parámetros de aislamiento definidos y expuesto a una cierta temperatura ambiente exterior.&lt;br /&gt;
Para modelizar este suceso utilizaremos la teoría de ecuaciones diferenciales y modelos numéricos resueltos mediante programas de código Matlab (Matlab R2016a y Octave UPM).&lt;/div&gt;</summary>
		<author><name>Marta Cavero</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Modelo_t%C3%A9rmico_de_un_edificio_(GRUPO_3)&amp;diff=34626</id>
		<title>Modelo térmico de un edificio (GRUPO 3)</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Modelo_t%C3%A9rmico_de_un_edificio_(GRUPO_3)&amp;diff=34626"/>
				<updated>2016-04-28T16:07:59Z</updated>
		
		<summary type="html">&lt;p&gt;Marta Cavero: Página creada con «Vamos a desarrollar un modelo matemático que aproxime el comportamiento de la temperatura en un edificio con unos parámetros de aislamiento definidos y expuesto a una cie...»&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Vamos a desarrollar un modelo matemático que aproxime el comportamiento de la temperatura en un edificio con unos parámetros de aislamiento definidos y expuesto a una cierta temperatura ambiente exterior.&lt;br /&gt;
Para modelizar este suceso utilizaremos la teoría de ecuaciones diferenciales y modelos numéricos resueltos mediante programas de código Matlab (Matlab R2016a y Octave UPM).&lt;/div&gt;</summary>
		<author><name>Marta Cavero</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Nivel_piezom%C3%A9trico_de_un_acu%C3%ADfero_confinado_(A5)&amp;diff=30533</id>
		<title>Nivel piezométrico de un acuífero confinado (A5)</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Nivel_piezom%C3%A9trico_de_un_acu%C3%ADfero_confinado_(A5)&amp;diff=30533"/>
				<updated>2015-05-21T21:59:26Z</updated>
		
		<summary type="html">&lt;p&gt;Marta Cavero: /* Problema estacionario */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;br /&gt;
==== Introducción ====&lt;br /&gt;
&lt;br /&gt;
Consideramos un acuífero confinado entre dos capas de terreno impermeables horizontales. Llamaremos h(x, y) al nivel piezométrico del acuífero, definido por la altura que alcanzaría el agua si hiciéramos un sondeo en el punto (x, y). Obviamente este valor depende de la presión a la que se encuentra el agua confinada en el acuífero. Supondremos&lt;br /&gt;
que el acuífero es un medio poroso saturado de agua que ocupa una región infinita y está en equilibrio de manera que &amp;lt;math&amp;gt;h(x, y) = h_0&amp;lt;/math&amp;gt; constante para todo (x, y) ∈ &amp;lt;math&amp;gt;IR^{2}&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Sobre el acuifero se construye un pozo de sección circular y radio&amp;lt;math&amp;gt; ρ_0&amp;lt;/math&amp;gt; para extraer agua. La presencia del pozo hace que el nivel piezométrico cambie. Dada la simetría del problema podemos suponer que h(x, y) sólo va a depender de la distancia al pozo. Si tomamos coordenadas cilíndricas de forma que el eje OZ coincida con el eje de simetría del pozo, entonces h = h(ρ) donde &amp;lt;math&amp;gt;ρ = \sqrt{x^{2} + y^{2}}&amp;lt;/math&amp;gt; . Trabajaremos por tanto en coordenadas polares en el plano (ρ, θ).&lt;br /&gt;
&lt;br /&gt;
Las ecuaciones que permiten conocer h(ρ) son la ecuación de conservación de la masa:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; S = \frac{∂h}{∂t} + div q = 0 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
junto con la ley de Darcy&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; q = −K∇h &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
que es una ley experimental que modela el flujo de agua en un medio poroso. La ley de Darcy establece que el flujo de agua q a través de un medio poroso es proporcional a la diferencia de presión, que a su vez se puede escribir en términos del gradiente del nivel piezométrico en cada punto. La constante K se deduce experimentalmente para cada material y se conoce como la conductividad hidráulica o permeabilidad. Cuanto mayor es la constante K mayor es el flujo de agua provocado por un cambio&lt;br /&gt;
de presión. La ley de Darcy proporciona una buena aproximación del comportamiento del agua en un medio poroso siempre que este sea homogéneo e isótropo.&lt;br /&gt;
&lt;br /&gt;
La constante S en la ley de conservación de la masa se conoce como almacenamiento específico y se interpreta como la cantidad de agua que libera el acuífero al descender el nivel piezométrico en una unidad, por unidad de volumen.&lt;br /&gt;
&lt;br /&gt;
Combinando las ecuaciones de conservación de la masa con la ley de Darcy, obtenemos la ecuación:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \frac{∂h}{∂t} - D∆h = 0, ρ &amp;gt; ρ_0, θ ∈ (0, 2π), t &amp;gt; 0, (1) &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
donde D = K/S es la difusividad hidráulica que supondremos constante.&lt;br /&gt;
&lt;br /&gt;
==== Deducción de la fórmula ====&lt;br /&gt;
&lt;br /&gt;
En este apartado buscamos demostrar la ecuación (1) como combinación de la ecuación de conservación de masas y la Ley de Darcy.&lt;br /&gt;
&lt;br /&gt;
Por un lado sabemos que el laplaciaco equivale a la divergencia del gradiente: &lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; &lt;br /&gt;
(\Delta f = \nabla \cdot \nabla f = div \left (\nabla f) \right) &lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Por otro lado, sabemos que en coordenadas polares: &lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;x = ρ cos \theta \\&lt;br /&gt;
             y = ρ  sen \theta&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\bar{g_ρ } = cos \theta \bar{i} + sin \theta  \bar{j} \\&lt;br /&gt;
              \bar{g_\theta } = - ρ  sin \theta \bar{i} + ρ cos \theta \bar{j} &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;&lt;br /&gt;
G =&lt;br /&gt;
\left(&lt;br /&gt;
\begin{array}{cc}&lt;br /&gt;
1&amp;amp; 0 \\&lt;br /&gt;
0 &amp;amp; ρ ^{2} \\&lt;br /&gt;
\end{array}&lt;br /&gt;
\right);&lt;br /&gt;
\text {donde la raiz del determinante es} \sqrt{g} = ρ&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Como indica el enunciado, al sustituir la Ley de Darcy en la ecuación de conservación de la masa obtenemos y dividir entre S, teniendo en cuenta que el divergente del gradiente es el laplaciano como hemos indicado al principio de este apartado, obtenemos la ecuación (1): &amp;lt;math&amp;gt; \frac{∂h}{∂t} - \frac{k}{S}∆h = 0 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
En esta ecuación queda por desarrollar el Laplaciano de h. &lt;br /&gt;
Partiremos de la función h(ρ,θ), de la cual calcularemos primero el gradiente:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \nabla h = \frac{\partial h}{\partial \rho}\hat{\rho} + \frac{\partial h}{\partial \rho}\hat{\theta} =  \frac{\partial h}{\partial \rho}\bar{\rho} + \frac{1}{\rho^{2}} \frac{\partial h}{\partial \rho}\bar{\theta}  &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
teniendo en cuenta que &amp;lt;math&amp;gt;\bar{g^{i} } = \frac{\bar{g_i } }{ | \bar{g_i } | ^{2} } &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Ahora hacemos el divergente del gradiente anterior y obtenemos el Laplaciano en coordenadas polares:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;math&amp;gt;&lt;br /&gt;
 \Delta h = div(∇h) &lt;br /&gt;
= {1 \over \rho} {\partial \over \partial \rho}&lt;br /&gt;
  \left( \rho {\partial h \over \partial \rho} \right) &lt;br /&gt;
+ {1 \over \rho^2} {\partial^2 h \over \partial \theta^2}&lt;br /&gt;
= {1 \over \rho} {\partial h \over \partial \rho} &lt;br /&gt;
+ {\partial^2 h \over \partial \rho^2}&lt;br /&gt;
+ {1 \over \rho^2} {\partial^2 h \over \partial \theta^2}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Si consideramos que, debido a la simetría del problema, h sólo depende de su distancia al pozo, entonces obtenemos la función radial h(ρ), que nos permite simplificar el Laplaciano del modo siguiente:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;math&amp;gt;&lt;br /&gt;
 \Delta h = div(∇h) &lt;br /&gt;
= {1 \over \rho} {\partial h \over \partial \rho} &lt;br /&gt;
+ {\partial^2 h \over \partial \rho^2}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== Obtención de la ecuación====&lt;br /&gt;
&lt;br /&gt;
Para poder resolver la ecuación anterior y que el resultado sea único, hemos de establecer condiciones iniciales y de contorno.&lt;br /&gt;
&lt;br /&gt;
Las condiciones de contorno serán dos pues aparece la derivada segunda de la posición: &amp;lt;math&amp;gt; h(\rho_0 , t) = h_p \\&lt;br /&gt;
                                                                                                                                                                  h(20,t) = h_0 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
La condición inicial será única pues sólo aparece una derivada de primer orden en tiempo en nuestra ecuación: &amp;lt;math&amp;gt; h(\rho,0) = h_0 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
De este modo la ecuación resultante será:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \left\{\begin{matrix}&lt;br /&gt;
\frac{\partial h}{\partial t} - \frac{k}{s} (\frac{1}{\rho}  \frac{\partial h}{\partial \rho} + \frac{\partial^2 h}{\partial \rho^2})= 0 &amp;amp; \rho \epsilon (\rho_{0}, 2c) &amp;amp; \theta \epsilon (0, 2\Pi ) &amp;amp; t &amp;gt; 0 \\ &lt;br /&gt;
h(\rho_{0},t) = h_{p};   h(20, t)= h_{0} \\ &lt;br /&gt;
h(\rho, 0) = h_{0} &lt;br /&gt;
\end{matrix}\right. &amp;lt;/math&amp;gt; &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==== Resolución por método de diferencias finitas ====&lt;br /&gt;
&lt;br /&gt;
Suponiendo &amp;lt;math&amp;gt;ρ_0 =0.5m&amp;lt;/math&amp;gt;, &amp;lt;math&amp;gt;h_0 =45m&amp;lt;/math&amp;gt;, &amp;lt;math&amp;gt;hp =34&amp;lt;/math&amp;gt;, D=10−2, &amp;lt;math&amp;gt;(ρ,0)=h_0&amp;lt;/math&amp;gt;; y tomando  ∆ρ = 0.1 y ∆t = ∆ρ. Vamos a resolver la ecuación anterior por el método de diferencias finitas, usando el Método de Heun para realizar la aproximación en tiempo.&lt;br /&gt;
&lt;br /&gt;
Primero, sustituyendo los datos anteriores en la ecuación, llegamos a:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \left\{\begin{matrix}&lt;br /&gt;
\frac{\partial h}{\partial t} - 10^{2} (\frac{1}{\rho}  \frac{\partial h}{\partial \rho} + \frac{\partial^2 h}{\partial \rho^2})= 0 &amp;amp; \rho \epsilon (0.5, 20) &amp;amp; \theta \epsilon (0, 2\Pi ) &amp;amp; t &amp;gt; 0 \\ &lt;br /&gt;
h(0.5,t) = 34;   h(20, t)= 45 \\ &lt;br /&gt;
h(\rho, 0) = 45&lt;br /&gt;
\end{matrix}\right. &amp;lt;/math&amp;gt; &lt;br /&gt;
&lt;br /&gt;
Aplicando el método de las diferencias finitas llegamos al siguiente código:&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
&lt;br /&gt;
%TRPRIMERA FASE. ESPACIO&lt;br /&gt;
&lt;br /&gt;
a=0.5; b=20; %Condiciones de contorno&lt;br /&gt;
drho=0.1; N=(b-a)/drho; %División del intervalo&lt;br /&gt;
&lt;br /&gt;
rho=a+drho:drho:b-drho; %Sólo nodos interiores&lt;br /&gt;
&lt;br /&gt;
%Creamos las matrices&lt;br /&gt;
&lt;br /&gt;
L=diag(ones(1,N-2),1)-diag(ones(1,N-2),-1);&lt;br /&gt;
A=diag(1./rho);&lt;br /&gt;
L=10^(-2)*(1/(2*drho))*A*L;&lt;br /&gt;
&lt;br /&gt;
K=-2*diag(ones(1,N-1))+diag(ones(1,N-2),1)+diag(ones(1,N-2),-1);&lt;br /&gt;
K=10^(-2)*(1/drho^2)*K; &lt;br /&gt;
&lt;br /&gt;
F=zeros(N-1,1);&lt;br /&gt;
F(1,1)=10^(-2)*(-17/(rho(1)*drho)+34/drho^2);&lt;br /&gt;
F(N-1,1)=10^(-2)*(45/(rho(N-1)*2*drho)+45/drho^2);&lt;br /&gt;
&lt;br /&gt;
%SEGUDA FASE. TIEMPO&lt;br /&gt;
&lt;br /&gt;
H=ones(1,length(rho)); H=H*45; H=H';&lt;br /&gt;
dt=drho; T=10; t=0:dt:T;&lt;br /&gt;
h0=34; hN=45;&lt;br /&gt;
sol=[h0 H' hN];&lt;br /&gt;
&lt;br /&gt;
for j=1:length(t)-1 &lt;br /&gt;
    &lt;br /&gt;
    %Método de Heun&lt;br /&gt;
    k1=F+(K+L)*H;&lt;br /&gt;
    k2=F+(K+L)*(H+k1*dt);&lt;br /&gt;
    H=H+(dt/2)*(k1+k2);&lt;br /&gt;
 &lt;br /&gt;
    sol(j+1,:)=[h0 H' hN]; %Salvamos las solución, incluimos los extremos&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
rho1=a:drho:b; %Incluimos los nodos exteriores&lt;br /&gt;
&lt;br /&gt;
[rr,tt]=meshgrid(rho1,t);&lt;br /&gt;
surf(rr,tt,sol); %Dibujamos la solución&lt;br /&gt;
title('Nivel Piezométrico. Método Diferencias finitas con Heun en tiempo.')&lt;br /&gt;
xlabel('Distancia radial al centro del pozo.')&lt;br /&gt;
ylabel('Tiempo.')&lt;br /&gt;
zlabel('Nivel piezométrico.')&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
Mediante este código obtenemos la siguiente gráfica:&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Grafica npiezometrico.jpg|500px|thumb|best|Gráfica Nivel Piezométrico aproximada con el Método de Diferencias Finitas con Heun en tiempo.]]&lt;br /&gt;
&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Ahora dibujaremos la gráfica mediante los métodos de Euler implícito y trapecio y compararemos los resultados obtenidos.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Sobre el programa anterior cambiaremos las líneas correspondientes al método de Heun.&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* Método de Euler implícito:&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;math&amp;gt; \left\{\begin{matrix}&lt;br /&gt;
y_{0}\\&lt;br /&gt;
y_{n+1}=y_{n} + hf(t_{n+1},y_{n+1})\\&lt;br /&gt;
\end{matrix}\right. &amp;lt;/math&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
&lt;br /&gt;
for j=1:length(t)-1 &lt;br /&gt;
    &lt;br /&gt;
    %Método de Euler implícito&lt;br /&gt;
    &lt;br /&gt;
    H=(eye(N-1)-dt*(K+L))\(H+(F*dt)); &lt;br /&gt;
 &lt;br /&gt;
    sol(j+1,:)=[h0 H' hN]; %Salvamos las solución, incluimos los extremos&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
rho1=a:drho:b; %Incluimos los nodos exteriores&lt;br /&gt;
&lt;br /&gt;
[rr,tt]=meshgrid(rho1,t);&lt;br /&gt;
surf(rr,tt,sol); %Dibujamos la solución&lt;br /&gt;
title('Nivel Piezométrico. Método Diferencias finitas con Euler en tiempo.')&lt;br /&gt;
xlabel('Distancia radial al centro del pozo.')&lt;br /&gt;
ylabel('Tiempo.')&lt;br /&gt;
zlabel('Nivel piezométrico.')&lt;br /&gt;
&lt;br /&gt;
}}&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* Método del Trapecio:&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;math&amp;gt; \left\{\begin{matrix}&lt;br /&gt;
y_{0}\\&lt;br /&gt;
y_{n+1}=y_{n} + \frac{h}{2}f((t_{n},y_{n}+f(t_{n+1},y_{n+1}))\\&lt;br /&gt;
\end{matrix}\right. &amp;lt;/math&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
for j=1:length(t)-1 &lt;br /&gt;
    &lt;br /&gt;
    %Método del trapecio&lt;br /&gt;
    k1=F+(K+L)*H;&lt;br /&gt;
    k2=F+(K+L)*(H+k1*dt); &lt;br /&gt;
    H=(eye(N-1)-(dt/2)*(K+L))\(H+dt*F+(dt/2)*(K+L)*H);&lt;br /&gt;
 &lt;br /&gt;
    sol(j+1,:)=[h0 H' hN]; %Salvamos las solución, incluimos los extremos&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
rho1=a:drho:b; %Incluimos los nodos exteriores&lt;br /&gt;
&lt;br /&gt;
[rr,tt]=meshgrid(rho1,t);&lt;br /&gt;
surf(rr,tt,sol); %Dibujamos la solución&lt;br /&gt;
title('Nivel Piezométrico. Método Diferencias finitas con trapecio en tiempo.')&lt;br /&gt;
xlabel('Distancia radial al centro del pozo.')&lt;br /&gt;
ylabel('Tiempo.')&lt;br /&gt;
zlabel('Nivel piezométrico.')&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
Como podemos ver a continuación las tres gráficas resultantes son prácticamente iguales por lo que los tres métodos hacen una aproximación similar.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
[[Archivo:Trapecio12.png|500px|thumb|right|Gráfica Nivel Piezométrico aproximada con el Método de Diferencias Finitas con Trapecio en tiempo.]]&lt;br /&gt;
[[Archivo:Euler12.png|500px|thumb|right|Gráfica Nivel Piezométrico aproximada con el Método de Diferencias Finitas con Euler Implícito en tiempo.]]&lt;br /&gt;
&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== Comportamiento del nivel piezométrico con &amp;lt;math&amp;gt; \rho &amp;lt;/math&amp;gt; constante ====&lt;br /&gt;
&lt;br /&gt;
Ahora supondremos que &amp;lt;math&amp;gt; \rho &amp;lt;/math&amp;gt; es constante y que su valor es 2 y dibujaremos el comportamiento del nivel piezométrico en una gráfica 2D nivel piezométrico-tiempo.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Nuevamente utilizando el programa anterior con el  método de Heun:&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Rho2.png|500px|thumb|best|Gráfica Nivel Piezométrico-tiempo para &amp;lt;math&amp;gt; \rho =2 &amp;lt;/math&amp;gt; para T=10.]]&lt;br /&gt;
[[Archivo:Rho1000.png|500px|thumb|best|Gráfica Nivel Piezométrico-tiempo para &amp;lt;math&amp;gt; \rho =2 &amp;lt;/math&amp;gt; para T=1000.]]&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
&lt;br /&gt;
%PRIMERA FASE. ESPACIO&lt;br /&gt;
&lt;br /&gt;
a=0.5; b=20; %Condiciones de contorno&lt;br /&gt;
drho=0.1; N=(b-a)/drho; %División del intervalo&lt;br /&gt;
&lt;br /&gt;
rho=a+drho:drho:b-drho; %Sólo nodos interiores&lt;br /&gt;
&lt;br /&gt;
%Creamos las matrices&lt;br /&gt;
&lt;br /&gt;
L=diag(ones(1,N-2),1)-diag(ones(1,N-2),-1);&lt;br /&gt;
A=diag(1./rho);&lt;br /&gt;
L=10^(-2)*(1/(2*drho))*A*L;&lt;br /&gt;
&lt;br /&gt;
K=-2*diag(ones(1,N-1))+diag(ones(1,N-2),1)+diag(ones(1,N-2),-1);&lt;br /&gt;
K=10^(-2)*(1/drho^2)*K; &lt;br /&gt;
&lt;br /&gt;
F=zeros(N-1,1);&lt;br /&gt;
F(1,1)=10^(-2)*(-17/(rho(1)*drho)+34/drho^2);&lt;br /&gt;
F(N-1,1)=10^(-2)*(45/(rho(N-1)*2*drho)+45/drho^2);&lt;br /&gt;
&lt;br /&gt;
%SEGUDA FASE. TIEMPO&lt;br /&gt;
&lt;br /&gt;
H=ones(1,length(rho)); H=H*45; H=H';&lt;br /&gt;
dt=drho; &lt;br /&gt;
T=10 &lt;br /&gt;
%Comprobamos también la solución para un tiempo mayor &lt;br /&gt;
%T=1000&lt;br /&gt;
t=0:dt:T;&lt;br /&gt;
h0=34; hN=45;&lt;br /&gt;
sol=[h0 H' hN];&lt;br /&gt;
&lt;br /&gt;
for j=1:length(t)-1 &lt;br /&gt;
    &lt;br /&gt;
    %Método de Heun&lt;br /&gt;
    k1=F+(K+L)*H;&lt;br /&gt;
    k2=F+(K+L)*(H+k1*dt);&lt;br /&gt;
    H=H+(dt/2)*(k1+k2);&lt;br /&gt;
 &lt;br /&gt;
    sol(j+1,:)=[h0 H' hN]; %Salvamos las solución, incluimos los extremos&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
rho1=a:drho:b; %Incluimos los nodos exteriores&lt;br /&gt;
&lt;br /&gt;
m=sol(:,rho==2); %Vector que incluye la solución en tiempo para rho=2&lt;br /&gt;
&lt;br /&gt;
plot(t,m);&lt;br /&gt;
&lt;br /&gt;
title('Comportamiento del nivel piezométrico en el tiempo para p=2')&lt;br /&gt;
xlabel('Tiempo')&lt;br /&gt;
ylabel('Nivel piezométrico.')&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
La primera gráfica muestra que para tiempos pequeños la variación del nivel piezométrico es muy pequeña (del orden de 0,10/0,15 m), aún así como observamos en la segunda gráfica a medida que avanzamos en el tiempo la variación del nivel disminuye aún más ya que la curva está cada vez menos inclinada.&lt;br /&gt;
&lt;br /&gt;
==== Variación del nivel piezométrico en tiempos grandes ====&lt;br /&gt;
Ahora vamos a comprobar que la variación del nivel piezométrico para tiempos elevados (T=5000) es mínima.&lt;br /&gt;
Para ello dibujaremos las soluciones cada 100 horas de en el intervalo temporal [1; 5000], en&lt;br /&gt;
una misma gráfica.&lt;br /&gt;
[[Archivo:Tiemposg2.png|marco|derecha|Nivel piezométrico para tiempos grandes]]&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
%PRIMERA FASE. ESPACIO&lt;br /&gt;
&lt;br /&gt;
a=0.5; b=20; %Condiciones de contorno&lt;br /&gt;
drho=0.1; N=(b-a)/drho; %División del intervalo&lt;br /&gt;
&lt;br /&gt;
rho=a+drho:drho:b-drho; %Sólo nodos interiores&lt;br /&gt;
&lt;br /&gt;
%Creamos las matrices&lt;br /&gt;
&lt;br /&gt;
L=diag(ones(1,N-2),1)-diag(ones(1,N-2),-1);&lt;br /&gt;
A=diag(1./rho);&lt;br /&gt;
L=10^(-2)*(1/(2*drho))*A*L;&lt;br /&gt;
&lt;br /&gt;
K=-2*diag(ones(1,N-1))+diag(ones(1,N-2),1)+diag(ones(1,N-2),-1);&lt;br /&gt;
K=10^(-2)*(1/drho^2)*K; &lt;br /&gt;
&lt;br /&gt;
F=zeros(N-1,1);&lt;br /&gt;
F(1,1)=10^(-2)*(-17/(rho(1)*drho)+34/drho^2);&lt;br /&gt;
F(N-1,1)=10^(-2)*(45/(rho(N-1)*2*drho)+45/drho^2);&lt;br /&gt;
&lt;br /&gt;
%SEGUDA FASE. TIEMPO&lt;br /&gt;
&lt;br /&gt;
H=ones(1,length(rho)); H=H*45; H=H';&lt;br /&gt;
dt=0.1; T=5000; t=0:dt:T;&lt;br /&gt;
h0=34; hN=45;&lt;br /&gt;
sol=[h0 H' hN];&lt;br /&gt;
&lt;br /&gt;
figure(1);&lt;br /&gt;
hold on;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
for j=1:length(t)-1 &lt;br /&gt;
    &lt;br /&gt;
    %Método de Heun&lt;br /&gt;
    k1=F+(K+L)*H;&lt;br /&gt;
    k2=F+(K+L)*(H+k1*dt);&lt;br /&gt;
    H=H+(dt/2)*(k1+k2);&lt;br /&gt;
 &lt;br /&gt;
    sol(j+1,:)=[h0 H' hN]; %Salvamos las solución, incluimos los extremos&lt;br /&gt;
    &lt;br /&gt;
 if rem(t(j),100)==0; &lt;br /&gt;
    &lt;br /&gt;
    rho1=a:drho:b; %Incluimos los nodos exteriores&lt;br /&gt;
  &lt;br /&gt;
  plot(rho1,sol(j,:)) %pintamos la solución cada 100 horas&lt;br /&gt;
  &lt;br /&gt;
  title('Variación del nivel piezométrico para tiempos grandes')&lt;br /&gt;
  pause(1)&lt;br /&gt;
&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
end&lt;br /&gt;
}}&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Como se puede observar en la gráfica según vamos avanzando en el tiempo las curvas están más juntas lo que quiere decir que la variación del nivel es cada vez menor aproximándose a un régimen estacionario.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Trabajo21.jpg|marco|derecha|Nivel piezométrico estacionario]]&lt;br /&gt;
&lt;br /&gt;
====Problema estacionario====&lt;br /&gt;
Como hemos visto en el apartado anterior para tiempos grandes el nivel piezométrico se mantiene practicamente constante a lo largo del tiempo, esto es debido a que se establece un equilibrio entre el caudal de agua extraida del acuifero y la migración de aguas desde los puntos más alejados del pozo hacia este.&lt;br /&gt;
Por lo tanto se verifica que:&lt;br /&gt;
 &amp;lt;math&amp;gt;\frac{\partial h}{\partial t}=0&amp;lt;/math&amp;gt;&lt;br /&gt;
Y por lo tanto el nivel piezométrico se puede aproximar por:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \left\{\begin{matrix}&lt;br /&gt;
- \frac{k}{s} (\frac{1}{\rho}  \frac{\partial h}{\partial \rho} + \frac{\partial^2 h}{\partial \rho^2})= 0 &amp;amp; \rho \epsilon (1, 20) &amp;amp; \theta \epsilon (0, 2\Pi ) &amp;amp; 0 &amp;lt; t &amp;lt; 5000 \\ &lt;br /&gt;
h(1,t) = 35;    h(20, t)= 40 \\ &lt;br /&gt;
h(\rho, 0) = 40 &lt;br /&gt;
\end{matrix}\right. &amp;lt;/math&amp;gt;&lt;br /&gt;
Resolvemos por diferencias finitas:&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
    %datos&lt;br /&gt;
    t=5000;&lt;br /&gt;
    l=20;&lt;br /&gt;
    D=0.01;&lt;br /&gt;
    hp=35;&lt;br /&gt;
    ho=40;&lt;br /&gt;
    %discretización&lt;br /&gt;
    s=0.1;&lt;br /&gt;
    x0=1;&lt;br /&gt;
    x=x0:s:l;&lt;br /&gt;
    xint=x0+s:s:l-s;&lt;br /&gt;
    N=length(x)-2; &lt;br /&gt;
    %construimos las matrices para el método de las diferencias finitas&lt;br /&gt;
    K=(1/s^2)*(diag(2*ones(1,N))-diag(ones(1,N-1),1)-diag(ones(1,N-1),-1));&lt;br /&gt;
    A=(1/(s*2))*(diag(ones(1,N-1),1)-diag(ones(1,N-1),-1));&lt;br /&gt;
    A=diag(1./xint)*A;&lt;br /&gt;
    h0=(40*ones(N,1));&lt;br /&gt;
    dt=200; &lt;br /&gt;
    t=0:dt:t;&lt;br /&gt;
    M=length(t)-1;&lt;br /&gt;
    F=(zeros(N,1));&lt;br /&gt;
    F(1)=D*((hp/s^2)-(hp/(2*s)*1/xint(1)));&lt;br /&gt;
    F(N)=D*((ho/s^2)+ho/(s*2*xint(N)));&lt;br /&gt;
    H(1,:)=[40;h0;40]'; &lt;br /&gt;
    h=h0;&lt;br /&gt;
    for n=1:M&lt;br /&gt;
      h=(D)*(K-A)\((F)); %utilizamos el comando backslash para resolver el sistema de ecuaciones&lt;br /&gt;
      H(n+1,:)=[hp h' ho];&lt;br /&gt;
    end&lt;br /&gt;
    %mallado y representación&lt;br /&gt;
    [X,T]=meshgrid(x,t);&lt;br /&gt;
    surf(X,T,H)&lt;br /&gt;
    xlabel('Distancia (metros)');&lt;br /&gt;
    ylabel('Tiempo (horas)');&lt;br /&gt;
    zlabel('Nivel piezométrico (metros)')&lt;br /&gt;
}}&lt;br /&gt;
Efectivamente, como podemos comprobar en la gráfica, la solución es independiente del tiempo salvo para tiempos pequeños en los cuales no queda muy bien definida&lt;br /&gt;
&lt;br /&gt;
También adjuntamos un programa que calcula el error entre la aproximación del problema considerándolo estacionario y la aproximación original para ciertos instantes:&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
%TRPRIMERA FASE. ESPACIO&lt;br /&gt;
 &lt;br /&gt;
a=0.5; b=20; %Condiciones de contorno&lt;br /&gt;
drho=0.1; N=(b-a)/drho; %División del intervalo&lt;br /&gt;
 &lt;br /&gt;
rho=a+drho:drho:b-drho; %Sólo nodos interiores&lt;br /&gt;
 &lt;br /&gt;
%Creamos las matrices&lt;br /&gt;
 &lt;br /&gt;
L=diag(ones(1,N-2),1)-diag(ones(1,N-2),-1);&lt;br /&gt;
A=diag(1./rho);&lt;br /&gt;
L=10^(-2)*(1/(2*drho))*A*L;&lt;br /&gt;
 &lt;br /&gt;
K=-2*diag(ones(1,N-1))+diag(ones(1,N-2),1)+diag(ones(1,N-2),-1);&lt;br /&gt;
K=10^(-2)*(1/drho^2)*K; &lt;br /&gt;
 &lt;br /&gt;
F=zeros(N-1,1);&lt;br /&gt;
F(1,1)=10^(-2)*(-17/(rho(1)*drho)+34/drho^2);&lt;br /&gt;
F(N-1,1)=10^(-2)*(45/(rho(N-1)*2*drho)+45/drho^2);&lt;br /&gt;
 &lt;br /&gt;
%SEGUDA FASE. TIEMPO&lt;br /&gt;
 &lt;br /&gt;
H=ones(1,length(rho)); H=H*45; H=H';&lt;br /&gt;
dt=1; T=5000; t=0:dt:T;&lt;br /&gt;
h0=34; hN=45;&lt;br /&gt;
sol=[h0 H' hN];&lt;br /&gt;
 &lt;br /&gt;
for j=1:length(t)-1 &lt;br /&gt;
 &lt;br /&gt;
    %Método de Heun&lt;br /&gt;
    k1=F+(K+L)*H;&lt;br /&gt;
    k2=F+(K+L)*(H+k1*dt);&lt;br /&gt;
    H=H+(dt/2)*(k1+k2);&lt;br /&gt;
 &lt;br /&gt;
    sol(j+1,:)=[h0 H' hN]; %Salvamos las solución, incluimos los extremos&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
%CALCULAMOS SOLUCIÓN ESTACIONARIA&lt;br /&gt;
&lt;br /&gt;
%PRIMERA FASE. ESPACIO&lt;br /&gt;
 &lt;br /&gt;
a=0.5; b=20; %Condiciones de contorno&lt;br /&gt;
drho=0.1; N=(b-a)/drho; %División del intervalo&lt;br /&gt;
 &lt;br /&gt;
rho=a+drho:drho:b-drho; %Sólo nodos interiores&lt;br /&gt;
 &lt;br /&gt;
%Creamos las matrices&lt;br /&gt;
 &lt;br /&gt;
L=diag(ones(1,N-2),1)-diag(ones(1,N-2),-1);&lt;br /&gt;
A=diag(1./rho);&lt;br /&gt;
L=10^(-2)*(1/(2*drho))*A*L;&lt;br /&gt;
 &lt;br /&gt;
K=-2*diag(ones(1,N-1))+diag(ones(1,N-2),1)+diag(ones(1,N-2),-1);&lt;br /&gt;
K=10^(-2)*(1/drho^2)*K; &lt;br /&gt;
 &lt;br /&gt;
F=zeros(N-1,1);&lt;br /&gt;
F(1,1)=10^(-2)*(-17/(rho(1)*drho)+34/drho^2);&lt;br /&gt;
F(N-1,1)=10^(-2)*(45/(rho(N-1)*2*drho)+45/drho^2);&lt;br /&gt;
 &lt;br /&gt;
%SEGUDA FASE. TIEMPO&lt;br /&gt;
 &lt;br /&gt;
H=ones(1,length(rho)); H=H*45; H=H';&lt;br /&gt;
dt=1; T=5000; t=0:dt:T;&lt;br /&gt;
h0=34; hN=45;&lt;br /&gt;
solest=[h0 H' hN];&lt;br /&gt;
 &lt;br /&gt;
for j=1:length(t)-1 &lt;br /&gt;
 &lt;br /&gt;
    H=-(L+K)\F;&lt;br /&gt;
 &lt;br /&gt;
    solest(j+1,:)=[h0 H' hN]; %Salvamos las solución, incluimos los extremos&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
e0=max(abs(sol(1,:)-solest(1,:)))&lt;br /&gt;
e100=max(abs(sol(101,:)-solest(101,:)))&lt;br /&gt;
e1000=max(abs(sol(1001,:)-solest(1001,:)))&lt;br /&gt;
e5000=max(abs(sol(5001,:)-solest(5001,:)))&lt;br /&gt;
}}&lt;br /&gt;
Error para t=0: 0.&amp;lt;br/&amp;gt;&lt;br /&gt;
error para t=100:5.6443e+67&amp;lt;br/&amp;gt;&lt;br /&gt;
error para t=1000: 0&amp;lt;br/&amp;gt;&lt;br /&gt;
error para t=5000: 0&amp;lt;br/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
====Capacidad de recuperación del acuífero====&lt;br /&gt;
En este apartado queremos calcular una ley que nos describa el comportamiento del acuífero e el caso de que impermeabilizásemos las paredes del pozo partiendo del estado estacionario anterior, esto significaría que el fujo de agua en los bordes del pozo sería nulo y el nivel piezométrico iría variando hasta llegar a otro estado estacionario.&lt;br /&gt;
El estado estacionarioque tenderá a alcanzar el fluido será el inicial, ya que al impermeabilizar las paredes volvemos al caso del acuífero confinado y por ello es nivel piezométrico quedará constante a lo largo del tiempo y de la extensión del acuífero.&lt;br /&gt;
La condición frontera a imponer será que el flujo de agua en r0 será 0, ya que estará impermeabilizado. Esto lo podemos plasmar diciendo que la parcial del nivel piezométrico con respecto a ro en r0 es 0, ya que un aislamiento impide el flujo de líquido, y si el flujo de líquido es nulo el nivel piezométrico no varía.&lt;br /&gt;
&amp;lt;math&amp;gt;\frac{\partial h}{\partial \rho}=0&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Con la condición que acabamos de proponer resolvemos numéricamente con Matlab:&lt;br /&gt;
[[Archivo:ESTACIONARIO1.jpg|marco|derecha|Recuperación del acuífero tras impermeabilizar]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
clear all&lt;br /&gt;
&lt;br /&gt;
%REPETIMOS EL PROGRAMA ANTERIOR PARA SACAR EL VALOR ESTACIONARIO&lt;br /&gt;
 &lt;br /&gt;
a=0.5; b=20; %Condiciones de contorno&lt;br /&gt;
drho=0.1; N=(b-a)/drho; %División del intervalo&lt;br /&gt;
rho=a:drho:b-drho; %Sólo nodos interiores&lt;br /&gt;
L=diag(ones(1,N-1),1)-diag(ones(1,N-1),-1);&lt;br /&gt;
L(1,2)=0;&lt;br /&gt;
A=diag(1./rho);&lt;br /&gt;
L=10^(-2)*(1/(2*drho))*A*L;&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(1,2)=2;&lt;br /&gt;
K=10^(-2)*(1/drho^2)*K; &lt;br /&gt;
F=zeros(N,1);&lt;br /&gt;
F(1,1)=0; %Ahora esto es cero&lt;br /&gt;
F(N,1)=10^(-2)*(45/(rho(N)*2*drho)+45/drho^2);&lt;br /&gt;
H=ones(1,length(rho)); H=H*45; H=H';&lt;br /&gt;
dt=200; T=5000; t=0:dt:T;&lt;br /&gt;
h0=34; hN=45;&lt;br /&gt;
sol=[h0 H' hN];&lt;br /&gt;
 &lt;br /&gt;
for j=1:length(t)-1 &lt;br /&gt;
 &lt;br /&gt;
    H=-(L+K)\F;&lt;br /&gt;
    &lt;br /&gt;
    MAT=[h0 H' hN];&lt;br /&gt;
 &lt;br /&gt;
    sol(j+1,:)=[h0 H' hN]; %Salvamos las solución, incluimos los extremos&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
%AHORA RESOLVEMOS PARA EL CASO DE LA RECUPERACIÓN&lt;br /&gt;
&lt;br /&gt;
%PRIMERA FASE. ESPACIO&lt;br /&gt;
 &lt;br /&gt;
a=0.5; b=20; %Condiciones de contorno&lt;br /&gt;
drho=0.1; N=(b-a)/drho; %División del intervalo&lt;br /&gt;
 &lt;br /&gt;
rho=a:drho:b-drho; %Sólo nodos interiores&lt;br /&gt;
 &lt;br /&gt;
%Creamos las matrices&lt;br /&gt;
 &lt;br /&gt;
L=diag(ones(1,N-1),1)-diag(ones(1,N-1),-1);&lt;br /&gt;
L(1,2)=0;&lt;br /&gt;
A=diag(1./rho);&lt;br /&gt;
L=10^(-2)*(1/(2*drho))*A*L;&lt;br /&gt;
 &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(1,2)=2;&lt;br /&gt;
K=10^(-2)*(1/drho^2)*K; &lt;br /&gt;
 &lt;br /&gt;
F=zeros(N,1);&lt;br /&gt;
F(1)=0; %Ahora esto es cero&lt;br /&gt;
F(N)=10^(-2)*(45/(rho(N)*2*drho)+45/drho^2);&lt;br /&gt;
 &lt;br /&gt;
%SEGUDA FASE. TIEMPO&lt;br /&gt;
 &lt;br /&gt;
H=ones(1,length(rho)); &lt;br /&gt;
dt=200; T=5000; t=0:dt:T;&lt;br /&gt;
hN=45;&lt;br /&gt;
sol=[MAT(1:length(rho)) hN];&lt;br /&gt;
&lt;br /&gt;
for j=1:length(t)-1 &lt;br /&gt;
    &lt;br /&gt;
    H=(-(L+K))\F;&lt;br /&gt;
 &lt;br /&gt;
    sol(j+1,:)=[H' hN]; %Salvamos las solución, incluimos los extremos&lt;br /&gt;
end&lt;br /&gt;
 &lt;br /&gt;
rho1=a:drho:b; %Incluimos los nodos exteriores&lt;br /&gt;
 &lt;br /&gt;
[rr,tt]=meshgrid(rho1,t);&lt;br /&gt;
surf(rr,tt,sol); %Dibujamos la solución&lt;br /&gt;
title('Recuperación del acuífero. Condición estacionaria.')&lt;br /&gt;
xlabel('Distancia radial al centro del pozo.')&lt;br /&gt;
ylabel('Tiempo.')&lt;br /&gt;
zlabel('Nivel piezométrico.')&lt;br /&gt;
}}&lt;br /&gt;
Este programa nos representa la evolución del nivel piezométrico del acuífero tras ser impermeabilizado, partiendo del estado estacionario descrito anteriormente hasta llegar al estado inicial con h constante.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
También construimos un programa aparte que calcula, con un error del 5%, cuánto dura esta recuperación del nivel piezométrico:&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
clear all&lt;br /&gt;
&lt;br /&gt;
%PRIMERA FASE. ESPACIO&lt;br /&gt;
 &lt;br /&gt;
a=0.5; b=20; %Condiciones de contorno&lt;br /&gt;
drho=0.1; N=(b-a)/drho; %División del intervalo&lt;br /&gt;
 &lt;br /&gt;
rho=a:drho:b-drho; %Sólo nodos interiores&lt;br /&gt;
 &lt;br /&gt;
%Creamos las matrices&lt;br /&gt;
 &lt;br /&gt;
L=diag(ones(1,N-1),1)-diag(ones(1,N-1),-1);&lt;br /&gt;
L(1,2)=0;&lt;br /&gt;
A=diag(1./rho);&lt;br /&gt;
L=10^(-2)*(1/(2*drho))*A*L;&lt;br /&gt;
 &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(1,2)=2;&lt;br /&gt;
K=10^(-2)*(1/drho^2)*K; &lt;br /&gt;
 &lt;br /&gt;
F=zeros(N,1);&lt;br /&gt;
F(1,1)=0; %Ahora esto es cero&lt;br /&gt;
F(N,1)=10^(-2)*(45/(rho(N)*2*drho)+45/drho^2);&lt;br /&gt;
 &lt;br /&gt;
%SEGUDA FASE. TIEMPO&lt;br /&gt;
 &lt;br /&gt;
H=ones(1,length(rho)); H=H*45; H=H';&lt;br /&gt;
dt=1; T=5000; t=0:dt:T;&lt;br /&gt;
h0=34; hN=45;&lt;br /&gt;
sol=[h0 H' hN];&lt;br /&gt;
 &lt;br /&gt;
for j=1:length(t)-1 &lt;br /&gt;
 &lt;br /&gt;
    H=-(L+K)\F;&lt;br /&gt;
    &lt;br /&gt;
    MAT=[h0 H' hN];&lt;br /&gt;
 &lt;br /&gt;
    sol(j+1,:)=[h0 H' hN]; %Salvamos las solución, incluimos los extremos&lt;br /&gt;
end&lt;br /&gt;
 &lt;br /&gt;
&lt;br /&gt;
%PRIMERA FASE. ESPACIO&lt;br /&gt;
 &lt;br /&gt;
a=0.5; b=20; %Condiciones de contorno&lt;br /&gt;
drho=0.1; N=(b-a)/drho; %División del intervalo&lt;br /&gt;
 &lt;br /&gt;
rho=a:drho:b-drho; %Sólo nodos interiores&lt;br /&gt;
 &lt;br /&gt;
%Creamos las matrices&lt;br /&gt;
 &lt;br /&gt;
L=diag(ones(1,N-1),1)-diag(ones(1,N-1),-1);&lt;br /&gt;
L(1,2)=0;&lt;br /&gt;
A=diag(1./rho);&lt;br /&gt;
L=10^(-2)*(1/(2*drho))*A*L;&lt;br /&gt;
 &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(1,2)=2;&lt;br /&gt;
K=10^(-2)*(1/drho^2)*K; &lt;br /&gt;
 &lt;br /&gt;
F=zeros(N,1);&lt;br /&gt;
F(1,1)=0; %Ahora esto es cero&lt;br /&gt;
F(N,1)=10^(-2)*(45/(rho(N)*2*drho)+45/drho^2);&lt;br /&gt;
 &lt;br /&gt;
%SEGUDA FASE. TIEMPO&lt;br /&gt;
 &lt;br /&gt;
H=ones(1,length(rho)); &lt;br /&gt;
dt=1; T=5000; t=0:dt:T;&lt;br /&gt;
hN=45;&lt;br /&gt;
sol=[MAT(1:length(rho)) hN];&lt;br /&gt;
&lt;br /&gt;
for j=1:length(t)-1 &lt;br /&gt;
    &lt;br /&gt;
    H=-(L+K)\F;&lt;br /&gt;
 &lt;br /&gt;
    sol(j+1,:)=[H' hN]; %Salvamos las solución, incluimos los extremos&lt;br /&gt;
    &lt;br /&gt;
    error=max(abs(sol(j+1,:)-hN*ones(1,N+1)));&lt;br /&gt;
    &lt;br /&gt;
    tiempo=j; %Contador de tiempo, cada bucle una hora&lt;br /&gt;
    if error &amp;lt;=0.05&lt;br /&gt;
        break&lt;br /&gt;
    end&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
tiempo %Saca en pantalla el tiempo que tarda en alcanzar el régimen estacionario&lt;br /&gt;
}}&lt;br /&gt;
El resultado es de 1 hora.&lt;br /&gt;
''*'''Nota''': los programas son reiterativos y definen las mismas variables por estar diseñados para compilar por separado.''&lt;br /&gt;
&lt;br /&gt;
====Método de Fourier====&lt;br /&gt;
Ahora suponemos que el radio del pozo es despreciable y que una vez extraido el agua el pozo se cierra quedando el acuifero de nuevo homogéneo. En este caso tomaremos la región ρ &amp;lt; 20. Nuestro objetivo es aproximar las soluciones usando el método de Fourier. De nuevo supondremos que la solución sólo depende de ρ y t, y tomaremos ahora como condición frontera h(20, t) = 40.&lt;br /&gt;
Vamos a considerar el sistema de ecuaciones para h(ρ,t)=h(ρ,t)-40:&lt;br /&gt;
 &amp;lt;math&amp;gt; \left\{\begin{matrix}&lt;br /&gt;
\frac{\partial h}{\partial t} - D (\frac{1}{\rho}  \frac{\partial h}{\partial \rho} + \frac{\partial^2 h}{\partial \rho^2})= 0 &amp;amp; \rho \epsilon (0, 20) &amp;amp; \theta \epsilon (0, 2\Pi ) &amp;amp; t &amp;gt; 0 \\ &lt;br /&gt;
\frac{\partial h}{\partial \rho}(0,t) = 0;   h(20, t)= 0 \\ &lt;br /&gt;
\end{matrix}\right. &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Obtenemos el problema de autovalores asociado al sistema anterior con el método de separación de variables:&lt;br /&gt;
 &amp;lt;math&amp;gt; \left\{\begin{matrix}&lt;br /&gt;
D (\frac{X'(\rho)}{\rho} + X''(\rho))+ λX(\rho)=0 \\&lt;br /&gt;
X'(0) = 0;   X(20)= 0 \\ &lt;br /&gt;
&lt;br /&gt;
\end{matrix}\right. &amp;lt;/math&amp;gt;&lt;br /&gt;
[[Archivo:Marta1.jpg|marco|derecha]]&lt;br /&gt;
Sabemos que los problemas de esta forma tienen como solución la función de Bessel de primera especie que forma una familia de autofunciones: &amp;lt;math&amp;gt;Ψ(\rho)=J_0·(\rho\sqrt{λ})&amp;lt;/math&amp;gt;. Estas se anulan cuando &amp;lt;math&amp;gt;(\rho\sqrt{λ})&amp;lt;/math&amp;gt; se iguala a 2.4048, 5.5201, 8.6537, 11.7915 y 14.9309, siendo estos los 5 primeros ceros de la función de Bessel. De esta manera y tomando ρ=20 obtenemos los 5 primeros autovalores:&lt;br /&gt;
&amp;lt;math&amp;gt;(20\sqrt{λ})=2.4048&amp;lt;/math&amp;gt;Haciendo la operación anterior para los 5 ceros obtenemos los siguientes autovalores: 0.0145, 0.0762, 0.1872, 0.3476, 0.5573.&lt;br /&gt;
Ahora vamos a dibujar las 5 primeras autofunciones utilizando la función besselj:&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
a1=0.0145;&lt;br /&gt;
a2=0.0762;&lt;br /&gt;
a3=0.1872;&lt;br /&gt;
a4=0.3476;&lt;br /&gt;
a5=0.5575;&lt;br /&gt;
r=0:0.02:20;&lt;br /&gt;
F1=besselj(0,r.*(sqrt(a1))); &lt;br /&gt;
F2=besselj(0,r.*(sqrt(a2)));&lt;br /&gt;
F3=besselj(0,r.*(sqrt(a3)));&lt;br /&gt;
F4=besselj(0,r.*(sqrt(a4)));&lt;br /&gt;
F5=besselj(0,r.*(sqrt(a5)));&lt;br /&gt;
hold on&lt;br /&gt;
plot(r,F1)&lt;br /&gt;
plot(r,F2,'r')&lt;br /&gt;
plot(r,F3,'g')	&lt;br /&gt;
plot(r,F4,'c')&lt;br /&gt;
plot(r,F5,'y')&lt;br /&gt;
hold off&lt;br /&gt;
}}&lt;br /&gt;
[[Archivo:Marta2.jpg|marco|derecha]]&lt;br /&gt;
Aproximamos ahora la solución de la ecuación tomando como dato inicial es&amp;lt;math&amp;gt; h (\rho,0)= -log \frac{|\rho + 0.01|}{20.01} &amp;lt;/math&amp;gt; y usando 5 términos del desarrollo de Fourier, teniendo en cuenta que las autofunciones son ortogonales respecto al producto escalar: &amp;lt;math&amp;gt; (f(\rho),g(\rho)) = \int_{0}^{20} \rho f(\rho) g(\rho) \cdot dx &amp;lt;/math&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
x0=0; L=20;&lt;br /&gt;
c0=[2.4048,5.5201,8.6537,11.7915,14.9309]; %Vector de ceros de la función de Bessel&lt;br /&gt;
A=(c0./20).^2; %Vector de autovalores&lt;br /&gt;
K=5; %Número de términos del desarrollo de Fourier&lt;br /&gt;
x=x0:0.1:L;&lt;br /&gt;
N=length(x)-1;&lt;br /&gt;
J=zeros(N+1,K);&lt;br /&gt;
z=zeros(N+1,K);&lt;br /&gt;
t0=0; tf=500;&lt;br /&gt;
t=t0:0.1:tf;&lt;br /&gt;
[xx,tt]=meshgrid(x,t);&lt;br /&gt;
h=0;&lt;br /&gt;
for k=1:K&lt;br /&gt;
   z(:,k)=(x)'*sqrt(A(k));&lt;br /&gt;
   J(:,k)=besselj(0,z(:,k));&lt;br /&gt;
   h0=-log((abs(x+0.1))/20.01); %Condición inicial&lt;br /&gt;
   c(k)=trapz(x,x'.*h0'.*J(:,k))/trapz(x,x'.*J(:,k).*J(:,k)); %Coeficientes de Fourier&lt;br /&gt;
   h=h+c(k)*exp(-A(k)*t)'*J(:,k)';&lt;br /&gt;
end&lt;br /&gt;
surf(xx,tt,h)&lt;br /&gt;
title('Aproximación de la solución')&lt;br /&gt;
}}&lt;/div&gt;</summary>
		<author><name>Marta Cavero</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Nivel_piezom%C3%A9trico_de_un_acu%C3%ADfero_confinado_(A5)&amp;diff=30532</id>
		<title>Nivel piezométrico de un acuífero confinado (A5)</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Nivel_piezom%C3%A9trico_de_un_acu%C3%ADfero_confinado_(A5)&amp;diff=30532"/>
				<updated>2015-05-21T21:57:44Z</updated>
		
		<summary type="html">&lt;p&gt;Marta Cavero: /* Capacidad de recuperación del acuífero */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;br /&gt;
==== Introducción ====&lt;br /&gt;
&lt;br /&gt;
Consideramos un acuífero confinado entre dos capas de terreno impermeables horizontales. Llamaremos h(x, y) al nivel piezométrico del acuífero, definido por la altura que alcanzaría el agua si hiciéramos un sondeo en el punto (x, y). Obviamente este valor depende de la presión a la que se encuentra el agua confinada en el acuífero. Supondremos&lt;br /&gt;
que el acuífero es un medio poroso saturado de agua que ocupa una región infinita y está en equilibrio de manera que &amp;lt;math&amp;gt;h(x, y) = h_0&amp;lt;/math&amp;gt; constante para todo (x, y) ∈ &amp;lt;math&amp;gt;IR^{2}&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Sobre el acuifero se construye un pozo de sección circular y radio&amp;lt;math&amp;gt; ρ_0&amp;lt;/math&amp;gt; para extraer agua. La presencia del pozo hace que el nivel piezométrico cambie. Dada la simetría del problema podemos suponer que h(x, y) sólo va a depender de la distancia al pozo. Si tomamos coordenadas cilíndricas de forma que el eje OZ coincida con el eje de simetría del pozo, entonces h = h(ρ) donde &amp;lt;math&amp;gt;ρ = \sqrt{x^{2} + y^{2}}&amp;lt;/math&amp;gt; . Trabajaremos por tanto en coordenadas polares en el plano (ρ, θ).&lt;br /&gt;
&lt;br /&gt;
Las ecuaciones que permiten conocer h(ρ) son la ecuación de conservación de la masa:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; S = \frac{∂h}{∂t} + div q = 0 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
junto con la ley de Darcy&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; q = −K∇h &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
que es una ley experimental que modela el flujo de agua en un medio poroso. La ley de Darcy establece que el flujo de agua q a través de un medio poroso es proporcional a la diferencia de presión, que a su vez se puede escribir en términos del gradiente del nivel piezométrico en cada punto. La constante K se deduce experimentalmente para cada material y se conoce como la conductividad hidráulica o permeabilidad. Cuanto mayor es la constante K mayor es el flujo de agua provocado por un cambio&lt;br /&gt;
de presión. La ley de Darcy proporciona una buena aproximación del comportamiento del agua en un medio poroso siempre que este sea homogéneo e isótropo.&lt;br /&gt;
&lt;br /&gt;
La constante S en la ley de conservación de la masa se conoce como almacenamiento específico y se interpreta como la cantidad de agua que libera el acuífero al descender el nivel piezométrico en una unidad, por unidad de volumen.&lt;br /&gt;
&lt;br /&gt;
Combinando las ecuaciones de conservación de la masa con la ley de Darcy, obtenemos la ecuación:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \frac{∂h}{∂t} - D∆h = 0, ρ &amp;gt; ρ_0, θ ∈ (0, 2π), t &amp;gt; 0, (1) &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
donde D = K/S es la difusividad hidráulica que supondremos constante.&lt;br /&gt;
&lt;br /&gt;
==== Deducción de la fórmula ====&lt;br /&gt;
&lt;br /&gt;
En este apartado buscamos demostrar la ecuación (1) como combinación de la ecuación de conservación de masas y la Ley de Darcy.&lt;br /&gt;
&lt;br /&gt;
Por un lado sabemos que el laplaciaco equivale a la divergencia del gradiente: &lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; &lt;br /&gt;
(\Delta f = \nabla \cdot \nabla f = div \left (\nabla f) \right) &lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Por otro lado, sabemos que en coordenadas polares: &lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;x = ρ cos \theta \\&lt;br /&gt;
             y = ρ  sen \theta&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\bar{g_ρ } = cos \theta \bar{i} + sin \theta  \bar{j} \\&lt;br /&gt;
              \bar{g_\theta } = - ρ  sin \theta \bar{i} + ρ cos \theta \bar{j} &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;&lt;br /&gt;
G =&lt;br /&gt;
\left(&lt;br /&gt;
\begin{array}{cc}&lt;br /&gt;
1&amp;amp; 0 \\&lt;br /&gt;
0 &amp;amp; ρ ^{2} \\&lt;br /&gt;
\end{array}&lt;br /&gt;
\right);&lt;br /&gt;
\text {donde la raiz del determinante es} \sqrt{g} = ρ&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Como indica el enunciado, al sustituir la Ley de Darcy en la ecuación de conservación de la masa obtenemos y dividir entre S, teniendo en cuenta que el divergente del gradiente es el laplaciano como hemos indicado al principio de este apartado, obtenemos la ecuación (1): &amp;lt;math&amp;gt; \frac{∂h}{∂t} - \frac{k}{S}∆h = 0 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
En esta ecuación queda por desarrollar el Laplaciano de h. &lt;br /&gt;
Partiremos de la función h(ρ,θ), de la cual calcularemos primero el gradiente:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \nabla h = \frac{\partial h}{\partial \rho}\hat{\rho} + \frac{\partial h}{\partial \rho}\hat{\theta} =  \frac{\partial h}{\partial \rho}\bar{\rho} + \frac{1}{\rho^{2}} \frac{\partial h}{\partial \rho}\bar{\theta}  &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
teniendo en cuenta que &amp;lt;math&amp;gt;\bar{g^{i} } = \frac{\bar{g_i } }{ | \bar{g_i } | ^{2} } &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Ahora hacemos el divergente del gradiente anterior y obtenemos el Laplaciano en coordenadas polares:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;math&amp;gt;&lt;br /&gt;
 \Delta h = div(∇h) &lt;br /&gt;
= {1 \over \rho} {\partial \over \partial \rho}&lt;br /&gt;
  \left( \rho {\partial h \over \partial \rho} \right) &lt;br /&gt;
+ {1 \over \rho^2} {\partial^2 h \over \partial \theta^2}&lt;br /&gt;
= {1 \over \rho} {\partial h \over \partial \rho} &lt;br /&gt;
+ {\partial^2 h \over \partial \rho^2}&lt;br /&gt;
+ {1 \over \rho^2} {\partial^2 h \over \partial \theta^2}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Si consideramos que, debido a la simetría del problema, h sólo depende de su distancia al pozo, entonces obtenemos la función radial h(ρ), que nos permite simplificar el Laplaciano del modo siguiente:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;math&amp;gt;&lt;br /&gt;
 \Delta h = div(∇h) &lt;br /&gt;
= {1 \over \rho} {\partial h \over \partial \rho} &lt;br /&gt;
+ {\partial^2 h \over \partial \rho^2}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== Obtención de la ecuación====&lt;br /&gt;
&lt;br /&gt;
Para poder resolver la ecuación anterior y que el resultado sea único, hemos de establecer condiciones iniciales y de contorno.&lt;br /&gt;
&lt;br /&gt;
Las condiciones de contorno serán dos pues aparece la derivada segunda de la posición: &amp;lt;math&amp;gt; h(\rho_0 , t) = h_p \\&lt;br /&gt;
                                                                                                                                                                  h(20,t) = h_0 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
La condición inicial será única pues sólo aparece una derivada de primer orden en tiempo en nuestra ecuación: &amp;lt;math&amp;gt; h(\rho,0) = h_0 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
De este modo la ecuación resultante será:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \left\{\begin{matrix}&lt;br /&gt;
\frac{\partial h}{\partial t} - \frac{k}{s} (\frac{1}{\rho}  \frac{\partial h}{\partial \rho} + \frac{\partial^2 h}{\partial \rho^2})= 0 &amp;amp; \rho \epsilon (\rho_{0}, 2c) &amp;amp; \theta \epsilon (0, 2\Pi ) &amp;amp; t &amp;gt; 0 \\ &lt;br /&gt;
h(\rho_{0},t) = h_{p};   h(20, t)= h_{0} \\ &lt;br /&gt;
h(\rho, 0) = h_{0} &lt;br /&gt;
\end{matrix}\right. &amp;lt;/math&amp;gt; &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==== Resolución por método de diferencias finitas ====&lt;br /&gt;
&lt;br /&gt;
Suponiendo &amp;lt;math&amp;gt;ρ_0 =0.5m&amp;lt;/math&amp;gt;, &amp;lt;math&amp;gt;h_0 =45m&amp;lt;/math&amp;gt;, &amp;lt;math&amp;gt;hp =34&amp;lt;/math&amp;gt;, D=10−2, &amp;lt;math&amp;gt;(ρ,0)=h_0&amp;lt;/math&amp;gt;; y tomando  ∆ρ = 0.1 y ∆t = ∆ρ. Vamos a resolver la ecuación anterior por el método de diferencias finitas, usando el Método de Heun para realizar la aproximación en tiempo.&lt;br /&gt;
&lt;br /&gt;
Primero, sustituyendo los datos anteriores en la ecuación, llegamos a:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \left\{\begin{matrix}&lt;br /&gt;
\frac{\partial h}{\partial t} - 10^{2} (\frac{1}{\rho}  \frac{\partial h}{\partial \rho} + \frac{\partial^2 h}{\partial \rho^2})= 0 &amp;amp; \rho \epsilon (0.5, 20) &amp;amp; \theta \epsilon (0, 2\Pi ) &amp;amp; t &amp;gt; 0 \\ &lt;br /&gt;
h(0.5,t) = 34;   h(20, t)= 45 \\ &lt;br /&gt;
h(\rho, 0) = 45&lt;br /&gt;
\end{matrix}\right. &amp;lt;/math&amp;gt; &lt;br /&gt;
&lt;br /&gt;
Aplicando el método de las diferencias finitas llegamos al siguiente código:&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
&lt;br /&gt;
%TRPRIMERA FASE. ESPACIO&lt;br /&gt;
&lt;br /&gt;
a=0.5; b=20; %Condiciones de contorno&lt;br /&gt;
drho=0.1; N=(b-a)/drho; %División del intervalo&lt;br /&gt;
&lt;br /&gt;
rho=a+drho:drho:b-drho; %Sólo nodos interiores&lt;br /&gt;
&lt;br /&gt;
%Creamos las matrices&lt;br /&gt;
&lt;br /&gt;
L=diag(ones(1,N-2),1)-diag(ones(1,N-2),-1);&lt;br /&gt;
A=diag(1./rho);&lt;br /&gt;
L=10^(-2)*(1/(2*drho))*A*L;&lt;br /&gt;
&lt;br /&gt;
K=-2*diag(ones(1,N-1))+diag(ones(1,N-2),1)+diag(ones(1,N-2),-1);&lt;br /&gt;
K=10^(-2)*(1/drho^2)*K; &lt;br /&gt;
&lt;br /&gt;
F=zeros(N-1,1);&lt;br /&gt;
F(1,1)=10^(-2)*(-17/(rho(1)*drho)+34/drho^2);&lt;br /&gt;
F(N-1,1)=10^(-2)*(45/(rho(N-1)*2*drho)+45/drho^2);&lt;br /&gt;
&lt;br /&gt;
%SEGUDA FASE. TIEMPO&lt;br /&gt;
&lt;br /&gt;
H=ones(1,length(rho)); H=H*45; H=H';&lt;br /&gt;
dt=drho; T=10; t=0:dt:T;&lt;br /&gt;
h0=34; hN=45;&lt;br /&gt;
sol=[h0 H' hN];&lt;br /&gt;
&lt;br /&gt;
for j=1:length(t)-1 &lt;br /&gt;
    &lt;br /&gt;
    %Método de Heun&lt;br /&gt;
    k1=F+(K+L)*H;&lt;br /&gt;
    k2=F+(K+L)*(H+k1*dt);&lt;br /&gt;
    H=H+(dt/2)*(k1+k2);&lt;br /&gt;
 &lt;br /&gt;
    sol(j+1,:)=[h0 H' hN]; %Salvamos las solución, incluimos los extremos&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
rho1=a:drho:b; %Incluimos los nodos exteriores&lt;br /&gt;
&lt;br /&gt;
[rr,tt]=meshgrid(rho1,t);&lt;br /&gt;
surf(rr,tt,sol); %Dibujamos la solución&lt;br /&gt;
title('Nivel Piezométrico. Método Diferencias finitas con Heun en tiempo.')&lt;br /&gt;
xlabel('Distancia radial al centro del pozo.')&lt;br /&gt;
ylabel('Tiempo.')&lt;br /&gt;
zlabel('Nivel piezométrico.')&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
Mediante este código obtenemos la siguiente gráfica:&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Grafica npiezometrico.jpg|500px|thumb|best|Gráfica Nivel Piezométrico aproximada con el Método de Diferencias Finitas con Heun en tiempo.]]&lt;br /&gt;
&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Ahora dibujaremos la gráfica mediante los métodos de Euler implícito y trapecio y compararemos los resultados obtenidos.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Sobre el programa anterior cambiaremos las líneas correspondientes al método de Heun.&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* Método de Euler implícito:&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;math&amp;gt; \left\{\begin{matrix}&lt;br /&gt;
y_{0}\\&lt;br /&gt;
y_{n+1}=y_{n} + hf(t_{n+1},y_{n+1})\\&lt;br /&gt;
\end{matrix}\right. &amp;lt;/math&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
&lt;br /&gt;
for j=1:length(t)-1 &lt;br /&gt;
    &lt;br /&gt;
    %Método de Euler implícito&lt;br /&gt;
    &lt;br /&gt;
    H=(eye(N-1)-dt*(K+L))\(H+(F*dt)); &lt;br /&gt;
 &lt;br /&gt;
    sol(j+1,:)=[h0 H' hN]; %Salvamos las solución, incluimos los extremos&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
rho1=a:drho:b; %Incluimos los nodos exteriores&lt;br /&gt;
&lt;br /&gt;
[rr,tt]=meshgrid(rho1,t);&lt;br /&gt;
surf(rr,tt,sol); %Dibujamos la solución&lt;br /&gt;
title('Nivel Piezométrico. Método Diferencias finitas con Euler en tiempo.')&lt;br /&gt;
xlabel('Distancia radial al centro del pozo.')&lt;br /&gt;
ylabel('Tiempo.')&lt;br /&gt;
zlabel('Nivel piezométrico.')&lt;br /&gt;
&lt;br /&gt;
}}&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* Método del Trapecio:&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;math&amp;gt; \left\{\begin{matrix}&lt;br /&gt;
y_{0}\\&lt;br /&gt;
y_{n+1}=y_{n} + \frac{h}{2}f((t_{n},y_{n}+f(t_{n+1},y_{n+1}))\\&lt;br /&gt;
\end{matrix}\right. &amp;lt;/math&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
for j=1:length(t)-1 &lt;br /&gt;
    &lt;br /&gt;
    %Método del trapecio&lt;br /&gt;
    k1=F+(K+L)*H;&lt;br /&gt;
    k2=F+(K+L)*(H+k1*dt); &lt;br /&gt;
    H=(eye(N-1)-(dt/2)*(K+L))\(H+dt*F+(dt/2)*(K+L)*H);&lt;br /&gt;
 &lt;br /&gt;
    sol(j+1,:)=[h0 H' hN]; %Salvamos las solución, incluimos los extremos&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
rho1=a:drho:b; %Incluimos los nodos exteriores&lt;br /&gt;
&lt;br /&gt;
[rr,tt]=meshgrid(rho1,t);&lt;br /&gt;
surf(rr,tt,sol); %Dibujamos la solución&lt;br /&gt;
title('Nivel Piezométrico. Método Diferencias finitas con trapecio en tiempo.')&lt;br /&gt;
xlabel('Distancia radial al centro del pozo.')&lt;br /&gt;
ylabel('Tiempo.')&lt;br /&gt;
zlabel('Nivel piezométrico.')&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
Como podemos ver a continuación las tres gráficas resultantes son prácticamente iguales por lo que los tres métodos hacen una aproximación similar.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
[[Archivo:Trapecio12.png|500px|thumb|right|Gráfica Nivel Piezométrico aproximada con el Método de Diferencias Finitas con Trapecio en tiempo.]]&lt;br /&gt;
[[Archivo:Euler12.png|500px|thumb|right|Gráfica Nivel Piezométrico aproximada con el Método de Diferencias Finitas con Euler Implícito en tiempo.]]&lt;br /&gt;
&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== Comportamiento del nivel piezométrico con &amp;lt;math&amp;gt; \rho &amp;lt;/math&amp;gt; constante ====&lt;br /&gt;
&lt;br /&gt;
Ahora supondremos que &amp;lt;math&amp;gt; \rho &amp;lt;/math&amp;gt; es constante y que su valor es 2 y dibujaremos el comportamiento del nivel piezométrico en una gráfica 2D nivel piezométrico-tiempo.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Nuevamente utilizando el programa anterior con el  método de Heun:&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Rho2.png|500px|thumb|best|Gráfica Nivel Piezométrico-tiempo para &amp;lt;math&amp;gt; \rho =2 &amp;lt;/math&amp;gt; para T=10.]]&lt;br /&gt;
[[Archivo:Rho1000.png|500px|thumb|best|Gráfica Nivel Piezométrico-tiempo para &amp;lt;math&amp;gt; \rho =2 &amp;lt;/math&amp;gt; para T=1000.]]&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
&lt;br /&gt;
%PRIMERA FASE. ESPACIO&lt;br /&gt;
&lt;br /&gt;
a=0.5; b=20; %Condiciones de contorno&lt;br /&gt;
drho=0.1; N=(b-a)/drho; %División del intervalo&lt;br /&gt;
&lt;br /&gt;
rho=a+drho:drho:b-drho; %Sólo nodos interiores&lt;br /&gt;
&lt;br /&gt;
%Creamos las matrices&lt;br /&gt;
&lt;br /&gt;
L=diag(ones(1,N-2),1)-diag(ones(1,N-2),-1);&lt;br /&gt;
A=diag(1./rho);&lt;br /&gt;
L=10^(-2)*(1/(2*drho))*A*L;&lt;br /&gt;
&lt;br /&gt;
K=-2*diag(ones(1,N-1))+diag(ones(1,N-2),1)+diag(ones(1,N-2),-1);&lt;br /&gt;
K=10^(-2)*(1/drho^2)*K; &lt;br /&gt;
&lt;br /&gt;
F=zeros(N-1,1);&lt;br /&gt;
F(1,1)=10^(-2)*(-17/(rho(1)*drho)+34/drho^2);&lt;br /&gt;
F(N-1,1)=10^(-2)*(45/(rho(N-1)*2*drho)+45/drho^2);&lt;br /&gt;
&lt;br /&gt;
%SEGUDA FASE. TIEMPO&lt;br /&gt;
&lt;br /&gt;
H=ones(1,length(rho)); H=H*45; H=H';&lt;br /&gt;
dt=drho; &lt;br /&gt;
T=10 &lt;br /&gt;
%Comprobamos también la solución para un tiempo mayor &lt;br /&gt;
%T=1000&lt;br /&gt;
t=0:dt:T;&lt;br /&gt;
h0=34; hN=45;&lt;br /&gt;
sol=[h0 H' hN];&lt;br /&gt;
&lt;br /&gt;
for j=1:length(t)-1 &lt;br /&gt;
    &lt;br /&gt;
    %Método de Heun&lt;br /&gt;
    k1=F+(K+L)*H;&lt;br /&gt;
    k2=F+(K+L)*(H+k1*dt);&lt;br /&gt;
    H=H+(dt/2)*(k1+k2);&lt;br /&gt;
 &lt;br /&gt;
    sol(j+1,:)=[h0 H' hN]; %Salvamos las solución, incluimos los extremos&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
rho1=a:drho:b; %Incluimos los nodos exteriores&lt;br /&gt;
&lt;br /&gt;
m=sol(:,rho==2); %Vector que incluye la solución en tiempo para rho=2&lt;br /&gt;
&lt;br /&gt;
plot(t,m);&lt;br /&gt;
&lt;br /&gt;
title('Comportamiento del nivel piezométrico en el tiempo para p=2')&lt;br /&gt;
xlabel('Tiempo')&lt;br /&gt;
ylabel('Nivel piezométrico.')&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
La primera gráfica muestra que para tiempos pequeños la variación del nivel piezométrico es muy pequeña (del orden de 0,10/0,15 m), aún así como observamos en la segunda gráfica a medida que avanzamos en el tiempo la variación del nivel disminuye aún más ya que la curva está cada vez menos inclinada.&lt;br /&gt;
&lt;br /&gt;
==== Variación del nivel piezométrico en tiempos grandes ====&lt;br /&gt;
Ahora vamos a comprobar que la variación del nivel piezométrico para tiempos elevados (T=5000) es mínima.&lt;br /&gt;
Para ello dibujaremos las soluciones cada 100 horas de en el intervalo temporal [1; 5000], en&lt;br /&gt;
una misma gráfica.&lt;br /&gt;
[[Archivo:Tiemposg2.png|marco|derecha|Nivel piezométrico para tiempos grandes]]&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
%PRIMERA FASE. ESPACIO&lt;br /&gt;
&lt;br /&gt;
a=0.5; b=20; %Condiciones de contorno&lt;br /&gt;
drho=0.1; N=(b-a)/drho; %División del intervalo&lt;br /&gt;
&lt;br /&gt;
rho=a+drho:drho:b-drho; %Sólo nodos interiores&lt;br /&gt;
&lt;br /&gt;
%Creamos las matrices&lt;br /&gt;
&lt;br /&gt;
L=diag(ones(1,N-2),1)-diag(ones(1,N-2),-1);&lt;br /&gt;
A=diag(1./rho);&lt;br /&gt;
L=10^(-2)*(1/(2*drho))*A*L;&lt;br /&gt;
&lt;br /&gt;
K=-2*diag(ones(1,N-1))+diag(ones(1,N-2),1)+diag(ones(1,N-2),-1);&lt;br /&gt;
K=10^(-2)*(1/drho^2)*K; &lt;br /&gt;
&lt;br /&gt;
F=zeros(N-1,1);&lt;br /&gt;
F(1,1)=10^(-2)*(-17/(rho(1)*drho)+34/drho^2);&lt;br /&gt;
F(N-1,1)=10^(-2)*(45/(rho(N-1)*2*drho)+45/drho^2);&lt;br /&gt;
&lt;br /&gt;
%SEGUDA FASE. TIEMPO&lt;br /&gt;
&lt;br /&gt;
H=ones(1,length(rho)); H=H*45; H=H';&lt;br /&gt;
dt=0.1; T=5000; t=0:dt:T;&lt;br /&gt;
h0=34; hN=45;&lt;br /&gt;
sol=[h0 H' hN];&lt;br /&gt;
&lt;br /&gt;
figure(1);&lt;br /&gt;
hold on;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
for j=1:length(t)-1 &lt;br /&gt;
    &lt;br /&gt;
    %Método de Heun&lt;br /&gt;
    k1=F+(K+L)*H;&lt;br /&gt;
    k2=F+(K+L)*(H+k1*dt);&lt;br /&gt;
    H=H+(dt/2)*(k1+k2);&lt;br /&gt;
 &lt;br /&gt;
    sol(j+1,:)=[h0 H' hN]; %Salvamos las solución, incluimos los extremos&lt;br /&gt;
    &lt;br /&gt;
 if rem(t(j),100)==0; &lt;br /&gt;
    &lt;br /&gt;
    rho1=a:drho:b; %Incluimos los nodos exteriores&lt;br /&gt;
  &lt;br /&gt;
  plot(rho1,sol(j,:)) %pintamos la solución cada 100 horas&lt;br /&gt;
  &lt;br /&gt;
  title('Variación del nivel piezométrico para tiempos grandes')&lt;br /&gt;
  pause(1)&lt;br /&gt;
&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
end&lt;br /&gt;
}}&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Como se puede observar en la gráfica según vamos avanzando en el tiempo las curvas están más juntas lo que quiere decir que la variación del nivel es cada vez menor aproximándose a un régimen estacionario.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Trabajo21.jpg|marco|derecha|Nivel piezométrico estacionario]]&lt;br /&gt;
&lt;br /&gt;
====Problema estacionario====&lt;br /&gt;
Como hemos visto en el apartado anterior para tiempos grandes el nivel piezométrico se mantiene practicamente constante a lo largo del tiempo, esto es debido a que se establece un equilibrio entre el caudal de agua extraida del acuifero y la migración de aguas desde los puntos más alejados del pozo hacia este.&lt;br /&gt;
Por lo tanto se verifica que:&lt;br /&gt;
 &amp;lt;math&amp;gt;\frac{\partial h}{\partial t}=0&amp;lt;/math&amp;gt;&lt;br /&gt;
Y por lo tanto el nivel piezométrico se puede aproximar por:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \left\{\begin{matrix}&lt;br /&gt;
- \frac{k}{s} (\frac{1}{\rho}  \frac{\partial h}{\partial \rho} + \frac{\partial^2 h}{\partial \rho^2})= 0 &amp;amp; \rho \epsilon (1, 20) &amp;amp; \theta \epsilon (0, 2\Pi ) &amp;amp; 0 &amp;lt; t &amp;lt; 5000 \\ &lt;br /&gt;
h(1,t) = 35;    h(20, t)= 40 \\ &lt;br /&gt;
h(\rho, 0) = 40 &lt;br /&gt;
\end{matrix}\right. &amp;lt;/math&amp;gt;&lt;br /&gt;
Resolvemos por diferencias finitas:&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
    %datos&lt;br /&gt;
    t=5000;&lt;br /&gt;
    l=20;&lt;br /&gt;
    D=0.01;&lt;br /&gt;
    hp=35;&lt;br /&gt;
    ho=40;&lt;br /&gt;
    %discretización&lt;br /&gt;
    s=0.1;&lt;br /&gt;
    x0=1;&lt;br /&gt;
    x=x0:s:l;&lt;br /&gt;
    xint=x0+s:s:l-s;&lt;br /&gt;
    N=length(x)-2; &lt;br /&gt;
    %construimos las matrices para el método de las diferencias finitas&lt;br /&gt;
    K=(1/s^2)*(diag(2*ones(1,N))-diag(ones(1,N-1),1)-diag(ones(1,N-1),-1));&lt;br /&gt;
    A=(1/(s*2))*(diag(ones(1,N-1),1)-diag(ones(1,N-1),-1));&lt;br /&gt;
    A=diag(1./xint)*A;&lt;br /&gt;
    h0=(40*ones(N,1));&lt;br /&gt;
    dt=200; &lt;br /&gt;
    t=0:dt:t;&lt;br /&gt;
    M=length(t)-1;&lt;br /&gt;
    F=(zeros(N,1));&lt;br /&gt;
    F(1)=D*((hp/s^2)-(hp/(2*s)*1/xint(1)));&lt;br /&gt;
    F(N)=D*((ho/s^2)+ho/(s*2*xint(N)));&lt;br /&gt;
    H(1,:)=[40;h0;40]'; &lt;br /&gt;
    h=h0;&lt;br /&gt;
    for n=1:M&lt;br /&gt;
      h=(D)*(K-A)\((F)); %utilizamos el comando backslash para resolver el sistema de ecuaciones&lt;br /&gt;
      H(n+1,:)=[hp h' ho];&lt;br /&gt;
    end&lt;br /&gt;
    %mallado y representación&lt;br /&gt;
    [X,T]=meshgrid(x,t);&lt;br /&gt;
    surf(X,T,H)&lt;br /&gt;
    xlabel('Distancia (metros)');&lt;br /&gt;
    ylabel('Tiempo (horas)');&lt;br /&gt;
    zlabel('Nivel piezométrico (metros)')&lt;br /&gt;
}}&lt;br /&gt;
Efectivamente, como podemos comprobar en la gráfica, la solución es independiente del tiempo salvo para tiempos pequeños en los cuales no queda muy bien definida&lt;br /&gt;
&lt;br /&gt;
También adjuntamos un programa que calcula el error entre la aproximación del problema considerándolo estacionario y la aproximación original para ciertos instantes:&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
%TRPRIMERA FASE. ESPACIO&lt;br /&gt;
 &lt;br /&gt;
a=0.5; b=20; %Condiciones de contorno&lt;br /&gt;
drho=0.1; N=(b-a)/drho; %División del intervalo&lt;br /&gt;
 &lt;br /&gt;
rho=a+drho:drho:b-drho; %Sólo nodos interiores&lt;br /&gt;
 &lt;br /&gt;
%Creamos las matrices&lt;br /&gt;
 &lt;br /&gt;
L=diag(ones(1,N-2),1)-diag(ones(1,N-2),-1);&lt;br /&gt;
A=diag(1./rho);&lt;br /&gt;
L=10^(-2)*(1/(2*drho))*A*L;&lt;br /&gt;
 &lt;br /&gt;
K=-2*diag(ones(1,N-1))+diag(ones(1,N-2),1)+diag(ones(1,N-2),-1);&lt;br /&gt;
K=10^(-2)*(1/drho^2)*K; &lt;br /&gt;
 &lt;br /&gt;
F=zeros(N-1,1);&lt;br /&gt;
F(1,1)=10^(-2)*(-17/(rho(1)*drho)+34/drho^2);&lt;br /&gt;
F(N-1,1)=10^(-2)*(45/(rho(N-1)*2*drho)+45/drho^2);&lt;br /&gt;
 &lt;br /&gt;
%SEGUDA FASE. TIEMPO&lt;br /&gt;
 &lt;br /&gt;
H=ones(1,length(rho)); H=H*45; H=H';&lt;br /&gt;
dt=1; T=5000; t=0:dt:T;&lt;br /&gt;
h0=34; hN=45;&lt;br /&gt;
sol=[h0 H' hN];&lt;br /&gt;
 &lt;br /&gt;
for j=1:length(t)-1 &lt;br /&gt;
 &lt;br /&gt;
    %Método de Heun&lt;br /&gt;
    k1=F+(K+L)*H;&lt;br /&gt;
    k2=F+(K+L)*(H+k1*dt);&lt;br /&gt;
    H=H+(dt/2)*(k1+k2);&lt;br /&gt;
 &lt;br /&gt;
    sol(j+1,:)=[h0 H' hN]; %Salvamos las solución, incluimos los extremos&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
%CALCULAMOS SOLUCIÓN ESTACIONARIA&lt;br /&gt;
&lt;br /&gt;
%PRIMERA FASE. ESPACIO&lt;br /&gt;
 &lt;br /&gt;
a=0.5; b=20; %Condiciones de contorno&lt;br /&gt;
drho=0.1; N=(b-a)/drho; %División del intervalo&lt;br /&gt;
 &lt;br /&gt;
rho=a+drho:drho:b-drho; %Sólo nodos interiores&lt;br /&gt;
 &lt;br /&gt;
%Creamos las matrices&lt;br /&gt;
 &lt;br /&gt;
L=diag(ones(1,N-2),1)-diag(ones(1,N-2),-1);&lt;br /&gt;
A=diag(1./rho);&lt;br /&gt;
L=10^(-2)*(1/(2*drho))*A*L;&lt;br /&gt;
 &lt;br /&gt;
K=-2*diag(ones(1,N-1))+diag(ones(1,N-2),1)+diag(ones(1,N-2),-1);&lt;br /&gt;
K=10^(-2)*(1/drho^2)*K; &lt;br /&gt;
 &lt;br /&gt;
F=zeros(N-1,1);&lt;br /&gt;
F(1,1)=10^(-2)*(-17/(rho(1)*drho)+34/drho^2);&lt;br /&gt;
F(N-1,1)=10^(-2)*(45/(rho(N-1)*2*drho)+45/drho^2);&lt;br /&gt;
 &lt;br /&gt;
%SEGUDA FASE. TIEMPO&lt;br /&gt;
 &lt;br /&gt;
H=ones(1,length(rho)); H=H*45; H=H';&lt;br /&gt;
dt=1; T=5000; t=0:dt:T;&lt;br /&gt;
h0=34; hN=45;&lt;br /&gt;
solest=[h0 H' hN];&lt;br /&gt;
 &lt;br /&gt;
for j=1:length(t)-1 &lt;br /&gt;
 &lt;br /&gt;
    H=-(L+K)\F;&lt;br /&gt;
 &lt;br /&gt;
    solest(j+1,:)=[h0 H' hN]; %Salvamos las solución, incluimos los extremos&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
e0=max(abs(sol(1,:)-solest(1,:)))&lt;br /&gt;
e100=max(abs(sol(101,:)-solest(101,:)))&lt;br /&gt;
e1000=max(abs(sol(1001,:)-solest(1001,:)))&lt;br /&gt;
e5000=max(abs(sol(5001,:)-solest(5001,:)))&lt;br /&gt;
}}&lt;br /&gt;
error para t=0: 0&lt;br /&gt;
error para t=100:5.6443e+67&lt;br /&gt;
error para t=1000: 0&lt;br /&gt;
error para t=5000: 0&lt;br /&gt;
&lt;br /&gt;
====Capacidad de recuperación del acuífero====&lt;br /&gt;
En este apartado queremos calcular una ley que nos describa el comportamiento del acuífero e el caso de que impermeabilizásemos las paredes del pozo partiendo del estado estacionario anterior, esto significaría que el fujo de agua en los bordes del pozo sería nulo y el nivel piezométrico iría variando hasta llegar a otro estado estacionario.&lt;br /&gt;
El estado estacionarioque tenderá a alcanzar el fluido será el inicial, ya que al impermeabilizar las paredes volvemos al caso del acuífero confinado y por ello es nivel piezométrico quedará constante a lo largo del tiempo y de la extensión del acuífero.&lt;br /&gt;
La condición frontera a imponer será que el flujo de agua en r0 será 0, ya que estará impermeabilizado. Esto lo podemos plasmar diciendo que la parcial del nivel piezométrico con respecto a ro en r0 es 0, ya que un aislamiento impide el flujo de líquido, y si el flujo de líquido es nulo el nivel piezométrico no varía.&lt;br /&gt;
&amp;lt;math&amp;gt;\frac{\partial h}{\partial \rho}=0&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Con la condición que acabamos de proponer resolvemos numéricamente con Matlab:&lt;br /&gt;
[[Archivo:ESTACIONARIO1.jpg|marco|derecha|Recuperación del acuífero tras impermeabilizar]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
clear all&lt;br /&gt;
&lt;br /&gt;
%REPETIMOS EL PROGRAMA ANTERIOR PARA SACAR EL VALOR ESTACIONARIO&lt;br /&gt;
 &lt;br /&gt;
a=0.5; b=20; %Condiciones de contorno&lt;br /&gt;
drho=0.1; N=(b-a)/drho; %División del intervalo&lt;br /&gt;
rho=a:drho:b-drho; %Sólo nodos interiores&lt;br /&gt;
L=diag(ones(1,N-1),1)-diag(ones(1,N-1),-1);&lt;br /&gt;
L(1,2)=0;&lt;br /&gt;
A=diag(1./rho);&lt;br /&gt;
L=10^(-2)*(1/(2*drho))*A*L;&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(1,2)=2;&lt;br /&gt;
K=10^(-2)*(1/drho^2)*K; &lt;br /&gt;
F=zeros(N,1);&lt;br /&gt;
F(1,1)=0; %Ahora esto es cero&lt;br /&gt;
F(N,1)=10^(-2)*(45/(rho(N)*2*drho)+45/drho^2);&lt;br /&gt;
H=ones(1,length(rho)); H=H*45; H=H';&lt;br /&gt;
dt=200; T=5000; t=0:dt:T;&lt;br /&gt;
h0=34; hN=45;&lt;br /&gt;
sol=[h0 H' hN];&lt;br /&gt;
 &lt;br /&gt;
for j=1:length(t)-1 &lt;br /&gt;
 &lt;br /&gt;
    H=-(L+K)\F;&lt;br /&gt;
    &lt;br /&gt;
    MAT=[h0 H' hN];&lt;br /&gt;
 &lt;br /&gt;
    sol(j+1,:)=[h0 H' hN]; %Salvamos las solución, incluimos los extremos&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
%AHORA RESOLVEMOS PARA EL CASO DE LA RECUPERACIÓN&lt;br /&gt;
&lt;br /&gt;
%PRIMERA FASE. ESPACIO&lt;br /&gt;
 &lt;br /&gt;
a=0.5; b=20; %Condiciones de contorno&lt;br /&gt;
drho=0.1; N=(b-a)/drho; %División del intervalo&lt;br /&gt;
 &lt;br /&gt;
rho=a:drho:b-drho; %Sólo nodos interiores&lt;br /&gt;
 &lt;br /&gt;
%Creamos las matrices&lt;br /&gt;
 &lt;br /&gt;
L=diag(ones(1,N-1),1)-diag(ones(1,N-1),-1);&lt;br /&gt;
L(1,2)=0;&lt;br /&gt;
A=diag(1./rho);&lt;br /&gt;
L=10^(-2)*(1/(2*drho))*A*L;&lt;br /&gt;
 &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(1,2)=2;&lt;br /&gt;
K=10^(-2)*(1/drho^2)*K; &lt;br /&gt;
 &lt;br /&gt;
F=zeros(N,1);&lt;br /&gt;
F(1)=0; %Ahora esto es cero&lt;br /&gt;
F(N)=10^(-2)*(45/(rho(N)*2*drho)+45/drho^2);&lt;br /&gt;
 &lt;br /&gt;
%SEGUDA FASE. TIEMPO&lt;br /&gt;
 &lt;br /&gt;
H=ones(1,length(rho)); &lt;br /&gt;
dt=200; T=5000; t=0:dt:T;&lt;br /&gt;
hN=45;&lt;br /&gt;
sol=[MAT(1:length(rho)) hN];&lt;br /&gt;
&lt;br /&gt;
for j=1:length(t)-1 &lt;br /&gt;
    &lt;br /&gt;
    H=(-(L+K))\F;&lt;br /&gt;
 &lt;br /&gt;
    sol(j+1,:)=[H' hN]; %Salvamos las solución, incluimos los extremos&lt;br /&gt;
end&lt;br /&gt;
 &lt;br /&gt;
rho1=a:drho:b; %Incluimos los nodos exteriores&lt;br /&gt;
 &lt;br /&gt;
[rr,tt]=meshgrid(rho1,t);&lt;br /&gt;
surf(rr,tt,sol); %Dibujamos la solución&lt;br /&gt;
title('Recuperación del acuífero. Condición estacionaria.')&lt;br /&gt;
xlabel('Distancia radial al centro del pozo.')&lt;br /&gt;
ylabel('Tiempo.')&lt;br /&gt;
zlabel('Nivel piezométrico.')&lt;br /&gt;
}}&lt;br /&gt;
Este programa nos representa la evolución del nivel piezométrico del acuífero tras ser impermeabilizado, partiendo del estado estacionario descrito anteriormente hasta llegar al estado inicial con h constante.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
También construimos un programa aparte que calcula, con un error del 5%, cuánto dura esta recuperación del nivel piezométrico:&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
clear all&lt;br /&gt;
&lt;br /&gt;
%PRIMERA FASE. ESPACIO&lt;br /&gt;
 &lt;br /&gt;
a=0.5; b=20; %Condiciones de contorno&lt;br /&gt;
drho=0.1; N=(b-a)/drho; %División del intervalo&lt;br /&gt;
 &lt;br /&gt;
rho=a:drho:b-drho; %Sólo nodos interiores&lt;br /&gt;
 &lt;br /&gt;
%Creamos las matrices&lt;br /&gt;
 &lt;br /&gt;
L=diag(ones(1,N-1),1)-diag(ones(1,N-1),-1);&lt;br /&gt;
L(1,2)=0;&lt;br /&gt;
A=diag(1./rho);&lt;br /&gt;
L=10^(-2)*(1/(2*drho))*A*L;&lt;br /&gt;
 &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(1,2)=2;&lt;br /&gt;
K=10^(-2)*(1/drho^2)*K; &lt;br /&gt;
 &lt;br /&gt;
F=zeros(N,1);&lt;br /&gt;
F(1,1)=0; %Ahora esto es cero&lt;br /&gt;
F(N,1)=10^(-2)*(45/(rho(N)*2*drho)+45/drho^2);&lt;br /&gt;
 &lt;br /&gt;
%SEGUDA FASE. TIEMPO&lt;br /&gt;
 &lt;br /&gt;
H=ones(1,length(rho)); H=H*45; H=H';&lt;br /&gt;
dt=1; T=5000; t=0:dt:T;&lt;br /&gt;
h0=34; hN=45;&lt;br /&gt;
sol=[h0 H' hN];&lt;br /&gt;
 &lt;br /&gt;
for j=1:length(t)-1 &lt;br /&gt;
 &lt;br /&gt;
    H=-(L+K)\F;&lt;br /&gt;
    &lt;br /&gt;
    MAT=[h0 H' hN];&lt;br /&gt;
 &lt;br /&gt;
    sol(j+1,:)=[h0 H' hN]; %Salvamos las solución, incluimos los extremos&lt;br /&gt;
end&lt;br /&gt;
 &lt;br /&gt;
&lt;br /&gt;
%PRIMERA FASE. ESPACIO&lt;br /&gt;
 &lt;br /&gt;
a=0.5; b=20; %Condiciones de contorno&lt;br /&gt;
drho=0.1; N=(b-a)/drho; %División del intervalo&lt;br /&gt;
 &lt;br /&gt;
rho=a:drho:b-drho; %Sólo nodos interiores&lt;br /&gt;
 &lt;br /&gt;
%Creamos las matrices&lt;br /&gt;
 &lt;br /&gt;
L=diag(ones(1,N-1),1)-diag(ones(1,N-1),-1);&lt;br /&gt;
L(1,2)=0;&lt;br /&gt;
A=diag(1./rho);&lt;br /&gt;
L=10^(-2)*(1/(2*drho))*A*L;&lt;br /&gt;
 &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(1,2)=2;&lt;br /&gt;
K=10^(-2)*(1/drho^2)*K; &lt;br /&gt;
 &lt;br /&gt;
F=zeros(N,1);&lt;br /&gt;
F(1,1)=0; %Ahora esto es cero&lt;br /&gt;
F(N,1)=10^(-2)*(45/(rho(N)*2*drho)+45/drho^2);&lt;br /&gt;
 &lt;br /&gt;
%SEGUDA FASE. TIEMPO&lt;br /&gt;
 &lt;br /&gt;
H=ones(1,length(rho)); &lt;br /&gt;
dt=1; T=5000; t=0:dt:T;&lt;br /&gt;
hN=45;&lt;br /&gt;
sol=[MAT(1:length(rho)) hN];&lt;br /&gt;
&lt;br /&gt;
for j=1:length(t)-1 &lt;br /&gt;
    &lt;br /&gt;
    H=-(L+K)\F;&lt;br /&gt;
 &lt;br /&gt;
    sol(j+1,:)=[H' hN]; %Salvamos las solución, incluimos los extremos&lt;br /&gt;
    &lt;br /&gt;
    error=max(abs(sol(j+1,:)-hN*ones(1,N+1)));&lt;br /&gt;
    &lt;br /&gt;
    tiempo=j; %Contador de tiempo, cada bucle una hora&lt;br /&gt;
    if error &amp;lt;=0.05&lt;br /&gt;
        break&lt;br /&gt;
    end&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
tiempo %Saca en pantalla el tiempo que tarda en alcanzar el régimen estacionario&lt;br /&gt;
}}&lt;br /&gt;
El resultado es de 1 hora.&lt;br /&gt;
''*'''Nota''': los programas son reiterativos y definen las mismas variables por estar diseñados para compilar por separado.''&lt;br /&gt;
&lt;br /&gt;
====Método de Fourier====&lt;br /&gt;
Ahora suponemos que el radio del pozo es despreciable y que una vez extraido el agua el pozo se cierra quedando el acuifero de nuevo homogéneo. En este caso tomaremos la región ρ &amp;lt; 20. Nuestro objetivo es aproximar las soluciones usando el método de Fourier. De nuevo supondremos que la solución sólo depende de ρ y t, y tomaremos ahora como condición frontera h(20, t) = 40.&lt;br /&gt;
Vamos a considerar el sistema de ecuaciones para h(ρ,t)=h(ρ,t)-40:&lt;br /&gt;
 &amp;lt;math&amp;gt; \left\{\begin{matrix}&lt;br /&gt;
\frac{\partial h}{\partial t} - D (\frac{1}{\rho}  \frac{\partial h}{\partial \rho} + \frac{\partial^2 h}{\partial \rho^2})= 0 &amp;amp; \rho \epsilon (0, 20) &amp;amp; \theta \epsilon (0, 2\Pi ) &amp;amp; t &amp;gt; 0 \\ &lt;br /&gt;
\frac{\partial h}{\partial \rho}(0,t) = 0;   h(20, t)= 0 \\ &lt;br /&gt;
\end{matrix}\right. &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Obtenemos el problema de autovalores asociado al sistema anterior con el método de separación de variables:&lt;br /&gt;
 &amp;lt;math&amp;gt; \left\{\begin{matrix}&lt;br /&gt;
D (\frac{X'(\rho)}{\rho} + X''(\rho))+ λX(\rho)=0 \\&lt;br /&gt;
X'(0) = 0;   X(20)= 0 \\ &lt;br /&gt;
&lt;br /&gt;
\end{matrix}\right. &amp;lt;/math&amp;gt;&lt;br /&gt;
[[Archivo:Marta1.jpg|marco|derecha]]&lt;br /&gt;
Sabemos que los problemas de esta forma tienen como solución la función de Bessel de primera especie que forma una familia de autofunciones: &amp;lt;math&amp;gt;Ψ(\rho)=J_0·(\rho\sqrt{λ})&amp;lt;/math&amp;gt;. Estas se anulan cuando &amp;lt;math&amp;gt;(\rho\sqrt{λ})&amp;lt;/math&amp;gt; se iguala a 2.4048, 5.5201, 8.6537, 11.7915 y 14.9309, siendo estos los 5 primeros ceros de la función de Bessel. De esta manera y tomando ρ=20 obtenemos los 5 primeros autovalores:&lt;br /&gt;
&amp;lt;math&amp;gt;(20\sqrt{λ})=2.4048&amp;lt;/math&amp;gt;Haciendo la operación anterior para los 5 ceros obtenemos los siguientes autovalores: 0.0145, 0.0762, 0.1872, 0.3476, 0.5573.&lt;br /&gt;
Ahora vamos a dibujar las 5 primeras autofunciones utilizando la función besselj:&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
a1=0.0145;&lt;br /&gt;
a2=0.0762;&lt;br /&gt;
a3=0.1872;&lt;br /&gt;
a4=0.3476;&lt;br /&gt;
a5=0.5575;&lt;br /&gt;
r=0:0.02:20;&lt;br /&gt;
F1=besselj(0,r.*(sqrt(a1))); &lt;br /&gt;
F2=besselj(0,r.*(sqrt(a2)));&lt;br /&gt;
F3=besselj(0,r.*(sqrt(a3)));&lt;br /&gt;
F4=besselj(0,r.*(sqrt(a4)));&lt;br /&gt;
F5=besselj(0,r.*(sqrt(a5)));&lt;br /&gt;
hold on&lt;br /&gt;
plot(r,F1)&lt;br /&gt;
plot(r,F2,'r')&lt;br /&gt;
plot(r,F3,'g')	&lt;br /&gt;
plot(r,F4,'c')&lt;br /&gt;
plot(r,F5,'y')&lt;br /&gt;
hold off&lt;br /&gt;
}}&lt;br /&gt;
[[Archivo:Marta2.jpg|marco|derecha]]&lt;br /&gt;
Aproximamos ahora la solución de la ecuación tomando como dato inicial es&amp;lt;math&amp;gt; h (\rho,0)= -log \frac{|\rho + 0.01|}{20.01} &amp;lt;/math&amp;gt; y usando 5 términos del desarrollo de Fourier, teniendo en cuenta que las autofunciones son ortogonales respecto al producto escalar: &amp;lt;math&amp;gt; (f(\rho),g(\rho)) = \int_{0}^{20} \rho f(\rho) g(\rho) \cdot dx &amp;lt;/math&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
x0=0; L=20;&lt;br /&gt;
c0=[2.4048,5.5201,8.6537,11.7915,14.9309]; %Vector de ceros de la función de Bessel&lt;br /&gt;
A=(c0./20).^2; %Vector de autovalores&lt;br /&gt;
K=5; %Número de términos del desarrollo de Fourier&lt;br /&gt;
x=x0:0.1:L;&lt;br /&gt;
N=length(x)-1;&lt;br /&gt;
J=zeros(N+1,K);&lt;br /&gt;
z=zeros(N+1,K);&lt;br /&gt;
t0=0; tf=500;&lt;br /&gt;
t=t0:0.1:tf;&lt;br /&gt;
[xx,tt]=meshgrid(x,t);&lt;br /&gt;
h=0;&lt;br /&gt;
for k=1:K&lt;br /&gt;
   z(:,k)=(x)'*sqrt(A(k));&lt;br /&gt;
   J(:,k)=besselj(0,z(:,k));&lt;br /&gt;
   h0=-log((abs(x+0.1))/20.01); %Condición inicial&lt;br /&gt;
   c(k)=trapz(x,x'.*h0'.*J(:,k))/trapz(x,x'.*J(:,k).*J(:,k)); %Coeficientes de Fourier&lt;br /&gt;
   h=h+c(k)*exp(-A(k)*t)'*J(:,k)';&lt;br /&gt;
end&lt;br /&gt;
surf(xx,tt,h)&lt;br /&gt;
title('Aproximación de la solución')&lt;br /&gt;
}}&lt;/div&gt;</summary>
		<author><name>Marta Cavero</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Nivel_piezom%C3%A9trico_de_un_acu%C3%ADfero_confinado_(A5)&amp;diff=30492</id>
		<title>Nivel piezométrico de un acuífero confinado (A5)</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Nivel_piezom%C3%A9trico_de_un_acu%C3%ADfero_confinado_(A5)&amp;diff=30492"/>
				<updated>2015-05-21T12:02:31Z</updated>
		
		<summary type="html">&lt;p&gt;Marta Cavero: /* Problema estacionario */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;br /&gt;
==== Introducción ====&lt;br /&gt;
&lt;br /&gt;
Consideramos un acuífero confinado entre dos capas de terreno impermeables horizontales. Llamaremos h(x, y) al nivel piezométrico del acuífero, definido por la altura que alcanzaría el agua si hiciéramos un sondeo en el punto (x, y). Obviamente este valor depende de la presión a la que se encuentra el agua confinada en el acuífero. Supondremos&lt;br /&gt;
que el acuífero es un medio poroso saturado de agua que ocupa una región infinita y está en equilibrio de manera que &amp;lt;math&amp;gt;h(x, y) = h_0&amp;lt;/math&amp;gt; constante para todo (x, y) ∈ &amp;lt;math&amp;gt;IR^{2}&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Sobre el acuifero se construye un pozo de sección circular y radio&amp;lt;math&amp;gt; ρ_0&amp;lt;/math&amp;gt; para extraer agua. La presencia del pozo hace que el nivel piezométrico cambie. Dada la simetría del problema podemos suponer que h(x, y) sólo va a depender de la distancia al pozo. Si tomamos coordenadas cilíndricas de forma que el eje OZ coincida con el eje de simetría del pozo, entonces h = h(ρ) donde &amp;lt;math&amp;gt;ρ = \sqrt{x^{2} + y^{2}}&amp;lt;/math&amp;gt; . Trabajaremos por tanto en coordenadas polares en el plano (ρ, θ).&lt;br /&gt;
&lt;br /&gt;
Las ecuaciones que permiten conocer h(ρ) son la ecuación de conservación de la masa:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; S = \frac{∂h}{∂t} + div q = 0 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
junto con la ley de Darcy&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; q = −K∇h &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
que es una ley experimental que modela el flujo de agua en un medio poroso. La ley de Darcy establece que el flujo de agua q a través de un medio poroso es proporcional a la diferencia de presión, que a su vez se puede escribir en términos del gradiente del nivel piezométrico en cada punto. La constante K se deduce experimentalmente para cada material y se conoce como la conductividad hidráulica o permeabilidad. Cuanto mayor es la constante K mayor es el flujo de agua provocado por un cambio&lt;br /&gt;
de presión. La ley de Darcy proporciona una buena aproximación del comportamiento del agua en un medio poroso siempre que este sea homogéneo e isótropo.&lt;br /&gt;
&lt;br /&gt;
La constante S en la ley de conservación de la masa se conoce como almacenamiento específico y se interpreta como la cantidad de agua que libera el acuífero al descender el nivel piezométrico en una unidad, por unidad de volumen.&lt;br /&gt;
&lt;br /&gt;
Combinando las ecuaciones de conservación de la masa con la ley de Darcy, obtenemos la ecuación:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \frac{∂h}{∂t} - D∆h = 0, ρ &amp;gt; ρ_0, θ ∈ (0, 2π), t &amp;gt; 0, (1) &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
donde D = K/S es la difusividad hidráulica que supondremos constante.&lt;br /&gt;
&lt;br /&gt;
==== Deducción de la fórmula ====&lt;br /&gt;
&lt;br /&gt;
En este apartado buscamos demostrar la ecuación (1) como combinación de la ecuación de conservación de masas y la Ley de Darcy.&lt;br /&gt;
&lt;br /&gt;
Por un lado sabemos que el laplaciaco equivale a la divergencia del gradiente: &lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; &lt;br /&gt;
(\Delta f = \nabla \cdot \nabla f = div \left (\nabla f) \right) &lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Por otro lado, sabemos que en coordenadas polares: &lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;x = ρ cos \theta \\&lt;br /&gt;
             y = ρ  sen \theta&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\bar{g_ρ } = cos \theta \bar{i} + sin \theta  \bar{j} \\&lt;br /&gt;
              \bar{g_\theta } = - ρ  sin \theta \bar{i} + ρ cos \theta \bar{j} &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;&lt;br /&gt;
G =&lt;br /&gt;
\left(&lt;br /&gt;
\begin{array}{cc}&lt;br /&gt;
1&amp;amp; 0 \\&lt;br /&gt;
0 &amp;amp; ρ ^{2} \\&lt;br /&gt;
\end{array}&lt;br /&gt;
\right);&lt;br /&gt;
\text {donde la raiz del determinante es} \sqrt{g} = ρ&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Como indica el enunciado, al sustituir la Ley de Darcy en la ecuación de conservación de la masa obtenemos y dividir entre S, teniendo en cuenta que el divergente del gradiente es el laplaciano como hemos indicado al principio de este apartado, obtenemos la ecuación (1): &amp;lt;math&amp;gt; \frac{∂h}{∂t} - \frac{k}{S}∆h = 0 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
En esta ecuación queda por desarrollar el Laplaciano de h. &lt;br /&gt;
Partiremos de la función h(ρ,θ), de la cual calcularemos primero el gradiente:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \nabla h = \frac{\partial h}{\partial \rho}\hat{\rho} + \frac{\partial h}{\partial \rho}\hat{\theta} =  \frac{\partial h}{\partial \rho}\bar{\rho} + \frac{1}{\rho^{2}} \frac{\partial h}{\partial \rho}\bar{\theta}  &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
teniendo en cuenta que &amp;lt;math&amp;gt;\bar{g^{i} } = \frac{\bar{g_i } }{ | \bar{g_i } | ^{2} } &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Ahora hacemos el divergente del gradiente anterior y obtenemos el Laplaciano en coordenadas polares:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;math&amp;gt;&lt;br /&gt;
 \Delta h = div(∇h) &lt;br /&gt;
= {1 \over \rho} {\partial \over \partial \rho}&lt;br /&gt;
  \left( \rho {\partial h \over \partial \rho} \right) &lt;br /&gt;
+ {1 \over \rho^2} {\partial^2 h \over \partial \theta^2}&lt;br /&gt;
= {1 \over \rho} {\partial h \over \partial \rho} &lt;br /&gt;
+ {\partial^2 h \over \partial \rho^2}&lt;br /&gt;
+ {1 \over \rho^2} {\partial^2 h \over \partial \theta^2}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Si consideramos que, debido a la simetría del problema, h sólo depende de su distancia al pozo, entonces obtenemos la función radial h(ρ), que nos permite simplificar el Laplaciano del modo siguiente:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;math&amp;gt;&lt;br /&gt;
 \Delta h = div(∇h) &lt;br /&gt;
= {1 \over \rho} {\partial h \over \partial \rho} &lt;br /&gt;
+ {\partial^2 h \over \partial \rho^2}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== Obtención de la ecuación====&lt;br /&gt;
&lt;br /&gt;
Para poder resolver la ecuación anterior y que el resultado sea único, hemos de establecer condiciones iniciales y de contorno.&lt;br /&gt;
&lt;br /&gt;
Las condiciones de contorno serán dos pues aparece la derivada segunda de la posición: &amp;lt;math&amp;gt; h(\rho_0 , t) = h_p \\&lt;br /&gt;
                                                                                                                                                                  h(20,t) = h_0 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
La condición inicial será única pues sólo aparece una derivada de primer orden en tiempo en nuestra ecuación: &amp;lt;math&amp;gt; h(\rho,0) = h_0 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
De este modo la ecuación resultante será:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \left\{\begin{matrix}&lt;br /&gt;
\frac{\partial h}{\partial t} - \frac{k}{s} (\frac{1}{\rho}  \frac{\partial h}{\partial \rho} + \frac{\partial^2 h}{\partial \rho^2})= 0 &amp;amp; \rho \epsilon (\rho_{0}, 2c) &amp;amp; \theta \epsilon (0, 2\Pi ) &amp;amp; t &amp;gt; 0 \\ &lt;br /&gt;
h(\rho_{0},t) = h_{p};   h(20, t)= h_{0} \\ &lt;br /&gt;
h(\rho, 0) = h_{0} &lt;br /&gt;
\end{matrix}\right. &amp;lt;/math&amp;gt; &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==== Resolución por método de diferencias finitas ====&lt;br /&gt;
&lt;br /&gt;
Suponiendo &amp;lt;math&amp;gt;ρ_0 =0.5m&amp;lt;/math&amp;gt;, &amp;lt;math&amp;gt;h_0 =45m&amp;lt;/math&amp;gt;, &amp;lt;math&amp;gt;hp =34&amp;lt;/math&amp;gt;, D=10−2, &amp;lt;math&amp;gt;(ρ,0)=h_0&amp;lt;/math&amp;gt;; y tomando  ∆ρ = 0.1 y ∆t = ∆ρ. Vamos a resolver la ecuación anterior por el método de diferencias finitas, usando el Método de Heun para realizar la aproximación en tiempo.&lt;br /&gt;
&lt;br /&gt;
Primero, sustituyendo los datos anteriores en la ecuación, llegamos a:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \left\{\begin{matrix}&lt;br /&gt;
\frac{\partial h}{\partial t} - 10^{2} (\frac{1}{\rho}  \frac{\partial h}{\partial \rho} + \frac{\partial^2 h}{\partial \rho^2})= 0 &amp;amp; \rho \epsilon (0.5, 20) &amp;amp; \theta \epsilon (0, 2\Pi ) &amp;amp; t &amp;gt; 0 \\ &lt;br /&gt;
h(0.5,t) = 34;   h(20, t)= 45 \\ &lt;br /&gt;
h(\rho, 0) = 45&lt;br /&gt;
\end{matrix}\right. &amp;lt;/math&amp;gt; &lt;br /&gt;
&lt;br /&gt;
Aplicando el método de las diferencias finitas llegamos al siguiente código:&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
&lt;br /&gt;
%TRPRIMERA FASE. ESPACIO&lt;br /&gt;
&lt;br /&gt;
a=0.5; b=20; %Condiciones de contorno&lt;br /&gt;
drho=0.1; N=(b-a)/drho; %División del intervalo&lt;br /&gt;
&lt;br /&gt;
rho=a+drho:drho:b-drho; %Sólo nodos interiores&lt;br /&gt;
&lt;br /&gt;
%Creamos las matrices&lt;br /&gt;
&lt;br /&gt;
L=diag(ones(1,N-2),1)-diag(ones(1,N-2),-1);&lt;br /&gt;
A=diag(1./rho);&lt;br /&gt;
L=10^(-2)*(1/(2*drho))*A*L;&lt;br /&gt;
&lt;br /&gt;
K=-2*diag(ones(1,N-1))+diag(ones(1,N-2),1)+diag(ones(1,N-2),-1);&lt;br /&gt;
K=10^(-2)*(1/drho^2)*K; &lt;br /&gt;
&lt;br /&gt;
F=zeros(N-1,1);&lt;br /&gt;
F(1,1)=10^(-2)*(-17/(rho(1)*drho)+34/drho^2);&lt;br /&gt;
F(N-1,1)=10^(-2)*(45/(rho(N-1)*2*drho)+45/drho^2);&lt;br /&gt;
&lt;br /&gt;
%SEGUDA FASE. TIEMPO&lt;br /&gt;
&lt;br /&gt;
H=ones(1,length(rho)); H=H*45; H=H';&lt;br /&gt;
dt=drho; T=10; t=0:dt:T;&lt;br /&gt;
h0=34; hN=45;&lt;br /&gt;
sol=[h0 H' hN];&lt;br /&gt;
&lt;br /&gt;
for j=1:length(t)-1 &lt;br /&gt;
    &lt;br /&gt;
    %Método de Heun&lt;br /&gt;
    k1=F+(K+L)*H;&lt;br /&gt;
    k2=F+(K+L)*(H+k1*dt);&lt;br /&gt;
    H=H+(dt/2)*(k1+k2);&lt;br /&gt;
 &lt;br /&gt;
    sol(j+1,:)=[h0 H' hN]; %Salvamos las solución, incluimos los extremos&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
rho1=a:drho:b; %Incluimos los nodos exteriores&lt;br /&gt;
&lt;br /&gt;
[rr,tt]=meshgrid(rho1,t);&lt;br /&gt;
surf(rr,tt,sol); %Dibujamos la solución&lt;br /&gt;
title('Nivel Piezométrico. Método Diferencias finitas con Heun en tiempo.')&lt;br /&gt;
xlabel('Distancia radial al centro del pozo.')&lt;br /&gt;
ylabel('Tiempo.')&lt;br /&gt;
zlabel('Nivel piezométrico.')&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
Mediante este código obtenemos la siguiente gráfica:&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Grafica npiezometrico.jpg|500px|thumb|best|Gráfica Nivel Piezométrico aproximada con el Método de Diferencias Finitas con Heun en tiempo.]]&lt;br /&gt;
&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Ahora dibujaremos la gráfica mediante los métodos de Euler implícito y trapecio y compararemos los resultados obtenidos.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Sobre el programa anterior cambiaremos las líneas correspondientes al método de Heun.&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* Método de Euler implícito:&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;math&amp;gt; \left\{\begin{matrix}&lt;br /&gt;
y_{0}\\&lt;br /&gt;
y_{n+1}=y_{n} + hf(t_{n+1},y_{n+1})\\&lt;br /&gt;
\end{matrix}\right. &amp;lt;/math&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
&lt;br /&gt;
for j=1:length(t)-1 &lt;br /&gt;
    &lt;br /&gt;
    %Método de Euler implícito&lt;br /&gt;
    &lt;br /&gt;
    H=(eye(N-1)-dt*(K+L))\(H+(F*dt)); &lt;br /&gt;
 &lt;br /&gt;
    sol(j+1,:)=[h0 H' hN]; %Salvamos las solución, incluimos los extremos&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
rho1=a:drho:b; %Incluimos los nodos exteriores&lt;br /&gt;
&lt;br /&gt;
[rr,tt]=meshgrid(rho1,t);&lt;br /&gt;
surf(rr,tt,sol); %Dibujamos la solución&lt;br /&gt;
title('Nivel Piezométrico. Método Diferencias finitas con Euler en tiempo.')&lt;br /&gt;
xlabel('Distancia radial al centro del pozo.')&lt;br /&gt;
ylabel('Tiempo.')&lt;br /&gt;
zlabel('Nivel piezométrico.')&lt;br /&gt;
&lt;br /&gt;
}}&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* Método del Trapecio:&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;math&amp;gt; \left\{\begin{matrix}&lt;br /&gt;
y_{0}\\&lt;br /&gt;
y_{n+1}=y_{n} + \frac{h}{2}f((t_{n},y_{n}+f(t_{n+1},y_{n+1}))\\&lt;br /&gt;
\end{matrix}\right. &amp;lt;/math&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
for j=1:length(t)-1 &lt;br /&gt;
    &lt;br /&gt;
    %Método del trapecio&lt;br /&gt;
    k1=F+(K+L)*H;&lt;br /&gt;
    k2=F+(K+L)*(H+k1*dt); &lt;br /&gt;
    H=(eye(N-1)-(dt/2)*(K+L))\(H+dt*F+(dt/2)*(K+L)*H);&lt;br /&gt;
 &lt;br /&gt;
    sol(j+1,:)=[h0 H' hN]; %Salvamos las solución, incluimos los extremos&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
rho1=a:drho:b; %Incluimos los nodos exteriores&lt;br /&gt;
&lt;br /&gt;
[rr,tt]=meshgrid(rho1,t);&lt;br /&gt;
surf(rr,tt,sol); %Dibujamos la solución&lt;br /&gt;
title('Nivel Piezométrico. Método Diferencias finitas con trapecio en tiempo.')&lt;br /&gt;
xlabel('Distancia radial al centro del pozo.')&lt;br /&gt;
ylabel('Tiempo.')&lt;br /&gt;
zlabel('Nivel piezométrico.')&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
Como podemos ver a continuación las tres gráficas resultantes son prácticamente iguales por lo que los tres métodos hacen una aproximación similar.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
[[Archivo:Trapecio12.png|500px|thumb|right|Gráfica Nivel Piezométrico aproximada con el Método de Diferencias Finitas con Trapecio en tiempo.]]&lt;br /&gt;
[[Archivo:Euler12.png|500px|thumb|right|Gráfica Nivel Piezométrico aproximada con el Método de Diferencias Finitas con Euler Implícito en tiempo.]]&lt;br /&gt;
&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== Comportamiento del nivel piezométrico con &amp;lt;math&amp;gt; \rho &amp;lt;/math&amp;gt; constante ====&lt;br /&gt;
&lt;br /&gt;
Ahora supondremos que &amp;lt;math&amp;gt; \rho &amp;lt;/math&amp;gt; es constante y que su valor es 2 y dibujaremos el comportamiento del nivel piezométrico en una gráfica 2D nivel piezométrico-tiempo.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Nuevamente utilizando el programa anterior con el  método de Heun:&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Rho2.png|500px|thumb|best|Gráfica Nivel Piezométrico-tiempo para &amp;lt;math&amp;gt; \rho =2 &amp;lt;/math&amp;gt; para T=10.]]&lt;br /&gt;
[[Archivo:Rho1000.png|500px|thumb|best|Gráfica Nivel Piezométrico-tiempo para &amp;lt;math&amp;gt; \rho =2 &amp;lt;/math&amp;gt; para T=1000.]]&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
&lt;br /&gt;
%PRIMERA FASE. ESPACIO&lt;br /&gt;
&lt;br /&gt;
a=0.5; b=20; %Condiciones de contorno&lt;br /&gt;
drho=0.1; N=(b-a)/drho; %División del intervalo&lt;br /&gt;
&lt;br /&gt;
rho=a+drho:drho:b-drho; %Sólo nodos interiores&lt;br /&gt;
&lt;br /&gt;
%Creamos las matrices&lt;br /&gt;
&lt;br /&gt;
L=diag(ones(1,N-2),1)-diag(ones(1,N-2),-1);&lt;br /&gt;
A=diag(1./rho);&lt;br /&gt;
L=10^(-2)*(1/(2*drho))*A*L;&lt;br /&gt;
&lt;br /&gt;
K=-2*diag(ones(1,N-1))+diag(ones(1,N-2),1)+diag(ones(1,N-2),-1);&lt;br /&gt;
K=10^(-2)*(1/drho^2)*K; &lt;br /&gt;
&lt;br /&gt;
F=zeros(N-1,1);&lt;br /&gt;
F(1,1)=10^(-2)*(-17/(rho(1)*drho)+34/drho^2);&lt;br /&gt;
F(N-1,1)=10^(-2)*(45/(rho(N-1)*2*drho)+45/drho^2);&lt;br /&gt;
&lt;br /&gt;
%SEGUDA FASE. TIEMPO&lt;br /&gt;
&lt;br /&gt;
H=ones(1,length(rho)); H=H*45; H=H';&lt;br /&gt;
dt=drho; &lt;br /&gt;
T=10 &lt;br /&gt;
%Comprobamos también la solución para un tiempo mayor &lt;br /&gt;
%T=1000&lt;br /&gt;
t=0:dt:T;&lt;br /&gt;
h0=34; hN=45;&lt;br /&gt;
sol=[h0 H' hN];&lt;br /&gt;
&lt;br /&gt;
for j=1:length(t)-1 &lt;br /&gt;
    &lt;br /&gt;
    %Método de Heun&lt;br /&gt;
    k1=F+(K+L)*H;&lt;br /&gt;
    k2=F+(K+L)*(H+k1*dt);&lt;br /&gt;
    H=H+(dt/2)*(k1+k2);&lt;br /&gt;
 &lt;br /&gt;
    sol(j+1,:)=[h0 H' hN]; %Salvamos las solución, incluimos los extremos&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
rho1=a:drho:b; %Incluimos los nodos exteriores&lt;br /&gt;
&lt;br /&gt;
m=sol(:,rho==2); %Vector que incluye la solución en tiempo para rho=2&lt;br /&gt;
&lt;br /&gt;
plot(t,m);&lt;br /&gt;
&lt;br /&gt;
title('Comportamiento del nivel piezométrico en el tiempo para p=2')&lt;br /&gt;
xlabel('Tiempo')&lt;br /&gt;
ylabel('Nivel piezométrico.')&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
La primera gráfica muestra que para tiempos pequeños la variación del nivel piezométrico es muy pequeña (del orden de 0,10/0,15 m), aún así como observamos en la segunda gráfica a medida que avanzamos en el tiempo la variación del nivel disminuye aún más ya que la curva está cada vez menos inclinada.&lt;br /&gt;
&lt;br /&gt;
==== Variación del nivel piezométrico en tiempos grandes ====&lt;br /&gt;
Ahora vamos a comprobar que la variación del nivel piezométrico para tiempos elevados (T=5000) es mínima.&lt;br /&gt;
Para ello dibujaremos las soluciones cada 100 horas de en el intervalo temporal [1; 5000], en&lt;br /&gt;
una misma gráfica.&lt;br /&gt;
[[Archivo:Tiemposg2.png|marco|derecha|Nivel piezométrico para tiempos grandes]]&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
%PRIMERA FASE. ESPACIO&lt;br /&gt;
&lt;br /&gt;
a=0.5; b=20; %Condiciones de contorno&lt;br /&gt;
drho=0.1; N=(b-a)/drho; %División del intervalo&lt;br /&gt;
&lt;br /&gt;
rho=a+drho:drho:b-drho; %Sólo nodos interiores&lt;br /&gt;
&lt;br /&gt;
%Creamos las matrices&lt;br /&gt;
&lt;br /&gt;
L=diag(ones(1,N-2),1)-diag(ones(1,N-2),-1);&lt;br /&gt;
A=diag(1./rho);&lt;br /&gt;
L=10^(-2)*(1/(2*drho))*A*L;&lt;br /&gt;
&lt;br /&gt;
K=-2*diag(ones(1,N-1))+diag(ones(1,N-2),1)+diag(ones(1,N-2),-1);&lt;br /&gt;
K=10^(-2)*(1/drho^2)*K; &lt;br /&gt;
&lt;br /&gt;
F=zeros(N-1,1);&lt;br /&gt;
F(1,1)=10^(-2)*(-17/(rho(1)*drho)+34/drho^2);&lt;br /&gt;
F(N-1,1)=10^(-2)*(45/(rho(N-1)*2*drho)+45/drho^2);&lt;br /&gt;
&lt;br /&gt;
%SEGUDA FASE. TIEMPO&lt;br /&gt;
&lt;br /&gt;
H=ones(1,length(rho)); H=H*45; H=H';&lt;br /&gt;
dt=0.1; T=5000; t=0:dt:T;&lt;br /&gt;
h0=34; hN=45;&lt;br /&gt;
sol=[h0 H' hN];&lt;br /&gt;
&lt;br /&gt;
figure(1);&lt;br /&gt;
hold on;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
for j=1:length(t)-1 &lt;br /&gt;
    &lt;br /&gt;
    %Método de Heun&lt;br /&gt;
    k1=F+(K+L)*H;&lt;br /&gt;
    k2=F+(K+L)*(H+k1*dt);&lt;br /&gt;
    H=H+(dt/2)*(k1+k2);&lt;br /&gt;
 &lt;br /&gt;
    sol(j+1,:)=[h0 H' hN]; %Salvamos las solución, incluimos los extremos&lt;br /&gt;
    &lt;br /&gt;
 if rem(t(j),100)==0; &lt;br /&gt;
    &lt;br /&gt;
    rho1=a:drho:b; %Incluimos los nodos exteriores&lt;br /&gt;
  &lt;br /&gt;
  plot(rho1,sol(j,:)) %pintamos la solución cada 100 horas&lt;br /&gt;
  &lt;br /&gt;
  title('Variación del nivel piezométrico para tiempos grandes')&lt;br /&gt;
  pause(1)&lt;br /&gt;
&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
end&lt;br /&gt;
}}&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Como se puede observar en la gráfica según vamos avanzando en el tiempo las curvas están más juntas lo que quiere decir que la variación del nivel es cada vez menor aproximándose a un régimen estacionario.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Trabajo21.jpg|marco|derecha|Nivel piezométrico estacionario]]&lt;br /&gt;
&lt;br /&gt;
====Problema estacionario====&lt;br /&gt;
Como hemos visto en el apartado anterior para tiempos grandes el nivel piezométrico se mantiene practicamente constante a lo largo del tiempo, esto es debido a que se establece un equilibrio entre el caudal de agua extraida del acuifero y la migración de aguas desde los puntos más alejados del pozo hacia este.&lt;br /&gt;
Por lo tanto se verifica que:&lt;br /&gt;
 &amp;lt;math&amp;gt;\frac{\partial h}{\partial t}=0&amp;lt;/math&amp;gt;&lt;br /&gt;
Y por lo tanto el nivel piezométrico se puede aproximar por:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \left\{\begin{matrix}&lt;br /&gt;
- \frac{k}{s} (\frac{1}{\rho}  \frac{\partial h}{\partial \rho} + \frac{\partial^2 h}{\partial \rho^2})= 0 &amp;amp; \rho \epsilon (1, 20) &amp;amp; \theta \epsilon (0, 2\Pi ) &amp;amp; 0 &amp;lt; t &amp;lt; 5000 \\ &lt;br /&gt;
h(1,t) = 35;    h(20, t)= 40 \\ &lt;br /&gt;
h(\rho, 0) = 40 &lt;br /&gt;
\end{matrix}\right. &amp;lt;/math&amp;gt;&lt;br /&gt;
Resolvemos por diferencias finitas:&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
    %datos&lt;br /&gt;
    t=5000;&lt;br /&gt;
    l=20;&lt;br /&gt;
    D=0.01;&lt;br /&gt;
    hp=35;&lt;br /&gt;
    ho=40;&lt;br /&gt;
    %discretización&lt;br /&gt;
    s=0.1;&lt;br /&gt;
    x0=1;&lt;br /&gt;
    x=x0:s:l;&lt;br /&gt;
    xint=x0+s:s:l-s;&lt;br /&gt;
    N=length(x)-2; &lt;br /&gt;
    %construimos las matrices para el método de las diferencias finitas&lt;br /&gt;
    K=(1/s^2)*(diag(2*ones(1,N))-diag(ones(1,N-1),1)-diag(ones(1,N-1),-1));&lt;br /&gt;
    A=(1/(s*2))*(diag(ones(1,N-1),1)-diag(ones(1,N-1),-1));&lt;br /&gt;
    A=diag(1./xint)*A;&lt;br /&gt;
    h0=(40*ones(N,1));&lt;br /&gt;
    dt=200; &lt;br /&gt;
    t=0:dt:t;&lt;br /&gt;
    M=length(t)-1;&lt;br /&gt;
    F=(zeros(N,1));&lt;br /&gt;
    F(1)=D*((hp/s^2)-(hp/(2*s)*1/xint(1)));&lt;br /&gt;
    F(N)=D*((ho/s^2)+ho/(s*2*xint(N)));&lt;br /&gt;
    H(1,:)=[40;h0;40]'; &lt;br /&gt;
    h=h0;&lt;br /&gt;
    for n=1:M&lt;br /&gt;
      h=(D)*(K-A)\((F)); %utilizamos el comando backslash para resolver el sistema de ecuaciones&lt;br /&gt;
      H(n+1,:)=[hp h' ho];&lt;br /&gt;
    end&lt;br /&gt;
    %mallado y representación&lt;br /&gt;
    [X,T]=meshgrid(x,t);&lt;br /&gt;
    surf(X,T,H)&lt;br /&gt;
    xlabel('Distancia (metros)');&lt;br /&gt;
    ylabel('Tiempo (horas)');&lt;br /&gt;
    zlabel('Nivel piezométrico (metros)')&lt;br /&gt;
}}&lt;br /&gt;
Efectivamente, como podemos comprobar en la gráfica, la solución es independiente del tiempo salvo para tiempos pequeños en los cuales no queda muy bien definida&lt;br /&gt;
&lt;br /&gt;
También adjuntamos un programa que calcula el error entre la aproximación del problema considerándolo estacionario y la aproximación original para ciertos instantes:&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
%TRPRIMERA FASE. ESPACIO&lt;br /&gt;
 &lt;br /&gt;
a=0.5; b=20; %Condiciones de contorno&lt;br /&gt;
drho=0.1; N=(b-a)/drho; %División del intervalo&lt;br /&gt;
 &lt;br /&gt;
rho=a+drho:drho:b-drho; %Sólo nodos interiores&lt;br /&gt;
 &lt;br /&gt;
%Creamos las matrices&lt;br /&gt;
 &lt;br /&gt;
L=diag(ones(1,N-2),1)-diag(ones(1,N-2),-1);&lt;br /&gt;
A=diag(1./rho);&lt;br /&gt;
L=10^(-2)*(1/(2*drho))*A*L;&lt;br /&gt;
 &lt;br /&gt;
K=-2*diag(ones(1,N-1))+diag(ones(1,N-2),1)+diag(ones(1,N-2),-1);&lt;br /&gt;
K=10^(-2)*(1/drho^2)*K; &lt;br /&gt;
 &lt;br /&gt;
F=zeros(N-1,1);&lt;br /&gt;
F(1,1)=10^(-2)*(-17/(rho(1)*drho)+34/drho^2);&lt;br /&gt;
F(N-1,1)=10^(-2)*(45/(rho(N-1)*2*drho)+45/drho^2);&lt;br /&gt;
 &lt;br /&gt;
%SEGUDA FASE. TIEMPO&lt;br /&gt;
 &lt;br /&gt;
H=ones(1,length(rho)); H=H*45; H=H';&lt;br /&gt;
dt=1; T=5000; t=0:dt:T;&lt;br /&gt;
h0=34; hN=45;&lt;br /&gt;
sol=[h0 H' hN];&lt;br /&gt;
 &lt;br /&gt;
for j=1:length(t)-1 &lt;br /&gt;
 &lt;br /&gt;
    %Método de Heun&lt;br /&gt;
    k1=F+(K+L)*H;&lt;br /&gt;
    k2=F+(K+L)*(H+k1*dt);&lt;br /&gt;
    H=H+(dt/2)*(k1+k2);&lt;br /&gt;
 &lt;br /&gt;
    sol(j+1,:)=[h0 H' hN]; %Salvamos las solución, incluimos los extremos&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
%CALCULAMOS SOLUCIÓN ESTACIONARIA&lt;br /&gt;
&lt;br /&gt;
%PRIMERA FASE. ESPACIO&lt;br /&gt;
 &lt;br /&gt;
a=0.5; b=20; %Condiciones de contorno&lt;br /&gt;
drho=0.1; N=(b-a)/drho; %División del intervalo&lt;br /&gt;
 &lt;br /&gt;
rho=a+drho:drho:b-drho; %Sólo nodos interiores&lt;br /&gt;
 &lt;br /&gt;
%Creamos las matrices&lt;br /&gt;
 &lt;br /&gt;
L=diag(ones(1,N-2),1)-diag(ones(1,N-2),-1);&lt;br /&gt;
A=diag(1./rho);&lt;br /&gt;
L=10^(-2)*(1/(2*drho))*A*L;&lt;br /&gt;
 &lt;br /&gt;
K=-2*diag(ones(1,N-1))+diag(ones(1,N-2),1)+diag(ones(1,N-2),-1);&lt;br /&gt;
K=10^(-2)*(1/drho^2)*K; &lt;br /&gt;
 &lt;br /&gt;
F=zeros(N-1,1);&lt;br /&gt;
F(1,1)=10^(-2)*(-17/(rho(1)*drho)+34/drho^2);&lt;br /&gt;
F(N-1,1)=10^(-2)*(45/(rho(N-1)*2*drho)+45/drho^2);&lt;br /&gt;
 &lt;br /&gt;
%SEGUDA FASE. TIEMPO&lt;br /&gt;
 &lt;br /&gt;
H=ones(1,length(rho)); H=H*45; H=H';&lt;br /&gt;
dt=1; T=5000; t=0:dt:T;&lt;br /&gt;
h0=34; hN=45;&lt;br /&gt;
solest=[h0 H' hN];&lt;br /&gt;
 &lt;br /&gt;
for j=1:length(t)-1 &lt;br /&gt;
 &lt;br /&gt;
    H=-(L+K)\F;&lt;br /&gt;
 &lt;br /&gt;
    solest(j+1,:)=[h0 H' hN]; %Salvamos las solución, incluimos los extremos&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
e0=max(abs(sol(1,:)-solest(1,:)))&lt;br /&gt;
e100=max(abs(sol(101,:)-solest(101,:)))&lt;br /&gt;
e1000=max(abs(sol(1001,:)-solest(1001,:)))&lt;br /&gt;
e5000=max(abs(sol(5001,:)-solest(5001,:)))&lt;br /&gt;
}}&lt;br /&gt;
error para t=0: 0&lt;br /&gt;
error para t=100:5.6443e+67&lt;br /&gt;
error para t=1000: 0&lt;br /&gt;
error para t=5000: 0&lt;br /&gt;
&lt;br /&gt;
====Capacidad de recuperación del acuífero====&lt;br /&gt;
En este apartado queremos calcular una ley que nos describa el comportamiento del acuífero e el caso de que impermeabilizásemos las paredes del pozo partiendo del estado estacionario anterior, esto significaría que el fujo de agua en los bordes del pozo sería nulo y el nivel piezométrico iría variando hasta llegar a otro estado estacionario.&lt;br /&gt;
El estado estacionarioque tenderá a alcanzar el fluido será el inicial, ya que al impermeabilizar las paredes volvemos al caso del acuífero confinado y por ello es nivel piezométrico quedará constante a lo largo del tiempo y de la extensión del acuífero.&lt;br /&gt;
La condición frontera a imponer será que el flujo de agua en r0 será 0, ya que estará impermeabilizado. Esto lo podemos plasmar diciendo que la parcial del nivel piezométrico con respecto a ro en r0 es 0, ya que un aislamiento impide el flujo de líquido, y si el flujo de líquido es nulo el nivel piezométrico no varía.&lt;br /&gt;
&amp;lt;math&amp;gt;\frac{\partial h}{\partial \rho}=0&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Con la condición que acabamos de proponer resolvemos numéricamente con Matlab:&lt;br /&gt;
[[Archivo:ESTACIONARIO1.jpg|marco|derecha|Recuperación del acuífero tras impermeabilizar]]&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
clear all&lt;br /&gt;
&lt;br /&gt;
%REPETIMOS EL PROGRAMA ANTERIOR PARA SACAR EL VALOR ESTACIONARIO&lt;br /&gt;
 &lt;br /&gt;
a=0.5; b=20; %Condiciones de contorno&lt;br /&gt;
drho=0.1; N=(b-a)/drho; %División del intervalo&lt;br /&gt;
rho=a:drho:b-drho; %Sólo nodos interiores&lt;br /&gt;
L=diag(ones(1,N-1),1)-diag(ones(1,N-1),-1);&lt;br /&gt;
L(1,2)=0;&lt;br /&gt;
A=diag(1./rho);&lt;br /&gt;
L=10^(-2)*(1/(2*drho))*A*L;&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(1,2)=2;&lt;br /&gt;
K=10^(-2)*(1/drho^2)*K; &lt;br /&gt;
F=zeros(N,1);&lt;br /&gt;
F(1,1)=0; %Ahora esto es cero&lt;br /&gt;
F(N,1)=10^(-2)*(45/(rho(N)*2*drho)+45/drho^2);&lt;br /&gt;
H=ones(1,length(rho)); H=H*45; H=H';&lt;br /&gt;
dt=200; T=5000; t=0:dt:T;&lt;br /&gt;
h0=34; hN=45;&lt;br /&gt;
sol=[h0 H' hN];&lt;br /&gt;
 &lt;br /&gt;
for j=1:length(t)-1 &lt;br /&gt;
 &lt;br /&gt;
    H=-(L+K)\F;&lt;br /&gt;
    &lt;br /&gt;
    MAT=[h0 H' hN];&lt;br /&gt;
 &lt;br /&gt;
    sol(j+1,:)=[h0 H' hN]; %Salvamos las solución, incluimos los extremos&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
%AHORA RESOLVEMOS PARA EL CASO DE LA RECUPERACIÓN&lt;br /&gt;
&lt;br /&gt;
%PRIMERA FASE. ESPACIO&lt;br /&gt;
 &lt;br /&gt;
a=0.5; b=20; %Condiciones de contorno&lt;br /&gt;
drho=0.1; N=(b-a)/drho; %División del intervalo&lt;br /&gt;
 &lt;br /&gt;
rho=a:drho:b-drho; %Sólo nodos interiores&lt;br /&gt;
 &lt;br /&gt;
%Creamos las matrices&lt;br /&gt;
 &lt;br /&gt;
L=diag(ones(1,N-1),1)-diag(ones(1,N-1),-1);&lt;br /&gt;
L(1,2)=0;&lt;br /&gt;
A=diag(1./rho);&lt;br /&gt;
L=10^(-2)*(1/(2*drho))*A*L;&lt;br /&gt;
 &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(1,2)=2;&lt;br /&gt;
K=10^(-2)*(1/drho^2)*K; &lt;br /&gt;
 &lt;br /&gt;
F=zeros(N,1);&lt;br /&gt;
F(1)=0; %Ahora esto es cero&lt;br /&gt;
F(N)=10^(-2)*(45/(rho(N)*2*drho)+45/drho^2);&lt;br /&gt;
 &lt;br /&gt;
%SEGUDA FASE. TIEMPO&lt;br /&gt;
 &lt;br /&gt;
H=ones(1,length(rho)); &lt;br /&gt;
dt=200; T=5000; t=0:dt:T;&lt;br /&gt;
hN=45;&lt;br /&gt;
sol=[MAT(1:length(rho)) hN];&lt;br /&gt;
&lt;br /&gt;
for j=1:length(t)-1 &lt;br /&gt;
    &lt;br /&gt;
    H=(-(L+K))\F;&lt;br /&gt;
 &lt;br /&gt;
    sol(j+1,:)=[H' hN]; %Salvamos las solución, incluimos los extremos&lt;br /&gt;
end&lt;br /&gt;
 &lt;br /&gt;
rho1=a:drho:b; %Incluimos los nodos exteriores&lt;br /&gt;
 &lt;br /&gt;
[rr,tt]=meshgrid(rho1,t);&lt;br /&gt;
surf(rr,tt,sol); %Dibujamos la solución&lt;br /&gt;
title('Recuperación del acuífero. Condición estacionaria.')&lt;br /&gt;
xlabel('Distancia radial al centro del pozo.')&lt;br /&gt;
ylabel('Tiempo.')&lt;br /&gt;
zlabel('Nivel piezométrico.')&lt;br /&gt;
}}&lt;br /&gt;
Este programa nos representa la evolución del nivel piezométrico del acuífero tras ser impermeabilizado, partiendo del estado estacionario descrito anteriormente hasta llegar al estado inicial con h constante.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
También construimos un programa aparte que calcula, con un error del 5%, cuánto dura esta recuperación del nivel piezométrico:&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
clear all&lt;br /&gt;
&lt;br /&gt;
%PRIMERA FASE. ESPACIO&lt;br /&gt;
 &lt;br /&gt;
a=0.5; b=20; %Condiciones de contorno&lt;br /&gt;
drho=0.1; N=(b-a)/drho; %División del intervalo&lt;br /&gt;
 &lt;br /&gt;
rho=a:drho:b-drho; %Sólo nodos interiores&lt;br /&gt;
 &lt;br /&gt;
%Creamos las matrices&lt;br /&gt;
 &lt;br /&gt;
L=diag(ones(1,N-1),1)-diag(ones(1,N-1),-1);&lt;br /&gt;
L(1,2)=0;&lt;br /&gt;
A=diag(1./rho);&lt;br /&gt;
L=10^(-2)*(1/(2*drho))*A*L;&lt;br /&gt;
 &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(1,2)=2;&lt;br /&gt;
K=10^(-2)*(1/drho^2)*K; &lt;br /&gt;
 &lt;br /&gt;
F=zeros(N,1);&lt;br /&gt;
F(1,1)=0; %Ahora esto es cero&lt;br /&gt;
F(N,1)=10^(-2)*(45/(rho(N)*2*drho)+45/drho^2);&lt;br /&gt;
 &lt;br /&gt;
%SEGUDA FASE. TIEMPO&lt;br /&gt;
 &lt;br /&gt;
H=ones(1,length(rho)); H=H*45; H=H';&lt;br /&gt;
dt=200; T=5000; t=0:dt:T;&lt;br /&gt;
h0=34; hN=45;&lt;br /&gt;
sol=[h0 H' hN];&lt;br /&gt;
 &lt;br /&gt;
for j=1:length(t)-1 &lt;br /&gt;
 &lt;br /&gt;
    H=-(L+K)\F;&lt;br /&gt;
    &lt;br /&gt;
    MAT=[h0 H' hN];&lt;br /&gt;
 &lt;br /&gt;
    sol(j+1,:)=[h0 H' hN]; %Salvamos las solución, incluimos los extremos&lt;br /&gt;
end&lt;br /&gt;
 &lt;br /&gt;
&lt;br /&gt;
%PRIMERA FASE. ESPACIO&lt;br /&gt;
 &lt;br /&gt;
a=0.5; b=20; %Condiciones de contorno&lt;br /&gt;
drho=0.1; N=(b-a)/drho; %División del intervalo&lt;br /&gt;
 &lt;br /&gt;
rho=a:drho:b-drho; %Sólo nodos interiores&lt;br /&gt;
 &lt;br /&gt;
%Creamos las matrices&lt;br /&gt;
 &lt;br /&gt;
L=diag(ones(1,N-1),1)-diag(ones(1,N-1),-1);&lt;br /&gt;
L(1,2)=0;&lt;br /&gt;
A=diag(1./rho);&lt;br /&gt;
L=10^(-2)*(1/(2*drho))*A*L;&lt;br /&gt;
 &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(1,2)=2;&lt;br /&gt;
K=10^(-2)*(1/drho^2)*K; &lt;br /&gt;
 &lt;br /&gt;
F=zeros(N,1);&lt;br /&gt;
F(1,1)=0; %Ahora esto es cero&lt;br /&gt;
F(N,1)=10^(-2)*(45/(rho(N)*2*drho)+45/drho^2);&lt;br /&gt;
 &lt;br /&gt;
%SEGUDA FASE. TIEMPO&lt;br /&gt;
 &lt;br /&gt;
H=ones(1,length(rho)); &lt;br /&gt;
dt=200; T=5000; t=0:dt:T;&lt;br /&gt;
hN=45;&lt;br /&gt;
sol=[MAT(1:length(rho)) hN];&lt;br /&gt;
&lt;br /&gt;
for j=1:length(t)-1 &lt;br /&gt;
    &lt;br /&gt;
    H=-(L+K)\F;&lt;br /&gt;
 &lt;br /&gt;
    sol(j+1,:)=[H' hN]; %Salvamos las solución, incluimos los extremos&lt;br /&gt;
    &lt;br /&gt;
    error=max(abs(sol(j+1,:)-hN*ones(1,N+1)/40));&lt;br /&gt;
    &lt;br /&gt;
    tiempo=j; %Contador de tiempo, cada bucle una hora&lt;br /&gt;
    if error &amp;lt;=0.05&lt;br /&gt;
        break&lt;br /&gt;
    end&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
tiempo %Saca en pantalla el tiempo que tarda en alcanzar el régimen estacionario&lt;br /&gt;
}}&lt;br /&gt;
El resultado es de 25 horas.&lt;br /&gt;
''*'''Nota''': los programas son reiterativos y definen las mismas variables por estar diseñados para compilar por separado.''&lt;br /&gt;
&lt;br /&gt;
====Método de Fourier====&lt;br /&gt;
Ahora suponemos que el radio del pozo es despreciable y que una vez extraido el agua el pozo se cierra quedando el acuifero de nuevo homogéneo. En este caso tomaremos la región ρ &amp;lt; 20. Nuestro objetivo es aproximar las soluciones usando el método de Fourier. De nuevo supondremos que la solución sólo depende de ρ y t, y tomaremos ahora como condición frontera h(20, t) = 40.&lt;br /&gt;
Vamos a considerar el sistema de ecuaciones para h(ρ,t)=h(ρ,t)-40:&lt;br /&gt;
 &amp;lt;math&amp;gt; \left\{\begin{matrix}&lt;br /&gt;
\frac{\partial h}{\partial t} - D (\frac{1}{\rho}  \frac{\partial h}{\partial \rho} + \frac{\partial^2 h}{\partial \rho^2})= 0 &amp;amp; \rho \epsilon (0, 20) &amp;amp; \theta \epsilon (0, 2\Pi ) &amp;amp; t &amp;gt; 0 \\ &lt;br /&gt;
\frac{\partial h}{\partial \rho}(0,t) = 0;   h(20, t)= 0 \\ &lt;br /&gt;
\end{matrix}\right. &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Obtenemos el problema de autovalores asociado al sistema anterior con el método de separación de variables:&lt;br /&gt;
 &amp;lt;math&amp;gt; \left\{\begin{matrix}&lt;br /&gt;
D (\frac{X'(\rho)}{\rho} + X''(\rho))+ λX(\rho)=0 \\&lt;br /&gt;
X'(0) = 0;   X(20)= 0 \\ &lt;br /&gt;
&lt;br /&gt;
\end{matrix}\right. &amp;lt;/math&amp;gt;&lt;br /&gt;
[[Archivo:Marta1.jpg|marco|derecha]]&lt;br /&gt;
Sabemos que los problemas de esta forma tienen como solución la función de Bessel de primera especie que forma una familia de autofunciones: &amp;lt;math&amp;gt;Ψ(\rho)=J_0·(\rho\sqrt{λ})&amp;lt;/math&amp;gt;. Estas se anulan cuando &amp;lt;math&amp;gt;(\rho\sqrt{λ})&amp;lt;/math&amp;gt; se iguala a 2.4048, 5.5201, 8.6537, 11.7915 y 14.9309, siendo estos los 5 primeros ceros de la función de Bessel. De esta manera y tomando ρ=20 obtenemos los 5 primeros autovalores:&lt;br /&gt;
&amp;lt;math&amp;gt;(20\sqrt{λ})=2.4048&amp;lt;/math&amp;gt;Haciendo la operación anterior para los 5 ceros obtenemos los siguientes autovalores: 0.0145, 0.0762, 0.1872, 0.3476, 0.5573.&lt;br /&gt;
Ahora vamos a dibujar las 5 primeras autofunciones utilizando la función besselj:&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
a1=0.0145;&lt;br /&gt;
a2=0.0762;&lt;br /&gt;
a3=0.1872;&lt;br /&gt;
a4=0.3476;&lt;br /&gt;
a5=0.5575;&lt;br /&gt;
r=0:0.02:20;&lt;br /&gt;
F1=besselj(0,r.*(sqrt(a1))); &lt;br /&gt;
F2=besselj(0,r.*(sqrt(a2)));&lt;br /&gt;
F3=besselj(0,r.*(sqrt(a3)));&lt;br /&gt;
F4=besselj(0,r.*(sqrt(a4)));&lt;br /&gt;
F5=besselj(0,r.*(sqrt(a5)));&lt;br /&gt;
hold on&lt;br /&gt;
plot(r,F1)&lt;br /&gt;
plot(r,F2,'r')&lt;br /&gt;
plot(r,F3,'g')	&lt;br /&gt;
plot(r,F4,'c')&lt;br /&gt;
plot(r,F5,'y')&lt;br /&gt;
hold off&lt;br /&gt;
}}&lt;br /&gt;
[[Archivo:Marta2.jpg|marco|derecha]]&lt;br /&gt;
Aproximamos ahora la solución de la ecuación tomando como dato inicial es&amp;lt;math&amp;gt; h (\rho,0)= -log \frac{|\rho + 0.01|}{20.01} &amp;lt;/math&amp;gt; y usando 5 términos del desarrollo de Fourier, teniendo en cuenta que las autofunciones son ortogonales respecto al producto escalar: &amp;lt;math&amp;gt; (f(\rho),g(\rho)) = \int_{0}^{20} \rho f(\rho) g(\rho) \cdot dx &amp;lt;/math&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
x0=0; L=20;&lt;br /&gt;
c0=[2.4048,5.5201,8.6537,11.7915,14.9309]; %Vector de ceros de la función de Bessel&lt;br /&gt;
A=(c0./20).^2; %Vector de autovalores&lt;br /&gt;
K=5; %Número de términos del desarrollo de Fourier&lt;br /&gt;
x=x0:0.1:L;&lt;br /&gt;
N=length(x)-1;&lt;br /&gt;
J=zeros(N+1,K);&lt;br /&gt;
z=zeros(N+1,K);&lt;br /&gt;
t0=0; tf=500;&lt;br /&gt;
t=t0:0.1:tf;&lt;br /&gt;
[xx,tt]=meshgrid(x,t);&lt;br /&gt;
h=0;&lt;br /&gt;
for k=1:K&lt;br /&gt;
   z(:,k)=(x)'*sqrt(A(k));&lt;br /&gt;
   J(:,k)=besselj(0,z(:,k));&lt;br /&gt;
   h0=-log((abs(x+0.1))/20.01); %Condición inicial&lt;br /&gt;
   c(k)=trapz(x,x'.*h0'.*J(:,k))/trapz(x,x'.*J(:,k).*J(:,k)); %Coeficientes de Fourier&lt;br /&gt;
   h=h+c(k)*exp(-A(k)*t)'*J(:,k)';&lt;br /&gt;
end&lt;br /&gt;
surf(xx,tt,h)&lt;br /&gt;
title('Aproximación de la solución')&lt;br /&gt;
}}&lt;/div&gt;</summary>
		<author><name>Marta Cavero</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Nivel_piezom%C3%A9trico_de_un_acu%C3%ADfero_confinado_(A5)&amp;diff=30491</id>
		<title>Nivel piezométrico de un acuífero confinado (A5)</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Nivel_piezom%C3%A9trico_de_un_acu%C3%ADfero_confinado_(A5)&amp;diff=30491"/>
				<updated>2015-05-21T11:57:38Z</updated>
		
		<summary type="html">&lt;p&gt;Marta Cavero: /* Capacidad de recuperación del acuífero */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;br /&gt;
==== Introducción ====&lt;br /&gt;
&lt;br /&gt;
Consideramos un acuífero confinado entre dos capas de terreno impermeables horizontales. Llamaremos h(x, y) al nivel piezométrico del acuífero, definido por la altura que alcanzaría el agua si hiciéramos un sondeo en el punto (x, y). Obviamente este valor depende de la presión a la que se encuentra el agua confinada en el acuífero. Supondremos&lt;br /&gt;
que el acuífero es un medio poroso saturado de agua que ocupa una región infinita y está en equilibrio de manera que &amp;lt;math&amp;gt;h(x, y) = h_0&amp;lt;/math&amp;gt; constante para todo (x, y) ∈ &amp;lt;math&amp;gt;IR^{2}&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Sobre el acuifero se construye un pozo de sección circular y radio&amp;lt;math&amp;gt; ρ_0&amp;lt;/math&amp;gt; para extraer agua. La presencia del pozo hace que el nivel piezométrico cambie. Dada la simetría del problema podemos suponer que h(x, y) sólo va a depender de la distancia al pozo. Si tomamos coordenadas cilíndricas de forma que el eje OZ coincida con el eje de simetría del pozo, entonces h = h(ρ) donde &amp;lt;math&amp;gt;ρ = \sqrt{x^{2} + y^{2}}&amp;lt;/math&amp;gt; . Trabajaremos por tanto en coordenadas polares en el plano (ρ, θ).&lt;br /&gt;
&lt;br /&gt;
Las ecuaciones que permiten conocer h(ρ) son la ecuación de conservación de la masa:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; S = \frac{∂h}{∂t} + div q = 0 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
junto con la ley de Darcy&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; q = −K∇h &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
que es una ley experimental que modela el flujo de agua en un medio poroso. La ley de Darcy establece que el flujo de agua q a través de un medio poroso es proporcional a la diferencia de presión, que a su vez se puede escribir en términos del gradiente del nivel piezométrico en cada punto. La constante K se deduce experimentalmente para cada material y se conoce como la conductividad hidráulica o permeabilidad. Cuanto mayor es la constante K mayor es el flujo de agua provocado por un cambio&lt;br /&gt;
de presión. La ley de Darcy proporciona una buena aproximación del comportamiento del agua en un medio poroso siempre que este sea homogéneo e isótropo.&lt;br /&gt;
&lt;br /&gt;
La constante S en la ley de conservación de la masa se conoce como almacenamiento específico y se interpreta como la cantidad de agua que libera el acuífero al descender el nivel piezométrico en una unidad, por unidad de volumen.&lt;br /&gt;
&lt;br /&gt;
Combinando las ecuaciones de conservación de la masa con la ley de Darcy, obtenemos la ecuación:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \frac{∂h}{∂t} - D∆h = 0, ρ &amp;gt; ρ_0, θ ∈ (0, 2π), t &amp;gt; 0, (1) &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
donde D = K/S es la difusividad hidráulica que supondremos constante.&lt;br /&gt;
&lt;br /&gt;
==== Deducción de la fórmula ====&lt;br /&gt;
&lt;br /&gt;
En este apartado buscamos demostrar la ecuación (1) como combinación de la ecuación de conservación de masas y la Ley de Darcy.&lt;br /&gt;
&lt;br /&gt;
Por un lado sabemos que el laplaciaco equivale a la divergencia del gradiente: &lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; &lt;br /&gt;
(\Delta f = \nabla \cdot \nabla f = div \left (\nabla f) \right) &lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Por otro lado, sabemos que en coordenadas polares: &lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;x = ρ cos \theta \\&lt;br /&gt;
             y = ρ  sen \theta&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\bar{g_ρ } = cos \theta \bar{i} + sin \theta  \bar{j} \\&lt;br /&gt;
              \bar{g_\theta } = - ρ  sin \theta \bar{i} + ρ cos \theta \bar{j} &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;&lt;br /&gt;
G =&lt;br /&gt;
\left(&lt;br /&gt;
\begin{array}{cc}&lt;br /&gt;
1&amp;amp; 0 \\&lt;br /&gt;
0 &amp;amp; ρ ^{2} \\&lt;br /&gt;
\end{array}&lt;br /&gt;
\right);&lt;br /&gt;
\text {donde la raiz del determinante es} \sqrt{g} = ρ&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Como indica el enunciado, al sustituir la Ley de Darcy en la ecuación de conservación de la masa obtenemos y dividir entre S, teniendo en cuenta que el divergente del gradiente es el laplaciano como hemos indicado al principio de este apartado, obtenemos la ecuación (1): &amp;lt;math&amp;gt; \frac{∂h}{∂t} - \frac{k}{S}∆h = 0 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
En esta ecuación queda por desarrollar el Laplaciano de h. &lt;br /&gt;
Partiremos de la función h(ρ,θ), de la cual calcularemos primero el gradiente:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \nabla h = \frac{\partial h}{\partial \rho}\hat{\rho} + \frac{\partial h}{\partial \rho}\hat{\theta} =  \frac{\partial h}{\partial \rho}\bar{\rho} + \frac{1}{\rho^{2}} \frac{\partial h}{\partial \rho}\bar{\theta}  &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
teniendo en cuenta que &amp;lt;math&amp;gt;\bar{g^{i} } = \frac{\bar{g_i } }{ | \bar{g_i } | ^{2} } &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Ahora hacemos el divergente del gradiente anterior y obtenemos el Laplaciano en coordenadas polares:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;math&amp;gt;&lt;br /&gt;
 \Delta h = div(∇h) &lt;br /&gt;
= {1 \over \rho} {\partial \over \partial \rho}&lt;br /&gt;
  \left( \rho {\partial h \over \partial \rho} \right) &lt;br /&gt;
+ {1 \over \rho^2} {\partial^2 h \over \partial \theta^2}&lt;br /&gt;
= {1 \over \rho} {\partial h \over \partial \rho} &lt;br /&gt;
+ {\partial^2 h \over \partial \rho^2}&lt;br /&gt;
+ {1 \over \rho^2} {\partial^2 h \over \partial \theta^2}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Si consideramos que, debido a la simetría del problema, h sólo depende de su distancia al pozo, entonces obtenemos la función radial h(ρ), que nos permite simplificar el Laplaciano del modo siguiente:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;math&amp;gt;&lt;br /&gt;
 \Delta h = div(∇h) &lt;br /&gt;
= {1 \over \rho} {\partial h \over \partial \rho} &lt;br /&gt;
+ {\partial^2 h \over \partial \rho^2}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== Obtención de la ecuación====&lt;br /&gt;
&lt;br /&gt;
Para poder resolver la ecuación anterior y que el resultado sea único, hemos de establecer condiciones iniciales y de contorno.&lt;br /&gt;
&lt;br /&gt;
Las condiciones de contorno serán dos pues aparece la derivada segunda de la posición: &amp;lt;math&amp;gt; h(\rho_0 , t) = h_p \\&lt;br /&gt;
                                                                                                                                                                  h(20,t) = h_0 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
La condición inicial será única pues sólo aparece una derivada de primer orden en tiempo en nuestra ecuación: &amp;lt;math&amp;gt; h(\rho,0) = h_0 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
De este modo la ecuación resultante será:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \left\{\begin{matrix}&lt;br /&gt;
\frac{\partial h}{\partial t} - \frac{k}{s} (\frac{1}{\rho}  \frac{\partial h}{\partial \rho} + \frac{\partial^2 h}{\partial \rho^2})= 0 &amp;amp; \rho \epsilon (\rho_{0}, 2c) &amp;amp; \theta \epsilon (0, 2\Pi ) &amp;amp; t &amp;gt; 0 \\ &lt;br /&gt;
h(\rho_{0},t) = h_{p};   h(20, t)= h_{0} \\ &lt;br /&gt;
h(\rho, 0) = h_{0} &lt;br /&gt;
\end{matrix}\right. &amp;lt;/math&amp;gt; &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==== Resolución por método de diferencias finitas ====&lt;br /&gt;
&lt;br /&gt;
Suponiendo &amp;lt;math&amp;gt;ρ_0 =0.5m&amp;lt;/math&amp;gt;, &amp;lt;math&amp;gt;h_0 =45m&amp;lt;/math&amp;gt;, &amp;lt;math&amp;gt;hp =34&amp;lt;/math&amp;gt;, D=10−2, &amp;lt;math&amp;gt;(ρ,0)=h_0&amp;lt;/math&amp;gt;; y tomando  ∆ρ = 0.1 y ∆t = ∆ρ. Vamos a resolver la ecuación anterior por el método de diferencias finitas, usando el Método de Heun para realizar la aproximación en tiempo.&lt;br /&gt;
&lt;br /&gt;
Primero, sustituyendo los datos anteriores en la ecuación, llegamos a:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \left\{\begin{matrix}&lt;br /&gt;
\frac{\partial h}{\partial t} - 10^{2} (\frac{1}{\rho}  \frac{\partial h}{\partial \rho} + \frac{\partial^2 h}{\partial \rho^2})= 0 &amp;amp; \rho \epsilon (0.5, 20) &amp;amp; \theta \epsilon (0, 2\Pi ) &amp;amp; t &amp;gt; 0 \\ &lt;br /&gt;
h(0.5,t) = 34;   h(20, t)= 45 \\ &lt;br /&gt;
h(\rho, 0) = 45&lt;br /&gt;
\end{matrix}\right. &amp;lt;/math&amp;gt; &lt;br /&gt;
&lt;br /&gt;
Aplicando el método de las diferencias finitas llegamos al siguiente código:&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
&lt;br /&gt;
%TRPRIMERA FASE. ESPACIO&lt;br /&gt;
&lt;br /&gt;
a=0.5; b=20; %Condiciones de contorno&lt;br /&gt;
drho=0.1; N=(b-a)/drho; %División del intervalo&lt;br /&gt;
&lt;br /&gt;
rho=a+drho:drho:b-drho; %Sólo nodos interiores&lt;br /&gt;
&lt;br /&gt;
%Creamos las matrices&lt;br /&gt;
&lt;br /&gt;
L=diag(ones(1,N-2),1)-diag(ones(1,N-2),-1);&lt;br /&gt;
A=diag(1./rho);&lt;br /&gt;
L=10^(-2)*(1/(2*drho))*A*L;&lt;br /&gt;
&lt;br /&gt;
K=-2*diag(ones(1,N-1))+diag(ones(1,N-2),1)+diag(ones(1,N-2),-1);&lt;br /&gt;
K=10^(-2)*(1/drho^2)*K; &lt;br /&gt;
&lt;br /&gt;
F=zeros(N-1,1);&lt;br /&gt;
F(1,1)=10^(-2)*(-17/(rho(1)*drho)+34/drho^2);&lt;br /&gt;
F(N-1,1)=10^(-2)*(45/(rho(N-1)*2*drho)+45/drho^2);&lt;br /&gt;
&lt;br /&gt;
%SEGUDA FASE. TIEMPO&lt;br /&gt;
&lt;br /&gt;
H=ones(1,length(rho)); H=H*45; H=H';&lt;br /&gt;
dt=drho; T=10; t=0:dt:T;&lt;br /&gt;
h0=34; hN=45;&lt;br /&gt;
sol=[h0 H' hN];&lt;br /&gt;
&lt;br /&gt;
for j=1:length(t)-1 &lt;br /&gt;
    &lt;br /&gt;
    %Método de Heun&lt;br /&gt;
    k1=F+(K+L)*H;&lt;br /&gt;
    k2=F+(K+L)*(H+k1*dt);&lt;br /&gt;
    H=H+(dt/2)*(k1+k2);&lt;br /&gt;
 &lt;br /&gt;
    sol(j+1,:)=[h0 H' hN]; %Salvamos las solución, incluimos los extremos&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
rho1=a:drho:b; %Incluimos los nodos exteriores&lt;br /&gt;
&lt;br /&gt;
[rr,tt]=meshgrid(rho1,t);&lt;br /&gt;
surf(rr,tt,sol); %Dibujamos la solución&lt;br /&gt;
title('Nivel Piezométrico. Método Diferencias finitas con Heun en tiempo.')&lt;br /&gt;
xlabel('Distancia radial al centro del pozo.')&lt;br /&gt;
ylabel('Tiempo.')&lt;br /&gt;
zlabel('Nivel piezométrico.')&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
Mediante este código obtenemos la siguiente gráfica:&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Grafica npiezometrico.jpg|500px|thumb|best|Gráfica Nivel Piezométrico aproximada con el Método de Diferencias Finitas con Heun en tiempo.]]&lt;br /&gt;
&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Ahora dibujaremos la gráfica mediante los métodos de Euler implícito y trapecio y compararemos los resultados obtenidos.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Sobre el programa anterior cambiaremos las líneas correspondientes al método de Heun.&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* Método de Euler implícito:&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;math&amp;gt; \left\{\begin{matrix}&lt;br /&gt;
y_{0}\\&lt;br /&gt;
y_{n+1}=y_{n} + hf(t_{n+1},y_{n+1})\\&lt;br /&gt;
\end{matrix}\right. &amp;lt;/math&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
&lt;br /&gt;
for j=1:length(t)-1 &lt;br /&gt;
    &lt;br /&gt;
    %Método de Euler implícito&lt;br /&gt;
    &lt;br /&gt;
    H=(eye(N-1)-dt*(K+L))\(H+(F*dt)); &lt;br /&gt;
 &lt;br /&gt;
    sol(j+1,:)=[h0 H' hN]; %Salvamos las solución, incluimos los extremos&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
rho1=a:drho:b; %Incluimos los nodos exteriores&lt;br /&gt;
&lt;br /&gt;
[rr,tt]=meshgrid(rho1,t);&lt;br /&gt;
surf(rr,tt,sol); %Dibujamos la solución&lt;br /&gt;
title('Nivel Piezométrico. Método Diferencias finitas con Euler en tiempo.')&lt;br /&gt;
xlabel('Distancia radial al centro del pozo.')&lt;br /&gt;
ylabel('Tiempo.')&lt;br /&gt;
zlabel('Nivel piezométrico.')&lt;br /&gt;
&lt;br /&gt;
}}&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* Método del Trapecio:&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;math&amp;gt; \left\{\begin{matrix}&lt;br /&gt;
y_{0}\\&lt;br /&gt;
y_{n+1}=y_{n} + \frac{h}{2}f((t_{n},y_{n}+f(t_{n+1},y_{n+1}))\\&lt;br /&gt;
\end{matrix}\right. &amp;lt;/math&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
for j=1:length(t)-1 &lt;br /&gt;
    &lt;br /&gt;
    %Método del trapecio&lt;br /&gt;
    k1=F+(K+L)*H;&lt;br /&gt;
    k2=F+(K+L)*(H+k1*dt); &lt;br /&gt;
    H=(eye(N-1)-(dt/2)*(K+L))\(H+dt*F+(dt/2)*(K+L)*H);&lt;br /&gt;
 &lt;br /&gt;
    sol(j+1,:)=[h0 H' hN]; %Salvamos las solución, incluimos los extremos&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
rho1=a:drho:b; %Incluimos los nodos exteriores&lt;br /&gt;
&lt;br /&gt;
[rr,tt]=meshgrid(rho1,t);&lt;br /&gt;
surf(rr,tt,sol); %Dibujamos la solución&lt;br /&gt;
title('Nivel Piezométrico. Método Diferencias finitas con trapecio en tiempo.')&lt;br /&gt;
xlabel('Distancia radial al centro del pozo.')&lt;br /&gt;
ylabel('Tiempo.')&lt;br /&gt;
zlabel('Nivel piezométrico.')&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
Como podemos ver a continuación las tres gráficas resultantes son prácticamente iguales por lo que los tres métodos hacen una aproximación similar.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
[[Archivo:Trapecio12.png|500px|thumb|right|Gráfica Nivel Piezométrico aproximada con el Método de Diferencias Finitas con Trapecio en tiempo.]]&lt;br /&gt;
[[Archivo:Euler12.png|500px|thumb|right|Gráfica Nivel Piezométrico aproximada con el Método de Diferencias Finitas con Euler Implícito en tiempo.]]&lt;br /&gt;
&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== Comportamiento del nivel piezométrico con &amp;lt;math&amp;gt; \rho &amp;lt;/math&amp;gt; constante ====&lt;br /&gt;
&lt;br /&gt;
Ahora supondremos que &amp;lt;math&amp;gt; \rho &amp;lt;/math&amp;gt; es constante y que su valor es 2 y dibujaremos el comportamiento del nivel piezométrico en una gráfica 2D nivel piezométrico-tiempo.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Nuevamente utilizando el programa anterior con el  método de Heun:&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Rho2.png|500px|thumb|best|Gráfica Nivel Piezométrico-tiempo para &amp;lt;math&amp;gt; \rho =2 &amp;lt;/math&amp;gt; para T=10.]]&lt;br /&gt;
[[Archivo:Rho1000.png|500px|thumb|best|Gráfica Nivel Piezométrico-tiempo para &amp;lt;math&amp;gt; \rho =2 &amp;lt;/math&amp;gt; para T=1000.]]&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
&lt;br /&gt;
%PRIMERA FASE. ESPACIO&lt;br /&gt;
&lt;br /&gt;
a=0.5; b=20; %Condiciones de contorno&lt;br /&gt;
drho=0.1; N=(b-a)/drho; %División del intervalo&lt;br /&gt;
&lt;br /&gt;
rho=a+drho:drho:b-drho; %Sólo nodos interiores&lt;br /&gt;
&lt;br /&gt;
%Creamos las matrices&lt;br /&gt;
&lt;br /&gt;
L=diag(ones(1,N-2),1)-diag(ones(1,N-2),-1);&lt;br /&gt;
A=diag(1./rho);&lt;br /&gt;
L=10^(-2)*(1/(2*drho))*A*L;&lt;br /&gt;
&lt;br /&gt;
K=-2*diag(ones(1,N-1))+diag(ones(1,N-2),1)+diag(ones(1,N-2),-1);&lt;br /&gt;
K=10^(-2)*(1/drho^2)*K; &lt;br /&gt;
&lt;br /&gt;
F=zeros(N-1,1);&lt;br /&gt;
F(1,1)=10^(-2)*(-17/(rho(1)*drho)+34/drho^2);&lt;br /&gt;
F(N-1,1)=10^(-2)*(45/(rho(N-1)*2*drho)+45/drho^2);&lt;br /&gt;
&lt;br /&gt;
%SEGUDA FASE. TIEMPO&lt;br /&gt;
&lt;br /&gt;
H=ones(1,length(rho)); H=H*45; H=H';&lt;br /&gt;
dt=drho; &lt;br /&gt;
T=10 &lt;br /&gt;
%Comprobamos también la solución para un tiempo mayor &lt;br /&gt;
%T=1000&lt;br /&gt;
t=0:dt:T;&lt;br /&gt;
h0=34; hN=45;&lt;br /&gt;
sol=[h0 H' hN];&lt;br /&gt;
&lt;br /&gt;
for j=1:length(t)-1 &lt;br /&gt;
    &lt;br /&gt;
    %Método de Heun&lt;br /&gt;
    k1=F+(K+L)*H;&lt;br /&gt;
    k2=F+(K+L)*(H+k1*dt);&lt;br /&gt;
    H=H+(dt/2)*(k1+k2);&lt;br /&gt;
 &lt;br /&gt;
    sol(j+1,:)=[h0 H' hN]; %Salvamos las solución, incluimos los extremos&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
rho1=a:drho:b; %Incluimos los nodos exteriores&lt;br /&gt;
&lt;br /&gt;
m=sol(:,rho==2); %Vector que incluye la solución en tiempo para rho=2&lt;br /&gt;
&lt;br /&gt;
plot(t,m);&lt;br /&gt;
&lt;br /&gt;
title('Comportamiento del nivel piezométrico en el tiempo para p=2')&lt;br /&gt;
xlabel('Tiempo')&lt;br /&gt;
ylabel('Nivel piezométrico.')&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
La primera gráfica muestra que para tiempos pequeños la variación del nivel piezométrico es muy pequeña (del orden de 0,10/0,15 m), aún así como observamos en la segunda gráfica a medida que avanzamos en el tiempo la variación del nivel disminuye aún más ya que la curva está cada vez menos inclinada.&lt;br /&gt;
&lt;br /&gt;
==== Variación del nivel piezométrico en tiempos grandes ====&lt;br /&gt;
Ahora vamos a comprobar que la variación del nivel piezométrico para tiempos elevados (T=5000) es mínima.&lt;br /&gt;
Para ello dibujaremos las soluciones cada 100 horas de en el intervalo temporal [1; 5000], en&lt;br /&gt;
una misma gráfica.&lt;br /&gt;
[[Archivo:Tiemposg2.png|marco|derecha|Nivel piezométrico para tiempos grandes]]&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
%PRIMERA FASE. ESPACIO&lt;br /&gt;
&lt;br /&gt;
a=0.5; b=20; %Condiciones de contorno&lt;br /&gt;
drho=0.1; N=(b-a)/drho; %División del intervalo&lt;br /&gt;
&lt;br /&gt;
rho=a+drho:drho:b-drho; %Sólo nodos interiores&lt;br /&gt;
&lt;br /&gt;
%Creamos las matrices&lt;br /&gt;
&lt;br /&gt;
L=diag(ones(1,N-2),1)-diag(ones(1,N-2),-1);&lt;br /&gt;
A=diag(1./rho);&lt;br /&gt;
L=10^(-2)*(1/(2*drho))*A*L;&lt;br /&gt;
&lt;br /&gt;
K=-2*diag(ones(1,N-1))+diag(ones(1,N-2),1)+diag(ones(1,N-2),-1);&lt;br /&gt;
K=10^(-2)*(1/drho^2)*K; &lt;br /&gt;
&lt;br /&gt;
F=zeros(N-1,1);&lt;br /&gt;
F(1,1)=10^(-2)*(-17/(rho(1)*drho)+34/drho^2);&lt;br /&gt;
F(N-1,1)=10^(-2)*(45/(rho(N-1)*2*drho)+45/drho^2);&lt;br /&gt;
&lt;br /&gt;
%SEGUDA FASE. TIEMPO&lt;br /&gt;
&lt;br /&gt;
H=ones(1,length(rho)); H=H*45; H=H';&lt;br /&gt;
dt=0.1; T=5000; t=0:dt:T;&lt;br /&gt;
h0=34; hN=45;&lt;br /&gt;
sol=[h0 H' hN];&lt;br /&gt;
&lt;br /&gt;
figure(1);&lt;br /&gt;
hold on;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
for j=1:length(t)-1 &lt;br /&gt;
    &lt;br /&gt;
    %Método de Heun&lt;br /&gt;
    k1=F+(K+L)*H;&lt;br /&gt;
    k2=F+(K+L)*(H+k1*dt);&lt;br /&gt;
    H=H+(dt/2)*(k1+k2);&lt;br /&gt;
 &lt;br /&gt;
    sol(j+1,:)=[h0 H' hN]; %Salvamos las solución, incluimos los extremos&lt;br /&gt;
    &lt;br /&gt;
 if rem(t(j),100)==0; &lt;br /&gt;
    &lt;br /&gt;
    rho1=a:drho:b; %Incluimos los nodos exteriores&lt;br /&gt;
  &lt;br /&gt;
  plot(rho1,sol(j,:)) %pintamos la solución cada 100 horas&lt;br /&gt;
  &lt;br /&gt;
  title('Variación del nivel piezométrico para tiempos grandes')&lt;br /&gt;
  pause(1)&lt;br /&gt;
&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
end&lt;br /&gt;
}}&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Como se puede observar en la gráfica según vamos avanzando en el tiempo las curvas están más juntas lo que quiere decir que la variación del nivel es cada vez menor aproximándose a un régimen estacionario.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Trabajo21.jpg|marco|derecha|Nivel piezométrico estacionario]]&lt;br /&gt;
&lt;br /&gt;
====Problema estacionario====&lt;br /&gt;
Como hemos visto en el apartado anterior para tiempos grandes el nivel piezométrico se mantiene practicamente constante a lo largo del tiempo, esto es debido a que se establece un equilibrio entre el caudal de agua extraida del acuifero y la migración de aguas desde los puntos más alejados del pozo hacia este.&lt;br /&gt;
Por lo tanto se verifica que:&lt;br /&gt;
 &amp;lt;math&amp;gt;\frac{\partial h}{\partial t}=0&amp;lt;/math&amp;gt;&lt;br /&gt;
Y por lo tanto el nivel piezométrico se puede aproximar por:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \left\{\begin{matrix}&lt;br /&gt;
- \frac{k}{s} (\frac{1}{\rho}  \frac{\partial h}{\partial \rho} + \frac{\partial^2 h}{\partial \rho^2})= 0 &amp;amp; \rho \epsilon (1, 20) &amp;amp; \theta \epsilon (0, 2\Pi ) &amp;amp; 0 &amp;lt; t &amp;lt; 5000 \\ &lt;br /&gt;
h(1,t) = 35;    h(20, t)= 40 \\ &lt;br /&gt;
h(\rho, 0) = 40 &lt;br /&gt;
\end{matrix}\right. &amp;lt;/math&amp;gt;&lt;br /&gt;
Resolvemos por diferencias finitas:&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
    %datos&lt;br /&gt;
    t=5000;&lt;br /&gt;
    l=20;&lt;br /&gt;
    D=0.01;&lt;br /&gt;
    hp=35;&lt;br /&gt;
    ho=40;&lt;br /&gt;
    %discretización&lt;br /&gt;
    s=0.1;&lt;br /&gt;
    x0=1;&lt;br /&gt;
    x=x0:s:l;&lt;br /&gt;
    xint=x0+s:s:l-s;&lt;br /&gt;
    N=length(x)-2; &lt;br /&gt;
    %construimos las matrices para el método de las diferencias finitas&lt;br /&gt;
    K=(1/s^2)*(diag(2*ones(1,N))-diag(ones(1,N-1),1)-diag(ones(1,N-1),-1));&lt;br /&gt;
    A=(1/(s*2))*(diag(ones(1,N-1),1)-diag(ones(1,N-1),-1));&lt;br /&gt;
    A=diag(1./xint)*A;&lt;br /&gt;
    h0=(40*ones(N,1));&lt;br /&gt;
    dt=200; &lt;br /&gt;
    t=0:dt:t;&lt;br /&gt;
    M=length(t)-1;&lt;br /&gt;
    F=(zeros(N,1));&lt;br /&gt;
    F(1)=D*((hp/s^2)-(hp/(2*s)*1/xint(1)));&lt;br /&gt;
    F(N)=D*((ho/s^2)+ho/(s*2*xint(N)));&lt;br /&gt;
    H(1,:)=[40;h0;40]'; &lt;br /&gt;
    h=h0;&lt;br /&gt;
    for n=1:M&lt;br /&gt;
      h=(D)*(K-A)\((F)); %utilizamos el comando backslash para resolver el sistema de ecuaciones&lt;br /&gt;
      H(n+1,:)=[hp h' ho];&lt;br /&gt;
    end&lt;br /&gt;
    %mallado y representación&lt;br /&gt;
    [X,T]=meshgrid(x,t);&lt;br /&gt;
    surf(X,T,H)&lt;br /&gt;
    xlabel('Distancia (metros)');&lt;br /&gt;
    ylabel('Tiempo (horas)');&lt;br /&gt;
    zlabel('Nivel piezométrico (metros)')&lt;br /&gt;
}}&lt;br /&gt;
Efectivamente, como podemos comprobar en la gráfica, la solución es independiente del tiempo salvo para tiempos pequeños en los cuales no queda muy bien definida&lt;br /&gt;
&lt;br /&gt;
====Capacidad de recuperación del acuífero====&lt;br /&gt;
En este apartado queremos calcular una ley que nos describa el comportamiento del acuífero e el caso de que impermeabilizásemos las paredes del pozo partiendo del estado estacionario anterior, esto significaría que el fujo de agua en los bordes del pozo sería nulo y el nivel piezométrico iría variando hasta llegar a otro estado estacionario.&lt;br /&gt;
El estado estacionarioque tenderá a alcanzar el fluido será el inicial, ya que al impermeabilizar las paredes volvemos al caso del acuífero confinado y por ello es nivel piezométrico quedará constante a lo largo del tiempo y de la extensión del acuífero.&lt;br /&gt;
La condición frontera a imponer será que el flujo de agua en r0 será 0, ya que estará impermeabilizado. Esto lo podemos plasmar diciendo que la parcial del nivel piezométrico con respecto a ro en r0 es 0, ya que un aislamiento impide el flujo de líquido, y si el flujo de líquido es nulo el nivel piezométrico no varía.&lt;br /&gt;
&amp;lt;math&amp;gt;\frac{\partial h}{\partial \rho}=0&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Con la condición que acabamos de proponer resolvemos numéricamente con Matlab:&lt;br /&gt;
[[Archivo:ESTACIONARIO1.jpg|marco|derecha|Recuperación del acuífero tras impermeabilizar]]&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
clear all&lt;br /&gt;
&lt;br /&gt;
%REPETIMOS EL PROGRAMA ANTERIOR PARA SACAR EL VALOR ESTACIONARIO&lt;br /&gt;
 &lt;br /&gt;
a=0.5; b=20; %Condiciones de contorno&lt;br /&gt;
drho=0.1; N=(b-a)/drho; %División del intervalo&lt;br /&gt;
rho=a:drho:b-drho; %Sólo nodos interiores&lt;br /&gt;
L=diag(ones(1,N-1),1)-diag(ones(1,N-1),-1);&lt;br /&gt;
L(1,2)=0;&lt;br /&gt;
A=diag(1./rho);&lt;br /&gt;
L=10^(-2)*(1/(2*drho))*A*L;&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(1,2)=2;&lt;br /&gt;
K=10^(-2)*(1/drho^2)*K; &lt;br /&gt;
F=zeros(N,1);&lt;br /&gt;
F(1,1)=0; %Ahora esto es cero&lt;br /&gt;
F(N,1)=10^(-2)*(45/(rho(N)*2*drho)+45/drho^2);&lt;br /&gt;
H=ones(1,length(rho)); H=H*45; H=H';&lt;br /&gt;
dt=200; T=5000; t=0:dt:T;&lt;br /&gt;
h0=34; hN=45;&lt;br /&gt;
sol=[h0 H' hN];&lt;br /&gt;
 &lt;br /&gt;
for j=1:length(t)-1 &lt;br /&gt;
 &lt;br /&gt;
    H=-(L+K)\F;&lt;br /&gt;
    &lt;br /&gt;
    MAT=[h0 H' hN];&lt;br /&gt;
 &lt;br /&gt;
    sol(j+1,:)=[h0 H' hN]; %Salvamos las solución, incluimos los extremos&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
%AHORA RESOLVEMOS PARA EL CASO DE LA RECUPERACIÓN&lt;br /&gt;
&lt;br /&gt;
%PRIMERA FASE. ESPACIO&lt;br /&gt;
 &lt;br /&gt;
a=0.5; b=20; %Condiciones de contorno&lt;br /&gt;
drho=0.1; N=(b-a)/drho; %División del intervalo&lt;br /&gt;
 &lt;br /&gt;
rho=a:drho:b-drho; %Sólo nodos interiores&lt;br /&gt;
 &lt;br /&gt;
%Creamos las matrices&lt;br /&gt;
 &lt;br /&gt;
L=diag(ones(1,N-1),1)-diag(ones(1,N-1),-1);&lt;br /&gt;
L(1,2)=0;&lt;br /&gt;
A=diag(1./rho);&lt;br /&gt;
L=10^(-2)*(1/(2*drho))*A*L;&lt;br /&gt;
 &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(1,2)=2;&lt;br /&gt;
K=10^(-2)*(1/drho^2)*K; &lt;br /&gt;
 &lt;br /&gt;
F=zeros(N,1);&lt;br /&gt;
F(1)=0; %Ahora esto es cero&lt;br /&gt;
F(N)=10^(-2)*(45/(rho(N)*2*drho)+45/drho^2);&lt;br /&gt;
 &lt;br /&gt;
%SEGUDA FASE. TIEMPO&lt;br /&gt;
 &lt;br /&gt;
H=ones(1,length(rho)); &lt;br /&gt;
dt=200; T=5000; t=0:dt:T;&lt;br /&gt;
hN=45;&lt;br /&gt;
sol=[MAT(1:length(rho)) hN];&lt;br /&gt;
&lt;br /&gt;
for j=1:length(t)-1 &lt;br /&gt;
    &lt;br /&gt;
    H=(-(L+K))\F;&lt;br /&gt;
 &lt;br /&gt;
    sol(j+1,:)=[H' hN]; %Salvamos las solución, incluimos los extremos&lt;br /&gt;
end&lt;br /&gt;
 &lt;br /&gt;
rho1=a:drho:b; %Incluimos los nodos exteriores&lt;br /&gt;
 &lt;br /&gt;
[rr,tt]=meshgrid(rho1,t);&lt;br /&gt;
surf(rr,tt,sol); %Dibujamos la solución&lt;br /&gt;
title('Recuperación del acuífero. Condición estacionaria.')&lt;br /&gt;
xlabel('Distancia radial al centro del pozo.')&lt;br /&gt;
ylabel('Tiempo.')&lt;br /&gt;
zlabel('Nivel piezométrico.')&lt;br /&gt;
}}&lt;br /&gt;
Este programa nos representa la evolución del nivel piezométrico del acuífero tras ser impermeabilizado, partiendo del estado estacionario descrito anteriormente hasta llegar al estado inicial con h constante.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
También construimos un programa aparte que calcula, con un error del 5%, cuánto dura esta recuperación del nivel piezométrico:&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
clear all&lt;br /&gt;
&lt;br /&gt;
%PRIMERA FASE. ESPACIO&lt;br /&gt;
 &lt;br /&gt;
a=0.5; b=20; %Condiciones de contorno&lt;br /&gt;
drho=0.1; N=(b-a)/drho; %División del intervalo&lt;br /&gt;
 &lt;br /&gt;
rho=a:drho:b-drho; %Sólo nodos interiores&lt;br /&gt;
 &lt;br /&gt;
%Creamos las matrices&lt;br /&gt;
 &lt;br /&gt;
L=diag(ones(1,N-1),1)-diag(ones(1,N-1),-1);&lt;br /&gt;
L(1,2)=0;&lt;br /&gt;
A=diag(1./rho);&lt;br /&gt;
L=10^(-2)*(1/(2*drho))*A*L;&lt;br /&gt;
 &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(1,2)=2;&lt;br /&gt;
K=10^(-2)*(1/drho^2)*K; &lt;br /&gt;
 &lt;br /&gt;
F=zeros(N,1);&lt;br /&gt;
F(1,1)=0; %Ahora esto es cero&lt;br /&gt;
F(N,1)=10^(-2)*(45/(rho(N)*2*drho)+45/drho^2);&lt;br /&gt;
 &lt;br /&gt;
%SEGUDA FASE. TIEMPO&lt;br /&gt;
 &lt;br /&gt;
H=ones(1,length(rho)); H=H*45; H=H';&lt;br /&gt;
dt=200; T=5000; t=0:dt:T;&lt;br /&gt;
h0=34; hN=45;&lt;br /&gt;
sol=[h0 H' hN];&lt;br /&gt;
 &lt;br /&gt;
for j=1:length(t)-1 &lt;br /&gt;
 &lt;br /&gt;
    H=-(L+K)\F;&lt;br /&gt;
    &lt;br /&gt;
    MAT=[h0 H' hN];&lt;br /&gt;
 &lt;br /&gt;
    sol(j+1,:)=[h0 H' hN]; %Salvamos las solución, incluimos los extremos&lt;br /&gt;
end&lt;br /&gt;
 &lt;br /&gt;
&lt;br /&gt;
%PRIMERA FASE. ESPACIO&lt;br /&gt;
 &lt;br /&gt;
a=0.5; b=20; %Condiciones de contorno&lt;br /&gt;
drho=0.1; N=(b-a)/drho; %División del intervalo&lt;br /&gt;
 &lt;br /&gt;
rho=a:drho:b-drho; %Sólo nodos interiores&lt;br /&gt;
 &lt;br /&gt;
%Creamos las matrices&lt;br /&gt;
 &lt;br /&gt;
L=diag(ones(1,N-1),1)-diag(ones(1,N-1),-1);&lt;br /&gt;
L(1,2)=0;&lt;br /&gt;
A=diag(1./rho);&lt;br /&gt;
L=10^(-2)*(1/(2*drho))*A*L;&lt;br /&gt;
 &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(1,2)=2;&lt;br /&gt;
K=10^(-2)*(1/drho^2)*K; &lt;br /&gt;
 &lt;br /&gt;
F=zeros(N,1);&lt;br /&gt;
F(1,1)=0; %Ahora esto es cero&lt;br /&gt;
F(N,1)=10^(-2)*(45/(rho(N)*2*drho)+45/drho^2);&lt;br /&gt;
 &lt;br /&gt;
%SEGUDA FASE. TIEMPO&lt;br /&gt;
 &lt;br /&gt;
H=ones(1,length(rho)); &lt;br /&gt;
dt=200; T=5000; t=0:dt:T;&lt;br /&gt;
hN=45;&lt;br /&gt;
sol=[MAT(1:length(rho)) hN];&lt;br /&gt;
&lt;br /&gt;
for j=1:length(t)-1 &lt;br /&gt;
    &lt;br /&gt;
    H=-(L+K)\F;&lt;br /&gt;
 &lt;br /&gt;
    sol(j+1,:)=[H' hN]; %Salvamos las solución, incluimos los extremos&lt;br /&gt;
    &lt;br /&gt;
    error=max(abs(sol(j+1,:)-hN*ones(1,N+1)/40));&lt;br /&gt;
    &lt;br /&gt;
    tiempo=j; %Contador de tiempo, cada bucle una hora&lt;br /&gt;
    if error &amp;lt;=0.05&lt;br /&gt;
        break&lt;br /&gt;
    end&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
tiempo %Saca en pantalla el tiempo que tarda en alcanzar el régimen estacionario&lt;br /&gt;
}}&lt;br /&gt;
El resultado es de 25 horas.&lt;br /&gt;
''*'''Nota''': los programas son reiterativos y definen las mismas variables por estar diseñados para compilar por separado.''&lt;br /&gt;
&lt;br /&gt;
====Método de Fourier====&lt;br /&gt;
Ahora suponemos que el radio del pozo es despreciable y que una vez extraido el agua el pozo se cierra quedando el acuifero de nuevo homogéneo. En este caso tomaremos la región ρ &amp;lt; 20. Nuestro objetivo es aproximar las soluciones usando el método de Fourier. De nuevo supondremos que la solución sólo depende de ρ y t, y tomaremos ahora como condición frontera h(20, t) = 40.&lt;br /&gt;
Vamos a considerar el sistema de ecuaciones para h(ρ,t)=h(ρ,t)-40:&lt;br /&gt;
 &amp;lt;math&amp;gt; \left\{\begin{matrix}&lt;br /&gt;
\frac{\partial h}{\partial t} - D (\frac{1}{\rho}  \frac{\partial h}{\partial \rho} + \frac{\partial^2 h}{\partial \rho^2})= 0 &amp;amp; \rho \epsilon (0, 20) &amp;amp; \theta \epsilon (0, 2\Pi ) &amp;amp; t &amp;gt; 0 \\ &lt;br /&gt;
\frac{\partial h}{\partial \rho}(0,t) = 0;   h(20, t)= 0 \\ &lt;br /&gt;
\end{matrix}\right. &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Obtenemos el problema de autovalores asociado al sistema anterior con el método de separación de variables:&lt;br /&gt;
 &amp;lt;math&amp;gt; \left\{\begin{matrix}&lt;br /&gt;
D (\frac{X'(\rho)}{\rho} + X''(\rho))+ λX(\rho)=0 \\&lt;br /&gt;
X'(0) = 0;   X(20)= 0 \\ &lt;br /&gt;
&lt;br /&gt;
\end{matrix}\right. &amp;lt;/math&amp;gt;&lt;br /&gt;
[[Archivo:Marta1.jpg|marco|derecha]]&lt;br /&gt;
Sabemos que los problemas de esta forma tienen como solución la función de Bessel de primera especie que forma una familia de autofunciones: &amp;lt;math&amp;gt;Ψ(\rho)=J_0·(\rho\sqrt{λ})&amp;lt;/math&amp;gt;. Estas se anulan cuando &amp;lt;math&amp;gt;(\rho\sqrt{λ})&amp;lt;/math&amp;gt; se iguala a 2.4048, 5.5201, 8.6537, 11.7915 y 14.9309, siendo estos los 5 primeros ceros de la función de Bessel. De esta manera y tomando ρ=20 obtenemos los 5 primeros autovalores:&lt;br /&gt;
&amp;lt;math&amp;gt;(20\sqrt{λ})=2.4048&amp;lt;/math&amp;gt;Haciendo la operación anterior para los 5 ceros obtenemos los siguientes autovalores: 0.0145, 0.0762, 0.1872, 0.3476, 0.5573.&lt;br /&gt;
Ahora vamos a dibujar las 5 primeras autofunciones utilizando la función besselj:&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
a1=0.0145;&lt;br /&gt;
a2=0.0762;&lt;br /&gt;
a3=0.1872;&lt;br /&gt;
a4=0.3476;&lt;br /&gt;
a5=0.5575;&lt;br /&gt;
r=0:0.02:20;&lt;br /&gt;
F1=besselj(0,r.*(sqrt(a1))); &lt;br /&gt;
F2=besselj(0,r.*(sqrt(a2)));&lt;br /&gt;
F3=besselj(0,r.*(sqrt(a3)));&lt;br /&gt;
F4=besselj(0,r.*(sqrt(a4)));&lt;br /&gt;
F5=besselj(0,r.*(sqrt(a5)));&lt;br /&gt;
hold on&lt;br /&gt;
plot(r,F1)&lt;br /&gt;
plot(r,F2,'r')&lt;br /&gt;
plot(r,F3,'g')	&lt;br /&gt;
plot(r,F4,'c')&lt;br /&gt;
plot(r,F5,'y')&lt;br /&gt;
hold off&lt;br /&gt;
}}&lt;br /&gt;
[[Archivo:Marta2.jpg|marco|derecha]]&lt;br /&gt;
Aproximamos ahora la solución de la ecuación tomando como dato inicial es&amp;lt;math&amp;gt; h (\rho,0)= -log \frac{|\rho + 0.01|}{20.01} &amp;lt;/math&amp;gt; y usando 5 términos del desarrollo de Fourier, teniendo en cuenta que las autofunciones son ortogonales respecto al producto escalar: &amp;lt;math&amp;gt; (f(\rho),g(\rho)) = \int_{0}^{20} \rho f(\rho) g(\rho) \cdot dx &amp;lt;/math&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
x0=0; L=20;&lt;br /&gt;
c0=[2.4048,5.5201,8.6537,11.7915,14.9309]; %Vector de ceros de la función de Bessel&lt;br /&gt;
A=(c0./20).^2; %Vector de autovalores&lt;br /&gt;
K=5; %Número de términos del desarrollo de Fourier&lt;br /&gt;
x=x0:0.1:L;&lt;br /&gt;
N=length(x)-1;&lt;br /&gt;
J=zeros(N+1,K);&lt;br /&gt;
z=zeros(N+1,K);&lt;br /&gt;
t0=0; tf=500;&lt;br /&gt;
t=t0:0.1:tf;&lt;br /&gt;
[xx,tt]=meshgrid(x,t);&lt;br /&gt;
h=0;&lt;br /&gt;
for k=1:K&lt;br /&gt;
   z(:,k)=(x)'*sqrt(A(k));&lt;br /&gt;
   J(:,k)=besselj(0,z(:,k));&lt;br /&gt;
   h0=-log((abs(x+0.1))/20.01); %Condición inicial&lt;br /&gt;
   c(k)=trapz(x,x'.*h0'.*J(:,k))/trapz(x,x'.*J(:,k).*J(:,k)); %Coeficientes de Fourier&lt;br /&gt;
   h=h+c(k)*exp(-A(k)*t)'*J(:,k)';&lt;br /&gt;
end&lt;br /&gt;
surf(xx,tt,h)&lt;br /&gt;
title('Aproximación de la solución')&lt;br /&gt;
}}&lt;/div&gt;</summary>
		<author><name>Marta Cavero</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Archivo:ESTACIONARIO1.jpg&amp;diff=30490</id>
		<title>Archivo:ESTACIONARIO1.jpg</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Archivo:ESTACIONARIO1.jpg&amp;diff=30490"/>
				<updated>2015-05-21T11:56:39Z</updated>
		
		<summary type="html">&lt;p&gt;Marta Cavero: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>Marta Cavero</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Nivel_piezom%C3%A9trico_de_un_acu%C3%ADfero_confinado_(A5)&amp;diff=30489</id>
		<title>Nivel piezométrico de un acuífero confinado (A5)</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Nivel_piezom%C3%A9trico_de_un_acu%C3%ADfero_confinado_(A5)&amp;diff=30489"/>
				<updated>2015-05-21T11:54:49Z</updated>
		
		<summary type="html">&lt;p&gt;Marta Cavero: /* Capacidad de recuperación del acuífero */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;br /&gt;
==== Introducción ====&lt;br /&gt;
&lt;br /&gt;
Consideramos un acuífero confinado entre dos capas de terreno impermeables horizontales. Llamaremos h(x, y) al nivel piezométrico del acuífero, definido por la altura que alcanzaría el agua si hiciéramos un sondeo en el punto (x, y). Obviamente este valor depende de la presión a la que se encuentra el agua confinada en el acuífero. Supondremos&lt;br /&gt;
que el acuífero es un medio poroso saturado de agua que ocupa una región infinita y está en equilibrio de manera que &amp;lt;math&amp;gt;h(x, y) = h_0&amp;lt;/math&amp;gt; constante para todo (x, y) ∈ &amp;lt;math&amp;gt;IR^{2}&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Sobre el acuifero se construye un pozo de sección circular y radio&amp;lt;math&amp;gt; ρ_0&amp;lt;/math&amp;gt; para extraer agua. La presencia del pozo hace que el nivel piezométrico cambie. Dada la simetría del problema podemos suponer que h(x, y) sólo va a depender de la distancia al pozo. Si tomamos coordenadas cilíndricas de forma que el eje OZ coincida con el eje de simetría del pozo, entonces h = h(ρ) donde &amp;lt;math&amp;gt;ρ = \sqrt{x^{2} + y^{2}}&amp;lt;/math&amp;gt; . Trabajaremos por tanto en coordenadas polares en el plano (ρ, θ).&lt;br /&gt;
&lt;br /&gt;
Las ecuaciones que permiten conocer h(ρ) son la ecuación de conservación de la masa:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; S = \frac{∂h}{∂t} + div q = 0 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
junto con la ley de Darcy&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; q = −K∇h &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
que es una ley experimental que modela el flujo de agua en un medio poroso. La ley de Darcy establece que el flujo de agua q a través de un medio poroso es proporcional a la diferencia de presión, que a su vez se puede escribir en términos del gradiente del nivel piezométrico en cada punto. La constante K se deduce experimentalmente para cada material y se conoce como la conductividad hidráulica o permeabilidad. Cuanto mayor es la constante K mayor es el flujo de agua provocado por un cambio&lt;br /&gt;
de presión. La ley de Darcy proporciona una buena aproximación del comportamiento del agua en un medio poroso siempre que este sea homogéneo e isótropo.&lt;br /&gt;
&lt;br /&gt;
La constante S en la ley de conservación de la masa se conoce como almacenamiento específico y se interpreta como la cantidad de agua que libera el acuífero al descender el nivel piezométrico en una unidad, por unidad de volumen.&lt;br /&gt;
&lt;br /&gt;
Combinando las ecuaciones de conservación de la masa con la ley de Darcy, obtenemos la ecuación:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \frac{∂h}{∂t} - D∆h = 0, ρ &amp;gt; ρ_0, θ ∈ (0, 2π), t &amp;gt; 0, (1) &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
donde D = K/S es la difusividad hidráulica que supondremos constante.&lt;br /&gt;
&lt;br /&gt;
==== Deducción de la fórmula ====&lt;br /&gt;
&lt;br /&gt;
En este apartado buscamos demostrar la ecuación (1) como combinación de la ecuación de conservación de masas y la Ley de Darcy.&lt;br /&gt;
&lt;br /&gt;
Por un lado sabemos que el laplaciaco equivale a la divergencia del gradiente: &lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; &lt;br /&gt;
(\Delta f = \nabla \cdot \nabla f = div \left (\nabla f) \right) &lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Por otro lado, sabemos que en coordenadas polares: &lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;x = ρ cos \theta \\&lt;br /&gt;
             y = ρ  sen \theta&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\bar{g_ρ } = cos \theta \bar{i} + sin \theta  \bar{j} \\&lt;br /&gt;
              \bar{g_\theta } = - ρ  sin \theta \bar{i} + ρ cos \theta \bar{j} &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;&lt;br /&gt;
G =&lt;br /&gt;
\left(&lt;br /&gt;
\begin{array}{cc}&lt;br /&gt;
1&amp;amp; 0 \\&lt;br /&gt;
0 &amp;amp; ρ ^{2} \\&lt;br /&gt;
\end{array}&lt;br /&gt;
\right);&lt;br /&gt;
\text {donde la raiz del determinante es} \sqrt{g} = ρ&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Como indica el enunciado, al sustituir la Ley de Darcy en la ecuación de conservación de la masa obtenemos y dividir entre S, teniendo en cuenta que el divergente del gradiente es el laplaciano como hemos indicado al principio de este apartado, obtenemos la ecuación (1): &amp;lt;math&amp;gt; \frac{∂h}{∂t} - \frac{k}{S}∆h = 0 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
En esta ecuación queda por desarrollar el Laplaciano de h. &lt;br /&gt;
Partiremos de la función h(ρ,θ), de la cual calcularemos primero el gradiente:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \nabla h = \frac{\partial h}{\partial \rho}\hat{\rho} + \frac{\partial h}{\partial \rho}\hat{\theta} =  \frac{\partial h}{\partial \rho}\bar{\rho} + \frac{1}{\rho^{2}} \frac{\partial h}{\partial \rho}\bar{\theta}  &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
teniendo en cuenta que &amp;lt;math&amp;gt;\bar{g^{i} } = \frac{\bar{g_i } }{ | \bar{g_i } | ^{2} } &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Ahora hacemos el divergente del gradiente anterior y obtenemos el Laplaciano en coordenadas polares:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;math&amp;gt;&lt;br /&gt;
 \Delta h = div(∇h) &lt;br /&gt;
= {1 \over \rho} {\partial \over \partial \rho}&lt;br /&gt;
  \left( \rho {\partial h \over \partial \rho} \right) &lt;br /&gt;
+ {1 \over \rho^2} {\partial^2 h \over \partial \theta^2}&lt;br /&gt;
= {1 \over \rho} {\partial h \over \partial \rho} &lt;br /&gt;
+ {\partial^2 h \over \partial \rho^2}&lt;br /&gt;
+ {1 \over \rho^2} {\partial^2 h \over \partial \theta^2}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Si consideramos que, debido a la simetría del problema, h sólo depende de su distancia al pozo, entonces obtenemos la función radial h(ρ), que nos permite simplificar el Laplaciano del modo siguiente:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;math&amp;gt;&lt;br /&gt;
 \Delta h = div(∇h) &lt;br /&gt;
= {1 \over \rho} {\partial h \over \partial \rho} &lt;br /&gt;
+ {\partial^2 h \over \partial \rho^2}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== Obtención de la ecuación====&lt;br /&gt;
&lt;br /&gt;
Para poder resolver la ecuación anterior y que el resultado sea único, hemos de establecer condiciones iniciales y de contorno.&lt;br /&gt;
&lt;br /&gt;
Las condiciones de contorno serán dos pues aparece la derivada segunda de la posición: &amp;lt;math&amp;gt; h(\rho_0 , t) = h_p \\&lt;br /&gt;
                                                                                                                                                                  h(20,t) = h_0 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
La condición inicial será única pues sólo aparece una derivada de primer orden en tiempo en nuestra ecuación: &amp;lt;math&amp;gt; h(\rho,0) = h_0 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
De este modo la ecuación resultante será:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \left\{\begin{matrix}&lt;br /&gt;
\frac{\partial h}{\partial t} - \frac{k}{s} (\frac{1}{\rho}  \frac{\partial h}{\partial \rho} + \frac{\partial^2 h}{\partial \rho^2})= 0 &amp;amp; \rho \epsilon (\rho_{0}, 2c) &amp;amp; \theta \epsilon (0, 2\Pi ) &amp;amp; t &amp;gt; 0 \\ &lt;br /&gt;
h(\rho_{0},t) = h_{p};   h(20, t)= h_{0} \\ &lt;br /&gt;
h(\rho, 0) = h_{0} &lt;br /&gt;
\end{matrix}\right. &amp;lt;/math&amp;gt; &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==== Resolución por método de diferencias finitas ====&lt;br /&gt;
&lt;br /&gt;
Suponiendo &amp;lt;math&amp;gt;ρ_0 =0.5m&amp;lt;/math&amp;gt;, &amp;lt;math&amp;gt;h_0 =45m&amp;lt;/math&amp;gt;, &amp;lt;math&amp;gt;hp =34&amp;lt;/math&amp;gt;, D=10−2, &amp;lt;math&amp;gt;(ρ,0)=h_0&amp;lt;/math&amp;gt;; y tomando  ∆ρ = 0.1 y ∆t = ∆ρ. Vamos a resolver la ecuación anterior por el método de diferencias finitas, usando el Método de Heun para realizar la aproximación en tiempo.&lt;br /&gt;
&lt;br /&gt;
Primero, sustituyendo los datos anteriores en la ecuación, llegamos a:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \left\{\begin{matrix}&lt;br /&gt;
\frac{\partial h}{\partial t} - 10^{2} (\frac{1}{\rho}  \frac{\partial h}{\partial \rho} + \frac{\partial^2 h}{\partial \rho^2})= 0 &amp;amp; \rho \epsilon (0.5, 20) &amp;amp; \theta \epsilon (0, 2\Pi ) &amp;amp; t &amp;gt; 0 \\ &lt;br /&gt;
h(0.5,t) = 34;   h(20, t)= 45 \\ &lt;br /&gt;
h(\rho, 0) = 45&lt;br /&gt;
\end{matrix}\right. &amp;lt;/math&amp;gt; &lt;br /&gt;
&lt;br /&gt;
Aplicando el método de las diferencias finitas llegamos al siguiente código:&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
&lt;br /&gt;
%TRPRIMERA FASE. ESPACIO&lt;br /&gt;
&lt;br /&gt;
a=0.5; b=20; %Condiciones de contorno&lt;br /&gt;
drho=0.1; N=(b-a)/drho; %División del intervalo&lt;br /&gt;
&lt;br /&gt;
rho=a+drho:drho:b-drho; %Sólo nodos interiores&lt;br /&gt;
&lt;br /&gt;
%Creamos las matrices&lt;br /&gt;
&lt;br /&gt;
L=diag(ones(1,N-2),1)-diag(ones(1,N-2),-1);&lt;br /&gt;
A=diag(1./rho);&lt;br /&gt;
L=10^(-2)*(1/(2*drho))*A*L;&lt;br /&gt;
&lt;br /&gt;
K=-2*diag(ones(1,N-1))+diag(ones(1,N-2),1)+diag(ones(1,N-2),-1);&lt;br /&gt;
K=10^(-2)*(1/drho^2)*K; &lt;br /&gt;
&lt;br /&gt;
F=zeros(N-1,1);&lt;br /&gt;
F(1,1)=10^(-2)*(-17/(rho(1)*drho)+34/drho^2);&lt;br /&gt;
F(N-1,1)=10^(-2)*(45/(rho(N-1)*2*drho)+45/drho^2);&lt;br /&gt;
&lt;br /&gt;
%SEGUDA FASE. TIEMPO&lt;br /&gt;
&lt;br /&gt;
H=ones(1,length(rho)); H=H*45; H=H';&lt;br /&gt;
dt=drho; T=10; t=0:dt:T;&lt;br /&gt;
h0=34; hN=45;&lt;br /&gt;
sol=[h0 H' hN];&lt;br /&gt;
&lt;br /&gt;
for j=1:length(t)-1 &lt;br /&gt;
    &lt;br /&gt;
    %Método de Heun&lt;br /&gt;
    k1=F+(K+L)*H;&lt;br /&gt;
    k2=F+(K+L)*(H+k1*dt);&lt;br /&gt;
    H=H+(dt/2)*(k1+k2);&lt;br /&gt;
 &lt;br /&gt;
    sol(j+1,:)=[h0 H' hN]; %Salvamos las solución, incluimos los extremos&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
rho1=a:drho:b; %Incluimos los nodos exteriores&lt;br /&gt;
&lt;br /&gt;
[rr,tt]=meshgrid(rho1,t);&lt;br /&gt;
surf(rr,tt,sol); %Dibujamos la solución&lt;br /&gt;
title('Nivel Piezométrico. Método Diferencias finitas con Heun en tiempo.')&lt;br /&gt;
xlabel('Distancia radial al centro del pozo.')&lt;br /&gt;
ylabel('Tiempo.')&lt;br /&gt;
zlabel('Nivel piezométrico.')&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
Mediante este código obtenemos la siguiente gráfica:&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Grafica npiezometrico.jpg|500px|thumb|best|Gráfica Nivel Piezométrico aproximada con el Método de Diferencias Finitas con Heun en tiempo.]]&lt;br /&gt;
&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Ahora dibujaremos la gráfica mediante los métodos de Euler implícito y trapecio y compararemos los resultados obtenidos.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Sobre el programa anterior cambiaremos las líneas correspondientes al método de Heun.&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* Método de Euler implícito:&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;math&amp;gt; \left\{\begin{matrix}&lt;br /&gt;
y_{0}\\&lt;br /&gt;
y_{n+1}=y_{n} + hf(t_{n+1},y_{n+1})\\&lt;br /&gt;
\end{matrix}\right. &amp;lt;/math&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
&lt;br /&gt;
for j=1:length(t)-1 &lt;br /&gt;
    &lt;br /&gt;
    %Método de Euler implícito&lt;br /&gt;
    &lt;br /&gt;
    H=(eye(N-1)-dt*(K+L))\(H+(F*dt)); &lt;br /&gt;
 &lt;br /&gt;
    sol(j+1,:)=[h0 H' hN]; %Salvamos las solución, incluimos los extremos&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
rho1=a:drho:b; %Incluimos los nodos exteriores&lt;br /&gt;
&lt;br /&gt;
[rr,tt]=meshgrid(rho1,t);&lt;br /&gt;
surf(rr,tt,sol); %Dibujamos la solución&lt;br /&gt;
title('Nivel Piezométrico. Método Diferencias finitas con Euler en tiempo.')&lt;br /&gt;
xlabel('Distancia radial al centro del pozo.')&lt;br /&gt;
ylabel('Tiempo.')&lt;br /&gt;
zlabel('Nivel piezométrico.')&lt;br /&gt;
&lt;br /&gt;
}}&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* Método del Trapecio:&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;math&amp;gt; \left\{\begin{matrix}&lt;br /&gt;
y_{0}\\&lt;br /&gt;
y_{n+1}=y_{n} + \frac{h}{2}f((t_{n},y_{n}+f(t_{n+1},y_{n+1}))\\&lt;br /&gt;
\end{matrix}\right. &amp;lt;/math&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
for j=1:length(t)-1 &lt;br /&gt;
    &lt;br /&gt;
    %Método del trapecio&lt;br /&gt;
    k1=F+(K+L)*H;&lt;br /&gt;
    k2=F+(K+L)*(H+k1*dt); &lt;br /&gt;
    H=(eye(N-1)-(dt/2)*(K+L))\(H+dt*F+(dt/2)*(K+L)*H);&lt;br /&gt;
 &lt;br /&gt;
    sol(j+1,:)=[h0 H' hN]; %Salvamos las solución, incluimos los extremos&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
rho1=a:drho:b; %Incluimos los nodos exteriores&lt;br /&gt;
&lt;br /&gt;
[rr,tt]=meshgrid(rho1,t);&lt;br /&gt;
surf(rr,tt,sol); %Dibujamos la solución&lt;br /&gt;
title('Nivel Piezométrico. Método Diferencias finitas con trapecio en tiempo.')&lt;br /&gt;
xlabel('Distancia radial al centro del pozo.')&lt;br /&gt;
ylabel('Tiempo.')&lt;br /&gt;
zlabel('Nivel piezométrico.')&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
Como podemos ver a continuación las tres gráficas resultantes son prácticamente iguales por lo que los tres métodos hacen una aproximación similar.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
[[Archivo:Trapecio12.png|500px|thumb|right|Gráfica Nivel Piezométrico aproximada con el Método de Diferencias Finitas con Trapecio en tiempo.]]&lt;br /&gt;
[[Archivo:Euler12.png|500px|thumb|right|Gráfica Nivel Piezométrico aproximada con el Método de Diferencias Finitas con Euler Implícito en tiempo.]]&lt;br /&gt;
&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== Comportamiento del nivel piezométrico con &amp;lt;math&amp;gt; \rho &amp;lt;/math&amp;gt; constante ====&lt;br /&gt;
&lt;br /&gt;
Ahora supondremos que &amp;lt;math&amp;gt; \rho &amp;lt;/math&amp;gt; es constante y que su valor es 2 y dibujaremos el comportamiento del nivel piezométrico en una gráfica 2D nivel piezométrico-tiempo.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Nuevamente utilizando el programa anterior con el  método de Heun:&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Rho2.png|500px|thumb|best|Gráfica Nivel Piezométrico-tiempo para &amp;lt;math&amp;gt; \rho =2 &amp;lt;/math&amp;gt; para T=10.]]&lt;br /&gt;
[[Archivo:Rho1000.png|500px|thumb|best|Gráfica Nivel Piezométrico-tiempo para &amp;lt;math&amp;gt; \rho =2 &amp;lt;/math&amp;gt; para T=1000.]]&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
&lt;br /&gt;
%PRIMERA FASE. ESPACIO&lt;br /&gt;
&lt;br /&gt;
a=0.5; b=20; %Condiciones de contorno&lt;br /&gt;
drho=0.1; N=(b-a)/drho; %División del intervalo&lt;br /&gt;
&lt;br /&gt;
rho=a+drho:drho:b-drho; %Sólo nodos interiores&lt;br /&gt;
&lt;br /&gt;
%Creamos las matrices&lt;br /&gt;
&lt;br /&gt;
L=diag(ones(1,N-2),1)-diag(ones(1,N-2),-1);&lt;br /&gt;
A=diag(1./rho);&lt;br /&gt;
L=10^(-2)*(1/(2*drho))*A*L;&lt;br /&gt;
&lt;br /&gt;
K=-2*diag(ones(1,N-1))+diag(ones(1,N-2),1)+diag(ones(1,N-2),-1);&lt;br /&gt;
K=10^(-2)*(1/drho^2)*K; &lt;br /&gt;
&lt;br /&gt;
F=zeros(N-1,1);&lt;br /&gt;
F(1,1)=10^(-2)*(-17/(rho(1)*drho)+34/drho^2);&lt;br /&gt;
F(N-1,1)=10^(-2)*(45/(rho(N-1)*2*drho)+45/drho^2);&lt;br /&gt;
&lt;br /&gt;
%SEGUDA FASE. TIEMPO&lt;br /&gt;
&lt;br /&gt;
H=ones(1,length(rho)); H=H*45; H=H';&lt;br /&gt;
dt=drho; &lt;br /&gt;
T=10 &lt;br /&gt;
%Comprobamos también la solución para un tiempo mayor &lt;br /&gt;
%T=1000&lt;br /&gt;
t=0:dt:T;&lt;br /&gt;
h0=34; hN=45;&lt;br /&gt;
sol=[h0 H' hN];&lt;br /&gt;
&lt;br /&gt;
for j=1:length(t)-1 &lt;br /&gt;
    &lt;br /&gt;
    %Método de Heun&lt;br /&gt;
    k1=F+(K+L)*H;&lt;br /&gt;
    k2=F+(K+L)*(H+k1*dt);&lt;br /&gt;
    H=H+(dt/2)*(k1+k2);&lt;br /&gt;
 &lt;br /&gt;
    sol(j+1,:)=[h0 H' hN]; %Salvamos las solución, incluimos los extremos&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
rho1=a:drho:b; %Incluimos los nodos exteriores&lt;br /&gt;
&lt;br /&gt;
m=sol(:,rho==2); %Vector que incluye la solución en tiempo para rho=2&lt;br /&gt;
&lt;br /&gt;
plot(t,m);&lt;br /&gt;
&lt;br /&gt;
title('Comportamiento del nivel piezométrico en el tiempo para p=2')&lt;br /&gt;
xlabel('Tiempo')&lt;br /&gt;
ylabel('Nivel piezométrico.')&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
La primera gráfica muestra que para tiempos pequeños la variación del nivel piezométrico es muy pequeña (del orden de 0,10/0,15 m), aún así como observamos en la segunda gráfica a medida que avanzamos en el tiempo la variación del nivel disminuye aún más ya que la curva está cada vez menos inclinada.&lt;br /&gt;
&lt;br /&gt;
==== Variación del nivel piezométrico en tiempos grandes ====&lt;br /&gt;
Ahora vamos a comprobar que la variación del nivel piezométrico para tiempos elevados (T=5000) es mínima.&lt;br /&gt;
Para ello dibujaremos las soluciones cada 100 horas de en el intervalo temporal [1; 5000], en&lt;br /&gt;
una misma gráfica.&lt;br /&gt;
[[Archivo:Tiemposg2.png|marco|derecha|Nivel piezométrico para tiempos grandes]]&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
%PRIMERA FASE. ESPACIO&lt;br /&gt;
&lt;br /&gt;
a=0.5; b=20; %Condiciones de contorno&lt;br /&gt;
drho=0.1; N=(b-a)/drho; %División del intervalo&lt;br /&gt;
&lt;br /&gt;
rho=a+drho:drho:b-drho; %Sólo nodos interiores&lt;br /&gt;
&lt;br /&gt;
%Creamos las matrices&lt;br /&gt;
&lt;br /&gt;
L=diag(ones(1,N-2),1)-diag(ones(1,N-2),-1);&lt;br /&gt;
A=diag(1./rho);&lt;br /&gt;
L=10^(-2)*(1/(2*drho))*A*L;&lt;br /&gt;
&lt;br /&gt;
K=-2*diag(ones(1,N-1))+diag(ones(1,N-2),1)+diag(ones(1,N-2),-1);&lt;br /&gt;
K=10^(-2)*(1/drho^2)*K; &lt;br /&gt;
&lt;br /&gt;
F=zeros(N-1,1);&lt;br /&gt;
F(1,1)=10^(-2)*(-17/(rho(1)*drho)+34/drho^2);&lt;br /&gt;
F(N-1,1)=10^(-2)*(45/(rho(N-1)*2*drho)+45/drho^2);&lt;br /&gt;
&lt;br /&gt;
%SEGUDA FASE. TIEMPO&lt;br /&gt;
&lt;br /&gt;
H=ones(1,length(rho)); H=H*45; H=H';&lt;br /&gt;
dt=0.1; T=5000; t=0:dt:T;&lt;br /&gt;
h0=34; hN=45;&lt;br /&gt;
sol=[h0 H' hN];&lt;br /&gt;
&lt;br /&gt;
figure(1);&lt;br /&gt;
hold on;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
for j=1:length(t)-1 &lt;br /&gt;
    &lt;br /&gt;
    %Método de Heun&lt;br /&gt;
    k1=F+(K+L)*H;&lt;br /&gt;
    k2=F+(K+L)*(H+k1*dt);&lt;br /&gt;
    H=H+(dt/2)*(k1+k2);&lt;br /&gt;
 &lt;br /&gt;
    sol(j+1,:)=[h0 H' hN]; %Salvamos las solución, incluimos los extremos&lt;br /&gt;
    &lt;br /&gt;
 if rem(t(j),100)==0; &lt;br /&gt;
    &lt;br /&gt;
    rho1=a:drho:b; %Incluimos los nodos exteriores&lt;br /&gt;
  &lt;br /&gt;
  plot(rho1,sol(j,:)) %pintamos la solución cada 100 horas&lt;br /&gt;
  &lt;br /&gt;
  title('Variación del nivel piezométrico para tiempos grandes')&lt;br /&gt;
  pause(1)&lt;br /&gt;
&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
end&lt;br /&gt;
}}&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Como se puede observar en la gráfica según vamos avanzando en el tiempo las curvas están más juntas lo que quiere decir que la variación del nivel es cada vez menor aproximándose a un régimen estacionario.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Trabajo21.jpg|marco|derecha|Nivel piezométrico estacionario]]&lt;br /&gt;
&lt;br /&gt;
====Problema estacionario====&lt;br /&gt;
Como hemos visto en el apartado anterior para tiempos grandes el nivel piezométrico se mantiene practicamente constante a lo largo del tiempo, esto es debido a que se establece un equilibrio entre el caudal de agua extraida del acuifero y la migración de aguas desde los puntos más alejados del pozo hacia este.&lt;br /&gt;
Por lo tanto se verifica que:&lt;br /&gt;
 &amp;lt;math&amp;gt;\frac{\partial h}{\partial t}=0&amp;lt;/math&amp;gt;&lt;br /&gt;
Y por lo tanto el nivel piezométrico se puede aproximar por:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \left\{\begin{matrix}&lt;br /&gt;
- \frac{k}{s} (\frac{1}{\rho}  \frac{\partial h}{\partial \rho} + \frac{\partial^2 h}{\partial \rho^2})= 0 &amp;amp; \rho \epsilon (1, 20) &amp;amp; \theta \epsilon (0, 2\Pi ) &amp;amp; 0 &amp;lt; t &amp;lt; 5000 \\ &lt;br /&gt;
h(1,t) = 35;    h(20, t)= 40 \\ &lt;br /&gt;
h(\rho, 0) = 40 &lt;br /&gt;
\end{matrix}\right. &amp;lt;/math&amp;gt;&lt;br /&gt;
Resolvemos por diferencias finitas:&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
    %datos&lt;br /&gt;
    t=5000;&lt;br /&gt;
    l=20;&lt;br /&gt;
    D=0.01;&lt;br /&gt;
    hp=35;&lt;br /&gt;
    ho=40;&lt;br /&gt;
    %discretización&lt;br /&gt;
    s=0.1;&lt;br /&gt;
    x0=1;&lt;br /&gt;
    x=x0:s:l;&lt;br /&gt;
    xint=x0+s:s:l-s;&lt;br /&gt;
    N=length(x)-2; &lt;br /&gt;
    %construimos las matrices para el método de las diferencias finitas&lt;br /&gt;
    K=(1/s^2)*(diag(2*ones(1,N))-diag(ones(1,N-1),1)-diag(ones(1,N-1),-1));&lt;br /&gt;
    A=(1/(s*2))*(diag(ones(1,N-1),1)-diag(ones(1,N-1),-1));&lt;br /&gt;
    A=diag(1./xint)*A;&lt;br /&gt;
    h0=(40*ones(N,1));&lt;br /&gt;
    dt=200; &lt;br /&gt;
    t=0:dt:t;&lt;br /&gt;
    M=length(t)-1;&lt;br /&gt;
    F=(zeros(N,1));&lt;br /&gt;
    F(1)=D*((hp/s^2)-(hp/(2*s)*1/xint(1)));&lt;br /&gt;
    F(N)=D*((ho/s^2)+ho/(s*2*xint(N)));&lt;br /&gt;
    H(1,:)=[40;h0;40]'; &lt;br /&gt;
    h=h0;&lt;br /&gt;
    for n=1:M&lt;br /&gt;
      h=(D)*(K-A)\((F)); %utilizamos el comando backslash para resolver el sistema de ecuaciones&lt;br /&gt;
      H(n+1,:)=[hp h' ho];&lt;br /&gt;
    end&lt;br /&gt;
    %mallado y representación&lt;br /&gt;
    [X,T]=meshgrid(x,t);&lt;br /&gt;
    surf(X,T,H)&lt;br /&gt;
    xlabel('Distancia (metros)');&lt;br /&gt;
    ylabel('Tiempo (horas)');&lt;br /&gt;
    zlabel('Nivel piezométrico (metros)')&lt;br /&gt;
}}&lt;br /&gt;
Efectivamente, como podemos comprobar en la gráfica, la solución es independiente del tiempo salvo para tiempos pequeños en los cuales no queda muy bien definida&lt;br /&gt;
&lt;br /&gt;
====Capacidad de recuperación del acuífero====&lt;br /&gt;
En este apartado queremos calcular una ley que nos describa el comportamiento del acuífero e el caso de que impermeabilizásemos las paredes del pozo partiendo del estado estacionario anterior, esto significaría que el fujo de agua en los bordes del pozo sería nulo y el nivel piezométrico iría variando hasta llegar a otro estado estacionario.&lt;br /&gt;
El estado estacionarioque tenderá a alcanzar el fluido será el inicial, ya que al impermeabilizar las paredes volvemos al caso del acuífero confinado y por ello es nivel piezométrico quedará constante a lo largo del tiempo y de la extensión del acuífero.&lt;br /&gt;
La condición frontera a imponer será que el flujo de agua en r0 será 0, ya que estará impermeabilizado. Esto lo podemos plasmar diciendo que la parcial del nivel piezométrico con respecto a ro en r0 es 0, ya que un aislamiento impide el flujo de líquido, y si el flujo de líquido es nulo el nivel piezométrico no varía.&lt;br /&gt;
&amp;lt;math&amp;gt;\frac{\partial h}{\partial \rho}=0&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Con la condición que acabamos de proponer resolvemos numéricamente con Matlab:&lt;br /&gt;
[[Archivo:Recuperación-acuífero.jpg|sinmarco|derecha|Recuperación del acuífero tras impermeabilizar]]&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
clear all&lt;br /&gt;
&lt;br /&gt;
%REPETIMOS EL PROGRAMA ANTERIOR PARA SACAR EL VALOR ESTACIONARIO&lt;br /&gt;
 &lt;br /&gt;
a=0.5; b=20; %Condiciones de contorno&lt;br /&gt;
drho=0.1; N=(b-a)/drho; %División del intervalo&lt;br /&gt;
rho=a:drho:b-drho; %Sólo nodos interiores&lt;br /&gt;
L=diag(ones(1,N-1),1)-diag(ones(1,N-1),-1);&lt;br /&gt;
L(1,2)=0;&lt;br /&gt;
A=diag(1./rho);&lt;br /&gt;
L=10^(-2)*(1/(2*drho))*A*L;&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(1,2)=2;&lt;br /&gt;
K=10^(-2)*(1/drho^2)*K; &lt;br /&gt;
F=zeros(N,1);&lt;br /&gt;
F(1,1)=0; %Ahora esto es cero&lt;br /&gt;
F(N,1)=10^(-2)*(45/(rho(N)*2*drho)+45/drho^2);&lt;br /&gt;
H=ones(1,length(rho)); H=H*45; H=H';&lt;br /&gt;
dt=200; T=5000; t=0:dt:T;&lt;br /&gt;
h0=34; hN=45;&lt;br /&gt;
sol=[h0 H' hN];&lt;br /&gt;
 &lt;br /&gt;
for j=1:length(t)-1 &lt;br /&gt;
 &lt;br /&gt;
    H=-(L+K)\F;&lt;br /&gt;
    &lt;br /&gt;
    MAT=[h0 H' hN];&lt;br /&gt;
 &lt;br /&gt;
    sol(j+1,:)=[h0 H' hN]; %Salvamos las solución, incluimos los extremos&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
%AHORA RESOLVEMOS PARA EL CASO DE LA RECUPERACIÓN&lt;br /&gt;
&lt;br /&gt;
%PRIMERA FASE. ESPACIO&lt;br /&gt;
 &lt;br /&gt;
a=0.5; b=20; %Condiciones de contorno&lt;br /&gt;
drho=0.1; N=(b-a)/drho; %División del intervalo&lt;br /&gt;
 &lt;br /&gt;
rho=a:drho:b-drho; %Sólo nodos interiores&lt;br /&gt;
 &lt;br /&gt;
%Creamos las matrices&lt;br /&gt;
 &lt;br /&gt;
L=diag(ones(1,N-1),1)-diag(ones(1,N-1),-1);&lt;br /&gt;
L(1,2)=0;&lt;br /&gt;
A=diag(1./rho);&lt;br /&gt;
L=10^(-2)*(1/(2*drho))*A*L;&lt;br /&gt;
 &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(1,2)=2;&lt;br /&gt;
K=10^(-2)*(1/drho^2)*K; &lt;br /&gt;
 &lt;br /&gt;
F=zeros(N,1);&lt;br /&gt;
F(1)=0; %Ahora esto es cero&lt;br /&gt;
F(N)=10^(-2)*(45/(rho(N)*2*drho)+45/drho^2);&lt;br /&gt;
 &lt;br /&gt;
%SEGUDA FASE. TIEMPO&lt;br /&gt;
 &lt;br /&gt;
H=ones(1,length(rho)); &lt;br /&gt;
dt=200; T=5000; t=0:dt:T;&lt;br /&gt;
hN=45;&lt;br /&gt;
sol=[MAT(1:length(rho)) hN];&lt;br /&gt;
&lt;br /&gt;
for j=1:length(t)-1 &lt;br /&gt;
    &lt;br /&gt;
    H=(-(L+K))\F;&lt;br /&gt;
 &lt;br /&gt;
    sol(j+1,:)=[H' hN]; %Salvamos las solución, incluimos los extremos&lt;br /&gt;
end&lt;br /&gt;
 &lt;br /&gt;
rho1=a:drho:b; %Incluimos los nodos exteriores&lt;br /&gt;
 &lt;br /&gt;
[rr,tt]=meshgrid(rho1,t);&lt;br /&gt;
surf(rr,tt,sol); %Dibujamos la solución&lt;br /&gt;
title('Recuperación del acuífero. Condición estacionaria.')&lt;br /&gt;
xlabel('Distancia radial al centro del pozo.')&lt;br /&gt;
ylabel('Tiempo.')&lt;br /&gt;
zlabel('Nivel piezométrico.')&lt;br /&gt;
}}&lt;br /&gt;
Este programa nos representa la evolución del nivel piezométrico del acuífero tras ser impermeabilizado, partiendo del estado estacionario descrito anteriormente hasta llegar al estado inicial con h constante.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
También construimos un programa aparte que calcula, con un error del 5%, cuánto dura esta recuperación del nivel piezométrico:&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
clear all&lt;br /&gt;
&lt;br /&gt;
%PRIMERA FASE. ESPACIO&lt;br /&gt;
 &lt;br /&gt;
a=0.5; b=20; %Condiciones de contorno&lt;br /&gt;
drho=0.1; N=(b-a)/drho; %División del intervalo&lt;br /&gt;
 &lt;br /&gt;
rho=a:drho:b-drho; %Sólo nodos interiores&lt;br /&gt;
 &lt;br /&gt;
%Creamos las matrices&lt;br /&gt;
 &lt;br /&gt;
L=diag(ones(1,N-1),1)-diag(ones(1,N-1),-1);&lt;br /&gt;
L(1,2)=0;&lt;br /&gt;
A=diag(1./rho);&lt;br /&gt;
L=10^(-2)*(1/(2*drho))*A*L;&lt;br /&gt;
 &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(1,2)=2;&lt;br /&gt;
K=10^(-2)*(1/drho^2)*K; &lt;br /&gt;
 &lt;br /&gt;
F=zeros(N,1);&lt;br /&gt;
F(1,1)=0; %Ahora esto es cero&lt;br /&gt;
F(N,1)=10^(-2)*(45/(rho(N)*2*drho)+45/drho^2);&lt;br /&gt;
 &lt;br /&gt;
%SEGUDA FASE. TIEMPO&lt;br /&gt;
 &lt;br /&gt;
H=ones(1,length(rho)); H=H*45; H=H';&lt;br /&gt;
dt=200; T=5000; t=0:dt:T;&lt;br /&gt;
h0=34; hN=45;&lt;br /&gt;
sol=[h0 H' hN];&lt;br /&gt;
 &lt;br /&gt;
for j=1:length(t)-1 &lt;br /&gt;
 &lt;br /&gt;
    H=-(L+K)\F;&lt;br /&gt;
    &lt;br /&gt;
    MAT=[h0 H' hN];&lt;br /&gt;
 &lt;br /&gt;
    sol(j+1,:)=[h0 H' hN]; %Salvamos las solución, incluimos los extremos&lt;br /&gt;
end&lt;br /&gt;
 &lt;br /&gt;
&lt;br /&gt;
%PRIMERA FASE. ESPACIO&lt;br /&gt;
 &lt;br /&gt;
a=0.5; b=20; %Condiciones de contorno&lt;br /&gt;
drho=0.1; N=(b-a)/drho; %División del intervalo&lt;br /&gt;
 &lt;br /&gt;
rho=a:drho:b-drho; %Sólo nodos interiores&lt;br /&gt;
 &lt;br /&gt;
%Creamos las matrices&lt;br /&gt;
 &lt;br /&gt;
L=diag(ones(1,N-1),1)-diag(ones(1,N-1),-1);&lt;br /&gt;
L(1,2)=0;&lt;br /&gt;
A=diag(1./rho);&lt;br /&gt;
L=10^(-2)*(1/(2*drho))*A*L;&lt;br /&gt;
 &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(1,2)=2;&lt;br /&gt;
K=10^(-2)*(1/drho^2)*K; &lt;br /&gt;
 &lt;br /&gt;
F=zeros(N,1);&lt;br /&gt;
F(1,1)=0; %Ahora esto es cero&lt;br /&gt;
F(N,1)=10^(-2)*(45/(rho(N)*2*drho)+45/drho^2);&lt;br /&gt;
 &lt;br /&gt;
%SEGUDA FASE. TIEMPO&lt;br /&gt;
 &lt;br /&gt;
H=ones(1,length(rho)); &lt;br /&gt;
dt=200; T=5000; t=0:dt:T;&lt;br /&gt;
hN=45;&lt;br /&gt;
sol=[MAT(1:length(rho)) hN];&lt;br /&gt;
&lt;br /&gt;
for j=1:length(t)-1 &lt;br /&gt;
    &lt;br /&gt;
    H=-(L+K)\F;&lt;br /&gt;
 &lt;br /&gt;
    sol(j+1,:)=[H' hN]; %Salvamos las solución, incluimos los extremos&lt;br /&gt;
    &lt;br /&gt;
    error=max(abs(sol(j+1,:)-hN*ones(1,N+1)/40));&lt;br /&gt;
    &lt;br /&gt;
    tiempo=j; %Contador de tiempo, cada bucle una hora&lt;br /&gt;
    if error &amp;lt;=0.05&lt;br /&gt;
        break&lt;br /&gt;
    end&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
tiempo %Saca en pantalla el tiempo que tarda en alcanzar el régimen estacionario&lt;br /&gt;
}}&lt;br /&gt;
El resultado es de 25 horas.&lt;br /&gt;
''*'''Nota''': los programas son reiterativos y definen las mismas variables por estar diseñados para compilar por separado.''&lt;br /&gt;
&lt;br /&gt;
====Método de Fourier====&lt;br /&gt;
Ahora suponemos que el radio del pozo es despreciable y que una vez extraido el agua el pozo se cierra quedando el acuifero de nuevo homogéneo. En este caso tomaremos la región ρ &amp;lt; 20. Nuestro objetivo es aproximar las soluciones usando el método de Fourier. De nuevo supondremos que la solución sólo depende de ρ y t, y tomaremos ahora como condición frontera h(20, t) = 40.&lt;br /&gt;
Vamos a considerar el sistema de ecuaciones para h(ρ,t)=h(ρ,t)-40:&lt;br /&gt;
 &amp;lt;math&amp;gt; \left\{\begin{matrix}&lt;br /&gt;
\frac{\partial h}{\partial t} - D (\frac{1}{\rho}  \frac{\partial h}{\partial \rho} + \frac{\partial^2 h}{\partial \rho^2})= 0 &amp;amp; \rho \epsilon (0, 20) &amp;amp; \theta \epsilon (0, 2\Pi ) &amp;amp; t &amp;gt; 0 \\ &lt;br /&gt;
\frac{\partial h}{\partial \rho}(0,t) = 0;   h(20, t)= 0 \\ &lt;br /&gt;
\end{matrix}\right. &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Obtenemos el problema de autovalores asociado al sistema anterior con el método de separación de variables:&lt;br /&gt;
 &amp;lt;math&amp;gt; \left\{\begin{matrix}&lt;br /&gt;
D (\frac{X'(\rho)}{\rho} + X''(\rho))+ λX(\rho)=0 \\&lt;br /&gt;
X'(0) = 0;   X(20)= 0 \\ &lt;br /&gt;
&lt;br /&gt;
\end{matrix}\right. &amp;lt;/math&amp;gt;&lt;br /&gt;
[[Archivo:Marta1.jpg|marco|derecha]]&lt;br /&gt;
Sabemos que los problemas de esta forma tienen como solución la función de Bessel de primera especie que forma una familia de autofunciones: &amp;lt;math&amp;gt;Ψ(\rho)=J_0·(\rho\sqrt{λ})&amp;lt;/math&amp;gt;. Estas se anulan cuando &amp;lt;math&amp;gt;(\rho\sqrt{λ})&amp;lt;/math&amp;gt; se iguala a 2.4048, 5.5201, 8.6537, 11.7915 y 14.9309, siendo estos los 5 primeros ceros de la función de Bessel. De esta manera y tomando ρ=20 obtenemos los 5 primeros autovalores:&lt;br /&gt;
&amp;lt;math&amp;gt;(20\sqrt{λ})=2.4048&amp;lt;/math&amp;gt;Haciendo la operación anterior para los 5 ceros obtenemos los siguientes autovalores: 0.0145, 0.0762, 0.1872, 0.3476, 0.5573.&lt;br /&gt;
Ahora vamos a dibujar las 5 primeras autofunciones utilizando la función besselj:&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
a1=0.0145;&lt;br /&gt;
a2=0.0762;&lt;br /&gt;
a3=0.1872;&lt;br /&gt;
a4=0.3476;&lt;br /&gt;
a5=0.5575;&lt;br /&gt;
r=0:0.02:20;&lt;br /&gt;
F1=besselj(0,r.*(sqrt(a1))); &lt;br /&gt;
F2=besselj(0,r.*(sqrt(a2)));&lt;br /&gt;
F3=besselj(0,r.*(sqrt(a3)));&lt;br /&gt;
F4=besselj(0,r.*(sqrt(a4)));&lt;br /&gt;
F5=besselj(0,r.*(sqrt(a5)));&lt;br /&gt;
hold on&lt;br /&gt;
plot(r,F1)&lt;br /&gt;
plot(r,F2,'r')&lt;br /&gt;
plot(r,F3,'g')	&lt;br /&gt;
plot(r,F4,'c')&lt;br /&gt;
plot(r,F5,'y')&lt;br /&gt;
hold off&lt;br /&gt;
}}&lt;br /&gt;
[[Archivo:Marta2.jpg|marco|derecha]]&lt;br /&gt;
Aproximamos ahora la solución de la ecuación tomando como dato inicial es&amp;lt;math&amp;gt; h (\rho,0)= -log \frac{|\rho + 0.01|}{20.01} &amp;lt;/math&amp;gt; y usando 5 términos del desarrollo de Fourier, teniendo en cuenta que las autofunciones son ortogonales respecto al producto escalar: &amp;lt;math&amp;gt; (f(\rho),g(\rho)) = \int_{0}^{20} \rho f(\rho) g(\rho) \cdot dx &amp;lt;/math&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
x0=0; L=20;&lt;br /&gt;
c0=[2.4048,5.5201,8.6537,11.7915,14.9309]; %Vector de ceros de la función de Bessel&lt;br /&gt;
A=(c0./20).^2; %Vector de autovalores&lt;br /&gt;
K=5; %Número de términos del desarrollo de Fourier&lt;br /&gt;
x=x0:0.1:L;&lt;br /&gt;
N=length(x)-1;&lt;br /&gt;
J=zeros(N+1,K);&lt;br /&gt;
z=zeros(N+1,K);&lt;br /&gt;
t0=0; tf=500;&lt;br /&gt;
t=t0:0.1:tf;&lt;br /&gt;
[xx,tt]=meshgrid(x,t);&lt;br /&gt;
h=0;&lt;br /&gt;
for k=1:K&lt;br /&gt;
   z(:,k)=(x)'*sqrt(A(k));&lt;br /&gt;
   J(:,k)=besselj(0,z(:,k));&lt;br /&gt;
   h0=-log((abs(x+0.1))/20.01); %Condición inicial&lt;br /&gt;
   c(k)=trapz(x,x'.*h0'.*J(:,k))/trapz(x,x'.*J(:,k).*J(:,k)); %Coeficientes de Fourier&lt;br /&gt;
   h=h+c(k)*exp(-A(k)*t)'*J(:,k)';&lt;br /&gt;
end&lt;br /&gt;
surf(xx,tt,h)&lt;br /&gt;
title('Aproximación de la solución')&lt;br /&gt;
}}&lt;/div&gt;</summary>
		<author><name>Marta Cavero</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Nivel_piezom%C3%A9trico_de_un_acu%C3%ADfero_confinado_(A5)&amp;diff=30488</id>
		<title>Nivel piezométrico de un acuífero confinado (A5)</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Nivel_piezom%C3%A9trico_de_un_acu%C3%ADfero_confinado_(A5)&amp;diff=30488"/>
				<updated>2015-05-21T11:54:21Z</updated>
		
		<summary type="html">&lt;p&gt;Marta Cavero: /* Capacidad de recuperación del acuífero */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;br /&gt;
==== Introducción ====&lt;br /&gt;
&lt;br /&gt;
Consideramos un acuífero confinado entre dos capas de terreno impermeables horizontales. Llamaremos h(x, y) al nivel piezométrico del acuífero, definido por la altura que alcanzaría el agua si hiciéramos un sondeo en el punto (x, y). Obviamente este valor depende de la presión a la que se encuentra el agua confinada en el acuífero. Supondremos&lt;br /&gt;
que el acuífero es un medio poroso saturado de agua que ocupa una región infinita y está en equilibrio de manera que &amp;lt;math&amp;gt;h(x, y) = h_0&amp;lt;/math&amp;gt; constante para todo (x, y) ∈ &amp;lt;math&amp;gt;IR^{2}&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Sobre el acuifero se construye un pozo de sección circular y radio&amp;lt;math&amp;gt; ρ_0&amp;lt;/math&amp;gt; para extraer agua. La presencia del pozo hace que el nivel piezométrico cambie. Dada la simetría del problema podemos suponer que h(x, y) sólo va a depender de la distancia al pozo. Si tomamos coordenadas cilíndricas de forma que el eje OZ coincida con el eje de simetría del pozo, entonces h = h(ρ) donde &amp;lt;math&amp;gt;ρ = \sqrt{x^{2} + y^{2}}&amp;lt;/math&amp;gt; . Trabajaremos por tanto en coordenadas polares en el plano (ρ, θ).&lt;br /&gt;
&lt;br /&gt;
Las ecuaciones que permiten conocer h(ρ) son la ecuación de conservación de la masa:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; S = \frac{∂h}{∂t} + div q = 0 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
junto con la ley de Darcy&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; q = −K∇h &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
que es una ley experimental que modela el flujo de agua en un medio poroso. La ley de Darcy establece que el flujo de agua q a través de un medio poroso es proporcional a la diferencia de presión, que a su vez se puede escribir en términos del gradiente del nivel piezométrico en cada punto. La constante K se deduce experimentalmente para cada material y se conoce como la conductividad hidráulica o permeabilidad. Cuanto mayor es la constante K mayor es el flujo de agua provocado por un cambio&lt;br /&gt;
de presión. La ley de Darcy proporciona una buena aproximación del comportamiento del agua en un medio poroso siempre que este sea homogéneo e isótropo.&lt;br /&gt;
&lt;br /&gt;
La constante S en la ley de conservación de la masa se conoce como almacenamiento específico y se interpreta como la cantidad de agua que libera el acuífero al descender el nivel piezométrico en una unidad, por unidad de volumen.&lt;br /&gt;
&lt;br /&gt;
Combinando las ecuaciones de conservación de la masa con la ley de Darcy, obtenemos la ecuación:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \frac{∂h}{∂t} - D∆h = 0, ρ &amp;gt; ρ_0, θ ∈ (0, 2π), t &amp;gt; 0, (1) &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
donde D = K/S es la difusividad hidráulica que supondremos constante.&lt;br /&gt;
&lt;br /&gt;
==== Deducción de la fórmula ====&lt;br /&gt;
&lt;br /&gt;
En este apartado buscamos demostrar la ecuación (1) como combinación de la ecuación de conservación de masas y la Ley de Darcy.&lt;br /&gt;
&lt;br /&gt;
Por un lado sabemos que el laplaciaco equivale a la divergencia del gradiente: &lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; &lt;br /&gt;
(\Delta f = \nabla \cdot \nabla f = div \left (\nabla f) \right) &lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Por otro lado, sabemos que en coordenadas polares: &lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;x = ρ cos \theta \\&lt;br /&gt;
             y = ρ  sen \theta&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\bar{g_ρ } = cos \theta \bar{i} + sin \theta  \bar{j} \\&lt;br /&gt;
              \bar{g_\theta } = - ρ  sin \theta \bar{i} + ρ cos \theta \bar{j} &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;&lt;br /&gt;
G =&lt;br /&gt;
\left(&lt;br /&gt;
\begin{array}{cc}&lt;br /&gt;
1&amp;amp; 0 \\&lt;br /&gt;
0 &amp;amp; ρ ^{2} \\&lt;br /&gt;
\end{array}&lt;br /&gt;
\right);&lt;br /&gt;
\text {donde la raiz del determinante es} \sqrt{g} = ρ&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Como indica el enunciado, al sustituir la Ley de Darcy en la ecuación de conservación de la masa obtenemos y dividir entre S, teniendo en cuenta que el divergente del gradiente es el laplaciano como hemos indicado al principio de este apartado, obtenemos la ecuación (1): &amp;lt;math&amp;gt; \frac{∂h}{∂t} - \frac{k}{S}∆h = 0 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
En esta ecuación queda por desarrollar el Laplaciano de h. &lt;br /&gt;
Partiremos de la función h(ρ,θ), de la cual calcularemos primero el gradiente:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \nabla h = \frac{\partial h}{\partial \rho}\hat{\rho} + \frac{\partial h}{\partial \rho}\hat{\theta} =  \frac{\partial h}{\partial \rho}\bar{\rho} + \frac{1}{\rho^{2}} \frac{\partial h}{\partial \rho}\bar{\theta}  &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
teniendo en cuenta que &amp;lt;math&amp;gt;\bar{g^{i} } = \frac{\bar{g_i } }{ | \bar{g_i } | ^{2} } &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Ahora hacemos el divergente del gradiente anterior y obtenemos el Laplaciano en coordenadas polares:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;math&amp;gt;&lt;br /&gt;
 \Delta h = div(∇h) &lt;br /&gt;
= {1 \over \rho} {\partial \over \partial \rho}&lt;br /&gt;
  \left( \rho {\partial h \over \partial \rho} \right) &lt;br /&gt;
+ {1 \over \rho^2} {\partial^2 h \over \partial \theta^2}&lt;br /&gt;
= {1 \over \rho} {\partial h \over \partial \rho} &lt;br /&gt;
+ {\partial^2 h \over \partial \rho^2}&lt;br /&gt;
+ {1 \over \rho^2} {\partial^2 h \over \partial \theta^2}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Si consideramos que, debido a la simetría del problema, h sólo depende de su distancia al pozo, entonces obtenemos la función radial h(ρ), que nos permite simplificar el Laplaciano del modo siguiente:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;math&amp;gt;&lt;br /&gt;
 \Delta h = div(∇h) &lt;br /&gt;
= {1 \over \rho} {\partial h \over \partial \rho} &lt;br /&gt;
+ {\partial^2 h \over \partial \rho^2}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== Obtención de la ecuación====&lt;br /&gt;
&lt;br /&gt;
Para poder resolver la ecuación anterior y que el resultado sea único, hemos de establecer condiciones iniciales y de contorno.&lt;br /&gt;
&lt;br /&gt;
Las condiciones de contorno serán dos pues aparece la derivada segunda de la posición: &amp;lt;math&amp;gt; h(\rho_0 , t) = h_p \\&lt;br /&gt;
                                                                                                                                                                  h(20,t) = h_0 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
La condición inicial será única pues sólo aparece una derivada de primer orden en tiempo en nuestra ecuación: &amp;lt;math&amp;gt; h(\rho,0) = h_0 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
De este modo la ecuación resultante será:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \left\{\begin{matrix}&lt;br /&gt;
\frac{\partial h}{\partial t} - \frac{k}{s} (\frac{1}{\rho}  \frac{\partial h}{\partial \rho} + \frac{\partial^2 h}{\partial \rho^2})= 0 &amp;amp; \rho \epsilon (\rho_{0}, 2c) &amp;amp; \theta \epsilon (0, 2\Pi ) &amp;amp; t &amp;gt; 0 \\ &lt;br /&gt;
h(\rho_{0},t) = h_{p};   h(20, t)= h_{0} \\ &lt;br /&gt;
h(\rho, 0) = h_{0} &lt;br /&gt;
\end{matrix}\right. &amp;lt;/math&amp;gt; &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==== Resolución por método de diferencias finitas ====&lt;br /&gt;
&lt;br /&gt;
Suponiendo &amp;lt;math&amp;gt;ρ_0 =0.5m&amp;lt;/math&amp;gt;, &amp;lt;math&amp;gt;h_0 =45m&amp;lt;/math&amp;gt;, &amp;lt;math&amp;gt;hp =34&amp;lt;/math&amp;gt;, D=10−2, &amp;lt;math&amp;gt;(ρ,0)=h_0&amp;lt;/math&amp;gt;; y tomando  ∆ρ = 0.1 y ∆t = ∆ρ. Vamos a resolver la ecuación anterior por el método de diferencias finitas, usando el Método de Heun para realizar la aproximación en tiempo.&lt;br /&gt;
&lt;br /&gt;
Primero, sustituyendo los datos anteriores en la ecuación, llegamos a:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \left\{\begin{matrix}&lt;br /&gt;
\frac{\partial h}{\partial t} - 10^{2} (\frac{1}{\rho}  \frac{\partial h}{\partial \rho} + \frac{\partial^2 h}{\partial \rho^2})= 0 &amp;amp; \rho \epsilon (0.5, 20) &amp;amp; \theta \epsilon (0, 2\Pi ) &amp;amp; t &amp;gt; 0 \\ &lt;br /&gt;
h(0.5,t) = 34;   h(20, t)= 45 \\ &lt;br /&gt;
h(\rho, 0) = 45&lt;br /&gt;
\end{matrix}\right. &amp;lt;/math&amp;gt; &lt;br /&gt;
&lt;br /&gt;
Aplicando el método de las diferencias finitas llegamos al siguiente código:&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
&lt;br /&gt;
%TRPRIMERA FASE. ESPACIO&lt;br /&gt;
&lt;br /&gt;
a=0.5; b=20; %Condiciones de contorno&lt;br /&gt;
drho=0.1; N=(b-a)/drho; %División del intervalo&lt;br /&gt;
&lt;br /&gt;
rho=a+drho:drho:b-drho; %Sólo nodos interiores&lt;br /&gt;
&lt;br /&gt;
%Creamos las matrices&lt;br /&gt;
&lt;br /&gt;
L=diag(ones(1,N-2),1)-diag(ones(1,N-2),-1);&lt;br /&gt;
A=diag(1./rho);&lt;br /&gt;
L=10^(-2)*(1/(2*drho))*A*L;&lt;br /&gt;
&lt;br /&gt;
K=-2*diag(ones(1,N-1))+diag(ones(1,N-2),1)+diag(ones(1,N-2),-1);&lt;br /&gt;
K=10^(-2)*(1/drho^2)*K; &lt;br /&gt;
&lt;br /&gt;
F=zeros(N-1,1);&lt;br /&gt;
F(1,1)=10^(-2)*(-17/(rho(1)*drho)+34/drho^2);&lt;br /&gt;
F(N-1,1)=10^(-2)*(45/(rho(N-1)*2*drho)+45/drho^2);&lt;br /&gt;
&lt;br /&gt;
%SEGUDA FASE. TIEMPO&lt;br /&gt;
&lt;br /&gt;
H=ones(1,length(rho)); H=H*45; H=H';&lt;br /&gt;
dt=drho; T=10; t=0:dt:T;&lt;br /&gt;
h0=34; hN=45;&lt;br /&gt;
sol=[h0 H' hN];&lt;br /&gt;
&lt;br /&gt;
for j=1:length(t)-1 &lt;br /&gt;
    &lt;br /&gt;
    %Método de Heun&lt;br /&gt;
    k1=F+(K+L)*H;&lt;br /&gt;
    k2=F+(K+L)*(H+k1*dt);&lt;br /&gt;
    H=H+(dt/2)*(k1+k2);&lt;br /&gt;
 &lt;br /&gt;
    sol(j+1,:)=[h0 H' hN]; %Salvamos las solución, incluimos los extremos&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
rho1=a:drho:b; %Incluimos los nodos exteriores&lt;br /&gt;
&lt;br /&gt;
[rr,tt]=meshgrid(rho1,t);&lt;br /&gt;
surf(rr,tt,sol); %Dibujamos la solución&lt;br /&gt;
title('Nivel Piezométrico. Método Diferencias finitas con Heun en tiempo.')&lt;br /&gt;
xlabel('Distancia radial al centro del pozo.')&lt;br /&gt;
ylabel('Tiempo.')&lt;br /&gt;
zlabel('Nivel piezométrico.')&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
Mediante este código obtenemos la siguiente gráfica:&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Grafica npiezometrico.jpg|500px|thumb|best|Gráfica Nivel Piezométrico aproximada con el Método de Diferencias Finitas con Heun en tiempo.]]&lt;br /&gt;
&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Ahora dibujaremos la gráfica mediante los métodos de Euler implícito y trapecio y compararemos los resultados obtenidos.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Sobre el programa anterior cambiaremos las líneas correspondientes al método de Heun.&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* Método de Euler implícito:&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;math&amp;gt; \left\{\begin{matrix}&lt;br /&gt;
y_{0}\\&lt;br /&gt;
y_{n+1}=y_{n} + hf(t_{n+1},y_{n+1})\\&lt;br /&gt;
\end{matrix}\right. &amp;lt;/math&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
&lt;br /&gt;
for j=1:length(t)-1 &lt;br /&gt;
    &lt;br /&gt;
    %Método de Euler implícito&lt;br /&gt;
    &lt;br /&gt;
    H=(eye(N-1)-dt*(K+L))\(H+(F*dt)); &lt;br /&gt;
 &lt;br /&gt;
    sol(j+1,:)=[h0 H' hN]; %Salvamos las solución, incluimos los extremos&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
rho1=a:drho:b; %Incluimos los nodos exteriores&lt;br /&gt;
&lt;br /&gt;
[rr,tt]=meshgrid(rho1,t);&lt;br /&gt;
surf(rr,tt,sol); %Dibujamos la solución&lt;br /&gt;
title('Nivel Piezométrico. Método Diferencias finitas con Euler en tiempo.')&lt;br /&gt;
xlabel('Distancia radial al centro del pozo.')&lt;br /&gt;
ylabel('Tiempo.')&lt;br /&gt;
zlabel('Nivel piezométrico.')&lt;br /&gt;
&lt;br /&gt;
}}&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* Método del Trapecio:&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;math&amp;gt; \left\{\begin{matrix}&lt;br /&gt;
y_{0}\\&lt;br /&gt;
y_{n+1}=y_{n} + \frac{h}{2}f((t_{n},y_{n}+f(t_{n+1},y_{n+1}))\\&lt;br /&gt;
\end{matrix}\right. &amp;lt;/math&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
for j=1:length(t)-1 &lt;br /&gt;
    &lt;br /&gt;
    %Método del trapecio&lt;br /&gt;
    k1=F+(K+L)*H;&lt;br /&gt;
    k2=F+(K+L)*(H+k1*dt); &lt;br /&gt;
    H=(eye(N-1)-(dt/2)*(K+L))\(H+dt*F+(dt/2)*(K+L)*H);&lt;br /&gt;
 &lt;br /&gt;
    sol(j+1,:)=[h0 H' hN]; %Salvamos las solución, incluimos los extremos&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
rho1=a:drho:b; %Incluimos los nodos exteriores&lt;br /&gt;
&lt;br /&gt;
[rr,tt]=meshgrid(rho1,t);&lt;br /&gt;
surf(rr,tt,sol); %Dibujamos la solución&lt;br /&gt;
title('Nivel Piezométrico. Método Diferencias finitas con trapecio en tiempo.')&lt;br /&gt;
xlabel('Distancia radial al centro del pozo.')&lt;br /&gt;
ylabel('Tiempo.')&lt;br /&gt;
zlabel('Nivel piezométrico.')&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
Como podemos ver a continuación las tres gráficas resultantes son prácticamente iguales por lo que los tres métodos hacen una aproximación similar.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
[[Archivo:Trapecio12.png|500px|thumb|right|Gráfica Nivel Piezométrico aproximada con el Método de Diferencias Finitas con Trapecio en tiempo.]]&lt;br /&gt;
[[Archivo:Euler12.png|500px|thumb|right|Gráfica Nivel Piezométrico aproximada con el Método de Diferencias Finitas con Euler Implícito en tiempo.]]&lt;br /&gt;
&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== Comportamiento del nivel piezométrico con &amp;lt;math&amp;gt; \rho &amp;lt;/math&amp;gt; constante ====&lt;br /&gt;
&lt;br /&gt;
Ahora supondremos que &amp;lt;math&amp;gt; \rho &amp;lt;/math&amp;gt; es constante y que su valor es 2 y dibujaremos el comportamiento del nivel piezométrico en una gráfica 2D nivel piezométrico-tiempo.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Nuevamente utilizando el programa anterior con el  método de Heun:&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Rho2.png|500px|thumb|best|Gráfica Nivel Piezométrico-tiempo para &amp;lt;math&amp;gt; \rho =2 &amp;lt;/math&amp;gt; para T=10.]]&lt;br /&gt;
[[Archivo:Rho1000.png|500px|thumb|best|Gráfica Nivel Piezométrico-tiempo para &amp;lt;math&amp;gt; \rho =2 &amp;lt;/math&amp;gt; para T=1000.]]&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
&lt;br /&gt;
%PRIMERA FASE. ESPACIO&lt;br /&gt;
&lt;br /&gt;
a=0.5; b=20; %Condiciones de contorno&lt;br /&gt;
drho=0.1; N=(b-a)/drho; %División del intervalo&lt;br /&gt;
&lt;br /&gt;
rho=a+drho:drho:b-drho; %Sólo nodos interiores&lt;br /&gt;
&lt;br /&gt;
%Creamos las matrices&lt;br /&gt;
&lt;br /&gt;
L=diag(ones(1,N-2),1)-diag(ones(1,N-2),-1);&lt;br /&gt;
A=diag(1./rho);&lt;br /&gt;
L=10^(-2)*(1/(2*drho))*A*L;&lt;br /&gt;
&lt;br /&gt;
K=-2*diag(ones(1,N-1))+diag(ones(1,N-2),1)+diag(ones(1,N-2),-1);&lt;br /&gt;
K=10^(-2)*(1/drho^2)*K; &lt;br /&gt;
&lt;br /&gt;
F=zeros(N-1,1);&lt;br /&gt;
F(1,1)=10^(-2)*(-17/(rho(1)*drho)+34/drho^2);&lt;br /&gt;
F(N-1,1)=10^(-2)*(45/(rho(N-1)*2*drho)+45/drho^2);&lt;br /&gt;
&lt;br /&gt;
%SEGUDA FASE. TIEMPO&lt;br /&gt;
&lt;br /&gt;
H=ones(1,length(rho)); H=H*45; H=H';&lt;br /&gt;
dt=drho; &lt;br /&gt;
T=10 &lt;br /&gt;
%Comprobamos también la solución para un tiempo mayor &lt;br /&gt;
%T=1000&lt;br /&gt;
t=0:dt:T;&lt;br /&gt;
h0=34; hN=45;&lt;br /&gt;
sol=[h0 H' hN];&lt;br /&gt;
&lt;br /&gt;
for j=1:length(t)-1 &lt;br /&gt;
    &lt;br /&gt;
    %Método de Heun&lt;br /&gt;
    k1=F+(K+L)*H;&lt;br /&gt;
    k2=F+(K+L)*(H+k1*dt);&lt;br /&gt;
    H=H+(dt/2)*(k1+k2);&lt;br /&gt;
 &lt;br /&gt;
    sol(j+1,:)=[h0 H' hN]; %Salvamos las solución, incluimos los extremos&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
rho1=a:drho:b; %Incluimos los nodos exteriores&lt;br /&gt;
&lt;br /&gt;
m=sol(:,rho==2); %Vector que incluye la solución en tiempo para rho=2&lt;br /&gt;
&lt;br /&gt;
plot(t,m);&lt;br /&gt;
&lt;br /&gt;
title('Comportamiento del nivel piezométrico en el tiempo para p=2')&lt;br /&gt;
xlabel('Tiempo')&lt;br /&gt;
ylabel('Nivel piezométrico.')&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
La primera gráfica muestra que para tiempos pequeños la variación del nivel piezométrico es muy pequeña (del orden de 0,10/0,15 m), aún así como observamos en la segunda gráfica a medida que avanzamos en el tiempo la variación del nivel disminuye aún más ya que la curva está cada vez menos inclinada.&lt;br /&gt;
&lt;br /&gt;
==== Variación del nivel piezométrico en tiempos grandes ====&lt;br /&gt;
Ahora vamos a comprobar que la variación del nivel piezométrico para tiempos elevados (T=5000) es mínima.&lt;br /&gt;
Para ello dibujaremos las soluciones cada 100 horas de en el intervalo temporal [1; 5000], en&lt;br /&gt;
una misma gráfica.&lt;br /&gt;
[[Archivo:Tiemposg2.png|marco|derecha|Nivel piezométrico para tiempos grandes]]&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
%PRIMERA FASE. ESPACIO&lt;br /&gt;
&lt;br /&gt;
a=0.5; b=20; %Condiciones de contorno&lt;br /&gt;
drho=0.1; N=(b-a)/drho; %División del intervalo&lt;br /&gt;
&lt;br /&gt;
rho=a+drho:drho:b-drho; %Sólo nodos interiores&lt;br /&gt;
&lt;br /&gt;
%Creamos las matrices&lt;br /&gt;
&lt;br /&gt;
L=diag(ones(1,N-2),1)-diag(ones(1,N-2),-1);&lt;br /&gt;
A=diag(1./rho);&lt;br /&gt;
L=10^(-2)*(1/(2*drho))*A*L;&lt;br /&gt;
&lt;br /&gt;
K=-2*diag(ones(1,N-1))+diag(ones(1,N-2),1)+diag(ones(1,N-2),-1);&lt;br /&gt;
K=10^(-2)*(1/drho^2)*K; &lt;br /&gt;
&lt;br /&gt;
F=zeros(N-1,1);&lt;br /&gt;
F(1,1)=10^(-2)*(-17/(rho(1)*drho)+34/drho^2);&lt;br /&gt;
F(N-1,1)=10^(-2)*(45/(rho(N-1)*2*drho)+45/drho^2);&lt;br /&gt;
&lt;br /&gt;
%SEGUDA FASE. TIEMPO&lt;br /&gt;
&lt;br /&gt;
H=ones(1,length(rho)); H=H*45; H=H';&lt;br /&gt;
dt=0.1; T=5000; t=0:dt:T;&lt;br /&gt;
h0=34; hN=45;&lt;br /&gt;
sol=[h0 H' hN];&lt;br /&gt;
&lt;br /&gt;
figure(1);&lt;br /&gt;
hold on;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
for j=1:length(t)-1 &lt;br /&gt;
    &lt;br /&gt;
    %Método de Heun&lt;br /&gt;
    k1=F+(K+L)*H;&lt;br /&gt;
    k2=F+(K+L)*(H+k1*dt);&lt;br /&gt;
    H=H+(dt/2)*(k1+k2);&lt;br /&gt;
 &lt;br /&gt;
    sol(j+1,:)=[h0 H' hN]; %Salvamos las solución, incluimos los extremos&lt;br /&gt;
    &lt;br /&gt;
 if rem(t(j),100)==0; &lt;br /&gt;
    &lt;br /&gt;
    rho1=a:drho:b; %Incluimos los nodos exteriores&lt;br /&gt;
  &lt;br /&gt;
  plot(rho1,sol(j,:)) %pintamos la solución cada 100 horas&lt;br /&gt;
  &lt;br /&gt;
  title('Variación del nivel piezométrico para tiempos grandes')&lt;br /&gt;
  pause(1)&lt;br /&gt;
&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
end&lt;br /&gt;
}}&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Como se puede observar en la gráfica según vamos avanzando en el tiempo las curvas están más juntas lo que quiere decir que la variación del nivel es cada vez menor aproximándose a un régimen estacionario.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Trabajo21.jpg|marco|derecha|Nivel piezométrico estacionario]]&lt;br /&gt;
&lt;br /&gt;
====Problema estacionario====&lt;br /&gt;
Como hemos visto en el apartado anterior para tiempos grandes el nivel piezométrico se mantiene practicamente constante a lo largo del tiempo, esto es debido a que se establece un equilibrio entre el caudal de agua extraida del acuifero y la migración de aguas desde los puntos más alejados del pozo hacia este.&lt;br /&gt;
Por lo tanto se verifica que:&lt;br /&gt;
 &amp;lt;math&amp;gt;\frac{\partial h}{\partial t}=0&amp;lt;/math&amp;gt;&lt;br /&gt;
Y por lo tanto el nivel piezométrico se puede aproximar por:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \left\{\begin{matrix}&lt;br /&gt;
- \frac{k}{s} (\frac{1}{\rho}  \frac{\partial h}{\partial \rho} + \frac{\partial^2 h}{\partial \rho^2})= 0 &amp;amp; \rho \epsilon (1, 20) &amp;amp; \theta \epsilon (0, 2\Pi ) &amp;amp; 0 &amp;lt; t &amp;lt; 5000 \\ &lt;br /&gt;
h(1,t) = 35;    h(20, t)= 40 \\ &lt;br /&gt;
h(\rho, 0) = 40 &lt;br /&gt;
\end{matrix}\right. &amp;lt;/math&amp;gt;&lt;br /&gt;
Resolvemos por diferencias finitas:&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
    %datos&lt;br /&gt;
    t=5000;&lt;br /&gt;
    l=20;&lt;br /&gt;
    D=0.01;&lt;br /&gt;
    hp=35;&lt;br /&gt;
    ho=40;&lt;br /&gt;
    %discretización&lt;br /&gt;
    s=0.1;&lt;br /&gt;
    x0=1;&lt;br /&gt;
    x=x0:s:l;&lt;br /&gt;
    xint=x0+s:s:l-s;&lt;br /&gt;
    N=length(x)-2; &lt;br /&gt;
    %construimos las matrices para el método de las diferencias finitas&lt;br /&gt;
    K=(1/s^2)*(diag(2*ones(1,N))-diag(ones(1,N-1),1)-diag(ones(1,N-1),-1));&lt;br /&gt;
    A=(1/(s*2))*(diag(ones(1,N-1),1)-diag(ones(1,N-1),-1));&lt;br /&gt;
    A=diag(1./xint)*A;&lt;br /&gt;
    h0=(40*ones(N,1));&lt;br /&gt;
    dt=200; &lt;br /&gt;
    t=0:dt:t;&lt;br /&gt;
    M=length(t)-1;&lt;br /&gt;
    F=(zeros(N,1));&lt;br /&gt;
    F(1)=D*((hp/s^2)-(hp/(2*s)*1/xint(1)));&lt;br /&gt;
    F(N)=D*((ho/s^2)+ho/(s*2*xint(N)));&lt;br /&gt;
    H(1,:)=[40;h0;40]'; &lt;br /&gt;
    h=h0;&lt;br /&gt;
    for n=1:M&lt;br /&gt;
      h=(D)*(K-A)\((F)); %utilizamos el comando backslash para resolver el sistema de ecuaciones&lt;br /&gt;
      H(n+1,:)=[hp h' ho];&lt;br /&gt;
    end&lt;br /&gt;
    %mallado y representación&lt;br /&gt;
    [X,T]=meshgrid(x,t);&lt;br /&gt;
    surf(X,T,H)&lt;br /&gt;
    xlabel('Distancia (metros)');&lt;br /&gt;
    ylabel('Tiempo (horas)');&lt;br /&gt;
    zlabel('Nivel piezométrico (metros)')&lt;br /&gt;
}}&lt;br /&gt;
Efectivamente, como podemos comprobar en la gráfica, la solución es independiente del tiempo salvo para tiempos pequeños en los cuales no queda muy bien definida&lt;br /&gt;
&lt;br /&gt;
====Capacidad de recuperación del acuífero====&lt;br /&gt;
En este apartado queremos calcular una ley que nos describa el comportamiento del acuífero e el caso de que impermeabilizásemos las paredes del pozo partiendo del estado estacionario anterior, esto significaría que el fujo de agua en los bordes del pozo sería nulo y el nivel piezométrico iría variando hasta llegar a otro estado estacionario.&lt;br /&gt;
El estado estacionarioque tenderá a alcanzar el fluido será el inicial, ya que al impermeabilizar las paredes volvemos al caso del acuífero confinado y por ello es nivel piezométrico quedará constante a lo largo del tiempo y de la extensión del acuífero.&lt;br /&gt;
La condición frontera a imponer será que el flujo de agua en r0 será 0, ya que estará impermeabilizado. Esto lo podemos plasmar diciendo que la parcial del nivel piezométrico con respecto a ro en r0 es 0, ya que un aislamiento impide el flujo de líquido, y si el flujo de líquido es nulo el nivel piezométrico no varía.&lt;br /&gt;
&amp;lt;math&amp;gt;\frac{\partial h}{\partial \rho}=0&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Con la condición que acabamos de proponer resolvemos numéricamente con Matlab:&lt;br /&gt;
[[Archivo:Recuperación-acuífero.jpg|marco|derecha|Recuperación del acuífero tras impermeabilizar]]&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
clear all&lt;br /&gt;
&lt;br /&gt;
%REPETIMOS EL PROGRAMA ANTERIOR PARA SACAR EL VALOR ESTACIONARIO&lt;br /&gt;
 &lt;br /&gt;
a=0.5; b=20; %Condiciones de contorno&lt;br /&gt;
drho=0.1; N=(b-a)/drho; %División del intervalo&lt;br /&gt;
rho=a:drho:b-drho; %Sólo nodos interiores&lt;br /&gt;
L=diag(ones(1,N-1),1)-diag(ones(1,N-1),-1);&lt;br /&gt;
L(1,2)=0;&lt;br /&gt;
A=diag(1./rho);&lt;br /&gt;
L=10^(-2)*(1/(2*drho))*A*L;&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(1,2)=2;&lt;br /&gt;
K=10^(-2)*(1/drho^2)*K; &lt;br /&gt;
F=zeros(N,1);&lt;br /&gt;
F(1,1)=0; %Ahora esto es cero&lt;br /&gt;
F(N,1)=10^(-2)*(45/(rho(N)*2*drho)+45/drho^2);&lt;br /&gt;
H=ones(1,length(rho)); H=H*45; H=H';&lt;br /&gt;
dt=200; T=5000; t=0:dt:T;&lt;br /&gt;
h0=34; hN=45;&lt;br /&gt;
sol=[h0 H' hN];&lt;br /&gt;
 &lt;br /&gt;
for j=1:length(t)-1 &lt;br /&gt;
 &lt;br /&gt;
    H=-(L+K)\F;&lt;br /&gt;
    &lt;br /&gt;
    MAT=[h0 H' hN];&lt;br /&gt;
 &lt;br /&gt;
    sol(j+1,:)=[h0 H' hN]; %Salvamos las solución, incluimos los extremos&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
%AHORA RESOLVEMOS PARA EL CASO DE LA RECUPERACIÓN&lt;br /&gt;
&lt;br /&gt;
%PRIMERA FASE. ESPACIO&lt;br /&gt;
 &lt;br /&gt;
a=0.5; b=20; %Condiciones de contorno&lt;br /&gt;
drho=0.1; N=(b-a)/drho; %División del intervalo&lt;br /&gt;
 &lt;br /&gt;
rho=a:drho:b-drho; %Sólo nodos interiores&lt;br /&gt;
 &lt;br /&gt;
%Creamos las matrices&lt;br /&gt;
 &lt;br /&gt;
L=diag(ones(1,N-1),1)-diag(ones(1,N-1),-1);&lt;br /&gt;
L(1,2)=0;&lt;br /&gt;
A=diag(1./rho);&lt;br /&gt;
L=10^(-2)*(1/(2*drho))*A*L;&lt;br /&gt;
 &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(1,2)=2;&lt;br /&gt;
K=10^(-2)*(1/drho^2)*K; &lt;br /&gt;
 &lt;br /&gt;
F=zeros(N,1);&lt;br /&gt;
F(1)=0; %Ahora esto es cero&lt;br /&gt;
F(N)=10^(-2)*(45/(rho(N)*2*drho)+45/drho^2);&lt;br /&gt;
 &lt;br /&gt;
%SEGUDA FASE. TIEMPO&lt;br /&gt;
 &lt;br /&gt;
H=ones(1,length(rho)); &lt;br /&gt;
dt=200; T=5000; t=0:dt:T;&lt;br /&gt;
hN=45;&lt;br /&gt;
sol=[MAT(1:length(rho)) hN];&lt;br /&gt;
&lt;br /&gt;
for j=1:length(t)-1 &lt;br /&gt;
    &lt;br /&gt;
    H=(-(L+K))\F;&lt;br /&gt;
 &lt;br /&gt;
    sol(j+1,:)=[H' hN]; %Salvamos las solución, incluimos los extremos&lt;br /&gt;
end&lt;br /&gt;
 &lt;br /&gt;
rho1=a:drho:b; %Incluimos los nodos exteriores&lt;br /&gt;
 &lt;br /&gt;
[rr,tt]=meshgrid(rho1,t);&lt;br /&gt;
surf(rr,tt,sol); %Dibujamos la solución&lt;br /&gt;
title('Recuperación del acuífero. Condición estacionaria.')&lt;br /&gt;
xlabel('Distancia radial al centro del pozo.')&lt;br /&gt;
ylabel('Tiempo.')&lt;br /&gt;
zlabel('Nivel piezométrico.')&lt;br /&gt;
}}&lt;br /&gt;
Este programa nos representa la evolución del nivel piezométrico del acuífero tras ser impermeabilizado, partiendo del estado estacionario descrito anteriormente hasta llegar al estado inicial con h constante.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
También construimos un programa aparte que calcula, con un error del 5%, cuánto dura esta recuperación del nivel piezométrico:&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
clear all&lt;br /&gt;
&lt;br /&gt;
%PRIMERA FASE. ESPACIO&lt;br /&gt;
 &lt;br /&gt;
a=0.5; b=20; %Condiciones de contorno&lt;br /&gt;
drho=0.1; N=(b-a)/drho; %División del intervalo&lt;br /&gt;
 &lt;br /&gt;
rho=a:drho:b-drho; %Sólo nodos interiores&lt;br /&gt;
 &lt;br /&gt;
%Creamos las matrices&lt;br /&gt;
 &lt;br /&gt;
L=diag(ones(1,N-1),1)-diag(ones(1,N-1),-1);&lt;br /&gt;
L(1,2)=0;&lt;br /&gt;
A=diag(1./rho);&lt;br /&gt;
L=10^(-2)*(1/(2*drho))*A*L;&lt;br /&gt;
 &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(1,2)=2;&lt;br /&gt;
K=10^(-2)*(1/drho^2)*K; &lt;br /&gt;
 &lt;br /&gt;
F=zeros(N,1);&lt;br /&gt;
F(1,1)=0; %Ahora esto es cero&lt;br /&gt;
F(N,1)=10^(-2)*(45/(rho(N)*2*drho)+45/drho^2);&lt;br /&gt;
 &lt;br /&gt;
%SEGUDA FASE. TIEMPO&lt;br /&gt;
 &lt;br /&gt;
H=ones(1,length(rho)); H=H*45; H=H';&lt;br /&gt;
dt=200; T=5000; t=0:dt:T;&lt;br /&gt;
h0=34; hN=45;&lt;br /&gt;
sol=[h0 H' hN];&lt;br /&gt;
 &lt;br /&gt;
for j=1:length(t)-1 &lt;br /&gt;
 &lt;br /&gt;
    H=-(L+K)\F;&lt;br /&gt;
    &lt;br /&gt;
    MAT=[h0 H' hN];&lt;br /&gt;
 &lt;br /&gt;
    sol(j+1,:)=[h0 H' hN]; %Salvamos las solución, incluimos los extremos&lt;br /&gt;
end&lt;br /&gt;
 &lt;br /&gt;
&lt;br /&gt;
%PRIMERA FASE. ESPACIO&lt;br /&gt;
 &lt;br /&gt;
a=0.5; b=20; %Condiciones de contorno&lt;br /&gt;
drho=0.1; N=(b-a)/drho; %División del intervalo&lt;br /&gt;
 &lt;br /&gt;
rho=a:drho:b-drho; %Sólo nodos interiores&lt;br /&gt;
 &lt;br /&gt;
%Creamos las matrices&lt;br /&gt;
 &lt;br /&gt;
L=diag(ones(1,N-1),1)-diag(ones(1,N-1),-1);&lt;br /&gt;
L(1,2)=0;&lt;br /&gt;
A=diag(1./rho);&lt;br /&gt;
L=10^(-2)*(1/(2*drho))*A*L;&lt;br /&gt;
 &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(1,2)=2;&lt;br /&gt;
K=10^(-2)*(1/drho^2)*K; &lt;br /&gt;
 &lt;br /&gt;
F=zeros(N,1);&lt;br /&gt;
F(1,1)=0; %Ahora esto es cero&lt;br /&gt;
F(N,1)=10^(-2)*(45/(rho(N)*2*drho)+45/drho^2);&lt;br /&gt;
 &lt;br /&gt;
%SEGUDA FASE. TIEMPO&lt;br /&gt;
 &lt;br /&gt;
H=ones(1,length(rho)); &lt;br /&gt;
dt=200; T=5000; t=0:dt:T;&lt;br /&gt;
hN=45;&lt;br /&gt;
sol=[MAT(1:length(rho)) hN];&lt;br /&gt;
&lt;br /&gt;
for j=1:length(t)-1 &lt;br /&gt;
    &lt;br /&gt;
    H=-(L+K)\F;&lt;br /&gt;
 &lt;br /&gt;
    sol(j+1,:)=[H' hN]; %Salvamos las solución, incluimos los extremos&lt;br /&gt;
    &lt;br /&gt;
    error=max(abs(sol(j+1,:)-hN*ones(1,N+1)/40));&lt;br /&gt;
    &lt;br /&gt;
    tiempo=j; %Contador de tiempo, cada bucle una hora&lt;br /&gt;
    if error &amp;lt;=0.05&lt;br /&gt;
        break&lt;br /&gt;
    end&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
tiempo %Saca en pantalla el tiempo que tarda en alcanzar el régimen estacionario&lt;br /&gt;
}}&lt;br /&gt;
El resultado es de 25 horas.&lt;br /&gt;
''*'''Nota''': los programas son reiterativos y definen las mismas variables por estar diseñados para compilar por separado.''&lt;br /&gt;
&lt;br /&gt;
====Método de Fourier====&lt;br /&gt;
Ahora suponemos que el radio del pozo es despreciable y que una vez extraido el agua el pozo se cierra quedando el acuifero de nuevo homogéneo. En este caso tomaremos la región ρ &amp;lt; 20. Nuestro objetivo es aproximar las soluciones usando el método de Fourier. De nuevo supondremos que la solución sólo depende de ρ y t, y tomaremos ahora como condición frontera h(20, t) = 40.&lt;br /&gt;
Vamos a considerar el sistema de ecuaciones para h(ρ,t)=h(ρ,t)-40:&lt;br /&gt;
 &amp;lt;math&amp;gt; \left\{\begin{matrix}&lt;br /&gt;
\frac{\partial h}{\partial t} - D (\frac{1}{\rho}  \frac{\partial h}{\partial \rho} + \frac{\partial^2 h}{\partial \rho^2})= 0 &amp;amp; \rho \epsilon (0, 20) &amp;amp; \theta \epsilon (0, 2\Pi ) &amp;amp; t &amp;gt; 0 \\ &lt;br /&gt;
\frac{\partial h}{\partial \rho}(0,t) = 0;   h(20, t)= 0 \\ &lt;br /&gt;
\end{matrix}\right. &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Obtenemos el problema de autovalores asociado al sistema anterior con el método de separación de variables:&lt;br /&gt;
 &amp;lt;math&amp;gt; \left\{\begin{matrix}&lt;br /&gt;
D (\frac{X'(\rho)}{\rho} + X''(\rho))+ λX(\rho)=0 \\&lt;br /&gt;
X'(0) = 0;   X(20)= 0 \\ &lt;br /&gt;
&lt;br /&gt;
\end{matrix}\right. &amp;lt;/math&amp;gt;&lt;br /&gt;
[[Archivo:Marta1.jpg|marco|derecha]]&lt;br /&gt;
Sabemos que los problemas de esta forma tienen como solución la función de Bessel de primera especie que forma una familia de autofunciones: &amp;lt;math&amp;gt;Ψ(\rho)=J_0·(\rho\sqrt{λ})&amp;lt;/math&amp;gt;. Estas se anulan cuando &amp;lt;math&amp;gt;(\rho\sqrt{λ})&amp;lt;/math&amp;gt; se iguala a 2.4048, 5.5201, 8.6537, 11.7915 y 14.9309, siendo estos los 5 primeros ceros de la función de Bessel. De esta manera y tomando ρ=20 obtenemos los 5 primeros autovalores:&lt;br /&gt;
&amp;lt;math&amp;gt;(20\sqrt{λ})=2.4048&amp;lt;/math&amp;gt;Haciendo la operación anterior para los 5 ceros obtenemos los siguientes autovalores: 0.0145, 0.0762, 0.1872, 0.3476, 0.5573.&lt;br /&gt;
Ahora vamos a dibujar las 5 primeras autofunciones utilizando la función besselj:&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
a1=0.0145;&lt;br /&gt;
a2=0.0762;&lt;br /&gt;
a3=0.1872;&lt;br /&gt;
a4=0.3476;&lt;br /&gt;
a5=0.5575;&lt;br /&gt;
r=0:0.02:20;&lt;br /&gt;
F1=besselj(0,r.*(sqrt(a1))); &lt;br /&gt;
F2=besselj(0,r.*(sqrt(a2)));&lt;br /&gt;
F3=besselj(0,r.*(sqrt(a3)));&lt;br /&gt;
F4=besselj(0,r.*(sqrt(a4)));&lt;br /&gt;
F5=besselj(0,r.*(sqrt(a5)));&lt;br /&gt;
hold on&lt;br /&gt;
plot(r,F1)&lt;br /&gt;
plot(r,F2,'r')&lt;br /&gt;
plot(r,F3,'g')	&lt;br /&gt;
plot(r,F4,'c')&lt;br /&gt;
plot(r,F5,'y')&lt;br /&gt;
hold off&lt;br /&gt;
}}&lt;br /&gt;
[[Archivo:Marta2.jpg|marco|derecha]]&lt;br /&gt;
Aproximamos ahora la solución de la ecuación tomando como dato inicial es&amp;lt;math&amp;gt; h (\rho,0)= -log \frac{|\rho + 0.01|}{20.01} &amp;lt;/math&amp;gt; y usando 5 términos del desarrollo de Fourier, teniendo en cuenta que las autofunciones son ortogonales respecto al producto escalar: &amp;lt;math&amp;gt; (f(\rho),g(\rho)) = \int_{0}^{20} \rho f(\rho) g(\rho) \cdot dx &amp;lt;/math&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
x0=0; L=20;&lt;br /&gt;
c0=[2.4048,5.5201,8.6537,11.7915,14.9309]; %Vector de ceros de la función de Bessel&lt;br /&gt;
A=(c0./20).^2; %Vector de autovalores&lt;br /&gt;
K=5; %Número de términos del desarrollo de Fourier&lt;br /&gt;
x=x0:0.1:L;&lt;br /&gt;
N=length(x)-1;&lt;br /&gt;
J=zeros(N+1,K);&lt;br /&gt;
z=zeros(N+1,K);&lt;br /&gt;
t0=0; tf=500;&lt;br /&gt;
t=t0:0.1:tf;&lt;br /&gt;
[xx,tt]=meshgrid(x,t);&lt;br /&gt;
h=0;&lt;br /&gt;
for k=1:K&lt;br /&gt;
   z(:,k)=(x)'*sqrt(A(k));&lt;br /&gt;
   J(:,k)=besselj(0,z(:,k));&lt;br /&gt;
   h0=-log((abs(x+0.1))/20.01); %Condición inicial&lt;br /&gt;
   c(k)=trapz(x,x'.*h0'.*J(:,k))/trapz(x,x'.*J(:,k).*J(:,k)); %Coeficientes de Fourier&lt;br /&gt;
   h=h+c(k)*exp(-A(k)*t)'*J(:,k)';&lt;br /&gt;
end&lt;br /&gt;
surf(xx,tt,h)&lt;br /&gt;
title('Aproximación de la solución')&lt;br /&gt;
}}&lt;/div&gt;</summary>
		<author><name>Marta Cavero</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Archivo:Recuperaci%C3%B3n-acu%C3%ADfero.jpg&amp;diff=30487</id>
		<title>Archivo:Recuperación-acuífero.jpg</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Archivo:Recuperaci%C3%B3n-acu%C3%ADfero.jpg&amp;diff=30487"/>
				<updated>2015-05-21T11:52:37Z</updated>
		
		<summary type="html">&lt;p&gt;Marta Cavero: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>Marta Cavero</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Nivel_piezom%C3%A9trico_de_un_acu%C3%ADfero_confinado_(A5)&amp;diff=30486</id>
		<title>Nivel piezométrico de un acuífero confinado (A5)</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Nivel_piezom%C3%A9trico_de_un_acu%C3%ADfero_confinado_(A5)&amp;diff=30486"/>
				<updated>2015-05-21T11:50:28Z</updated>
		
		<summary type="html">&lt;p&gt;Marta Cavero: /* Capacidad de recuperación del acuífero */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;br /&gt;
==== Introducción ====&lt;br /&gt;
&lt;br /&gt;
Consideramos un acuífero confinado entre dos capas de terreno impermeables horizontales. Llamaremos h(x, y) al nivel piezométrico del acuífero, definido por la altura que alcanzaría el agua si hiciéramos un sondeo en el punto (x, y). Obviamente este valor depende de la presión a la que se encuentra el agua confinada en el acuífero. Supondremos&lt;br /&gt;
que el acuífero es un medio poroso saturado de agua que ocupa una región infinita y está en equilibrio de manera que &amp;lt;math&amp;gt;h(x, y) = h_0&amp;lt;/math&amp;gt; constante para todo (x, y) ∈ &amp;lt;math&amp;gt;IR^{2}&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Sobre el acuifero se construye un pozo de sección circular y radio&amp;lt;math&amp;gt; ρ_0&amp;lt;/math&amp;gt; para extraer agua. La presencia del pozo hace que el nivel piezométrico cambie. Dada la simetría del problema podemos suponer que h(x, y) sólo va a depender de la distancia al pozo. Si tomamos coordenadas cilíndricas de forma que el eje OZ coincida con el eje de simetría del pozo, entonces h = h(ρ) donde &amp;lt;math&amp;gt;ρ = \sqrt{x^{2} + y^{2}}&amp;lt;/math&amp;gt; . Trabajaremos por tanto en coordenadas polares en el plano (ρ, θ).&lt;br /&gt;
&lt;br /&gt;
Las ecuaciones que permiten conocer h(ρ) son la ecuación de conservación de la masa:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; S = \frac{∂h}{∂t} + div q = 0 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
junto con la ley de Darcy&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; q = −K∇h &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
que es una ley experimental que modela el flujo de agua en un medio poroso. La ley de Darcy establece que el flujo de agua q a través de un medio poroso es proporcional a la diferencia de presión, que a su vez se puede escribir en términos del gradiente del nivel piezométrico en cada punto. La constante K se deduce experimentalmente para cada material y se conoce como la conductividad hidráulica o permeabilidad. Cuanto mayor es la constante K mayor es el flujo de agua provocado por un cambio&lt;br /&gt;
de presión. La ley de Darcy proporciona una buena aproximación del comportamiento del agua en un medio poroso siempre que este sea homogéneo e isótropo.&lt;br /&gt;
&lt;br /&gt;
La constante S en la ley de conservación de la masa se conoce como almacenamiento específico y se interpreta como la cantidad de agua que libera el acuífero al descender el nivel piezométrico en una unidad, por unidad de volumen.&lt;br /&gt;
&lt;br /&gt;
Combinando las ecuaciones de conservación de la masa con la ley de Darcy, obtenemos la ecuación:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \frac{∂h}{∂t} - D∆h = 0, ρ &amp;gt; ρ_0, θ ∈ (0, 2π), t &amp;gt; 0, (1) &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
donde D = K/S es la difusividad hidráulica que supondremos constante.&lt;br /&gt;
&lt;br /&gt;
==== Deducción de la fórmula ====&lt;br /&gt;
&lt;br /&gt;
En este apartado buscamos demostrar la ecuación (1) como combinación de la ecuación de conservación de masas y la Ley de Darcy.&lt;br /&gt;
&lt;br /&gt;
Por un lado sabemos que el laplaciaco equivale a la divergencia del gradiente: &lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; &lt;br /&gt;
(\Delta f = \nabla \cdot \nabla f = div \left (\nabla f) \right) &lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Por otro lado, sabemos que en coordenadas polares: &lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;x = ρ cos \theta \\&lt;br /&gt;
             y = ρ  sen \theta&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\bar{g_ρ } = cos \theta \bar{i} + sin \theta  \bar{j} \\&lt;br /&gt;
              \bar{g_\theta } = - ρ  sin \theta \bar{i} + ρ cos \theta \bar{j} &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;&lt;br /&gt;
G =&lt;br /&gt;
\left(&lt;br /&gt;
\begin{array}{cc}&lt;br /&gt;
1&amp;amp; 0 \\&lt;br /&gt;
0 &amp;amp; ρ ^{2} \\&lt;br /&gt;
\end{array}&lt;br /&gt;
\right);&lt;br /&gt;
\text {donde la raiz del determinante es} \sqrt{g} = ρ&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Como indica el enunciado, al sustituir la Ley de Darcy en la ecuación de conservación de la masa obtenemos y dividir entre S, teniendo en cuenta que el divergente del gradiente es el laplaciano como hemos indicado al principio de este apartado, obtenemos la ecuación (1): &amp;lt;math&amp;gt; \frac{∂h}{∂t} - \frac{k}{S}∆h = 0 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
En esta ecuación queda por desarrollar el Laplaciano de h. &lt;br /&gt;
Partiremos de la función h(ρ,θ), de la cual calcularemos primero el gradiente:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \nabla h = \frac{\partial h}{\partial \rho}\hat{\rho} + \frac{\partial h}{\partial \rho}\hat{\theta} =  \frac{\partial h}{\partial \rho}\bar{\rho} + \frac{1}{\rho^{2}} \frac{\partial h}{\partial \rho}\bar{\theta}  &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
teniendo en cuenta que &amp;lt;math&amp;gt;\bar{g^{i} } = \frac{\bar{g_i } }{ | \bar{g_i } | ^{2} } &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Ahora hacemos el divergente del gradiente anterior y obtenemos el Laplaciano en coordenadas polares:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;math&amp;gt;&lt;br /&gt;
 \Delta h = div(∇h) &lt;br /&gt;
= {1 \over \rho} {\partial \over \partial \rho}&lt;br /&gt;
  \left( \rho {\partial h \over \partial \rho} \right) &lt;br /&gt;
+ {1 \over \rho^2} {\partial^2 h \over \partial \theta^2}&lt;br /&gt;
= {1 \over \rho} {\partial h \over \partial \rho} &lt;br /&gt;
+ {\partial^2 h \over \partial \rho^2}&lt;br /&gt;
+ {1 \over \rho^2} {\partial^2 h \over \partial \theta^2}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Si consideramos que, debido a la simetría del problema, h sólo depende de su distancia al pozo, entonces obtenemos la función radial h(ρ), que nos permite simplificar el Laplaciano del modo siguiente:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;math&amp;gt;&lt;br /&gt;
 \Delta h = div(∇h) &lt;br /&gt;
= {1 \over \rho} {\partial h \over \partial \rho} &lt;br /&gt;
+ {\partial^2 h \over \partial \rho^2}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== Obtención de la ecuación====&lt;br /&gt;
&lt;br /&gt;
Para poder resolver la ecuación anterior y que el resultado sea único, hemos de establecer condiciones iniciales y de contorno.&lt;br /&gt;
&lt;br /&gt;
Las condiciones de contorno serán dos pues aparece la derivada segunda de la posición: &amp;lt;math&amp;gt; h(\rho_0 , t) = h_p \\&lt;br /&gt;
                                                                                                                                                                  h(20,t) = h_0 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
La condición inicial será única pues sólo aparece una derivada de primer orden en tiempo en nuestra ecuación: &amp;lt;math&amp;gt; h(\rho,0) = h_0 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
De este modo la ecuación resultante será:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \left\{\begin{matrix}&lt;br /&gt;
\frac{\partial h}{\partial t} - \frac{k}{s} (\frac{1}{\rho}  \frac{\partial h}{\partial \rho} + \frac{\partial^2 h}{\partial \rho^2})= 0 &amp;amp; \rho \epsilon (\rho_{0}, 2c) &amp;amp; \theta \epsilon (0, 2\Pi ) &amp;amp; t &amp;gt; 0 \\ &lt;br /&gt;
h(\rho_{0},t) = h_{p};   h(20, t)= h_{0} \\ &lt;br /&gt;
h(\rho, 0) = h_{0} &lt;br /&gt;
\end{matrix}\right. &amp;lt;/math&amp;gt; &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==== Resolución por método de diferencias finitas ====&lt;br /&gt;
&lt;br /&gt;
Suponiendo &amp;lt;math&amp;gt;ρ_0 =0.5m&amp;lt;/math&amp;gt;, &amp;lt;math&amp;gt;h_0 =45m&amp;lt;/math&amp;gt;, &amp;lt;math&amp;gt;hp =34&amp;lt;/math&amp;gt;, D=10−2, &amp;lt;math&amp;gt;(ρ,0)=h_0&amp;lt;/math&amp;gt;; y tomando  ∆ρ = 0.1 y ∆t = ∆ρ. Vamos a resolver la ecuación anterior por el método de diferencias finitas, usando el Método de Heun para realizar la aproximación en tiempo.&lt;br /&gt;
&lt;br /&gt;
Primero, sustituyendo los datos anteriores en la ecuación, llegamos a:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \left\{\begin{matrix}&lt;br /&gt;
\frac{\partial h}{\partial t} - 10^{2} (\frac{1}{\rho}  \frac{\partial h}{\partial \rho} + \frac{\partial^2 h}{\partial \rho^2})= 0 &amp;amp; \rho \epsilon (0.5, 20) &amp;amp; \theta \epsilon (0, 2\Pi ) &amp;amp; t &amp;gt; 0 \\ &lt;br /&gt;
h(0.5,t) = 34;   h(20, t)= 45 \\ &lt;br /&gt;
h(\rho, 0) = 45&lt;br /&gt;
\end{matrix}\right. &amp;lt;/math&amp;gt; &lt;br /&gt;
&lt;br /&gt;
Aplicando el método de las diferencias finitas llegamos al siguiente código:&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
&lt;br /&gt;
%TRPRIMERA FASE. ESPACIO&lt;br /&gt;
&lt;br /&gt;
a=0.5; b=20; %Condiciones de contorno&lt;br /&gt;
drho=0.1; N=(b-a)/drho; %División del intervalo&lt;br /&gt;
&lt;br /&gt;
rho=a+drho:drho:b-drho; %Sólo nodos interiores&lt;br /&gt;
&lt;br /&gt;
%Creamos las matrices&lt;br /&gt;
&lt;br /&gt;
L=diag(ones(1,N-2),1)-diag(ones(1,N-2),-1);&lt;br /&gt;
A=diag(1./rho);&lt;br /&gt;
L=10^(-2)*(1/(2*drho))*A*L;&lt;br /&gt;
&lt;br /&gt;
K=-2*diag(ones(1,N-1))+diag(ones(1,N-2),1)+diag(ones(1,N-2),-1);&lt;br /&gt;
K=10^(-2)*(1/drho^2)*K; &lt;br /&gt;
&lt;br /&gt;
F=zeros(N-1,1);&lt;br /&gt;
F(1,1)=10^(-2)*(-17/(rho(1)*drho)+34/drho^2);&lt;br /&gt;
F(N-1,1)=10^(-2)*(45/(rho(N-1)*2*drho)+45/drho^2);&lt;br /&gt;
&lt;br /&gt;
%SEGUDA FASE. TIEMPO&lt;br /&gt;
&lt;br /&gt;
H=ones(1,length(rho)); H=H*45; H=H';&lt;br /&gt;
dt=drho; T=10; t=0:dt:T;&lt;br /&gt;
h0=34; hN=45;&lt;br /&gt;
sol=[h0 H' hN];&lt;br /&gt;
&lt;br /&gt;
for j=1:length(t)-1 &lt;br /&gt;
    &lt;br /&gt;
    %Método de Heun&lt;br /&gt;
    k1=F+(K+L)*H;&lt;br /&gt;
    k2=F+(K+L)*(H+k1*dt);&lt;br /&gt;
    H=H+(dt/2)*(k1+k2);&lt;br /&gt;
 &lt;br /&gt;
    sol(j+1,:)=[h0 H' hN]; %Salvamos las solución, incluimos los extremos&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
rho1=a:drho:b; %Incluimos los nodos exteriores&lt;br /&gt;
&lt;br /&gt;
[rr,tt]=meshgrid(rho1,t);&lt;br /&gt;
surf(rr,tt,sol); %Dibujamos la solución&lt;br /&gt;
title('Nivel Piezométrico. Método Diferencias finitas con Heun en tiempo.')&lt;br /&gt;
xlabel('Distancia radial al centro del pozo.')&lt;br /&gt;
ylabel('Tiempo.')&lt;br /&gt;
zlabel('Nivel piezométrico.')&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
Mediante este código obtenemos la siguiente gráfica:&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Grafica npiezometrico.jpg|500px|thumb|best|Gráfica Nivel Piezométrico aproximada con el Método de Diferencias Finitas con Heun en tiempo.]]&lt;br /&gt;
&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Ahora dibujaremos la gráfica mediante los métodos de Euler implícito y trapecio y compararemos los resultados obtenidos.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Sobre el programa anterior cambiaremos las líneas correspondientes al método de Heun.&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* Método de Euler implícito:&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;math&amp;gt; \left\{\begin{matrix}&lt;br /&gt;
y_{0}\\&lt;br /&gt;
y_{n+1}=y_{n} + hf(t_{n+1},y_{n+1})\\&lt;br /&gt;
\end{matrix}\right. &amp;lt;/math&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
&lt;br /&gt;
for j=1:length(t)-1 &lt;br /&gt;
    &lt;br /&gt;
    %Método de Euler implícito&lt;br /&gt;
    &lt;br /&gt;
    H=(eye(N-1)-dt*(K+L))\(H+(F*dt)); &lt;br /&gt;
 &lt;br /&gt;
    sol(j+1,:)=[h0 H' hN]; %Salvamos las solución, incluimos los extremos&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
rho1=a:drho:b; %Incluimos los nodos exteriores&lt;br /&gt;
&lt;br /&gt;
[rr,tt]=meshgrid(rho1,t);&lt;br /&gt;
surf(rr,tt,sol); %Dibujamos la solución&lt;br /&gt;
title('Nivel Piezométrico. Método Diferencias finitas con Euler en tiempo.')&lt;br /&gt;
xlabel('Distancia radial al centro del pozo.')&lt;br /&gt;
ylabel('Tiempo.')&lt;br /&gt;
zlabel('Nivel piezométrico.')&lt;br /&gt;
&lt;br /&gt;
}}&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* Método del Trapecio:&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;math&amp;gt; \left\{\begin{matrix}&lt;br /&gt;
y_{0}\\&lt;br /&gt;
y_{n+1}=y_{n} + \frac{h}{2}f((t_{n},y_{n}+f(t_{n+1},y_{n+1}))\\&lt;br /&gt;
\end{matrix}\right. &amp;lt;/math&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
for j=1:length(t)-1 &lt;br /&gt;
    &lt;br /&gt;
    %Método del trapecio&lt;br /&gt;
    k1=F+(K+L)*H;&lt;br /&gt;
    k2=F+(K+L)*(H+k1*dt); &lt;br /&gt;
    H=(eye(N-1)-(dt/2)*(K+L))\(H+dt*F+(dt/2)*(K+L)*H);&lt;br /&gt;
 &lt;br /&gt;
    sol(j+1,:)=[h0 H' hN]; %Salvamos las solución, incluimos los extremos&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
rho1=a:drho:b; %Incluimos los nodos exteriores&lt;br /&gt;
&lt;br /&gt;
[rr,tt]=meshgrid(rho1,t);&lt;br /&gt;
surf(rr,tt,sol); %Dibujamos la solución&lt;br /&gt;
title('Nivel Piezométrico. Método Diferencias finitas con trapecio en tiempo.')&lt;br /&gt;
xlabel('Distancia radial al centro del pozo.')&lt;br /&gt;
ylabel('Tiempo.')&lt;br /&gt;
zlabel('Nivel piezométrico.')&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
Como podemos ver a continuación las tres gráficas resultantes son prácticamente iguales por lo que los tres métodos hacen una aproximación similar.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
[[Archivo:Trapecio12.png|500px|thumb|right|Gráfica Nivel Piezométrico aproximada con el Método de Diferencias Finitas con Trapecio en tiempo.]]&lt;br /&gt;
[[Archivo:Euler12.png|500px|thumb|right|Gráfica Nivel Piezométrico aproximada con el Método de Diferencias Finitas con Euler Implícito en tiempo.]]&lt;br /&gt;
&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== Comportamiento del nivel piezométrico con &amp;lt;math&amp;gt; \rho &amp;lt;/math&amp;gt; constante ====&lt;br /&gt;
&lt;br /&gt;
Ahora supondremos que &amp;lt;math&amp;gt; \rho &amp;lt;/math&amp;gt; es constante y que su valor es 2 y dibujaremos el comportamiento del nivel piezométrico en una gráfica 2D nivel piezométrico-tiempo.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Nuevamente utilizando el programa anterior con el  método de Heun:&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Rho2.png|500px|thumb|best|Gráfica Nivel Piezométrico-tiempo para &amp;lt;math&amp;gt; \rho =2 &amp;lt;/math&amp;gt; para T=10.]]&lt;br /&gt;
[[Archivo:Rho1000.png|500px|thumb|best|Gráfica Nivel Piezométrico-tiempo para &amp;lt;math&amp;gt; \rho =2 &amp;lt;/math&amp;gt; para T=1000.]]&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
&lt;br /&gt;
%PRIMERA FASE. ESPACIO&lt;br /&gt;
&lt;br /&gt;
a=0.5; b=20; %Condiciones de contorno&lt;br /&gt;
drho=0.1; N=(b-a)/drho; %División del intervalo&lt;br /&gt;
&lt;br /&gt;
rho=a+drho:drho:b-drho; %Sólo nodos interiores&lt;br /&gt;
&lt;br /&gt;
%Creamos las matrices&lt;br /&gt;
&lt;br /&gt;
L=diag(ones(1,N-2),1)-diag(ones(1,N-2),-1);&lt;br /&gt;
A=diag(1./rho);&lt;br /&gt;
L=10^(-2)*(1/(2*drho))*A*L;&lt;br /&gt;
&lt;br /&gt;
K=-2*diag(ones(1,N-1))+diag(ones(1,N-2),1)+diag(ones(1,N-2),-1);&lt;br /&gt;
K=10^(-2)*(1/drho^2)*K; &lt;br /&gt;
&lt;br /&gt;
F=zeros(N-1,1);&lt;br /&gt;
F(1,1)=10^(-2)*(-17/(rho(1)*drho)+34/drho^2);&lt;br /&gt;
F(N-1,1)=10^(-2)*(45/(rho(N-1)*2*drho)+45/drho^2);&lt;br /&gt;
&lt;br /&gt;
%SEGUDA FASE. TIEMPO&lt;br /&gt;
&lt;br /&gt;
H=ones(1,length(rho)); H=H*45; H=H';&lt;br /&gt;
dt=drho; &lt;br /&gt;
T=10 &lt;br /&gt;
%Comprobamos también la solución para un tiempo mayor &lt;br /&gt;
%T=1000&lt;br /&gt;
t=0:dt:T;&lt;br /&gt;
h0=34; hN=45;&lt;br /&gt;
sol=[h0 H' hN];&lt;br /&gt;
&lt;br /&gt;
for j=1:length(t)-1 &lt;br /&gt;
    &lt;br /&gt;
    %Método de Heun&lt;br /&gt;
    k1=F+(K+L)*H;&lt;br /&gt;
    k2=F+(K+L)*(H+k1*dt);&lt;br /&gt;
    H=H+(dt/2)*(k1+k2);&lt;br /&gt;
 &lt;br /&gt;
    sol(j+1,:)=[h0 H' hN]; %Salvamos las solución, incluimos los extremos&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
rho1=a:drho:b; %Incluimos los nodos exteriores&lt;br /&gt;
&lt;br /&gt;
m=sol(:,rho==2); %Vector que incluye la solución en tiempo para rho=2&lt;br /&gt;
&lt;br /&gt;
plot(t,m);&lt;br /&gt;
&lt;br /&gt;
title('Comportamiento del nivel piezométrico en el tiempo para p=2')&lt;br /&gt;
xlabel('Tiempo')&lt;br /&gt;
ylabel('Nivel piezométrico.')&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
La primera gráfica muestra que para tiempos pequeños la variación del nivel piezométrico es muy pequeña (del orden de 0,10/0,15 m), aún así como observamos en la segunda gráfica a medida que avanzamos en el tiempo la variación del nivel disminuye aún más ya que la curva está cada vez menos inclinada.&lt;br /&gt;
&lt;br /&gt;
==== Variación del nivel piezométrico en tiempos grandes ====&lt;br /&gt;
Ahora vamos a comprobar que la variación del nivel piezométrico para tiempos elevados (T=5000) es mínima.&lt;br /&gt;
Para ello dibujaremos las soluciones cada 100 horas de en el intervalo temporal [1; 5000], en&lt;br /&gt;
una misma gráfica.&lt;br /&gt;
[[Archivo:Tiemposg2.png|marco|derecha|Nivel piezométrico para tiempos grandes]]&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
%PRIMERA FASE. ESPACIO&lt;br /&gt;
&lt;br /&gt;
a=0.5; b=20; %Condiciones de contorno&lt;br /&gt;
drho=0.1; N=(b-a)/drho; %División del intervalo&lt;br /&gt;
&lt;br /&gt;
rho=a+drho:drho:b-drho; %Sólo nodos interiores&lt;br /&gt;
&lt;br /&gt;
%Creamos las matrices&lt;br /&gt;
&lt;br /&gt;
L=diag(ones(1,N-2),1)-diag(ones(1,N-2),-1);&lt;br /&gt;
A=diag(1./rho);&lt;br /&gt;
L=10^(-2)*(1/(2*drho))*A*L;&lt;br /&gt;
&lt;br /&gt;
K=-2*diag(ones(1,N-1))+diag(ones(1,N-2),1)+diag(ones(1,N-2),-1);&lt;br /&gt;
K=10^(-2)*(1/drho^2)*K; &lt;br /&gt;
&lt;br /&gt;
F=zeros(N-1,1);&lt;br /&gt;
F(1,1)=10^(-2)*(-17/(rho(1)*drho)+34/drho^2);&lt;br /&gt;
F(N-1,1)=10^(-2)*(45/(rho(N-1)*2*drho)+45/drho^2);&lt;br /&gt;
&lt;br /&gt;
%SEGUDA FASE. TIEMPO&lt;br /&gt;
&lt;br /&gt;
H=ones(1,length(rho)); H=H*45; H=H';&lt;br /&gt;
dt=0.1; T=5000; t=0:dt:T;&lt;br /&gt;
h0=34; hN=45;&lt;br /&gt;
sol=[h0 H' hN];&lt;br /&gt;
&lt;br /&gt;
figure(1);&lt;br /&gt;
hold on;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
for j=1:length(t)-1 &lt;br /&gt;
    &lt;br /&gt;
    %Método de Heun&lt;br /&gt;
    k1=F+(K+L)*H;&lt;br /&gt;
    k2=F+(K+L)*(H+k1*dt);&lt;br /&gt;
    H=H+(dt/2)*(k1+k2);&lt;br /&gt;
 &lt;br /&gt;
    sol(j+1,:)=[h0 H' hN]; %Salvamos las solución, incluimos los extremos&lt;br /&gt;
    &lt;br /&gt;
 if rem(t(j),100)==0; &lt;br /&gt;
    &lt;br /&gt;
    rho1=a:drho:b; %Incluimos los nodos exteriores&lt;br /&gt;
  &lt;br /&gt;
  plot(rho1,sol(j,:)) %pintamos la solución cada 100 horas&lt;br /&gt;
  &lt;br /&gt;
  title('Variación del nivel piezométrico para tiempos grandes')&lt;br /&gt;
  pause(1)&lt;br /&gt;
&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
end&lt;br /&gt;
}}&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Como se puede observar en la gráfica según vamos avanzando en el tiempo las curvas están más juntas lo que quiere decir que la variación del nivel es cada vez menor aproximándose a un régimen estacionario.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Trabajo21.jpg|marco|derecha|Nivel piezométrico estacionario]]&lt;br /&gt;
&lt;br /&gt;
====Problema estacionario====&lt;br /&gt;
Como hemos visto en el apartado anterior para tiempos grandes el nivel piezométrico se mantiene practicamente constante a lo largo del tiempo, esto es debido a que se establece un equilibrio entre el caudal de agua extraida del acuifero y la migración de aguas desde los puntos más alejados del pozo hacia este.&lt;br /&gt;
Por lo tanto se verifica que:&lt;br /&gt;
 &amp;lt;math&amp;gt;\frac{\partial h}{\partial t}=0&amp;lt;/math&amp;gt;&lt;br /&gt;
Y por lo tanto el nivel piezométrico se puede aproximar por:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \left\{\begin{matrix}&lt;br /&gt;
- \frac{k}{s} (\frac{1}{\rho}  \frac{\partial h}{\partial \rho} + \frac{\partial^2 h}{\partial \rho^2})= 0 &amp;amp; \rho \epsilon (1, 20) &amp;amp; \theta \epsilon (0, 2\Pi ) &amp;amp; 0 &amp;lt; t &amp;lt; 5000 \\ &lt;br /&gt;
h(1,t) = 35;    h(20, t)= 40 \\ &lt;br /&gt;
h(\rho, 0) = 40 &lt;br /&gt;
\end{matrix}\right. &amp;lt;/math&amp;gt;&lt;br /&gt;
Resolvemos por diferencias finitas:&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
    %datos&lt;br /&gt;
    t=5000;&lt;br /&gt;
    l=20;&lt;br /&gt;
    D=0.01;&lt;br /&gt;
    hp=35;&lt;br /&gt;
    ho=40;&lt;br /&gt;
    %discretización&lt;br /&gt;
    s=0.1;&lt;br /&gt;
    x0=1;&lt;br /&gt;
    x=x0:s:l;&lt;br /&gt;
    xint=x0+s:s:l-s;&lt;br /&gt;
    N=length(x)-2; &lt;br /&gt;
    %construimos las matrices para el método de las diferencias finitas&lt;br /&gt;
    K=(1/s^2)*(diag(2*ones(1,N))-diag(ones(1,N-1),1)-diag(ones(1,N-1),-1));&lt;br /&gt;
    A=(1/(s*2))*(diag(ones(1,N-1),1)-diag(ones(1,N-1),-1));&lt;br /&gt;
    A=diag(1./xint)*A;&lt;br /&gt;
    h0=(40*ones(N,1));&lt;br /&gt;
    dt=200; &lt;br /&gt;
    t=0:dt:t;&lt;br /&gt;
    M=length(t)-1;&lt;br /&gt;
    F=(zeros(N,1));&lt;br /&gt;
    F(1)=D*((hp/s^2)-(hp/(2*s)*1/xint(1)));&lt;br /&gt;
    F(N)=D*((ho/s^2)+ho/(s*2*xint(N)));&lt;br /&gt;
    H(1,:)=[40;h0;40]'; &lt;br /&gt;
    h=h0;&lt;br /&gt;
    for n=1:M&lt;br /&gt;
      h=(D)*(K-A)\((F)); %utilizamos el comando backslash para resolver el sistema de ecuaciones&lt;br /&gt;
      H(n+1,:)=[hp h' ho];&lt;br /&gt;
    end&lt;br /&gt;
    %mallado y representación&lt;br /&gt;
    [X,T]=meshgrid(x,t);&lt;br /&gt;
    surf(X,T,H)&lt;br /&gt;
    xlabel('Distancia (metros)');&lt;br /&gt;
    ylabel('Tiempo (horas)');&lt;br /&gt;
    zlabel('Nivel piezométrico (metros)')&lt;br /&gt;
}}&lt;br /&gt;
Efectivamente, como podemos comprobar en la gráfica, la solución es independiente del tiempo salvo para tiempos pequeños en los cuales no queda muy bien definida&lt;br /&gt;
&lt;br /&gt;
====Capacidad de recuperación del acuífero====&lt;br /&gt;
En este apartado queremos calcular una ley que nos describa el comportamiento del acuífero e el caso de que impermeabilizásemos las paredes del pozo partiendo del estado estacionario anterior, esto significaría que el fujo de agua en los bordes del pozo sería nulo y el nivel piezométrico iría variando hasta llegar a otro estado estacionario.&lt;br /&gt;
El estado estacionarioque tenderá a alcanzar el fluido será el inicial, ya que al impermeabilizar las paredes volvemos al caso del acuífero confinado y por ello es nivel piezométrico quedará constante a lo largo del tiempo y de la extensión del acuífero.&lt;br /&gt;
La condición frontera a imponer será que el flujo de agua en r0 será 0, ya que estará impermeabilizado. Esto lo podemos plasmar diciendo que la parcial del nivel piezométrico con respecto a ro en r0 es 0, ya que un aislamiento impide el flujo de líquido, y si el flujo de líquido es nulo el nivel piezométrico no varía.&lt;br /&gt;
&amp;lt;math&amp;gt;\frac{\partial h}{\partial \rho}=0&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Con la condición que acabamos de proponer resolvemos numéricamente con Matlab:&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
clear all&lt;br /&gt;
&lt;br /&gt;
%REPETIMOS EL PROGRAMA ANTERIOR PARA SACAR EL VALOR ESTACIONARIO&lt;br /&gt;
 &lt;br /&gt;
a=0.5; b=20; %Condiciones de contorno&lt;br /&gt;
drho=0.1; N=(b-a)/drho; %División del intervalo&lt;br /&gt;
rho=a:drho:b-drho; %Sólo nodos interiores&lt;br /&gt;
L=diag(ones(1,N-1),1)-diag(ones(1,N-1),-1);&lt;br /&gt;
L(1,2)=0;&lt;br /&gt;
A=diag(1./rho);&lt;br /&gt;
L=10^(-2)*(1/(2*drho))*A*L;&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(1,2)=2;&lt;br /&gt;
K=10^(-2)*(1/drho^2)*K; &lt;br /&gt;
F=zeros(N,1);&lt;br /&gt;
F(1,1)=0; %Ahora esto es cero&lt;br /&gt;
F(N,1)=10^(-2)*(45/(rho(N)*2*drho)+45/drho^2);&lt;br /&gt;
H=ones(1,length(rho)); H=H*45; H=H';&lt;br /&gt;
dt=200; T=5000; t=0:dt:T;&lt;br /&gt;
h0=34; hN=45;&lt;br /&gt;
sol=[h0 H' hN];&lt;br /&gt;
 &lt;br /&gt;
for j=1:length(t)-1 &lt;br /&gt;
 &lt;br /&gt;
    H=-(L+K)\F;&lt;br /&gt;
    &lt;br /&gt;
    MAT=[h0 H' hN];&lt;br /&gt;
 &lt;br /&gt;
    sol(j+1,:)=[h0 H' hN]; %Salvamos las solución, incluimos los extremos&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
%AHORA RESOLVEMOS PARA EL CASO DE LA RECUPERACIÓN&lt;br /&gt;
&lt;br /&gt;
%PRIMERA FASE. ESPACIO&lt;br /&gt;
 &lt;br /&gt;
a=0.5; b=20; %Condiciones de contorno&lt;br /&gt;
drho=0.1; N=(b-a)/drho; %División del intervalo&lt;br /&gt;
 &lt;br /&gt;
rho=a:drho:b-drho; %Sólo nodos interiores&lt;br /&gt;
 &lt;br /&gt;
%Creamos las matrices&lt;br /&gt;
 &lt;br /&gt;
L=diag(ones(1,N-1),1)-diag(ones(1,N-1),-1);&lt;br /&gt;
L(1,2)=0;&lt;br /&gt;
A=diag(1./rho);&lt;br /&gt;
L=10^(-2)*(1/(2*drho))*A*L;&lt;br /&gt;
 &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(1,2)=2;&lt;br /&gt;
K=10^(-2)*(1/drho^2)*K; &lt;br /&gt;
 &lt;br /&gt;
F=zeros(N,1);&lt;br /&gt;
F(1)=0; %Ahora esto es cero&lt;br /&gt;
F(N)=10^(-2)*(45/(rho(N)*2*drho)+45/drho^2);&lt;br /&gt;
 &lt;br /&gt;
%SEGUDA FASE. TIEMPO&lt;br /&gt;
 &lt;br /&gt;
H=ones(1,length(rho)); &lt;br /&gt;
dt=200; T=5000; t=0:dt:T;&lt;br /&gt;
hN=45;&lt;br /&gt;
sol=[MAT(1:length(rho)) hN];&lt;br /&gt;
&lt;br /&gt;
for j=1:length(t)-1 &lt;br /&gt;
    &lt;br /&gt;
    H=(-(L+K))\F;&lt;br /&gt;
 &lt;br /&gt;
    sol(j+1,:)=[H' hN]; %Salvamos las solución, incluimos los extremos&lt;br /&gt;
end&lt;br /&gt;
 &lt;br /&gt;
rho1=a:drho:b; %Incluimos los nodos exteriores&lt;br /&gt;
 &lt;br /&gt;
[rr,tt]=meshgrid(rho1,t);&lt;br /&gt;
surf(rr,tt,sol); %Dibujamos la solución&lt;br /&gt;
title('Recuperación del acuífero. Condición estacionaria.')&lt;br /&gt;
xlabel('Distancia radial al centro del pozo.')&lt;br /&gt;
ylabel('Tiempo.')&lt;br /&gt;
zlabel('Nivel piezométrico.')&lt;br /&gt;
}}&lt;br /&gt;
Este programa nos representa la evolución del nivel piezométrico del acuífero tras ser impermeabilizado, partiendo del estado estacionario descrito anteriormente hasta llegar al estado inicial con h constante.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
También construimos un programa aparte que calcula, con un error del 5%, cuánto dura esta recuperación del nivel piezométrico:&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
clear all&lt;br /&gt;
&lt;br /&gt;
%PRIMERA FASE. ESPACIO&lt;br /&gt;
 &lt;br /&gt;
a=0.5; b=20; %Condiciones de contorno&lt;br /&gt;
drho=0.1; N=(b-a)/drho; %División del intervalo&lt;br /&gt;
 &lt;br /&gt;
rho=a:drho:b-drho; %Sólo nodos interiores&lt;br /&gt;
 &lt;br /&gt;
%Creamos las matrices&lt;br /&gt;
 &lt;br /&gt;
L=diag(ones(1,N-1),1)-diag(ones(1,N-1),-1);&lt;br /&gt;
L(1,2)=0;&lt;br /&gt;
A=diag(1./rho);&lt;br /&gt;
L=10^(-2)*(1/(2*drho))*A*L;&lt;br /&gt;
 &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(1,2)=2;&lt;br /&gt;
K=10^(-2)*(1/drho^2)*K; &lt;br /&gt;
 &lt;br /&gt;
F=zeros(N,1);&lt;br /&gt;
F(1,1)=0; %Ahora esto es cero&lt;br /&gt;
F(N,1)=10^(-2)*(45/(rho(N)*2*drho)+45/drho^2);&lt;br /&gt;
 &lt;br /&gt;
%SEGUDA FASE. TIEMPO&lt;br /&gt;
 &lt;br /&gt;
H=ones(1,length(rho)); H=H*45; H=H';&lt;br /&gt;
dt=200; T=5000; t=0:dt:T;&lt;br /&gt;
h0=34; hN=45;&lt;br /&gt;
sol=[h0 H' hN];&lt;br /&gt;
 &lt;br /&gt;
for j=1:length(t)-1 &lt;br /&gt;
 &lt;br /&gt;
    H=-(L+K)\F;&lt;br /&gt;
    &lt;br /&gt;
    MAT=[h0 H' hN];&lt;br /&gt;
 &lt;br /&gt;
    sol(j+1,:)=[h0 H' hN]; %Salvamos las solución, incluimos los extremos&lt;br /&gt;
end&lt;br /&gt;
 &lt;br /&gt;
&lt;br /&gt;
%PRIMERA FASE. ESPACIO&lt;br /&gt;
 &lt;br /&gt;
a=0.5; b=20; %Condiciones de contorno&lt;br /&gt;
drho=0.1; N=(b-a)/drho; %División del intervalo&lt;br /&gt;
 &lt;br /&gt;
rho=a:drho:b-drho; %Sólo nodos interiores&lt;br /&gt;
 &lt;br /&gt;
%Creamos las matrices&lt;br /&gt;
 &lt;br /&gt;
L=diag(ones(1,N-1),1)-diag(ones(1,N-1),-1);&lt;br /&gt;
L(1,2)=0;&lt;br /&gt;
A=diag(1./rho);&lt;br /&gt;
L=10^(-2)*(1/(2*drho))*A*L;&lt;br /&gt;
 &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(1,2)=2;&lt;br /&gt;
K=10^(-2)*(1/drho^2)*K; &lt;br /&gt;
 &lt;br /&gt;
F=zeros(N,1);&lt;br /&gt;
F(1,1)=0; %Ahora esto es cero&lt;br /&gt;
F(N,1)=10^(-2)*(45/(rho(N)*2*drho)+45/drho^2);&lt;br /&gt;
 &lt;br /&gt;
%SEGUDA FASE. TIEMPO&lt;br /&gt;
 &lt;br /&gt;
H=ones(1,length(rho)); &lt;br /&gt;
dt=200; T=5000; t=0:dt:T;&lt;br /&gt;
hN=45;&lt;br /&gt;
sol=[MAT(1:length(rho)) hN];&lt;br /&gt;
&lt;br /&gt;
for j=1:length(t)-1 &lt;br /&gt;
    &lt;br /&gt;
    H=-(L+K)\F;&lt;br /&gt;
 &lt;br /&gt;
    sol(j+1,:)=[H' hN]; %Salvamos las solución, incluimos los extremos&lt;br /&gt;
    &lt;br /&gt;
    error=max(abs(sol(j+1,:)-hN*ones(1,N+1)/40));&lt;br /&gt;
    &lt;br /&gt;
    tiempo=j; %Contador de tiempo, cada bucle una hora&lt;br /&gt;
    if error &amp;lt;=0.05&lt;br /&gt;
        break&lt;br /&gt;
    end&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
tiempo %Saca en pantalla el tiempo que tarda en alcanzar el régimen estacionario&lt;br /&gt;
}}&lt;br /&gt;
El resultado es de 25 horas.&lt;br /&gt;
''*'''Nota''': los programas son reiterativos y definen las mismas variables por estar diseñados para compilar por separado.''&lt;br /&gt;
&lt;br /&gt;
====Método de Fourier====&lt;br /&gt;
Ahora suponemos que el radio del pozo es despreciable y que una vez extraido el agua el pozo se cierra quedando el acuifero de nuevo homogéneo. En este caso tomaremos la región ρ &amp;lt; 20. Nuestro objetivo es aproximar las soluciones usando el método de Fourier. De nuevo supondremos que la solución sólo depende de ρ y t, y tomaremos ahora como condición frontera h(20, t) = 40.&lt;br /&gt;
Vamos a considerar el sistema de ecuaciones para h(ρ,t)=h(ρ,t)-40:&lt;br /&gt;
 &amp;lt;math&amp;gt; \left\{\begin{matrix}&lt;br /&gt;
\frac{\partial h}{\partial t} - D (\frac{1}{\rho}  \frac{\partial h}{\partial \rho} + \frac{\partial^2 h}{\partial \rho^2})= 0 &amp;amp; \rho \epsilon (0, 20) &amp;amp; \theta \epsilon (0, 2\Pi ) &amp;amp; t &amp;gt; 0 \\ &lt;br /&gt;
\frac{\partial h}{\partial \rho}(0,t) = 0;   h(20, t)= 0 \\ &lt;br /&gt;
\end{matrix}\right. &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Obtenemos el problema de autovalores asociado al sistema anterior con el método de separación de variables:&lt;br /&gt;
 &amp;lt;math&amp;gt; \left\{\begin{matrix}&lt;br /&gt;
D (\frac{X'(\rho)}{\rho} + X''(\rho))+ λX(\rho)=0 \\&lt;br /&gt;
X'(0) = 0;   X(20)= 0 \\ &lt;br /&gt;
&lt;br /&gt;
\end{matrix}\right. &amp;lt;/math&amp;gt;&lt;br /&gt;
[[Archivo:Marta1.jpg|marco|derecha]]&lt;br /&gt;
Sabemos que los problemas de esta forma tienen como solución la función de Bessel de primera especie que forma una familia de autofunciones: &amp;lt;math&amp;gt;Ψ(\rho)=J_0·(\rho\sqrt{λ})&amp;lt;/math&amp;gt;. Estas se anulan cuando &amp;lt;math&amp;gt;(\rho\sqrt{λ})&amp;lt;/math&amp;gt; se iguala a 2.4048, 5.5201, 8.6537, 11.7915 y 14.9309, siendo estos los 5 primeros ceros de la función de Bessel. De esta manera y tomando ρ=20 obtenemos los 5 primeros autovalores:&lt;br /&gt;
&amp;lt;math&amp;gt;(20\sqrt{λ})=2.4048&amp;lt;/math&amp;gt;Haciendo la operación anterior para los 5 ceros obtenemos los siguientes autovalores: 0.0145, 0.0762, 0.1872, 0.3476, 0.5573.&lt;br /&gt;
Ahora vamos a dibujar las 5 primeras autofunciones utilizando la función besselj:&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
a1=0.0145;&lt;br /&gt;
a2=0.0762;&lt;br /&gt;
a3=0.1872;&lt;br /&gt;
a4=0.3476;&lt;br /&gt;
a5=0.5575;&lt;br /&gt;
r=0:0.02:20;&lt;br /&gt;
F1=besselj(0,r.*(sqrt(a1))); &lt;br /&gt;
F2=besselj(0,r.*(sqrt(a2)));&lt;br /&gt;
F3=besselj(0,r.*(sqrt(a3)));&lt;br /&gt;
F4=besselj(0,r.*(sqrt(a4)));&lt;br /&gt;
F5=besselj(0,r.*(sqrt(a5)));&lt;br /&gt;
hold on&lt;br /&gt;
plot(r,F1)&lt;br /&gt;
plot(r,F2,'r')&lt;br /&gt;
plot(r,F3,'g')	&lt;br /&gt;
plot(r,F4,'c')&lt;br /&gt;
plot(r,F5,'y')&lt;br /&gt;
hold off&lt;br /&gt;
}}&lt;br /&gt;
[[Archivo:Marta2.jpg|marco|derecha]]&lt;br /&gt;
Aproximamos ahora la solución de la ecuación tomando como dato inicial es&amp;lt;math&amp;gt; h (\rho,0)= -log \frac{|\rho + 0.01|}{20.01} &amp;lt;/math&amp;gt; y usando 5 términos del desarrollo de Fourier, teniendo en cuenta que las autofunciones son ortogonales respecto al producto escalar: &amp;lt;math&amp;gt; (f(\rho),g(\rho)) = \int_{0}^{20} \rho f(\rho) g(\rho) \cdot dx &amp;lt;/math&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
x0=0; L=20;&lt;br /&gt;
c0=[2.4048,5.5201,8.6537,11.7915,14.9309]; %Vector de ceros de la función de Bessel&lt;br /&gt;
A=(c0./20).^2; %Vector de autovalores&lt;br /&gt;
K=5; %Número de términos del desarrollo de Fourier&lt;br /&gt;
x=x0:0.1:L;&lt;br /&gt;
N=length(x)-1;&lt;br /&gt;
J=zeros(N+1,K);&lt;br /&gt;
z=zeros(N+1,K);&lt;br /&gt;
t0=0; tf=500;&lt;br /&gt;
t=t0:0.1:tf;&lt;br /&gt;
[xx,tt]=meshgrid(x,t);&lt;br /&gt;
h=0;&lt;br /&gt;
for k=1:K&lt;br /&gt;
   z(:,k)=(x)'*sqrt(A(k));&lt;br /&gt;
   J(:,k)=besselj(0,z(:,k));&lt;br /&gt;
   h0=-log((abs(x+0.1))/20.01); %Condición inicial&lt;br /&gt;
   c(k)=trapz(x,x'.*h0'.*J(:,k))/trapz(x,x'.*J(:,k).*J(:,k)); %Coeficientes de Fourier&lt;br /&gt;
   h=h+c(k)*exp(-A(k)*t)'*J(:,k)';&lt;br /&gt;
end&lt;br /&gt;
surf(xx,tt,h)&lt;br /&gt;
title('Aproximación de la solución')&lt;br /&gt;
}}&lt;/div&gt;</summary>
		<author><name>Marta Cavero</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Nivel_piezom%C3%A9trico_de_un_acu%C3%ADfero_confinado_(A5)&amp;diff=30107</id>
		<title>Nivel piezométrico de un acuífero confinado (A5)</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Nivel_piezom%C3%A9trico_de_un_acu%C3%ADfero_confinado_(A5)&amp;diff=30107"/>
				<updated>2015-05-14T15:28:46Z</updated>
		
		<summary type="html">&lt;p&gt;Marta Cavero: /* Método de Fourier */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;br /&gt;
==== Introducción ====&lt;br /&gt;
&lt;br /&gt;
Consideramos un acuífero confinado entre dos capas de terreno impermeables horizontales. Llamaremos h(x, y) al nivel piezométrico del acuífero, definido por la altura que alcanzaría el agua si hiciéramos un sondeo en el punto (x, y). Obviamente este valor depende de la presión a la que se encuentra el agua confinada en el acuífero. Supondremos&lt;br /&gt;
que el acuífero es un medio poroso saturado de agua que ocupa una región infinita y está en equilibrio de manera que &amp;lt;math&amp;gt;h(x, y) = h_0&amp;lt;/math&amp;gt; constante para todo (x, y) ∈ &amp;lt;math&amp;gt;IR^{2}&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Sobre el acuifero se construye un pozo de sección circular y radio&amp;lt;math&amp;gt; ρ_0&amp;lt;/math&amp;gt; para extraer agua. La presencia del pozo hace que el nivel piezométrico cambie. Dada la simetría del problema podemos suponer que h(x, y) sólo va a depender de la distancia al pozo. Si tomamos coordenadas cilíndricas de forma que el eje OZ coincida con el eje de simetría del pozo, entonces h = h(ρ) donde &amp;lt;math&amp;gt;ρ = \sqrt{x^{2} + y^{2}}&amp;lt;/math&amp;gt; . Trabajaremos por tanto en coordenadas polares en el plano (ρ, θ).&lt;br /&gt;
&lt;br /&gt;
Las ecuaciones que permiten conocer h(ρ) son la ecuación de conservación de la masa:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; S = \frac{∂h}{∂t} + div q = 0 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
junto con la ley de Darcy&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; q = −K∇h &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
que es una ley experimental que modela el flujo de agua en un medio poroso. La ley de Darcy establece que el flujo de agua q a través de un medio poroso es proporcional a la diferencia de presión, que a su vez se puede escribir en términos del gradiente del nivel piezométrico en cada punto. La constante K se deduce experimentalmente para cada material y se conoce como la conductividad hidráulica o permeabilidad. Cuanto mayor es la constante K mayor es el flujo de agua provocado por un cambio&lt;br /&gt;
de presión. La ley de Darcy proporciona una buena aproximación del comportamiento del agua en un medio poroso siempre que este sea homogéneo e isótropo.&lt;br /&gt;
&lt;br /&gt;
La constante S en la ley de conservación de la masa se conoce como almacenamiento específico y se interpreta como la cantidad de agua que libera el acuífero al descender el nivel piezométrico en una unidad, por unidad de volumen.&lt;br /&gt;
&lt;br /&gt;
Combinando las ecuaciones de conservación de la masa con la ley de Darcy, obtenemos la ecuación:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \frac{∂h}{∂t} - D∆h = 0, ρ &amp;gt; ρ_0, θ ∈ (0, 2π), t &amp;gt; 0, (1) &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
donde D = K/S es la difusividad hidráulica que supondremos constante.&lt;br /&gt;
&lt;br /&gt;
==== Deducción de la fórmula ====&lt;br /&gt;
&lt;br /&gt;
En este apartado buscamos demostrar la ecuación (1) como combinación de la ecuación de conservación de masas y la Ley de Darcy.&lt;br /&gt;
&lt;br /&gt;
Por un lado sabemos que el laplaciaco equivale a la divergencia del gradiente: &lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; &lt;br /&gt;
(\Delta f = \nabla \cdot \nabla f = div \left (\nabla f) \right) &lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Por otro lado, sabemos que en coordenadas polares: &lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;x = ρ cos \theta \\&lt;br /&gt;
             y = ρ  sen \theta&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\bar{g_ρ } = cos \theta \bar{i} + sin \theta  \bar{j} \\&lt;br /&gt;
              \bar{g_\theta } = - ρ  sin \theta \bar{i} + ρ cos \theta \bar{j} &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;&lt;br /&gt;
G =&lt;br /&gt;
\left(&lt;br /&gt;
\begin{array}{cc}&lt;br /&gt;
1&amp;amp; 0 \\&lt;br /&gt;
0 &amp;amp; ρ ^{2} \\&lt;br /&gt;
\end{array}&lt;br /&gt;
\right);&lt;br /&gt;
\text {donde la raiz del determinante es} \sqrt{g} = ρ&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Como indica el enunciado, al sustituir la Ley de Darcy en la ecuación de conservación de la masa obtenemos y dividir entre S, teniendo en cuenta que el divergente del gradiente es el laplaciano como hemos indicado al principio de este apartado, obtenemos la ecuación (1): &amp;lt;math&amp;gt; \frac{∂h}{∂t} - \frac{k}{S}∆h = 0 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
En esta ecuación queda por desarrollar el Laplaciano de h. &lt;br /&gt;
Partiremos de la función h(ρ,θ), de la cual calcularemos primero el gradiente:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \nabla h = \frac{\partial h}{\partial \rho}\hat{\rho} + \frac{\partial h}{\partial \rho}\hat{\theta} =  \frac{\partial h}{\partial \rho}\bar{\rho} + \frac{1}{\rho^{2}} \frac{\partial h}{\partial \rho}\bar{\theta}  &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
teniendo en cuenta que &amp;lt;math&amp;gt;\bar{g^{i} } = \frac{\bar{g_i } }{ | \bar{g_i } | ^{2} } &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Ahora hacemos el divergente del gradiente anterior y obtenemos el Laplaciano en coordenadas polares:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;math&amp;gt;&lt;br /&gt;
 \Delta h = div(∇h) &lt;br /&gt;
= {1 \over \rho} {\partial \over \partial \rho}&lt;br /&gt;
  \left( \rho {\partial h \over \partial \rho} \right) &lt;br /&gt;
+ {1 \over \rho^2} {\partial^2 h \over \partial \theta^2}&lt;br /&gt;
= {1 \over \rho} {\partial h \over \partial \rho} &lt;br /&gt;
+ {\partial^2 h \over \partial \rho^2}&lt;br /&gt;
+ {1 \over \rho^2} {\partial^2 h \over \partial \theta^2}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Si consideramos que, debido a la simetría del problema, h sólo depende de su distancia al pozo, entonces obtenemos la función radial h(ρ), que nos permite simplificar el Laplaciano del modo siguiente:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;math&amp;gt;&lt;br /&gt;
 \Delta h = div(∇h) &lt;br /&gt;
= {1 \over \rho} {\partial h \over \partial \rho} &lt;br /&gt;
+ {\partial^2 h \over \partial \rho^2}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== Obtención de la ecuación====&lt;br /&gt;
&lt;br /&gt;
Para poder resolver la ecuación anterior y que el resultado sea único, hemos de establecer condiciones iniciales y de contorno.&lt;br /&gt;
&lt;br /&gt;
Las condiciones de contorno serán dos pues aparece la derivada segunda de la posición: &amp;lt;math&amp;gt; h(\rho_0 , t) = h_p \\&lt;br /&gt;
                                                                                                                                                                  h(20,t) = h_0 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
La condición inicial será única pues sólo aparece una derivada de primer orden en tiempo en nuestra ecuación: &amp;lt;math&amp;gt; h(\rho,0) = h_0 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
De este modo la ecuación resultante será:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \left\{\begin{matrix}&lt;br /&gt;
\frac{\partial h}{\partial t} - \frac{k}{s} (\frac{1}{\rho}  \frac{\partial h}{\partial \rho} + \frac{\partial^2 h}{\partial \rho^2})= 0 &amp;amp; \rho \epsilon (\rho_{0}, 2c) &amp;amp; \theta \epsilon (0, 2\Pi ) &amp;amp; t &amp;gt; 0 \\ &lt;br /&gt;
h(\rho_{0},t) = h_{p};   h(20, t)= h_{0} \\ &lt;br /&gt;
h(\rho, 0) = h_{0} &lt;br /&gt;
\end{matrix}\right. &amp;lt;/math&amp;gt; &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==== Resolución por método de diferencias finitas ====&lt;br /&gt;
&lt;br /&gt;
Suponiendo &amp;lt;math&amp;gt;ρ_0 =0.5m&amp;lt;/math&amp;gt;, &amp;lt;math&amp;gt;h_0 =45m&amp;lt;/math&amp;gt;, &amp;lt;math&amp;gt;hp =34&amp;lt;/math&amp;gt;, D=10−2, &amp;lt;math&amp;gt;(ρ,0)=h_0&amp;lt;/math&amp;gt;; y tomando  ∆ρ = 0.1 y ∆t = ∆ρ. Vamos a resolver la ecuación anterior por el método de diferencias finitas, usando el Método de Heun para realizar la aproximación en tiempo.&lt;br /&gt;
&lt;br /&gt;
Primero, sustituyendo los datos anteriores en la ecuación, llegamos a:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \left\{\begin{matrix}&lt;br /&gt;
\frac{\partial h}{\partial t} - 10^{2} (\frac{1}{\rho}  \frac{\partial h}{\partial \rho} + \frac{\partial^2 h}{\partial \rho^2})= 0 &amp;amp; \rho \epsilon (0.5, 20) &amp;amp; \theta \epsilon (0, 2\Pi ) &amp;amp; t &amp;gt; 0 \\ &lt;br /&gt;
h(0.5,t) = 34;   h(20, t)= 45 \\ &lt;br /&gt;
h(\rho, 0) = 45&lt;br /&gt;
\end{matrix}\right. &amp;lt;/math&amp;gt; &lt;br /&gt;
&lt;br /&gt;
Aplicando el método de las diferencias finitas llegamos al siguiente código:&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
&lt;br /&gt;
%TRPRIMERA FASE. ESPACIO&lt;br /&gt;
&lt;br /&gt;
a=0.5; b=20; %Condiciones de contorno&lt;br /&gt;
drho=0.1; N=(b-a)/drho; %División del intervalo&lt;br /&gt;
&lt;br /&gt;
rho=a+drho:drho:b-drho; %Sólo nodos interiores&lt;br /&gt;
&lt;br /&gt;
%Creamos las matrices&lt;br /&gt;
&lt;br /&gt;
L=diag(ones(1,N-2),1)-diag(ones(1,N-2),-1);&lt;br /&gt;
A=diag(1./rho);&lt;br /&gt;
L=10^(-2)*(1/(2*drho))*A*L;&lt;br /&gt;
&lt;br /&gt;
K=-2*diag(ones(1,N-1))+diag(ones(1,N-2),1)+diag(ones(1,N-2),-1);&lt;br /&gt;
K=10^(-2)*(1/drho^2)*K; &lt;br /&gt;
&lt;br /&gt;
F=zeros(N-1,1);&lt;br /&gt;
F(1,1)=10^(-2)*(-17/(rho(1)*drho)+34/drho^2);&lt;br /&gt;
F(N-1,1)=10^(-2)*(45/(rho(N-1)*2*drho)+45/drho^2);&lt;br /&gt;
&lt;br /&gt;
%SEGUDA FASE. TIEMPO&lt;br /&gt;
&lt;br /&gt;
H=ones(1,length(rho)); H=H*45; H=H';&lt;br /&gt;
dt=drho; T=10; t=0:dt:T;&lt;br /&gt;
h0=34; hN=45;&lt;br /&gt;
sol=[h0 H' hN];&lt;br /&gt;
&lt;br /&gt;
for j=1:length(t)-1 &lt;br /&gt;
    &lt;br /&gt;
    %Método de Heun&lt;br /&gt;
    k1=F+(K+L)*H;&lt;br /&gt;
    k2=F+(K+L)*(H+k1*dt);&lt;br /&gt;
    H=H+(dt/2)*(k1+k2);&lt;br /&gt;
 &lt;br /&gt;
    sol(j+1,:)=[h0 H' hN]; %Salvamos las solución, incluimos los extremos&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
rho1=a:drho:b; %Incluimos los nodos exteriores&lt;br /&gt;
&lt;br /&gt;
[rr,tt]=meshgrid(rho1,t);&lt;br /&gt;
surf(rr,tt,sol); %Dibujamos la solución&lt;br /&gt;
title('Nivel Piezométrico. Método Diferencias finitas con Heun en tiempo.')&lt;br /&gt;
xlabel('Distancia radial al centro del pozo.')&lt;br /&gt;
ylabel('Tiempo.')&lt;br /&gt;
zlabel('Nivel piezométrico.')&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
Mediante este código obtenemos la siguiente gráfica:&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Grafica npiezometrico.jpg|500px|thumb|best|Gráfica Nivel Piezométrico aproximada con el Método de Diferencias Finitas con Heun en tiempo.]]&lt;br /&gt;
&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Ahora dibujaremos la gráfica mediante los métodos de Euler implícito y trapecio y compararemos los resultados obtenidos.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Sobre el programa anterior cambiaremos las líneas correspondientes al método de Heun.&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* Método de Euler implícito:&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;math&amp;gt; \left\{\begin{matrix}&lt;br /&gt;
y_{0}\\&lt;br /&gt;
y_{n+1}=y_{n} + hf(t_{n+1},y_{n+1})\\&lt;br /&gt;
\end{matrix}\right. &amp;lt;/math&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
&lt;br /&gt;
for j=1:length(t)-1 &lt;br /&gt;
    &lt;br /&gt;
    %Método de Euler implícito&lt;br /&gt;
    &lt;br /&gt;
    H=(eye(N-1)-dt*(K+L))\(H+(F*dt)); &lt;br /&gt;
 &lt;br /&gt;
    sol(j+1,:)=[h0 H' hN]; %Salvamos las solución, incluimos los extremos&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
rho1=a:drho:b; %Incluimos los nodos exteriores&lt;br /&gt;
&lt;br /&gt;
[rr,tt]=meshgrid(rho1,t);&lt;br /&gt;
surf(rr,tt,sol); %Dibujamos la solución&lt;br /&gt;
title('Nivel Piezométrico. Método Diferencias finitas con Euler en tiempo.')&lt;br /&gt;
xlabel('Distancia radial al centro del pozo.')&lt;br /&gt;
ylabel('Tiempo.')&lt;br /&gt;
zlabel('Nivel piezométrico.')&lt;br /&gt;
&lt;br /&gt;
}}&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* Método del Trapecio:&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;math&amp;gt; \left\{\begin{matrix}&lt;br /&gt;
y_{0}\\&lt;br /&gt;
y_{n+1}=y_{n} + \frac{h}{2}f((t_{n},y_{n}+f(t_{n+1},y_{n+1}))\\&lt;br /&gt;
\end{matrix}\right. &amp;lt;/math&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
for j=1:length(t)-1 &lt;br /&gt;
    &lt;br /&gt;
    %Método del trapecio&lt;br /&gt;
    k1=F+(K+L)*H;&lt;br /&gt;
    k2=F+(K+L)*(H+k1*dt); &lt;br /&gt;
    H=(eye(N-1)-(dt/2)*(K+L))\(H+dt*F+(dt/2)*(K+L)*H);&lt;br /&gt;
 &lt;br /&gt;
    sol(j+1,:)=[h0 H' hN]; %Salvamos las solución, incluimos los extremos&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
rho1=a:drho:b; %Incluimos los nodos exteriores&lt;br /&gt;
&lt;br /&gt;
[rr,tt]=meshgrid(rho1,t);&lt;br /&gt;
surf(rr,tt,sol); %Dibujamos la solución&lt;br /&gt;
title('Nivel Piezométrico. Método Diferencias finitas con trapecio en tiempo.')&lt;br /&gt;
xlabel('Distancia radial al centro del pozo.')&lt;br /&gt;
ylabel('Tiempo.')&lt;br /&gt;
zlabel('Nivel piezométrico.')&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
Como podemos ver a continuación las tres gráficas resultantes son prácticamente iguales por lo que los tres métodos hacen una aproximación similar.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
[[Archivo:Trapecio12.png|500px|thumb|right|Gráfica Nivel Piezométrico aproximada con el Método de Diferencias Finitas con Trapecio en tiempo.]]&lt;br /&gt;
[[Archivo:Euler12.png|500px|thumb|right|Gráfica Nivel Piezométrico aproximada con el Método de Diferencias Finitas con Euler Implícito en tiempo.]]&lt;br /&gt;
&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== Comportamiento del nivel piezométrico con &amp;lt;math&amp;gt; \rho &amp;lt;/math&amp;gt; constante ====&lt;br /&gt;
&lt;br /&gt;
Ahora supondremos que &amp;lt;math&amp;gt; \rho &amp;lt;/math&amp;gt; es constante y que su valor es 2 y dibujaremos el comportamiento del nivel piezométrico en una gráfica 2D nivel piezométrico-tiempo.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Nuevamente utilizando el programa anterior con el  método de Heun:&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Rho2.png|500px|thumb|best|Gráfica Nivel Piezométrico-tiempo para &amp;lt;math&amp;gt; \rho =2 &amp;lt;/math&amp;gt; para T=10.]]&lt;br /&gt;
[[Archivo:Rho1000.png|500px|thumb|best|Gráfica Nivel Piezométrico-tiempo para &amp;lt;math&amp;gt; \rho =2 &amp;lt;/math&amp;gt; para T=1000.]]&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
&lt;br /&gt;
%PRIMERA FASE. ESPACIO&lt;br /&gt;
&lt;br /&gt;
a=0.5; b=20; %Condiciones de contorno&lt;br /&gt;
drho=0.1; N=(b-a)/drho; %División del intervalo&lt;br /&gt;
&lt;br /&gt;
rho=a+drho:drho:b-drho; %Sólo nodos interiores&lt;br /&gt;
&lt;br /&gt;
%Creamos las matrices&lt;br /&gt;
&lt;br /&gt;
L=diag(ones(1,N-2),1)-diag(ones(1,N-2),-1);&lt;br /&gt;
A=diag(1./rho);&lt;br /&gt;
L=10^(-2)*(1/(2*drho))*A*L;&lt;br /&gt;
&lt;br /&gt;
K=-2*diag(ones(1,N-1))+diag(ones(1,N-2),1)+diag(ones(1,N-2),-1);&lt;br /&gt;
K=10^(-2)*(1/drho^2)*K; &lt;br /&gt;
&lt;br /&gt;
F=zeros(N-1,1);&lt;br /&gt;
F(1,1)=10^(-2)*(-17/(rho(1)*drho)+34/drho^2);&lt;br /&gt;
F(N-1,1)=10^(-2)*(45/(rho(N-1)*2*drho)+45/drho^2);&lt;br /&gt;
&lt;br /&gt;
%SEGUDA FASE. TIEMPO&lt;br /&gt;
&lt;br /&gt;
H=ones(1,length(rho)); H=H*45; H=H';&lt;br /&gt;
dt=drho; &lt;br /&gt;
T=10 &lt;br /&gt;
%Comprobamos también la solución para un tiempo mayor &lt;br /&gt;
%T=1000&lt;br /&gt;
t=0:dt:T;&lt;br /&gt;
h0=34; hN=45;&lt;br /&gt;
sol=[h0 H' hN];&lt;br /&gt;
&lt;br /&gt;
for j=1:length(t)-1 &lt;br /&gt;
    &lt;br /&gt;
    %Método de Heun&lt;br /&gt;
    k1=F+(K+L)*H;&lt;br /&gt;
    k2=F+(K+L)*(H+k1*dt);&lt;br /&gt;
    H=H+(dt/2)*(k1+k2);&lt;br /&gt;
 &lt;br /&gt;
    sol(j+1,:)=[h0 H' hN]; %Salvamos las solución, incluimos los extremos&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
rho1=a:drho:b; %Incluimos los nodos exteriores&lt;br /&gt;
&lt;br /&gt;
m=sol(:,rho==2); %Vector que incluye la solución en tiempo para rho=2&lt;br /&gt;
&lt;br /&gt;
plot(t,m);&lt;br /&gt;
&lt;br /&gt;
title('Comportamiento del nivel piezométrico en el tiempo para p=2')&lt;br /&gt;
xlabel('Tiempo')&lt;br /&gt;
ylabel('Nivel piezométrico.')&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
La primera gráfica muestra que para tiempos pequeños la variación del nivel piezométrico es muy pequeña (del orden de 0,10/0,15 m), aún así como observamos en la segunda gráfica a medida que avanzamos en el tiempo la variación del nivel disminuye aún más ya que la curva está cada vez menos inclinada.&lt;br /&gt;
&lt;br /&gt;
==== Variación del nivel piezométrico en tiempos grandes ====&lt;br /&gt;
Ahora vamos a comprobar que la variación del nivel piezométrico para tiempos elevados (T=5000) es mínima.&lt;br /&gt;
Para ello dibujaremos las soluciones cada 100 horas de en el intervalo temporal [1; 5000], en&lt;br /&gt;
una misma gráfica.&lt;br /&gt;
[[Archivo:Tiemposg2.png|marco|derecha|Nivel piezométrico para tiempos grandes]]&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
%PRIMERA FASE. ESPACIO&lt;br /&gt;
&lt;br /&gt;
a=0.5; b=20; %Condiciones de contorno&lt;br /&gt;
drho=0.1; N=(b-a)/drho; %División del intervalo&lt;br /&gt;
&lt;br /&gt;
rho=a+drho:drho:b-drho; %Sólo nodos interiores&lt;br /&gt;
&lt;br /&gt;
%Creamos las matrices&lt;br /&gt;
&lt;br /&gt;
L=diag(ones(1,N-2),1)-diag(ones(1,N-2),-1);&lt;br /&gt;
A=diag(1./rho);&lt;br /&gt;
L=10^(-2)*(1/(2*drho))*A*L;&lt;br /&gt;
&lt;br /&gt;
K=-2*diag(ones(1,N-1))+diag(ones(1,N-2),1)+diag(ones(1,N-2),-1);&lt;br /&gt;
K=10^(-2)*(1/drho^2)*K; &lt;br /&gt;
&lt;br /&gt;
F=zeros(N-1,1);&lt;br /&gt;
F(1,1)=10^(-2)*(-17/(rho(1)*drho)+34/drho^2);&lt;br /&gt;
F(N-1,1)=10^(-2)*(45/(rho(N-1)*2*drho)+45/drho^2);&lt;br /&gt;
&lt;br /&gt;
%SEGUDA FASE. TIEMPO&lt;br /&gt;
&lt;br /&gt;
H=ones(1,length(rho)); H=H*45; H=H';&lt;br /&gt;
dt=0.1; T=5000; t=0:dt:T;&lt;br /&gt;
h0=34; hN=45;&lt;br /&gt;
sol=[h0 H' hN];&lt;br /&gt;
&lt;br /&gt;
figure(1);&lt;br /&gt;
hold on;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
for j=1:length(t)-1 &lt;br /&gt;
    &lt;br /&gt;
    %Método de Heun&lt;br /&gt;
    k1=F+(K+L)*H;&lt;br /&gt;
    k2=F+(K+L)*(H+k1*dt);&lt;br /&gt;
    H=H+(dt/2)*(k1+k2);&lt;br /&gt;
 &lt;br /&gt;
    sol(j+1,:)=[h0 H' hN]; %Salvamos las solución, incluimos los extremos&lt;br /&gt;
    &lt;br /&gt;
 if rem(t(j),100)==0; &lt;br /&gt;
    &lt;br /&gt;
    rho1=a:drho:b; %Incluimos los nodos exteriores&lt;br /&gt;
  &lt;br /&gt;
  plot(rho1,sol(j,:)) %pintamos la solución cada 100 horas&lt;br /&gt;
  &lt;br /&gt;
  title('Variación del nivel piezométrico para tiempos grandes')&lt;br /&gt;
  pause(1)&lt;br /&gt;
&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
end&lt;br /&gt;
}}&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Como se puede observar en la gráfica según vamos avanzando en el tiempo las curvas están más juntas lo que quiere decir que la variación del nivel es cada vez menor aproximándose a un régimen estacionario.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Trabajo21.jpg|marco|derecha|Nivel piezométrico estacionario]]&lt;br /&gt;
&lt;br /&gt;
====Problema estacionario====&lt;br /&gt;
Como hemos visto en el apartado anterior para tiempos grandes el nivel piezométrico se mantiene practicamente constante a lo largo del tiempo, esto es debido a que se establece un equilibrio entre el caudal de agua extraida del acuifero y la migración de aguas desde los puntos más alejados del pozo hacia este.&lt;br /&gt;
Por lo tanto se verifica que:&lt;br /&gt;
 &amp;lt;math&amp;gt;\frac{\partial h}{\partial t}=0&amp;lt;/math&amp;gt;&lt;br /&gt;
Y por lo tanto el nivel piezométrico se puede aproximar por:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \left\{\begin{matrix}&lt;br /&gt;
- \frac{k}{s} (\frac{1}{\rho}  \frac{\partial h}{\partial \rho} + \frac{\partial^2 h}{\partial \rho^2})= 0 &amp;amp; \rho \epsilon (1, 20) &amp;amp; \theta \epsilon (0, 2\Pi ) &amp;amp; 0 &amp;lt; t &amp;lt; 5000 \\ &lt;br /&gt;
h(1,t) = 35;    h(20, t)= 40 \\ &lt;br /&gt;
h(\rho, 0) = 40 &lt;br /&gt;
\end{matrix}\right. &amp;lt;/math&amp;gt;&lt;br /&gt;
Resolvemos por diferencias finitas:&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
    %datos&lt;br /&gt;
    t=5000;&lt;br /&gt;
    l=20;&lt;br /&gt;
    D=0.01;&lt;br /&gt;
    hp=35;&lt;br /&gt;
    ho=40;&lt;br /&gt;
    %discretización&lt;br /&gt;
    s=0.1;&lt;br /&gt;
    x0=1;&lt;br /&gt;
    x=x0:s:l;&lt;br /&gt;
    xint=x0+s:s:l-s;&lt;br /&gt;
    N=length(x)-2; &lt;br /&gt;
    %construimos las matrices para el método de las diferencias finitas&lt;br /&gt;
    K=(1/s^2)*(diag(2*ones(1,N))-diag(ones(1,N-1),1)-diag(ones(1,N-1),-1));&lt;br /&gt;
    A=(1/(s*2))*(diag(ones(1,N-1),1)-diag(ones(1,N-1),-1));&lt;br /&gt;
    A=diag(1./xint)*A;&lt;br /&gt;
    h0=(40*ones(N,1));&lt;br /&gt;
    dt=200; &lt;br /&gt;
    t=0:dt:t;&lt;br /&gt;
    M=length(t)-1;&lt;br /&gt;
    F=(zeros(N,1));&lt;br /&gt;
    F(1)=D*((hp/s^2)-(hp/(2*s)*1/xint(1)));&lt;br /&gt;
    F(N)=D*((ho/s^2)+ho/(s*2*xint(N)));&lt;br /&gt;
    H(1,:)=[40;h0;40]'; &lt;br /&gt;
    h=h0;&lt;br /&gt;
    for n=1:M&lt;br /&gt;
      h=(D)*(K-A)\((F)); %utilizamos el comando backslash para resolver el sistema de ecuaciones&lt;br /&gt;
      H(n+1,:)=[hp h' ho];&lt;br /&gt;
    end&lt;br /&gt;
    %mallado y representación&lt;br /&gt;
    [X,T]=meshgrid(x,t);&lt;br /&gt;
    surf(X,T,H)&lt;br /&gt;
    xlabel('Distancia (metros)');&lt;br /&gt;
    ylabel('Tiempo (horas)');&lt;br /&gt;
    zlabel('Nivel piezométrico (metros)')&lt;br /&gt;
}}&lt;br /&gt;
Efectivamente, como podemos comprobar en la gráfica, la solución es independiente del tiempo salvo para tiempos pequeños en los cuales no queda muy bien definida&lt;br /&gt;
&lt;br /&gt;
====Capacidad de recuperación del acuífero====&lt;br /&gt;
En este apartado queremos calcular una ley que nos describa el comportamiento del acuífero e el caso de que impermeabilizásemos las paredes del pozo partiendo del estado estacionario anterior, esto significaría que el fujo de agua en los bordes del pozo sería nulo y el nivel piezométrico iría variando hasta llegar a otro estado estacionario.&lt;br /&gt;
El estado estacionarioque tenderá a alcanzar el fluido será el inicial, ya que al impermeabilizar las paredes volvemos al caso del acuífero confinado y por ello es nivel piezométrico quedará constante a lo largo del tiempo y de la extensión del acuífero.&lt;br /&gt;
La condición frontera a imponer será que el flujo de agua en r0 será 0, ya que estará impermeabilizado. Esto lo podemos plasmar diciendo que la parcial del nivel piezométrico con respecto a ro en r0 es 0, ya que un aislamiento impide el flujo de líquido, y si el flujo de líquido es nulo el nivel piezométrico no varía.&lt;br /&gt;
&amp;lt;math&amp;gt;\frac{\partial h}{\partial \rho}=0&amp;lt;/math&amp;gt;&lt;br /&gt;
====Método de Fourier====&lt;br /&gt;
Ahora suponemos que el radio del pozo es despreciable y que una vez extraido el agua el pozo se cierra quedando el acuifero de nuevo homogéneo. En este caso tomaremos la región ρ &amp;lt; 20. Nuestro objetivo es aproximar las soluciones usando el método de Fourier. De nuevo supondremos que la solución sólo depende de ρ y t, y tomaremos ahora como condición frontera h(20, t) = 40.&lt;br /&gt;
Vamos a considerar el sistema de ecuaciones para h(ρ,t)=h(ρ,t)-40:&lt;br /&gt;
 &amp;lt;math&amp;gt; \left\{\begin{matrix}&lt;br /&gt;
\frac{\partial h}{\partial t} - D (\frac{1}{\rho}  \frac{\partial h}{\partial \rho} + \frac{\partial^2 h}{\partial \rho^2})= 0 &amp;amp; \rho \epsilon (0, 20) &amp;amp; \theta \epsilon (0, 2\Pi ) &amp;amp; t &amp;gt; 0 \\ &lt;br /&gt;
\frac{\partial h}{\partial \rho}(0,t) = 0;   h(20, t)= 0 \\ &lt;br /&gt;
\end{matrix}\right. &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Obtenemos el problema de autovalores asociado al sistema anterior con el método de separación de variables:&lt;br /&gt;
 &amp;lt;math&amp;gt; \left\{\begin{matrix}&lt;br /&gt;
D (\frac{X'(\rho)}{\rho} + X''(\rho))+ λX(\rho)=0 \\&lt;br /&gt;
X'(0) = 0;   X(20)= 0 \\ &lt;br /&gt;
&lt;br /&gt;
\end{matrix}\right. &amp;lt;/math&amp;gt;&lt;br /&gt;
[[Archivo:Marta1.jpg|marco|derecha]]&lt;br /&gt;
Sabemos que los problemas de esta forma tienen como solución la función de Bessel de primera especie que forma una familia de autofunciones: &amp;lt;math&amp;gt;Ψ(\rho)=J_0·(\rho\sqrt{λ})&amp;lt;/math&amp;gt;. Estas se anulan cuando &amp;lt;math&amp;gt;(\rho\sqrt{λ})&amp;lt;/math&amp;gt; se iguala a 2.4048, 5.5201, 8.6537, 11.7915 y 14.9309, siendo estos los 5 primeros ceros de la función de Bessel. De esta manera y tomando ρ=20 obtenemos los 5 primeros autovalores:&lt;br /&gt;
&amp;lt;math&amp;gt;(20\sqrt{λ})=2.4048&amp;lt;/math&amp;gt;Haciendo la operación anterior para los 5 ceros obtenemos los siguientes autovalores: 0.0145, 0.0762, 0.1872, 0.3476, 0.5573.&lt;br /&gt;
Ahora vamos a dibujar las 5 primeras autofunciones utilizando la función besselj:&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
a1=0.0145;&lt;br /&gt;
a2=0.0762;&lt;br /&gt;
a3=0.1872;&lt;br /&gt;
a4=0.3476;&lt;br /&gt;
a5=0.5575;&lt;br /&gt;
r=0:0.02:20;&lt;br /&gt;
F1=besselj(0,r.*(sqrt(a1))); &lt;br /&gt;
F2=besselj(0,r.*(sqrt(a2)));&lt;br /&gt;
F3=besselj(0,r.*(sqrt(a3)));&lt;br /&gt;
F4=besselj(0,r.*(sqrt(a4)));&lt;br /&gt;
F5=besselj(0,r.*(sqrt(a5)));&lt;br /&gt;
hold on&lt;br /&gt;
plot(r,F1)&lt;br /&gt;
plot(r,F2,'r')&lt;br /&gt;
plot(r,F3,'g')	&lt;br /&gt;
plot(r,F4,'c')&lt;br /&gt;
plot(r,F5,'y')&lt;br /&gt;
hold off&lt;br /&gt;
}}&lt;br /&gt;
[[Archivo:Marta2.jpg|marco|derecha]]&lt;br /&gt;
Aproximamos ahora la solución de la ecuación tomando como dato inicial es&amp;lt;math&amp;gt; h (\rho,0)= -log \frac{|\rho + 0.01|}{20.01} &amp;lt;/math&amp;gt; y usando 5 términos del desarrollo de Fourier, teniendo en cuenta que las autofunciones son ortogonales respecto al producto escalar: &amp;lt;math&amp;gt; (f(\rho),g(\rho)) = \int_{0}^{20} \rho f(\rho) g(\rho) \cdot dx &amp;lt;/math&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
x0=0; L=20;&lt;br /&gt;
c0=[2.4048,5.5201,8.6537,11.7915,14.9309]; %Vector de ceros de la función de Bessel&lt;br /&gt;
A=(c0./20).^2; %Vector de autovalores&lt;br /&gt;
K=5; %Número de términos del desarrollo de Fourier&lt;br /&gt;
x=x0:0.1:L;&lt;br /&gt;
N=length(x)-1;&lt;br /&gt;
J=zeros(N+1,K);&lt;br /&gt;
z=zeros(N+1,K);&lt;br /&gt;
t0=0; tf=500;&lt;br /&gt;
t=t0:0.1:tf;&lt;br /&gt;
[xx,tt]=meshgrid(x,t);&lt;br /&gt;
h=0;&lt;br /&gt;
for k=1:K&lt;br /&gt;
   z(:,k)=(x)'*sqrt(A(k));&lt;br /&gt;
   J(:,k)=besselj(0,z(:,k));&lt;br /&gt;
   h0=-log((abs(x+0.1))/20.01); %Condición inicial&lt;br /&gt;
   c(k)=trapz(x,x'.*h0'.*J(:,k))/trapz(x,x'.*J(:,k).*J(:,k)); %Coeficientes de Fourier&lt;br /&gt;
   h=h+c(k)*exp(-A(k)*t)'*J(:,k)';&lt;br /&gt;
end&lt;br /&gt;
surf(xx,tt,h)&lt;br /&gt;
title('Aproximación de la solución')&lt;br /&gt;
}}&lt;/div&gt;</summary>
		<author><name>Marta Cavero</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Nivel_piezom%C3%A9trico_de_un_acu%C3%ADfero_confinado_(A5)&amp;diff=30104</id>
		<title>Nivel piezométrico de un acuífero confinado (A5)</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Nivel_piezom%C3%A9trico_de_un_acu%C3%ADfero_confinado_(A5)&amp;diff=30104"/>
				<updated>2015-05-14T15:27:38Z</updated>
		
		<summary type="html">&lt;p&gt;Marta Cavero: /* Variación del nivel piezométrico en tiempos grandes */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;br /&gt;
==== Introducción ====&lt;br /&gt;
&lt;br /&gt;
Consideramos un acuífero confinado entre dos capas de terreno impermeables horizontales. Llamaremos h(x, y) al nivel piezométrico del acuífero, definido por la altura que alcanzaría el agua si hiciéramos un sondeo en el punto (x, y). Obviamente este valor depende de la presión a la que se encuentra el agua confinada en el acuífero. Supondremos&lt;br /&gt;
que el acuífero es un medio poroso saturado de agua que ocupa una región infinita y está en equilibrio de manera que &amp;lt;math&amp;gt;h(x, y) = h_0&amp;lt;/math&amp;gt; constante para todo (x, y) ∈ &amp;lt;math&amp;gt;IR^{2}&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Sobre el acuifero se construye un pozo de sección circular y radio&amp;lt;math&amp;gt; ρ_0&amp;lt;/math&amp;gt; para extraer agua. La presencia del pozo hace que el nivel piezométrico cambie. Dada la simetría del problema podemos suponer que h(x, y) sólo va a depender de la distancia al pozo. Si tomamos coordenadas cilíndricas de forma que el eje OZ coincida con el eje de simetría del pozo, entonces h = h(ρ) donde &amp;lt;math&amp;gt;ρ = \sqrt{x^{2} + y^{2}}&amp;lt;/math&amp;gt; . Trabajaremos por tanto en coordenadas polares en el plano (ρ, θ).&lt;br /&gt;
&lt;br /&gt;
Las ecuaciones que permiten conocer h(ρ) son la ecuación de conservación de la masa:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; S = \frac{∂h}{∂t} + div q = 0 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
junto con la ley de Darcy&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; q = −K∇h &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
que es una ley experimental que modela el flujo de agua en un medio poroso. La ley de Darcy establece que el flujo de agua q a través de un medio poroso es proporcional a la diferencia de presión, que a su vez se puede escribir en términos del gradiente del nivel piezométrico en cada punto. La constante K se deduce experimentalmente para cada material y se conoce como la conductividad hidráulica o permeabilidad. Cuanto mayor es la constante K mayor es el flujo de agua provocado por un cambio&lt;br /&gt;
de presión. La ley de Darcy proporciona una buena aproximación del comportamiento del agua en un medio poroso siempre que este sea homogéneo e isótropo.&lt;br /&gt;
&lt;br /&gt;
La constante S en la ley de conservación de la masa se conoce como almacenamiento específico y se interpreta como la cantidad de agua que libera el acuífero al descender el nivel piezométrico en una unidad, por unidad de volumen.&lt;br /&gt;
&lt;br /&gt;
Combinando las ecuaciones de conservación de la masa con la ley de Darcy, obtenemos la ecuación:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \frac{∂h}{∂t} - D∆h = 0, ρ &amp;gt; ρ_0, θ ∈ (0, 2π), t &amp;gt; 0, (1) &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
donde D = K/S es la difusividad hidráulica que supondremos constante.&lt;br /&gt;
&lt;br /&gt;
==== Deducción de la fórmula ====&lt;br /&gt;
&lt;br /&gt;
En este apartado buscamos demostrar la ecuación (1) como combinación de la ecuación de conservación de masas y la Ley de Darcy.&lt;br /&gt;
&lt;br /&gt;
Por un lado sabemos que el laplaciaco equivale a la divergencia del gradiente: &lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; &lt;br /&gt;
(\Delta f = \nabla \cdot \nabla f = div \left (\nabla f) \right) &lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Por otro lado, sabemos que en coordenadas polares: &lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;x = ρ cos \theta \\&lt;br /&gt;
             y = ρ  sen \theta&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\bar{g_ρ } = cos \theta \bar{i} + sin \theta  \bar{j} \\&lt;br /&gt;
              \bar{g_\theta } = - ρ  sin \theta \bar{i} + ρ cos \theta \bar{j} &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;&lt;br /&gt;
G =&lt;br /&gt;
\left(&lt;br /&gt;
\begin{array}{cc}&lt;br /&gt;
1&amp;amp; 0 \\&lt;br /&gt;
0 &amp;amp; ρ ^{2} \\&lt;br /&gt;
\end{array}&lt;br /&gt;
\right);&lt;br /&gt;
\text {donde la raiz del determinante es} \sqrt{g} = ρ&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Como indica el enunciado, al sustituir la Ley de Darcy en la ecuación de conservación de la masa obtenemos y dividir entre S, teniendo en cuenta que el divergente del gradiente es el laplaciano como hemos indicado al principio de este apartado, obtenemos la ecuación (1): &amp;lt;math&amp;gt; \frac{∂h}{∂t} - \frac{k}{S}∆h = 0 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
En esta ecuación queda por desarrollar el Laplaciano de h. &lt;br /&gt;
Partiremos de la función h(ρ,θ), de la cual calcularemos primero el gradiente:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \nabla h = \frac{\partial h}{\partial \rho}\hat{\rho} + \frac{\partial h}{\partial \rho}\hat{\theta} =  \frac{\partial h}{\partial \rho}\bar{\rho} + \frac{1}{\rho^{2}} \frac{\partial h}{\partial \rho}\bar{\theta}  &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
teniendo en cuenta que &amp;lt;math&amp;gt;\bar{g^{i} } = \frac{\bar{g_i } }{ | \bar{g_i } | ^{2} } &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Ahora hacemos el divergente del gradiente anterior y obtenemos el Laplaciano en coordenadas polares:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;math&amp;gt;&lt;br /&gt;
 \Delta h = div(∇h) &lt;br /&gt;
= {1 \over \rho} {\partial \over \partial \rho}&lt;br /&gt;
  \left( \rho {\partial h \over \partial \rho} \right) &lt;br /&gt;
+ {1 \over \rho^2} {\partial^2 h \over \partial \theta^2}&lt;br /&gt;
= {1 \over \rho} {\partial h \over \partial \rho} &lt;br /&gt;
+ {\partial^2 h \over \partial \rho^2}&lt;br /&gt;
+ {1 \over \rho^2} {\partial^2 h \over \partial \theta^2}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Si consideramos que, debido a la simetría del problema, h sólo depende de su distancia al pozo, entonces obtenemos la función radial h(ρ), que nos permite simplificar el Laplaciano del modo siguiente:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;math&amp;gt;&lt;br /&gt;
 \Delta h = div(∇h) &lt;br /&gt;
= {1 \over \rho} {\partial h \over \partial \rho} &lt;br /&gt;
+ {\partial^2 h \over \partial \rho^2}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== Obtención de la ecuación====&lt;br /&gt;
&lt;br /&gt;
Para poder resolver la ecuación anterior y que el resultado sea único, hemos de establecer condiciones iniciales y de contorno.&lt;br /&gt;
&lt;br /&gt;
Las condiciones de contorno serán dos pues aparece la derivada segunda de la posición: &amp;lt;math&amp;gt; h(\rho_0 , t) = h_p \\&lt;br /&gt;
                                                                                                                                                                  h(20,t) = h_0 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
La condición inicial será única pues sólo aparece una derivada de primer orden en tiempo en nuestra ecuación: &amp;lt;math&amp;gt; h(\rho,0) = h_0 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
De este modo la ecuación resultante será:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \left\{\begin{matrix}&lt;br /&gt;
\frac{\partial h}{\partial t} - \frac{k}{s} (\frac{1}{\rho}  \frac{\partial h}{\partial \rho} + \frac{\partial^2 h}{\partial \rho^2})= 0 &amp;amp; \rho \epsilon (\rho_{0}, 2c) &amp;amp; \theta \epsilon (0, 2\Pi ) &amp;amp; t &amp;gt; 0 \\ &lt;br /&gt;
h(\rho_{0},t) = h_{p};   h(20, t)= h_{0} \\ &lt;br /&gt;
h(\rho, 0) = h_{0} &lt;br /&gt;
\end{matrix}\right. &amp;lt;/math&amp;gt; &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==== Resolución por método de diferencias finitas ====&lt;br /&gt;
&lt;br /&gt;
Suponiendo &amp;lt;math&amp;gt;ρ_0 =0.5m&amp;lt;/math&amp;gt;, &amp;lt;math&amp;gt;h_0 =45m&amp;lt;/math&amp;gt;, &amp;lt;math&amp;gt;hp =34&amp;lt;/math&amp;gt;, D=10−2, &amp;lt;math&amp;gt;(ρ,0)=h_0&amp;lt;/math&amp;gt;; y tomando  ∆ρ = 0.1 y ∆t = ∆ρ. Vamos a resolver la ecuación anterior por el método de diferencias finitas, usando el Método de Heun para realizar la aproximación en tiempo.&lt;br /&gt;
&lt;br /&gt;
Primero, sustituyendo los datos anteriores en la ecuación, llegamos a:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \left\{\begin{matrix}&lt;br /&gt;
\frac{\partial h}{\partial t} - 10^{2} (\frac{1}{\rho}  \frac{\partial h}{\partial \rho} + \frac{\partial^2 h}{\partial \rho^2})= 0 &amp;amp; \rho \epsilon (0.5, 20) &amp;amp; \theta \epsilon (0, 2\Pi ) &amp;amp; t &amp;gt; 0 \\ &lt;br /&gt;
h(0.5,t) = 34;   h(20, t)= 45 \\ &lt;br /&gt;
h(\rho, 0) = 45&lt;br /&gt;
\end{matrix}\right. &amp;lt;/math&amp;gt; &lt;br /&gt;
&lt;br /&gt;
Aplicando el método de las diferencias finitas llegamos al siguiente código:&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
&lt;br /&gt;
%TRPRIMERA FASE. ESPACIO&lt;br /&gt;
&lt;br /&gt;
a=0.5; b=20; %Condiciones de contorno&lt;br /&gt;
drho=0.1; N=(b-a)/drho; %División del intervalo&lt;br /&gt;
&lt;br /&gt;
rho=a+drho:drho:b-drho; %Sólo nodos interiores&lt;br /&gt;
&lt;br /&gt;
%Creamos las matrices&lt;br /&gt;
&lt;br /&gt;
L=diag(ones(1,N-2),1)-diag(ones(1,N-2),-1);&lt;br /&gt;
A=diag(1./rho);&lt;br /&gt;
L=10^(-2)*(1/(2*drho))*A*L;&lt;br /&gt;
&lt;br /&gt;
K=-2*diag(ones(1,N-1))+diag(ones(1,N-2),1)+diag(ones(1,N-2),-1);&lt;br /&gt;
K=10^(-2)*(1/drho^2)*K; &lt;br /&gt;
&lt;br /&gt;
F=zeros(N-1,1);&lt;br /&gt;
F(1,1)=10^(-2)*(-17/(rho(1)*drho)+34/drho^2);&lt;br /&gt;
F(N-1,1)=10^(-2)*(45/(rho(N-1)*2*drho)+45/drho^2);&lt;br /&gt;
&lt;br /&gt;
%SEGUDA FASE. TIEMPO&lt;br /&gt;
&lt;br /&gt;
H=ones(1,length(rho)); H=H*45; H=H';&lt;br /&gt;
dt=drho; T=10; t=0:dt:T;&lt;br /&gt;
h0=34; hN=45;&lt;br /&gt;
sol=[h0 H' hN];&lt;br /&gt;
&lt;br /&gt;
for j=1:length(t)-1 &lt;br /&gt;
    &lt;br /&gt;
    %Método de Heun&lt;br /&gt;
    k1=F+(K+L)*H;&lt;br /&gt;
    k2=F+(K+L)*(H+k1*dt);&lt;br /&gt;
    H=H+(dt/2)*(k1+k2);&lt;br /&gt;
 &lt;br /&gt;
    sol(j+1,:)=[h0 H' hN]; %Salvamos las solución, incluimos los extremos&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
rho1=a:drho:b; %Incluimos los nodos exteriores&lt;br /&gt;
&lt;br /&gt;
[rr,tt]=meshgrid(rho1,t);&lt;br /&gt;
surf(rr,tt,sol); %Dibujamos la solución&lt;br /&gt;
title('Nivel Piezométrico. Método Diferencias finitas con Heun en tiempo.')&lt;br /&gt;
xlabel('Distancia radial al centro del pozo.')&lt;br /&gt;
ylabel('Tiempo.')&lt;br /&gt;
zlabel('Nivel piezométrico.')&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
Mediante este código obtenemos la siguiente gráfica:&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Grafica npiezometrico.jpg|500px|thumb|best|Gráfica Nivel Piezométrico aproximada con el Método de Diferencias Finitas con Heun en tiempo.]]&lt;br /&gt;
&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Ahora dibujaremos la gráfica mediante los métodos de Euler implícito y trapecio y compararemos los resultados obtenidos.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Sobre el programa anterior cambiaremos las líneas correspondientes al método de Heun.&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* Método de Euler implícito:&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;math&amp;gt; \left\{\begin{matrix}&lt;br /&gt;
y_{0}\\&lt;br /&gt;
y_{n+1}=y_{n} + hf(t_{n+1},y_{n+1})\\&lt;br /&gt;
\end{matrix}\right. &amp;lt;/math&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
&lt;br /&gt;
for j=1:length(t)-1 &lt;br /&gt;
    &lt;br /&gt;
    %Método de Euler implícito&lt;br /&gt;
    &lt;br /&gt;
    H=(eye(N-1)-dt*(K+L))\(H+(F*dt)); &lt;br /&gt;
 &lt;br /&gt;
    sol(j+1,:)=[h0 H' hN]; %Salvamos las solución, incluimos los extremos&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
rho1=a:drho:b; %Incluimos los nodos exteriores&lt;br /&gt;
&lt;br /&gt;
[rr,tt]=meshgrid(rho1,t);&lt;br /&gt;
surf(rr,tt,sol); %Dibujamos la solución&lt;br /&gt;
title('Nivel Piezométrico. Método Diferencias finitas con Euler en tiempo.')&lt;br /&gt;
xlabel('Distancia radial al centro del pozo.')&lt;br /&gt;
ylabel('Tiempo.')&lt;br /&gt;
zlabel('Nivel piezométrico.')&lt;br /&gt;
&lt;br /&gt;
}}&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* Método del Trapecio:&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;math&amp;gt; \left\{\begin{matrix}&lt;br /&gt;
y_{0}\\&lt;br /&gt;
y_{n+1}=y_{n} + \frac{h}{2}f((t_{n},y_{n}+f(t_{n+1},y_{n+1}))\\&lt;br /&gt;
\end{matrix}\right. &amp;lt;/math&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
for j=1:length(t)-1 &lt;br /&gt;
    &lt;br /&gt;
    %Método del trapecio&lt;br /&gt;
    k1=F+(K+L)*H;&lt;br /&gt;
    k2=F+(K+L)*(H+k1*dt); &lt;br /&gt;
    H=(eye(N-1)-(dt/2)*(K+L))\(H+dt*F+(dt/2)*(K+L)*H);&lt;br /&gt;
 &lt;br /&gt;
    sol(j+1,:)=[h0 H' hN]; %Salvamos las solución, incluimos los extremos&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
rho1=a:drho:b; %Incluimos los nodos exteriores&lt;br /&gt;
&lt;br /&gt;
[rr,tt]=meshgrid(rho1,t);&lt;br /&gt;
surf(rr,tt,sol); %Dibujamos la solución&lt;br /&gt;
title('Nivel Piezométrico. Método Diferencias finitas con trapecio en tiempo.')&lt;br /&gt;
xlabel('Distancia radial al centro del pozo.')&lt;br /&gt;
ylabel('Tiempo.')&lt;br /&gt;
zlabel('Nivel piezométrico.')&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
Como podemos ver a continuación las tres gráficas resultantes son prácticamente iguales por lo que los tres métodos hacen una aproximación similar.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
[[Archivo:Trapecio12.png|500px|thumb|right|Gráfica Nivel Piezométrico aproximada con el Método de Diferencias Finitas con Trapecio en tiempo.]]&lt;br /&gt;
[[Archivo:Euler12.png|500px|thumb|right|Gráfica Nivel Piezométrico aproximada con el Método de Diferencias Finitas con Euler Implícito en tiempo.]]&lt;br /&gt;
&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== Comportamiento del nivel piezométrico con &amp;lt;math&amp;gt; \rho &amp;lt;/math&amp;gt; constante ====&lt;br /&gt;
&lt;br /&gt;
Ahora supondremos que &amp;lt;math&amp;gt; \rho &amp;lt;/math&amp;gt; es constante y que su valor es 2 y dibujaremos el comportamiento del nivel piezométrico en una gráfica 2D nivel piezométrico-tiempo.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Nuevamente utilizando el programa anterior con el  método de Heun:&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Rho2.png|500px|thumb|best|Gráfica Nivel Piezométrico-tiempo para &amp;lt;math&amp;gt; \rho =2 &amp;lt;/math&amp;gt; para T=10.]]&lt;br /&gt;
[[Archivo:Rho1000.png|500px|thumb|best|Gráfica Nivel Piezométrico-tiempo para &amp;lt;math&amp;gt; \rho =2 &amp;lt;/math&amp;gt; para T=1000.]]&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
&lt;br /&gt;
%PRIMERA FASE. ESPACIO&lt;br /&gt;
&lt;br /&gt;
a=0.5; b=20; %Condiciones de contorno&lt;br /&gt;
drho=0.1; N=(b-a)/drho; %División del intervalo&lt;br /&gt;
&lt;br /&gt;
rho=a+drho:drho:b-drho; %Sólo nodos interiores&lt;br /&gt;
&lt;br /&gt;
%Creamos las matrices&lt;br /&gt;
&lt;br /&gt;
L=diag(ones(1,N-2),1)-diag(ones(1,N-2),-1);&lt;br /&gt;
A=diag(1./rho);&lt;br /&gt;
L=10^(-2)*(1/(2*drho))*A*L;&lt;br /&gt;
&lt;br /&gt;
K=-2*diag(ones(1,N-1))+diag(ones(1,N-2),1)+diag(ones(1,N-2),-1);&lt;br /&gt;
K=10^(-2)*(1/drho^2)*K; &lt;br /&gt;
&lt;br /&gt;
F=zeros(N-1,1);&lt;br /&gt;
F(1,1)=10^(-2)*(-17/(rho(1)*drho)+34/drho^2);&lt;br /&gt;
F(N-1,1)=10^(-2)*(45/(rho(N-1)*2*drho)+45/drho^2);&lt;br /&gt;
&lt;br /&gt;
%SEGUDA FASE. TIEMPO&lt;br /&gt;
&lt;br /&gt;
H=ones(1,length(rho)); H=H*45; H=H';&lt;br /&gt;
dt=drho; &lt;br /&gt;
T=10 &lt;br /&gt;
%Comprobamos también la solución para un tiempo mayor &lt;br /&gt;
%T=1000&lt;br /&gt;
t=0:dt:T;&lt;br /&gt;
h0=34; hN=45;&lt;br /&gt;
sol=[h0 H' hN];&lt;br /&gt;
&lt;br /&gt;
for j=1:length(t)-1 &lt;br /&gt;
    &lt;br /&gt;
    %Método de Heun&lt;br /&gt;
    k1=F+(K+L)*H;&lt;br /&gt;
    k2=F+(K+L)*(H+k1*dt);&lt;br /&gt;
    H=H+(dt/2)*(k1+k2);&lt;br /&gt;
 &lt;br /&gt;
    sol(j+1,:)=[h0 H' hN]; %Salvamos las solución, incluimos los extremos&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
rho1=a:drho:b; %Incluimos los nodos exteriores&lt;br /&gt;
&lt;br /&gt;
m=sol(:,rho==2); %Vector que incluye la solución en tiempo para rho=2&lt;br /&gt;
&lt;br /&gt;
plot(t,m);&lt;br /&gt;
&lt;br /&gt;
title('Comportamiento del nivel piezométrico en el tiempo para p=2')&lt;br /&gt;
xlabel('Tiempo')&lt;br /&gt;
ylabel('Nivel piezométrico.')&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
La primera gráfica muestra que para tiempos pequeños la variación del nivel piezométrico es muy pequeña (del orden de 0,10/0,15 m), aún así como observamos en la segunda gráfica a medida que avanzamos en el tiempo la variación del nivel disminuye aún más ya que la curva está cada vez menos inclinada.&lt;br /&gt;
&lt;br /&gt;
==== Variación del nivel piezométrico en tiempos grandes ====&lt;br /&gt;
Ahora vamos a comprobar que la variación del nivel piezométrico para tiempos elevados (T=5000) es mínima.&lt;br /&gt;
Para ello dibujaremos las soluciones cada 100 horas de en el intervalo temporal [1; 5000], en&lt;br /&gt;
una misma gráfica.&lt;br /&gt;
[[Archivo:Tiemposg2.png|marco|derecha|Nivel piezométrico para tiempos grandes]]&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
%PRIMERA FASE. ESPACIO&lt;br /&gt;
&lt;br /&gt;
a=0.5; b=20; %Condiciones de contorno&lt;br /&gt;
drho=0.1; N=(b-a)/drho; %División del intervalo&lt;br /&gt;
&lt;br /&gt;
rho=a+drho:drho:b-drho; %Sólo nodos interiores&lt;br /&gt;
&lt;br /&gt;
%Creamos las matrices&lt;br /&gt;
&lt;br /&gt;
L=diag(ones(1,N-2),1)-diag(ones(1,N-2),-1);&lt;br /&gt;
A=diag(1./rho);&lt;br /&gt;
L=10^(-2)*(1/(2*drho))*A*L;&lt;br /&gt;
&lt;br /&gt;
K=-2*diag(ones(1,N-1))+diag(ones(1,N-2),1)+diag(ones(1,N-2),-1);&lt;br /&gt;
K=10^(-2)*(1/drho^2)*K; &lt;br /&gt;
&lt;br /&gt;
F=zeros(N-1,1);&lt;br /&gt;
F(1,1)=10^(-2)*(-17/(rho(1)*drho)+34/drho^2);&lt;br /&gt;
F(N-1,1)=10^(-2)*(45/(rho(N-1)*2*drho)+45/drho^2);&lt;br /&gt;
&lt;br /&gt;
%SEGUDA FASE. TIEMPO&lt;br /&gt;
&lt;br /&gt;
H=ones(1,length(rho)); H=H*45; H=H';&lt;br /&gt;
dt=0.1; T=5000; t=0:dt:T;&lt;br /&gt;
h0=34; hN=45;&lt;br /&gt;
sol=[h0 H' hN];&lt;br /&gt;
&lt;br /&gt;
figure(1);&lt;br /&gt;
hold on;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
for j=1:length(t)-1 &lt;br /&gt;
    &lt;br /&gt;
    %Método de Heun&lt;br /&gt;
    k1=F+(K+L)*H;&lt;br /&gt;
    k2=F+(K+L)*(H+k1*dt);&lt;br /&gt;
    H=H+(dt/2)*(k1+k2);&lt;br /&gt;
 &lt;br /&gt;
    sol(j+1,:)=[h0 H' hN]; %Salvamos las solución, incluimos los extremos&lt;br /&gt;
    &lt;br /&gt;
 if rem(t(j),100)==0; &lt;br /&gt;
    &lt;br /&gt;
    rho1=a:drho:b; %Incluimos los nodos exteriores&lt;br /&gt;
  &lt;br /&gt;
  plot(rho1,sol(j,:)) %pintamos la solución cada 100 horas&lt;br /&gt;
  &lt;br /&gt;
  title('Variación del nivel piezométrico para tiempos grandes')&lt;br /&gt;
  pause(1)&lt;br /&gt;
&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
end&lt;br /&gt;
}}&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Como se puede observar en la gráfica según vamos avanzando en el tiempo las curvas están más juntas lo que quiere decir que la variación del nivel es cada vez menor aproximándose a un régimen estacionario.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Trabajo21.jpg|marco|derecha|Nivel piezométrico estacionario]]&lt;br /&gt;
&lt;br /&gt;
====Problema estacionario====&lt;br /&gt;
Como hemos visto en el apartado anterior para tiempos grandes el nivel piezométrico se mantiene practicamente constante a lo largo del tiempo, esto es debido a que se establece un equilibrio entre el caudal de agua extraida del acuifero y la migración de aguas desde los puntos más alejados del pozo hacia este.&lt;br /&gt;
Por lo tanto se verifica que:&lt;br /&gt;
 &amp;lt;math&amp;gt;\frac{\partial h}{\partial t}=0&amp;lt;/math&amp;gt;&lt;br /&gt;
Y por lo tanto el nivel piezométrico se puede aproximar por:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \left\{\begin{matrix}&lt;br /&gt;
- \frac{k}{s} (\frac{1}{\rho}  \frac{\partial h}{\partial \rho} + \frac{\partial^2 h}{\partial \rho^2})= 0 &amp;amp; \rho \epsilon (1, 20) &amp;amp; \theta \epsilon (0, 2\Pi ) &amp;amp; 0 &amp;lt; t &amp;lt; 5000 \\ &lt;br /&gt;
h(1,t) = 35;    h(20, t)= 40 \\ &lt;br /&gt;
h(\rho, 0) = 40 &lt;br /&gt;
\end{matrix}\right. &amp;lt;/math&amp;gt;&lt;br /&gt;
Resolvemos por diferencias finitas:&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
    %datos&lt;br /&gt;
    t=5000;&lt;br /&gt;
    l=20;&lt;br /&gt;
    D=0.01;&lt;br /&gt;
    hp=35;&lt;br /&gt;
    ho=40;&lt;br /&gt;
    %discretización&lt;br /&gt;
    s=0.1;&lt;br /&gt;
    x0=1;&lt;br /&gt;
    x=x0:s:l;&lt;br /&gt;
    xint=x0+s:s:l-s;&lt;br /&gt;
    N=length(x)-2; &lt;br /&gt;
    %construimos las matrices para el método de las diferencias finitas&lt;br /&gt;
    K=(1/s^2)*(diag(2*ones(1,N))-diag(ones(1,N-1),1)-diag(ones(1,N-1),-1));&lt;br /&gt;
    A=(1/(s*2))*(diag(ones(1,N-1),1)-diag(ones(1,N-1),-1));&lt;br /&gt;
    A=diag(1./xint)*A;&lt;br /&gt;
    h0=(40*ones(N,1));&lt;br /&gt;
    dt=200; &lt;br /&gt;
    t=0:dt:t;&lt;br /&gt;
    M=length(t)-1;&lt;br /&gt;
    F=(zeros(N,1));&lt;br /&gt;
    F(1)=D*((hp/s^2)-(hp/(2*s)*1/xint(1)));&lt;br /&gt;
    F(N)=D*((ho/s^2)+ho/(s*2*xint(N)));&lt;br /&gt;
    H(1,:)=[40;h0;40]'; &lt;br /&gt;
    h=h0;&lt;br /&gt;
    for n=1:M&lt;br /&gt;
      h=(D)*(K-A)\((F)); %utilizamos el comando backslash para resolver el sistema de ecuaciones&lt;br /&gt;
      H(n+1,:)=[hp h' ho];&lt;br /&gt;
    end&lt;br /&gt;
    %mallado y representación&lt;br /&gt;
    [X,T]=meshgrid(x,t);&lt;br /&gt;
    surf(X,T,H)&lt;br /&gt;
    xlabel('Distancia (metros)');&lt;br /&gt;
    ylabel('Tiempo (horas)');&lt;br /&gt;
    zlabel('Nivel piezométrico (metros)')&lt;br /&gt;
}}&lt;br /&gt;
Efectivamente, como podemos comprobar en la gráfica, la solución es independiente del tiempo salvo para tiempos pequeños en los cuales no queda muy bien definida&lt;br /&gt;
&lt;br /&gt;
====Capacidad de recuperación del acuífero====&lt;br /&gt;
En este apartado queremos calcular una ley que nos describa el comportamiento del acuífero e el caso de que impermeabilizásemos las paredes del pozo partiendo del estado estacionario anterior, esto significaría que el fujo de agua en los bordes del pozo sería nulo y el nivel piezométrico iría variando hasta llegar a otro estado estacionario.&lt;br /&gt;
El estado estacionarioque tenderá a alcanzar el fluido será el inicial, ya que al impermeabilizar las paredes volvemos al caso del acuífero confinado y por ello es nivel piezométrico quedará constante a lo largo del tiempo y de la extensión del acuífero.&lt;br /&gt;
La condición frontera a imponer será que el flujo de agua en r0 será 0, ya que estará impermeabilizado. Esto lo podemos plasmar diciendo que la parcial del nivel piezométrico con respecto a ro en r0 es 0, ya que un aislamiento impide el flujo de líquido, y si el flujo de líquido es nulo el nivel piezométrico no varía.&lt;br /&gt;
&amp;lt;math&amp;gt;\frac{\partial h}{\partial \rho}=0&amp;lt;/math&amp;gt;&lt;br /&gt;
====Método de Fourier====&lt;br /&gt;
Ahora suponemos que el radio del pozo es despreciable y que una vez extraido el agua el pozo se cierra quedando el acuifero de nuevo homogéneo. En este caso tomaremos la región ρ &amp;lt; 20. Nuestro objetivo es aproximar las soluciones usando el método de Fourier. De nuevo supondremos que la solución sólo depende de ρ y t, y tomaremos ahora como condición frontera h(20, t) = 40.&lt;br /&gt;
Vamos a considerar el sistema de ecuaciones para h(ρ,t)=h(ρ,t)-40:&lt;br /&gt;
 &amp;lt;math&amp;gt; \left\{\begin{matrix}&lt;br /&gt;
\frac{\partial h}{\partial t} - D (\frac{1}{\rho}  \frac{\partial h}{\partial \rho} + \frac{\partial^2 h}{\partial \rho^2})= 0 &amp;amp; \rho \epsilon (0, 20) &amp;amp; \theta \epsilon (0, 2\Pi ) &amp;amp; t &amp;gt; 0 \\ &lt;br /&gt;
\frac{\partial h}{\partial \rho}(0,t) = 0;   h(20, t)= 0 \\ &lt;br /&gt;
\end{matrix}\right. &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Obtenemos el problema de autovalores asociado al sistema anterior con el método de separación de variables:&lt;br /&gt;
 &amp;lt;math&amp;gt; \left\{\begin{matrix}&lt;br /&gt;
D (\frac{X'(\rho)}{\rho} + X''(\rho))+ λX(\rho)=0 \\&lt;br /&gt;
X'(0) = 0;   X(20)= 0 \\ &lt;br /&gt;
&lt;br /&gt;
\end{matrix}\right. &amp;lt;/math&amp;gt;&lt;br /&gt;
[[Archivo:Marta1.jpg|marco|derecha]]&lt;br /&gt;
Sabemos que los problemas de esta forma tienen como solución la función de Bessel de primera especie que forma una familia de autofunciones: &amp;lt;math&amp;gt;Ψ(\rho)=J_0·(\rho\sqrt{λ})&amp;lt;/math&amp;gt;. Estas se anulan cuando &amp;lt;math&amp;gt;(\rho\sqrt{λ})&amp;lt;/math&amp;gt; se iguala a 2.4048, 5.5201, 8.6537, 11.7915 y 14.9309, siendo estos los 5 primeros ceros de la función de Bessel. De esta manera y tomando ρ=20 obtenemos los 5 primeros autovalores:&lt;br /&gt;
&amp;lt;math&amp;gt;(20\sqrt{λ})=2.4048&amp;lt;/math&amp;gt;Haciendo la operación anterior para los 5 ceros obtenemos los siguientes autovalores: 0.0145, 0.0762, 0.1872, 0.3476, 0.5573.&lt;br /&gt;
Ahora vamos a dibujar las 5 primeras autofunciones utilizando la función besselj:&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
a1=0.0145;&lt;br /&gt;
a2=0.0762;&lt;br /&gt;
a3=0.1872;&lt;br /&gt;
a4=0.3476;&lt;br /&gt;
a5=0.5575;&lt;br /&gt;
r=0:0.02:20;&lt;br /&gt;
F1=besselj(0,r.*(sqrt(a1))); &lt;br /&gt;
F2=besselj(0,r.*(sqrt(a2)));&lt;br /&gt;
F3=besselj(0,r.*(sqrt(a3)));&lt;br /&gt;
F4=besselj(0,r.*(sqrt(a4)));&lt;br /&gt;
F5=besselj(0,r.*(sqrt(a5)));&lt;br /&gt;
hold on&lt;br /&gt;
plot(r,F1)&lt;br /&gt;
plot(r,F2,'r')&lt;br /&gt;
plot(r,F3,'g')	&lt;br /&gt;
plot(r,F4,'c')&lt;br /&gt;
plot(r,F5,'y')&lt;br /&gt;
hold off&lt;br /&gt;
}}&lt;br /&gt;
[[Archivo:Marta2.jpg|marco|derecha]]&lt;br /&gt;
Aproximamos ahora la solución de la ecuación tomando como dato inicial es&amp;lt;math&amp;gt; h (\rho,0)= -log \frac{|\rho + 0.01|}{20.01} &amp;lt;/math&amp;gt; y usando 5 términos del desarrollo de Fourier, teniendo en cuenta que las autofunciones son ortogonales respecto al producto escalar: &amp;lt;math&amp;gt; (f(\rho),g(\rho)) = \int_{0}^{20} \rho f(\rho) g(\rho) \cdot dx &amp;lt;/math&amp;gt;&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
x0=0; L=20;&lt;br /&gt;
c0=[2.4048,5.5201,8.6537,11.7915,14.9309]; %Vector de ceros de la función de Bessel&lt;br /&gt;
A=(c0./20).^2; %Vector de autovalores&lt;br /&gt;
K=5; %Número de términos del desarrollo de Fourier&lt;br /&gt;
x=x0:0.1:L;&lt;br /&gt;
N=length(x)-1;&lt;br /&gt;
J=zeros(N+1,K);&lt;br /&gt;
z=zeros(N+1,K);&lt;br /&gt;
t0=0; tf=500;&lt;br /&gt;
t=t0:0.1:tf;&lt;br /&gt;
[xx,tt]=meshgrid(x,t);&lt;br /&gt;
h=0;&lt;br /&gt;
for k=1:K&lt;br /&gt;
   z(:,k)=(x)'*sqrt(A(k));&lt;br /&gt;
   J(:,k)=besselj(0,z(:,k));&lt;br /&gt;
   h0=-log((abs(x+0.1))/20.01); %Condición inicial&lt;br /&gt;
   c(k)=trapz(x,x'.*h0'.*J(:,k))/trapz(x,x'.*J(:,k).*J(:,k)); %Coeficientes de Fourier&lt;br /&gt;
   h=h+c(k)*exp(-A(k)*t)'*J(:,k)';&lt;br /&gt;
end&lt;br /&gt;
surf(xx,tt,h)&lt;br /&gt;
title('Aproximación de la solución')&lt;br /&gt;
}}&lt;/div&gt;</summary>
		<author><name>Marta Cavero</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Nivel_piezom%C3%A9trico_de_un_acu%C3%ADfero_confinado_(A5)&amp;diff=30103</id>
		<title>Nivel piezométrico de un acuífero confinado (A5)</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Nivel_piezom%C3%A9trico_de_un_acu%C3%ADfero_confinado_(A5)&amp;diff=30103"/>
				<updated>2015-05-14T15:25:36Z</updated>
		
		<summary type="html">&lt;p&gt;Marta Cavero: /* Variación del nivel piezométrico en tiempos grandes */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;br /&gt;
==== Introducción ====&lt;br /&gt;
&lt;br /&gt;
Consideramos un acuífero confinado entre dos capas de terreno impermeables horizontales. Llamaremos h(x, y) al nivel piezométrico del acuífero, definido por la altura que alcanzaría el agua si hiciéramos un sondeo en el punto (x, y). Obviamente este valor depende de la presión a la que se encuentra el agua confinada en el acuífero. Supondremos&lt;br /&gt;
que el acuífero es un medio poroso saturado de agua que ocupa una región infinita y está en equilibrio de manera que &amp;lt;math&amp;gt;h(x, y) = h_0&amp;lt;/math&amp;gt; constante para todo (x, y) ∈ &amp;lt;math&amp;gt;IR^{2}&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Sobre el acuifero se construye un pozo de sección circular y radio&amp;lt;math&amp;gt; ρ_0&amp;lt;/math&amp;gt; para extraer agua. La presencia del pozo hace que el nivel piezométrico cambie. Dada la simetría del problema podemos suponer que h(x, y) sólo va a depender de la distancia al pozo. Si tomamos coordenadas cilíndricas de forma que el eje OZ coincida con el eje de simetría del pozo, entonces h = h(ρ) donde &amp;lt;math&amp;gt;ρ = \sqrt{x^{2} + y^{2}}&amp;lt;/math&amp;gt; . Trabajaremos por tanto en coordenadas polares en el plano (ρ, θ).&lt;br /&gt;
&lt;br /&gt;
Las ecuaciones que permiten conocer h(ρ) son la ecuación de conservación de la masa:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; S = \frac{∂h}{∂t} + div q = 0 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
junto con la ley de Darcy&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; q = −K∇h &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
que es una ley experimental que modela el flujo de agua en un medio poroso. La ley de Darcy establece que el flujo de agua q a través de un medio poroso es proporcional a la diferencia de presión, que a su vez se puede escribir en términos del gradiente del nivel piezométrico en cada punto. La constante K se deduce experimentalmente para cada material y se conoce como la conductividad hidráulica o permeabilidad. Cuanto mayor es la constante K mayor es el flujo de agua provocado por un cambio&lt;br /&gt;
de presión. La ley de Darcy proporciona una buena aproximación del comportamiento del agua en un medio poroso siempre que este sea homogéneo e isótropo.&lt;br /&gt;
&lt;br /&gt;
La constante S en la ley de conservación de la masa se conoce como almacenamiento específico y se interpreta como la cantidad de agua que libera el acuífero al descender el nivel piezométrico en una unidad, por unidad de volumen.&lt;br /&gt;
&lt;br /&gt;
Combinando las ecuaciones de conservación de la masa con la ley de Darcy, obtenemos la ecuación:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \frac{∂h}{∂t} - D∆h = 0, ρ &amp;gt; ρ_0, θ ∈ (0, 2π), t &amp;gt; 0, (1) &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
donde D = K/S es la difusividad hidráulica que supondremos constante.&lt;br /&gt;
&lt;br /&gt;
==== Deducción de la fórmula ====&lt;br /&gt;
&lt;br /&gt;
En este apartado buscamos demostrar la ecuación (1) como combinación de la ecuación de conservación de masas y la Ley de Darcy.&lt;br /&gt;
&lt;br /&gt;
Por un lado sabemos que el laplaciaco equivale a la divergencia del gradiente: &lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; &lt;br /&gt;
(\Delta f = \nabla \cdot \nabla f = div \left (\nabla f) \right) &lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Por otro lado, sabemos que en coordenadas polares: &lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;x = ρ cos \theta \\&lt;br /&gt;
             y = ρ  sen \theta&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\bar{g_ρ } = cos \theta \bar{i} + sin \theta  \bar{j} \\&lt;br /&gt;
              \bar{g_\theta } = - ρ  sin \theta \bar{i} + ρ cos \theta \bar{j} &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;&lt;br /&gt;
G =&lt;br /&gt;
\left(&lt;br /&gt;
\begin{array}{cc}&lt;br /&gt;
1&amp;amp; 0 \\&lt;br /&gt;
0 &amp;amp; ρ ^{2} \\&lt;br /&gt;
\end{array}&lt;br /&gt;
\right);&lt;br /&gt;
\text {donde la raiz del determinante es} \sqrt{g} = ρ&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Como indica el enunciado, al sustituir la Ley de Darcy en la ecuación de conservación de la masa obtenemos y dividir entre S, teniendo en cuenta que el divergente del gradiente es el laplaciano como hemos indicado al principio de este apartado, obtenemos la ecuación (1): &amp;lt;math&amp;gt; \frac{∂h}{∂t} - \frac{k}{S}∆h = 0 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
En esta ecuación queda por desarrollar el Laplaciano de h. &lt;br /&gt;
Partiremos de la función h(ρ,θ), de la cual calcularemos primero el gradiente:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \nabla h = \frac{\partial h}{\partial \rho}\hat{\rho} + \frac{\partial h}{\partial \rho}\hat{\theta} =  \frac{\partial h}{\partial \rho}\bar{\rho} + \frac{1}{\rho^{2}} \frac{\partial h}{\partial \rho}\bar{\theta}  &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
teniendo en cuenta que &amp;lt;math&amp;gt;\bar{g^{i} } = \frac{\bar{g_i } }{ | \bar{g_i } | ^{2} } &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Ahora hacemos el divergente del gradiente anterior y obtenemos el Laplaciano en coordenadas polares:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;math&amp;gt;&lt;br /&gt;
 \Delta h = div(∇h) &lt;br /&gt;
= {1 \over \rho} {\partial \over \partial \rho}&lt;br /&gt;
  \left( \rho {\partial h \over \partial \rho} \right) &lt;br /&gt;
+ {1 \over \rho^2} {\partial^2 h \over \partial \theta^2}&lt;br /&gt;
= {1 \over \rho} {\partial h \over \partial \rho} &lt;br /&gt;
+ {\partial^2 h \over \partial \rho^2}&lt;br /&gt;
+ {1 \over \rho^2} {\partial^2 h \over \partial \theta^2}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Si consideramos que, debido a la simetría del problema, h sólo depende de su distancia al pozo, entonces obtenemos la función radial h(ρ), que nos permite simplificar el Laplaciano del modo siguiente:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;math&amp;gt;&lt;br /&gt;
 \Delta h = div(∇h) &lt;br /&gt;
= {1 \over \rho} {\partial h \over \partial \rho} &lt;br /&gt;
+ {\partial^2 h \over \partial \rho^2}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== Obtención de la ecuación====&lt;br /&gt;
&lt;br /&gt;
Para poder resolver la ecuación anterior y que el resultado sea único, hemos de establecer condiciones iniciales y de contorno.&lt;br /&gt;
&lt;br /&gt;
Las condiciones de contorno serán dos pues aparece la derivada segunda de la posición: &amp;lt;math&amp;gt; h(\rho_0 , t) = h_p \\&lt;br /&gt;
                                                                                                                                                                  h(20,t) = h_0 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
La condición inicial será única pues sólo aparece una derivada de primer orden en tiempo en nuestra ecuación: &amp;lt;math&amp;gt; h(\rho,0) = h_0 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
De este modo la ecuación resultante será:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \left\{\begin{matrix}&lt;br /&gt;
\frac{\partial h}{\partial t} - \frac{k}{s} (\frac{1}{\rho}  \frac{\partial h}{\partial \rho} + \frac{\partial^2 h}{\partial \rho^2})= 0 &amp;amp; \rho \epsilon (\rho_{0}, 2c) &amp;amp; \theta \epsilon (0, 2\Pi ) &amp;amp; t &amp;gt; 0 \\ &lt;br /&gt;
h(\rho_{0},t) = h_{p};   h(20, t)= h_{0} \\ &lt;br /&gt;
h(\rho, 0) = h_{0} &lt;br /&gt;
\end{matrix}\right. &amp;lt;/math&amp;gt; &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==== Resolución por método de diferencias finitas ====&lt;br /&gt;
&lt;br /&gt;
Suponiendo &amp;lt;math&amp;gt;ρ_0 =0.5m&amp;lt;/math&amp;gt;, &amp;lt;math&amp;gt;h_0 =45m&amp;lt;/math&amp;gt;, &amp;lt;math&amp;gt;hp =34&amp;lt;/math&amp;gt;, D=10−2, &amp;lt;math&amp;gt;(ρ,0)=h_0&amp;lt;/math&amp;gt;; y tomando  ∆ρ = 0.1 y ∆t = ∆ρ. Vamos a resolver la ecuación anterior por el método de diferencias finitas, usando el Método de Heun para realizar la aproximación en tiempo.&lt;br /&gt;
&lt;br /&gt;
Primero, sustituyendo los datos anteriores en la ecuación, llegamos a:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \left\{\begin{matrix}&lt;br /&gt;
\frac{\partial h}{\partial t} - 10^{2} (\frac{1}{\rho}  \frac{\partial h}{\partial \rho} + \frac{\partial^2 h}{\partial \rho^2})= 0 &amp;amp; \rho \epsilon (0.5, 20) &amp;amp; \theta \epsilon (0, 2\Pi ) &amp;amp; t &amp;gt; 0 \\ &lt;br /&gt;
h(0.5,t) = 34;   h(20, t)= 45 \\ &lt;br /&gt;
h(\rho, 0) = 45&lt;br /&gt;
\end{matrix}\right. &amp;lt;/math&amp;gt; &lt;br /&gt;
&lt;br /&gt;
Aplicando el método de las diferencias finitas llegamos al siguiente código:&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
&lt;br /&gt;
%TRPRIMERA FASE. ESPACIO&lt;br /&gt;
&lt;br /&gt;
a=0.5; b=20; %Condiciones de contorno&lt;br /&gt;
drho=0.1; N=(b-a)/drho; %División del intervalo&lt;br /&gt;
&lt;br /&gt;
rho=a+drho:drho:b-drho; %Sólo nodos interiores&lt;br /&gt;
&lt;br /&gt;
%Creamos las matrices&lt;br /&gt;
&lt;br /&gt;
L=diag(ones(1,N-2),1)-diag(ones(1,N-2),-1);&lt;br /&gt;
A=diag(1./rho);&lt;br /&gt;
L=10^(-2)*(1/(2*drho))*A*L;&lt;br /&gt;
&lt;br /&gt;
K=-2*diag(ones(1,N-1))+diag(ones(1,N-2),1)+diag(ones(1,N-2),-1);&lt;br /&gt;
K=10^(-2)*(1/drho^2)*K; &lt;br /&gt;
&lt;br /&gt;
F=zeros(N-1,1);&lt;br /&gt;
F(1,1)=10^(-2)*(-17/(rho(1)*drho)+34/drho^2);&lt;br /&gt;
F(N-1,1)=10^(-2)*(45/(rho(N-1)*2*drho)+45/drho^2);&lt;br /&gt;
&lt;br /&gt;
%SEGUDA FASE. TIEMPO&lt;br /&gt;
&lt;br /&gt;
H=ones(1,length(rho)); H=H*45; H=H';&lt;br /&gt;
dt=drho; T=10; t=0:dt:T;&lt;br /&gt;
h0=34; hN=45;&lt;br /&gt;
sol=[h0 H' hN];&lt;br /&gt;
&lt;br /&gt;
for j=1:length(t)-1 &lt;br /&gt;
    &lt;br /&gt;
    %Método de Heun&lt;br /&gt;
    k1=F+(K+L)*H;&lt;br /&gt;
    k2=F+(K+L)*(H+k1*dt);&lt;br /&gt;
    H=H+(dt/2)*(k1+k2);&lt;br /&gt;
 &lt;br /&gt;
    sol(j+1,:)=[h0 H' hN]; %Salvamos las solución, incluimos los extremos&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
rho1=a:drho:b; %Incluimos los nodos exteriores&lt;br /&gt;
&lt;br /&gt;
[rr,tt]=meshgrid(rho1,t);&lt;br /&gt;
surf(rr,tt,sol); %Dibujamos la solución&lt;br /&gt;
title('Nivel Piezométrico. Método Diferencias finitas con Heun en tiempo.')&lt;br /&gt;
xlabel('Distancia radial al centro del pozo.')&lt;br /&gt;
ylabel('Tiempo.')&lt;br /&gt;
zlabel('Nivel piezométrico.')&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
Mediante este código obtenemos la siguiente gráfica:&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Grafica npiezometrico.jpg|500px|thumb|best|Gráfica Nivel Piezométrico aproximada con el Método de Diferencias Finitas con Heun en tiempo.]]&lt;br /&gt;
&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Ahora dibujaremos la gráfica mediante los métodos de Euler implícito y trapecio y compararemos los resultados obtenidos.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Sobre el programa anterior cambiaremos las líneas correspondientes al método de Heun.&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* Método de Euler implícito:&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;math&amp;gt; \left\{\begin{matrix}&lt;br /&gt;
y_{0}\\&lt;br /&gt;
y_{n+1}=y_{n} + hf(t_{n+1},y_{n+1})\\&lt;br /&gt;
\end{matrix}\right. &amp;lt;/math&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
&lt;br /&gt;
for j=1:length(t)-1 &lt;br /&gt;
    &lt;br /&gt;
    %Método de Euler implícito&lt;br /&gt;
    &lt;br /&gt;
    H=(eye(N-1)-dt*(K+L))\(H+(F*dt)); &lt;br /&gt;
 &lt;br /&gt;
    sol(j+1,:)=[h0 H' hN]; %Salvamos las solución, incluimos los extremos&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
rho1=a:drho:b; %Incluimos los nodos exteriores&lt;br /&gt;
&lt;br /&gt;
[rr,tt]=meshgrid(rho1,t);&lt;br /&gt;
surf(rr,tt,sol); %Dibujamos la solución&lt;br /&gt;
title('Nivel Piezométrico. Método Diferencias finitas con Euler en tiempo.')&lt;br /&gt;
xlabel('Distancia radial al centro del pozo.')&lt;br /&gt;
ylabel('Tiempo.')&lt;br /&gt;
zlabel('Nivel piezométrico.')&lt;br /&gt;
&lt;br /&gt;
}}&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* Método del Trapecio:&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;math&amp;gt; \left\{\begin{matrix}&lt;br /&gt;
y_{0}\\&lt;br /&gt;
y_{n+1}=y_{n} + \frac{h}{2}f((t_{n},y_{n}+f(t_{n+1},y_{n+1}))\\&lt;br /&gt;
\end{matrix}\right. &amp;lt;/math&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
for j=1:length(t)-1 &lt;br /&gt;
    &lt;br /&gt;
    %Método del trapecio&lt;br /&gt;
    k1=F+(K+L)*H;&lt;br /&gt;
    k2=F+(K+L)*(H+k1*dt); &lt;br /&gt;
    H=(eye(N-1)-(dt/2)*(K+L))\(H+dt*F+(dt/2)*(K+L)*H);&lt;br /&gt;
 &lt;br /&gt;
    sol(j+1,:)=[h0 H' hN]; %Salvamos las solución, incluimos los extremos&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
rho1=a:drho:b; %Incluimos los nodos exteriores&lt;br /&gt;
&lt;br /&gt;
[rr,tt]=meshgrid(rho1,t);&lt;br /&gt;
surf(rr,tt,sol); %Dibujamos la solución&lt;br /&gt;
title('Nivel Piezométrico. Método Diferencias finitas con trapecio en tiempo.')&lt;br /&gt;
xlabel('Distancia radial al centro del pozo.')&lt;br /&gt;
ylabel('Tiempo.')&lt;br /&gt;
zlabel('Nivel piezométrico.')&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
Como podemos ver a continuación las tres gráficas resultantes son prácticamente iguales por lo que los tres métodos hacen una aproximación similar.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
[[Archivo:Trapecio12.png|500px|thumb|right|Gráfica Nivel Piezométrico aproximada con el Método de Diferencias Finitas con Trapecio en tiempo.]]&lt;br /&gt;
[[Archivo:Euler12.png|500px|thumb|right|Gráfica Nivel Piezométrico aproximada con el Método de Diferencias Finitas con Euler Implícito en tiempo.]]&lt;br /&gt;
&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== Comportamiento del nivel piezométrico con &amp;lt;math&amp;gt; \rho &amp;lt;/math&amp;gt; constante ====&lt;br /&gt;
&lt;br /&gt;
Ahora supondremos que &amp;lt;math&amp;gt; \rho &amp;lt;/math&amp;gt; es constante y que su valor es 2 y dibujaremos el comportamiento del nivel piezométrico en una gráfica 2D nivel piezométrico-tiempo.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Nuevamente utilizando el programa anterior con el  método de Heun:&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Rho2.png|500px|thumb|best|Gráfica Nivel Piezométrico-tiempo para &amp;lt;math&amp;gt; \rho =2 &amp;lt;/math&amp;gt; para T=10.]]&lt;br /&gt;
[[Archivo:Rho1000.png|500px|thumb|best|Gráfica Nivel Piezométrico-tiempo para &amp;lt;math&amp;gt; \rho =2 &amp;lt;/math&amp;gt; para T=1000.]]&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
&lt;br /&gt;
%PRIMERA FASE. ESPACIO&lt;br /&gt;
&lt;br /&gt;
a=0.5; b=20; %Condiciones de contorno&lt;br /&gt;
drho=0.1; N=(b-a)/drho; %División del intervalo&lt;br /&gt;
&lt;br /&gt;
rho=a+drho:drho:b-drho; %Sólo nodos interiores&lt;br /&gt;
&lt;br /&gt;
%Creamos las matrices&lt;br /&gt;
&lt;br /&gt;
L=diag(ones(1,N-2),1)-diag(ones(1,N-2),-1);&lt;br /&gt;
A=diag(1./rho);&lt;br /&gt;
L=10^(-2)*(1/(2*drho))*A*L;&lt;br /&gt;
&lt;br /&gt;
K=-2*diag(ones(1,N-1))+diag(ones(1,N-2),1)+diag(ones(1,N-2),-1);&lt;br /&gt;
K=10^(-2)*(1/drho^2)*K; &lt;br /&gt;
&lt;br /&gt;
F=zeros(N-1,1);&lt;br /&gt;
F(1,1)=10^(-2)*(-17/(rho(1)*drho)+34/drho^2);&lt;br /&gt;
F(N-1,1)=10^(-2)*(45/(rho(N-1)*2*drho)+45/drho^2);&lt;br /&gt;
&lt;br /&gt;
%SEGUDA FASE. TIEMPO&lt;br /&gt;
&lt;br /&gt;
H=ones(1,length(rho)); H=H*45; H=H';&lt;br /&gt;
dt=drho; &lt;br /&gt;
T=10 &lt;br /&gt;
%Comprobamos también la solución para un tiempo mayor &lt;br /&gt;
%T=1000&lt;br /&gt;
t=0:dt:T;&lt;br /&gt;
h0=34; hN=45;&lt;br /&gt;
sol=[h0 H' hN];&lt;br /&gt;
&lt;br /&gt;
for j=1:length(t)-1 &lt;br /&gt;
    &lt;br /&gt;
    %Método de Heun&lt;br /&gt;
    k1=F+(K+L)*H;&lt;br /&gt;
    k2=F+(K+L)*(H+k1*dt);&lt;br /&gt;
    H=H+(dt/2)*(k1+k2);&lt;br /&gt;
 &lt;br /&gt;
    sol(j+1,:)=[h0 H' hN]; %Salvamos las solución, incluimos los extremos&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
rho1=a:drho:b; %Incluimos los nodos exteriores&lt;br /&gt;
&lt;br /&gt;
m=sol(:,rho==2); %Vector que incluye la solución en tiempo para rho=2&lt;br /&gt;
&lt;br /&gt;
plot(t,m);&lt;br /&gt;
&lt;br /&gt;
title('Comportamiento del nivel piezométrico en el tiempo para p=2')&lt;br /&gt;
xlabel('Tiempo')&lt;br /&gt;
ylabel('Nivel piezométrico.')&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
La primera gráfica muestra que para tiempos pequeños la variación del nivel piezométrico es muy pequeña (del orden de 0,10/0,15 m), aún así como observamos en la segunda gráfica a medida que avanzamos en el tiempo la variación del nivel disminuye aún más ya que la curva está cada vez menos inclinada.&lt;br /&gt;
&lt;br /&gt;
==== Variación del nivel piezométrico en tiempos grandes ====&lt;br /&gt;
Ahora vamos a comprobar que la variación del nivel piezométrico para tiempos elevados (T=5000) es mínima.&lt;br /&gt;
Para ello dibujaremos las soluciones cada 100 horas de en el intervalo temporal [1; 5000], en&lt;br /&gt;
una misma gráfica.&lt;br /&gt;
[[Archivo:Tiemposg2.png|marco|derecha|Nivel piezométrico para tiempos grandes]]&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
%PRIMERA FASE. ESPACIO&lt;br /&gt;
&lt;br /&gt;
a=0.5; b=20; %Condiciones de contorno&lt;br /&gt;
drho=0.1; N=(b-a)/drho; %División del intervalo&lt;br /&gt;
&lt;br /&gt;
rho=a+drho:drho:b-drho; %Sólo nodos interiores&lt;br /&gt;
&lt;br /&gt;
%Creamos las matrices&lt;br /&gt;
&lt;br /&gt;
L=diag(ones(1,N-2),1)-diag(ones(1,N-2),-1);&lt;br /&gt;
A=diag(1./rho);&lt;br /&gt;
L=10^(-2)*(1/(2*drho))*A*L;&lt;br /&gt;
&lt;br /&gt;
K=-2*diag(ones(1,N-1))+diag(ones(1,N-2),1)+diag(ones(1,N-2),-1);&lt;br /&gt;
K=10^(-2)*(1/drho^2)*K; &lt;br /&gt;
&lt;br /&gt;
F=zeros(N-1,1);&lt;br /&gt;
F(1,1)=10^(-2)*(-17/(rho(1)*drho)+34/drho^2);&lt;br /&gt;
F(N-1,1)=10^(-2)*(45/(rho(N-1)*2*drho)+45/drho^2);&lt;br /&gt;
&lt;br /&gt;
%SEGUDA FASE. TIEMPO&lt;br /&gt;
&lt;br /&gt;
H=ones(1,length(rho)); H=H*45; H=H';&lt;br /&gt;
dt=0.1; T=5000; t=0:dt:T;&lt;br /&gt;
h0=34; hN=45;&lt;br /&gt;
sol=[h0 H' hN];&lt;br /&gt;
&lt;br /&gt;
figure(1);&lt;br /&gt;
hold on;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
for j=1:length(t)-1 &lt;br /&gt;
    &lt;br /&gt;
    %Método de Heun&lt;br /&gt;
    k1=F+(K+L)*H;&lt;br /&gt;
    k2=F+(K+L)*(H+k1*dt);&lt;br /&gt;
    H=H+(dt/2)*(k1+k2);&lt;br /&gt;
 &lt;br /&gt;
    sol(j+1,:)=[h0 H' hN]; %Salvamos las solución, incluimos los extremos&lt;br /&gt;
    &lt;br /&gt;
 if rem(t(j),100)==0; &lt;br /&gt;
    &lt;br /&gt;
    rho1=a:drho:b; %Incluimos los nodos exteriores&lt;br /&gt;
  &lt;br /&gt;
  plot(rho1,sol(j,:)) %pintamos la solución cada 100 horas&lt;br /&gt;
  &lt;br /&gt;
  title('Variación del nivel piezométrico para tiempos grandes')&lt;br /&gt;
  pause(1)&lt;br /&gt;
&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
end&lt;br /&gt;
}}&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Como se puede observar en la gráfica según vamos avanzando en el tiempo las curvas están más juntas lo que quiere decir que la variación del nivel es cada vez menor aproximándose a un régimen estacionario.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Trabajo21.jpg|marco|derecha|Nivel piezométrico estacionario]]&lt;br /&gt;
&lt;br /&gt;
====Problema estacionario====&lt;br /&gt;
Como hemos visto en el apartado anterior para tiempos grandes el nivel piezométrico se mantiene practicamente constante a lo largo del tiempo, esto es debido a que se establece un equilibrio entre el caudal de agua extraida del acuifero y la migración de aguas desde los puntos más alejados del pozo hacia este.&lt;br /&gt;
Por lo tanto se verifica que:&lt;br /&gt;
 &amp;lt;math&amp;gt;\frac{\partial h}{\partial t}=0&amp;lt;/math&amp;gt;&lt;br /&gt;
Y por lo tanto el nivel piezométrico se puede aproximar por:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \left\{\begin{matrix}&lt;br /&gt;
- \frac{k}{s} (\frac{1}{\rho}  \frac{\partial h}{\partial \rho} + \frac{\partial^2 h}{\partial \rho^2})= 0 &amp;amp; \rho \epsilon (1, 20) &amp;amp; \theta \epsilon (0, 2\Pi ) &amp;amp; 0 &amp;lt; t &amp;lt; 5000 \\ &lt;br /&gt;
h(1,t) = 35;    h(20, t)= 40 \\ &lt;br /&gt;
h(\rho, 0) = 40 &lt;br /&gt;
\end{matrix}\right. &amp;lt;/math&amp;gt;&lt;br /&gt;
Resolvemos por diferencias finitas:&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
    %datos&lt;br /&gt;
    t=5000;&lt;br /&gt;
    l=20;&lt;br /&gt;
    D=0.01;&lt;br /&gt;
    hp=35;&lt;br /&gt;
    ho=40;&lt;br /&gt;
    %discretización&lt;br /&gt;
    s=0.1;&lt;br /&gt;
    x0=1;&lt;br /&gt;
    x=x0:s:l;&lt;br /&gt;
    xint=x0+s:s:l-s;&lt;br /&gt;
    N=length(x)-2; &lt;br /&gt;
    %construimos las matrices para el método de las diferencias finitas&lt;br /&gt;
    K=(1/s^2)*(diag(2*ones(1,N))-diag(ones(1,N-1),1)-diag(ones(1,N-1),-1));&lt;br /&gt;
    A=(1/(s*2))*(diag(ones(1,N-1),1)-diag(ones(1,N-1),-1));&lt;br /&gt;
    A=diag(1./xint)*A;&lt;br /&gt;
    h0=(40*ones(N,1));&lt;br /&gt;
    dt=200; &lt;br /&gt;
    t=0:dt:t;&lt;br /&gt;
    M=length(t)-1;&lt;br /&gt;
    F=(zeros(N,1));&lt;br /&gt;
    F(1)=D*((hp/s^2)-(hp/(2*s)*1/xint(1)));&lt;br /&gt;
    F(N)=D*((ho/s^2)+ho/(s*2*xint(N)));&lt;br /&gt;
    H(1,:)=[40;h0;40]'; &lt;br /&gt;
    h=h0;&lt;br /&gt;
    for n=1:M&lt;br /&gt;
      h=(D)*(K-A)\((F)); %utilizamos el comando backslash para resolver el sistema de ecuaciones&lt;br /&gt;
      H(n+1,:)=[hp h' ho];&lt;br /&gt;
    end&lt;br /&gt;
    %mallado y representación&lt;br /&gt;
    [X,T]=meshgrid(x,t);&lt;br /&gt;
    surf(X,T,H)&lt;br /&gt;
    xlabel('Distancia (metros)');&lt;br /&gt;
    ylabel('Tiempo (horas)');&lt;br /&gt;
    zlabel('Nivel piezométrico (metros)')&lt;br /&gt;
}}&lt;br /&gt;
Efectivamente, como podemos comprobar en la gráfica, la solución es independiente del tiempo salvo para tiempos pequeños en los cuales no queda muy bien definida&lt;br /&gt;
&lt;br /&gt;
====Capacidad de recuperación del acuífero====&lt;br /&gt;
En este apartado queremos calcular una ley que nos describa el comportamiento del acuífero e el caso de que impermeabilizásemos las paredes del pozo partiendo del estado estacionario anterior, esto significaría que el fujo de agua en los bordes del pozo sería nulo y el nivel piezométrico iría variando hasta llegar a otro estado estacionario.&lt;br /&gt;
El estado estacionarioque tenderá a alcanzar el fluido será el inicial, ya que al impermeabilizar las paredes volvemos al caso del acuífero confinado y por ello es nivel piezométrico quedará constante a lo largo del tiempo y de la extensión del acuífero.&lt;br /&gt;
La condición frontera a imponer será que el flujo de agua en r0 será 0, ya que estará impermeabilizado. Esto lo podemos plasmar diciendo que la parcial del nivel piezométrico con respecto a ro en r0 es 0, ya que un aislamiento impide el flujo de líquido, y si el flujo de líquido es nulo el nivel piezométrico no varía.&lt;br /&gt;
&amp;lt;math&amp;gt;\frac{\partial h}{\partial \rho}=0&amp;lt;/math&amp;gt;&lt;br /&gt;
====Método de Fourier====&lt;br /&gt;
Ahora suponemos que el radio del pozo es despreciable y que una vez extraido el agua el pozo se cierra quedando el acuifero de nuevo homogéneo. En este caso tomaremos la región ρ &amp;lt; 20. Nuestro objetivo es aproximar las soluciones usando el método de Fourier. De nuevo supondremos que la solución sólo depende de ρ y t, y tomaremos ahora como condición frontera h(20, t) = 40.&lt;br /&gt;
Vamos a considerar el sistema de ecuaciones para h(ρ,t)=h(ρ,t)-40:&lt;br /&gt;
 &amp;lt;math&amp;gt; \left\{\begin{matrix}&lt;br /&gt;
\frac{\partial h}{\partial t} - D (\frac{1}{\rho}  \frac{\partial h}{\partial \rho} + \frac{\partial^2 h}{\partial \rho^2})= 0 &amp;amp; \rho \epsilon (0, 20) &amp;amp; \theta \epsilon (0, 2\Pi ) &amp;amp; t &amp;gt; 0 \\ &lt;br /&gt;
\frac{\partial h}{\partial \rho}(0,t) = 0;   h(20, t)= 0 \\ &lt;br /&gt;
\end{matrix}\right. &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Obtenemos el problema de autovalores asociado al sistema anterior con el método de separación de variables:&lt;br /&gt;
 &amp;lt;math&amp;gt; \left\{\begin{matrix}&lt;br /&gt;
D (\frac{X'(\rho)}{\rho} + X''(\rho))+ λX(\rho)=0 \\&lt;br /&gt;
X'(0) = 0;   X(20)= 0 \\ &lt;br /&gt;
&lt;br /&gt;
\end{matrix}\right. &amp;lt;/math&amp;gt;&lt;br /&gt;
[[Archivo:Marta1.jpg|marco|derecha]]&lt;br /&gt;
Sabemos que los problemas de esta forma tienen como solución la función de Bessel de primera especie que forma una familia de autofunciones: &amp;lt;math&amp;gt;Ψ(\rho)=J_0·(\rho\sqrt{λ})&amp;lt;/math&amp;gt;. Estas se anulan cuando &amp;lt;math&amp;gt;(\rho\sqrt{λ})&amp;lt;/math&amp;gt; se iguala a 2.4048, 5.5201, 8.6537, 11.7915 y 14.9309, siendo estos los 5 primeros ceros de la función de Bessel. De esta manera y tomando ρ=20 obtenemos los 5 primeros autovalores:&lt;br /&gt;
&amp;lt;math&amp;gt;(20\sqrt{λ})=2.4048&amp;lt;/math&amp;gt;Haciendo la operación anterior para los 5 ceros obtenemos los siguientes autovalores: 0.0145, 0.0762, 0.1872, 0.3476, 0.5573.&lt;br /&gt;
Ahora vamos a dibujar las 5 primeras autofunciones utilizando la función besselj:&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
a1=0.0145;&lt;br /&gt;
a2=0.0762;&lt;br /&gt;
a3=0.1872;&lt;br /&gt;
a4=0.3476;&lt;br /&gt;
a5=0.5575;&lt;br /&gt;
r=0:0.02:20;&lt;br /&gt;
F1=besselj(0,r.*(sqrt(a1))); &lt;br /&gt;
F2=besselj(0,r.*(sqrt(a2)));&lt;br /&gt;
F3=besselj(0,r.*(sqrt(a3)));&lt;br /&gt;
F4=besselj(0,r.*(sqrt(a4)));&lt;br /&gt;
F5=besselj(0,r.*(sqrt(a5)));&lt;br /&gt;
hold on&lt;br /&gt;
plot(r,F1)&lt;br /&gt;
plot(r,F2,'r')&lt;br /&gt;
plot(r,F3,'g')	&lt;br /&gt;
plot(r,F4,'c')&lt;br /&gt;
plot(r,F5,'y')&lt;br /&gt;
hold off&lt;br /&gt;
}}&lt;br /&gt;
[[Archivo:Marta2.jpg|marco|derecha]]&lt;br /&gt;
Aproximamos ahora la solución de la ecuación tomando como dato inicial es&amp;lt;math&amp;gt; h (\rho,0)= -log \frac{|\rho + 0.01|}{20.01} &amp;lt;/math&amp;gt; y usando 5 términos del desarrollo de Fourier, teniendo en cuenta que las autofunciones son ortogonales respecto al producto escalar: &amp;lt;math&amp;gt; (f(\rho),g(\rho)) = \int_{0}^{20} \rho f(\rho) g(\rho) \cdot dx &amp;lt;/math&amp;gt;&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
x0=0; L=20;&lt;br /&gt;
c0=[2.4048,5.5201,8.6537,11.7915,14.9309]; %Vector de ceros de la función de Bessel&lt;br /&gt;
A=(c0./20).^2; %Vector de autovalores&lt;br /&gt;
K=5; %Número de términos del desarrollo de Fourier&lt;br /&gt;
x=x0:0.1:L;&lt;br /&gt;
N=length(x)-1;&lt;br /&gt;
J=zeros(N+1,K);&lt;br /&gt;
z=zeros(N+1,K);&lt;br /&gt;
t0=0; tf=500;&lt;br /&gt;
t=t0:0.1:tf;&lt;br /&gt;
[xx,tt]=meshgrid(x,t);&lt;br /&gt;
h=0;&lt;br /&gt;
for k=1:K&lt;br /&gt;
   z(:,k)=(x)'*sqrt(A(k));&lt;br /&gt;
   J(:,k)=besselj(0,z(:,k));&lt;br /&gt;
   h0=-log((abs(x+0.1))/20.01); %Condición inicial&lt;br /&gt;
   c(k)=trapz(x,x'.*h0'.*J(:,k))/trapz(x,x'.*J(:,k).*J(:,k)); %Coeficientes de Fourier&lt;br /&gt;
   h=h+c(k)*exp(-A(k)*t)'*J(:,k)';&lt;br /&gt;
end&lt;br /&gt;
surf(xx,tt,h)&lt;br /&gt;
title('Aproximación de la solución')&lt;br /&gt;
}}&lt;/div&gt;</summary>
		<author><name>Marta Cavero</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Nivel_piezom%C3%A9trico_de_un_acu%C3%ADfero_confinado_(A5)&amp;diff=30100</id>
		<title>Nivel piezométrico de un acuífero confinado (A5)</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Nivel_piezom%C3%A9trico_de_un_acu%C3%ADfero_confinado_(A5)&amp;diff=30100"/>
				<updated>2015-05-14T15:22:52Z</updated>
		
		<summary type="html">&lt;p&gt;Marta Cavero: /* Variación del nivel piezométrico en tiempos grandes */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;br /&gt;
==== Introducción ====&lt;br /&gt;
&lt;br /&gt;
Consideramos un acuífero confinado entre dos capas de terreno impermeables horizontales. Llamaremos h(x, y) al nivel piezométrico del acuífero, definido por la altura que alcanzaría el agua si hiciéramos un sondeo en el punto (x, y). Obviamente este valor depende de la presión a la que se encuentra el agua confinada en el acuífero. Supondremos&lt;br /&gt;
que el acuífero es un medio poroso saturado de agua que ocupa una región infinita y está en equilibrio de manera que &amp;lt;math&amp;gt;h(x, y) = h_0&amp;lt;/math&amp;gt; constante para todo (x, y) ∈ &amp;lt;math&amp;gt;IR^{2}&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Sobre el acuifero se construye un pozo de sección circular y radio&amp;lt;math&amp;gt; ρ_0&amp;lt;/math&amp;gt; para extraer agua. La presencia del pozo hace que el nivel piezométrico cambie. Dada la simetría del problema podemos suponer que h(x, y) sólo va a depender de la distancia al pozo. Si tomamos coordenadas cilíndricas de forma que el eje OZ coincida con el eje de simetría del pozo, entonces h = h(ρ) donde &amp;lt;math&amp;gt;ρ = \sqrt{x^{2} + y^{2}}&amp;lt;/math&amp;gt; . Trabajaremos por tanto en coordenadas polares en el plano (ρ, θ).&lt;br /&gt;
&lt;br /&gt;
Las ecuaciones que permiten conocer h(ρ) son la ecuación de conservación de la masa:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; S = \frac{∂h}{∂t} + div q = 0 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
junto con la ley de Darcy&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; q = −K∇h &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
que es una ley experimental que modela el flujo de agua en un medio poroso. La ley de Darcy establece que el flujo de agua q a través de un medio poroso es proporcional a la diferencia de presión, que a su vez se puede escribir en términos del gradiente del nivel piezométrico en cada punto. La constante K se deduce experimentalmente para cada material y se conoce como la conductividad hidráulica o permeabilidad. Cuanto mayor es la constante K mayor es el flujo de agua provocado por un cambio&lt;br /&gt;
de presión. La ley de Darcy proporciona una buena aproximación del comportamiento del agua en un medio poroso siempre que este sea homogéneo e isótropo.&lt;br /&gt;
&lt;br /&gt;
La constante S en la ley de conservación de la masa se conoce como almacenamiento específico y se interpreta como la cantidad de agua que libera el acuífero al descender el nivel piezométrico en una unidad, por unidad de volumen.&lt;br /&gt;
&lt;br /&gt;
Combinando las ecuaciones de conservación de la masa con la ley de Darcy, obtenemos la ecuación:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \frac{∂h}{∂t} - D∆h = 0, ρ &amp;gt; ρ_0, θ ∈ (0, 2π), t &amp;gt; 0, (1) &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
donde D = K/S es la difusividad hidráulica que supondremos constante.&lt;br /&gt;
&lt;br /&gt;
==== Deducción de la fórmula ====&lt;br /&gt;
&lt;br /&gt;
En este apartado buscamos demostrar la ecuación (1) como combinación de la ecuación de conservación de masas y la Ley de Darcy.&lt;br /&gt;
&lt;br /&gt;
Por un lado sabemos que el laplaciaco equivale a la divergencia del gradiente: &lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; &lt;br /&gt;
(\Delta f = \nabla \cdot \nabla f = div \left (\nabla f) \right) &lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Por otro lado, sabemos que en coordenadas polares: &lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;x = ρ cos \theta \\&lt;br /&gt;
             y = ρ  sen \theta&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\bar{g_ρ } = cos \theta \bar{i} + sin \theta  \bar{j} \\&lt;br /&gt;
              \bar{g_\theta } = - ρ  sin \theta \bar{i} + ρ cos \theta \bar{j} &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;&lt;br /&gt;
G =&lt;br /&gt;
\left(&lt;br /&gt;
\begin{array}{cc}&lt;br /&gt;
1&amp;amp; 0 \\&lt;br /&gt;
0 &amp;amp; ρ ^{2} \\&lt;br /&gt;
\end{array}&lt;br /&gt;
\right);&lt;br /&gt;
\text {donde la raiz del determinante es} \sqrt{g} = ρ&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Como indica el enunciado, al sustituir la Ley de Darcy en la ecuación de conservación de la masa obtenemos y dividir entre S, teniendo en cuenta que el divergente del gradiente es el laplaciano como hemos indicado al principio de este apartado, obtenemos la ecuación (1): &amp;lt;math&amp;gt; \frac{∂h}{∂t} - \frac{k}{S}∆h = 0 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
En esta ecuación queda por desarrollar el Laplaciano de h. &lt;br /&gt;
Partiremos de la función h(ρ,θ), de la cual calcularemos primero el gradiente:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \nabla h = \frac{\partial h}{\partial \rho}\hat{\rho} + \frac{\partial h}{\partial \rho}\hat{\theta} =  \frac{\partial h}{\partial \rho}\bar{\rho} + \frac{1}{\rho^{2}} \frac{\partial h}{\partial \rho}\bar{\theta}  &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
teniendo en cuenta que &amp;lt;math&amp;gt;\bar{g^{i} } = \frac{\bar{g_i } }{ | \bar{g_i } | ^{2} } &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Ahora hacemos el divergente del gradiente anterior y obtenemos el Laplaciano en coordenadas polares:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;math&amp;gt;&lt;br /&gt;
 \Delta h = div(∇h) &lt;br /&gt;
= {1 \over \rho} {\partial \over \partial \rho}&lt;br /&gt;
  \left( \rho {\partial h \over \partial \rho} \right) &lt;br /&gt;
+ {1 \over \rho^2} {\partial^2 h \over \partial \theta^2}&lt;br /&gt;
= {1 \over \rho} {\partial h \over \partial \rho} &lt;br /&gt;
+ {\partial^2 h \over \partial \rho^2}&lt;br /&gt;
+ {1 \over \rho^2} {\partial^2 h \over \partial \theta^2}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Si consideramos que, debido a la simetría del problema, h sólo depende de su distancia al pozo, entonces obtenemos la función radial h(ρ), que nos permite simplificar el Laplaciano del modo siguiente:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;math&amp;gt;&lt;br /&gt;
 \Delta h = div(∇h) &lt;br /&gt;
= {1 \over \rho} {\partial h \over \partial \rho} &lt;br /&gt;
+ {\partial^2 h \over \partial \rho^2}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== Obtención de la ecuación====&lt;br /&gt;
&lt;br /&gt;
Para poder resolver la ecuación anterior y que el resultado sea único, hemos de establecer condiciones iniciales y de contorno.&lt;br /&gt;
&lt;br /&gt;
Las condiciones de contorno serán dos pues aparece la derivada segunda de la posición: &amp;lt;math&amp;gt; h(\rho_0 , t) = h_p \\&lt;br /&gt;
                                                                                                                                                                  h(20,t) = h_0 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
La condición inicial será única pues sólo aparece una derivada de primer orden en tiempo en nuestra ecuación: &amp;lt;math&amp;gt; h(\rho,0) = h_0 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
De este modo la ecuación resultante será:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \left\{\begin{matrix}&lt;br /&gt;
\frac{\partial h}{\partial t} - \frac{k}{s} (\frac{1}{\rho}  \frac{\partial h}{\partial \rho} + \frac{\partial^2 h}{\partial \rho^2})= 0 &amp;amp; \rho \epsilon (\rho_{0}, 2c) &amp;amp; \theta \epsilon (0, 2\Pi ) &amp;amp; t &amp;gt; 0 \\ &lt;br /&gt;
h(\rho_{0},t) = h_{p};   h(20, t)= h_{0} \\ &lt;br /&gt;
h(\rho, 0) = h_{0} &lt;br /&gt;
\end{matrix}\right. &amp;lt;/math&amp;gt; &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==== Resolución por método de diferencias finitas ====&lt;br /&gt;
&lt;br /&gt;
Suponiendo &amp;lt;math&amp;gt;ρ_0 =0.5m&amp;lt;/math&amp;gt;, &amp;lt;math&amp;gt;h_0 =45m&amp;lt;/math&amp;gt;, &amp;lt;math&amp;gt;hp =34&amp;lt;/math&amp;gt;, D=10−2, &amp;lt;math&amp;gt;(ρ,0)=h_0&amp;lt;/math&amp;gt;; y tomando  ∆ρ = 0.1 y ∆t = ∆ρ. Vamos a resolver la ecuación anterior por el método de diferencias finitas, usando el Método de Heun para realizar la aproximación en tiempo.&lt;br /&gt;
&lt;br /&gt;
Primero, sustituyendo los datos anteriores en la ecuación, llegamos a:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \left\{\begin{matrix}&lt;br /&gt;
\frac{\partial h}{\partial t} - 10^{2} (\frac{1}{\rho}  \frac{\partial h}{\partial \rho} + \frac{\partial^2 h}{\partial \rho^2})= 0 &amp;amp; \rho \epsilon (0.5, 20) &amp;amp; \theta \epsilon (0, 2\Pi ) &amp;amp; t &amp;gt; 0 \\ &lt;br /&gt;
h(0.5,t) = 34;   h(20, t)= 45 \\ &lt;br /&gt;
h(\rho, 0) = 45&lt;br /&gt;
\end{matrix}\right. &amp;lt;/math&amp;gt; &lt;br /&gt;
&lt;br /&gt;
Aplicando el método de las diferencias finitas llegamos al siguiente código:&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
&lt;br /&gt;
%TRPRIMERA FASE. ESPACIO&lt;br /&gt;
&lt;br /&gt;
a=0.5; b=20; %Condiciones de contorno&lt;br /&gt;
drho=0.1; N=(b-a)/drho; %División del intervalo&lt;br /&gt;
&lt;br /&gt;
rho=a+drho:drho:b-drho; %Sólo nodos interiores&lt;br /&gt;
&lt;br /&gt;
%Creamos las matrices&lt;br /&gt;
&lt;br /&gt;
L=diag(ones(1,N-2),1)-diag(ones(1,N-2),-1);&lt;br /&gt;
A=diag(1./rho);&lt;br /&gt;
L=10^(-2)*(1/(2*drho))*A*L;&lt;br /&gt;
&lt;br /&gt;
K=-2*diag(ones(1,N-1))+diag(ones(1,N-2),1)+diag(ones(1,N-2),-1);&lt;br /&gt;
K=10^(-2)*(1/drho^2)*K; &lt;br /&gt;
&lt;br /&gt;
F=zeros(N-1,1);&lt;br /&gt;
F(1,1)=10^(-2)*(-17/(rho(1)*drho)+34/drho^2);&lt;br /&gt;
F(N-1,1)=10^(-2)*(45/(rho(N-1)*2*drho)+45/drho^2);&lt;br /&gt;
&lt;br /&gt;
%SEGUDA FASE. TIEMPO&lt;br /&gt;
&lt;br /&gt;
H=ones(1,length(rho)); H=H*45; H=H';&lt;br /&gt;
dt=drho; T=10; t=0:dt:T;&lt;br /&gt;
h0=34; hN=45;&lt;br /&gt;
sol=[h0 H' hN];&lt;br /&gt;
&lt;br /&gt;
for j=1:length(t)-1 &lt;br /&gt;
    &lt;br /&gt;
    %Método de Heun&lt;br /&gt;
    k1=F+(K+L)*H;&lt;br /&gt;
    k2=F+(K+L)*(H+k1*dt);&lt;br /&gt;
    H=H+(dt/2)*(k1+k2);&lt;br /&gt;
 &lt;br /&gt;
    sol(j+1,:)=[h0 H' hN]; %Salvamos las solución, incluimos los extremos&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
rho1=a:drho:b; %Incluimos los nodos exteriores&lt;br /&gt;
&lt;br /&gt;
[rr,tt]=meshgrid(rho1,t);&lt;br /&gt;
surf(rr,tt,sol); %Dibujamos la solución&lt;br /&gt;
title('Nivel Piezométrico. Método Diferencias finitas con Heun en tiempo.')&lt;br /&gt;
xlabel('Distancia radial al centro del pozo.')&lt;br /&gt;
ylabel('Tiempo.')&lt;br /&gt;
zlabel('Nivel piezométrico.')&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
Mediante este código obtenemos la siguiente gráfica:&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Grafica npiezometrico.jpg|500px|thumb|best|Gráfica Nivel Piezométrico aproximada con el Método de Diferencias Finitas con Heun en tiempo.]]&lt;br /&gt;
&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Ahora dibujaremos la gráfica mediante los métodos de Euler implícito y trapecio y compararemos los resultados obtenidos.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Sobre el programa anterior cambiaremos las líneas correspondientes al método de Heun.&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* Método de Euler implícito:&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;math&amp;gt; \left\{\begin{matrix}&lt;br /&gt;
y_{0}\\&lt;br /&gt;
y_{n+1}=y_{n} + hf(t_{n+1},y_{n+1})\\&lt;br /&gt;
\end{matrix}\right. &amp;lt;/math&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
&lt;br /&gt;
for j=1:length(t)-1 &lt;br /&gt;
    &lt;br /&gt;
    %Método de Euler implícito&lt;br /&gt;
    &lt;br /&gt;
    H=(eye(N-1)-dt*(K+L))\(H+(F*dt)); &lt;br /&gt;
 &lt;br /&gt;
    sol(j+1,:)=[h0 H' hN]; %Salvamos las solución, incluimos los extremos&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
rho1=a:drho:b; %Incluimos los nodos exteriores&lt;br /&gt;
&lt;br /&gt;
[rr,tt]=meshgrid(rho1,t);&lt;br /&gt;
surf(rr,tt,sol); %Dibujamos la solución&lt;br /&gt;
title('Nivel Piezométrico. Método Diferencias finitas con Euler en tiempo.')&lt;br /&gt;
xlabel('Distancia radial al centro del pozo.')&lt;br /&gt;
ylabel('Tiempo.')&lt;br /&gt;
zlabel('Nivel piezométrico.')&lt;br /&gt;
&lt;br /&gt;
}}&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* Método del Trapecio:&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;math&amp;gt; \left\{\begin{matrix}&lt;br /&gt;
y_{0}\\&lt;br /&gt;
y_{n+1}=y_{n} + \frac{h}{2}f((t_{n},y_{n}+f(t_{n+1},y_{n+1}))\\&lt;br /&gt;
\end{matrix}\right. &amp;lt;/math&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
for j=1:length(t)-1 &lt;br /&gt;
    &lt;br /&gt;
    %Método del trapecio&lt;br /&gt;
    k1=F+(K+L)*H;&lt;br /&gt;
    k2=F+(K+L)*(H+k1*dt); &lt;br /&gt;
    H=(eye(N-1)-(dt/2)*(K+L))\(H+dt*F+(dt/2)*(K+L)*H);&lt;br /&gt;
 &lt;br /&gt;
    sol(j+1,:)=[h0 H' hN]; %Salvamos las solución, incluimos los extremos&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
rho1=a:drho:b; %Incluimos los nodos exteriores&lt;br /&gt;
&lt;br /&gt;
[rr,tt]=meshgrid(rho1,t);&lt;br /&gt;
surf(rr,tt,sol); %Dibujamos la solución&lt;br /&gt;
title('Nivel Piezométrico. Método Diferencias finitas con trapecio en tiempo.')&lt;br /&gt;
xlabel('Distancia radial al centro del pozo.')&lt;br /&gt;
ylabel('Tiempo.')&lt;br /&gt;
zlabel('Nivel piezométrico.')&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
Como podemos ver a continuación las tres gráficas resultantes son prácticamente iguales por lo que los tres métodos hacen una aproximación similar.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
[[Archivo:Trapecio12.png|500px|thumb|right|Gráfica Nivel Piezométrico aproximada con el Método de Diferencias Finitas con Trapecio en tiempo.]]&lt;br /&gt;
[[Archivo:Euler12.png|500px|thumb|right|Gráfica Nivel Piezométrico aproximada con el Método de Diferencias Finitas con Euler Implícito en tiempo.]]&lt;br /&gt;
&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== Comportamiento del nivel piezométrico con &amp;lt;math&amp;gt; \rho &amp;lt;/math&amp;gt; constante ====&lt;br /&gt;
&lt;br /&gt;
Ahora supondremos que &amp;lt;math&amp;gt; \rho &amp;lt;/math&amp;gt; es constante y que su valor es 2 y dibujaremos el comportamiento del nivel piezométrico en una gráfica 2D nivel piezométrico-tiempo.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Nuevamente utilizando el programa anterior con el  método de Heun:&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Rho2.png|500px|thumb|best|Gráfica Nivel Piezométrico-tiempo para &amp;lt;math&amp;gt; \rho =2 &amp;lt;/math&amp;gt; para T=10.]]&lt;br /&gt;
[[Archivo:Rho1000.png|500px|thumb|best|Gráfica Nivel Piezométrico-tiempo para &amp;lt;math&amp;gt; \rho =2 &amp;lt;/math&amp;gt; para T=1000.]]&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
&lt;br /&gt;
%PRIMERA FASE. ESPACIO&lt;br /&gt;
&lt;br /&gt;
a=0.5; b=20; %Condiciones de contorno&lt;br /&gt;
drho=0.1; N=(b-a)/drho; %División del intervalo&lt;br /&gt;
&lt;br /&gt;
rho=a+drho:drho:b-drho; %Sólo nodos interiores&lt;br /&gt;
&lt;br /&gt;
%Creamos las matrices&lt;br /&gt;
&lt;br /&gt;
L=diag(ones(1,N-2),1)-diag(ones(1,N-2),-1);&lt;br /&gt;
A=diag(1./rho);&lt;br /&gt;
L=10^(-2)*(1/(2*drho))*A*L;&lt;br /&gt;
&lt;br /&gt;
K=-2*diag(ones(1,N-1))+diag(ones(1,N-2),1)+diag(ones(1,N-2),-1);&lt;br /&gt;
K=10^(-2)*(1/drho^2)*K; &lt;br /&gt;
&lt;br /&gt;
F=zeros(N-1,1);&lt;br /&gt;
F(1,1)=10^(-2)*(-17/(rho(1)*drho)+34/drho^2);&lt;br /&gt;
F(N-1,1)=10^(-2)*(45/(rho(N-1)*2*drho)+45/drho^2);&lt;br /&gt;
&lt;br /&gt;
%SEGUDA FASE. TIEMPO&lt;br /&gt;
&lt;br /&gt;
H=ones(1,length(rho)); H=H*45; H=H';&lt;br /&gt;
dt=drho; &lt;br /&gt;
T=10 &lt;br /&gt;
%Comprobamos también la solución para un tiempo mayor &lt;br /&gt;
%T=1000&lt;br /&gt;
t=0:dt:T;&lt;br /&gt;
h0=34; hN=45;&lt;br /&gt;
sol=[h0 H' hN];&lt;br /&gt;
&lt;br /&gt;
for j=1:length(t)-1 &lt;br /&gt;
    &lt;br /&gt;
    %Método de Heun&lt;br /&gt;
    k1=F+(K+L)*H;&lt;br /&gt;
    k2=F+(K+L)*(H+k1*dt);&lt;br /&gt;
    H=H+(dt/2)*(k1+k2);&lt;br /&gt;
 &lt;br /&gt;
    sol(j+1,:)=[h0 H' hN]; %Salvamos las solución, incluimos los extremos&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
rho1=a:drho:b; %Incluimos los nodos exteriores&lt;br /&gt;
&lt;br /&gt;
m=sol(:,rho==2); %Vector que incluye la solución en tiempo para rho=2&lt;br /&gt;
&lt;br /&gt;
plot(t,m);&lt;br /&gt;
&lt;br /&gt;
title('Comportamiento del nivel piezométrico en el tiempo para p=2')&lt;br /&gt;
xlabel('Tiempo')&lt;br /&gt;
ylabel('Nivel piezométrico.')&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
La primera gráfica muestra que para tiempos pequeños la variación del nivel piezométrico es muy pequeña (del orden de 0,10/0,15 m), aún así como observamos en la segunda gráfica a medida que avanzamos en el tiempo la variación del nivel disminuye aún más ya que la curva está cada vez menos inclinada.&lt;br /&gt;
&lt;br /&gt;
==== Variación del nivel piezométrico en tiempos grandes ====&lt;br /&gt;
Ahora vamos a comprobar que la variación del nivel piezométrico para tiempos elevados (T=5000) es mínima.&lt;br /&gt;
Para ello dibujaremos las soluciones cada 100 horas de en el intervalo temporal [1; 5000], en&lt;br /&gt;
una misma gráfica.&lt;br /&gt;
[[Archivo:Tiemposg2.png|marco|derecha|Nivel piezométrico para tiempos grandes]]&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
%PRIMERA FASE. ESPACIO&lt;br /&gt;
&lt;br /&gt;
a=0.5; b=20; %Condiciones de contorno&lt;br /&gt;
drho=0.1; N=(b-a)/drho; %División del intervalo&lt;br /&gt;
&lt;br /&gt;
rho=a+drho:drho:b-drho; %Sólo nodos interiores&lt;br /&gt;
&lt;br /&gt;
%Creamos las matrices&lt;br /&gt;
&lt;br /&gt;
L=diag(ones(1,N-2),1)-diag(ones(1,N-2),-1);&lt;br /&gt;
A=diag(1./rho);&lt;br /&gt;
L=10^(-2)*(1/(2*drho))*A*L;&lt;br /&gt;
&lt;br /&gt;
K=-2*diag(ones(1,N-1))+diag(ones(1,N-2),1)+diag(ones(1,N-2),-1);&lt;br /&gt;
K=10^(-2)*(1/drho^2)*K; &lt;br /&gt;
&lt;br /&gt;
F=zeros(N-1,1);&lt;br /&gt;
F(1,1)=10^(-2)*(-17/(rho(1)*drho)+34/drho^2);&lt;br /&gt;
F(N-1,1)=10^(-2)*(45/(rho(N-1)*2*drho)+45/drho^2);&lt;br /&gt;
&lt;br /&gt;
%SEGUDA FASE. TIEMPO&lt;br /&gt;
&lt;br /&gt;
H=ones(1,length(rho)); H=H*45; H=H';&lt;br /&gt;
dt=0.1; T=5000; t=0:dt:T;&lt;br /&gt;
h0=34; hN=45;&lt;br /&gt;
sol=[h0 H' hN];&lt;br /&gt;
&lt;br /&gt;
figure(1);&lt;br /&gt;
hold on;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
for j=1:length(t)-1 &lt;br /&gt;
    &lt;br /&gt;
    %Método de Heun&lt;br /&gt;
    k1=F+(K+L)*H;&lt;br /&gt;
    k2=F+(K+L)*(H+k1*dt);&lt;br /&gt;
    H=H+(dt/2)*(k1+k2);&lt;br /&gt;
 &lt;br /&gt;
    sol(j+1,:)=[h0 H' hN]; %Salvamos las solución, incluimos los extremos&lt;br /&gt;
    &lt;br /&gt;
 if rem(t(j),100)==0; &lt;br /&gt;
    &lt;br /&gt;
    rho1=a:drho:b; %Incluimos los nodos exteriores&lt;br /&gt;
  &lt;br /&gt;
  plot(rho1,sol(j,:)) %pintamos la solución cada 100 horas&lt;br /&gt;
  &lt;br /&gt;
  title('Variación del nivel piezométrico para tiempos grandes')&lt;br /&gt;
  pause(1)&lt;br /&gt;
&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
end&lt;br /&gt;
}}&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Como se puede observar en la gráfica según vamos avanzando en el tiempo las curvas están más juntas lo que quiere decir que la variación del nivel es cada vez menor aproximándose a un régimen estacionario.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Trabajo21.jpg|marco|derecha|Nivel piezométrico estacionario]]&lt;br /&gt;
&lt;br /&gt;
====Problema estacionario====&lt;br /&gt;
Como hemos visto en el apartado anterior para tiempos grandes el nivel piezométrico se mantiene practicamente constante a lo largo del tiempo, esto es debido a que se establece un equilibrio entre el caudal de agua extraida del acuifero y la migración de aguas desde los puntos más alejados del pozo hacia este.&lt;br /&gt;
Por lo tanto se verifica que:&lt;br /&gt;
 &amp;lt;math&amp;gt;\frac{\partial h}{\partial t}=0&amp;lt;/math&amp;gt;&lt;br /&gt;
Y por lo tanto el nivel piezométrico se puede aproximar por:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \left\{\begin{matrix}&lt;br /&gt;
- \frac{k}{s} (\frac{1}{\rho}  \frac{\partial h}{\partial \rho} + \frac{\partial^2 h}{\partial \rho^2})= 0 &amp;amp; \rho \epsilon (1, 20) &amp;amp; \theta \epsilon (0, 2\Pi ) &amp;amp; 0 &amp;lt; t &amp;lt; 5000 \\ &lt;br /&gt;
h(1,t) = 35;    h(20, t)= 40 \\ &lt;br /&gt;
h(\rho, 0) = 40 &lt;br /&gt;
\end{matrix}\right. &amp;lt;/math&amp;gt;&lt;br /&gt;
Resolvemos por diferencias finitas:&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
    %datos&lt;br /&gt;
    t=5000;&lt;br /&gt;
    l=20;&lt;br /&gt;
    D=0.01;&lt;br /&gt;
    hp=35;&lt;br /&gt;
    ho=40;&lt;br /&gt;
    %discretización&lt;br /&gt;
    s=0.1;&lt;br /&gt;
    x0=1;&lt;br /&gt;
    x=x0:s:l;&lt;br /&gt;
    xint=x0+s:s:l-s;&lt;br /&gt;
    N=length(x)-2; &lt;br /&gt;
    %construimos las matrices para el método de las diferencias finitas&lt;br /&gt;
    K=(1/s^2)*(diag(2*ones(1,N))-diag(ones(1,N-1),1)-diag(ones(1,N-1),-1));&lt;br /&gt;
    A=(1/(s*2))*(diag(ones(1,N-1),1)-diag(ones(1,N-1),-1));&lt;br /&gt;
    A=diag(1./xint)*A;&lt;br /&gt;
    h0=(40*ones(N,1));&lt;br /&gt;
    dt=200; &lt;br /&gt;
    t=0:dt:t;&lt;br /&gt;
    M=length(t)-1;&lt;br /&gt;
    F=(zeros(N,1));&lt;br /&gt;
    F(1)=D*((hp/s^2)-(hp/(2*s)*1/xint(1)));&lt;br /&gt;
    F(N)=D*((ho/s^2)+ho/(s*2*xint(N)));&lt;br /&gt;
    H(1,:)=[40;h0;40]'; &lt;br /&gt;
    h=h0;&lt;br /&gt;
    for n=1:M&lt;br /&gt;
      h=(D)*(K-A)\((F)); %utilizamos el comando backslash para resolver el sistema de ecuaciones&lt;br /&gt;
      H(n+1,:)=[hp h' ho];&lt;br /&gt;
    end&lt;br /&gt;
    %mallado y representación&lt;br /&gt;
    [X,T]=meshgrid(x,t);&lt;br /&gt;
    surf(X,T,H)&lt;br /&gt;
    xlabel('Distancia (metros)');&lt;br /&gt;
    ylabel('Tiempo (horas)');&lt;br /&gt;
    zlabel('Nivel piezométrico (metros)')&lt;br /&gt;
}}&lt;br /&gt;
Efectivamente, como podemos comprobar en la gráfica, la solución es independiente del tiempo salvo para tiempos pequeños en los cuales no queda muy bien definida&lt;br /&gt;
&lt;br /&gt;
====Capacidad de recuperación del acuífero====&lt;br /&gt;
En este apartado queremos calcular una ley que nos describa el comportamiento del acuífero e el caso de que impermeabilizásemos las paredes del pozo partiendo del estado estacionario anterior, esto significaría que el fujo de agua en los bordes del pozo sería nulo y el nivel piezométrico iría variando hasta llegar a otro estado estacionario.&lt;br /&gt;
El estado estacionarioque tenderá a alcanzar el fluido será el inicial, ya que al impermeabilizar las paredes volvemos al caso del acuífero confinado y por ello es nivel piezométrico quedará constante a lo largo del tiempo y de la extensión del acuífero.&lt;br /&gt;
La condición frontera a imponer será que el flujo de agua en r0 será 0, ya que estará impermeabilizado. Esto lo podemos plasmar diciendo que la parcial del nivel piezométrico con respecto a ro en r0 es 0, ya que un aislamiento impide el flujo de líquido, y si el flujo de líquido es nulo el nivel piezométrico no varía.&lt;br /&gt;
&amp;lt;math&amp;gt;\frac{\partial h}{\partial \rho}=0&amp;lt;/math&amp;gt;&lt;br /&gt;
====Método de Fourier====&lt;br /&gt;
Ahora suponemos que el radio del pozo es despreciable y que una vez extraido el agua el pozo se cierra quedando el acuifero de nuevo homogéneo. En este caso tomaremos la región ρ &amp;lt; 20. Nuestro objetivo es aproximar las soluciones usando el método de Fourier. De nuevo supondremos que la solución sólo depende de ρ y t, y tomaremos ahora como condición frontera h(20, t) = 40.&lt;br /&gt;
Vamos a considerar el sistema de ecuaciones para h(ρ,t)=h(ρ,t)-40:&lt;br /&gt;
 &amp;lt;math&amp;gt; \left\{\begin{matrix}&lt;br /&gt;
\frac{\partial h}{\partial t} - D (\frac{1}{\rho}  \frac{\partial h}{\partial \rho} + \frac{\partial^2 h}{\partial \rho^2})= 0 &amp;amp; \rho \epsilon (0, 20) &amp;amp; \theta \epsilon (0, 2\Pi ) &amp;amp; t &amp;gt; 0 \\ &lt;br /&gt;
\frac{\partial h}{\partial \rho}(0,t) = 0;   h(20, t)= 0 \\ &lt;br /&gt;
\end{matrix}\right. &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Obtenemos el problema de autovalores asociado al sistema anterior con el método de separación de variables:&lt;br /&gt;
 &amp;lt;math&amp;gt; \left\{\begin{matrix}&lt;br /&gt;
D (\frac{X'(\rho)}{\rho} + X''(\rho))+ λX(\rho)=0 \\&lt;br /&gt;
X'(0) = 0;   X(20)= 0 \\ &lt;br /&gt;
&lt;br /&gt;
\end{matrix}\right. &amp;lt;/math&amp;gt;&lt;br /&gt;
[[Archivo:Marta1.jpg|marco|derecha]]&lt;br /&gt;
Sabemos que los problemas de esta forma tienen como solución la función de Bessel de primera especie que forma una familia de autofunciones: &amp;lt;math&amp;gt;Ψ(\rho)=J_0·(\rho\sqrt{λ})&amp;lt;/math&amp;gt;. Estas se anulan cuando &amp;lt;math&amp;gt;(\rho\sqrt{λ})&amp;lt;/math&amp;gt; se iguala a 2.4048, 5.5201, 8.6537, 11.7915 y 14.9309, siendo estos los 5 primeros ceros de la función de Bessel. De esta manera y tomando ρ=20 obtenemos los 5 primeros autovalores:&lt;br /&gt;
&amp;lt;math&amp;gt;(20\sqrt{λ})=2.4048&amp;lt;/math&amp;gt;Haciendo la operación anterior para los 5 ceros obtenemos los siguientes autovalores: 0.0145, 0.0762, 0.1872, 0.3476, 0.5573.&lt;br /&gt;
Ahora vamos a dibujar las 5 primeras autofunciones utilizando la función besselj:&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
a1=0.0145;&lt;br /&gt;
a2=0.0762;&lt;br /&gt;
a3=0.1872;&lt;br /&gt;
a4=0.3476;&lt;br /&gt;
a5=0.5575;&lt;br /&gt;
r=0:0.02:20;&lt;br /&gt;
F1=besselj(0,r.*(sqrt(a1))); &lt;br /&gt;
F2=besselj(0,r.*(sqrt(a2)));&lt;br /&gt;
F3=besselj(0,r.*(sqrt(a3)));&lt;br /&gt;
F4=besselj(0,r.*(sqrt(a4)));&lt;br /&gt;
F5=besselj(0,r.*(sqrt(a5)));&lt;br /&gt;
hold on&lt;br /&gt;
plot(r,F1)&lt;br /&gt;
plot(r,F2,'r')&lt;br /&gt;
plot(r,F3,'g')	&lt;br /&gt;
plot(r,F4,'c')&lt;br /&gt;
plot(r,F5,'y')&lt;br /&gt;
hold off&lt;br /&gt;
}}&lt;br /&gt;
[[Archivo:Marta2.jpg|marco|derecha]]&lt;br /&gt;
Aproximamos ahora la solución de la ecuación tomando como dato inicial es&amp;lt;math&amp;gt; h (\rho,0)= -log \frac{|\rho + 0.01|}{20.01} &amp;lt;/math&amp;gt; y usando 5 términos del desarrollo de Fourier, teniendo en cuenta que las autofunciones son ortogonales respecto al producto escalar: &amp;lt;math&amp;gt; (f(\rho),g(\rho)) = \int_{0}^{20} \rho f(\rho) g(\rho) \cdot dx &amp;lt;/math&amp;gt;&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
x0=0; L=20;&lt;br /&gt;
c0=[2.4048,5.5201,8.6537,11.7915,14.9309]; %Vector de ceros de la función de Bessel&lt;br /&gt;
A=(c0./20).^2; %Vector de autovalores&lt;br /&gt;
K=5; %Número de términos del desarrollo de Fourier&lt;br /&gt;
x=x0:0.1:L;&lt;br /&gt;
N=length(x)-1;&lt;br /&gt;
J=zeros(N+1,K);&lt;br /&gt;
z=zeros(N+1,K);&lt;br /&gt;
t0=0; tf=500;&lt;br /&gt;
t=t0:0.1:tf;&lt;br /&gt;
[xx,tt]=meshgrid(x,t);&lt;br /&gt;
h=0;&lt;br /&gt;
for k=1:K&lt;br /&gt;
   z(:,k)=(x)'*sqrt(A(k));&lt;br /&gt;
   J(:,k)=besselj(0,z(:,k));&lt;br /&gt;
   h0=-log((abs(x+0.1))/20.01); %Condición inicial&lt;br /&gt;
   c(k)=trapz(x,x'.*h0'.*J(:,k))/trapz(x,x'.*J(:,k).*J(:,k)); %Coeficientes de Fourier&lt;br /&gt;
   h=h+c(k)*exp(-A(k)*t)'*J(:,k)';&lt;br /&gt;
end&lt;br /&gt;
surf(xx,tt,h)&lt;br /&gt;
title('Aproximación de la solución')&lt;br /&gt;
}}&lt;/div&gt;</summary>
		<author><name>Marta Cavero</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Nivel_piezom%C3%A9trico_de_un_acu%C3%ADfero_confinado_(A5)&amp;diff=30099</id>
		<title>Nivel piezométrico de un acuífero confinado (A5)</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Nivel_piezom%C3%A9trico_de_un_acu%C3%ADfero_confinado_(A5)&amp;diff=30099"/>
				<updated>2015-05-14T15:21:30Z</updated>
		
		<summary type="html">&lt;p&gt;Marta Cavero: /* Comportamiento del nivel piezométrico con  \rho  constante */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;br /&gt;
==== Introducción ====&lt;br /&gt;
&lt;br /&gt;
Consideramos un acuífero confinado entre dos capas de terreno impermeables horizontales. Llamaremos h(x, y) al nivel piezométrico del acuífero, definido por la altura que alcanzaría el agua si hiciéramos un sondeo en el punto (x, y). Obviamente este valor depende de la presión a la que se encuentra el agua confinada en el acuífero. Supondremos&lt;br /&gt;
que el acuífero es un medio poroso saturado de agua que ocupa una región infinita y está en equilibrio de manera que &amp;lt;math&amp;gt;h(x, y) = h_0&amp;lt;/math&amp;gt; constante para todo (x, y) ∈ &amp;lt;math&amp;gt;IR^{2}&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Sobre el acuifero se construye un pozo de sección circular y radio&amp;lt;math&amp;gt; ρ_0&amp;lt;/math&amp;gt; para extraer agua. La presencia del pozo hace que el nivel piezométrico cambie. Dada la simetría del problema podemos suponer que h(x, y) sólo va a depender de la distancia al pozo. Si tomamos coordenadas cilíndricas de forma que el eje OZ coincida con el eje de simetría del pozo, entonces h = h(ρ) donde &amp;lt;math&amp;gt;ρ = \sqrt{x^{2} + y^{2}}&amp;lt;/math&amp;gt; . Trabajaremos por tanto en coordenadas polares en el plano (ρ, θ).&lt;br /&gt;
&lt;br /&gt;
Las ecuaciones que permiten conocer h(ρ) son la ecuación de conservación de la masa:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; S = \frac{∂h}{∂t} + div q = 0 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
junto con la ley de Darcy&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; q = −K∇h &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
que es una ley experimental que modela el flujo de agua en un medio poroso. La ley de Darcy establece que el flujo de agua q a través de un medio poroso es proporcional a la diferencia de presión, que a su vez se puede escribir en términos del gradiente del nivel piezométrico en cada punto. La constante K se deduce experimentalmente para cada material y se conoce como la conductividad hidráulica o permeabilidad. Cuanto mayor es la constante K mayor es el flujo de agua provocado por un cambio&lt;br /&gt;
de presión. La ley de Darcy proporciona una buena aproximación del comportamiento del agua en un medio poroso siempre que este sea homogéneo e isótropo.&lt;br /&gt;
&lt;br /&gt;
La constante S en la ley de conservación de la masa se conoce como almacenamiento específico y se interpreta como la cantidad de agua que libera el acuífero al descender el nivel piezométrico en una unidad, por unidad de volumen.&lt;br /&gt;
&lt;br /&gt;
Combinando las ecuaciones de conservación de la masa con la ley de Darcy, obtenemos la ecuación:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \frac{∂h}{∂t} - D∆h = 0, ρ &amp;gt; ρ_0, θ ∈ (0, 2π), t &amp;gt; 0, (1) &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
donde D = K/S es la difusividad hidráulica que supondremos constante.&lt;br /&gt;
&lt;br /&gt;
==== Deducción de la fórmula ====&lt;br /&gt;
&lt;br /&gt;
En este apartado buscamos demostrar la ecuación (1) como combinación de la ecuación de conservación de masas y la Ley de Darcy.&lt;br /&gt;
&lt;br /&gt;
Por un lado sabemos que el laplaciaco equivale a la divergencia del gradiente: &lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; &lt;br /&gt;
(\Delta f = \nabla \cdot \nabla f = div \left (\nabla f) \right) &lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Por otro lado, sabemos que en coordenadas polares: &lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;x = ρ cos \theta \\&lt;br /&gt;
             y = ρ  sen \theta&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\bar{g_ρ } = cos \theta \bar{i} + sin \theta  \bar{j} \\&lt;br /&gt;
              \bar{g_\theta } = - ρ  sin \theta \bar{i} + ρ cos \theta \bar{j} &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;&lt;br /&gt;
G =&lt;br /&gt;
\left(&lt;br /&gt;
\begin{array}{cc}&lt;br /&gt;
1&amp;amp; 0 \\&lt;br /&gt;
0 &amp;amp; ρ ^{2} \\&lt;br /&gt;
\end{array}&lt;br /&gt;
\right);&lt;br /&gt;
\text {donde la raiz del determinante es} \sqrt{g} = ρ&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Como indica el enunciado, al sustituir la Ley de Darcy en la ecuación de conservación de la masa obtenemos y dividir entre S, teniendo en cuenta que el divergente del gradiente es el laplaciano como hemos indicado al principio de este apartado, obtenemos la ecuación (1): &amp;lt;math&amp;gt; \frac{∂h}{∂t} - \frac{k}{S}∆h = 0 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
En esta ecuación queda por desarrollar el Laplaciano de h. &lt;br /&gt;
Partiremos de la función h(ρ,θ), de la cual calcularemos primero el gradiente:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \nabla h = \frac{\partial h}{\partial \rho}\hat{\rho} + \frac{\partial h}{\partial \rho}\hat{\theta} =  \frac{\partial h}{\partial \rho}\bar{\rho} + \frac{1}{\rho^{2}} \frac{\partial h}{\partial \rho}\bar{\theta}  &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
teniendo en cuenta que &amp;lt;math&amp;gt;\bar{g^{i} } = \frac{\bar{g_i } }{ | \bar{g_i } | ^{2} } &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Ahora hacemos el divergente del gradiente anterior y obtenemos el Laplaciano en coordenadas polares:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;math&amp;gt;&lt;br /&gt;
 \Delta h = div(∇h) &lt;br /&gt;
= {1 \over \rho} {\partial \over \partial \rho}&lt;br /&gt;
  \left( \rho {\partial h \over \partial \rho} \right) &lt;br /&gt;
+ {1 \over \rho^2} {\partial^2 h \over \partial \theta^2}&lt;br /&gt;
= {1 \over \rho} {\partial h \over \partial \rho} &lt;br /&gt;
+ {\partial^2 h \over \partial \rho^2}&lt;br /&gt;
+ {1 \over \rho^2} {\partial^2 h \over \partial \theta^2}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Si consideramos que, debido a la simetría del problema, h sólo depende de su distancia al pozo, entonces obtenemos la función radial h(ρ), que nos permite simplificar el Laplaciano del modo siguiente:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;math&amp;gt;&lt;br /&gt;
 \Delta h = div(∇h) &lt;br /&gt;
= {1 \over \rho} {\partial h \over \partial \rho} &lt;br /&gt;
+ {\partial^2 h \over \partial \rho^2}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== Obtención de la ecuación====&lt;br /&gt;
&lt;br /&gt;
Para poder resolver la ecuación anterior y que el resultado sea único, hemos de establecer condiciones iniciales y de contorno.&lt;br /&gt;
&lt;br /&gt;
Las condiciones de contorno serán dos pues aparece la derivada segunda de la posición: &amp;lt;math&amp;gt; h(\rho_0 , t) = h_p \\&lt;br /&gt;
                                                                                                                                                                  h(20,t) = h_0 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
La condición inicial será única pues sólo aparece una derivada de primer orden en tiempo en nuestra ecuación: &amp;lt;math&amp;gt; h(\rho,0) = h_0 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
De este modo la ecuación resultante será:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \left\{\begin{matrix}&lt;br /&gt;
\frac{\partial h}{\partial t} - \frac{k}{s} (\frac{1}{\rho}  \frac{\partial h}{\partial \rho} + \frac{\partial^2 h}{\partial \rho^2})= 0 &amp;amp; \rho \epsilon (\rho_{0}, 2c) &amp;amp; \theta \epsilon (0, 2\Pi ) &amp;amp; t &amp;gt; 0 \\ &lt;br /&gt;
h(\rho_{0},t) = h_{p};   h(20, t)= h_{0} \\ &lt;br /&gt;
h(\rho, 0) = h_{0} &lt;br /&gt;
\end{matrix}\right. &amp;lt;/math&amp;gt; &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==== Resolución por método de diferencias finitas ====&lt;br /&gt;
&lt;br /&gt;
Suponiendo &amp;lt;math&amp;gt;ρ_0 =0.5m&amp;lt;/math&amp;gt;, &amp;lt;math&amp;gt;h_0 =45m&amp;lt;/math&amp;gt;, &amp;lt;math&amp;gt;hp =34&amp;lt;/math&amp;gt;, D=10−2, &amp;lt;math&amp;gt;(ρ,0)=h_0&amp;lt;/math&amp;gt;; y tomando  ∆ρ = 0.1 y ∆t = ∆ρ. Vamos a resolver la ecuación anterior por el método de diferencias finitas, usando el Método de Heun para realizar la aproximación en tiempo.&lt;br /&gt;
&lt;br /&gt;
Primero, sustituyendo los datos anteriores en la ecuación, llegamos a:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \left\{\begin{matrix}&lt;br /&gt;
\frac{\partial h}{\partial t} - 10^{2} (\frac{1}{\rho}  \frac{\partial h}{\partial \rho} + \frac{\partial^2 h}{\partial \rho^2})= 0 &amp;amp; \rho \epsilon (0.5, 20) &amp;amp; \theta \epsilon (0, 2\Pi ) &amp;amp; t &amp;gt; 0 \\ &lt;br /&gt;
h(0.5,t) = 34;   h(20, t)= 45 \\ &lt;br /&gt;
h(\rho, 0) = 45&lt;br /&gt;
\end{matrix}\right. &amp;lt;/math&amp;gt; &lt;br /&gt;
&lt;br /&gt;
Aplicando el método de las diferencias finitas llegamos al siguiente código:&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
&lt;br /&gt;
%TRPRIMERA FASE. ESPACIO&lt;br /&gt;
&lt;br /&gt;
a=0.5; b=20; %Condiciones de contorno&lt;br /&gt;
drho=0.1; N=(b-a)/drho; %División del intervalo&lt;br /&gt;
&lt;br /&gt;
rho=a+drho:drho:b-drho; %Sólo nodos interiores&lt;br /&gt;
&lt;br /&gt;
%Creamos las matrices&lt;br /&gt;
&lt;br /&gt;
L=diag(ones(1,N-2),1)-diag(ones(1,N-2),-1);&lt;br /&gt;
A=diag(1./rho);&lt;br /&gt;
L=10^(-2)*(1/(2*drho))*A*L;&lt;br /&gt;
&lt;br /&gt;
K=-2*diag(ones(1,N-1))+diag(ones(1,N-2),1)+diag(ones(1,N-2),-1);&lt;br /&gt;
K=10^(-2)*(1/drho^2)*K; &lt;br /&gt;
&lt;br /&gt;
F=zeros(N-1,1);&lt;br /&gt;
F(1,1)=10^(-2)*(-17/(rho(1)*drho)+34/drho^2);&lt;br /&gt;
F(N-1,1)=10^(-2)*(45/(rho(N-1)*2*drho)+45/drho^2);&lt;br /&gt;
&lt;br /&gt;
%SEGUDA FASE. TIEMPO&lt;br /&gt;
&lt;br /&gt;
H=ones(1,length(rho)); H=H*45; H=H';&lt;br /&gt;
dt=drho; T=10; t=0:dt:T;&lt;br /&gt;
h0=34; hN=45;&lt;br /&gt;
sol=[h0 H' hN];&lt;br /&gt;
&lt;br /&gt;
for j=1:length(t)-1 &lt;br /&gt;
    &lt;br /&gt;
    %Método de Heun&lt;br /&gt;
    k1=F+(K+L)*H;&lt;br /&gt;
    k2=F+(K+L)*(H+k1*dt);&lt;br /&gt;
    H=H+(dt/2)*(k1+k2);&lt;br /&gt;
 &lt;br /&gt;
    sol(j+1,:)=[h0 H' hN]; %Salvamos las solución, incluimos los extremos&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
rho1=a:drho:b; %Incluimos los nodos exteriores&lt;br /&gt;
&lt;br /&gt;
[rr,tt]=meshgrid(rho1,t);&lt;br /&gt;
surf(rr,tt,sol); %Dibujamos la solución&lt;br /&gt;
title('Nivel Piezométrico. Método Diferencias finitas con Heun en tiempo.')&lt;br /&gt;
xlabel('Distancia radial al centro del pozo.')&lt;br /&gt;
ylabel('Tiempo.')&lt;br /&gt;
zlabel('Nivel piezométrico.')&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
Mediante este código obtenemos la siguiente gráfica:&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Grafica npiezometrico.jpg|500px|thumb|best|Gráfica Nivel Piezométrico aproximada con el Método de Diferencias Finitas con Heun en tiempo.]]&lt;br /&gt;
&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Ahora dibujaremos la gráfica mediante los métodos de Euler implícito y trapecio y compararemos los resultados obtenidos.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Sobre el programa anterior cambiaremos las líneas correspondientes al método de Heun.&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* Método de Euler implícito:&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;math&amp;gt; \left\{\begin{matrix}&lt;br /&gt;
y_{0}\\&lt;br /&gt;
y_{n+1}=y_{n} + hf(t_{n+1},y_{n+1})\\&lt;br /&gt;
\end{matrix}\right. &amp;lt;/math&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
&lt;br /&gt;
for j=1:length(t)-1 &lt;br /&gt;
    &lt;br /&gt;
    %Método de Euler implícito&lt;br /&gt;
    &lt;br /&gt;
    H=(eye(N-1)-dt*(K+L))\(H+(F*dt)); &lt;br /&gt;
 &lt;br /&gt;
    sol(j+1,:)=[h0 H' hN]; %Salvamos las solución, incluimos los extremos&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
rho1=a:drho:b; %Incluimos los nodos exteriores&lt;br /&gt;
&lt;br /&gt;
[rr,tt]=meshgrid(rho1,t);&lt;br /&gt;
surf(rr,tt,sol); %Dibujamos la solución&lt;br /&gt;
title('Nivel Piezométrico. Método Diferencias finitas con Euler en tiempo.')&lt;br /&gt;
xlabel('Distancia radial al centro del pozo.')&lt;br /&gt;
ylabel('Tiempo.')&lt;br /&gt;
zlabel('Nivel piezométrico.')&lt;br /&gt;
&lt;br /&gt;
}}&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* Método del Trapecio:&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;math&amp;gt; \left\{\begin{matrix}&lt;br /&gt;
y_{0}\\&lt;br /&gt;
y_{n+1}=y_{n} + \frac{h}{2}f((t_{n},y_{n}+f(t_{n+1},y_{n+1}))\\&lt;br /&gt;
\end{matrix}\right. &amp;lt;/math&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
for j=1:length(t)-1 &lt;br /&gt;
    &lt;br /&gt;
    %Método del trapecio&lt;br /&gt;
    k1=F+(K+L)*H;&lt;br /&gt;
    k2=F+(K+L)*(H+k1*dt); &lt;br /&gt;
    H=(eye(N-1)-(dt/2)*(K+L))\(H+dt*F+(dt/2)*(K+L)*H);&lt;br /&gt;
 &lt;br /&gt;
    sol(j+1,:)=[h0 H' hN]; %Salvamos las solución, incluimos los extremos&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
rho1=a:drho:b; %Incluimos los nodos exteriores&lt;br /&gt;
&lt;br /&gt;
[rr,tt]=meshgrid(rho1,t);&lt;br /&gt;
surf(rr,tt,sol); %Dibujamos la solución&lt;br /&gt;
title('Nivel Piezométrico. Método Diferencias finitas con trapecio en tiempo.')&lt;br /&gt;
xlabel('Distancia radial al centro del pozo.')&lt;br /&gt;
ylabel('Tiempo.')&lt;br /&gt;
zlabel('Nivel piezométrico.')&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
Como podemos ver a continuación las tres gráficas resultantes son prácticamente iguales por lo que los tres métodos hacen una aproximación similar.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
[[Archivo:Trapecio12.png|500px|thumb|right|Gráfica Nivel Piezométrico aproximada con el Método de Diferencias Finitas con Trapecio en tiempo.]]&lt;br /&gt;
[[Archivo:Euler12.png|500px|thumb|right|Gráfica Nivel Piezométrico aproximada con el Método de Diferencias Finitas con Euler Implícito en tiempo.]]&lt;br /&gt;
&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== Comportamiento del nivel piezométrico con &amp;lt;math&amp;gt; \rho &amp;lt;/math&amp;gt; constante ====&lt;br /&gt;
&lt;br /&gt;
Ahora supondremos que &amp;lt;math&amp;gt; \rho &amp;lt;/math&amp;gt; es constante y que su valor es 2 y dibujaremos el comportamiento del nivel piezométrico en una gráfica 2D nivel piezométrico-tiempo.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Nuevamente utilizando el programa anterior con el  método de Heun:&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Rho2.png|500px|thumb|best|Gráfica Nivel Piezométrico-tiempo para &amp;lt;math&amp;gt; \rho =2 &amp;lt;/math&amp;gt; para T=10.]]&lt;br /&gt;
[[Archivo:Rho1000.png|500px|thumb|best|Gráfica Nivel Piezométrico-tiempo para &amp;lt;math&amp;gt; \rho =2 &amp;lt;/math&amp;gt; para T=1000.]]&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
&lt;br /&gt;
%PRIMERA FASE. ESPACIO&lt;br /&gt;
&lt;br /&gt;
a=0.5; b=20; %Condiciones de contorno&lt;br /&gt;
drho=0.1; N=(b-a)/drho; %División del intervalo&lt;br /&gt;
&lt;br /&gt;
rho=a+drho:drho:b-drho; %Sólo nodos interiores&lt;br /&gt;
&lt;br /&gt;
%Creamos las matrices&lt;br /&gt;
&lt;br /&gt;
L=diag(ones(1,N-2),1)-diag(ones(1,N-2),-1);&lt;br /&gt;
A=diag(1./rho);&lt;br /&gt;
L=10^(-2)*(1/(2*drho))*A*L;&lt;br /&gt;
&lt;br /&gt;
K=-2*diag(ones(1,N-1))+diag(ones(1,N-2),1)+diag(ones(1,N-2),-1);&lt;br /&gt;
K=10^(-2)*(1/drho^2)*K; &lt;br /&gt;
&lt;br /&gt;
F=zeros(N-1,1);&lt;br /&gt;
F(1,1)=10^(-2)*(-17/(rho(1)*drho)+34/drho^2);&lt;br /&gt;
F(N-1,1)=10^(-2)*(45/(rho(N-1)*2*drho)+45/drho^2);&lt;br /&gt;
&lt;br /&gt;
%SEGUDA FASE. TIEMPO&lt;br /&gt;
&lt;br /&gt;
H=ones(1,length(rho)); H=H*45; H=H';&lt;br /&gt;
dt=drho; &lt;br /&gt;
T=10 &lt;br /&gt;
%Comprobamos también la solución para un tiempo mayor &lt;br /&gt;
%T=1000&lt;br /&gt;
t=0:dt:T;&lt;br /&gt;
h0=34; hN=45;&lt;br /&gt;
sol=[h0 H' hN];&lt;br /&gt;
&lt;br /&gt;
for j=1:length(t)-1 &lt;br /&gt;
    &lt;br /&gt;
    %Método de Heun&lt;br /&gt;
    k1=F+(K+L)*H;&lt;br /&gt;
    k2=F+(K+L)*(H+k1*dt);&lt;br /&gt;
    H=H+(dt/2)*(k1+k2);&lt;br /&gt;
 &lt;br /&gt;
    sol(j+1,:)=[h0 H' hN]; %Salvamos las solución, incluimos los extremos&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
rho1=a:drho:b; %Incluimos los nodos exteriores&lt;br /&gt;
&lt;br /&gt;
m=sol(:,rho==2); %Vector que incluye la solución en tiempo para rho=2&lt;br /&gt;
&lt;br /&gt;
plot(t,m);&lt;br /&gt;
&lt;br /&gt;
title('Comportamiento del nivel piezométrico en el tiempo para p=2')&lt;br /&gt;
xlabel('Tiempo')&lt;br /&gt;
ylabel('Nivel piezométrico.')&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
La primera gráfica muestra que para tiempos pequeños la variación del nivel piezométrico es muy pequeña (del orden de 0,10/0,15 m), aún así como observamos en la segunda gráfica a medida que avanzamos en el tiempo la variación del nivel disminuye aún más ya que la curva está cada vez menos inclinada.&lt;br /&gt;
&lt;br /&gt;
==== Variación del nivel piezométrico en tiempos grandes ====&lt;br /&gt;
Ahora vamos a comprobar que la variación del nivel piezométrico para tiempos elevados (T=5000) es mínima.&lt;br /&gt;
Para ello dibujaremos las soluciones cada 100 horas de en el intervalo temporal [1; 5000], en&lt;br /&gt;
una misma gráfica.&lt;br /&gt;
[[Archivo:Tiemposg2.png|marco|derecha|Nivel piezométrico para tiempos grandes]]&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
%PRIMERA FASE. ESPACIO&lt;br /&gt;
&lt;br /&gt;
a=0.5; b=20; %Condiciones de contorno&lt;br /&gt;
drho=0.1; N=(b-a)/drho; %División del intervalo&lt;br /&gt;
&lt;br /&gt;
rho=a+drho:drho:b-drho; %Sólo nodos interiores&lt;br /&gt;
&lt;br /&gt;
%Creamos las matrices&lt;br /&gt;
&lt;br /&gt;
L=diag(ones(1,N-2),1)-diag(ones(1,N-2),-1);&lt;br /&gt;
A=diag(1./rho);&lt;br /&gt;
L=10^(-2)*(1/(2*drho))*A*L;&lt;br /&gt;
&lt;br /&gt;
K=-2*diag(ones(1,N-1))+diag(ones(1,N-2),1)+diag(ones(1,N-2),-1);&lt;br /&gt;
K=10^(-2)*(1/drho^2)*K; &lt;br /&gt;
&lt;br /&gt;
F=zeros(N-1,1);&lt;br /&gt;
F(1,1)=10^(-2)*(-17/(rho(1)*drho)+34/drho^2);&lt;br /&gt;
F(N-1,1)=10^(-2)*(45/(rho(N-1)*2*drho)+45/drho^2);&lt;br /&gt;
&lt;br /&gt;
%SEGUDA FASE. TIEMPO&lt;br /&gt;
&lt;br /&gt;
H=ones(1,length(rho)); H=H*45; H=H';&lt;br /&gt;
dt=0.1; T=5000; t=0:dt:T;&lt;br /&gt;
h0=34; hN=45;&lt;br /&gt;
sol=[h0 H' hN];&lt;br /&gt;
&lt;br /&gt;
figure(1);&lt;br /&gt;
hold on;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
for j=1:length(t)-1 &lt;br /&gt;
    &lt;br /&gt;
    %Método de Heun&lt;br /&gt;
    k1=F+(K+L)*H;&lt;br /&gt;
    k2=F+(K+L)*(H+k1*dt);&lt;br /&gt;
    H=H+(dt/2)*(k1+k2);&lt;br /&gt;
 &lt;br /&gt;
    sol(j+1,:)=[h0 H' hN]; %Salvamos las solución, incluimos los extremos&lt;br /&gt;
    &lt;br /&gt;
 if rem(t(j),100)==0; &lt;br /&gt;
    &lt;br /&gt;
    rho1=a:drho:b; %Incluimos los nodos exteriores&lt;br /&gt;
  &lt;br /&gt;
  plot(rho1,sol(j,:)) %pintamos la solución cada 100 horas&lt;br /&gt;
  &lt;br /&gt;
  title('Variación del nivel piezométrico para tiempos grandes')&lt;br /&gt;
  pause(1)&lt;br /&gt;
&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
end&lt;br /&gt;
}}&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Como se puede observar en la gráfica según vamos avanzando en el tiempo las curvas están más juntas lo que quiere decir que la variación del nivel es cada vez menor aproximándose a un régimen estacionario.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Trabajo21.jpg|marco|derecha|Nivel piezométrico estacionario]]&lt;br /&gt;
&lt;br /&gt;
====Problema estacionario====&lt;br /&gt;
Como hemos visto en el apartado anterior para tiempos grandes el nivel piezométrico se mantiene practicamente constante a lo largo del tiempo, esto es debido a que se establece un equilibrio entre el caudal de agua extraida del acuifero y la migración de aguas desde los puntos más alejados del pozo hacia este.&lt;br /&gt;
Por lo tanto se verifica que:&lt;br /&gt;
 &amp;lt;math&amp;gt;\frac{\partial h}{\partial t}=0&amp;lt;/math&amp;gt;&lt;br /&gt;
Y por lo tanto el nivel piezométrico se puede aproximar por:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \left\{\begin{matrix}&lt;br /&gt;
- \frac{k}{s} (\frac{1}{\rho}  \frac{\partial h}{\partial \rho} + \frac{\partial^2 h}{\partial \rho^2})= 0 &amp;amp; \rho \epsilon (1, 20) &amp;amp; \theta \epsilon (0, 2\Pi ) &amp;amp; 0 &amp;lt; t &amp;lt; 5000 \\ &lt;br /&gt;
h(1,t) = 35;    h(20, t)= 40 \\ &lt;br /&gt;
h(\rho, 0) = 40 &lt;br /&gt;
\end{matrix}\right. &amp;lt;/math&amp;gt;&lt;br /&gt;
Resolvemos por diferencias finitas:&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
    %datos&lt;br /&gt;
    t=5000;&lt;br /&gt;
    l=20;&lt;br /&gt;
    D=0.01;&lt;br /&gt;
    hp=35;&lt;br /&gt;
    ho=40;&lt;br /&gt;
    %discretización&lt;br /&gt;
    s=0.1;&lt;br /&gt;
    x0=1;&lt;br /&gt;
    x=x0:s:l;&lt;br /&gt;
    xint=x0+s:s:l-s;&lt;br /&gt;
    N=length(x)-2; &lt;br /&gt;
    %construimos las matrices para el método de las diferencias finitas&lt;br /&gt;
    K=(1/s^2)*(diag(2*ones(1,N))-diag(ones(1,N-1),1)-diag(ones(1,N-1),-1));&lt;br /&gt;
    A=(1/(s*2))*(diag(ones(1,N-1),1)-diag(ones(1,N-1),-1));&lt;br /&gt;
    A=diag(1./xint)*A;&lt;br /&gt;
    h0=(40*ones(N,1));&lt;br /&gt;
    dt=200; &lt;br /&gt;
    t=0:dt:t;&lt;br /&gt;
    M=length(t)-1;&lt;br /&gt;
    F=(zeros(N,1));&lt;br /&gt;
    F(1)=D*((hp/s^2)-(hp/(2*s)*1/xint(1)));&lt;br /&gt;
    F(N)=D*((ho/s^2)+ho/(s*2*xint(N)));&lt;br /&gt;
    H(1,:)=[40;h0;40]'; &lt;br /&gt;
    h=h0;&lt;br /&gt;
    for n=1:M&lt;br /&gt;
      h=(D)*(K-A)\((F)); %utilizamos el comando backslash para resolver el sistema de ecuaciones&lt;br /&gt;
      H(n+1,:)=[hp h' ho];&lt;br /&gt;
    end&lt;br /&gt;
    %mallado y representación&lt;br /&gt;
    [X,T]=meshgrid(x,t);&lt;br /&gt;
    surf(X,T,H)&lt;br /&gt;
    xlabel('Distancia (metros)');&lt;br /&gt;
    ylabel('Tiempo (horas)');&lt;br /&gt;
    zlabel('Nivel piezométrico (metros)')&lt;br /&gt;
}}&lt;br /&gt;
Efectivamente, como podemos comprobar en la gráfica, la solución es independiente del tiempo salvo para tiempos pequeños en los cuales no queda muy bien definida&lt;br /&gt;
&lt;br /&gt;
====Capacidad de recuperación del acuífero====&lt;br /&gt;
En este apartado queremos calcular una ley que nos describa el comportamiento del acuífero e el caso de que impermeabilizásemos las paredes del pozo partiendo del estado estacionario anterior, esto significaría que el fujo de agua en los bordes del pozo sería nulo y el nivel piezométrico iría variando hasta llegar a otro estado estacionario.&lt;br /&gt;
El estado estacionarioque tenderá a alcanzar el fluido será el inicial, ya que al impermeabilizar las paredes volvemos al caso del acuífero confinado y por ello es nivel piezométrico quedará constante a lo largo del tiempo y de la extensión del acuífero.&lt;br /&gt;
La condición frontera a imponer será que el flujo de agua en r0 será 0, ya que estará impermeabilizado. Esto lo podemos plasmar diciendo que la parcial del nivel piezométrico con respecto a ro en r0 es 0, ya que un aislamiento impide el flujo de líquido, y si el flujo de líquido es nulo el nivel piezométrico no varía.&lt;br /&gt;
&amp;lt;math&amp;gt;\frac{\partial h}{\partial \rho}=0&amp;lt;/math&amp;gt;&lt;br /&gt;
====Método de Fourier====&lt;br /&gt;
Ahora suponemos que el radio del pozo es despreciable y que una vez extraido el agua el pozo se cierra quedando el acuifero de nuevo homogéneo. En este caso tomaremos la región ρ &amp;lt; 20. Nuestro objetivo es aproximar las soluciones usando el método de Fourier. De nuevo supondremos que la solución sólo depende de ρ y t, y tomaremos ahora como condición frontera h(20, t) = 40.&lt;br /&gt;
Vamos a considerar el sistema de ecuaciones para h(ρ,t)=h(ρ,t)-40:&lt;br /&gt;
 &amp;lt;math&amp;gt; \left\{\begin{matrix}&lt;br /&gt;
\frac{\partial h}{\partial t} - D (\frac{1}{\rho}  \frac{\partial h}{\partial \rho} + \frac{\partial^2 h}{\partial \rho^2})= 0 &amp;amp; \rho \epsilon (0, 20) &amp;amp; \theta \epsilon (0, 2\Pi ) &amp;amp; t &amp;gt; 0 \\ &lt;br /&gt;
\frac{\partial h}{\partial \rho}(0,t) = 0;   h(20, t)= 0 \\ &lt;br /&gt;
\end{matrix}\right. &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Obtenemos el problema de autovalores asociado al sistema anterior con el método de separación de variables:&lt;br /&gt;
 &amp;lt;math&amp;gt; \left\{\begin{matrix}&lt;br /&gt;
D (\frac{X'(\rho)}{\rho} + X''(\rho))+ λX(\rho)=0 \\&lt;br /&gt;
X'(0) = 0;   X(20)= 0 \\ &lt;br /&gt;
&lt;br /&gt;
\end{matrix}\right. &amp;lt;/math&amp;gt;&lt;br /&gt;
[[Archivo:Marta1.jpg|marco|derecha]]&lt;br /&gt;
Sabemos que los problemas de esta forma tienen como solución la función de Bessel de primera especie que forma una familia de autofunciones: &amp;lt;math&amp;gt;Ψ(\rho)=J_0·(\rho\sqrt{λ})&amp;lt;/math&amp;gt;. Estas se anulan cuando &amp;lt;math&amp;gt;(\rho\sqrt{λ})&amp;lt;/math&amp;gt; se iguala a 2.4048, 5.5201, 8.6537, 11.7915 y 14.9309, siendo estos los 5 primeros ceros de la función de Bessel. De esta manera y tomando ρ=20 obtenemos los 5 primeros autovalores:&lt;br /&gt;
&amp;lt;math&amp;gt;(20\sqrt{λ})=2.4048&amp;lt;/math&amp;gt;Haciendo la operación anterior para los 5 ceros obtenemos los siguientes autovalores: 0.0145, 0.0762, 0.1872, 0.3476, 0.5573.&lt;br /&gt;
Ahora vamos a dibujar las 5 primeras autofunciones utilizando la función besselj:&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
a1=0.0145;&lt;br /&gt;
a2=0.0762;&lt;br /&gt;
a3=0.1872;&lt;br /&gt;
a4=0.3476;&lt;br /&gt;
a5=0.5575;&lt;br /&gt;
r=0:0.02:20;&lt;br /&gt;
F1=besselj(0,r.*(sqrt(a1))); &lt;br /&gt;
F2=besselj(0,r.*(sqrt(a2)));&lt;br /&gt;
F3=besselj(0,r.*(sqrt(a3)));&lt;br /&gt;
F4=besselj(0,r.*(sqrt(a4)));&lt;br /&gt;
F5=besselj(0,r.*(sqrt(a5)));&lt;br /&gt;
hold on&lt;br /&gt;
plot(r,F1)&lt;br /&gt;
plot(r,F2,'r')&lt;br /&gt;
plot(r,F3,'g')	&lt;br /&gt;
plot(r,F4,'c')&lt;br /&gt;
plot(r,F5,'y')&lt;br /&gt;
hold off&lt;br /&gt;
}}&lt;br /&gt;
[[Archivo:Marta2.jpg|marco|derecha]]&lt;br /&gt;
Aproximamos ahora la solución de la ecuación tomando como dato inicial es&amp;lt;math&amp;gt; h (\rho,0)= -log \frac{|\rho + 0.01|}{20.01} &amp;lt;/math&amp;gt; y usando 5 términos del desarrollo de Fourier, teniendo en cuenta que las autofunciones son ortogonales respecto al producto escalar: &amp;lt;math&amp;gt; (f(\rho),g(\rho)) = \int_{0}^{20} \rho f(\rho) g(\rho) \cdot dx &amp;lt;/math&amp;gt;&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
x0=0; L=20;&lt;br /&gt;
c0=[2.4048,5.5201,8.6537,11.7915,14.9309]; %Vector de ceros de la función de Bessel&lt;br /&gt;
A=(c0./20).^2; %Vector de autovalores&lt;br /&gt;
K=5; %Número de términos del desarrollo de Fourier&lt;br /&gt;
x=x0:0.1:L;&lt;br /&gt;
N=length(x)-1;&lt;br /&gt;
J=zeros(N+1,K);&lt;br /&gt;
z=zeros(N+1,K);&lt;br /&gt;
t0=0; tf=500;&lt;br /&gt;
t=t0:0.1:tf;&lt;br /&gt;
[xx,tt]=meshgrid(x,t);&lt;br /&gt;
h=0;&lt;br /&gt;
for k=1:K&lt;br /&gt;
   z(:,k)=(x)'*sqrt(A(k));&lt;br /&gt;
   J(:,k)=besselj(0,z(:,k));&lt;br /&gt;
   h0=-log((abs(x+0.1))/20.01); %Condición inicial&lt;br /&gt;
   c(k)=trapz(x,x'.*h0'.*J(:,k))/trapz(x,x'.*J(:,k).*J(:,k)); %Coeficientes de Fourier&lt;br /&gt;
   h=h+c(k)*exp(-A(k)*t)'*J(:,k)';&lt;br /&gt;
end&lt;br /&gt;
surf(xx,tt,h)&lt;br /&gt;
title('Aproximación de la solución')&lt;br /&gt;
}}&lt;/div&gt;</summary>
		<author><name>Marta Cavero</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Nivel_piezom%C3%A9trico_de_un_acu%C3%ADfero_confinado_(A5)&amp;diff=30098</id>
		<title>Nivel piezométrico de un acuífero confinado (A5)</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Nivel_piezom%C3%A9trico_de_un_acu%C3%ADfero_confinado_(A5)&amp;diff=30098"/>
				<updated>2015-05-14T15:20:53Z</updated>
		
		<summary type="html">&lt;p&gt;Marta Cavero: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;br /&gt;
==== Introducción ====&lt;br /&gt;
&lt;br /&gt;
Consideramos un acuífero confinado entre dos capas de terreno impermeables horizontales. Llamaremos h(x, y) al nivel piezométrico del acuífero, definido por la altura que alcanzaría el agua si hiciéramos un sondeo en el punto (x, y). Obviamente este valor depende de la presión a la que se encuentra el agua confinada en el acuífero. Supondremos&lt;br /&gt;
que el acuífero es un medio poroso saturado de agua que ocupa una región infinita y está en equilibrio de manera que &amp;lt;math&amp;gt;h(x, y) = h_0&amp;lt;/math&amp;gt; constante para todo (x, y) ∈ &amp;lt;math&amp;gt;IR^{2}&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Sobre el acuifero se construye un pozo de sección circular y radio&amp;lt;math&amp;gt; ρ_0&amp;lt;/math&amp;gt; para extraer agua. La presencia del pozo hace que el nivel piezométrico cambie. Dada la simetría del problema podemos suponer que h(x, y) sólo va a depender de la distancia al pozo. Si tomamos coordenadas cilíndricas de forma que el eje OZ coincida con el eje de simetría del pozo, entonces h = h(ρ) donde &amp;lt;math&amp;gt;ρ = \sqrt{x^{2} + y^{2}}&amp;lt;/math&amp;gt; . Trabajaremos por tanto en coordenadas polares en el plano (ρ, θ).&lt;br /&gt;
&lt;br /&gt;
Las ecuaciones que permiten conocer h(ρ) son la ecuación de conservación de la masa:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; S = \frac{∂h}{∂t} + div q = 0 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
junto con la ley de Darcy&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; q = −K∇h &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
que es una ley experimental que modela el flujo de agua en un medio poroso. La ley de Darcy establece que el flujo de agua q a través de un medio poroso es proporcional a la diferencia de presión, que a su vez se puede escribir en términos del gradiente del nivel piezométrico en cada punto. La constante K se deduce experimentalmente para cada material y se conoce como la conductividad hidráulica o permeabilidad. Cuanto mayor es la constante K mayor es el flujo de agua provocado por un cambio&lt;br /&gt;
de presión. La ley de Darcy proporciona una buena aproximación del comportamiento del agua en un medio poroso siempre que este sea homogéneo e isótropo.&lt;br /&gt;
&lt;br /&gt;
La constante S en la ley de conservación de la masa se conoce como almacenamiento específico y se interpreta como la cantidad de agua que libera el acuífero al descender el nivel piezométrico en una unidad, por unidad de volumen.&lt;br /&gt;
&lt;br /&gt;
Combinando las ecuaciones de conservación de la masa con la ley de Darcy, obtenemos la ecuación:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \frac{∂h}{∂t} - D∆h = 0, ρ &amp;gt; ρ_0, θ ∈ (0, 2π), t &amp;gt; 0, (1) &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
donde D = K/S es la difusividad hidráulica que supondremos constante.&lt;br /&gt;
&lt;br /&gt;
==== Deducción de la fórmula ====&lt;br /&gt;
&lt;br /&gt;
En este apartado buscamos demostrar la ecuación (1) como combinación de la ecuación de conservación de masas y la Ley de Darcy.&lt;br /&gt;
&lt;br /&gt;
Por un lado sabemos que el laplaciaco equivale a la divergencia del gradiente: &lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; &lt;br /&gt;
(\Delta f = \nabla \cdot \nabla f = div \left (\nabla f) \right) &lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Por otro lado, sabemos que en coordenadas polares: &lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;x = ρ cos \theta \\&lt;br /&gt;
             y = ρ  sen \theta&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\bar{g_ρ } = cos \theta \bar{i} + sin \theta  \bar{j} \\&lt;br /&gt;
              \bar{g_\theta } = - ρ  sin \theta \bar{i} + ρ cos \theta \bar{j} &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;&lt;br /&gt;
G =&lt;br /&gt;
\left(&lt;br /&gt;
\begin{array}{cc}&lt;br /&gt;
1&amp;amp; 0 \\&lt;br /&gt;
0 &amp;amp; ρ ^{2} \\&lt;br /&gt;
\end{array}&lt;br /&gt;
\right);&lt;br /&gt;
\text {donde la raiz del determinante es} \sqrt{g} = ρ&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Como indica el enunciado, al sustituir la Ley de Darcy en la ecuación de conservación de la masa obtenemos y dividir entre S, teniendo en cuenta que el divergente del gradiente es el laplaciano como hemos indicado al principio de este apartado, obtenemos la ecuación (1): &amp;lt;math&amp;gt; \frac{∂h}{∂t} - \frac{k}{S}∆h = 0 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
En esta ecuación queda por desarrollar el Laplaciano de h. &lt;br /&gt;
Partiremos de la función h(ρ,θ), de la cual calcularemos primero el gradiente:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \nabla h = \frac{\partial h}{\partial \rho}\hat{\rho} + \frac{\partial h}{\partial \rho}\hat{\theta} =  \frac{\partial h}{\partial \rho}\bar{\rho} + \frac{1}{\rho^{2}} \frac{\partial h}{\partial \rho}\bar{\theta}  &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
teniendo en cuenta que &amp;lt;math&amp;gt;\bar{g^{i} } = \frac{\bar{g_i } }{ | \bar{g_i } | ^{2} } &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Ahora hacemos el divergente del gradiente anterior y obtenemos el Laplaciano en coordenadas polares:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;math&amp;gt;&lt;br /&gt;
 \Delta h = div(∇h) &lt;br /&gt;
= {1 \over \rho} {\partial \over \partial \rho}&lt;br /&gt;
  \left( \rho {\partial h \over \partial \rho} \right) &lt;br /&gt;
+ {1 \over \rho^2} {\partial^2 h \over \partial \theta^2}&lt;br /&gt;
= {1 \over \rho} {\partial h \over \partial \rho} &lt;br /&gt;
+ {\partial^2 h \over \partial \rho^2}&lt;br /&gt;
+ {1 \over \rho^2} {\partial^2 h \over \partial \theta^2}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Si consideramos que, debido a la simetría del problema, h sólo depende de su distancia al pozo, entonces obtenemos la función radial h(ρ), que nos permite simplificar el Laplaciano del modo siguiente:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;math&amp;gt;&lt;br /&gt;
 \Delta h = div(∇h) &lt;br /&gt;
= {1 \over \rho} {\partial h \over \partial \rho} &lt;br /&gt;
+ {\partial^2 h \over \partial \rho^2}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== Obtención de la ecuación====&lt;br /&gt;
&lt;br /&gt;
Para poder resolver la ecuación anterior y que el resultado sea único, hemos de establecer condiciones iniciales y de contorno.&lt;br /&gt;
&lt;br /&gt;
Las condiciones de contorno serán dos pues aparece la derivada segunda de la posición: &amp;lt;math&amp;gt; h(\rho_0 , t) = h_p \\&lt;br /&gt;
                                                                                                                                                                  h(20,t) = h_0 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
La condición inicial será única pues sólo aparece una derivada de primer orden en tiempo en nuestra ecuación: &amp;lt;math&amp;gt; h(\rho,0) = h_0 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
De este modo la ecuación resultante será:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \left\{\begin{matrix}&lt;br /&gt;
\frac{\partial h}{\partial t} - \frac{k}{s} (\frac{1}{\rho}  \frac{\partial h}{\partial \rho} + \frac{\partial^2 h}{\partial \rho^2})= 0 &amp;amp; \rho \epsilon (\rho_{0}, 2c) &amp;amp; \theta \epsilon (0, 2\Pi ) &amp;amp; t &amp;gt; 0 \\ &lt;br /&gt;
h(\rho_{0},t) = h_{p};   h(20, t)= h_{0} \\ &lt;br /&gt;
h(\rho, 0) = h_{0} &lt;br /&gt;
\end{matrix}\right. &amp;lt;/math&amp;gt; &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==== Resolución por método de diferencias finitas ====&lt;br /&gt;
&lt;br /&gt;
Suponiendo &amp;lt;math&amp;gt;ρ_0 =0.5m&amp;lt;/math&amp;gt;, &amp;lt;math&amp;gt;h_0 =45m&amp;lt;/math&amp;gt;, &amp;lt;math&amp;gt;hp =34&amp;lt;/math&amp;gt;, D=10−2, &amp;lt;math&amp;gt;(ρ,0)=h_0&amp;lt;/math&amp;gt;; y tomando  ∆ρ = 0.1 y ∆t = ∆ρ. Vamos a resolver la ecuación anterior por el método de diferencias finitas, usando el Método de Heun para realizar la aproximación en tiempo.&lt;br /&gt;
&lt;br /&gt;
Primero, sustituyendo los datos anteriores en la ecuación, llegamos a:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \left\{\begin{matrix}&lt;br /&gt;
\frac{\partial h}{\partial t} - 10^{2} (\frac{1}{\rho}  \frac{\partial h}{\partial \rho} + \frac{\partial^2 h}{\partial \rho^2})= 0 &amp;amp; \rho \epsilon (0.5, 20) &amp;amp; \theta \epsilon (0, 2\Pi ) &amp;amp; t &amp;gt; 0 \\ &lt;br /&gt;
h(0.5,t) = 34;   h(20, t)= 45 \\ &lt;br /&gt;
h(\rho, 0) = 45&lt;br /&gt;
\end{matrix}\right. &amp;lt;/math&amp;gt; &lt;br /&gt;
&lt;br /&gt;
Aplicando el método de las diferencias finitas llegamos al siguiente código:&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
&lt;br /&gt;
%TRPRIMERA FASE. ESPACIO&lt;br /&gt;
&lt;br /&gt;
a=0.5; b=20; %Condiciones de contorno&lt;br /&gt;
drho=0.1; N=(b-a)/drho; %División del intervalo&lt;br /&gt;
&lt;br /&gt;
rho=a+drho:drho:b-drho; %Sólo nodos interiores&lt;br /&gt;
&lt;br /&gt;
%Creamos las matrices&lt;br /&gt;
&lt;br /&gt;
L=diag(ones(1,N-2),1)-diag(ones(1,N-2),-1);&lt;br /&gt;
A=diag(1./rho);&lt;br /&gt;
L=10^(-2)*(1/(2*drho))*A*L;&lt;br /&gt;
&lt;br /&gt;
K=-2*diag(ones(1,N-1))+diag(ones(1,N-2),1)+diag(ones(1,N-2),-1);&lt;br /&gt;
K=10^(-2)*(1/drho^2)*K; &lt;br /&gt;
&lt;br /&gt;
F=zeros(N-1,1);&lt;br /&gt;
F(1,1)=10^(-2)*(-17/(rho(1)*drho)+34/drho^2);&lt;br /&gt;
F(N-1,1)=10^(-2)*(45/(rho(N-1)*2*drho)+45/drho^2);&lt;br /&gt;
&lt;br /&gt;
%SEGUDA FASE. TIEMPO&lt;br /&gt;
&lt;br /&gt;
H=ones(1,length(rho)); H=H*45; H=H';&lt;br /&gt;
dt=drho; T=10; t=0:dt:T;&lt;br /&gt;
h0=34; hN=45;&lt;br /&gt;
sol=[h0 H' hN];&lt;br /&gt;
&lt;br /&gt;
for j=1:length(t)-1 &lt;br /&gt;
    &lt;br /&gt;
    %Método de Heun&lt;br /&gt;
    k1=F+(K+L)*H;&lt;br /&gt;
    k2=F+(K+L)*(H+k1*dt);&lt;br /&gt;
    H=H+(dt/2)*(k1+k2);&lt;br /&gt;
 &lt;br /&gt;
    sol(j+1,:)=[h0 H' hN]; %Salvamos las solución, incluimos los extremos&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
rho1=a:drho:b; %Incluimos los nodos exteriores&lt;br /&gt;
&lt;br /&gt;
[rr,tt]=meshgrid(rho1,t);&lt;br /&gt;
surf(rr,tt,sol); %Dibujamos la solución&lt;br /&gt;
title('Nivel Piezométrico. Método Diferencias finitas con Heun en tiempo.')&lt;br /&gt;
xlabel('Distancia radial al centro del pozo.')&lt;br /&gt;
ylabel('Tiempo.')&lt;br /&gt;
zlabel('Nivel piezométrico.')&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
Mediante este código obtenemos la siguiente gráfica:&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Grafica npiezometrico.jpg|500px|thumb|best|Gráfica Nivel Piezométrico aproximada con el Método de Diferencias Finitas con Heun en tiempo.]]&lt;br /&gt;
&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Ahora dibujaremos la gráfica mediante los métodos de Euler implícito y trapecio y compararemos los resultados obtenidos.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Sobre el programa anterior cambiaremos las líneas correspondientes al método de Heun.&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* Método de Euler implícito:&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;math&amp;gt; \left\{\begin{matrix}&lt;br /&gt;
y_{0}\\&lt;br /&gt;
y_{n+1}=y_{n} + hf(t_{n+1},y_{n+1})\\&lt;br /&gt;
\end{matrix}\right. &amp;lt;/math&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
&lt;br /&gt;
for j=1:length(t)-1 &lt;br /&gt;
    &lt;br /&gt;
    %Método de Euler implícito&lt;br /&gt;
    &lt;br /&gt;
    H=(eye(N-1)-dt*(K+L))\(H+(F*dt)); &lt;br /&gt;
 &lt;br /&gt;
    sol(j+1,:)=[h0 H' hN]; %Salvamos las solución, incluimos los extremos&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
rho1=a:drho:b; %Incluimos los nodos exteriores&lt;br /&gt;
&lt;br /&gt;
[rr,tt]=meshgrid(rho1,t);&lt;br /&gt;
surf(rr,tt,sol); %Dibujamos la solución&lt;br /&gt;
title('Nivel Piezométrico. Método Diferencias finitas con Euler en tiempo.')&lt;br /&gt;
xlabel('Distancia radial al centro del pozo.')&lt;br /&gt;
ylabel('Tiempo.')&lt;br /&gt;
zlabel('Nivel piezométrico.')&lt;br /&gt;
&lt;br /&gt;
}}&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* Método del Trapecio:&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;math&amp;gt; \left\{\begin{matrix}&lt;br /&gt;
y_{0}\\&lt;br /&gt;
y_{n+1}=y_{n} + \frac{h}{2}f((t_{n},y_{n}+f(t_{n+1},y_{n+1}))\\&lt;br /&gt;
\end{matrix}\right. &amp;lt;/math&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
for j=1:length(t)-1 &lt;br /&gt;
    &lt;br /&gt;
    %Método del trapecio&lt;br /&gt;
    k1=F+(K+L)*H;&lt;br /&gt;
    k2=F+(K+L)*(H+k1*dt); &lt;br /&gt;
    H=(eye(N-1)-(dt/2)*(K+L))\(H+dt*F+(dt/2)*(K+L)*H);&lt;br /&gt;
 &lt;br /&gt;
    sol(j+1,:)=[h0 H' hN]; %Salvamos las solución, incluimos los extremos&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
rho1=a:drho:b; %Incluimos los nodos exteriores&lt;br /&gt;
&lt;br /&gt;
[rr,tt]=meshgrid(rho1,t);&lt;br /&gt;
surf(rr,tt,sol); %Dibujamos la solución&lt;br /&gt;
title('Nivel Piezométrico. Método Diferencias finitas con trapecio en tiempo.')&lt;br /&gt;
xlabel('Distancia radial al centro del pozo.')&lt;br /&gt;
ylabel('Tiempo.')&lt;br /&gt;
zlabel('Nivel piezométrico.')&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
Como podemos ver a continuación las tres gráficas resultantes son prácticamente iguales por lo que los tres métodos hacen una aproximación similar.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
[[Archivo:Trapecio12.png|500px|thumb|right|Gráfica Nivel Piezométrico aproximada con el Método de Diferencias Finitas con Trapecio en tiempo.]]&lt;br /&gt;
[[Archivo:Euler12.png|500px|thumb|right|Gráfica Nivel Piezométrico aproximada con el Método de Diferencias Finitas con Euler Implícito en tiempo.]]&lt;br /&gt;
&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== Comportamiento del nivel piezométrico con &amp;lt;math&amp;gt; \rho &amp;lt;/math&amp;gt; constante ====&lt;br /&gt;
&lt;br /&gt;
Ahora supondremos que &amp;lt;math&amp;gt; \rho &amp;lt;/math&amp;gt; es constante y que su valor es 2 y dibujaremos el comportamiento del nivel piezométrico en una gráfica 2D nivel piezométrico-tiempo.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Nuevamente utilizando el programa anterior con el  método de Heun:&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Rho2.png|500px|thumb|best|Gráfica Nivel Piezométrico-tiempo para &amp;lt;math&amp;gt; \rho =2 &amp;lt;/math&amp;gt; para T=10.]]&lt;br /&gt;
[[Archivo:Rho1000.png|500px|thumb|best|Gráfica Nivel Piezométrico-tiempo para &amp;lt;math&amp;gt; \rho =2 &amp;lt;/math&amp;gt; para T=1000.]]&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
&lt;br /&gt;
%PRIMERA FASE. ESPACIO&lt;br /&gt;
&lt;br /&gt;
a=0.5; b=20; %Condiciones de contorno&lt;br /&gt;
drho=0.1; N=(b-a)/drho; %División del intervalo&lt;br /&gt;
&lt;br /&gt;
rho=a+drho:drho:b-drho; %Sólo nodos interiores&lt;br /&gt;
&lt;br /&gt;
%Creamos las matrices&lt;br /&gt;
&lt;br /&gt;
L=diag(ones(1,N-2),1)-diag(ones(1,N-2),-1);&lt;br /&gt;
A=diag(1./rho);&lt;br /&gt;
L=10^(-2)*(1/(2*drho))*A*L;&lt;br /&gt;
&lt;br /&gt;
K=-2*diag(ones(1,N-1))+diag(ones(1,N-2),1)+diag(ones(1,N-2),-1);&lt;br /&gt;
K=10^(-2)*(1/drho^2)*K; &lt;br /&gt;
&lt;br /&gt;
F=zeros(N-1,1);&lt;br /&gt;
F(1,1)=10^(-2)*(-17/(rho(1)*drho)+34/drho^2);&lt;br /&gt;
F(N-1,1)=10^(-2)*(45/(rho(N-1)*2*drho)+45/drho^2);&lt;br /&gt;
&lt;br /&gt;
%SEGUDA FASE. TIEMPO&lt;br /&gt;
&lt;br /&gt;
H=ones(1,length(rho)); H=H*45; H=H';&lt;br /&gt;
dt=drho; &lt;br /&gt;
T=10 &lt;br /&gt;
%Comprobamos también la solución para un tiempo mayor &lt;br /&gt;
%T=1000&lt;br /&gt;
t=0:dt:T;&lt;br /&gt;
h0=34; hN=45;&lt;br /&gt;
sol=[h0 H' hN];&lt;br /&gt;
&lt;br /&gt;
for j=1:length(t)-1 &lt;br /&gt;
    &lt;br /&gt;
    %Método de Heun&lt;br /&gt;
    k1=F+(K+L)*H;&lt;br /&gt;
    k2=F+(K+L)*(H+k1*dt);&lt;br /&gt;
    H=H+(dt/2)*(k1+k2);&lt;br /&gt;
 &lt;br /&gt;
    sol(j+1,:)=[h0 H' hN]; %Salvamos las solución, incluimos los extremos&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
rho1=a:drho:b; %Incluimos los nodos exteriores&lt;br /&gt;
&lt;br /&gt;
m=sol(:,rho==2); %Vector que incluye la solución en tiempo para rho=2&lt;br /&gt;
&lt;br /&gt;
plot(t,m);&lt;br /&gt;
&lt;br /&gt;
title('Comportamiento del nivel piezométrico en el tiempo para p=2')&lt;br /&gt;
xlabel('Tiempo')&lt;br /&gt;
ylabel('Nivel piezométrico.')&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
La primera gráfica muestra que para tiempos pequeños la variación del nivel piezométrico es muy pequeña (del orden de 0,10/0,15 m), aún así como observamos en la segunda gráfica a medida que avanzamos en el tiempo la variación del nivel disminuye aún más ya que la curva está cada vez menos inclinada.&lt;br /&gt;
&lt;br /&gt;
==== Variación del nivel piezométrico en tiempos grandes ====&lt;br /&gt;
Ahora vamos a comprobar que la variación del nivel piezométrico para tiempos elevados (T=5000) es mínima.&lt;br /&gt;
Para ello dibujaremos las soluciones cada 100 horas de en el intervalo temporal [1; 5000], en&lt;br /&gt;
una misma gráfica.&lt;br /&gt;
[[Archivo:Tiemposg2.png|marco|derecha|Nivel piezométrico para tiempos grandes]]&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
%PRIMERA FASE. ESPACIO&lt;br /&gt;
&lt;br /&gt;
a=0.5; b=20; %Condiciones de contorno&lt;br /&gt;
drho=0.1; N=(b-a)/drho; %División del intervalo&lt;br /&gt;
&lt;br /&gt;
rho=a+drho:drho:b-drho; %Sólo nodos interiores&lt;br /&gt;
&lt;br /&gt;
%Creamos las matrices&lt;br /&gt;
&lt;br /&gt;
L=diag(ones(1,N-2),1)-diag(ones(1,N-2),-1);&lt;br /&gt;
A=diag(1./rho);&lt;br /&gt;
L=10^(-2)*(1/(2*drho))*A*L;&lt;br /&gt;
&lt;br /&gt;
K=-2*diag(ones(1,N-1))+diag(ones(1,N-2),1)+diag(ones(1,N-2),-1);&lt;br /&gt;
K=10^(-2)*(1/drho^2)*K; &lt;br /&gt;
&lt;br /&gt;
F=zeros(N-1,1);&lt;br /&gt;
F(1,1)=10^(-2)*(-17/(rho(1)*drho)+34/drho^2);&lt;br /&gt;
F(N-1,1)=10^(-2)*(45/(rho(N-1)*2*drho)+45/drho^2);&lt;br /&gt;
&lt;br /&gt;
%SEGUDA FASE. TIEMPO&lt;br /&gt;
&lt;br /&gt;
H=ones(1,length(rho)); H=H*45; H=H';&lt;br /&gt;
dt=0.1; T=5000; t=0:dt:T;&lt;br /&gt;
h0=34; hN=45;&lt;br /&gt;
sol=[h0 H' hN];&lt;br /&gt;
&lt;br /&gt;
figure(1);&lt;br /&gt;
hold on;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
for j=1:length(t)-1 &lt;br /&gt;
    &lt;br /&gt;
    %Método de Heun&lt;br /&gt;
    k1=F+(K+L)*H;&lt;br /&gt;
    k2=F+(K+L)*(H+k1*dt);&lt;br /&gt;
    H=H+(dt/2)*(k1+k2);&lt;br /&gt;
 &lt;br /&gt;
    sol(j+1,:)=[h0 H' hN]; %Salvamos las solución, incluimos los extremos&lt;br /&gt;
    &lt;br /&gt;
 if rem(t(j),100)==0; &lt;br /&gt;
    &lt;br /&gt;
    rho1=a:drho:b; %Incluimos los nodos exteriores&lt;br /&gt;
  &lt;br /&gt;
  plot(rho1,sol(j,:)) %pintamos la solución cada 100 horas&lt;br /&gt;
  &lt;br /&gt;
  title('Variación del nivel piezométrico para tiempos grandes')&lt;br /&gt;
  pause(1)&lt;br /&gt;
&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
end&lt;br /&gt;
}}&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Como se puede observar en la gráfica según vamos avanzando en el tiempo las curvas están más juntas lo que quiere decir que la variación del nivel es cada vez menor aproximándose a un régimen estacionario.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Trabajo21.jpg|marco|derecha|Nivel piezométrico estacionario]]&lt;br /&gt;
&lt;br /&gt;
====Problema estacionario====&lt;br /&gt;
Como hemos visto en el apartado anterior para tiempos grandes el nivel piezométrico se mantiene practicamente constante a lo largo del tiempo, esto es debido a que se establece un equilibrio entre el caudal de agua extraida del acuifero y la migración de aguas desde los puntos más alejados del pozo hacia este.&lt;br /&gt;
Por lo tanto se verifica que:&lt;br /&gt;
 &amp;lt;math&amp;gt;\frac{\partial h}{\partial t}=0&amp;lt;/math&amp;gt;&lt;br /&gt;
Y por lo tanto el nivel piezométrico se puede aproximar por:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \left\{\begin{matrix}&lt;br /&gt;
- \frac{k}{s} (\frac{1}{\rho}  \frac{\partial h}{\partial \rho} + \frac{\partial^2 h}{\partial \rho^2})= 0 &amp;amp; \rho \epsilon (1, 20) &amp;amp; \theta \epsilon (0, 2\Pi ) &amp;amp; 0 &amp;lt; t &amp;lt; 5000 \\ &lt;br /&gt;
h(1,t) = 35;    h(20, t)= 40 \\ &lt;br /&gt;
h(\rho, 0) = 40 &lt;br /&gt;
\end{matrix}\right. &amp;lt;/math&amp;gt;&lt;br /&gt;
Resolvemos por diferencias finitas:&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
    %datos&lt;br /&gt;
    t=5000;&lt;br /&gt;
    l=20;&lt;br /&gt;
    D=0.01;&lt;br /&gt;
    hp=35;&lt;br /&gt;
    ho=40;&lt;br /&gt;
    %discretización&lt;br /&gt;
    s=0.1;&lt;br /&gt;
    x0=1;&lt;br /&gt;
    x=x0:s:l;&lt;br /&gt;
    xint=x0+s:s:l-s;&lt;br /&gt;
    N=length(x)-2; &lt;br /&gt;
    %construimos las matrices para el método de las diferencias finitas&lt;br /&gt;
    K=(1/s^2)*(diag(2*ones(1,N))-diag(ones(1,N-1),1)-diag(ones(1,N-1),-1));&lt;br /&gt;
    A=(1/(s*2))*(diag(ones(1,N-1),1)-diag(ones(1,N-1),-1));&lt;br /&gt;
    A=diag(1./xint)*A;&lt;br /&gt;
    h0=(40*ones(N,1));&lt;br /&gt;
    dt=200; &lt;br /&gt;
    t=0:dt:t;&lt;br /&gt;
    M=length(t)-1;&lt;br /&gt;
    F=(zeros(N,1));&lt;br /&gt;
    F(1)=D*((hp/s^2)-(hp/(2*s)*1/xint(1)));&lt;br /&gt;
    F(N)=D*((ho/s^2)+ho/(s*2*xint(N)));&lt;br /&gt;
    H(1,:)=[40;h0;40]'; &lt;br /&gt;
    h=h0;&lt;br /&gt;
    for n=1:M&lt;br /&gt;
      h=(D)*(K-A)\((F)); %utilizamos el comando backslash para resolver el sistema de ecuaciones&lt;br /&gt;
      H(n+1,:)=[hp h' ho];&lt;br /&gt;
    end&lt;br /&gt;
    %mallado y representación&lt;br /&gt;
    [X,T]=meshgrid(x,t);&lt;br /&gt;
    surf(X,T,H)&lt;br /&gt;
    xlabel('Distancia (metros)');&lt;br /&gt;
    ylabel('Tiempo (horas)');&lt;br /&gt;
    zlabel('Nivel piezométrico (metros)')&lt;br /&gt;
}}&lt;br /&gt;
Efectivamente, como podemos comprobar en la gráfica, la solución es independiente del tiempo salvo para tiempos pequeños en los cuales no queda muy bien definida&lt;br /&gt;
&lt;br /&gt;
====Capacidad de recuperación del acuífero====&lt;br /&gt;
En este apartado queremos calcular una ley que nos describa el comportamiento del acuífero e el caso de que impermeabilizásemos las paredes del pozo partiendo del estado estacionario anterior, esto significaría que el fujo de agua en los bordes del pozo sería nulo y el nivel piezométrico iría variando hasta llegar a otro estado estacionario.&lt;br /&gt;
El estado estacionarioque tenderá a alcanzar el fluido será el inicial, ya que al impermeabilizar las paredes volvemos al caso del acuífero confinado y por ello es nivel piezométrico quedará constante a lo largo del tiempo y de la extensión del acuífero.&lt;br /&gt;
La condición frontera a imponer será que el flujo de agua en r0 será 0, ya que estará impermeabilizado. Esto lo podemos plasmar diciendo que la parcial del nivel piezométrico con respecto a ro en r0 es 0, ya que un aislamiento impide el flujo de líquido, y si el flujo de líquido es nulo el nivel piezométrico no varía.&lt;br /&gt;
&amp;lt;math&amp;gt;\frac{\partial h}{\partial \rho}=0&amp;lt;/math&amp;gt;&lt;br /&gt;
====Método de Fourier====&lt;br /&gt;
Ahora suponemos que el radio del pozo es despreciable y que una vez extraido el agua el pozo se cierra quedando el acuifero de nuevo homogéneo. En este caso tomaremos la región ρ &amp;lt; 20. Nuestro objetivo es aproximar las soluciones usando el método de Fourier. De nuevo supondremos que la solución sólo depende de ρ y t, y tomaremos ahora como condición frontera h(20, t) = 40.&lt;br /&gt;
Vamos a considerar el sistema de ecuaciones para h(ρ,t)=h(ρ,t)-40:&lt;br /&gt;
 &amp;lt;math&amp;gt; \left\{\begin{matrix}&lt;br /&gt;
\frac{\partial h}{\partial t} - D (\frac{1}{\rho}  \frac{\partial h}{\partial \rho} + \frac{\partial^2 h}{\partial \rho^2})= 0 &amp;amp; \rho \epsilon (0, 20) &amp;amp; \theta \epsilon (0, 2\Pi ) &amp;amp; t &amp;gt; 0 \\ &lt;br /&gt;
\frac{\partial h}{\partial \rho}(0,t) = 0;   h(20, t)= 0 \\ &lt;br /&gt;
\end{matrix}\right. &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Obtenemos el problema de autovalores asociado al sistema anterior con el método de separación de variables:&lt;br /&gt;
 &amp;lt;math&amp;gt; \left\{\begin{matrix}&lt;br /&gt;
D (\frac{X'(\rho)}{\rho} + X''(\rho))+ λX(\rho)=0 \\&lt;br /&gt;
X'(0) = 0;   X(20)= 0 \\ &lt;br /&gt;
&lt;br /&gt;
\end{matrix}\right. &amp;lt;/math&amp;gt;&lt;br /&gt;
[[Archivo:Marta1.jpg|marco|derecha]]&lt;br /&gt;
Sabemos que los problemas de esta forma tienen como solución la función de Bessel de primera especie que forma una familia de autofunciones: &amp;lt;math&amp;gt;Ψ(\rho)=J_0·(\rho\sqrt{λ})&amp;lt;/math&amp;gt;. Estas se anulan cuando &amp;lt;math&amp;gt;(\rho\sqrt{λ})&amp;lt;/math&amp;gt; se iguala a 2.4048, 5.5201, 8.6537, 11.7915 y 14.9309, siendo estos los 5 primeros ceros de la función de Bessel. De esta manera y tomando ρ=20 obtenemos los 5 primeros autovalores:&lt;br /&gt;
&amp;lt;math&amp;gt;(20\sqrt{λ})=2.4048&amp;lt;/math&amp;gt;Haciendo la operación anterior para los 5 ceros obtenemos los siguientes autovalores: 0.0145, 0.0762, 0.1872, 0.3476, 0.5573.&lt;br /&gt;
Ahora vamos a dibujar las 5 primeras autofunciones utilizando la función besselj:&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
a1=0.0145;&lt;br /&gt;
a2=0.0762;&lt;br /&gt;
a3=0.1872;&lt;br /&gt;
a4=0.3476;&lt;br /&gt;
a5=0.5575;&lt;br /&gt;
r=0:0.02:20;&lt;br /&gt;
F1=besselj(0,r.*(sqrt(a1))); &lt;br /&gt;
F2=besselj(0,r.*(sqrt(a2)));&lt;br /&gt;
F3=besselj(0,r.*(sqrt(a3)));&lt;br /&gt;
F4=besselj(0,r.*(sqrt(a4)));&lt;br /&gt;
F5=besselj(0,r.*(sqrt(a5)));&lt;br /&gt;
hold on&lt;br /&gt;
plot(r,F1)&lt;br /&gt;
plot(r,F2,'r')&lt;br /&gt;
plot(r,F3,'g')	&lt;br /&gt;
plot(r,F4,'c')&lt;br /&gt;
plot(r,F5,'y')&lt;br /&gt;
hold off&lt;br /&gt;
}}&lt;br /&gt;
[[Archivo:Marta2.jpg|marco|derecha]]&lt;br /&gt;
Aproximamos ahora la solución de la ecuación tomando como dato inicial es&amp;lt;math&amp;gt; h (\rho,0)= -log \frac{|\rho + 0.01|}{20.01} &amp;lt;/math&amp;gt; y usando 5 términos del desarrollo de Fourier, teniendo en cuenta que las autofunciones son ortogonales respecto al producto escalar: &amp;lt;math&amp;gt; (f(\rho),g(\rho)) = \int_{0}^{20} \rho f(\rho) g(\rho) \cdot dx &amp;lt;/math&amp;gt;&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
x0=0; L=20;&lt;br /&gt;
c0=[2.4048,5.5201,8.6537,11.7915,14.9309]; %Vector de ceros de la función de Bessel&lt;br /&gt;
A=(c0./20).^2; %Vector de autovalores&lt;br /&gt;
K=5; %Número de términos del desarrollo de Fourier&lt;br /&gt;
x=x0:0.1:L;&lt;br /&gt;
N=length(x)-1;&lt;br /&gt;
J=zeros(N+1,K);&lt;br /&gt;
z=zeros(N+1,K);&lt;br /&gt;
t0=0; tf=500;&lt;br /&gt;
t=t0:0.1:tf;&lt;br /&gt;
[xx,tt]=meshgrid(x,t);&lt;br /&gt;
h=0;&lt;br /&gt;
for k=1:K&lt;br /&gt;
   z(:,k)=(x)'*sqrt(A(k));&lt;br /&gt;
   J(:,k)=besselj(0,z(:,k));&lt;br /&gt;
   h0=-log((abs(x+0.1))/20.01); %Condición inicial&lt;br /&gt;
   c(k)=trapz(x,x'.*h0'.*J(:,k))/trapz(x,x'.*J(:,k).*J(:,k)); %Coeficientes de Fourier&lt;br /&gt;
   h=h+c(k)*exp(-A(k)*t)'*J(:,k)';&lt;br /&gt;
end&lt;br /&gt;
surf(xx,tt,h)&lt;br /&gt;
title('Aproximación de la solución')&lt;br /&gt;
}}&lt;/div&gt;</summary>
		<author><name>Marta Cavero</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Nivel_piezom%C3%A9trico_de_un_acu%C3%ADfero_confinado_(A5)&amp;diff=30095</id>
		<title>Nivel piezométrico de un acuífero confinado (A5)</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Nivel_piezom%C3%A9trico_de_un_acu%C3%ADfero_confinado_(A5)&amp;diff=30095"/>
				<updated>2015-05-14T15:19:39Z</updated>
		
		<summary type="html">&lt;p&gt;Marta Cavero: /* Comportamiento del nivel piezométrico con  \rho  constante */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;br /&gt;
==== Introducción ====&lt;br /&gt;
&lt;br /&gt;
Consideramos un acuífero confinado entre dos capas de terreno impermeables horizontales. Llamaremos h(x, y) al nivel piezométrico del acuífero, definido por la altura que alcanzaría el agua si hiciéramos un sondeo en el punto (x, y). Obviamente este valor depende de la presión a la que se encuentra el agua confinada en el acuífero. Supondremos&lt;br /&gt;
que el acuífero es un medio poroso saturado de agua que ocupa una región infinita y está en equilibrio de manera que &amp;lt;math&amp;gt;h(x, y) = h_0&amp;lt;/math&amp;gt; constante para todo (x, y) ∈ &amp;lt;math&amp;gt;IR^{2}&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Sobre el acuifero se construye un pozo de sección circular y radio&amp;lt;math&amp;gt; ρ_0&amp;lt;/math&amp;gt; para extraer agua. La presencia del pozo hace que el nivel piezométrico cambie. Dada la simetría del problema podemos suponer que h(x, y) sólo va a depender de la distancia al pozo. Si tomamos coordenadas cilíndricas de forma que el eje OZ coincida con el eje de simetría del pozo, entonces h = h(ρ) donde &amp;lt;math&amp;gt;ρ = \sqrt{x^{2} + y^{2}}&amp;lt;/math&amp;gt; . Trabajaremos por tanto en coordenadas polares en el plano (ρ, θ).&lt;br /&gt;
&lt;br /&gt;
Las ecuaciones que permiten conocer h(ρ) son la ecuación de conservación de la masa:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; S = \frac{∂h}{∂t} + div q = 0 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
junto con la ley de Darcy&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; q = −K∇h &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
que es una ley experimental que modela el flujo de agua en un medio poroso. La ley de Darcy establece que el flujo de agua q a través de un medio poroso es proporcional a la diferencia de presión, que a su vez se puede escribir en términos del gradiente del nivel piezométrico en cada punto. La constante K se deduce experimentalmente para cada material y se conoce como la conductividad hidráulica o permeabilidad. Cuanto mayor es la constante K mayor es el flujo de agua provocado por un cambio&lt;br /&gt;
de presión. La ley de Darcy proporciona una buena aproximación del comportamiento del agua en un medio poroso siempre que este sea homogéneo e isótropo.&lt;br /&gt;
&lt;br /&gt;
La constante S en la ley de conservación de la masa se conoce como almacenamiento específico y se interpreta como la cantidad de agua que libera el acuífero al descender el nivel piezométrico en una unidad, por unidad de volumen.&lt;br /&gt;
&lt;br /&gt;
Combinando las ecuaciones de conservación de la masa con la ley de Darcy, obtenemos la ecuación:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \frac{∂h}{∂t} - D∆h = 0, ρ &amp;gt; ρ_0, θ ∈ (0, 2π), t &amp;gt; 0, (1) &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
donde D = K/S es la difusividad hidráulica que supondremos constante.&lt;br /&gt;
&lt;br /&gt;
==== Deducción de la fórmula ====&lt;br /&gt;
&lt;br /&gt;
En este apartado buscamos demostrar la ecuación (1) como combinación de la ecuación de conservación de masas y la Ley de Darcy.&lt;br /&gt;
&lt;br /&gt;
Por un lado sabemos que el laplaciaco equivale a la divergencia del gradiente: &lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; &lt;br /&gt;
(\Delta f = \nabla \cdot \nabla f = div \left (\nabla f) \right) &lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Por otro lado, sabemos que en coordenadas polares: &lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;x = ρ cos \theta \\&lt;br /&gt;
             y = ρ  sen \theta&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\bar{g_ρ } = cos \theta \bar{i} + sin \theta  \bar{j} \\&lt;br /&gt;
              \bar{g_\theta } = - ρ  sin \theta \bar{i} + ρ cos \theta \bar{j} &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;&lt;br /&gt;
G =&lt;br /&gt;
\left(&lt;br /&gt;
\begin{array}{cc}&lt;br /&gt;
1&amp;amp; 0 \\&lt;br /&gt;
0 &amp;amp; ρ ^{2} \\&lt;br /&gt;
\end{array}&lt;br /&gt;
\right);&lt;br /&gt;
\text {donde la raiz del determinante es} \sqrt{g} = ρ&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Como indica el enunciado, al sustituir la Ley de Darcy en la ecuación de conservación de la masa obtenemos y dividir entre S, teniendo en cuenta que el divergente del gradiente es el laplaciano como hemos indicado al principio de este apartado, obtenemos la ecuación (1): &amp;lt;math&amp;gt; \frac{∂h}{∂t} - \frac{k}{S}∆h = 0 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
En esta ecuación queda por desarrollar el Laplaciano de h. &lt;br /&gt;
Partiremos de la función h(ρ,θ), de la cual calcularemos primero el gradiente:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \nabla h = \frac{\partial h}{\partial \rho}\hat{\rho} + \frac{\partial h}{\partial \rho}\hat{\theta} =  \frac{\partial h}{\partial \rho}\bar{\rho} + \frac{1}{\rho^{2}} \frac{\partial h}{\partial \rho}\bar{\theta}  &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
teniendo en cuenta que &amp;lt;math&amp;gt;\bar{g^{i} } = \frac{\bar{g_i } }{ | \bar{g_i } | ^{2} } &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Ahora hacemos el divergente del gradiente anterior y obtenemos el Laplaciano en coordenadas polares:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;math&amp;gt;&lt;br /&gt;
 \Delta h = div(∇h) &lt;br /&gt;
= {1 \over \rho} {\partial \over \partial \rho}&lt;br /&gt;
  \left( \rho {\partial h \over \partial \rho} \right) &lt;br /&gt;
+ {1 \over \rho^2} {\partial^2 h \over \partial \theta^2}&lt;br /&gt;
= {1 \over \rho} {\partial h \over \partial \rho} &lt;br /&gt;
+ {\partial^2 h \over \partial \rho^2}&lt;br /&gt;
+ {1 \over \rho^2} {\partial^2 h \over \partial \theta^2}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Si consideramos que, debido a la simetría del problema, h sólo depende de su distancia al pozo, entonces obtenemos la función radial h(ρ), que nos permite simplificar el Laplaciano del modo siguiente:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;math&amp;gt;&lt;br /&gt;
 \Delta h = div(∇h) &lt;br /&gt;
= {1 \over \rho} {\partial h \over \partial \rho} &lt;br /&gt;
+ {\partial^2 h \over \partial \rho^2}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== Obtención de la ecuación====&lt;br /&gt;
&lt;br /&gt;
Para poder resolver la ecuación anterior y que el resultado sea único, hemos de establecer condiciones iniciales y de contorno.&lt;br /&gt;
&lt;br /&gt;
Las condiciones de contorno serán dos pues aparece la derivada segunda de la posición: &amp;lt;math&amp;gt; h(\rho_0 , t) = h_p \\&lt;br /&gt;
                                                                                                                                                                  h(20,t) = h_0 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
La condición inicial será única pues sólo aparece una derivada de primer orden en tiempo en nuestra ecuación: &amp;lt;math&amp;gt; h(\rho,0) = h_0 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
De este modo la ecuación resultante será:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \left\{\begin{matrix}&lt;br /&gt;
\frac{\partial h}{\partial t} - \frac{k}{s} (\frac{1}{\rho}  \frac{\partial h}{\partial \rho} + \frac{\partial^2 h}{\partial \rho^2})= 0 &amp;amp; \rho \epsilon (\rho_{0}, 2c) &amp;amp; \theta \epsilon (0, 2\Pi ) &amp;amp; t &amp;gt; 0 \\ &lt;br /&gt;
h(\rho_{0},t) = h_{p};   h(20, t)= h_{0} \\ &lt;br /&gt;
h(\rho, 0) = h_{0} &lt;br /&gt;
\end{matrix}\right. &amp;lt;/math&amp;gt; &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==== Resolución por método de diferencias finitas ====&lt;br /&gt;
&lt;br /&gt;
Suponiendo &amp;lt;math&amp;gt;ρ_0 =0.5m&amp;lt;/math&amp;gt;, &amp;lt;math&amp;gt;h_0 =45m&amp;lt;/math&amp;gt;, &amp;lt;math&amp;gt;hp =34&amp;lt;/math&amp;gt;, D=10−2, &amp;lt;math&amp;gt;(ρ,0)=h_0&amp;lt;/math&amp;gt;; y tomando  ∆ρ = 0.1 y ∆t = ∆ρ. Vamos a resolver la ecuación anterior por el método de diferencias finitas, usando el Método de Heun para realizar la aproximación en tiempo.&lt;br /&gt;
&lt;br /&gt;
Primero, sustituyendo los datos anteriores en la ecuación, llegamos a:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \left\{\begin{matrix}&lt;br /&gt;
\frac{\partial h}{\partial t} - 10^{2} (\frac{1}{\rho}  \frac{\partial h}{\partial \rho} + \frac{\partial^2 h}{\partial \rho^2})= 0 &amp;amp; \rho \epsilon (0.5, 20) &amp;amp; \theta \epsilon (0, 2\Pi ) &amp;amp; t &amp;gt; 0 \\ &lt;br /&gt;
h(0.5,t) = 34;   h(20, t)= 45 \\ &lt;br /&gt;
h(\rho, 0) = 45&lt;br /&gt;
\end{matrix}\right. &amp;lt;/math&amp;gt; &lt;br /&gt;
&lt;br /&gt;
Aplicando el método de las diferencias finitas llegamos al siguiente código:&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
&lt;br /&gt;
%TRPRIMERA FASE. ESPACIO&lt;br /&gt;
&lt;br /&gt;
a=0.5; b=20; %Condiciones de contorno&lt;br /&gt;
drho=0.1; N=(b-a)/drho; %División del intervalo&lt;br /&gt;
&lt;br /&gt;
rho=a+drho:drho:b-drho; %Sólo nodos interiores&lt;br /&gt;
&lt;br /&gt;
%Creamos las matrices&lt;br /&gt;
&lt;br /&gt;
L=diag(ones(1,N-2),1)-diag(ones(1,N-2),-1);&lt;br /&gt;
A=diag(1./rho);&lt;br /&gt;
L=10^(-2)*(1/(2*drho))*A*L;&lt;br /&gt;
&lt;br /&gt;
K=-2*diag(ones(1,N-1))+diag(ones(1,N-2),1)+diag(ones(1,N-2),-1);&lt;br /&gt;
K=10^(-2)*(1/drho^2)*K; &lt;br /&gt;
&lt;br /&gt;
F=zeros(N-1,1);&lt;br /&gt;
F(1,1)=10^(-2)*(-17/(rho(1)*drho)+34/drho^2);&lt;br /&gt;
F(N-1,1)=10^(-2)*(45/(rho(N-1)*2*drho)+45/drho^2);&lt;br /&gt;
&lt;br /&gt;
%SEGUDA FASE. TIEMPO&lt;br /&gt;
&lt;br /&gt;
H=ones(1,length(rho)); H=H*45; H=H';&lt;br /&gt;
dt=drho; T=10; t=0:dt:T;&lt;br /&gt;
h0=34; hN=45;&lt;br /&gt;
sol=[h0 H' hN];&lt;br /&gt;
&lt;br /&gt;
for j=1:length(t)-1 &lt;br /&gt;
    &lt;br /&gt;
    %Método de Heun&lt;br /&gt;
    k1=F+(K+L)*H;&lt;br /&gt;
    k2=F+(K+L)*(H+k1*dt);&lt;br /&gt;
    H=H+(dt/2)*(k1+k2);&lt;br /&gt;
 &lt;br /&gt;
    sol(j+1,:)=[h0 H' hN]; %Salvamos las solución, incluimos los extremos&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
rho1=a:drho:b; %Incluimos los nodos exteriores&lt;br /&gt;
&lt;br /&gt;
[rr,tt]=meshgrid(rho1,t);&lt;br /&gt;
surf(rr,tt,sol); %Dibujamos la solución&lt;br /&gt;
title('Nivel Piezométrico. Método Diferencias finitas con Heun en tiempo.')&lt;br /&gt;
xlabel('Distancia radial al centro del pozo.')&lt;br /&gt;
ylabel('Tiempo.')&lt;br /&gt;
zlabel('Nivel piezométrico.')&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
Mediante este código obtenemos la siguiente gráfica:&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Grafica npiezometrico.jpg|500px|thumb|best|Gráfica Nivel Piezométrico aproximada con el Método de Diferencias Finitas con Heun en tiempo.]]&lt;br /&gt;
&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Ahora dibujaremos la gráfica mediante los métodos de Euler implícito y trapecio y compararemos los resultados obtenidos.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Sobre el programa anterior cambiaremos las líneas correspondientes al método de Heun.&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* Método de Euler implícito:&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;math&amp;gt; \left\{\begin{matrix}&lt;br /&gt;
y_{0}\\&lt;br /&gt;
y_{n+1}=y_{n} + hf(t_{n+1},y_{n+1})\\&lt;br /&gt;
\end{matrix}\right. &amp;lt;/math&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
&lt;br /&gt;
for j=1:length(t)-1 &lt;br /&gt;
    &lt;br /&gt;
    %Método de Euler implícito&lt;br /&gt;
    &lt;br /&gt;
    H=(eye(N-1)-dt*(K+L))\(H+(F*dt)); &lt;br /&gt;
 &lt;br /&gt;
    sol(j+1,:)=[h0 H' hN]; %Salvamos las solución, incluimos los extremos&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
rho1=a:drho:b; %Incluimos los nodos exteriores&lt;br /&gt;
&lt;br /&gt;
[rr,tt]=meshgrid(rho1,t);&lt;br /&gt;
surf(rr,tt,sol); %Dibujamos la solución&lt;br /&gt;
title('Nivel Piezométrico. Método Diferencias finitas con Euler en tiempo.')&lt;br /&gt;
xlabel('Distancia radial al centro del pozo.')&lt;br /&gt;
ylabel('Tiempo.')&lt;br /&gt;
zlabel('Nivel piezométrico.')&lt;br /&gt;
&lt;br /&gt;
}}&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* Método del Trapecio:&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;math&amp;gt; \left\{\begin{matrix}&lt;br /&gt;
y_{0}\\&lt;br /&gt;
y_{n+1}=y_{n} + \frac{h}{2}f((t_{n},y_{n}+f(t_{n+1},y_{n+1}))\\&lt;br /&gt;
\end{matrix}\right. &amp;lt;/math&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
for j=1:length(t)-1 &lt;br /&gt;
    &lt;br /&gt;
    %Método del trapecio&lt;br /&gt;
    k1=F+(K+L)*H;&lt;br /&gt;
    k2=F+(K+L)*(H+k1*dt); &lt;br /&gt;
    H=(eye(N-1)-(dt/2)*(K+L))\(H+dt*F+(dt/2)*(K+L)*H);&lt;br /&gt;
 &lt;br /&gt;
    sol(j+1,:)=[h0 H' hN]; %Salvamos las solución, incluimos los extremos&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
rho1=a:drho:b; %Incluimos los nodos exteriores&lt;br /&gt;
&lt;br /&gt;
[rr,tt]=meshgrid(rho1,t);&lt;br /&gt;
surf(rr,tt,sol); %Dibujamos la solución&lt;br /&gt;
title('Nivel Piezométrico. Método Diferencias finitas con trapecio en tiempo.')&lt;br /&gt;
xlabel('Distancia radial al centro del pozo.')&lt;br /&gt;
ylabel('Tiempo.')&lt;br /&gt;
zlabel('Nivel piezométrico.')&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
Como podemos ver a continuación las tres gráficas resultantes son prácticamente iguales por lo que los tres métodos hacen una aproximación similar.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
[[Archivo:Trapecio12.png|500px|thumb|right|Gráfica Nivel Piezométrico aproximada con el Método de Diferencias Finitas con Trapecio en tiempo.]]&lt;br /&gt;
[[Archivo:Euler12.png|500px|thumb|right|Gráfica Nivel Piezométrico aproximada con el Método de Diferencias Finitas con Euler Implícito en tiempo.]]&lt;br /&gt;
&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== Comportamiento del nivel piezométrico con &amp;lt;math&amp;gt; \rho &amp;lt;/math&amp;gt; constante ====&lt;br /&gt;
&lt;br /&gt;
Ahora supondremos que &amp;lt;math&amp;gt; \rho &amp;lt;/math&amp;gt; es constante y que su valor es 2 y dibujaremos el comportamiento del nivel piezométrico en una gráfica 2D nivel piezométrico-tiempo.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Nuevamente utilizando el programa anterior con el  método de Heun:&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Rho2.png|500px|thumb|best|Gráfica Nivel Piezométrico-tiempo para &amp;lt;math&amp;gt; \rho =2 &amp;lt;/math&amp;gt; para T=10.]]&lt;br /&gt;
[[Archivo:Rho1000.png|500px|thumb|best|Gráfica Nivel Piezométrico-tiempo para &amp;lt;math&amp;gt; \rho =2 &amp;lt;/math&amp;gt; para T=1000.]]&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
&lt;br /&gt;
%PRIMERA FASE. ESPACIO&lt;br /&gt;
&lt;br /&gt;
a=0.5; b=20; %Condiciones de contorno&lt;br /&gt;
drho=0.1; N=(b-a)/drho; %División del intervalo&lt;br /&gt;
&lt;br /&gt;
rho=a+drho:drho:b-drho; %Sólo nodos interiores&lt;br /&gt;
&lt;br /&gt;
%Creamos las matrices&lt;br /&gt;
&lt;br /&gt;
L=diag(ones(1,N-2),1)-diag(ones(1,N-2),-1);&lt;br /&gt;
A=diag(1./rho);&lt;br /&gt;
L=10^(-2)*(1/(2*drho))*A*L;&lt;br /&gt;
&lt;br /&gt;
K=-2*diag(ones(1,N-1))+diag(ones(1,N-2),1)+diag(ones(1,N-2),-1);&lt;br /&gt;
K=10^(-2)*(1/drho^2)*K; &lt;br /&gt;
&lt;br /&gt;
F=zeros(N-1,1);&lt;br /&gt;
F(1,1)=10^(-2)*(-17/(rho(1)*drho)+34/drho^2);&lt;br /&gt;
F(N-1,1)=10^(-2)*(45/(rho(N-1)*2*drho)+45/drho^2);&lt;br /&gt;
&lt;br /&gt;
%SEGUDA FASE. TIEMPO&lt;br /&gt;
&lt;br /&gt;
H=ones(1,length(rho)); H=H*45; H=H';&lt;br /&gt;
dt=drho; &lt;br /&gt;
T=10 &lt;br /&gt;
%Comprobamos también la solución para un tiempo mayor &lt;br /&gt;
%T=1000&lt;br /&gt;
t=0:dt:T;&lt;br /&gt;
h0=34; hN=45;&lt;br /&gt;
sol=[h0 H' hN];&lt;br /&gt;
&lt;br /&gt;
for j=1:length(t)-1 &lt;br /&gt;
    &lt;br /&gt;
    %Método de Heun&lt;br /&gt;
    k1=F+(K+L)*H;&lt;br /&gt;
    k2=F+(K+L)*(H+k1*dt);&lt;br /&gt;
    H=H+(dt/2)*(k1+k2);&lt;br /&gt;
 &lt;br /&gt;
    sol(j+1,:)=[h0 H' hN]; %Salvamos las solución, incluimos los extremos&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
rho1=a:drho:b; %Incluimos los nodos exteriores&lt;br /&gt;
&lt;br /&gt;
m=sol(:,rho==2); %Vector que incluye la solución en tiempo para rho=2&lt;br /&gt;
&lt;br /&gt;
plot(t,m);&lt;br /&gt;
&lt;br /&gt;
title('Comportamiento del nivel piezométrico en el tiempo para p=2')&lt;br /&gt;
xlabel('Tiempo')&lt;br /&gt;
ylabel('Nivel piezométrico.')&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
La primera gráfica muestra que para tiempos pequeños la variación del nivel piezométrico es muy pequeña (del orden de 0,10/0,15 m), aún así como observamos en la segunda gráfica a medida que avanzamos en el tiempo la variación del nivel disminuye aún más ya que la curva está cada vez menos inclinada.&lt;br /&gt;
&lt;br /&gt;
==== Variación del nivel piezométrico en tiempos grandes ====&lt;br /&gt;
Ahora vamos a comprobar que la variación del nivel piezométrico para tiempos elevados (T=5000) es mínima.&lt;br /&gt;
Para ello dibujaremos las soluciones cada 100 horas de en el intervalo temporal [1; 5000], en&lt;br /&gt;
una misma gráfica.&lt;br /&gt;
[[Archivo:Tiemposg2.png|marco|derecha|Nivel piezométrico para tiempos grandes]]&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
%PRIMERA FASE. ESPACIO&lt;br /&gt;
&lt;br /&gt;
a=0.5; b=20; %Condiciones de contorno&lt;br /&gt;
drho=0.1; N=(b-a)/drho; %División del intervalo&lt;br /&gt;
&lt;br /&gt;
rho=a+drho:drho:b-drho; %Sólo nodos interiores&lt;br /&gt;
&lt;br /&gt;
%Creamos las matrices&lt;br /&gt;
&lt;br /&gt;
L=diag(ones(1,N-2),1)-diag(ones(1,N-2),-1);&lt;br /&gt;
A=diag(1./rho);&lt;br /&gt;
L=10^(-2)*(1/(2*drho))*A*L;&lt;br /&gt;
&lt;br /&gt;
K=-2*diag(ones(1,N-1))+diag(ones(1,N-2),1)+diag(ones(1,N-2),-1);&lt;br /&gt;
K=10^(-2)*(1/drho^2)*K; &lt;br /&gt;
&lt;br /&gt;
F=zeros(N-1,1);&lt;br /&gt;
F(1,1)=10^(-2)*(-17/(rho(1)*drho)+34/drho^2);&lt;br /&gt;
F(N-1,1)=10^(-2)*(45/(rho(N-1)*2*drho)+45/drho^2);&lt;br /&gt;
&lt;br /&gt;
%SEGUDA FASE. TIEMPO&lt;br /&gt;
&lt;br /&gt;
H=ones(1,length(rho)); H=H*45; H=H';&lt;br /&gt;
dt=0.1; T=5000; t=0:dt:T;&lt;br /&gt;
h0=34; hN=45;&lt;br /&gt;
sol=[h0 H' hN];&lt;br /&gt;
&lt;br /&gt;
figure(1);&lt;br /&gt;
hold on;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
for j=1:length(t)-1 &lt;br /&gt;
    &lt;br /&gt;
    %Método de Heun&lt;br /&gt;
    k1=F+(K+L)*H;&lt;br /&gt;
    k2=F+(K+L)*(H+k1*dt);&lt;br /&gt;
    H=H+(dt/2)*(k1+k2);&lt;br /&gt;
 &lt;br /&gt;
    sol(j+1,:)=[h0 H' hN]; %Salvamos las solución, incluimos los extremos&lt;br /&gt;
    &lt;br /&gt;
 if rem(t(j),100)==0; &lt;br /&gt;
    &lt;br /&gt;
    rho1=a:drho:b; %Incluimos los nodos exteriores&lt;br /&gt;
  &lt;br /&gt;
  plot(rho1,sol(j,:)) %pintamos la solución cada 100 horas&lt;br /&gt;
  &lt;br /&gt;
  title('Variación del nivel piezométrico para tiempos grandes')&lt;br /&gt;
  pause(1)&lt;br /&gt;
&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
end&lt;br /&gt;
}}&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Como se puede observar en la gráfica según vamos avanzando en el tiempo las curvas están más juntas lo que quiere decir que la variación del nivel es cada vez menor aproximándose a un régimen estacionario.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Trabajo21.jpg|marco|derecha|Nivel piezométrico estacionario]]&lt;br /&gt;
&lt;br /&gt;
====Problema estacionario====&lt;br /&gt;
Como hemos visto en el apartado anterior para tiempos grandes el nivel piezométrico se mantiene practicamente constante a lo largo del tiempo, esto es debido a que se establece un equilibrio entre el caudal de agua extraida del acuifero y la migración de aguas desde los puntos más alejados del pozo hacia este.&lt;br /&gt;
Por lo tanto se verifica que:&lt;br /&gt;
 &amp;lt;math&amp;gt;\frac{\partial h}{\partial t}=0&amp;lt;/math&amp;gt;&lt;br /&gt;
Y por lo tanto el nivel piezométrico se puede aproximar por:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \left\{\begin{matrix}&lt;br /&gt;
- \frac{k}{s} (\frac{1}{\rho}  \frac{\partial h}{\partial \rho} + \frac{\partial^2 h}{\partial \rho^2})= 0 &amp;amp; \rho \epsilon (1, 20) &amp;amp; \theta \epsilon (0, 2\Pi ) &amp;amp; 0 &amp;lt; t &amp;lt; 5000 \\ &lt;br /&gt;
h(1,t) = 35;    h(20, t)= 40 \\ &lt;br /&gt;
h(\rho, 0) = 40 &lt;br /&gt;
\end{matrix}\right. &amp;lt;/math&amp;gt;&lt;br /&gt;
Resolvemos por diferencias finitas:&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
    %datos&lt;br /&gt;
    t=5000;&lt;br /&gt;
    l=20;&lt;br /&gt;
    D=0.01;&lt;br /&gt;
    hp=35;&lt;br /&gt;
    ho=40;&lt;br /&gt;
    %discretización&lt;br /&gt;
    s=0.1;&lt;br /&gt;
    x0=1;&lt;br /&gt;
    x=x0:s:l;&lt;br /&gt;
    xint=x0+s:s:l-s;&lt;br /&gt;
    N=length(x)-2; &lt;br /&gt;
    %construimos las matrices para el método de las diferencias finitas&lt;br /&gt;
    K=(1/s^2)*(diag(2*ones(1,N))-diag(ones(1,N-1),1)-diag(ones(1,N-1),-1));&lt;br /&gt;
    A=(1/(s*2))*(diag(ones(1,N-1),1)-diag(ones(1,N-1),-1));&lt;br /&gt;
    A=diag(1./xint)*A;&lt;br /&gt;
    h0=(40*ones(N,1));&lt;br /&gt;
    dt=200; &lt;br /&gt;
    t=0:dt:t;&lt;br /&gt;
    M=length(t)-1;&lt;br /&gt;
    F=(zeros(N,1));&lt;br /&gt;
    F(1)=D*((hp/s^2)-(hp/(2*s)*1/xint(1)));&lt;br /&gt;
    F(N)=D*((ho/s^2)+ho/(s*2*xint(N)));&lt;br /&gt;
    H(1,:)=[40;h0;40]'; &lt;br /&gt;
    h=h0;&lt;br /&gt;
    for n=1:M&lt;br /&gt;
      h=(D)*(K-A)\((F)); %utilizamos el comando backslash para resolver el sistema de ecuaciones&lt;br /&gt;
      H(n+1,:)=[hp h' ho];&lt;br /&gt;
    end&lt;br /&gt;
    %mallado y representación&lt;br /&gt;
    [X,T]=meshgrid(x,t);&lt;br /&gt;
    surf(X,T,H)&lt;br /&gt;
    xlabel('Distancia (metros)');&lt;br /&gt;
    ylabel('Tiempo (horas)');&lt;br /&gt;
    zlabel('Nivel piezométrico (metros)')&lt;br /&gt;
}}&lt;br /&gt;
Efectivamente, como podemos comprobar en la gráfica, la solución es independiente del tiempo salvo para tiempos pequeños en los cuales no queda muy bien definida&lt;br /&gt;
&lt;br /&gt;
====Capacidad de recuperación del acuífero====&lt;br /&gt;
En este apartado queremos calcular una ley que nos describa el comportamiento del acuífero e el caso de que impermeabilizásemos las paredes del pozo partiendo del estado estacionario anterior, esto significaría que el fujo de agua en los bordes del pozo sería nulo y el nivel piezométrico iría variando hasta llegar a otro estado estacionario.&lt;br /&gt;
El estado estacionarioque tenderá a alcanzar el fluido será el inicial, ya que al impermeabilizar las paredes volvemos al caso del acuífero confinado y por ello es nivel piezométrico quedará constante a lo largo del tiempo y de la extensión del acuífero.&lt;br /&gt;
La condición frontera a imponer será que el flujo de agua en r0 será 0, ya que estará impermeabilizado. Esto lo podemos plasmar diciendo que la parcial del nivel piezométrico con respecto a ro en r0 es 0, ya que un aislamiento impide el flujo de líquido, y si el flujo de líquido es nulo el nivel piezométrico no varía.&lt;br /&gt;
&amp;lt;math&amp;gt;\frac{\partial h}{\partial \rho}=0&amp;lt;/math&amp;gt;&lt;br /&gt;
====Método de Fourier====&lt;br /&gt;
Ahora suponemos que el radio del pozo es despreciable y que una vez extraido el agua el pozo se cierra quedando el acuifero de nuevo homogéneo. En este caso tomaremos la región ρ &amp;lt; 20. Nuestro objetivo es aproximar las soluciones usando el método de Fourier. De nuevo supondremos que la solución sólo depende de ρ y t, y tomaremos ahora como condición frontera h(20, t) = 40.&lt;br /&gt;
Vamos a considerar el sistema de ecuaciones para h(ρ,t)=h(ρ,t)-40:&lt;br /&gt;
 &amp;lt;math&amp;gt; \left\{\begin{matrix}&lt;br /&gt;
\frac{\partial h}{\partial t} - D (\frac{1}{\rho}  \frac{\partial h}{\partial \rho} + \frac{\partial^2 h}{\partial \rho^2})= 0 &amp;amp; \rho \epsilon (0, 20) &amp;amp; \theta \epsilon (0, 2\Pi ) &amp;amp; t &amp;gt; 0 \\ &lt;br /&gt;
\frac{\partial h}{\partial \rho}(0,t) = 0;   h(20, t)= 0 \\ &lt;br /&gt;
\end{matrix}\right. &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Obtenemos el problema de autovalores asociado al sistema anterior con el método de separación de variables:&lt;br /&gt;
 &amp;lt;math&amp;gt; \left\{\begin{matrix}&lt;br /&gt;
D (\frac{X'(\rho)}{\rho} + X''(\rho))+ λX(\rho)=0 \\&lt;br /&gt;
X'(0) = 0;   X(20)= 0 \\ &lt;br /&gt;
&lt;br /&gt;
\end{matrix}\right. &amp;lt;/math&amp;gt;&lt;br /&gt;
[[Archivo:Marta1.jpg|marco|derecha]]&lt;br /&gt;
Sabemos que los problemas de esta forma tienen como solución la función de Bessel de primera especie que forma una familia de autofunciones: &amp;lt;math&amp;gt;Ψ(\rho)=J_0·(\rho\sqrt{λ})&amp;lt;/math&amp;gt;. Estas se anulan cuando &amp;lt;math&amp;gt;(\rho\sqrt{λ})&amp;lt;/math&amp;gt; se iguala a 2.4048, 5.5201, 8.6537, 11.7915 y 14.9309, siendo estos los 5 primeros ceros de la función de Bessel. De esta manera y tomando ρ=20 obtenemos los 5 primeros autovalores:&lt;br /&gt;
&amp;lt;math&amp;gt;(20\sqrt{λ})=2.4048&amp;lt;/math&amp;gt;Haciendo la operación anterior para los 5 ceros obtenemos los siguientes autovalores: 0.0145, 0.0762, 0.1872, 0.3476, 0.5573.&lt;br /&gt;
Ahora vamos a dibujar las 5 primeras autofunciones utilizando la función besselj:&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
a1=0.0145;&lt;br /&gt;
a2=0.0762;&lt;br /&gt;
a3=0.1872;&lt;br /&gt;
a4=0.3476;&lt;br /&gt;
a5=0.5575;&lt;br /&gt;
r=0:0.02:20;&lt;br /&gt;
F1=besselj(0,r.*(sqrt(a1))); &lt;br /&gt;
F2=besselj(0,r.*(sqrt(a2)));&lt;br /&gt;
F3=besselj(0,r.*(sqrt(a3)));&lt;br /&gt;
F4=besselj(0,r.*(sqrt(a4)));&lt;br /&gt;
F5=besselj(0,r.*(sqrt(a5)));&lt;br /&gt;
hold on&lt;br /&gt;
plot(r,F1)&lt;br /&gt;
plot(r,F2,'r')&lt;br /&gt;
plot(r,F3,'g')	&lt;br /&gt;
plot(r,F4,'c')&lt;br /&gt;
plot(r,F5,'y')&lt;br /&gt;
hold off&lt;br /&gt;
}}&lt;br /&gt;
[[Archivo:Marta2.jpg|marco|derecha]]&lt;br /&gt;
Aproximamos ahora la solución de la ecuación tomando como dato inicial es&amp;lt;math&amp;gt; h (\rho,0)= -log \frac{|\rho + 0.01|}{20.01} &amp;lt;/math&amp;gt; y usando 5 términos del desarrollo de Fourier, teniendo en cuenta que las autofunciones son ortogonales respecto al producto escalar: &amp;lt;math&amp;gt; (f(\rho),g(\rho)) = \int_{0}^{20} \rho f(\rho) g(\rho) \cdot dx &amp;lt;/math&amp;gt;&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
x0=0; L=20;&lt;br /&gt;
c0=[2.4048,5.5201,8.6537,11.7915,14.9309]; %Vector de ceros de la función de Bessel&lt;br /&gt;
A=(c0./20).^2; %Vector de autovalores&lt;br /&gt;
K=5; %Número de términos del desarrollo de Fourier&lt;br /&gt;
x=x0:0.1:L;&lt;br /&gt;
N=length(x)-1;&lt;br /&gt;
J=zeros(N+1,K);&lt;br /&gt;
z=zeros(N+1,K);&lt;br /&gt;
t0=0; tf=500;&lt;br /&gt;
t=t0:0.1:tf;&lt;br /&gt;
[xx,tt]=meshgrid(x,t);&lt;br /&gt;
h=0;&lt;br /&gt;
for k=1:K&lt;br /&gt;
   z(:,k)=(x)'*sqrt(A(k));&lt;br /&gt;
   J(:,k)=besselj(0,z(:,k));&lt;br /&gt;
   h0=-log((abs(x+0.1))/20.01); %Condición inicial&lt;br /&gt;
   c(k)=trapz(x,x'.*h0'.*J(:,k))/trapz(x,x'.*J(:,k).*J(:,k)); %Coeficientes de Fourier&lt;br /&gt;
   h=h+c(k)*exp(-A(k)*t)'*J(:,k)';&lt;br /&gt;
end&lt;br /&gt;
surf(xx,tt,h)&lt;br /&gt;
title('Aproximación de la solución')&lt;br /&gt;
}}&lt;/div&gt;</summary>
		<author><name>Marta Cavero</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Nivel_piezom%C3%A9trico_de_un_acu%C3%ADfero_confinado_(A5)&amp;diff=30093</id>
		<title>Nivel piezométrico de un acuífero confinado (A5)</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Nivel_piezom%C3%A9trico_de_un_acu%C3%ADfero_confinado_(A5)&amp;diff=30093"/>
				<updated>2015-05-14T15:17:22Z</updated>
		
		<summary type="html">&lt;p&gt;Marta Cavero: /* Resolución por método de diferencias finitas */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;br /&gt;
==== Introducción ====&lt;br /&gt;
&lt;br /&gt;
Consideramos un acuífero confinado entre dos capas de terreno impermeables horizontales. Llamaremos h(x, y) al nivel piezométrico del acuífero, definido por la altura que alcanzaría el agua si hiciéramos un sondeo en el punto (x, y). Obviamente este valor depende de la presión a la que se encuentra el agua confinada en el acuífero. Supondremos&lt;br /&gt;
que el acuífero es un medio poroso saturado de agua que ocupa una región infinita y está en equilibrio de manera que &amp;lt;math&amp;gt;h(x, y) = h_0&amp;lt;/math&amp;gt; constante para todo (x, y) ∈ &amp;lt;math&amp;gt;IR^{2}&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Sobre el acuifero se construye un pozo de sección circular y radio&amp;lt;math&amp;gt; ρ_0&amp;lt;/math&amp;gt; para extraer agua. La presencia del pozo hace que el nivel piezométrico cambie. Dada la simetría del problema podemos suponer que h(x, y) sólo va a depender de la distancia al pozo. Si tomamos coordenadas cilíndricas de forma que el eje OZ coincida con el eje de simetría del pozo, entonces h = h(ρ) donde &amp;lt;math&amp;gt;ρ = \sqrt{x^{2} + y^{2}}&amp;lt;/math&amp;gt; . Trabajaremos por tanto en coordenadas polares en el plano (ρ, θ).&lt;br /&gt;
&lt;br /&gt;
Las ecuaciones que permiten conocer h(ρ) son la ecuación de conservación de la masa:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; S = \frac{∂h}{∂t} + div q = 0 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
junto con la ley de Darcy&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; q = −K∇h &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
que es una ley experimental que modela el flujo de agua en un medio poroso. La ley de Darcy establece que el flujo de agua q a través de un medio poroso es proporcional a la diferencia de presión, que a su vez se puede escribir en términos del gradiente del nivel piezométrico en cada punto. La constante K se deduce experimentalmente para cada material y se conoce como la conductividad hidráulica o permeabilidad. Cuanto mayor es la constante K mayor es el flujo de agua provocado por un cambio&lt;br /&gt;
de presión. La ley de Darcy proporciona una buena aproximación del comportamiento del agua en un medio poroso siempre que este sea homogéneo e isótropo.&lt;br /&gt;
&lt;br /&gt;
La constante S en la ley de conservación de la masa se conoce como almacenamiento específico y se interpreta como la cantidad de agua que libera el acuífero al descender el nivel piezométrico en una unidad, por unidad de volumen.&lt;br /&gt;
&lt;br /&gt;
Combinando las ecuaciones de conservación de la masa con la ley de Darcy, obtenemos la ecuación:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \frac{∂h}{∂t} - D∆h = 0, ρ &amp;gt; ρ_0, θ ∈ (0, 2π), t &amp;gt; 0, (1) &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
donde D = K/S es la difusividad hidráulica que supondremos constante.&lt;br /&gt;
&lt;br /&gt;
==== Deducción de la fórmula ====&lt;br /&gt;
&lt;br /&gt;
En este apartado buscamos demostrar la ecuación (1) como combinación de la ecuación de conservación de masas y la Ley de Darcy.&lt;br /&gt;
&lt;br /&gt;
Por un lado sabemos que el laplaciaco equivale a la divergencia del gradiente: &lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; &lt;br /&gt;
(\Delta f = \nabla \cdot \nabla f = div \left (\nabla f) \right) &lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Por otro lado, sabemos que en coordenadas polares: &lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;x = ρ cos \theta \\&lt;br /&gt;
             y = ρ  sen \theta&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\bar{g_ρ } = cos \theta \bar{i} + sin \theta  \bar{j} \\&lt;br /&gt;
              \bar{g_\theta } = - ρ  sin \theta \bar{i} + ρ cos \theta \bar{j} &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;&lt;br /&gt;
G =&lt;br /&gt;
\left(&lt;br /&gt;
\begin{array}{cc}&lt;br /&gt;
1&amp;amp; 0 \\&lt;br /&gt;
0 &amp;amp; ρ ^{2} \\&lt;br /&gt;
\end{array}&lt;br /&gt;
\right);&lt;br /&gt;
\text {donde la raiz del determinante es} \sqrt{g} = ρ&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Como indica el enunciado, al sustituir la Ley de Darcy en la ecuación de conservación de la masa obtenemos y dividir entre S, teniendo en cuenta que el divergente del gradiente es el laplaciano como hemos indicado al principio de este apartado, obtenemos la ecuación (1): &amp;lt;math&amp;gt; \frac{∂h}{∂t} - \frac{k}{S}∆h = 0 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
En esta ecuación queda por desarrollar el Laplaciano de h. &lt;br /&gt;
Partiremos de la función h(ρ,θ), de la cual calcularemos primero el gradiente:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \nabla h = \frac{\partial h}{\partial \rho}\hat{\rho} + \frac{\partial h}{\partial \rho}\hat{\theta} =  \frac{\partial h}{\partial \rho}\bar{\rho} + \frac{1}{\rho^{2}} \frac{\partial h}{\partial \rho}\bar{\theta}  &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
teniendo en cuenta que &amp;lt;math&amp;gt;\bar{g^{i} } = \frac{\bar{g_i } }{ | \bar{g_i } | ^{2} } &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Ahora hacemos el divergente del gradiente anterior y obtenemos el Laplaciano en coordenadas polares:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;math&amp;gt;&lt;br /&gt;
 \Delta h = div(∇h) &lt;br /&gt;
= {1 \over \rho} {\partial \over \partial \rho}&lt;br /&gt;
  \left( \rho {\partial h \over \partial \rho} \right) &lt;br /&gt;
+ {1 \over \rho^2} {\partial^2 h \over \partial \theta^2}&lt;br /&gt;
= {1 \over \rho} {\partial h \over \partial \rho} &lt;br /&gt;
+ {\partial^2 h \over \partial \rho^2}&lt;br /&gt;
+ {1 \over \rho^2} {\partial^2 h \over \partial \theta^2}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Si consideramos que, debido a la simetría del problema, h sólo depende de su distancia al pozo, entonces obtenemos la función radial h(ρ), que nos permite simplificar el Laplaciano del modo siguiente:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;math&amp;gt;&lt;br /&gt;
 \Delta h = div(∇h) &lt;br /&gt;
= {1 \over \rho} {\partial h \over \partial \rho} &lt;br /&gt;
+ {\partial^2 h \over \partial \rho^2}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== Obtención de la ecuación====&lt;br /&gt;
&lt;br /&gt;
Para poder resolver la ecuación anterior y que el resultado sea único, hemos de establecer condiciones iniciales y de contorno.&lt;br /&gt;
&lt;br /&gt;
Las condiciones de contorno serán dos pues aparece la derivada segunda de la posición: &amp;lt;math&amp;gt; h(\rho_0 , t) = h_p \\&lt;br /&gt;
                                                                                                                                                                  h(20,t) = h_0 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
La condición inicial será única pues sólo aparece una derivada de primer orden en tiempo en nuestra ecuación: &amp;lt;math&amp;gt; h(\rho,0) = h_0 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
De este modo la ecuación resultante será:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \left\{\begin{matrix}&lt;br /&gt;
\frac{\partial h}{\partial t} - \frac{k}{s} (\frac{1}{\rho}  \frac{\partial h}{\partial \rho} + \frac{\partial^2 h}{\partial \rho^2})= 0 &amp;amp; \rho \epsilon (\rho_{0}, 2c) &amp;amp; \theta \epsilon (0, 2\Pi ) &amp;amp; t &amp;gt; 0 \\ &lt;br /&gt;
h(\rho_{0},t) = h_{p};   h(20, t)= h_{0} \\ &lt;br /&gt;
h(\rho, 0) = h_{0} &lt;br /&gt;
\end{matrix}\right. &amp;lt;/math&amp;gt; &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==== Resolución por método de diferencias finitas ====&lt;br /&gt;
&lt;br /&gt;
Suponiendo &amp;lt;math&amp;gt;ρ_0 =0.5m&amp;lt;/math&amp;gt;, &amp;lt;math&amp;gt;h_0 =45m&amp;lt;/math&amp;gt;, &amp;lt;math&amp;gt;hp =34&amp;lt;/math&amp;gt;, D=10−2, &amp;lt;math&amp;gt;(ρ,0)=h_0&amp;lt;/math&amp;gt;; y tomando  ∆ρ = 0.1 y ∆t = ∆ρ. Vamos a resolver la ecuación anterior por el método de diferencias finitas, usando el Método de Heun para realizar la aproximación en tiempo.&lt;br /&gt;
&lt;br /&gt;
Primero, sustituyendo los datos anteriores en la ecuación, llegamos a:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \left\{\begin{matrix}&lt;br /&gt;
\frac{\partial h}{\partial t} - 10^{2} (\frac{1}{\rho}  \frac{\partial h}{\partial \rho} + \frac{\partial^2 h}{\partial \rho^2})= 0 &amp;amp; \rho \epsilon (0.5, 20) &amp;amp; \theta \epsilon (0, 2\Pi ) &amp;amp; t &amp;gt; 0 \\ &lt;br /&gt;
h(0.5,t) = 34;   h(20, t)= 45 \\ &lt;br /&gt;
h(\rho, 0) = 45&lt;br /&gt;
\end{matrix}\right. &amp;lt;/math&amp;gt; &lt;br /&gt;
&lt;br /&gt;
Aplicando el método de las diferencias finitas llegamos al siguiente código:&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
&lt;br /&gt;
%TRPRIMERA FASE. ESPACIO&lt;br /&gt;
&lt;br /&gt;
a=0.5; b=20; %Condiciones de contorno&lt;br /&gt;
drho=0.1; N=(b-a)/drho; %División del intervalo&lt;br /&gt;
&lt;br /&gt;
rho=a+drho:drho:b-drho; %Sólo nodos interiores&lt;br /&gt;
&lt;br /&gt;
%Creamos las matrices&lt;br /&gt;
&lt;br /&gt;
L=diag(ones(1,N-2),1)-diag(ones(1,N-2),-1);&lt;br /&gt;
A=diag(1./rho);&lt;br /&gt;
L=10^(-2)*(1/(2*drho))*A*L;&lt;br /&gt;
&lt;br /&gt;
K=-2*diag(ones(1,N-1))+diag(ones(1,N-2),1)+diag(ones(1,N-2),-1);&lt;br /&gt;
K=10^(-2)*(1/drho^2)*K; &lt;br /&gt;
&lt;br /&gt;
F=zeros(N-1,1);&lt;br /&gt;
F(1,1)=10^(-2)*(-17/(rho(1)*drho)+34/drho^2);&lt;br /&gt;
F(N-1,1)=10^(-2)*(45/(rho(N-1)*2*drho)+45/drho^2);&lt;br /&gt;
&lt;br /&gt;
%SEGUDA FASE. TIEMPO&lt;br /&gt;
&lt;br /&gt;
H=ones(1,length(rho)); H=H*45; H=H';&lt;br /&gt;
dt=drho; T=10; t=0:dt:T;&lt;br /&gt;
h0=34; hN=45;&lt;br /&gt;
sol=[h0 H' hN];&lt;br /&gt;
&lt;br /&gt;
for j=1:length(t)-1 &lt;br /&gt;
    &lt;br /&gt;
    %Método de Heun&lt;br /&gt;
    k1=F+(K+L)*H;&lt;br /&gt;
    k2=F+(K+L)*(H+k1*dt);&lt;br /&gt;
    H=H+(dt/2)*(k1+k2);&lt;br /&gt;
 &lt;br /&gt;
    sol(j+1,:)=[h0 H' hN]; %Salvamos las solución, incluimos los extremos&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
rho1=a:drho:b; %Incluimos los nodos exteriores&lt;br /&gt;
&lt;br /&gt;
[rr,tt]=meshgrid(rho1,t);&lt;br /&gt;
surf(rr,tt,sol); %Dibujamos la solución&lt;br /&gt;
title('Nivel Piezométrico. Método Diferencias finitas con Heun en tiempo.')&lt;br /&gt;
xlabel('Distancia radial al centro del pozo.')&lt;br /&gt;
ylabel('Tiempo.')&lt;br /&gt;
zlabel('Nivel piezométrico.')&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
Mediante este código obtenemos la siguiente gráfica:&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Grafica npiezometrico.jpg|500px|thumb|best|Gráfica Nivel Piezométrico aproximada con el Método de Diferencias Finitas con Heun en tiempo.]]&lt;br /&gt;
&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Ahora dibujaremos la gráfica mediante los métodos de Euler implícito y trapecio y compararemos los resultados obtenidos.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Sobre el programa anterior cambiaremos las líneas correspondientes al método de Heun.&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* Método de Euler implícito:&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;math&amp;gt; \left\{\begin{matrix}&lt;br /&gt;
y_{0}\\&lt;br /&gt;
y_{n+1}=y_{n} + hf(t_{n+1},y_{n+1})\\&lt;br /&gt;
\end{matrix}\right. &amp;lt;/math&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
&lt;br /&gt;
for j=1:length(t)-1 &lt;br /&gt;
    &lt;br /&gt;
    %Método de Euler implícito&lt;br /&gt;
    &lt;br /&gt;
    H=(eye(N-1)-dt*(K+L))\(H+(F*dt)); &lt;br /&gt;
 &lt;br /&gt;
    sol(j+1,:)=[h0 H' hN]; %Salvamos las solución, incluimos los extremos&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
rho1=a:drho:b; %Incluimos los nodos exteriores&lt;br /&gt;
&lt;br /&gt;
[rr,tt]=meshgrid(rho1,t);&lt;br /&gt;
surf(rr,tt,sol); %Dibujamos la solución&lt;br /&gt;
title('Nivel Piezométrico. Método Diferencias finitas con Euler en tiempo.')&lt;br /&gt;
xlabel('Distancia radial al centro del pozo.')&lt;br /&gt;
ylabel('Tiempo.')&lt;br /&gt;
zlabel('Nivel piezométrico.')&lt;br /&gt;
&lt;br /&gt;
}}&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* Método del Trapecio:&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;math&amp;gt; \left\{\begin{matrix}&lt;br /&gt;
y_{0}\\&lt;br /&gt;
y_{n+1}=y_{n} + \frac{h}{2}f((t_{n},y_{n}+f(t_{n+1},y_{n+1}))\\&lt;br /&gt;
\end{matrix}\right. &amp;lt;/math&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
for j=1:length(t)-1 &lt;br /&gt;
    &lt;br /&gt;
    %Método del trapecio&lt;br /&gt;
    k1=F+(K+L)*H;&lt;br /&gt;
    k2=F+(K+L)*(H+k1*dt); &lt;br /&gt;
    H=(eye(N-1)-(dt/2)*(K+L))\(H+dt*F+(dt/2)*(K+L)*H);&lt;br /&gt;
 &lt;br /&gt;
    sol(j+1,:)=[h0 H' hN]; %Salvamos las solución, incluimos los extremos&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
rho1=a:drho:b; %Incluimos los nodos exteriores&lt;br /&gt;
&lt;br /&gt;
[rr,tt]=meshgrid(rho1,t);&lt;br /&gt;
surf(rr,tt,sol); %Dibujamos la solución&lt;br /&gt;
title('Nivel Piezométrico. Método Diferencias finitas con trapecio en tiempo.')&lt;br /&gt;
xlabel('Distancia radial al centro del pozo.')&lt;br /&gt;
ylabel('Tiempo.')&lt;br /&gt;
zlabel('Nivel piezométrico.')&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
Como podemos ver a continuación las tres gráficas resultantes son prácticamente iguales por lo que los tres métodos hacen una aproximación similar.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
[[Archivo:Trapecio12.png|500px|thumb|right|Gráfica Nivel Piezométrico aproximada con el Método de Diferencias Finitas con Trapecio en tiempo.]]&lt;br /&gt;
[[Archivo:Euler12.png|500px|thumb|right|Gráfica Nivel Piezométrico aproximada con el Método de Diferencias Finitas con Euler Implícito en tiempo.]]&lt;br /&gt;
&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== Comportamiento del nivel piezométrico con &amp;lt;math&amp;gt; \rho &amp;lt;/math&amp;gt; constante ====&lt;br /&gt;
&lt;br /&gt;
Ahora supondremos que &amp;lt;math&amp;gt; \rho &amp;lt;/math&amp;gt; es constante y que su valor es 2 y dibujaremos el comportamiento del nivel piezométrico en una gráfica 2D nivel piezométrico-tiempo.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Nuevamente utilizando el programa anterior con el  método de Heun:&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Rho2.png|500px|thumb|best|Gráfica Nivel Piezométrico-tiempo para &amp;lt;math&amp;gt; \rho =2 &amp;lt;/math&amp;gt; para T=10.]]&lt;br /&gt;
[[Archivo:Rho1000.png|500px|thumb|best|Gráfica Nivel Piezométrico-tiempo para &amp;lt;math&amp;gt; \rho =2 &amp;lt;/math&amp;gt; para T=1000.]]&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
&lt;br /&gt;
%PRIMERA FASE. ESPACIO&lt;br /&gt;
&lt;br /&gt;
a=0.5; b=20; %Condiciones de contorno&lt;br /&gt;
drho=0.1; N=(b-a)/drho; %División del intervalo&lt;br /&gt;
&lt;br /&gt;
rho=a+drho:drho:b-drho; %Sólo nodos interiores&lt;br /&gt;
&lt;br /&gt;
%Creamos las matrices&lt;br /&gt;
&lt;br /&gt;
L=diag(ones(1,N-2),1)-diag(ones(1,N-2),-1);&lt;br /&gt;
A=diag(1./rho);&lt;br /&gt;
L=10^(-2)*(1/(2*drho))*A*L;&lt;br /&gt;
&lt;br /&gt;
K=-2*diag(ones(1,N-1))+diag(ones(1,N-2),1)+diag(ones(1,N-2),-1);&lt;br /&gt;
K=10^(-2)*(1/drho^2)*K; &lt;br /&gt;
&lt;br /&gt;
F=zeros(N-1,1);&lt;br /&gt;
F(1,1)=10^(-2)*(-17/(rho(1)*drho)+34/drho^2);&lt;br /&gt;
F(N-1,1)=10^(-2)*(45/(rho(N-1)*2*drho)+45/drho^2);&lt;br /&gt;
&lt;br /&gt;
%SEGUDA FASE. TIEMPO&lt;br /&gt;
&lt;br /&gt;
H=ones(1,length(rho)); H=H*45; H=H';&lt;br /&gt;
dt=drho; &lt;br /&gt;
T=10 &lt;br /&gt;
%Comprobamos también la solución para un tiempo mayor &lt;br /&gt;
%T=1000&lt;br /&gt;
t=0:dt:T;&lt;br /&gt;
h0=34; hN=45;&lt;br /&gt;
sol=[h0 H' hN];&lt;br /&gt;
&lt;br /&gt;
for j=1:length(t)-1 &lt;br /&gt;
    &lt;br /&gt;
    %Método de Heun&lt;br /&gt;
    k1=F+(K+L)*H;&lt;br /&gt;
    k2=F+(K+L)*(H+k1*dt);&lt;br /&gt;
    H=H+(dt/2)*(k1+k2);&lt;br /&gt;
 &lt;br /&gt;
    sol(j+1,:)=[h0 H' hN]; %Salvamos las solución, incluimos los extremos&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
rho1=a:drho:b; %Incluimos los nodos exteriores&lt;br /&gt;
&lt;br /&gt;
m=sol(:,rho==2); %Vector que incluye la solución en tiempo para rho=2&lt;br /&gt;
&lt;br /&gt;
plot(t,m);&lt;br /&gt;
&lt;br /&gt;
title('Comportamiento del nivel piezométrico en el tiempo para p=2')&lt;br /&gt;
xlabel('Tiempo')&lt;br /&gt;
ylabel('Nivel piezométrico.')&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
La primera gráfica muestra que para tiempos pequeños la variación del nivel piezométrico es muy pequeña (del orden de 0,10/0,15 m), aún así como observamos en la segunda gráfica a medida que avanzamos en el tiempo la variación del nivel disminuye aún más ya que la curva está cada vez menos inclinada.&lt;br /&gt;
&lt;br /&gt;
==== Variación del nivel piezométrico en tiempos grandes ====&lt;br /&gt;
Ahora vamos a comprobar que la variación del nivel piezométrico para tiempos elevados (T=5000) es mínima.&lt;br /&gt;
Para ello dibujaremos las soluciones cada 100 horas de en el intervalo temporal [1; 5000], en&lt;br /&gt;
una misma gráfica.&lt;br /&gt;
[[Archivo:Tiemposg2.png|marco|derecha|Nivel piezométrico para tiempos grandes]]&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
%PRIMERA FASE. ESPACIO&lt;br /&gt;
&lt;br /&gt;
a=0.5; b=20; %Condiciones de contorno&lt;br /&gt;
drho=0.1; N=(b-a)/drho; %División del intervalo&lt;br /&gt;
&lt;br /&gt;
rho=a+drho:drho:b-drho; %Sólo nodos interiores&lt;br /&gt;
&lt;br /&gt;
%Creamos las matrices&lt;br /&gt;
&lt;br /&gt;
L=diag(ones(1,N-2),1)-diag(ones(1,N-2),-1);&lt;br /&gt;
A=diag(1./rho);&lt;br /&gt;
L=10^(-2)*(1/(2*drho))*A*L;&lt;br /&gt;
&lt;br /&gt;
K=-2*diag(ones(1,N-1))+diag(ones(1,N-2),1)+diag(ones(1,N-2),-1);&lt;br /&gt;
K=10^(-2)*(1/drho^2)*K; &lt;br /&gt;
&lt;br /&gt;
F=zeros(N-1,1);&lt;br /&gt;
F(1,1)=10^(-2)*(-17/(rho(1)*drho)+34/drho^2);&lt;br /&gt;
F(N-1,1)=10^(-2)*(45/(rho(N-1)*2*drho)+45/drho^2);&lt;br /&gt;
&lt;br /&gt;
%SEGUDA FASE. TIEMPO&lt;br /&gt;
&lt;br /&gt;
H=ones(1,length(rho)); H=H*45; H=H';&lt;br /&gt;
dt=0.1; T=5000; t=0:dt:T;&lt;br /&gt;
h0=34; hN=45;&lt;br /&gt;
sol=[h0 H' hN];&lt;br /&gt;
&lt;br /&gt;
figure(1);&lt;br /&gt;
hold on;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
for j=1:length(t)-1 &lt;br /&gt;
    &lt;br /&gt;
    %Método de Heun&lt;br /&gt;
    k1=F+(K+L)*H;&lt;br /&gt;
    k2=F+(K+L)*(H+k1*dt);&lt;br /&gt;
    H=H+(dt/2)*(k1+k2);&lt;br /&gt;
 &lt;br /&gt;
    sol(j+1,:)=[h0 H' hN]; %Salvamos las solución, incluimos los extremos&lt;br /&gt;
    &lt;br /&gt;
 if rem(t(j),100)==0; &lt;br /&gt;
    &lt;br /&gt;
    rho1=a:drho:b; %Incluimos los nodos exteriores&lt;br /&gt;
  &lt;br /&gt;
  plot(rho1,sol(j,:)) %pintamos la solución cada 100 horas&lt;br /&gt;
  &lt;br /&gt;
  title('Variación del nivel piezométrico para tiempos grandes')&lt;br /&gt;
  pause(1)&lt;br /&gt;
&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
end&lt;br /&gt;
}}&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Como se puede observar en la gráfica según vamos avanzando en el tiempo las curvas están más juntas lo que quiere decir que la variación del nivel es cada vez menor aproximándose a un régimen estacionario.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Trabajo21.jpg|marco|derecha|Nivel piezométrico estacionario]]&lt;br /&gt;
&lt;br /&gt;
====Problema estacionario====&lt;br /&gt;
Como hemos visto en el apartado anterior para tiempos grandes el nivel piezométrico se mantiene practicamente constante a lo largo del tiempo, esto es debido a que se establece un equilibrio entre el caudal de agua extraida del acuifero y la migración de aguas desde los puntos más alejados del pozo hacia este.&lt;br /&gt;
Por lo tanto se verifica que:&lt;br /&gt;
 &amp;lt;math&amp;gt;\frac{\partial h}{\partial t}=0&amp;lt;/math&amp;gt;&lt;br /&gt;
Y por lo tanto el nivel piezométrico se puede aproximar por:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \left\{\begin{matrix}&lt;br /&gt;
- \frac{k}{s} (\frac{1}{\rho}  \frac{\partial h}{\partial \rho} + \frac{\partial^2 h}{\partial \rho^2})= 0 &amp;amp; \rho \epsilon (1, 20) &amp;amp; \theta \epsilon (0, 2\Pi ) &amp;amp; 0 &amp;lt; t &amp;lt; 5000 \\ &lt;br /&gt;
h(1,t) = 35;    h(20, t)= 40 \\ &lt;br /&gt;
h(\rho, 0) = 40 &lt;br /&gt;
\end{matrix}\right. &amp;lt;/math&amp;gt;&lt;br /&gt;
Resolvemos por diferencias finitas:&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
    %datos&lt;br /&gt;
    t=5000;&lt;br /&gt;
    l=20;&lt;br /&gt;
    D=0.01;&lt;br /&gt;
    hp=35;&lt;br /&gt;
    ho=40;&lt;br /&gt;
    %discretización&lt;br /&gt;
    s=0.1;&lt;br /&gt;
    x0=1;&lt;br /&gt;
    x=x0:s:l;&lt;br /&gt;
    xint=x0+s:s:l-s;&lt;br /&gt;
    N=length(x)-2; &lt;br /&gt;
    %construimos las matrices para el método de las diferencias finitas&lt;br /&gt;
    K=(1/s^2)*(diag(2*ones(1,N))-diag(ones(1,N-1),1)-diag(ones(1,N-1),-1));&lt;br /&gt;
    A=(1/(s*2))*(diag(ones(1,N-1),1)-diag(ones(1,N-1),-1));&lt;br /&gt;
    A=diag(1./xint)*A;&lt;br /&gt;
    h0=(40*ones(N,1));&lt;br /&gt;
    dt=200; &lt;br /&gt;
    t=0:dt:t;&lt;br /&gt;
    M=length(t)-1;&lt;br /&gt;
    F=(zeros(N,1));&lt;br /&gt;
    F(1)=D*((hp/s^2)-(hp/(2*s)*1/xint(1)));&lt;br /&gt;
    F(N)=D*((ho/s^2)+ho/(s*2*xint(N)));&lt;br /&gt;
    H(1,:)=[40;h0;40]'; &lt;br /&gt;
    h=h0;&lt;br /&gt;
    for n=1:M&lt;br /&gt;
      h=(D)*(K-A)\((F)); %utilizamos el comando backslash para resolver el sistema de ecuaciones&lt;br /&gt;
      H(n+1,:)=[hp h' ho];&lt;br /&gt;
    end&lt;br /&gt;
    %mallado y representación&lt;br /&gt;
    [X,T]=meshgrid(x,t);&lt;br /&gt;
    surf(X,T,H)&lt;br /&gt;
    xlabel('Distancia (metros)');&lt;br /&gt;
    ylabel('Tiempo (horas)');&lt;br /&gt;
    zlabel('Nivel piezométrico (metros)')&lt;br /&gt;
}}&lt;br /&gt;
Efectivamente, como podemos comprobar en la gráfica, la solución es independiente del tiempo salvo para tiempos pequeños en los cuales no queda muy bien definida&lt;br /&gt;
&lt;br /&gt;
====Capacidad de recuperación del acuífero====&lt;br /&gt;
En este apartado queremos calcular una ley que nos describa el comportamiento del acuífero e el caso de que impermeabilizásemos las paredes del pozo partiendo del estado estacionario anterior, esto significaría que el fujo de agua en los bordes del pozo sería nulo y el nivel piezométrico iría variando hasta llegar a otro estado estacionario.&lt;br /&gt;
El estado estacionarioque tenderá a alcanzar el fluido será el inicial, ya que al impermeabilizar las paredes volvemos al caso del acuífero confinado y por ello es nivel piezométrico quedará constante a lo largo del tiempo y de la extensión del acuífero.&lt;br /&gt;
La condición frontera a imponer será que el flujo de agua en r0 será 0, ya que estará impermeabilizado. Esto lo podemos plasmar diciendo que la parcial del nivel piezométrico con respecto a ro en r0 es 0, ya que un aislamiento impide el flujo de líquido, y si el flujo de líquido es nulo el nivel piezométrico no varía.&lt;br /&gt;
&amp;lt;math&amp;gt;\frac{\partial h}{\partial \rho}=0&amp;lt;/math&amp;gt;&lt;br /&gt;
====Método de Fourier====&lt;br /&gt;
Ahora suponemos que el radio del pozo es despreciable y que una vez extraido el agua el pozo se cierra quedando el acuifero de nuevo homogéneo. En este caso tomaremos la región ρ &amp;lt; 20. Nuestro objetivo es aproximar las soluciones usando el método de Fourier. De nuevo supondremos que la solución sólo depende de ρ y t, y tomaremos ahora como condición frontera h(20, t) = 40.&lt;br /&gt;
Vamos a considerar el sistema de ecuaciones para h(ρ,t)=h(ρ,t)-40:&lt;br /&gt;
 &amp;lt;math&amp;gt; \left\{\begin{matrix}&lt;br /&gt;
\frac{\partial h}{\partial t} - D (\frac{1}{\rho}  \frac{\partial h}{\partial \rho} + \frac{\partial^2 h}{\partial \rho^2})= 0 &amp;amp; \rho \epsilon (0, 20) &amp;amp; \theta \epsilon (0, 2\Pi ) &amp;amp; t &amp;gt; 0 \\ &lt;br /&gt;
\frac{\partial h}{\partial \rho}(0,t) = 0;   h(20, t)= 0 \\ &lt;br /&gt;
\end{matrix}\right. &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Obtenemos el problema de autovalores asociado al sistema anterior con el método de separación de variables:&lt;br /&gt;
 &amp;lt;math&amp;gt; \left\{\begin{matrix}&lt;br /&gt;
D (\frac{X'(\rho)}{\rho} + X''(\rho))+ λX(\rho)=0 \\&lt;br /&gt;
X'(0) = 0;   X(20)= 0 \\ &lt;br /&gt;
&lt;br /&gt;
\end{matrix}\right. &amp;lt;/math&amp;gt;&lt;br /&gt;
[[Archivo:Marta1.jpg|marco|derecha]]&lt;br /&gt;
Sabemos que los problemas de esta forma tienen como solución la función de Bessel de primera especie que forma una familia de autofunciones: &amp;lt;math&amp;gt;Ψ(\rho)=J_0·(\rho\sqrt{λ})&amp;lt;/math&amp;gt;. Estas se anulan cuando &amp;lt;math&amp;gt;(\rho\sqrt{λ})&amp;lt;/math&amp;gt; se iguala a 2.4048, 5.5201, 8.6537, 11.7915 y 14.9309, siendo estos los 5 primeros ceros de la función de Bessel. De esta manera y tomando ρ=20 obtenemos los 5 primeros autovalores:&lt;br /&gt;
&amp;lt;math&amp;gt;(20\sqrt{λ})=2.4048&amp;lt;/math&amp;gt;Haciendo la operación anterior para los 5 ceros obtenemos los siguientes autovalores: 0.0145, 0.0762, 0.1872, 0.3476, 0.5573.&lt;br /&gt;
Ahora vamos a dibujar las 5 primeras autofunciones utilizando la función besselj:&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
a1=0.0145;&lt;br /&gt;
a2=0.0762;&lt;br /&gt;
a3=0.1872;&lt;br /&gt;
a4=0.3476;&lt;br /&gt;
a5=0.5575;&lt;br /&gt;
r=0:0.02:20;&lt;br /&gt;
F1=besselj(0,r.*(sqrt(a1))); &lt;br /&gt;
F2=besselj(0,r.*(sqrt(a2)));&lt;br /&gt;
F3=besselj(0,r.*(sqrt(a3)));&lt;br /&gt;
F4=besselj(0,r.*(sqrt(a4)));&lt;br /&gt;
F5=besselj(0,r.*(sqrt(a5)));&lt;br /&gt;
hold on&lt;br /&gt;
plot(r,F1)&lt;br /&gt;
plot(r,F2,'r')&lt;br /&gt;
plot(r,F3,'g')	&lt;br /&gt;
plot(r,F4,'c')&lt;br /&gt;
plot(r,F5,'y')&lt;br /&gt;
hold off&lt;br /&gt;
}}&lt;br /&gt;
[[Archivo:Marta2.jpg|marco|derecha]]&lt;br /&gt;
Aproximamos ahora la solución de la ecuación tomando como dato inicial es&amp;lt;math&amp;gt; h (\rho,0)= -log \frac{|\rho + 0.01|}{20.01} &amp;lt;/math&amp;gt; y usando 5 términos del desarrollo de Fourier, teniendo en cuenta que las autofunciones son ortogonales respecto al producto escalar: &amp;lt;math&amp;gt; (f(\rho),g(\rho)) = \int_{0}^{20} \rho f(\rho) g(\rho) \cdot dx &amp;lt;/math&amp;gt;&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
x0=0; L=20;&lt;br /&gt;
c0=[2.4048,5.5201,8.6537,11.7915,14.9309]; %Vector de ceros de la función de Bessel&lt;br /&gt;
A=(c0./20).^2; %Vector de autovalores&lt;br /&gt;
K=5; %Número de términos del desarrollo de Fourier&lt;br /&gt;
x=x0:0.1:L;&lt;br /&gt;
N=length(x)-1;&lt;br /&gt;
J=zeros(N+1,K);&lt;br /&gt;
z=zeros(N+1,K);&lt;br /&gt;
t0=0; tf=500;&lt;br /&gt;
t=t0:0.1:tf;&lt;br /&gt;
[xx,tt]=meshgrid(x,t);&lt;br /&gt;
h=0;&lt;br /&gt;
for k=1:K&lt;br /&gt;
   z(:,k)=(x)'*sqrt(A(k));&lt;br /&gt;
   J(:,k)=besselj(0,z(:,k));&lt;br /&gt;
   h0=-log((abs(x+0.1))/20.01); %Condición inicial&lt;br /&gt;
   c(k)=trapz(x,x'.*h0'.*J(:,k))/trapz(x,x'.*J(:,k).*J(:,k)); %Coeficientes de Fourier&lt;br /&gt;
   h=h+c(k)*exp(-A(k)*t)'*J(:,k)';&lt;br /&gt;
end&lt;br /&gt;
surf(xx,tt,h)&lt;br /&gt;
title('Aproximación de la solución')&lt;br /&gt;
}}&lt;/div&gt;</summary>
		<author><name>Marta Cavero</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Nivel_piezom%C3%A9trico_de_un_acu%C3%ADfero_confinado_(A5)&amp;diff=30091</id>
		<title>Nivel piezométrico de un acuífero confinado (A5)</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Nivel_piezom%C3%A9trico_de_un_acu%C3%ADfero_confinado_(A5)&amp;diff=30091"/>
				<updated>2015-05-14T15:16:25Z</updated>
		
		<summary type="html">&lt;p&gt;Marta Cavero: /* Resolución por método de diferencias finitas */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;br /&gt;
==== Introducción ====&lt;br /&gt;
&lt;br /&gt;
Consideramos un acuífero confinado entre dos capas de terreno impermeables horizontales. Llamaremos h(x, y) al nivel piezométrico del acuífero, definido por la altura que alcanzaría el agua si hiciéramos un sondeo en el punto (x, y). Obviamente este valor depende de la presión a la que se encuentra el agua confinada en el acuífero. Supondremos&lt;br /&gt;
que el acuífero es un medio poroso saturado de agua que ocupa una región infinita y está en equilibrio de manera que &amp;lt;math&amp;gt;h(x, y) = h_0&amp;lt;/math&amp;gt; constante para todo (x, y) ∈ &amp;lt;math&amp;gt;IR^{2}&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Sobre el acuifero se construye un pozo de sección circular y radio&amp;lt;math&amp;gt; ρ_0&amp;lt;/math&amp;gt; para extraer agua. La presencia del pozo hace que el nivel piezométrico cambie. Dada la simetría del problema podemos suponer que h(x, y) sólo va a depender de la distancia al pozo. Si tomamos coordenadas cilíndricas de forma que el eje OZ coincida con el eje de simetría del pozo, entonces h = h(ρ) donde &amp;lt;math&amp;gt;ρ = \sqrt{x^{2} + y^{2}}&amp;lt;/math&amp;gt; . Trabajaremos por tanto en coordenadas polares en el plano (ρ, θ).&lt;br /&gt;
&lt;br /&gt;
Las ecuaciones que permiten conocer h(ρ) son la ecuación de conservación de la masa:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; S = \frac{∂h}{∂t} + div q = 0 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
junto con la ley de Darcy&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; q = −K∇h &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
que es una ley experimental que modela el flujo de agua en un medio poroso. La ley de Darcy establece que el flujo de agua q a través de un medio poroso es proporcional a la diferencia de presión, que a su vez se puede escribir en términos del gradiente del nivel piezométrico en cada punto. La constante K se deduce experimentalmente para cada material y se conoce como la conductividad hidráulica o permeabilidad. Cuanto mayor es la constante K mayor es el flujo de agua provocado por un cambio&lt;br /&gt;
de presión. La ley de Darcy proporciona una buena aproximación del comportamiento del agua en un medio poroso siempre que este sea homogéneo e isótropo.&lt;br /&gt;
&lt;br /&gt;
La constante S en la ley de conservación de la masa se conoce como almacenamiento específico y se interpreta como la cantidad de agua que libera el acuífero al descender el nivel piezométrico en una unidad, por unidad de volumen.&lt;br /&gt;
&lt;br /&gt;
Combinando las ecuaciones de conservación de la masa con la ley de Darcy, obtenemos la ecuación:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \frac{∂h}{∂t} - D∆h = 0, ρ &amp;gt; ρ_0, θ ∈ (0, 2π), t &amp;gt; 0, (1) &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
donde D = K/S es la difusividad hidráulica que supondremos constante.&lt;br /&gt;
&lt;br /&gt;
==== Deducción de la fórmula ====&lt;br /&gt;
&lt;br /&gt;
En este apartado buscamos demostrar la ecuación (1) como combinación de la ecuación de conservación de masas y la Ley de Darcy.&lt;br /&gt;
&lt;br /&gt;
Por un lado sabemos que el laplaciaco equivale a la divergencia del gradiente: &lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; &lt;br /&gt;
(\Delta f = \nabla \cdot \nabla f = div \left (\nabla f) \right) &lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Por otro lado, sabemos que en coordenadas polares: &lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;x = ρ cos \theta \\&lt;br /&gt;
             y = ρ  sen \theta&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\bar{g_ρ } = cos \theta \bar{i} + sin \theta  \bar{j} \\&lt;br /&gt;
              \bar{g_\theta } = - ρ  sin \theta \bar{i} + ρ cos \theta \bar{j} &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;&lt;br /&gt;
G =&lt;br /&gt;
\left(&lt;br /&gt;
\begin{array}{cc}&lt;br /&gt;
1&amp;amp; 0 \\&lt;br /&gt;
0 &amp;amp; ρ ^{2} \\&lt;br /&gt;
\end{array}&lt;br /&gt;
\right);&lt;br /&gt;
\text {donde la raiz del determinante es} \sqrt{g} = ρ&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Como indica el enunciado, al sustituir la Ley de Darcy en la ecuación de conservación de la masa obtenemos y dividir entre S, teniendo en cuenta que el divergente del gradiente es el laplaciano como hemos indicado al principio de este apartado, obtenemos la ecuación (1): &amp;lt;math&amp;gt; \frac{∂h}{∂t} - \frac{k}{S}∆h = 0 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
En esta ecuación queda por desarrollar el Laplaciano de h. &lt;br /&gt;
Partiremos de la función h(ρ,θ), de la cual calcularemos primero el gradiente:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \nabla h = \frac{\partial h}{\partial \rho}\hat{\rho} + \frac{\partial h}{\partial \rho}\hat{\theta} =  \frac{\partial h}{\partial \rho}\bar{\rho} + \frac{1}{\rho^{2}} \frac{\partial h}{\partial \rho}\bar{\theta}  &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
teniendo en cuenta que &amp;lt;math&amp;gt;\bar{g^{i} } = \frac{\bar{g_i } }{ | \bar{g_i } | ^{2} } &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Ahora hacemos el divergente del gradiente anterior y obtenemos el Laplaciano en coordenadas polares:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;math&amp;gt;&lt;br /&gt;
 \Delta h = div(∇h) &lt;br /&gt;
= {1 \over \rho} {\partial \over \partial \rho}&lt;br /&gt;
  \left( \rho {\partial h \over \partial \rho} \right) &lt;br /&gt;
+ {1 \over \rho^2} {\partial^2 h \over \partial \theta^2}&lt;br /&gt;
= {1 \over \rho} {\partial h \over \partial \rho} &lt;br /&gt;
+ {\partial^2 h \over \partial \rho^2}&lt;br /&gt;
+ {1 \over \rho^2} {\partial^2 h \over \partial \theta^2}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Si consideramos que, debido a la simetría del problema, h sólo depende de su distancia al pozo, entonces obtenemos la función radial h(ρ), que nos permite simplificar el Laplaciano del modo siguiente:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;math&amp;gt;&lt;br /&gt;
 \Delta h = div(∇h) &lt;br /&gt;
= {1 \over \rho} {\partial h \over \partial \rho} &lt;br /&gt;
+ {\partial^2 h \over \partial \rho^2}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== Obtención de la ecuación====&lt;br /&gt;
&lt;br /&gt;
Para poder resolver la ecuación anterior y que el resultado sea único, hemos de establecer condiciones iniciales y de contorno.&lt;br /&gt;
&lt;br /&gt;
Las condiciones de contorno serán dos pues aparece la derivada segunda de la posición: &amp;lt;math&amp;gt; h(\rho_0 , t) = h_p \\&lt;br /&gt;
                                                                                                                                                                  h(20,t) = h_0 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
La condición inicial será única pues sólo aparece una derivada de primer orden en tiempo en nuestra ecuación: &amp;lt;math&amp;gt; h(\rho,0) = h_0 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
De este modo la ecuación resultante será:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \left\{\begin{matrix}&lt;br /&gt;
\frac{\partial h}{\partial t} - \frac{k}{s} (\frac{1}{\rho}  \frac{\partial h}{\partial \rho} + \frac{\partial^2 h}{\partial \rho^2})= 0 &amp;amp; \rho \epsilon (\rho_{0}, 2c) &amp;amp; \theta \epsilon (0, 2\Pi ) &amp;amp; t &amp;gt; 0 \\ &lt;br /&gt;
h(\rho_{0},t) = h_{p};   h(20, t)= h_{0} \\ &lt;br /&gt;
h(\rho, 0) = h_{0} &lt;br /&gt;
\end{matrix}\right. &amp;lt;/math&amp;gt; &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==== Resolución por método de diferencias finitas ====&lt;br /&gt;
&lt;br /&gt;
Suponiendo &amp;lt;math&amp;gt;ρ_0 =0.5m&amp;lt;/math&amp;gt;, &amp;lt;math&amp;gt;h_0 =45m&amp;lt;/math&amp;gt;, &amp;lt;math&amp;gt;hp =34&amp;lt;/math&amp;gt;, D=10−2, &amp;lt;math&amp;gt;(ρ,0)=h_0&amp;lt;/math&amp;gt;; y tomando  ∆ρ = 0.1 y ∆t = ∆ρ. Vamos a resolver la ecuación anterior por el método de diferencias finitas, usando el Método de Heun para realizar la aproximación en tiempo.&lt;br /&gt;
&lt;br /&gt;
Primero, sustituyendo los datos anteriores en la ecuación, llegamos a:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \left\{\begin{matrix}&lt;br /&gt;
\frac{\partial h}{\partial t} - 10^{2} (\frac{1}{\rho}  \frac{\partial h}{\partial \rho} + \frac{\partial^2 h}{\partial \rho^2})= 0 &amp;amp; \rho \epsilon (0.5, 20) &amp;amp; \theta \epsilon (0, 2\Pi ) &amp;amp; t &amp;gt; 0 \\ &lt;br /&gt;
h(0.5,t) = 34;   h(20, t)= 45 \\ &lt;br /&gt;
h(\rho, 0) = 45&lt;br /&gt;
\end{matrix}\right. &amp;lt;/math&amp;gt; &lt;br /&gt;
&lt;br /&gt;
Aplicando el método de las diferencias finitas llegamos al siguiente código:&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
&lt;br /&gt;
%TRPRIMERA FASE. ESPACIO&lt;br /&gt;
&lt;br /&gt;
a=0.5; b=20; %Condiciones de contorno&lt;br /&gt;
drho=0.1; N=(b-a)/drho; %División del intervalo&lt;br /&gt;
&lt;br /&gt;
rho=a+drho:drho:b-drho; %Sólo nodos interiores&lt;br /&gt;
&lt;br /&gt;
%Creamos las matrices&lt;br /&gt;
&lt;br /&gt;
L=diag(ones(1,N-2),1)-diag(ones(1,N-2),-1);&lt;br /&gt;
A=diag(1./rho);&lt;br /&gt;
L=10^(-2)*(1/(2*drho))*A*L;&lt;br /&gt;
&lt;br /&gt;
K=-2*diag(ones(1,N-1))+diag(ones(1,N-2),1)+diag(ones(1,N-2),-1);&lt;br /&gt;
K=10^(-2)*(1/drho^2)*K; &lt;br /&gt;
&lt;br /&gt;
F=zeros(N-1,1);&lt;br /&gt;
F(1,1)=10^(-2)*(-17/(rho(1)*drho)+34/drho^2);&lt;br /&gt;
F(N-1,1)=10^(-2)*(45/(rho(N-1)*2*drho)+45/drho^2);&lt;br /&gt;
&lt;br /&gt;
%SEGUDA FASE. TIEMPO&lt;br /&gt;
&lt;br /&gt;
H=ones(1,length(rho)); H=H*45; H=H';&lt;br /&gt;
dt=drho; T=10; t=0:dt:T;&lt;br /&gt;
h0=34; hN=45;&lt;br /&gt;
sol=[h0 H' hN];&lt;br /&gt;
&lt;br /&gt;
for j=1:length(t)-1 &lt;br /&gt;
    &lt;br /&gt;
    %Método de Heun&lt;br /&gt;
    k1=F+(K+L)*H;&lt;br /&gt;
    k2=F+(K+L)*(H+k1*dt);&lt;br /&gt;
    H=H+(dt/2)*(k1+k2);&lt;br /&gt;
 &lt;br /&gt;
    sol(j+1,:)=[h0 H' hN]; %Salvamos las solución, incluimos los extremos&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
rho1=a:drho:b; %Incluimos los nodos exteriores&lt;br /&gt;
&lt;br /&gt;
[rr,tt]=meshgrid(rho1,t);&lt;br /&gt;
surf(rr,tt,sol); %Dibujamos la solución&lt;br /&gt;
title('Nivel Piezométrico. Método Diferencias finitas con Heun en tiempo.')&lt;br /&gt;
xlabel('Distancia radial al centro del pozo.')&lt;br /&gt;
ylabel('Tiempo.')&lt;br /&gt;
zlabel('Nivel piezométrico.')&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
Mediante este código obtenemos la siguiente gráfica:&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Grafica npiezometrico.jpg|500px|thumb|best|Gráfica Nivel Piezométrico aproximada con el Método de Diferencias Finitas con Heun en tiempo.]]&lt;br /&gt;
&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Ahora dibujaremos la gráfica mediante los métodos de Euler implícito y trapecio y compararemos los resultados obtenidos.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Sobre el programa anterior cambiaremos las líneas correspondientes al método de Heun.&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* Método de Euler implícito:&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;math&amp;gt; \left\{\begin{matrix}&lt;br /&gt;
y_{0}\\&lt;br /&gt;
y_{n+1}=y_{n} + hf(t_{n+1},y_{n+1})\\&lt;br /&gt;
\end{matrix}\right. &amp;lt;/math&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
&lt;br /&gt;
for j=1:length(t)-1 &lt;br /&gt;
    &lt;br /&gt;
    %Método de Euler implícito&lt;br /&gt;
    &lt;br /&gt;
    H=(eye(N-1)-dt*(K+L))\(H+(F*dt)); &lt;br /&gt;
 &lt;br /&gt;
    sol(j+1,:)=[h0 H' hN]; %Salvamos las solución, incluimos los extremos&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
rho1=a:drho:b; %Incluimos los nodos exteriores&lt;br /&gt;
&lt;br /&gt;
[rr,tt]=meshgrid(rho1,t);&lt;br /&gt;
surf(rr,tt,sol); %Dibujamos la solución&lt;br /&gt;
title('Nivel Piezométrico. Método Diferencias finitas con Euler en tiempo.')&lt;br /&gt;
xlabel('Distancia radial al centro del pozo.')&lt;br /&gt;
ylabel('Tiempo.')&lt;br /&gt;
zlabel('Nivel piezométrico.')&lt;br /&gt;
&lt;br /&gt;
}}&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* Método del Trapecio:&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;math&amp;gt; \left\{\begin{matrix}&lt;br /&gt;
y_{0}\\&lt;br /&gt;
y_{n+1}=y_{n} + \frac{h}{2}f((t_{n},y_{n}+f(t_{n+1},y_{n+1}))\\&lt;br /&gt;
\end{matrix}\right. &amp;lt;/math&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
for j=1:length(t)-1 &lt;br /&gt;
    &lt;br /&gt;
    %Método del trapecio&lt;br /&gt;
    k1=F+(K+L)*H;&lt;br /&gt;
    k2=F+(K+L)*(H+k1*dt); &lt;br /&gt;
    H=(eye(N-1)-(dt/2)*(K+L))\(H+dt*F+(dt/2)*(K+L)*H);&lt;br /&gt;
 &lt;br /&gt;
    sol(j+1,:)=[h0 H' hN]; %Salvamos las solución, incluimos los extremos&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
rho1=a:drho:b; %Incluimos los nodos exteriores&lt;br /&gt;
&lt;br /&gt;
[rr,tt]=meshgrid(rho1,t);&lt;br /&gt;
surf(rr,tt,sol); %Dibujamos la solución&lt;br /&gt;
title('Nivel Piezométrico. Método Diferencias finitas con trapecio en tiempo.')&lt;br /&gt;
xlabel('Distancia radial al centro del pozo.')&lt;br /&gt;
ylabel('Tiempo.')&lt;br /&gt;
zlabel('Nivel piezométrico.')&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
Como podemos ver a continuación las tres gráficas resultantes son prácticamente iguales por lo que los tres métodos hacen una aproximación similar.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
[[Archivo:Trapecio12.png|500px|thumb|right|Gráfica Nivel Piezométrico aproximada con el Método de Diferencias Finitas con Trapecio en tiempo.]]&lt;br /&gt;
[[Archivo:Euler12.png|500px|thumb|left|Gráfica Nivel Piezométrico aproximada con el Método de Diferencias Finitas con Euler Implícito en tiempo.]]&lt;br /&gt;
&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== Comportamiento del nivel piezométrico con &amp;lt;math&amp;gt; \rho &amp;lt;/math&amp;gt; constante ====&lt;br /&gt;
&lt;br /&gt;
Ahora supondremos que &amp;lt;math&amp;gt; \rho &amp;lt;/math&amp;gt; es constante y que su valor es 2 y dibujaremos el comportamiento del nivel piezométrico en una gráfica 2D nivel piezométrico-tiempo.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Nuevamente utilizando el programa anterior con el  método de Heun:&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Rho2.png|500px|thumb|best|Gráfica Nivel Piezométrico-tiempo para &amp;lt;math&amp;gt; \rho =2 &amp;lt;/math&amp;gt; para T=10.]]&lt;br /&gt;
[[Archivo:Rho1000.png|500px|thumb|best|Gráfica Nivel Piezométrico-tiempo para &amp;lt;math&amp;gt; \rho =2 &amp;lt;/math&amp;gt; para T=1000.]]&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
&lt;br /&gt;
%PRIMERA FASE. ESPACIO&lt;br /&gt;
&lt;br /&gt;
a=0.5; b=20; %Condiciones de contorno&lt;br /&gt;
drho=0.1; N=(b-a)/drho; %División del intervalo&lt;br /&gt;
&lt;br /&gt;
rho=a+drho:drho:b-drho; %Sólo nodos interiores&lt;br /&gt;
&lt;br /&gt;
%Creamos las matrices&lt;br /&gt;
&lt;br /&gt;
L=diag(ones(1,N-2),1)-diag(ones(1,N-2),-1);&lt;br /&gt;
A=diag(1./rho);&lt;br /&gt;
L=10^(-2)*(1/(2*drho))*A*L;&lt;br /&gt;
&lt;br /&gt;
K=-2*diag(ones(1,N-1))+diag(ones(1,N-2),1)+diag(ones(1,N-2),-1);&lt;br /&gt;
K=10^(-2)*(1/drho^2)*K; &lt;br /&gt;
&lt;br /&gt;
F=zeros(N-1,1);&lt;br /&gt;
F(1,1)=10^(-2)*(-17/(rho(1)*drho)+34/drho^2);&lt;br /&gt;
F(N-1,1)=10^(-2)*(45/(rho(N-1)*2*drho)+45/drho^2);&lt;br /&gt;
&lt;br /&gt;
%SEGUDA FASE. TIEMPO&lt;br /&gt;
&lt;br /&gt;
H=ones(1,length(rho)); H=H*45; H=H';&lt;br /&gt;
dt=drho; &lt;br /&gt;
T=10 &lt;br /&gt;
%Comprobamos también la solución para un tiempo mayor &lt;br /&gt;
%T=1000&lt;br /&gt;
t=0:dt:T;&lt;br /&gt;
h0=34; hN=45;&lt;br /&gt;
sol=[h0 H' hN];&lt;br /&gt;
&lt;br /&gt;
for j=1:length(t)-1 &lt;br /&gt;
    &lt;br /&gt;
    %Método de Heun&lt;br /&gt;
    k1=F+(K+L)*H;&lt;br /&gt;
    k2=F+(K+L)*(H+k1*dt);&lt;br /&gt;
    H=H+(dt/2)*(k1+k2);&lt;br /&gt;
 &lt;br /&gt;
    sol(j+1,:)=[h0 H' hN]; %Salvamos las solución, incluimos los extremos&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
rho1=a:drho:b; %Incluimos los nodos exteriores&lt;br /&gt;
&lt;br /&gt;
m=sol(:,rho==2); %Vector que incluye la solución en tiempo para rho=2&lt;br /&gt;
&lt;br /&gt;
plot(t,m);&lt;br /&gt;
&lt;br /&gt;
title('Comportamiento del nivel piezométrico en el tiempo para p=2')&lt;br /&gt;
xlabel('Tiempo')&lt;br /&gt;
ylabel('Nivel piezométrico.')&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
La primera gráfica muestra que para tiempos pequeños la variación del nivel piezométrico es muy pequeña (del orden de 0,10/0,15 m), aún así como observamos en la segunda gráfica a medida que avanzamos en el tiempo la variación del nivel disminuye aún más ya que la curva está cada vez menos inclinada.&lt;br /&gt;
&lt;br /&gt;
==== Variación del nivel piezométrico en tiempos grandes ====&lt;br /&gt;
Ahora vamos a comprobar que la variación del nivel piezométrico para tiempos elevados (T=5000) es mínima.&lt;br /&gt;
Para ello dibujaremos las soluciones cada 100 horas de en el intervalo temporal [1; 5000], en&lt;br /&gt;
una misma gráfica.&lt;br /&gt;
[[Archivo:Tiemposg2.png|marco|derecha|Nivel piezométrico para tiempos grandes]]&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
%PRIMERA FASE. ESPACIO&lt;br /&gt;
&lt;br /&gt;
a=0.5; b=20; %Condiciones de contorno&lt;br /&gt;
drho=0.1; N=(b-a)/drho; %División del intervalo&lt;br /&gt;
&lt;br /&gt;
rho=a+drho:drho:b-drho; %Sólo nodos interiores&lt;br /&gt;
&lt;br /&gt;
%Creamos las matrices&lt;br /&gt;
&lt;br /&gt;
L=diag(ones(1,N-2),1)-diag(ones(1,N-2),-1);&lt;br /&gt;
A=diag(1./rho);&lt;br /&gt;
L=10^(-2)*(1/(2*drho))*A*L;&lt;br /&gt;
&lt;br /&gt;
K=-2*diag(ones(1,N-1))+diag(ones(1,N-2),1)+diag(ones(1,N-2),-1);&lt;br /&gt;
K=10^(-2)*(1/drho^2)*K; &lt;br /&gt;
&lt;br /&gt;
F=zeros(N-1,1);&lt;br /&gt;
F(1,1)=10^(-2)*(-17/(rho(1)*drho)+34/drho^2);&lt;br /&gt;
F(N-1,1)=10^(-2)*(45/(rho(N-1)*2*drho)+45/drho^2);&lt;br /&gt;
&lt;br /&gt;
%SEGUDA FASE. TIEMPO&lt;br /&gt;
&lt;br /&gt;
H=ones(1,length(rho)); H=H*45; H=H';&lt;br /&gt;
dt=0.1; T=5000; t=0:dt:T;&lt;br /&gt;
h0=34; hN=45;&lt;br /&gt;
sol=[h0 H' hN];&lt;br /&gt;
&lt;br /&gt;
figure(1);&lt;br /&gt;
hold on;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
for j=1:length(t)-1 &lt;br /&gt;
    &lt;br /&gt;
    %Método de Heun&lt;br /&gt;
    k1=F+(K+L)*H;&lt;br /&gt;
    k2=F+(K+L)*(H+k1*dt);&lt;br /&gt;
    H=H+(dt/2)*(k1+k2);&lt;br /&gt;
 &lt;br /&gt;
    sol(j+1,:)=[h0 H' hN]; %Salvamos las solución, incluimos los extremos&lt;br /&gt;
    &lt;br /&gt;
 if rem(t(j),100)==0; &lt;br /&gt;
    &lt;br /&gt;
    rho1=a:drho:b; %Incluimos los nodos exteriores&lt;br /&gt;
  &lt;br /&gt;
  plot(rho1,sol(j,:)) %pintamos la solución cada 100 horas&lt;br /&gt;
  &lt;br /&gt;
  title('Variación del nivel piezométrico para tiempos grandes')&lt;br /&gt;
  pause(1)&lt;br /&gt;
&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
end&lt;br /&gt;
}}&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Como se puede observar en la gráfica según vamos avanzando en el tiempo las curvas están más juntas lo que quiere decir que la variación del nivel es cada vez menor aproximándose a un régimen estacionario.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Trabajo21.jpg|marco|derecha|Nivel piezométrico estacionario]]&lt;br /&gt;
&lt;br /&gt;
====Problema estacionario====&lt;br /&gt;
Como hemos visto en el apartado anterior para tiempos grandes el nivel piezométrico se mantiene practicamente constante a lo largo del tiempo, esto es debido a que se establece un equilibrio entre el caudal de agua extraida del acuifero y la migración de aguas desde los puntos más alejados del pozo hacia este.&lt;br /&gt;
Por lo tanto se verifica que:&lt;br /&gt;
 &amp;lt;math&amp;gt;\frac{\partial h}{\partial t}=0&amp;lt;/math&amp;gt;&lt;br /&gt;
Y por lo tanto el nivel piezométrico se puede aproximar por:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \left\{\begin{matrix}&lt;br /&gt;
- \frac{k}{s} (\frac{1}{\rho}  \frac{\partial h}{\partial \rho} + \frac{\partial^2 h}{\partial \rho^2})= 0 &amp;amp; \rho \epsilon (1, 20) &amp;amp; \theta \epsilon (0, 2\Pi ) &amp;amp; 0 &amp;lt; t &amp;lt; 5000 \\ &lt;br /&gt;
h(1,t) = 35;    h(20, t)= 40 \\ &lt;br /&gt;
h(\rho, 0) = 40 &lt;br /&gt;
\end{matrix}\right. &amp;lt;/math&amp;gt;&lt;br /&gt;
Resolvemos por diferencias finitas:&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
    %datos&lt;br /&gt;
    t=5000;&lt;br /&gt;
    l=20;&lt;br /&gt;
    D=0.01;&lt;br /&gt;
    hp=35;&lt;br /&gt;
    ho=40;&lt;br /&gt;
    %discretización&lt;br /&gt;
    s=0.1;&lt;br /&gt;
    x0=1;&lt;br /&gt;
    x=x0:s:l;&lt;br /&gt;
    xint=x0+s:s:l-s;&lt;br /&gt;
    N=length(x)-2; &lt;br /&gt;
    %construimos las matrices para el método de las diferencias finitas&lt;br /&gt;
    K=(1/s^2)*(diag(2*ones(1,N))-diag(ones(1,N-1),1)-diag(ones(1,N-1),-1));&lt;br /&gt;
    A=(1/(s*2))*(diag(ones(1,N-1),1)-diag(ones(1,N-1),-1));&lt;br /&gt;
    A=diag(1./xint)*A;&lt;br /&gt;
    h0=(40*ones(N,1));&lt;br /&gt;
    dt=200; &lt;br /&gt;
    t=0:dt:t;&lt;br /&gt;
    M=length(t)-1;&lt;br /&gt;
    F=(zeros(N,1));&lt;br /&gt;
    F(1)=D*((hp/s^2)-(hp/(2*s)*1/xint(1)));&lt;br /&gt;
    F(N)=D*((ho/s^2)+ho/(s*2*xint(N)));&lt;br /&gt;
    H(1,:)=[40;h0;40]'; &lt;br /&gt;
    h=h0;&lt;br /&gt;
    for n=1:M&lt;br /&gt;
      h=(D)*(K-A)\((F)); %utilizamos el comando backslash para resolver el sistema de ecuaciones&lt;br /&gt;
      H(n+1,:)=[hp h' ho];&lt;br /&gt;
    end&lt;br /&gt;
    %mallado y representación&lt;br /&gt;
    [X,T]=meshgrid(x,t);&lt;br /&gt;
    surf(X,T,H)&lt;br /&gt;
    xlabel('Distancia (metros)');&lt;br /&gt;
    ylabel('Tiempo (horas)');&lt;br /&gt;
    zlabel('Nivel piezométrico (metros)')&lt;br /&gt;
}}&lt;br /&gt;
Efectivamente, como podemos comprobar en la gráfica, la solución es independiente del tiempo salvo para tiempos pequeños en los cuales no queda muy bien definida&lt;br /&gt;
&lt;br /&gt;
====Capacidad de recuperación del acuífero====&lt;br /&gt;
En este apartado queremos calcular una ley que nos describa el comportamiento del acuífero e el caso de que impermeabilizásemos las paredes del pozo partiendo del estado estacionario anterior, esto significaría que el fujo de agua en los bordes del pozo sería nulo y el nivel piezométrico iría variando hasta llegar a otro estado estacionario.&lt;br /&gt;
El estado estacionarioque tenderá a alcanzar el fluido será el inicial, ya que al impermeabilizar las paredes volvemos al caso del acuífero confinado y por ello es nivel piezométrico quedará constante a lo largo del tiempo y de la extensión del acuífero.&lt;br /&gt;
La condición frontera a imponer será que el flujo de agua en r0 será 0, ya que estará impermeabilizado. Esto lo podemos plasmar diciendo que la parcial del nivel piezométrico con respecto a ro en r0 es 0, ya que un aislamiento impide el flujo de líquido, y si el flujo de líquido es nulo el nivel piezométrico no varía.&lt;br /&gt;
&amp;lt;math&amp;gt;\frac{\partial h}{\partial \rho}=0&amp;lt;/math&amp;gt;&lt;br /&gt;
====Método de Fourier====&lt;br /&gt;
Ahora suponemos que el radio del pozo es despreciable y que una vez extraido el agua el pozo se cierra quedando el acuifero de nuevo homogéneo. En este caso tomaremos la región ρ &amp;lt; 20. Nuestro objetivo es aproximar las soluciones usando el método de Fourier. De nuevo supondremos que la solución sólo depende de ρ y t, y tomaremos ahora como condición frontera h(20, t) = 40.&lt;br /&gt;
Vamos a considerar el sistema de ecuaciones para h(ρ,t)=h(ρ,t)-40:&lt;br /&gt;
 &amp;lt;math&amp;gt; \left\{\begin{matrix}&lt;br /&gt;
\frac{\partial h}{\partial t} - D (\frac{1}{\rho}  \frac{\partial h}{\partial \rho} + \frac{\partial^2 h}{\partial \rho^2})= 0 &amp;amp; \rho \epsilon (0, 20) &amp;amp; \theta \epsilon (0, 2\Pi ) &amp;amp; t &amp;gt; 0 \\ &lt;br /&gt;
\frac{\partial h}{\partial \rho}(0,t) = 0;   h(20, t)= 0 \\ &lt;br /&gt;
\end{matrix}\right. &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Obtenemos el problema de autovalores asociado al sistema anterior con el método de separación de variables:&lt;br /&gt;
 &amp;lt;math&amp;gt; \left\{\begin{matrix}&lt;br /&gt;
D (\frac{X'(\rho)}{\rho} + X''(\rho))+ λX(\rho)=0 \\&lt;br /&gt;
X'(0) = 0;   X(20)= 0 \\ &lt;br /&gt;
&lt;br /&gt;
\end{matrix}\right. &amp;lt;/math&amp;gt;&lt;br /&gt;
[[Archivo:Marta1.jpg|marco|derecha]]&lt;br /&gt;
Sabemos que los problemas de esta forma tienen como solución la función de Bessel de primera especie que forma una familia de autofunciones: &amp;lt;math&amp;gt;Ψ(\rho)=J_0·(\rho\sqrt{λ})&amp;lt;/math&amp;gt;. Estas se anulan cuando &amp;lt;math&amp;gt;(\rho\sqrt{λ})&amp;lt;/math&amp;gt; se iguala a 2.4048, 5.5201, 8.6537, 11.7915 y 14.9309, siendo estos los 5 primeros ceros de la función de Bessel. De esta manera y tomando ρ=20 obtenemos los 5 primeros autovalores:&lt;br /&gt;
&amp;lt;math&amp;gt;(20\sqrt{λ})=2.4048&amp;lt;/math&amp;gt;Haciendo la operación anterior para los 5 ceros obtenemos los siguientes autovalores: 0.0145, 0.0762, 0.1872, 0.3476, 0.5573.&lt;br /&gt;
Ahora vamos a dibujar las 5 primeras autofunciones utilizando la función besselj:&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
a1=0.0145;&lt;br /&gt;
a2=0.0762;&lt;br /&gt;
a3=0.1872;&lt;br /&gt;
a4=0.3476;&lt;br /&gt;
a5=0.5575;&lt;br /&gt;
r=0:0.02:20;&lt;br /&gt;
F1=besselj(0,r.*(sqrt(a1))); &lt;br /&gt;
F2=besselj(0,r.*(sqrt(a2)));&lt;br /&gt;
F3=besselj(0,r.*(sqrt(a3)));&lt;br /&gt;
F4=besselj(0,r.*(sqrt(a4)));&lt;br /&gt;
F5=besselj(0,r.*(sqrt(a5)));&lt;br /&gt;
hold on&lt;br /&gt;
plot(r,F1)&lt;br /&gt;
plot(r,F2,'r')&lt;br /&gt;
plot(r,F3,'g')	&lt;br /&gt;
plot(r,F4,'c')&lt;br /&gt;
plot(r,F5,'y')&lt;br /&gt;
hold off&lt;br /&gt;
}}&lt;br /&gt;
[[Archivo:Marta2.jpg|marco|derecha]]&lt;br /&gt;
Aproximamos ahora la solución de la ecuación tomando como dato inicial es&amp;lt;math&amp;gt; h (\rho,0)= -log \frac{|\rho + 0.01|}{20.01} &amp;lt;/math&amp;gt; y usando 5 términos del desarrollo de Fourier, teniendo en cuenta que las autofunciones son ortogonales respecto al producto escalar: &amp;lt;math&amp;gt; (f(\rho),g(\rho)) = \int_{0}^{20} \rho f(\rho) g(\rho) \cdot dx &amp;lt;/math&amp;gt;&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
x0=0; L=20;&lt;br /&gt;
c0=[2.4048,5.5201,8.6537,11.7915,14.9309]; %Vector de ceros de la función de Bessel&lt;br /&gt;
A=(c0./20).^2; %Vector de autovalores&lt;br /&gt;
K=5; %Número de términos del desarrollo de Fourier&lt;br /&gt;
x=x0:0.1:L;&lt;br /&gt;
N=length(x)-1;&lt;br /&gt;
J=zeros(N+1,K);&lt;br /&gt;
z=zeros(N+1,K);&lt;br /&gt;
t0=0; tf=500;&lt;br /&gt;
t=t0:0.1:tf;&lt;br /&gt;
[xx,tt]=meshgrid(x,t);&lt;br /&gt;
h=0;&lt;br /&gt;
for k=1:K&lt;br /&gt;
   z(:,k)=(x)'*sqrt(A(k));&lt;br /&gt;
   J(:,k)=besselj(0,z(:,k));&lt;br /&gt;
   h0=-log((abs(x+0.1))/20.01); %Condición inicial&lt;br /&gt;
   c(k)=trapz(x,x'.*h0'.*J(:,k))/trapz(x,x'.*J(:,k).*J(:,k)); %Coeficientes de Fourier&lt;br /&gt;
   h=h+c(k)*exp(-A(k)*t)'*J(:,k)';&lt;br /&gt;
end&lt;br /&gt;
surf(xx,tt,h)&lt;br /&gt;
title('Aproximación de la solución')&lt;br /&gt;
}}&lt;/div&gt;</summary>
		<author><name>Marta Cavero</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Nivel_piezom%C3%A9trico_de_un_acu%C3%ADfero_confinado_(A5)&amp;diff=30088</id>
		<title>Nivel piezométrico de un acuífero confinado (A5)</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Nivel_piezom%C3%A9trico_de_un_acu%C3%ADfero_confinado_(A5)&amp;diff=30088"/>
				<updated>2015-05-14T15:15:33Z</updated>
		
		<summary type="html">&lt;p&gt;Marta Cavero: /* Resolución por método de diferencias finitas */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;br /&gt;
==== Introducción ====&lt;br /&gt;
&lt;br /&gt;
Consideramos un acuífero confinado entre dos capas de terreno impermeables horizontales. Llamaremos h(x, y) al nivel piezométrico del acuífero, definido por la altura que alcanzaría el agua si hiciéramos un sondeo en el punto (x, y). Obviamente este valor depende de la presión a la que se encuentra el agua confinada en el acuífero. Supondremos&lt;br /&gt;
que el acuífero es un medio poroso saturado de agua que ocupa una región infinita y está en equilibrio de manera que &amp;lt;math&amp;gt;h(x, y) = h_0&amp;lt;/math&amp;gt; constante para todo (x, y) ∈ &amp;lt;math&amp;gt;IR^{2}&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Sobre el acuifero se construye un pozo de sección circular y radio&amp;lt;math&amp;gt; ρ_0&amp;lt;/math&amp;gt; para extraer agua. La presencia del pozo hace que el nivel piezométrico cambie. Dada la simetría del problema podemos suponer que h(x, y) sólo va a depender de la distancia al pozo. Si tomamos coordenadas cilíndricas de forma que el eje OZ coincida con el eje de simetría del pozo, entonces h = h(ρ) donde &amp;lt;math&amp;gt;ρ = \sqrt{x^{2} + y^{2}}&amp;lt;/math&amp;gt; . Trabajaremos por tanto en coordenadas polares en el plano (ρ, θ).&lt;br /&gt;
&lt;br /&gt;
Las ecuaciones que permiten conocer h(ρ) son la ecuación de conservación de la masa:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; S = \frac{∂h}{∂t} + div q = 0 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
junto con la ley de Darcy&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; q = −K∇h &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
que es una ley experimental que modela el flujo de agua en un medio poroso. La ley de Darcy establece que el flujo de agua q a través de un medio poroso es proporcional a la diferencia de presión, que a su vez se puede escribir en términos del gradiente del nivel piezométrico en cada punto. La constante K se deduce experimentalmente para cada material y se conoce como la conductividad hidráulica o permeabilidad. Cuanto mayor es la constante K mayor es el flujo de agua provocado por un cambio&lt;br /&gt;
de presión. La ley de Darcy proporciona una buena aproximación del comportamiento del agua en un medio poroso siempre que este sea homogéneo e isótropo.&lt;br /&gt;
&lt;br /&gt;
La constante S en la ley de conservación de la masa se conoce como almacenamiento específico y se interpreta como la cantidad de agua que libera el acuífero al descender el nivel piezométrico en una unidad, por unidad de volumen.&lt;br /&gt;
&lt;br /&gt;
Combinando las ecuaciones de conservación de la masa con la ley de Darcy, obtenemos la ecuación:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \frac{∂h}{∂t} - D∆h = 0, ρ &amp;gt; ρ_0, θ ∈ (0, 2π), t &amp;gt; 0, (1) &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
donde D = K/S es la difusividad hidráulica que supondremos constante.&lt;br /&gt;
&lt;br /&gt;
==== Deducción de la fórmula ====&lt;br /&gt;
&lt;br /&gt;
En este apartado buscamos demostrar la ecuación (1) como combinación de la ecuación de conservación de masas y la Ley de Darcy.&lt;br /&gt;
&lt;br /&gt;
Por un lado sabemos que el laplaciaco equivale a la divergencia del gradiente: &lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; &lt;br /&gt;
(\Delta f = \nabla \cdot \nabla f = div \left (\nabla f) \right) &lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Por otro lado, sabemos que en coordenadas polares: &lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;x = ρ cos \theta \\&lt;br /&gt;
             y = ρ  sen \theta&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\bar{g_ρ } = cos \theta \bar{i} + sin \theta  \bar{j} \\&lt;br /&gt;
              \bar{g_\theta } = - ρ  sin \theta \bar{i} + ρ cos \theta \bar{j} &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;&lt;br /&gt;
G =&lt;br /&gt;
\left(&lt;br /&gt;
\begin{array}{cc}&lt;br /&gt;
1&amp;amp; 0 \\&lt;br /&gt;
0 &amp;amp; ρ ^{2} \\&lt;br /&gt;
\end{array}&lt;br /&gt;
\right);&lt;br /&gt;
\text {donde la raiz del determinante es} \sqrt{g} = ρ&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Como indica el enunciado, al sustituir la Ley de Darcy en la ecuación de conservación de la masa obtenemos y dividir entre S, teniendo en cuenta que el divergente del gradiente es el laplaciano como hemos indicado al principio de este apartado, obtenemos la ecuación (1): &amp;lt;math&amp;gt; \frac{∂h}{∂t} - \frac{k}{S}∆h = 0 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
En esta ecuación queda por desarrollar el Laplaciano de h. &lt;br /&gt;
Partiremos de la función h(ρ,θ), de la cual calcularemos primero el gradiente:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \nabla h = \frac{\partial h}{\partial \rho}\hat{\rho} + \frac{\partial h}{\partial \rho}\hat{\theta} =  \frac{\partial h}{\partial \rho}\bar{\rho} + \frac{1}{\rho^{2}} \frac{\partial h}{\partial \rho}\bar{\theta}  &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
teniendo en cuenta que &amp;lt;math&amp;gt;\bar{g^{i} } = \frac{\bar{g_i } }{ | \bar{g_i } | ^{2} } &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Ahora hacemos el divergente del gradiente anterior y obtenemos el Laplaciano en coordenadas polares:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;math&amp;gt;&lt;br /&gt;
 \Delta h = div(∇h) &lt;br /&gt;
= {1 \over \rho} {\partial \over \partial \rho}&lt;br /&gt;
  \left( \rho {\partial h \over \partial \rho} \right) &lt;br /&gt;
+ {1 \over \rho^2} {\partial^2 h \over \partial \theta^2}&lt;br /&gt;
= {1 \over \rho} {\partial h \over \partial \rho} &lt;br /&gt;
+ {\partial^2 h \over \partial \rho^2}&lt;br /&gt;
+ {1 \over \rho^2} {\partial^2 h \over \partial \theta^2}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Si consideramos que, debido a la simetría del problema, h sólo depende de su distancia al pozo, entonces obtenemos la función radial h(ρ), que nos permite simplificar el Laplaciano del modo siguiente:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;math&amp;gt;&lt;br /&gt;
 \Delta h = div(∇h) &lt;br /&gt;
= {1 \over \rho} {\partial h \over \partial \rho} &lt;br /&gt;
+ {\partial^2 h \over \partial \rho^2}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== Obtención de la ecuación====&lt;br /&gt;
&lt;br /&gt;
Para poder resolver la ecuación anterior y que el resultado sea único, hemos de establecer condiciones iniciales y de contorno.&lt;br /&gt;
&lt;br /&gt;
Las condiciones de contorno serán dos pues aparece la derivada segunda de la posición: &amp;lt;math&amp;gt; h(\rho_0 , t) = h_p \\&lt;br /&gt;
                                                                                                                                                                  h(20,t) = h_0 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
La condición inicial será única pues sólo aparece una derivada de primer orden en tiempo en nuestra ecuación: &amp;lt;math&amp;gt; h(\rho,0) = h_0 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
De este modo la ecuación resultante será:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \left\{\begin{matrix}&lt;br /&gt;
\frac{\partial h}{\partial t} - \frac{k}{s} (\frac{1}{\rho}  \frac{\partial h}{\partial \rho} + \frac{\partial^2 h}{\partial \rho^2})= 0 &amp;amp; \rho \epsilon (\rho_{0}, 2c) &amp;amp; \theta \epsilon (0, 2\Pi ) &amp;amp; t &amp;gt; 0 \\ &lt;br /&gt;
h(\rho_{0},t) = h_{p};   h(20, t)= h_{0} \\ &lt;br /&gt;
h(\rho, 0) = h_{0} &lt;br /&gt;
\end{matrix}\right. &amp;lt;/math&amp;gt; &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==== Resolución por método de diferencias finitas ====&lt;br /&gt;
&lt;br /&gt;
Suponiendo &amp;lt;math&amp;gt;ρ_0 =0.5m&amp;lt;/math&amp;gt;, &amp;lt;math&amp;gt;h_0 =45m&amp;lt;/math&amp;gt;, &amp;lt;math&amp;gt;hp =34&amp;lt;/math&amp;gt;, D=10−2, &amp;lt;math&amp;gt;(ρ,0)=h_0&amp;lt;/math&amp;gt;; y tomando  ∆ρ = 0.1 y ∆t = ∆ρ. Vamos a resolver la ecuación anterior por el método de diferencias finitas, usando el Método de Heun para realizar la aproximación en tiempo.&lt;br /&gt;
&lt;br /&gt;
Primero, sustituyendo los datos anteriores en la ecuación, llegamos a:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \left\{\begin{matrix}&lt;br /&gt;
\frac{\partial h}{\partial t} - 10^{2} (\frac{1}{\rho}  \frac{\partial h}{\partial \rho} + \frac{\partial^2 h}{\partial \rho^2})= 0 &amp;amp; \rho \epsilon (0.5, 20) &amp;amp; \theta \epsilon (0, 2\Pi ) &amp;amp; t &amp;gt; 0 \\ &lt;br /&gt;
h(0.5,t) = 34;   h(20, t)= 45 \\ &lt;br /&gt;
h(\rho, 0) = 45&lt;br /&gt;
\end{matrix}\right. &amp;lt;/math&amp;gt; &lt;br /&gt;
&lt;br /&gt;
Aplicando el método de las diferencias finitas llegamos al siguiente código:&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
&lt;br /&gt;
%TRPRIMERA FASE. ESPACIO&lt;br /&gt;
&lt;br /&gt;
a=0.5; b=20; %Condiciones de contorno&lt;br /&gt;
drho=0.1; N=(b-a)/drho; %División del intervalo&lt;br /&gt;
&lt;br /&gt;
rho=a+drho:drho:b-drho; %Sólo nodos interiores&lt;br /&gt;
&lt;br /&gt;
%Creamos las matrices&lt;br /&gt;
&lt;br /&gt;
L=diag(ones(1,N-2),1)-diag(ones(1,N-2),-1);&lt;br /&gt;
A=diag(1./rho);&lt;br /&gt;
L=10^(-2)*(1/(2*drho))*A*L;&lt;br /&gt;
&lt;br /&gt;
K=-2*diag(ones(1,N-1))+diag(ones(1,N-2),1)+diag(ones(1,N-2),-1);&lt;br /&gt;
K=10^(-2)*(1/drho^2)*K; &lt;br /&gt;
&lt;br /&gt;
F=zeros(N-1,1);&lt;br /&gt;
F(1,1)=10^(-2)*(-17/(rho(1)*drho)+34/drho^2);&lt;br /&gt;
F(N-1,1)=10^(-2)*(45/(rho(N-1)*2*drho)+45/drho^2);&lt;br /&gt;
&lt;br /&gt;
%SEGUDA FASE. TIEMPO&lt;br /&gt;
&lt;br /&gt;
H=ones(1,length(rho)); H=H*45; H=H';&lt;br /&gt;
dt=drho; T=10; t=0:dt:T;&lt;br /&gt;
h0=34; hN=45;&lt;br /&gt;
sol=[h0 H' hN];&lt;br /&gt;
&lt;br /&gt;
for j=1:length(t)-1 &lt;br /&gt;
    &lt;br /&gt;
    %Método de Heun&lt;br /&gt;
    k1=F+(K+L)*H;&lt;br /&gt;
    k2=F+(K+L)*(H+k1*dt);&lt;br /&gt;
    H=H+(dt/2)*(k1+k2);&lt;br /&gt;
 &lt;br /&gt;
    sol(j+1,:)=[h0 H' hN]; %Salvamos las solución, incluimos los extremos&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
rho1=a:drho:b; %Incluimos los nodos exteriores&lt;br /&gt;
&lt;br /&gt;
[rr,tt]=meshgrid(rho1,t);&lt;br /&gt;
surf(rr,tt,sol); %Dibujamos la solución&lt;br /&gt;
title('Nivel Piezométrico. Método Diferencias finitas con Heun en tiempo.')&lt;br /&gt;
xlabel('Distancia radial al centro del pozo.')&lt;br /&gt;
ylabel('Tiempo.')&lt;br /&gt;
zlabel('Nivel piezométrico.')&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
Mediante este código obtenemos la siguiente gráfica:&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Grafica npiezometrico.jpg|500px|thumb|best|Gráfica Nivel Piezométrico aproximada con el Método de Diferencias Finitas con Heun en tiempo.]]&lt;br /&gt;
&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Ahora dibujaremos la gráfica mediante los métodos de Euler implícito y trapecio y compararemos los resultados obtenidos.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Sobre el programa anterior cambiaremos las líneas correspondientes al método de Heun.&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* Método de Euler implícito:&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;math&amp;gt; \left\{\begin{matrix}&lt;br /&gt;
y_{0}\\&lt;br /&gt;
y_{n+1}=y_{n} + hf(t_{n+1},y_{n+1})\\&lt;br /&gt;
\end{matrix}\right. &amp;lt;/math&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
&lt;br /&gt;
for j=1:length(t)-1 &lt;br /&gt;
    &lt;br /&gt;
    %Método de Euler implícito&lt;br /&gt;
    &lt;br /&gt;
    H=(eye(N-1)-dt*(K+L))\(H+(F*dt)); &lt;br /&gt;
 &lt;br /&gt;
    sol(j+1,:)=[h0 H' hN]; %Salvamos las solución, incluimos los extremos&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
rho1=a:drho:b; %Incluimos los nodos exteriores&lt;br /&gt;
&lt;br /&gt;
[rr,tt]=meshgrid(rho1,t);&lt;br /&gt;
surf(rr,tt,sol); %Dibujamos la solución&lt;br /&gt;
title('Nivel Piezométrico. Método Diferencias finitas con Euler en tiempo.')&lt;br /&gt;
xlabel('Distancia radial al centro del pozo.')&lt;br /&gt;
ylabel('Tiempo.')&lt;br /&gt;
zlabel('Nivel piezométrico.')&lt;br /&gt;
&lt;br /&gt;
}}&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* Método del Trapecio:&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;math&amp;gt; \left\{\begin{matrix}&lt;br /&gt;
y_{0}\\&lt;br /&gt;
y_{n+1}=y_{n} + \frac{h}{2}f((t_{n},y_{n}+f(t_{n+1},y_{n+1}))\\&lt;br /&gt;
\end{matrix}\right. &amp;lt;/math&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
for j=1:length(t)-1 &lt;br /&gt;
    &lt;br /&gt;
    %Método del trapecio&lt;br /&gt;
    k1=F+(K+L)*H;&lt;br /&gt;
    k2=F+(K+L)*(H+k1*dt); &lt;br /&gt;
    H=(eye(N-1)-(dt/2)*(K+L))\(H+dt*F+(dt/2)*(K+L)*H);&lt;br /&gt;
 &lt;br /&gt;
    sol(j+1,:)=[h0 H' hN]; %Salvamos las solución, incluimos los extremos&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
rho1=a:drho:b; %Incluimos los nodos exteriores&lt;br /&gt;
&lt;br /&gt;
[rr,tt]=meshgrid(rho1,t);&lt;br /&gt;
surf(rr,tt,sol); %Dibujamos la solución&lt;br /&gt;
title('Nivel Piezométrico. Método Diferencias finitas con trapecio en tiempo.')&lt;br /&gt;
xlabel('Distancia radial al centro del pozo.')&lt;br /&gt;
ylabel('Tiempo.')&lt;br /&gt;
zlabel('Nivel piezométrico.')&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
Como podemos ver a continuación las tres gráficas resultantes son prácticamente iguales por lo que los tres métodos hacen una aproximación similar.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
[[Archivo:Trapecio12.png|500px|thumb|right|Gráfica Nivel Piezométrico aproximada con el Método de Diferencias Finitas con Trapecio en tiempo.]]&lt;br /&gt;
[[Archivo:Euler12.png|500px|thumb|right|Gráfica Nivel Piezométrico aproximada con el Método de Diferencias Finitas con Euler Implícito en tiempo.]]&lt;br /&gt;
&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== Comportamiento del nivel piezométrico con &amp;lt;math&amp;gt; \rho &amp;lt;/math&amp;gt; constante ====&lt;br /&gt;
&lt;br /&gt;
Ahora supondremos que &amp;lt;math&amp;gt; \rho &amp;lt;/math&amp;gt; es constante y que su valor es 2 y dibujaremos el comportamiento del nivel piezométrico en una gráfica 2D nivel piezométrico-tiempo.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Nuevamente utilizando el programa anterior con el  método de Heun:&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Rho2.png|500px|thumb|best|Gráfica Nivel Piezométrico-tiempo para &amp;lt;math&amp;gt; \rho =2 &amp;lt;/math&amp;gt; para T=10.]]&lt;br /&gt;
[[Archivo:Rho1000.png|500px|thumb|best|Gráfica Nivel Piezométrico-tiempo para &amp;lt;math&amp;gt; \rho =2 &amp;lt;/math&amp;gt; para T=1000.]]&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
&lt;br /&gt;
%PRIMERA FASE. ESPACIO&lt;br /&gt;
&lt;br /&gt;
a=0.5; b=20; %Condiciones de contorno&lt;br /&gt;
drho=0.1; N=(b-a)/drho; %División del intervalo&lt;br /&gt;
&lt;br /&gt;
rho=a+drho:drho:b-drho; %Sólo nodos interiores&lt;br /&gt;
&lt;br /&gt;
%Creamos las matrices&lt;br /&gt;
&lt;br /&gt;
L=diag(ones(1,N-2),1)-diag(ones(1,N-2),-1);&lt;br /&gt;
A=diag(1./rho);&lt;br /&gt;
L=10^(-2)*(1/(2*drho))*A*L;&lt;br /&gt;
&lt;br /&gt;
K=-2*diag(ones(1,N-1))+diag(ones(1,N-2),1)+diag(ones(1,N-2),-1);&lt;br /&gt;
K=10^(-2)*(1/drho^2)*K; &lt;br /&gt;
&lt;br /&gt;
F=zeros(N-1,1);&lt;br /&gt;
F(1,1)=10^(-2)*(-17/(rho(1)*drho)+34/drho^2);&lt;br /&gt;
F(N-1,1)=10^(-2)*(45/(rho(N-1)*2*drho)+45/drho^2);&lt;br /&gt;
&lt;br /&gt;
%SEGUDA FASE. TIEMPO&lt;br /&gt;
&lt;br /&gt;
H=ones(1,length(rho)); H=H*45; H=H';&lt;br /&gt;
dt=drho; &lt;br /&gt;
T=10 &lt;br /&gt;
%Comprobamos también la solución para un tiempo mayor &lt;br /&gt;
%T=1000&lt;br /&gt;
t=0:dt:T;&lt;br /&gt;
h0=34; hN=45;&lt;br /&gt;
sol=[h0 H' hN];&lt;br /&gt;
&lt;br /&gt;
for j=1:length(t)-1 &lt;br /&gt;
    &lt;br /&gt;
    %Método de Heun&lt;br /&gt;
    k1=F+(K+L)*H;&lt;br /&gt;
    k2=F+(K+L)*(H+k1*dt);&lt;br /&gt;
    H=H+(dt/2)*(k1+k2);&lt;br /&gt;
 &lt;br /&gt;
    sol(j+1,:)=[h0 H' hN]; %Salvamos las solución, incluimos los extremos&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
rho1=a:drho:b; %Incluimos los nodos exteriores&lt;br /&gt;
&lt;br /&gt;
m=sol(:,rho==2); %Vector que incluye la solución en tiempo para rho=2&lt;br /&gt;
&lt;br /&gt;
plot(t,m);&lt;br /&gt;
&lt;br /&gt;
title('Comportamiento del nivel piezométrico en el tiempo para p=2')&lt;br /&gt;
xlabel('Tiempo')&lt;br /&gt;
ylabel('Nivel piezométrico.')&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
La primera gráfica muestra que para tiempos pequeños la variación del nivel piezométrico es muy pequeña (del orden de 0,10/0,15 m), aún así como observamos en la segunda gráfica a medida que avanzamos en el tiempo la variación del nivel disminuye aún más ya que la curva está cada vez menos inclinada.&lt;br /&gt;
&lt;br /&gt;
==== Variación del nivel piezométrico en tiempos grandes ====&lt;br /&gt;
Ahora vamos a comprobar que la variación del nivel piezométrico para tiempos elevados (T=5000) es mínima.&lt;br /&gt;
Para ello dibujaremos las soluciones cada 100 horas de en el intervalo temporal [1; 5000], en&lt;br /&gt;
una misma gráfica.&lt;br /&gt;
[[Archivo:Tiemposg2.png|marco|derecha|Nivel piezométrico para tiempos grandes]]&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
%PRIMERA FASE. ESPACIO&lt;br /&gt;
&lt;br /&gt;
a=0.5; b=20; %Condiciones de contorno&lt;br /&gt;
drho=0.1; N=(b-a)/drho; %División del intervalo&lt;br /&gt;
&lt;br /&gt;
rho=a+drho:drho:b-drho; %Sólo nodos interiores&lt;br /&gt;
&lt;br /&gt;
%Creamos las matrices&lt;br /&gt;
&lt;br /&gt;
L=diag(ones(1,N-2),1)-diag(ones(1,N-2),-1);&lt;br /&gt;
A=diag(1./rho);&lt;br /&gt;
L=10^(-2)*(1/(2*drho))*A*L;&lt;br /&gt;
&lt;br /&gt;
K=-2*diag(ones(1,N-1))+diag(ones(1,N-2),1)+diag(ones(1,N-2),-1);&lt;br /&gt;
K=10^(-2)*(1/drho^2)*K; &lt;br /&gt;
&lt;br /&gt;
F=zeros(N-1,1);&lt;br /&gt;
F(1,1)=10^(-2)*(-17/(rho(1)*drho)+34/drho^2);&lt;br /&gt;
F(N-1,1)=10^(-2)*(45/(rho(N-1)*2*drho)+45/drho^2);&lt;br /&gt;
&lt;br /&gt;
%SEGUDA FASE. TIEMPO&lt;br /&gt;
&lt;br /&gt;
H=ones(1,length(rho)); H=H*45; H=H';&lt;br /&gt;
dt=0.1; T=5000; t=0:dt:T;&lt;br /&gt;
h0=34; hN=45;&lt;br /&gt;
sol=[h0 H' hN];&lt;br /&gt;
&lt;br /&gt;
figure(1);&lt;br /&gt;
hold on;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
for j=1:length(t)-1 &lt;br /&gt;
    &lt;br /&gt;
    %Método de Heun&lt;br /&gt;
    k1=F+(K+L)*H;&lt;br /&gt;
    k2=F+(K+L)*(H+k1*dt);&lt;br /&gt;
    H=H+(dt/2)*(k1+k2);&lt;br /&gt;
 &lt;br /&gt;
    sol(j+1,:)=[h0 H' hN]; %Salvamos las solución, incluimos los extremos&lt;br /&gt;
    &lt;br /&gt;
 if rem(t(j),100)==0; &lt;br /&gt;
    &lt;br /&gt;
    rho1=a:drho:b; %Incluimos los nodos exteriores&lt;br /&gt;
  &lt;br /&gt;
  plot(rho1,sol(j,:)) %pintamos la solución cada 100 horas&lt;br /&gt;
  &lt;br /&gt;
  title('Variación del nivel piezométrico para tiempos grandes')&lt;br /&gt;
  pause(1)&lt;br /&gt;
&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
end&lt;br /&gt;
}}&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Como se puede observar en la gráfica según vamos avanzando en el tiempo las curvas están más juntas lo que quiere decir que la variación del nivel es cada vez menor aproximándose a un régimen estacionario.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Trabajo21.jpg|marco|derecha|Nivel piezométrico estacionario]]&lt;br /&gt;
&lt;br /&gt;
====Problema estacionario====&lt;br /&gt;
Como hemos visto en el apartado anterior para tiempos grandes el nivel piezométrico se mantiene practicamente constante a lo largo del tiempo, esto es debido a que se establece un equilibrio entre el caudal de agua extraida del acuifero y la migración de aguas desde los puntos más alejados del pozo hacia este.&lt;br /&gt;
Por lo tanto se verifica que:&lt;br /&gt;
 &amp;lt;math&amp;gt;\frac{\partial h}{\partial t}=0&amp;lt;/math&amp;gt;&lt;br /&gt;
Y por lo tanto el nivel piezométrico se puede aproximar por:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \left\{\begin{matrix}&lt;br /&gt;
- \frac{k}{s} (\frac{1}{\rho}  \frac{\partial h}{\partial \rho} + \frac{\partial^2 h}{\partial \rho^2})= 0 &amp;amp; \rho \epsilon (1, 20) &amp;amp; \theta \epsilon (0, 2\Pi ) &amp;amp; 0 &amp;lt; t &amp;lt; 5000 \\ &lt;br /&gt;
h(1,t) = 35;    h(20, t)= 40 \\ &lt;br /&gt;
h(\rho, 0) = 40 &lt;br /&gt;
\end{matrix}\right. &amp;lt;/math&amp;gt;&lt;br /&gt;
Resolvemos por diferencias finitas:&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
    %datos&lt;br /&gt;
    t=5000;&lt;br /&gt;
    l=20;&lt;br /&gt;
    D=0.01;&lt;br /&gt;
    hp=35;&lt;br /&gt;
    ho=40;&lt;br /&gt;
    %discretización&lt;br /&gt;
    s=0.1;&lt;br /&gt;
    x0=1;&lt;br /&gt;
    x=x0:s:l;&lt;br /&gt;
    xint=x0+s:s:l-s;&lt;br /&gt;
    N=length(x)-2; &lt;br /&gt;
    %construimos las matrices para el método de las diferencias finitas&lt;br /&gt;
    K=(1/s^2)*(diag(2*ones(1,N))-diag(ones(1,N-1),1)-diag(ones(1,N-1),-1));&lt;br /&gt;
    A=(1/(s*2))*(diag(ones(1,N-1),1)-diag(ones(1,N-1),-1));&lt;br /&gt;
    A=diag(1./xint)*A;&lt;br /&gt;
    h0=(40*ones(N,1));&lt;br /&gt;
    dt=200; &lt;br /&gt;
    t=0:dt:t;&lt;br /&gt;
    M=length(t)-1;&lt;br /&gt;
    F=(zeros(N,1));&lt;br /&gt;
    F(1)=D*((hp/s^2)-(hp/(2*s)*1/xint(1)));&lt;br /&gt;
    F(N)=D*((ho/s^2)+ho/(s*2*xint(N)));&lt;br /&gt;
    H(1,:)=[40;h0;40]'; &lt;br /&gt;
    h=h0;&lt;br /&gt;
    for n=1:M&lt;br /&gt;
      h=(D)*(K-A)\((F)); %utilizamos el comando backslash para resolver el sistema de ecuaciones&lt;br /&gt;
      H(n+1,:)=[hp h' ho];&lt;br /&gt;
    end&lt;br /&gt;
    %mallado y representación&lt;br /&gt;
    [X,T]=meshgrid(x,t);&lt;br /&gt;
    surf(X,T,H)&lt;br /&gt;
    xlabel('Distancia (metros)');&lt;br /&gt;
    ylabel('Tiempo (horas)');&lt;br /&gt;
    zlabel('Nivel piezométrico (metros)')&lt;br /&gt;
}}&lt;br /&gt;
Efectivamente, como podemos comprobar en la gráfica, la solución es independiente del tiempo salvo para tiempos pequeños en los cuales no queda muy bien definida&lt;br /&gt;
&lt;br /&gt;
====Capacidad de recuperación del acuífero====&lt;br /&gt;
En este apartado queremos calcular una ley que nos describa el comportamiento del acuífero e el caso de que impermeabilizásemos las paredes del pozo partiendo del estado estacionario anterior, esto significaría que el fujo de agua en los bordes del pozo sería nulo y el nivel piezométrico iría variando hasta llegar a otro estado estacionario.&lt;br /&gt;
El estado estacionarioque tenderá a alcanzar el fluido será el inicial, ya que al impermeabilizar las paredes volvemos al caso del acuífero confinado y por ello es nivel piezométrico quedará constante a lo largo del tiempo y de la extensión del acuífero.&lt;br /&gt;
La condición frontera a imponer será que el flujo de agua en r0 será 0, ya que estará impermeabilizado. Esto lo podemos plasmar diciendo que la parcial del nivel piezométrico con respecto a ro en r0 es 0, ya que un aislamiento impide el flujo de líquido, y si el flujo de líquido es nulo el nivel piezométrico no varía.&lt;br /&gt;
&amp;lt;math&amp;gt;\frac{\partial h}{\partial \rho}=0&amp;lt;/math&amp;gt;&lt;br /&gt;
====Método de Fourier====&lt;br /&gt;
Ahora suponemos que el radio del pozo es despreciable y que una vez extraido el agua el pozo se cierra quedando el acuifero de nuevo homogéneo. En este caso tomaremos la región ρ &amp;lt; 20. Nuestro objetivo es aproximar las soluciones usando el método de Fourier. De nuevo supondremos que la solución sólo depende de ρ y t, y tomaremos ahora como condición frontera h(20, t) = 40.&lt;br /&gt;
Vamos a considerar el sistema de ecuaciones para h(ρ,t)=h(ρ,t)-40:&lt;br /&gt;
 &amp;lt;math&amp;gt; \left\{\begin{matrix}&lt;br /&gt;
\frac{\partial h}{\partial t} - D (\frac{1}{\rho}  \frac{\partial h}{\partial \rho} + \frac{\partial^2 h}{\partial \rho^2})= 0 &amp;amp; \rho \epsilon (0, 20) &amp;amp; \theta \epsilon (0, 2\Pi ) &amp;amp; t &amp;gt; 0 \\ &lt;br /&gt;
\frac{\partial h}{\partial \rho}(0,t) = 0;   h(20, t)= 0 \\ &lt;br /&gt;
\end{matrix}\right. &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Obtenemos el problema de autovalores asociado al sistema anterior con el método de separación de variables:&lt;br /&gt;
 &amp;lt;math&amp;gt; \left\{\begin{matrix}&lt;br /&gt;
D (\frac{X'(\rho)}{\rho} + X''(\rho))+ λX(\rho)=0 \\&lt;br /&gt;
X'(0) = 0;   X(20)= 0 \\ &lt;br /&gt;
&lt;br /&gt;
\end{matrix}\right. &amp;lt;/math&amp;gt;&lt;br /&gt;
[[Archivo:Marta1.jpg|marco|derecha]]&lt;br /&gt;
Sabemos que los problemas de esta forma tienen como solución la función de Bessel de primera especie que forma una familia de autofunciones: &amp;lt;math&amp;gt;Ψ(\rho)=J_0·(\rho\sqrt{λ})&amp;lt;/math&amp;gt;. Estas se anulan cuando &amp;lt;math&amp;gt;(\rho\sqrt{λ})&amp;lt;/math&amp;gt; se iguala a 2.4048, 5.5201, 8.6537, 11.7915 y 14.9309, siendo estos los 5 primeros ceros de la función de Bessel. De esta manera y tomando ρ=20 obtenemos los 5 primeros autovalores:&lt;br /&gt;
&amp;lt;math&amp;gt;(20\sqrt{λ})=2.4048&amp;lt;/math&amp;gt;Haciendo la operación anterior para los 5 ceros obtenemos los siguientes autovalores: 0.0145, 0.0762, 0.1872, 0.3476, 0.5573.&lt;br /&gt;
Ahora vamos a dibujar las 5 primeras autofunciones utilizando la función besselj:&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
a1=0.0145;&lt;br /&gt;
a2=0.0762;&lt;br /&gt;
a3=0.1872;&lt;br /&gt;
a4=0.3476;&lt;br /&gt;
a5=0.5575;&lt;br /&gt;
r=0:0.02:20;&lt;br /&gt;
F1=besselj(0,r.*(sqrt(a1))); &lt;br /&gt;
F2=besselj(0,r.*(sqrt(a2)));&lt;br /&gt;
F3=besselj(0,r.*(sqrt(a3)));&lt;br /&gt;
F4=besselj(0,r.*(sqrt(a4)));&lt;br /&gt;
F5=besselj(0,r.*(sqrt(a5)));&lt;br /&gt;
hold on&lt;br /&gt;
plot(r,F1)&lt;br /&gt;
plot(r,F2,'r')&lt;br /&gt;
plot(r,F3,'g')	&lt;br /&gt;
plot(r,F4,'c')&lt;br /&gt;
plot(r,F5,'y')&lt;br /&gt;
hold off&lt;br /&gt;
}}&lt;br /&gt;
[[Archivo:Marta2.jpg|marco|derecha]]&lt;br /&gt;
Aproximamos ahora la solución de la ecuación tomando como dato inicial es&amp;lt;math&amp;gt; h (\rho,0)= -log \frac{|\rho + 0.01|}{20.01} &amp;lt;/math&amp;gt; y usando 5 términos del desarrollo de Fourier, teniendo en cuenta que las autofunciones son ortogonales respecto al producto escalar: &amp;lt;math&amp;gt; (f(\rho),g(\rho)) = \int_{0}^{20} \rho f(\rho) g(\rho) \cdot dx &amp;lt;/math&amp;gt;&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
x0=0; L=20;&lt;br /&gt;
c0=[2.4048,5.5201,8.6537,11.7915,14.9309]; %Vector de ceros de la función de Bessel&lt;br /&gt;
A=(c0./20).^2; %Vector de autovalores&lt;br /&gt;
K=5; %Número de términos del desarrollo de Fourier&lt;br /&gt;
x=x0:0.1:L;&lt;br /&gt;
N=length(x)-1;&lt;br /&gt;
J=zeros(N+1,K);&lt;br /&gt;
z=zeros(N+1,K);&lt;br /&gt;
t0=0; tf=500;&lt;br /&gt;
t=t0:0.1:tf;&lt;br /&gt;
[xx,tt]=meshgrid(x,t);&lt;br /&gt;
h=0;&lt;br /&gt;
for k=1:K&lt;br /&gt;
   z(:,k)=(x)'*sqrt(A(k));&lt;br /&gt;
   J(:,k)=besselj(0,z(:,k));&lt;br /&gt;
   h0=-log((abs(x+0.1))/20.01); %Condición inicial&lt;br /&gt;
   c(k)=trapz(x,x'.*h0'.*J(:,k))/trapz(x,x'.*J(:,k).*J(:,k)); %Coeficientes de Fourier&lt;br /&gt;
   h=h+c(k)*exp(-A(k)*t)'*J(:,k)';&lt;br /&gt;
end&lt;br /&gt;
surf(xx,tt,h)&lt;br /&gt;
title('Aproximación de la solución')&lt;br /&gt;
}}&lt;/div&gt;</summary>
		<author><name>Marta Cavero</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Nivel_piezom%C3%A9trico_de_un_acu%C3%ADfero_confinado_(A5)&amp;diff=30086</id>
		<title>Nivel piezométrico de un acuífero confinado (A5)</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Nivel_piezom%C3%A9trico_de_un_acu%C3%ADfero_confinado_(A5)&amp;diff=30086"/>
				<updated>2015-05-14T15:15:02Z</updated>
		
		<summary type="html">&lt;p&gt;Marta Cavero: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;br /&gt;
==== Introducción ====&lt;br /&gt;
&lt;br /&gt;
Consideramos un acuífero confinado entre dos capas de terreno impermeables horizontales. Llamaremos h(x, y) al nivel piezométrico del acuífero, definido por la altura que alcanzaría el agua si hiciéramos un sondeo en el punto (x, y). Obviamente este valor depende de la presión a la que se encuentra el agua confinada en el acuífero. Supondremos&lt;br /&gt;
que el acuífero es un medio poroso saturado de agua que ocupa una región infinita y está en equilibrio de manera que &amp;lt;math&amp;gt;h(x, y) = h_0&amp;lt;/math&amp;gt; constante para todo (x, y) ∈ &amp;lt;math&amp;gt;IR^{2}&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Sobre el acuifero se construye un pozo de sección circular y radio&amp;lt;math&amp;gt; ρ_0&amp;lt;/math&amp;gt; para extraer agua. La presencia del pozo hace que el nivel piezométrico cambie. Dada la simetría del problema podemos suponer que h(x, y) sólo va a depender de la distancia al pozo. Si tomamos coordenadas cilíndricas de forma que el eje OZ coincida con el eje de simetría del pozo, entonces h = h(ρ) donde &amp;lt;math&amp;gt;ρ = \sqrt{x^{2} + y^{2}}&amp;lt;/math&amp;gt; . Trabajaremos por tanto en coordenadas polares en el plano (ρ, θ).&lt;br /&gt;
&lt;br /&gt;
Las ecuaciones que permiten conocer h(ρ) son la ecuación de conservación de la masa:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; S = \frac{∂h}{∂t} + div q = 0 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
junto con la ley de Darcy&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; q = −K∇h &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
que es una ley experimental que modela el flujo de agua en un medio poroso. La ley de Darcy establece que el flujo de agua q a través de un medio poroso es proporcional a la diferencia de presión, que a su vez se puede escribir en términos del gradiente del nivel piezométrico en cada punto. La constante K se deduce experimentalmente para cada material y se conoce como la conductividad hidráulica o permeabilidad. Cuanto mayor es la constante K mayor es el flujo de agua provocado por un cambio&lt;br /&gt;
de presión. La ley de Darcy proporciona una buena aproximación del comportamiento del agua en un medio poroso siempre que este sea homogéneo e isótropo.&lt;br /&gt;
&lt;br /&gt;
La constante S en la ley de conservación de la masa se conoce como almacenamiento específico y se interpreta como la cantidad de agua que libera el acuífero al descender el nivel piezométrico en una unidad, por unidad de volumen.&lt;br /&gt;
&lt;br /&gt;
Combinando las ecuaciones de conservación de la masa con la ley de Darcy, obtenemos la ecuación:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \frac{∂h}{∂t} - D∆h = 0, ρ &amp;gt; ρ_0, θ ∈ (0, 2π), t &amp;gt; 0, (1) &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
donde D = K/S es la difusividad hidráulica que supondremos constante.&lt;br /&gt;
&lt;br /&gt;
==== Deducción de la fórmula ====&lt;br /&gt;
&lt;br /&gt;
En este apartado buscamos demostrar la ecuación (1) como combinación de la ecuación de conservación de masas y la Ley de Darcy.&lt;br /&gt;
&lt;br /&gt;
Por un lado sabemos que el laplaciaco equivale a la divergencia del gradiente: &lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; &lt;br /&gt;
(\Delta f = \nabla \cdot \nabla f = div \left (\nabla f) \right) &lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Por otro lado, sabemos que en coordenadas polares: &lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;x = ρ cos \theta \\&lt;br /&gt;
             y = ρ  sen \theta&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\bar{g_ρ } = cos \theta \bar{i} + sin \theta  \bar{j} \\&lt;br /&gt;
              \bar{g_\theta } = - ρ  sin \theta \bar{i} + ρ cos \theta \bar{j} &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;&lt;br /&gt;
G =&lt;br /&gt;
\left(&lt;br /&gt;
\begin{array}{cc}&lt;br /&gt;
1&amp;amp; 0 \\&lt;br /&gt;
0 &amp;amp; ρ ^{2} \\&lt;br /&gt;
\end{array}&lt;br /&gt;
\right);&lt;br /&gt;
\text {donde la raiz del determinante es} \sqrt{g} = ρ&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Como indica el enunciado, al sustituir la Ley de Darcy en la ecuación de conservación de la masa obtenemos y dividir entre S, teniendo en cuenta que el divergente del gradiente es el laplaciano como hemos indicado al principio de este apartado, obtenemos la ecuación (1): &amp;lt;math&amp;gt; \frac{∂h}{∂t} - \frac{k}{S}∆h = 0 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
En esta ecuación queda por desarrollar el Laplaciano de h. &lt;br /&gt;
Partiremos de la función h(ρ,θ), de la cual calcularemos primero el gradiente:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \nabla h = \frac{\partial h}{\partial \rho}\hat{\rho} + \frac{\partial h}{\partial \rho}\hat{\theta} =  \frac{\partial h}{\partial \rho}\bar{\rho} + \frac{1}{\rho^{2}} \frac{\partial h}{\partial \rho}\bar{\theta}  &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
teniendo en cuenta que &amp;lt;math&amp;gt;\bar{g^{i} } = \frac{\bar{g_i } }{ | \bar{g_i } | ^{2} } &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Ahora hacemos el divergente del gradiente anterior y obtenemos el Laplaciano en coordenadas polares:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;math&amp;gt;&lt;br /&gt;
 \Delta h = div(∇h) &lt;br /&gt;
= {1 \over \rho} {\partial \over \partial \rho}&lt;br /&gt;
  \left( \rho {\partial h \over \partial \rho} \right) &lt;br /&gt;
+ {1 \over \rho^2} {\partial^2 h \over \partial \theta^2}&lt;br /&gt;
= {1 \over \rho} {\partial h \over \partial \rho} &lt;br /&gt;
+ {\partial^2 h \over \partial \rho^2}&lt;br /&gt;
+ {1 \over \rho^2} {\partial^2 h \over \partial \theta^2}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Si consideramos que, debido a la simetría del problema, h sólo depende de su distancia al pozo, entonces obtenemos la función radial h(ρ), que nos permite simplificar el Laplaciano del modo siguiente:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;math&amp;gt;&lt;br /&gt;
 \Delta h = div(∇h) &lt;br /&gt;
= {1 \over \rho} {\partial h \over \partial \rho} &lt;br /&gt;
+ {\partial^2 h \over \partial \rho^2}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== Obtención de la ecuación====&lt;br /&gt;
&lt;br /&gt;
Para poder resolver la ecuación anterior y que el resultado sea único, hemos de establecer condiciones iniciales y de contorno.&lt;br /&gt;
&lt;br /&gt;
Las condiciones de contorno serán dos pues aparece la derivada segunda de la posición: &amp;lt;math&amp;gt; h(\rho_0 , t) = h_p \\&lt;br /&gt;
                                                                                                                                                                  h(20,t) = h_0 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
La condición inicial será única pues sólo aparece una derivada de primer orden en tiempo en nuestra ecuación: &amp;lt;math&amp;gt; h(\rho,0) = h_0 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
De este modo la ecuación resultante será:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \left\{\begin{matrix}&lt;br /&gt;
\frac{\partial h}{\partial t} - \frac{k}{s} (\frac{1}{\rho}  \frac{\partial h}{\partial \rho} + \frac{\partial^2 h}{\partial \rho^2})= 0 &amp;amp; \rho \epsilon (\rho_{0}, 2c) &amp;amp; \theta \epsilon (0, 2\Pi ) &amp;amp; t &amp;gt; 0 \\ &lt;br /&gt;
h(\rho_{0},t) = h_{p};   h(20, t)= h_{0} \\ &lt;br /&gt;
h(\rho, 0) = h_{0} &lt;br /&gt;
\end{matrix}\right. &amp;lt;/math&amp;gt; &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==== Resolución por método de diferencias finitas ====&lt;br /&gt;
&lt;br /&gt;
Suponiendo &amp;lt;math&amp;gt;ρ_0 =0.5m&amp;lt;/math&amp;gt;, &amp;lt;math&amp;gt;h_0 =45m&amp;lt;/math&amp;gt;, &amp;lt;math&amp;gt;hp =34&amp;lt;/math&amp;gt;, D=10−2, &amp;lt;math&amp;gt;(ρ,0)=h_0&amp;lt;/math&amp;gt;; y tomando  ∆ρ = 0.1 y ∆t = ∆ρ. Vamos a resolver la ecuación anterior por el método de diferencias finitas, usando el Método de Heun para realizar la aproximación en tiempo.&lt;br /&gt;
&lt;br /&gt;
Primero, sustituyendo los datos anteriores en la ecuación, llegamos a:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \left\{\begin{matrix}&lt;br /&gt;
\frac{\partial h}{\partial t} - 10^{2} (\frac{1}{\rho}  \frac{\partial h}{\partial \rho} + \frac{\partial^2 h}{\partial \rho^2})= 0 &amp;amp; \rho \epsilon (0.5, 20) &amp;amp; \theta \epsilon (0, 2\Pi ) &amp;amp; t &amp;gt; 0 \\ &lt;br /&gt;
h(0.5,t) = 34;   h(20, t)= 45 \\ &lt;br /&gt;
h(\rho, 0) = 45&lt;br /&gt;
\end{matrix}\right. &amp;lt;/math&amp;gt; &lt;br /&gt;
&lt;br /&gt;
Aplicando el método de las diferencias finitas llegamos al siguiente código:&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
&lt;br /&gt;
%TRPRIMERA FASE. ESPACIO&lt;br /&gt;
&lt;br /&gt;
a=0.5; b=20; %Condiciones de contorno&lt;br /&gt;
drho=0.1; N=(b-a)/drho; %División del intervalo&lt;br /&gt;
&lt;br /&gt;
rho=a+drho:drho:b-drho; %Sólo nodos interiores&lt;br /&gt;
&lt;br /&gt;
%Creamos las matrices&lt;br /&gt;
&lt;br /&gt;
L=diag(ones(1,N-2),1)-diag(ones(1,N-2),-1);&lt;br /&gt;
A=diag(1./rho);&lt;br /&gt;
L=10^(-2)*(1/(2*drho))*A*L;&lt;br /&gt;
&lt;br /&gt;
K=-2*diag(ones(1,N-1))+diag(ones(1,N-2),1)+diag(ones(1,N-2),-1);&lt;br /&gt;
K=10^(-2)*(1/drho^2)*K; &lt;br /&gt;
&lt;br /&gt;
F=zeros(N-1,1);&lt;br /&gt;
F(1,1)=10^(-2)*(-17/(rho(1)*drho)+34/drho^2);&lt;br /&gt;
F(N-1,1)=10^(-2)*(45/(rho(N-1)*2*drho)+45/drho^2);&lt;br /&gt;
&lt;br /&gt;
%SEGUDA FASE. TIEMPO&lt;br /&gt;
&lt;br /&gt;
H=ones(1,length(rho)); H=H*45; H=H';&lt;br /&gt;
dt=drho; T=10; t=0:dt:T;&lt;br /&gt;
h0=34; hN=45;&lt;br /&gt;
sol=[h0 H' hN];&lt;br /&gt;
&lt;br /&gt;
for j=1:length(t)-1 &lt;br /&gt;
    &lt;br /&gt;
    %Método de Heun&lt;br /&gt;
    k1=F+(K+L)*H;&lt;br /&gt;
    k2=F+(K+L)*(H+k1*dt);&lt;br /&gt;
    H=H+(dt/2)*(k1+k2);&lt;br /&gt;
 &lt;br /&gt;
    sol(j+1,:)=[h0 H' hN]; %Salvamos las solución, incluimos los extremos&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
rho1=a:drho:b; %Incluimos los nodos exteriores&lt;br /&gt;
&lt;br /&gt;
[rr,tt]=meshgrid(rho1,t);&lt;br /&gt;
surf(rr,tt,sol); %Dibujamos la solución&lt;br /&gt;
title('Nivel Piezométrico. Método Diferencias finitas con Heun en tiempo.')&lt;br /&gt;
xlabel('Distancia radial al centro del pozo.')&lt;br /&gt;
ylabel('Tiempo.')&lt;br /&gt;
zlabel('Nivel piezométrico.')&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
Mediante este código obtenemos la siguiente gráfica:&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Grafica npiezometrico.jpg|500px|thumb|best|Gráfica Nivel Piezométrico aproximada con el Método de Diferencias Finitas con Heun en tiempo.]]&lt;br /&gt;
&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Ahora dibujaremos la gráfica mediante los métodos de Euler implícito y trapecio y compararemos los resultados obtenidos.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Sobre el programa anterior cambiaremos las líneas correspondientes al método de Heun.&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* Método de Euler implícito:&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;math&amp;gt; \left\{\begin{matrix}&lt;br /&gt;
y_{0}\\&lt;br /&gt;
y_{n+1}=y_{n} + hf(t_{n+1},y_{n+1})\\&lt;br /&gt;
\end{matrix}\right. &amp;lt;/math&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
&lt;br /&gt;
for j=1:length(t)-1 &lt;br /&gt;
    &lt;br /&gt;
    %Método de Euler implícito&lt;br /&gt;
    &lt;br /&gt;
    H=(eye(N-1)-dt*(K+L))\(H+(F*dt)); &lt;br /&gt;
 &lt;br /&gt;
    sol(j+1,:)=[h0 H' hN]; %Salvamos las solución, incluimos los extremos&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
rho1=a:drho:b; %Incluimos los nodos exteriores&lt;br /&gt;
&lt;br /&gt;
[rr,tt]=meshgrid(rho1,t);&lt;br /&gt;
surf(rr,tt,sol); %Dibujamos la solución&lt;br /&gt;
title('Nivel Piezométrico. Método Diferencias finitas con Euler en tiempo.')&lt;br /&gt;
xlabel('Distancia radial al centro del pozo.')&lt;br /&gt;
ylabel('Tiempo.')&lt;br /&gt;
zlabel('Nivel piezométrico.')&lt;br /&gt;
&lt;br /&gt;
}}&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* Método del Trapecio:&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;math&amp;gt; \left\{\begin{matrix}&lt;br /&gt;
y_{0}\\&lt;br /&gt;
y_{n+1}=y_{n} + \frac{h}{2}f((t_{n},y_{n}+f(t_{n+1},y_{n+1}))\\&lt;br /&gt;
\end{matrix}\right. &amp;lt;/math&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
for j=1:length(t)-1 &lt;br /&gt;
    &lt;br /&gt;
    %Método del trapecio&lt;br /&gt;
    k1=F+(K+L)*H;&lt;br /&gt;
    k2=F+(K+L)*(H+k1*dt); &lt;br /&gt;
    H=(eye(N-1)-(dt/2)*(K+L))\(H+dt*F+(dt/2)*(K+L)*H);&lt;br /&gt;
 &lt;br /&gt;
    sol(j+1,:)=[h0 H' hN]; %Salvamos las solución, incluimos los extremos&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
rho1=a:drho:b; %Incluimos los nodos exteriores&lt;br /&gt;
&lt;br /&gt;
[rr,tt]=meshgrid(rho1,t);&lt;br /&gt;
surf(rr,tt,sol); %Dibujamos la solución&lt;br /&gt;
title('Nivel Piezométrico. Método Diferencias finitas con trapecio en tiempo.')&lt;br /&gt;
xlabel('Distancia radial al centro del pozo.')&lt;br /&gt;
ylabel('Tiempo.')&lt;br /&gt;
zlabel('Nivel piezométrico.')&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
Como podemos ver a continuación las tres gráficas resultantes son prácticamente iguales por lo que los tres métodos hacen una aproximación similar.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
[[Archivo:Trapecio12.png|500px|thumb|right|Gráfica Nivel Piezométrico aproximada con el Método de Diferencias Finitas con Trapecio en tiempo.]]&lt;br /&gt;
[[Archivo:Euler12.png|500px|thumb|right|Gráfica Nivel Piezométrico aproximada con el Método de Diferencias Finitas con Euler Implícito en tiempo.]]&lt;br /&gt;
&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==== Comportamiento del nivel piezométrico con &amp;lt;math&amp;gt; \rho &amp;lt;/math&amp;gt; constante ====&lt;br /&gt;
&lt;br /&gt;
Ahora supondremos que &amp;lt;math&amp;gt; \rho &amp;lt;/math&amp;gt; es constante y que su valor es 2 y dibujaremos el comportamiento del nivel piezométrico en una gráfica 2D nivel piezométrico-tiempo.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Nuevamente utilizando el programa anterior con el  método de Heun:&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Rho2.png|500px|thumb|best|Gráfica Nivel Piezométrico-tiempo para &amp;lt;math&amp;gt; \rho =2 &amp;lt;/math&amp;gt; para T=10.]]&lt;br /&gt;
[[Archivo:Rho1000.png|500px|thumb|best|Gráfica Nivel Piezométrico-tiempo para &amp;lt;math&amp;gt; \rho =2 &amp;lt;/math&amp;gt; para T=1000.]]&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
&lt;br /&gt;
%PRIMERA FASE. ESPACIO&lt;br /&gt;
&lt;br /&gt;
a=0.5; b=20; %Condiciones de contorno&lt;br /&gt;
drho=0.1; N=(b-a)/drho; %División del intervalo&lt;br /&gt;
&lt;br /&gt;
rho=a+drho:drho:b-drho; %Sólo nodos interiores&lt;br /&gt;
&lt;br /&gt;
%Creamos las matrices&lt;br /&gt;
&lt;br /&gt;
L=diag(ones(1,N-2),1)-diag(ones(1,N-2),-1);&lt;br /&gt;
A=diag(1./rho);&lt;br /&gt;
L=10^(-2)*(1/(2*drho))*A*L;&lt;br /&gt;
&lt;br /&gt;
K=-2*diag(ones(1,N-1))+diag(ones(1,N-2),1)+diag(ones(1,N-2),-1);&lt;br /&gt;
K=10^(-2)*(1/drho^2)*K; &lt;br /&gt;
&lt;br /&gt;
F=zeros(N-1,1);&lt;br /&gt;
F(1,1)=10^(-2)*(-17/(rho(1)*drho)+34/drho^2);&lt;br /&gt;
F(N-1,1)=10^(-2)*(45/(rho(N-1)*2*drho)+45/drho^2);&lt;br /&gt;
&lt;br /&gt;
%SEGUDA FASE. TIEMPO&lt;br /&gt;
&lt;br /&gt;
H=ones(1,length(rho)); H=H*45; H=H';&lt;br /&gt;
dt=drho; &lt;br /&gt;
T=10 &lt;br /&gt;
%Comprobamos también la solución para un tiempo mayor &lt;br /&gt;
%T=1000&lt;br /&gt;
t=0:dt:T;&lt;br /&gt;
h0=34; hN=45;&lt;br /&gt;
sol=[h0 H' hN];&lt;br /&gt;
&lt;br /&gt;
for j=1:length(t)-1 &lt;br /&gt;
    &lt;br /&gt;
    %Método de Heun&lt;br /&gt;
    k1=F+(K+L)*H;&lt;br /&gt;
    k2=F+(K+L)*(H+k1*dt);&lt;br /&gt;
    H=H+(dt/2)*(k1+k2);&lt;br /&gt;
 &lt;br /&gt;
    sol(j+1,:)=[h0 H' hN]; %Salvamos las solución, incluimos los extremos&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
rho1=a:drho:b; %Incluimos los nodos exteriores&lt;br /&gt;
&lt;br /&gt;
m=sol(:,rho==2); %Vector que incluye la solución en tiempo para rho=2&lt;br /&gt;
&lt;br /&gt;
plot(t,m);&lt;br /&gt;
&lt;br /&gt;
title('Comportamiento del nivel piezométrico en el tiempo para p=2')&lt;br /&gt;
xlabel('Tiempo')&lt;br /&gt;
ylabel('Nivel piezométrico.')&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
La primera gráfica muestra que para tiempos pequeños la variación del nivel piezométrico es muy pequeña (del orden de 0,10/0,15 m), aún así como observamos en la segunda gráfica a medida que avanzamos en el tiempo la variación del nivel disminuye aún más ya que la curva está cada vez menos inclinada.&lt;br /&gt;
&lt;br /&gt;
==== Variación del nivel piezométrico en tiempos grandes ====&lt;br /&gt;
Ahora vamos a comprobar que la variación del nivel piezométrico para tiempos elevados (T=5000) es mínima.&lt;br /&gt;
Para ello dibujaremos las soluciones cada 100 horas de en el intervalo temporal [1; 5000], en&lt;br /&gt;
una misma gráfica.&lt;br /&gt;
[[Archivo:Tiemposg2.png|marco|derecha|Nivel piezométrico para tiempos grandes]]&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
%PRIMERA FASE. ESPACIO&lt;br /&gt;
&lt;br /&gt;
a=0.5; b=20; %Condiciones de contorno&lt;br /&gt;
drho=0.1; N=(b-a)/drho; %División del intervalo&lt;br /&gt;
&lt;br /&gt;
rho=a+drho:drho:b-drho; %Sólo nodos interiores&lt;br /&gt;
&lt;br /&gt;
%Creamos las matrices&lt;br /&gt;
&lt;br /&gt;
L=diag(ones(1,N-2),1)-diag(ones(1,N-2),-1);&lt;br /&gt;
A=diag(1./rho);&lt;br /&gt;
L=10^(-2)*(1/(2*drho))*A*L;&lt;br /&gt;
&lt;br /&gt;
K=-2*diag(ones(1,N-1))+diag(ones(1,N-2),1)+diag(ones(1,N-2),-1);&lt;br /&gt;
K=10^(-2)*(1/drho^2)*K; &lt;br /&gt;
&lt;br /&gt;
F=zeros(N-1,1);&lt;br /&gt;
F(1,1)=10^(-2)*(-17/(rho(1)*drho)+34/drho^2);&lt;br /&gt;
F(N-1,1)=10^(-2)*(45/(rho(N-1)*2*drho)+45/drho^2);&lt;br /&gt;
&lt;br /&gt;
%SEGUDA FASE. TIEMPO&lt;br /&gt;
&lt;br /&gt;
H=ones(1,length(rho)); H=H*45; H=H';&lt;br /&gt;
dt=0.1; T=5000; t=0:dt:T;&lt;br /&gt;
h0=34; hN=45;&lt;br /&gt;
sol=[h0 H' hN];&lt;br /&gt;
&lt;br /&gt;
figure(1);&lt;br /&gt;
hold on;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
for j=1:length(t)-1 &lt;br /&gt;
    &lt;br /&gt;
    %Método de Heun&lt;br /&gt;
    k1=F+(K+L)*H;&lt;br /&gt;
    k2=F+(K+L)*(H+k1*dt);&lt;br /&gt;
    H=H+(dt/2)*(k1+k2);&lt;br /&gt;
 &lt;br /&gt;
    sol(j+1,:)=[h0 H' hN]; %Salvamos las solución, incluimos los extremos&lt;br /&gt;
    &lt;br /&gt;
 if rem(t(j),100)==0; &lt;br /&gt;
    &lt;br /&gt;
    rho1=a:drho:b; %Incluimos los nodos exteriores&lt;br /&gt;
  &lt;br /&gt;
  plot(rho1,sol(j,:)) %pintamos la solución cada 100 horas&lt;br /&gt;
  &lt;br /&gt;
  title('Variación del nivel piezométrico para tiempos grandes')&lt;br /&gt;
  pause(1)&lt;br /&gt;
&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
end&lt;br /&gt;
}}&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Como se puede observar en la gráfica según vamos avanzando en el tiempo las curvas están más juntas lo que quiere decir que la variación del nivel es cada vez menor aproximándose a un régimen estacionario.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Trabajo21.jpg|marco|derecha|Nivel piezométrico estacionario]]&lt;br /&gt;
&lt;br /&gt;
====Problema estacionario====&lt;br /&gt;
Como hemos visto en el apartado anterior para tiempos grandes el nivel piezométrico se mantiene practicamente constante a lo largo del tiempo, esto es debido a que se establece un equilibrio entre el caudal de agua extraida del acuifero y la migración de aguas desde los puntos más alejados del pozo hacia este.&lt;br /&gt;
Por lo tanto se verifica que:&lt;br /&gt;
 &amp;lt;math&amp;gt;\frac{\partial h}{\partial t}=0&amp;lt;/math&amp;gt;&lt;br /&gt;
Y por lo tanto el nivel piezométrico se puede aproximar por:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \left\{\begin{matrix}&lt;br /&gt;
- \frac{k}{s} (\frac{1}{\rho}  \frac{\partial h}{\partial \rho} + \frac{\partial^2 h}{\partial \rho^2})= 0 &amp;amp; \rho \epsilon (1, 20) &amp;amp; \theta \epsilon (0, 2\Pi ) &amp;amp; 0 &amp;lt; t &amp;lt; 5000 \\ &lt;br /&gt;
h(1,t) = 35;    h(20, t)= 40 \\ &lt;br /&gt;
h(\rho, 0) = 40 &lt;br /&gt;
\end{matrix}\right. &amp;lt;/math&amp;gt;&lt;br /&gt;
Resolvemos por diferencias finitas:&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
    %datos&lt;br /&gt;
    t=5000;&lt;br /&gt;
    l=20;&lt;br /&gt;
    D=0.01;&lt;br /&gt;
    hp=35;&lt;br /&gt;
    ho=40;&lt;br /&gt;
    %discretización&lt;br /&gt;
    s=0.1;&lt;br /&gt;
    x0=1;&lt;br /&gt;
    x=x0:s:l;&lt;br /&gt;
    xint=x0+s:s:l-s;&lt;br /&gt;
    N=length(x)-2; &lt;br /&gt;
    %construimos las matrices para el método de las diferencias finitas&lt;br /&gt;
    K=(1/s^2)*(diag(2*ones(1,N))-diag(ones(1,N-1),1)-diag(ones(1,N-1),-1));&lt;br /&gt;
    A=(1/(s*2))*(diag(ones(1,N-1),1)-diag(ones(1,N-1),-1));&lt;br /&gt;
    A=diag(1./xint)*A;&lt;br /&gt;
    h0=(40*ones(N,1));&lt;br /&gt;
    dt=200; &lt;br /&gt;
    t=0:dt:t;&lt;br /&gt;
    M=length(t)-1;&lt;br /&gt;
    F=(zeros(N,1));&lt;br /&gt;
    F(1)=D*((hp/s^2)-(hp/(2*s)*1/xint(1)));&lt;br /&gt;
    F(N)=D*((ho/s^2)+ho/(s*2*xint(N)));&lt;br /&gt;
    H(1,:)=[40;h0;40]'; &lt;br /&gt;
    h=h0;&lt;br /&gt;
    for n=1:M&lt;br /&gt;
      h=(D)*(K-A)\((F)); %utilizamos el comando backslash para resolver el sistema de ecuaciones&lt;br /&gt;
      H(n+1,:)=[hp h' ho];&lt;br /&gt;
    end&lt;br /&gt;
    %mallado y representación&lt;br /&gt;
    [X,T]=meshgrid(x,t);&lt;br /&gt;
    surf(X,T,H)&lt;br /&gt;
    xlabel('Distancia (metros)');&lt;br /&gt;
    ylabel('Tiempo (horas)');&lt;br /&gt;
    zlabel('Nivel piezométrico (metros)')&lt;br /&gt;
}}&lt;br /&gt;
Efectivamente, como podemos comprobar en la gráfica, la solución es independiente del tiempo salvo para tiempos pequeños en los cuales no queda muy bien definida&lt;br /&gt;
&lt;br /&gt;
====Capacidad de recuperación del acuífero====&lt;br /&gt;
En este apartado queremos calcular una ley que nos describa el comportamiento del acuífero e el caso de que impermeabilizásemos las paredes del pozo partiendo del estado estacionario anterior, esto significaría que el fujo de agua en los bordes del pozo sería nulo y el nivel piezométrico iría variando hasta llegar a otro estado estacionario.&lt;br /&gt;
El estado estacionarioque tenderá a alcanzar el fluido será el inicial, ya que al impermeabilizar las paredes volvemos al caso del acuífero confinado y por ello es nivel piezométrico quedará constante a lo largo del tiempo y de la extensión del acuífero.&lt;br /&gt;
La condición frontera a imponer será que el flujo de agua en r0 será 0, ya que estará impermeabilizado. Esto lo podemos plasmar diciendo que la parcial del nivel piezométrico con respecto a ro en r0 es 0, ya que un aislamiento impide el flujo de líquido, y si el flujo de líquido es nulo el nivel piezométrico no varía.&lt;br /&gt;
&amp;lt;math&amp;gt;\frac{\partial h}{\partial \rho}=0&amp;lt;/math&amp;gt;&lt;br /&gt;
====Método de Fourier====&lt;br /&gt;
Ahora suponemos que el radio del pozo es despreciable y que una vez extraido el agua el pozo se cierra quedando el acuifero de nuevo homogéneo. En este caso tomaremos la región ρ &amp;lt; 20. Nuestro objetivo es aproximar las soluciones usando el método de Fourier. De nuevo supondremos que la solución sólo depende de ρ y t, y tomaremos ahora como condición frontera h(20, t) = 40.&lt;br /&gt;
Vamos a considerar el sistema de ecuaciones para h(ρ,t)=h(ρ,t)-40:&lt;br /&gt;
 &amp;lt;math&amp;gt; \left\{\begin{matrix}&lt;br /&gt;
\frac{\partial h}{\partial t} - D (\frac{1}{\rho}  \frac{\partial h}{\partial \rho} + \frac{\partial^2 h}{\partial \rho^2})= 0 &amp;amp; \rho \epsilon (0, 20) &amp;amp; \theta \epsilon (0, 2\Pi ) &amp;amp; t &amp;gt; 0 \\ &lt;br /&gt;
\frac{\partial h}{\partial \rho}(0,t) = 0;   h(20, t)= 0 \\ &lt;br /&gt;
\end{matrix}\right. &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Obtenemos el problema de autovalores asociado al sistema anterior con el método de separación de variables:&lt;br /&gt;
 &amp;lt;math&amp;gt; \left\{\begin{matrix}&lt;br /&gt;
D (\frac{X'(\rho)}{\rho} + X''(\rho))+ λX(\rho)=0 \\&lt;br /&gt;
X'(0) = 0;   X(20)= 0 \\ &lt;br /&gt;
&lt;br /&gt;
\end{matrix}\right. &amp;lt;/math&amp;gt;&lt;br /&gt;
[[Archivo:Marta1.jpg|marco|derecha]]&lt;br /&gt;
Sabemos que los problemas de esta forma tienen como solución la función de Bessel de primera especie que forma una familia de autofunciones: &amp;lt;math&amp;gt;Ψ(\rho)=J_0·(\rho\sqrt{λ})&amp;lt;/math&amp;gt;. Estas se anulan cuando &amp;lt;math&amp;gt;(\rho\sqrt{λ})&amp;lt;/math&amp;gt; se iguala a 2.4048, 5.5201, 8.6537, 11.7915 y 14.9309, siendo estos los 5 primeros ceros de la función de Bessel. De esta manera y tomando ρ=20 obtenemos los 5 primeros autovalores:&lt;br /&gt;
&amp;lt;math&amp;gt;(20\sqrt{λ})=2.4048&amp;lt;/math&amp;gt;Haciendo la operación anterior para los 5 ceros obtenemos los siguientes autovalores: 0.0145, 0.0762, 0.1872, 0.3476, 0.5573.&lt;br /&gt;
Ahora vamos a dibujar las 5 primeras autofunciones utilizando la función besselj:&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
a1=0.0145;&lt;br /&gt;
a2=0.0762;&lt;br /&gt;
a3=0.1872;&lt;br /&gt;
a4=0.3476;&lt;br /&gt;
a5=0.5575;&lt;br /&gt;
r=0:0.02:20;&lt;br /&gt;
F1=besselj(0,r.*(sqrt(a1))); &lt;br /&gt;
F2=besselj(0,r.*(sqrt(a2)));&lt;br /&gt;
F3=besselj(0,r.*(sqrt(a3)));&lt;br /&gt;
F4=besselj(0,r.*(sqrt(a4)));&lt;br /&gt;
F5=besselj(0,r.*(sqrt(a5)));&lt;br /&gt;
hold on&lt;br /&gt;
plot(r,F1)&lt;br /&gt;
plot(r,F2,'r')&lt;br /&gt;
plot(r,F3,'g')	&lt;br /&gt;
plot(r,F4,'c')&lt;br /&gt;
plot(r,F5,'y')&lt;br /&gt;
hold off&lt;br /&gt;
}}&lt;br /&gt;
[[Archivo:Marta2.jpg|marco|derecha]]&lt;br /&gt;
Aproximamos ahora la solución de la ecuación tomando como dato inicial es&amp;lt;math&amp;gt; h (\rho,0)= -log \frac{|\rho + 0.01|}{20.01} &amp;lt;/math&amp;gt; y usando 5 términos del desarrollo de Fourier, teniendo en cuenta que las autofunciones son ortogonales respecto al producto escalar: &amp;lt;math&amp;gt; (f(\rho),g(\rho)) = \int_{0}^{20} \rho f(\rho) g(\rho) \cdot dx &amp;lt;/math&amp;gt;&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
x0=0; L=20;&lt;br /&gt;
c0=[2.4048,5.5201,8.6537,11.7915,14.9309]; %Vector de ceros de la función de Bessel&lt;br /&gt;
A=(c0./20).^2; %Vector de autovalores&lt;br /&gt;
K=5; %Número de términos del desarrollo de Fourier&lt;br /&gt;
x=x0:0.1:L;&lt;br /&gt;
N=length(x)-1;&lt;br /&gt;
J=zeros(N+1,K);&lt;br /&gt;
z=zeros(N+1,K);&lt;br /&gt;
t0=0; tf=500;&lt;br /&gt;
t=t0:0.1:tf;&lt;br /&gt;
[xx,tt]=meshgrid(x,t);&lt;br /&gt;
h=0;&lt;br /&gt;
for k=1:K&lt;br /&gt;
   z(:,k)=(x)'*sqrt(A(k));&lt;br /&gt;
   J(:,k)=besselj(0,z(:,k));&lt;br /&gt;
   h0=-log((abs(x+0.1))/20.01); %Condición inicial&lt;br /&gt;
   c(k)=trapz(x,x'.*h0'.*J(:,k))/trapz(x,x'.*J(:,k).*J(:,k)); %Coeficientes de Fourier&lt;br /&gt;
   h=h+c(k)*exp(-A(k)*t)'*J(:,k)';&lt;br /&gt;
end&lt;br /&gt;
surf(xx,tt,h)&lt;br /&gt;
title('Aproximación de la solución')&lt;br /&gt;
}}&lt;/div&gt;</summary>
		<author><name>Marta Cavero</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Nivel_piezom%C3%A9trico_de_un_acu%C3%ADfero_confinado_(A5)&amp;diff=30084</id>
		<title>Nivel piezométrico de un acuífero confinado (A5)</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Nivel_piezom%C3%A9trico_de_un_acu%C3%ADfero_confinado_(A5)&amp;diff=30084"/>
				<updated>2015-05-14T15:13:21Z</updated>
		
		<summary type="html">&lt;p&gt;Marta Cavero: /* Resolución por método de diferencias finitas */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;br /&gt;
==== Introducción ====&lt;br /&gt;
&lt;br /&gt;
Consideramos un acuífero confinado entre dos capas de terreno impermeables horizontales. Llamaremos h(x, y) al nivel piezométrico del acuífero, definido por la altura que alcanzaría el agua si hiciéramos un sondeo en el punto (x, y). Obviamente este valor depende de la presión a la que se encuentra el agua confinada en el acuífero. Supondremos&lt;br /&gt;
que el acuífero es un medio poroso saturado de agua que ocupa una región infinita y está en equilibrio de manera que &amp;lt;math&amp;gt;h(x, y) = h_0&amp;lt;/math&amp;gt; constante para todo (x, y) ∈ &amp;lt;math&amp;gt;IR^{2}&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Sobre el acuifero se construye un pozo de sección circular y radio&amp;lt;math&amp;gt; ρ_0&amp;lt;/math&amp;gt; para extraer agua. La presencia del pozo hace que el nivel piezométrico cambie. Dada la simetría del problema podemos suponer que h(x, y) sólo va a depender de la distancia al pozo. Si tomamos coordenadas cilíndricas de forma que el eje OZ coincida con el eje de simetría del pozo, entonces h = h(ρ) donde &amp;lt;math&amp;gt;ρ = \sqrt{x^{2} + y^{2}}&amp;lt;/math&amp;gt; . Trabajaremos por tanto en coordenadas polares en el plano (ρ, θ).&lt;br /&gt;
&lt;br /&gt;
Las ecuaciones que permiten conocer h(ρ) son la ecuación de conservación de la masa:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; S = \frac{∂h}{∂t} + div q = 0 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
junto con la ley de Darcy&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; q = −K∇h &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
que es una ley experimental que modela el flujo de agua en un medio poroso. La ley de Darcy establece que el flujo de agua q a través de un medio poroso es proporcional a la diferencia de presión, que a su vez se puede escribir en términos del gradiente del nivel piezométrico en cada punto. La constante K se deduce experimentalmente para cada material y se conoce como la conductividad hidráulica o permeabilidad. Cuanto mayor es la constante K mayor es el flujo de agua provocado por un cambio&lt;br /&gt;
de presión. La ley de Darcy proporciona una buena aproximación del comportamiento del agua en un medio poroso siempre que este sea homogéneo e isótropo.&lt;br /&gt;
&lt;br /&gt;
La constante S en la ley de conservación de la masa se conoce como almacenamiento específico y se interpreta como la cantidad de agua que libera el acuífero al descender el nivel piezométrico en una unidad, por unidad de volumen.&lt;br /&gt;
&lt;br /&gt;
Combinando las ecuaciones de conservación de la masa con la ley de Darcy, obtenemos la ecuación:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \frac{∂h}{∂t} - D∆h = 0, ρ &amp;gt; ρ_0, θ ∈ (0, 2π), t &amp;gt; 0, (1) &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
donde D = K/S es la difusividad hidráulica que supondremos constante.&lt;br /&gt;
&lt;br /&gt;
==== Deducción de la fórmula ====&lt;br /&gt;
&lt;br /&gt;
En este apartado buscamos demostrar la ecuación (1) como combinación de la ecuación de conservación de masas y la Ley de Darcy.&lt;br /&gt;
&lt;br /&gt;
Por un lado sabemos que el laplaciaco equivale a la divergencia del gradiente: &lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; &lt;br /&gt;
(\Delta f = \nabla \cdot \nabla f = div \left (\nabla f) \right) &lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Por otro lado, sabemos que en coordenadas polares: &lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;x = ρ cos \theta \\&lt;br /&gt;
             y = ρ  sen \theta&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\bar{g_ρ } = cos \theta \bar{i} + sin \theta  \bar{j} \\&lt;br /&gt;
              \bar{g_\theta } = - ρ  sin \theta \bar{i} + ρ cos \theta \bar{j} &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;&lt;br /&gt;
G =&lt;br /&gt;
\left(&lt;br /&gt;
\begin{array}{cc}&lt;br /&gt;
1&amp;amp; 0 \\&lt;br /&gt;
0 &amp;amp; ρ ^{2} \\&lt;br /&gt;
\end{array}&lt;br /&gt;
\right);&lt;br /&gt;
\text {donde la raiz del determinante es} \sqrt{g} = ρ&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Como indica el enunciado, al sustituir la Ley de Darcy en la ecuación de conservación de la masa obtenemos y dividir entre S, teniendo en cuenta que el divergente del gradiente es el laplaciano como hemos indicado al principio de este apartado, obtenemos la ecuación (1): &amp;lt;math&amp;gt; \frac{∂h}{∂t} - \frac{k}{S}∆h = 0 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
En esta ecuación queda por desarrollar el Laplaciano de h. &lt;br /&gt;
Partiremos de la función h(ρ,θ), de la cual calcularemos primero el gradiente:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \nabla h = \frac{\partial h}{\partial \rho}\hat{\rho} + \frac{\partial h}{\partial \rho}\hat{\theta} =  \frac{\partial h}{\partial \rho}\bar{\rho} + \frac{1}{\rho^{2}} \frac{\partial h}{\partial \rho}\bar{\theta}  &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
teniendo en cuenta que &amp;lt;math&amp;gt;\bar{g^{i} } = \frac{\bar{g_i } }{ | \bar{g_i } | ^{2} } &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Ahora hacemos el divergente del gradiente anterior y obtenemos el Laplaciano en coordenadas polares:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;math&amp;gt;&lt;br /&gt;
 \Delta h = div(∇h) &lt;br /&gt;
= {1 \over \rho} {\partial \over \partial \rho}&lt;br /&gt;
  \left( \rho {\partial h \over \partial \rho} \right) &lt;br /&gt;
+ {1 \over \rho^2} {\partial^2 h \over \partial \theta^2}&lt;br /&gt;
= {1 \over \rho} {\partial h \over \partial \rho} &lt;br /&gt;
+ {\partial^2 h \over \partial \rho^2}&lt;br /&gt;
+ {1 \over \rho^2} {\partial^2 h \over \partial \theta^2}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Si consideramos que, debido a la simetría del problema, h sólo depende de su distancia al pozo, entonces obtenemos la función radial h(ρ), que nos permite simplificar el Laplaciano del modo siguiente:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;math&amp;gt;&lt;br /&gt;
 \Delta h = div(∇h) &lt;br /&gt;
= {1 \over \rho} {\partial h \over \partial \rho} &lt;br /&gt;
+ {\partial^2 h \over \partial \rho^2}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== Obtención de la ecuación====&lt;br /&gt;
&lt;br /&gt;
Para poder resolver la ecuación anterior y que el resultado sea único, hemos de establecer condiciones iniciales y de contorno.&lt;br /&gt;
&lt;br /&gt;
Las condiciones de contorno serán dos pues aparece la derivada segunda de la posición: &amp;lt;math&amp;gt; h(\rho_0 , t) = h_p \\&lt;br /&gt;
                                                                                                                                                                  h(20,t) = h_0 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
La condición inicial será única pues sólo aparece una derivada de primer orden en tiempo en nuestra ecuación: &amp;lt;math&amp;gt; h(\rho,0) = h_0 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
De este modo la ecuación resultante será:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \left\{\begin{matrix}&lt;br /&gt;
\frac{\partial h}{\partial t} - \frac{k}{s} (\frac{1}{\rho}  \frac{\partial h}{\partial \rho} + \frac{\partial^2 h}{\partial \rho^2})= 0 &amp;amp; \rho \epsilon (\rho_{0}, 2c) &amp;amp; \theta \epsilon (0, 2\Pi ) &amp;amp; t &amp;gt; 0 \\ &lt;br /&gt;
h(\rho_{0},t) = h_{p};   h(20, t)= h_{0} \\ &lt;br /&gt;
h(\rho, 0) = h_{0} &lt;br /&gt;
\end{matrix}\right. &amp;lt;/math&amp;gt; &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==== Resolución por método de diferencias finitas ====&lt;br /&gt;
&lt;br /&gt;
Suponiendo &amp;lt;math&amp;gt;ρ_0 =0.5m&amp;lt;/math&amp;gt;, &amp;lt;math&amp;gt;h_0 =45m&amp;lt;/math&amp;gt;, &amp;lt;math&amp;gt;hp =34&amp;lt;/math&amp;gt;, D=10−2, &amp;lt;math&amp;gt;(ρ,0)=h_0&amp;lt;/math&amp;gt;; y tomando  ∆ρ = 0.1 y ∆t = ∆ρ. Vamos a resolver la ecuación anterior por el método de diferencias finitas, usando el Método de Heun para realizar la aproximación en tiempo.&lt;br /&gt;
&lt;br /&gt;
Primero, sustituyendo los datos anteriores en la ecuación, llegamos a:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \left\{\begin{matrix}&lt;br /&gt;
\frac{\partial h}{\partial t} - 10^{2} (\frac{1}{\rho}  \frac{\partial h}{\partial \rho} + \frac{\partial^2 h}{\partial \rho^2})= 0 &amp;amp; \rho \epsilon (0.5, 20) &amp;amp; \theta \epsilon (0, 2\Pi ) &amp;amp; t &amp;gt; 0 \\ &lt;br /&gt;
h(0.5,t) = 34;   h(20, t)= 45 \\ &lt;br /&gt;
h(\rho, 0) = 45&lt;br /&gt;
\end{matrix}\right. &amp;lt;/math&amp;gt; &lt;br /&gt;
&lt;br /&gt;
Aplicando el método de las diferencias finitas llegamos al siguiente código:&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
&lt;br /&gt;
%TRPRIMERA FASE. ESPACIO&lt;br /&gt;
&lt;br /&gt;
a=0.5; b=20; %Condiciones de contorno&lt;br /&gt;
drho=0.1; N=(b-a)/drho; %División del intervalo&lt;br /&gt;
&lt;br /&gt;
rho=a+drho:drho:b-drho; %Sólo nodos interiores&lt;br /&gt;
&lt;br /&gt;
%Creamos las matrices&lt;br /&gt;
&lt;br /&gt;
L=diag(ones(1,N-2),1)-diag(ones(1,N-2),-1);&lt;br /&gt;
A=diag(1./rho);&lt;br /&gt;
L=10^(-2)*(1/(2*drho))*A*L;&lt;br /&gt;
&lt;br /&gt;
K=-2*diag(ones(1,N-1))+diag(ones(1,N-2),1)+diag(ones(1,N-2),-1);&lt;br /&gt;
K=10^(-2)*(1/drho^2)*K; &lt;br /&gt;
&lt;br /&gt;
F=zeros(N-1,1);&lt;br /&gt;
F(1,1)=10^(-2)*(-17/(rho(1)*drho)+34/drho^2);&lt;br /&gt;
F(N-1,1)=10^(-2)*(45/(rho(N-1)*2*drho)+45/drho^2);&lt;br /&gt;
&lt;br /&gt;
%SEGUDA FASE. TIEMPO&lt;br /&gt;
&lt;br /&gt;
H=ones(1,length(rho)); H=H*45; H=H';&lt;br /&gt;
dt=drho; T=10; t=0:dt:T;&lt;br /&gt;
h0=34; hN=45;&lt;br /&gt;
sol=[h0 H' hN];&lt;br /&gt;
&lt;br /&gt;
for j=1:length(t)-1 &lt;br /&gt;
    &lt;br /&gt;
    %Método de Heun&lt;br /&gt;
    k1=F+(K+L)*H;&lt;br /&gt;
    k2=F+(K+L)*(H+k1*dt);&lt;br /&gt;
    H=H+(dt/2)*(k1+k2);&lt;br /&gt;
 &lt;br /&gt;
    sol(j+1,:)=[h0 H' hN]; %Salvamos las solución, incluimos los extremos&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
rho1=a:drho:b; %Incluimos los nodos exteriores&lt;br /&gt;
&lt;br /&gt;
[rr,tt]=meshgrid(rho1,t);&lt;br /&gt;
surf(rr,tt,sol); %Dibujamos la solución&lt;br /&gt;
title('Nivel Piezométrico. Método Diferencias finitas con Heun en tiempo.')&lt;br /&gt;
xlabel('Distancia radial al centro del pozo.')&lt;br /&gt;
ylabel('Tiempo.')&lt;br /&gt;
zlabel('Nivel piezométrico.')&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
Mediante este código obtenemos la siguiente gráfica:&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Grafica npiezometrico.jpg|500px|thumb|best|Gráfica Nivel Piezométrico aproximada con el Método de Diferencias Finitas con Heun en tiempo.]]&lt;br /&gt;
&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Ahora dibujaremos la gráfica mediante los métodos de Euler implícito y trapecio y compararemos los resultados obtenidos.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Sobre el programa anterior cambiaremos las líneas correspondientes al método de Heun.&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* Método de Euler implícito:&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;math&amp;gt; \left\{\begin{matrix}&lt;br /&gt;
y_{0}\\&lt;br /&gt;
y_{n+1}=y_{n} + hf(t_{n+1},y_{n+1})\\&lt;br /&gt;
\end{matrix}\right. &amp;lt;/math&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
&lt;br /&gt;
for j=1:length(t)-1 &lt;br /&gt;
    &lt;br /&gt;
    %Método de Euler implícito&lt;br /&gt;
    &lt;br /&gt;
    H=(eye(N-1)-dt*(K+L))\(H+(F*dt)); &lt;br /&gt;
 &lt;br /&gt;
    sol(j+1,:)=[h0 H' hN]; %Salvamos las solución, incluimos los extremos&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
rho1=a:drho:b; %Incluimos los nodos exteriores&lt;br /&gt;
&lt;br /&gt;
[rr,tt]=meshgrid(rho1,t);&lt;br /&gt;
surf(rr,tt,sol); %Dibujamos la solución&lt;br /&gt;
title('Nivel Piezométrico. Método Diferencias finitas con Euler en tiempo.')&lt;br /&gt;
xlabel('Distancia radial al centro del pozo.')&lt;br /&gt;
ylabel('Tiempo.')&lt;br /&gt;
zlabel('Nivel piezométrico.')&lt;br /&gt;
&lt;br /&gt;
}}&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* Método del Trapecio:&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;math&amp;gt; \left\{\begin{matrix}&lt;br /&gt;
y_{0}\\&lt;br /&gt;
y_{n+1}=y_{n} + \frac{h}{2}f((t_{n},y_{n}+f(t_{n+1},y_{n+1}))\\&lt;br /&gt;
\end{matrix}\right. &amp;lt;/math&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
for j=1:length(t)-1 &lt;br /&gt;
    &lt;br /&gt;
    %Método del trapecio&lt;br /&gt;
    k1=F+(K+L)*H;&lt;br /&gt;
    k2=F+(K+L)*(H+k1*dt); &lt;br /&gt;
    H=(eye(N-1)-(dt/2)*(K+L))\(H+dt*F+(dt/2)*(K+L)*H);&lt;br /&gt;
 &lt;br /&gt;
    sol(j+1,:)=[h0 H' hN]; %Salvamos las solución, incluimos los extremos&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
rho1=a:drho:b; %Incluimos los nodos exteriores&lt;br /&gt;
&lt;br /&gt;
[rr,tt]=meshgrid(rho1,t);&lt;br /&gt;
surf(rr,tt,sol); %Dibujamos la solución&lt;br /&gt;
title('Nivel Piezométrico. Método Diferencias finitas con trapecio en tiempo.')&lt;br /&gt;
xlabel('Distancia radial al centro del pozo.')&lt;br /&gt;
ylabel('Tiempo.')&lt;br /&gt;
zlabel('Nivel piezométrico.')&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
Como podemos ver a continuación las tres gráficas resultantes son prácticamente iguales por lo que los tres métodos hacen una aproximación similar.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
[[Archivo:Trapecio12.png|500px|thumb|right|Gráfica Nivel Piezométrico aproximada con el Método de Diferencias Finitas con Trapecio en tiempo.]]&lt;br /&gt;
[[Archivo:Euler12.png|500px|thumb|right|Gráfica Nivel Piezométrico aproximada con el Método de Diferencias Finitas con Euler Implícito en tiempo.]]&lt;br /&gt;
&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== Comportamiento del nivel piezométrico con &amp;lt;math&amp;gt; \rho &amp;lt;/math&amp;gt; constante ====&lt;br /&gt;
&lt;br /&gt;
Ahora supondremos que &amp;lt;math&amp;gt; \rho &amp;lt;/math&amp;gt; es constante y que su valor es 2 y dibujaremos el comportamiento del nivel piezométrico en una gráfica 2D nivel piezométrico-tiempo.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Nuevamente utilizando el programa anterior con el  método de Heun:&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Rho2.png|500px|thumb|best|Gráfica Nivel Piezométrico-tiempo para &amp;lt;math&amp;gt; \rho =2 &amp;lt;/math&amp;gt; para T=10.]]&lt;br /&gt;
[[Archivo:Rho1000.png|500px|thumb|best|Gráfica Nivel Piezométrico-tiempo para &amp;lt;math&amp;gt; \rho =2 &amp;lt;/math&amp;gt; para T=1000.]]&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
&lt;br /&gt;
%PRIMERA FASE. ESPACIO&lt;br /&gt;
&lt;br /&gt;
a=0.5; b=20; %Condiciones de contorno&lt;br /&gt;
drho=0.1; N=(b-a)/drho; %División del intervalo&lt;br /&gt;
&lt;br /&gt;
rho=a+drho:drho:b-drho; %Sólo nodos interiores&lt;br /&gt;
&lt;br /&gt;
%Creamos las matrices&lt;br /&gt;
&lt;br /&gt;
L=diag(ones(1,N-2),1)-diag(ones(1,N-2),-1);&lt;br /&gt;
A=diag(1./rho);&lt;br /&gt;
L=10^(-2)*(1/(2*drho))*A*L;&lt;br /&gt;
&lt;br /&gt;
K=-2*diag(ones(1,N-1))+diag(ones(1,N-2),1)+diag(ones(1,N-2),-1);&lt;br /&gt;
K=10^(-2)*(1/drho^2)*K; &lt;br /&gt;
&lt;br /&gt;
F=zeros(N-1,1);&lt;br /&gt;
F(1,1)=10^(-2)*(-17/(rho(1)*drho)+34/drho^2);&lt;br /&gt;
F(N-1,1)=10^(-2)*(45/(rho(N-1)*2*drho)+45/drho^2);&lt;br /&gt;
&lt;br /&gt;
%SEGUDA FASE. TIEMPO&lt;br /&gt;
&lt;br /&gt;
H=ones(1,length(rho)); H=H*45; H=H';&lt;br /&gt;
dt=drho; &lt;br /&gt;
T=10 &lt;br /&gt;
%Comprobamos también la solución para un tiempo mayor &lt;br /&gt;
%T=1000&lt;br /&gt;
t=0:dt:T;&lt;br /&gt;
h0=34; hN=45;&lt;br /&gt;
sol=[h0 H' hN];&lt;br /&gt;
&lt;br /&gt;
for j=1:length(t)-1 &lt;br /&gt;
    &lt;br /&gt;
    %Método de Heun&lt;br /&gt;
    k1=F+(K+L)*H;&lt;br /&gt;
    k2=F+(K+L)*(H+k1*dt);&lt;br /&gt;
    H=H+(dt/2)*(k1+k2);&lt;br /&gt;
 &lt;br /&gt;
    sol(j+1,:)=[h0 H' hN]; %Salvamos las solución, incluimos los extremos&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
rho1=a:drho:b; %Incluimos los nodos exteriores&lt;br /&gt;
&lt;br /&gt;
m=sol(:,rho==2); %Vector que incluye la solución en tiempo para rho=2&lt;br /&gt;
&lt;br /&gt;
plot(t,m);&lt;br /&gt;
&lt;br /&gt;
title('Comportamiento del nivel piezométrico en el tiempo para p=2')&lt;br /&gt;
xlabel('Tiempo')&lt;br /&gt;
ylabel('Nivel piezométrico.')&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
La primera gráfica muestra que para tiempos pequeños la variación del nivel piezométrico es muy pequeña (del orden de 0,10/0,15 m), aún así como observamos en la segunda gráfica a medida que avanzamos en el tiempo la variación del nivel disminuye aún más ya que la curva está cada vez menos inclinada.&lt;br /&gt;
&lt;br /&gt;
==== Variación del nivel piezométrico en tiempos grandes ====&lt;br /&gt;
Ahora vamos a comprobar que la variación del nivel piezométrico para tiempos elevados (T=5000) es mínima.&lt;br /&gt;
Para ello dibujaremos las soluciones cada 100 horas de en el intervalo temporal [1; 5000], en&lt;br /&gt;
una misma gráfica.&lt;br /&gt;
[[Archivo:Tiemposg2.png|marco|derecha|Nivel piezométrico para tiempos grandes]]&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
%PRIMERA FASE. ESPACIO&lt;br /&gt;
&lt;br /&gt;
a=0.5; b=20; %Condiciones de contorno&lt;br /&gt;
drho=0.1; N=(b-a)/drho; %División del intervalo&lt;br /&gt;
&lt;br /&gt;
rho=a+drho:drho:b-drho; %Sólo nodos interiores&lt;br /&gt;
&lt;br /&gt;
%Creamos las matrices&lt;br /&gt;
&lt;br /&gt;
L=diag(ones(1,N-2),1)-diag(ones(1,N-2),-1);&lt;br /&gt;
A=diag(1./rho);&lt;br /&gt;
L=10^(-2)*(1/(2*drho))*A*L;&lt;br /&gt;
&lt;br /&gt;
K=-2*diag(ones(1,N-1))+diag(ones(1,N-2),1)+diag(ones(1,N-2),-1);&lt;br /&gt;
K=10^(-2)*(1/drho^2)*K; &lt;br /&gt;
&lt;br /&gt;
F=zeros(N-1,1);&lt;br /&gt;
F(1,1)=10^(-2)*(-17/(rho(1)*drho)+34/drho^2);&lt;br /&gt;
F(N-1,1)=10^(-2)*(45/(rho(N-1)*2*drho)+45/drho^2);&lt;br /&gt;
&lt;br /&gt;
%SEGUDA FASE. TIEMPO&lt;br /&gt;
&lt;br /&gt;
H=ones(1,length(rho)); H=H*45; H=H';&lt;br /&gt;
dt=0.1; T=5000; t=0:dt:T;&lt;br /&gt;
h0=34; hN=45;&lt;br /&gt;
sol=[h0 H' hN];&lt;br /&gt;
&lt;br /&gt;
figure(1);&lt;br /&gt;
hold on;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
for j=1:length(t)-1 &lt;br /&gt;
    &lt;br /&gt;
    %Método de Heun&lt;br /&gt;
    k1=F+(K+L)*H;&lt;br /&gt;
    k2=F+(K+L)*(H+k1*dt);&lt;br /&gt;
    H=H+(dt/2)*(k1+k2);&lt;br /&gt;
 &lt;br /&gt;
    sol(j+1,:)=[h0 H' hN]; %Salvamos las solución, incluimos los extremos&lt;br /&gt;
    &lt;br /&gt;
 if rem(t(j),100)==0; &lt;br /&gt;
    &lt;br /&gt;
    rho1=a:drho:b; %Incluimos los nodos exteriores&lt;br /&gt;
  &lt;br /&gt;
  plot(rho1,sol(j,:)) %pintamos la solución cada 100 horas&lt;br /&gt;
  &lt;br /&gt;
  title('Variación del nivel piezométrico para tiempos grandes')&lt;br /&gt;
  pause(1)&lt;br /&gt;
&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
end&lt;br /&gt;
}}&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Como se puede observar en la gráfica según vamos avanzando en el tiempo las curvas están más juntas lo que quiere decir que la variación del nivel es cada vez menor aproximándose a un régimen estacionario.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Trabajo21.jpg|marco|derecha|Nivel piezométrico estacionario]]&lt;br /&gt;
&lt;br /&gt;
====Problema estacionario====&lt;br /&gt;
Como hemos visto en el apartado anterior para tiempos grandes el nivel piezométrico se mantiene practicamente constante a lo largo del tiempo, esto es debido a que se establece un equilibrio entre el caudal de agua extraida del acuifero y la migración de aguas desde los puntos más alejados del pozo hacia este.&lt;br /&gt;
Por lo tanto se verifica que:&lt;br /&gt;
 &amp;lt;math&amp;gt;\frac{\partial h}{\partial t}=0&amp;lt;/math&amp;gt;&lt;br /&gt;
Y por lo tanto el nivel piezométrico se puede aproximar por:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \left\{\begin{matrix}&lt;br /&gt;
- \frac{k}{s} (\frac{1}{\rho}  \frac{\partial h}{\partial \rho} + \frac{\partial^2 h}{\partial \rho^2})= 0 &amp;amp; \rho \epsilon (1, 20) &amp;amp; \theta \epsilon (0, 2\Pi ) &amp;amp; 0 &amp;lt; t &amp;lt; 5000 \\ &lt;br /&gt;
h(1,t) = 35;    h(20, t)= 40 \\ &lt;br /&gt;
h(\rho, 0) = 40 &lt;br /&gt;
\end{matrix}\right. &amp;lt;/math&amp;gt;&lt;br /&gt;
Resolvemos por diferencias finitas:&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
    %datos&lt;br /&gt;
    t=5000;&lt;br /&gt;
    l=20;&lt;br /&gt;
    D=0.01;&lt;br /&gt;
    hp=35;&lt;br /&gt;
    ho=40;&lt;br /&gt;
    %discretización&lt;br /&gt;
    s=0.1;&lt;br /&gt;
    x0=1;&lt;br /&gt;
    x=x0:s:l;&lt;br /&gt;
    xint=x0+s:s:l-s;&lt;br /&gt;
    N=length(x)-2; &lt;br /&gt;
    %construimos las matrices para el método de las diferencias finitas&lt;br /&gt;
    K=(1/s^2)*(diag(2*ones(1,N))-diag(ones(1,N-1),1)-diag(ones(1,N-1),-1));&lt;br /&gt;
    A=(1/(s*2))*(diag(ones(1,N-1),1)-diag(ones(1,N-1),-1));&lt;br /&gt;
    A=diag(1./xint)*A;&lt;br /&gt;
    h0=(40*ones(N,1));&lt;br /&gt;
    dt=200; &lt;br /&gt;
    t=0:dt:t;&lt;br /&gt;
    M=length(t)-1;&lt;br /&gt;
    F=(zeros(N,1));&lt;br /&gt;
    F(1)=D*((hp/s^2)-(hp/(2*s)*1/xint(1)));&lt;br /&gt;
    F(N)=D*((ho/s^2)+ho/(s*2*xint(N)));&lt;br /&gt;
    H(1,:)=[40;h0;40]'; &lt;br /&gt;
    h=h0;&lt;br /&gt;
    for n=1:M&lt;br /&gt;
      h=(D)*(K-A)\((F)); %utilizamos el comando backslash para resolver el sistema de ecuaciones&lt;br /&gt;
      H(n+1,:)=[hp h' ho];&lt;br /&gt;
    end&lt;br /&gt;
    %mallado y representación&lt;br /&gt;
    [X,T]=meshgrid(x,t);&lt;br /&gt;
    surf(X,T,H)&lt;br /&gt;
    xlabel('Distancia (metros)');&lt;br /&gt;
    ylabel('Tiempo (horas)');&lt;br /&gt;
    zlabel('Nivel piezométrico (metros)')&lt;br /&gt;
}}&lt;br /&gt;
Efectivamente, como podemos comprobar en la gráfica, la solución es independiente del tiempo salvo para tiempos pequeños en los cuales no queda muy bien definida&lt;br /&gt;
&lt;br /&gt;
====Capacidad de recuperación del acuífero====&lt;br /&gt;
En este apartado queremos calcular una ley que nos describa el comportamiento del acuífero e el caso de que impermeabilizásemos las paredes del pozo partiendo del estado estacionario anterior, esto significaría que el fujo de agua en los bordes del pozo sería nulo y el nivel piezométrico iría variando hasta llegar a otro estado estacionario.&lt;br /&gt;
El estado estacionarioque tenderá a alcanzar el fluido será el inicial, ya que al impermeabilizar las paredes volvemos al caso del acuífero confinado y por ello es nivel piezométrico quedará constante a lo largo del tiempo y de la extensión del acuífero.&lt;br /&gt;
La condición frontera a imponer será que el flujo de agua en r0 será 0, ya que estará impermeabilizado. Esto lo podemos plasmar diciendo que la parcial del nivel piezométrico con respecto a ro en r0 es 0, ya que un aislamiento impide el flujo de líquido, y si el flujo de líquido es nulo el nivel piezométrico no varía.&lt;br /&gt;
&amp;lt;math&amp;gt;\frac{\partial h}{\partial \rho}=0&amp;lt;/math&amp;gt;&lt;br /&gt;
====Método de Fourier====&lt;br /&gt;
Ahora suponemos que el radio del pozo es despreciable y que una vez extraido el agua el pozo se cierra quedando el acuifero de nuevo homogéneo. En este caso tomaremos la región ρ &amp;lt; 20. Nuestro objetivo es aproximar las soluciones usando el método de Fourier. De nuevo supondremos que la solución sólo depende de ρ y t, y tomaremos ahora como condición frontera h(20, t) = 40.&lt;br /&gt;
Vamos a considerar el sistema de ecuaciones para h(ρ,t)=h(ρ,t)-40:&lt;br /&gt;
 &amp;lt;math&amp;gt; \left\{\begin{matrix}&lt;br /&gt;
\frac{\partial h}{\partial t} - D (\frac{1}{\rho}  \frac{\partial h}{\partial \rho} + \frac{\partial^2 h}{\partial \rho^2})= 0 &amp;amp; \rho \epsilon (0, 20) &amp;amp; \theta \epsilon (0, 2\Pi ) &amp;amp; t &amp;gt; 0 \\ &lt;br /&gt;
\frac{\partial h}{\partial \rho}(0,t) = 0;   h(20, t)= 0 \\ &lt;br /&gt;
\end{matrix}\right. &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Obtenemos el problema de autovalores asociado al sistema anterior con el método de separación de variables:&lt;br /&gt;
 &amp;lt;math&amp;gt; \left\{\begin{matrix}&lt;br /&gt;
D (\frac{X'(\rho)}{\rho} + X''(\rho))+ λX(\rho)=0 \\&lt;br /&gt;
X'(0) = 0;   X(20)= 0 \\ &lt;br /&gt;
&lt;br /&gt;
\end{matrix}\right. &amp;lt;/math&amp;gt;&lt;br /&gt;
[[Archivo:Marta1.jpg|marco|derecha]]&lt;br /&gt;
Sabemos que los problemas de esta forma tienen como solución la función de Bessel de primera especie que forma una familia de autofunciones: &amp;lt;math&amp;gt;Ψ(\rho)=J_0·(\rho\sqrt{λ})&amp;lt;/math&amp;gt;. Estas se anulan cuando &amp;lt;math&amp;gt;(\rho\sqrt{λ})&amp;lt;/math&amp;gt; se iguala a 2.4048, 5.5201, 8.6537, 11.7915 y 14.9309, siendo estos los 5 primeros ceros de la función de Bessel. De esta manera y tomando ρ=20 obtenemos los 5 primeros autovalores:&lt;br /&gt;
&amp;lt;math&amp;gt;(20\sqrt{λ})=2.4048&amp;lt;/math&amp;gt;Haciendo la operación anterior para los 5 ceros obtenemos los siguientes autovalores: 0.0145, 0.0762, 0.1872, 0.3476, 0.5573.&lt;br /&gt;
Ahora vamos a dibujar las 5 primeras autofunciones utilizando la función besselj:&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
a1=0.0145;&lt;br /&gt;
a2=0.0762;&lt;br /&gt;
a3=0.1872;&lt;br /&gt;
a4=0.3476;&lt;br /&gt;
a5=0.5575;&lt;br /&gt;
r=0:0.02:20;&lt;br /&gt;
F1=besselj(0,r.*(sqrt(a1))); &lt;br /&gt;
F2=besselj(0,r.*(sqrt(a2)));&lt;br /&gt;
F3=besselj(0,r.*(sqrt(a3)));&lt;br /&gt;
F4=besselj(0,r.*(sqrt(a4)));&lt;br /&gt;
F5=besselj(0,r.*(sqrt(a5)));&lt;br /&gt;
hold on&lt;br /&gt;
plot(r,F1)&lt;br /&gt;
plot(r,F2,'r')&lt;br /&gt;
plot(r,F3,'g')	&lt;br /&gt;
plot(r,F4,'c')&lt;br /&gt;
plot(r,F5,'y')&lt;br /&gt;
hold off&lt;br /&gt;
}}&lt;br /&gt;
[[Archivo:Marta2.jpg|marco|derecha]]&lt;br /&gt;
Aproximamos ahora la solución de la ecuación tomando como dato inicial es&amp;lt;math&amp;gt; h (\rho,0)= -log \frac{|\rho + 0.01|}{20.01} &amp;lt;/math&amp;gt; y usando 5 términos del desarrollo de Fourier, teniendo en cuenta que las autofunciones son ortogonales respecto al producto escalar: &amp;lt;math&amp;gt; (f(\rho),g(\rho)) = \int_{0}^{20} \rho f(\rho) g(\rho) \cdot dx &amp;lt;/math&amp;gt;&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
x0=0; L=20;&lt;br /&gt;
c0=[2.4048,5.5201,8.6537,11.7915,14.9309]; %Vector de ceros de la función de Bessel&lt;br /&gt;
A=(c0./20).^2; %Vector de autovalores&lt;br /&gt;
K=5; %Número de términos del desarrollo de Fourier&lt;br /&gt;
x=x0:0.1:L;&lt;br /&gt;
N=length(x)-1;&lt;br /&gt;
J=zeros(N+1,K);&lt;br /&gt;
z=zeros(N+1,K);&lt;br /&gt;
t0=0; tf=500;&lt;br /&gt;
t=t0:0.1:tf;&lt;br /&gt;
[xx,tt]=meshgrid(x,t);&lt;br /&gt;
h=0;&lt;br /&gt;
for k=1:K&lt;br /&gt;
   z(:,k)=(x)'*sqrt(A(k));&lt;br /&gt;
   J(:,k)=besselj(0,z(:,k));&lt;br /&gt;
   h0=-log((abs(x+0.1))/20.01); %Condición inicial&lt;br /&gt;
   c(k)=trapz(x,x'.*h0'.*J(:,k))/trapz(x,x'.*J(:,k).*J(:,k)); %Coeficientes de Fourier&lt;br /&gt;
   h=h+c(k)*exp(-A(k)*t)'*J(:,k)';&lt;br /&gt;
end&lt;br /&gt;
surf(xx,tt,h)&lt;br /&gt;
title('Aproximación de la solución')&lt;br /&gt;
}}&lt;/div&gt;</summary>
		<author><name>Marta Cavero</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Archivo:Marta2.jpg&amp;diff=30065</id>
		<title>Archivo:Marta2.jpg</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Archivo:Marta2.jpg&amp;diff=30065"/>
				<updated>2015-05-14T14:53:13Z</updated>
		
		<summary type="html">&lt;p&gt;Marta Cavero: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>Marta Cavero</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Nivel_piezom%C3%A9trico_de_un_acu%C3%ADfero_confinado_(A5)&amp;diff=30064</id>
		<title>Nivel piezométrico de un acuífero confinado (A5)</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Nivel_piezom%C3%A9trico_de_un_acu%C3%ADfero_confinado_(A5)&amp;diff=30064"/>
				<updated>2015-05-14T14:51:47Z</updated>
		
		<summary type="html">&lt;p&gt;Marta Cavero: /* Método de Fourier */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;br /&gt;
==== Introducción ====&lt;br /&gt;
&lt;br /&gt;
Consideramos un acuífero confinado entre dos capas de terreno impermeables horizontales. Llamaremos h(x, y) al nivel piezométrico del acuífero, definido por la altura que alcanzaría el agua si hiciéramos un sondeo en el punto (x, y). Obviamente este valor depende de la presión a la que se encuentra el agua confinada en el acuífero. Supondremos&lt;br /&gt;
que el acuífero es un medio poroso saturado de agua que ocupa una región infinita y está en equilibrio de manera que &amp;lt;math&amp;gt;h(x, y) = h_0&amp;lt;/math&amp;gt; constante para todo (x, y) ∈ &amp;lt;math&amp;gt;IR^{2}&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Sobre el acuifero se construye un pozo de sección circular y radio&amp;lt;math&amp;gt; ρ_0&amp;lt;/math&amp;gt; para extraer agua. La presencia del pozo hace que el nivel piezométrico cambie. Dada la simetría del problema podemos suponer que h(x, y) sólo va a depender de la distancia al pozo. Si tomamos coordenadas cilíndricas de forma que el eje OZ coincida con el eje de simetría del pozo, entonces h = h(ρ) donde &amp;lt;math&amp;gt;ρ = \sqrt{x^{2} + y^{2}}&amp;lt;/math&amp;gt; . Trabajaremos por tanto en coordenadas polares en el plano (ρ, θ).&lt;br /&gt;
&lt;br /&gt;
Las ecuaciones que permiten conocer h(ρ) son la ecuación de conservación de la masa:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; S = \frac{∂h}{∂t} + div q = 0 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
junto con la ley de Darcy&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; q = −K∇h &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
que es una ley experimental que modela el flujo de agua en un medio poroso. La ley de Darcy establece que el flujo de agua q a través de un medio poroso es proporcional a la diferencia de presión, que a su vez se puede escribir en términos del gradiente del nivel piezométrico en cada punto. La constante K se deduce experimentalmente para cada material y se conoce como la conductividad hidráulica o permeabilidad. Cuanto mayor es la constante K mayor es el flujo de agua provocado por un cambio&lt;br /&gt;
de presión. La ley de Darcy proporciona una buena aproximación del comportamiento del agua en un medio poroso siempre que este sea homogéneo e isótropo.&lt;br /&gt;
&lt;br /&gt;
La constante S en la ley de conservación de la masa se conoce como almacenamiento específico y se interpreta como la cantidad de agua que libera el acuífero al descender el nivel piezométrico en una unidad, por unidad de volumen.&lt;br /&gt;
&lt;br /&gt;
Combinando las ecuaciones de conservación de la masa con la ley de Darcy, obtenemos la ecuación:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \frac{∂h}{∂t} - D∆h = 0, ρ &amp;gt; ρ_0, θ ∈ (0, 2π), t &amp;gt; 0, (1) &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
donde D = K/S es la difusividad hidráulica que supondremos constante.&lt;br /&gt;
&lt;br /&gt;
==== Deducción de la fórmula ====&lt;br /&gt;
&lt;br /&gt;
En este apartado buscamos demostrar la ecuación (1) como combinación de la ecuación de conservación de masas y la Ley de Darcy.&lt;br /&gt;
&lt;br /&gt;
Por un lado sabemos que el laplaciaco equivale a la divergencia del gradiente: &lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; &lt;br /&gt;
(\Delta f = \nabla \cdot \nabla f = div \left (\nabla f) \right) &lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Por otro lado, sabemos que en coordenadas polares: &lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;x = ρ cos \theta \\&lt;br /&gt;
             y = ρ  sen \theta&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\bar{g_ρ } = cos \theta \bar{i} + sin \theta  \bar{j} \\&lt;br /&gt;
              \bar{g_\theta } = - ρ  sin \theta \bar{i} + ρ cos \theta \bar{j} &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;&lt;br /&gt;
G =&lt;br /&gt;
\left(&lt;br /&gt;
\begin{array}{cc}&lt;br /&gt;
1&amp;amp; 0 \\&lt;br /&gt;
0 &amp;amp; ρ ^{2} \\&lt;br /&gt;
\end{array}&lt;br /&gt;
\right);&lt;br /&gt;
\text {donde la raiz del determinante es} \sqrt{g} = ρ&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Como indica el enunciado, al sustituir la Ley de Darcy en la ecuación de conservación de la masa obtenemos y dividir entre S, teniendo en cuenta que el divergente del gradiente es el laplaciano como hemos indicado al principio de este apartado, obtenemos la ecuación (1): &amp;lt;math&amp;gt; \frac{∂h}{∂t} - \frac{k}{S}∆h = 0 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
En esta ecuación queda por desarrollar el Laplaciano de h. &lt;br /&gt;
Partiremos de la función h(ρ,θ), de la cual calcularemos primero el gradiente:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \nabla h = \frac{\partial h}{\partial \rho}\hat{\rho} + \frac{\partial h}{\partial \rho}\hat{\theta} =  \frac{\partial h}{\partial \rho}\bar{\rho} + \frac{1}{\rho^{2}} \frac{\partial h}{\partial \rho}\bar{\theta}  &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
teniendo en cuenta que &amp;lt;math&amp;gt;\bar{g^{i} } = \frac{\bar{g_i } }{ | \bar{g_i } | ^{2} } &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Ahora hacemos el divergente del gradiente anterior y obtenemos el Laplaciano en coordenadas polares:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;math&amp;gt;&lt;br /&gt;
 \Delta h = div(∇h) &lt;br /&gt;
= {1 \over \rho} {\partial \over \partial \rho}&lt;br /&gt;
  \left( \rho {\partial h \over \partial \rho} \right) &lt;br /&gt;
+ {1 \over \rho^2} {\partial^2 h \over \partial \theta^2}&lt;br /&gt;
= {1 \over \rho} {\partial h \over \partial \rho} &lt;br /&gt;
+ {\partial^2 h \over \partial \rho^2}&lt;br /&gt;
+ {1 \over \rho^2} {\partial^2 h \over \partial \theta^2}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Si consideramos que, debido a la simetría del problema, h sólo depende de su distancia al pozo, entonces obtenemos la función radial h(ρ), que nos permite simplificar el Laplaciano del modo siguiente:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;math&amp;gt;&lt;br /&gt;
 \Delta h = div(∇h) &lt;br /&gt;
= {1 \over \rho} {\partial h \over \partial \rho} &lt;br /&gt;
+ {\partial^2 h \over \partial \rho^2}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== Obtención de la ecuación====&lt;br /&gt;
&lt;br /&gt;
Para poder resolver la ecuación anterior y que el resultado sea único, hemos de establecer condiciones iniciales y de contorno.&lt;br /&gt;
&lt;br /&gt;
Las condiciones de contorno serán dos pues aparece la derivada segunda de la posición: &amp;lt;math&amp;gt; h(\rho_0 , t) = h_p \\&lt;br /&gt;
                                                                                                                                                                  h(20,t) = h_0 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
La condición inicial será única pues sólo aparece una derivada de primer orden en tiempo en nuestra ecuación: &amp;lt;math&amp;gt; h(\rho,0) = h_0 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
De este modo la ecuación resultante será:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \left\{\begin{matrix}&lt;br /&gt;
\frac{\partial h}{\partial t} - \frac{k}{s} (\frac{1}{\rho}  \frac{\partial h}{\partial \rho} + \frac{\partial^2 h}{\partial \rho^2})= 0 &amp;amp; \rho \epsilon (\rho_{0}, 2c) &amp;amp; \theta \epsilon (0, 2\Pi ) &amp;amp; t &amp;gt; 0 \\ &lt;br /&gt;
h(\rho_{0},t) = h_{p};   h(20, t)= h_{0} \\ &lt;br /&gt;
h(\rho, 0) = h_{0} &lt;br /&gt;
\end{matrix}\right. &amp;lt;/math&amp;gt; &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==== Resolución por método de diferencias finitas ====&lt;br /&gt;
&lt;br /&gt;
Suponiendo &amp;lt;math&amp;gt;ρ_0 =0.5m&amp;lt;/math&amp;gt;, &amp;lt;math&amp;gt;h_0 =45m&amp;lt;/math&amp;gt;, &amp;lt;math&amp;gt;hp =34&amp;lt;/math&amp;gt;, D=10−2, &amp;lt;math&amp;gt;(ρ,0)=h_0&amp;lt;/math&amp;gt;; y tomando  ∆ρ = 0.1 y ∆t = ∆ρ. Vamos a resolver la ecuación anterior por el método de diferencias finitas, usando el Método de Heun para realizar la aproximación en tiempo.&lt;br /&gt;
&lt;br /&gt;
Primero, sustituyendo los datos anteriores en la ecuación, llegamos a:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \left\{\begin{matrix}&lt;br /&gt;
\frac{\partial h}{\partial t} - 10^{2} (\frac{1}{\rho}  \frac{\partial h}{\partial \rho} + \frac{\partial^2 h}{\partial \rho^2})= 0 &amp;amp; \rho \epsilon (0.5, 20) &amp;amp; \theta \epsilon (0, 2\Pi ) &amp;amp; t &amp;gt; 0 \\ &lt;br /&gt;
h(0.5,t) = 34;   h(20, t)= 45 \\ &lt;br /&gt;
h(\rho, 0) = 45&lt;br /&gt;
\end{matrix}\right. &amp;lt;/math&amp;gt; &lt;br /&gt;
&lt;br /&gt;
Aplicando el método de las diferencias finitas llegamos al siguiente código:&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
&lt;br /&gt;
%TRPRIMERA FASE. ESPACIO&lt;br /&gt;
&lt;br /&gt;
a=0.5; b=20; %Condiciones de contorno&lt;br /&gt;
drho=0.1; N=(b-a)/drho; %División del intervalo&lt;br /&gt;
&lt;br /&gt;
rho=a+drho:drho:b-drho; %Sólo nodos interiores&lt;br /&gt;
&lt;br /&gt;
%Creamos las matrices&lt;br /&gt;
&lt;br /&gt;
L=diag(ones(1,N-2),1)-diag(ones(1,N-2),-1);&lt;br /&gt;
A=diag(1./rho);&lt;br /&gt;
L=10^(-2)*(1/(2*drho))*A*L;&lt;br /&gt;
&lt;br /&gt;
K=-2*diag(ones(1,N-1))+diag(ones(1,N-2),1)+diag(ones(1,N-2),-1);&lt;br /&gt;
K=10^(-2)*(1/drho^2)*K; &lt;br /&gt;
&lt;br /&gt;
F=zeros(N-1,1);&lt;br /&gt;
F(1,1)=10^(-2)*(-17/(rho(1)*drho)+34/drho^2);&lt;br /&gt;
F(N-1,1)=10^(-2)*(45/(rho(N-1)*2*drho)+45/drho^2);&lt;br /&gt;
&lt;br /&gt;
%SEGUDA FASE. TIEMPO&lt;br /&gt;
&lt;br /&gt;
H=ones(1,length(rho)); H=H*45; H=H';&lt;br /&gt;
dt=drho; T=10; t=0:dt:T;&lt;br /&gt;
h0=34; hN=45;&lt;br /&gt;
sol=[h0 H' hN];&lt;br /&gt;
&lt;br /&gt;
for j=1:length(t)-1 &lt;br /&gt;
    &lt;br /&gt;
    %Método de Heun&lt;br /&gt;
    k1=F+(K+L)*H;&lt;br /&gt;
    k2=F+(K+L)*(H+k1*dt);&lt;br /&gt;
    H=H+(dt/2)*(k1+k2);&lt;br /&gt;
 &lt;br /&gt;
    sol(j+1,:)=[h0 H' hN]; %Salvamos las solución, incluimos los extremos&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
rho1=a:drho:b; %Incluimos los nodos exteriores&lt;br /&gt;
&lt;br /&gt;
[rr,tt]=meshgrid(rho1,t);&lt;br /&gt;
surf(rr,tt,sol); %Dibujamos la solución&lt;br /&gt;
title('Nivel Piezométrico. Método Diferencias finitas con Heun en tiempo.')&lt;br /&gt;
xlabel('Distancia radial al centro del pozo.')&lt;br /&gt;
ylabel('Tiempo.')&lt;br /&gt;
zlabel('Nivel piezométrico.')&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
Mediante este código obtenemos la siguiente gráfica:&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Grafica npiezometrico.jpg|500px|thumb|best|Gráfica Nivel Piezométrico aproximada con el Método de Diferencias Finitas con Heun en tiempo.]]&lt;br /&gt;
&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Ahora dibujaremos la gráfica mediante los métodos de Euler implícito y trapecio y compararemos los resultados obtenidos.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Sobre el programa anterior cambiaremos las líneas correspondientes al método de Heun.&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* Método de Euler implícito:&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;math&amp;gt; \left\{\begin{matrix}&lt;br /&gt;
y_{0}\\&lt;br /&gt;
y_{n+1}=y_{n} + hf(t_{n+1},y_{n+1})\\&lt;br /&gt;
\end{matrix}\right. &amp;lt;/math&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
&lt;br /&gt;
for j=1:length(t)-1 &lt;br /&gt;
    &lt;br /&gt;
    %Método de Euler implícito&lt;br /&gt;
    &lt;br /&gt;
    H=(eye(N-1)-dt*(K+L))\(H+(F*dt)); &lt;br /&gt;
 &lt;br /&gt;
    sol(j+1,:)=[h0 H' hN]; %Salvamos las solución, incluimos los extremos&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
rho1=a:drho:b; %Incluimos los nodos exteriores&lt;br /&gt;
&lt;br /&gt;
[rr,tt]=meshgrid(rho1,t);&lt;br /&gt;
surf(rr,tt,sol); %Dibujamos la solución&lt;br /&gt;
title('Nivel Piezométrico. Método Diferencias finitas con Euler en tiempo.')&lt;br /&gt;
xlabel('Distancia radial al centro del pozo.')&lt;br /&gt;
ylabel('Tiempo.')&lt;br /&gt;
zlabel('Nivel piezométrico.')&lt;br /&gt;
&lt;br /&gt;
}}&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* Método del Trapecio:&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;math&amp;gt; \left\{\begin{matrix}&lt;br /&gt;
y_{0}\\&lt;br /&gt;
y_{n+1}=y_{n} + \frac{h}{2}f((t_{n},y_{n}+f(t_{n+1},y_{n+1}))\\&lt;br /&gt;
\end{matrix}\right. &amp;lt;/math&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
for j=1:length(t)-1 &lt;br /&gt;
    &lt;br /&gt;
    %Método del trapecio&lt;br /&gt;
    k1=F+(K+L)*H;&lt;br /&gt;
    k2=F+(K+L)*(H+k1*dt); &lt;br /&gt;
    H=(eye(N-1)-(dt/2)*(K+L))\(H+dt*F+(dt/2)*(K+L)*H);&lt;br /&gt;
 &lt;br /&gt;
    sol(j+1,:)=[h0 H' hN]; %Salvamos las solución, incluimos los extremos&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
rho1=a:drho:b; %Incluimos los nodos exteriores&lt;br /&gt;
&lt;br /&gt;
[rr,tt]=meshgrid(rho1,t);&lt;br /&gt;
surf(rr,tt,sol); %Dibujamos la solución&lt;br /&gt;
title('Nivel Piezométrico. Método Diferencias finitas con trapecio en tiempo.')&lt;br /&gt;
xlabel('Distancia radial al centro del pozo.')&lt;br /&gt;
ylabel('Tiempo.')&lt;br /&gt;
zlabel('Nivel piezométrico.')&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
Como podemos ver a continuación las tres gráficas resultantes son prácticamente iguales por lo que los tres métodos hacen una aproximación similar.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
[[Archivo:Trapecio12.png|500px|thumb|left|Gráfica Nivel Piezométrico aproximada con el Método de Diferencias Finitas con Trapecio en tiempo.]]&lt;br /&gt;
[[Archivo:Euler12.png|500px|thumb|right|Gráfica Nivel Piezométrico aproximada con el Método de Diferencias Finitas con Euler Implícito en tiempo.]]&lt;br /&gt;
&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== Comportamiento del nivel piezométrico con &amp;lt;math&amp;gt; \rho &amp;lt;/math&amp;gt; constante ====&lt;br /&gt;
&lt;br /&gt;
Ahora supondremos que &amp;lt;math&amp;gt; \rho &amp;lt;/math&amp;gt; es constante y que su valor es 2 y dibujaremos el comportamiento del nivel piezométrico en una gráfica 2D nivel piezométrico-tiempo.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Nuevamente utilizando el programa anterior con el  método de Heun:&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Rho2.png|500px|thumb|best|Gráfica Nivel Piezométrico-tiempo para &amp;lt;math&amp;gt; \rho =2 &amp;lt;/math&amp;gt; para T=10.]]&lt;br /&gt;
[[Archivo:Rho1000.png|500px|thumb|best|Gráfica Nivel Piezométrico-tiempo para &amp;lt;math&amp;gt; \rho =2 &amp;lt;/math&amp;gt; para T=1000.]]&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
&lt;br /&gt;
%PRIMERA FASE. ESPACIO&lt;br /&gt;
&lt;br /&gt;
a=0.5; b=20; %Condiciones de contorno&lt;br /&gt;
drho=0.1; N=(b-a)/drho; %División del intervalo&lt;br /&gt;
&lt;br /&gt;
rho=a+drho:drho:b-drho; %Sólo nodos interiores&lt;br /&gt;
&lt;br /&gt;
%Creamos las matrices&lt;br /&gt;
&lt;br /&gt;
L=diag(ones(1,N-2),1)-diag(ones(1,N-2),-1);&lt;br /&gt;
A=diag(1./rho);&lt;br /&gt;
L=10^(-2)*(1/(2*drho))*A*L;&lt;br /&gt;
&lt;br /&gt;
K=-2*diag(ones(1,N-1))+diag(ones(1,N-2),1)+diag(ones(1,N-2),-1);&lt;br /&gt;
K=10^(-2)*(1/drho^2)*K; &lt;br /&gt;
&lt;br /&gt;
F=zeros(N-1,1);&lt;br /&gt;
F(1,1)=10^(-2)*(-17/(rho(1)*drho)+34/drho^2);&lt;br /&gt;
F(N-1,1)=10^(-2)*(45/(rho(N-1)*2*drho)+45/drho^2);&lt;br /&gt;
&lt;br /&gt;
%SEGUDA FASE. TIEMPO&lt;br /&gt;
&lt;br /&gt;
H=ones(1,length(rho)); H=H*45; H=H';&lt;br /&gt;
dt=drho; &lt;br /&gt;
T=10 &lt;br /&gt;
%Comprobamos también la solución para un tiempo mayor &lt;br /&gt;
%T=1000&lt;br /&gt;
t=0:dt:T;&lt;br /&gt;
h0=34; hN=45;&lt;br /&gt;
sol=[h0 H' hN];&lt;br /&gt;
&lt;br /&gt;
for j=1:length(t)-1 &lt;br /&gt;
    &lt;br /&gt;
    %Método de Heun&lt;br /&gt;
    k1=F+(K+L)*H;&lt;br /&gt;
    k2=F+(K+L)*(H+k1*dt);&lt;br /&gt;
    H=H+(dt/2)*(k1+k2);&lt;br /&gt;
 &lt;br /&gt;
    sol(j+1,:)=[h0 H' hN]; %Salvamos las solución, incluimos los extremos&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
rho1=a:drho:b; %Incluimos los nodos exteriores&lt;br /&gt;
&lt;br /&gt;
m=sol(:,rho==2); %Vector que incluye la solución en tiempo para rho=2&lt;br /&gt;
&lt;br /&gt;
plot(t,m);&lt;br /&gt;
&lt;br /&gt;
title('Comportamiento del nivel piezométrico en el tiempo para p=2')&lt;br /&gt;
xlabel('Tiempo')&lt;br /&gt;
ylabel('Nivel piezométrico.')&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
La primera gráfica muestra que para tiempos pequeños la variación del nivel piezométrico es muy pequeña (del orden de 0,10/0,15 m), aún así como observamos en la segunda gráfica a medida que avanzamos en el tiempo la variación del nivel disminuye aún más ya que la curva está cada vez menos inclinada.&lt;br /&gt;
&lt;br /&gt;
==== Variación del nivel piezométrico en tiempos grandes ====&lt;br /&gt;
Ahora vamos a comprobar que la variación del nivel piezométrico para tiempos elevados (T=5000) es mínima.&lt;br /&gt;
Para ello dibujaremos las soluciones cada 100 horas de en el intervalo temporal [1; 5000], en&lt;br /&gt;
una misma gráfica.&lt;br /&gt;
[[Archivo:Tiemposg2.png|marco|derecha|Nivel piezométrico para tiempos grandes]]&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
%PRIMERA FASE. ESPACIO&lt;br /&gt;
&lt;br /&gt;
a=0.5; b=20; %Condiciones de contorno&lt;br /&gt;
drho=0.1; N=(b-a)/drho; %División del intervalo&lt;br /&gt;
&lt;br /&gt;
rho=a+drho:drho:b-drho; %Sólo nodos interiores&lt;br /&gt;
&lt;br /&gt;
%Creamos las matrices&lt;br /&gt;
&lt;br /&gt;
L=diag(ones(1,N-2),1)-diag(ones(1,N-2),-1);&lt;br /&gt;
A=diag(1./rho);&lt;br /&gt;
L=10^(-2)*(1/(2*drho))*A*L;&lt;br /&gt;
&lt;br /&gt;
K=-2*diag(ones(1,N-1))+diag(ones(1,N-2),1)+diag(ones(1,N-2),-1);&lt;br /&gt;
K=10^(-2)*(1/drho^2)*K; &lt;br /&gt;
&lt;br /&gt;
F=zeros(N-1,1);&lt;br /&gt;
F(1,1)=10^(-2)*(-17/(rho(1)*drho)+34/drho^2);&lt;br /&gt;
F(N-1,1)=10^(-2)*(45/(rho(N-1)*2*drho)+45/drho^2);&lt;br /&gt;
&lt;br /&gt;
%SEGUDA FASE. TIEMPO&lt;br /&gt;
&lt;br /&gt;
H=ones(1,length(rho)); H=H*45; H=H';&lt;br /&gt;
dt=0.1; T=5000; t=0:dt:T;&lt;br /&gt;
h0=34; hN=45;&lt;br /&gt;
sol=[h0 H' hN];&lt;br /&gt;
&lt;br /&gt;
figure(1);&lt;br /&gt;
hold on;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
for j=1:length(t)-1 &lt;br /&gt;
    &lt;br /&gt;
    %Método de Heun&lt;br /&gt;
    k1=F+(K+L)*H;&lt;br /&gt;
    k2=F+(K+L)*(H+k1*dt);&lt;br /&gt;
    H=H+(dt/2)*(k1+k2);&lt;br /&gt;
 &lt;br /&gt;
    sol(j+1,:)=[h0 H' hN]; %Salvamos las solución, incluimos los extremos&lt;br /&gt;
    &lt;br /&gt;
 if rem(t(j),100)==0; &lt;br /&gt;
    &lt;br /&gt;
    rho1=a:drho:b; %Incluimos los nodos exteriores&lt;br /&gt;
  &lt;br /&gt;
  plot(rho1,sol(j,:)) %pintamos la solución cada 100 horas&lt;br /&gt;
  &lt;br /&gt;
  title('Variación del nivel piezométrico para tiempos grandes')&lt;br /&gt;
  pause(1)&lt;br /&gt;
&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
end&lt;br /&gt;
}}&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Como se puede observar en la gráfica según vamos avanzando en el tiempo las curvas están más juntas lo que quiere decir que la variación del nivel es cada vez menor aproximándose a un régimen estacionario.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Trabajo21.jpg|marco|derecha|Nivel piezométrico estacionario]]&lt;br /&gt;
&lt;br /&gt;
====Problema estacionario====&lt;br /&gt;
Como hemos visto en el apartado anterior para tiempos grandes el nivel piezométrico se mantiene practicamente constante a lo largo del tiempo, esto es debido a que se establece un equilibrio entre el caudal de agua extraida del acuifero y la migración de aguas desde los puntos más alejados del pozo hacia este.&lt;br /&gt;
Por lo tanto se verifica que:&lt;br /&gt;
 &amp;lt;math&amp;gt;\frac{\partial h}{\partial t}=0&amp;lt;/math&amp;gt;&lt;br /&gt;
Y por lo tanto el nivel piezométrico se puede aproximar por:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \left\{\begin{matrix}&lt;br /&gt;
- \frac{k}{s} (\frac{1}{\rho}  \frac{\partial h}{\partial \rho} + \frac{\partial^2 h}{\partial \rho^2})= 0 &amp;amp; \rho \epsilon (1, 20) &amp;amp; \theta \epsilon (0, 2\Pi ) &amp;amp; 0 &amp;lt; t &amp;lt; 5000 \\ &lt;br /&gt;
h(1,t) = 35;    h(20, t)= 40 \\ &lt;br /&gt;
h(\rho, 0) = 40 &lt;br /&gt;
\end{matrix}\right. &amp;lt;/math&amp;gt;&lt;br /&gt;
Resolvemos por diferencias finitas:&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
    %datos&lt;br /&gt;
    t=5000;&lt;br /&gt;
    l=20;&lt;br /&gt;
    D=0.01;&lt;br /&gt;
    hp=35;&lt;br /&gt;
    ho=40;&lt;br /&gt;
    %discretización&lt;br /&gt;
    s=0.1;&lt;br /&gt;
    x0=1;&lt;br /&gt;
    x=x0:s:l;&lt;br /&gt;
    xint=x0+s:s:l-s;&lt;br /&gt;
    N=length(x)-2; &lt;br /&gt;
    %construimos las matrices para el método de las diferencias finitas&lt;br /&gt;
    K=(1/s^2)*(diag(2*ones(1,N))-diag(ones(1,N-1),1)-diag(ones(1,N-1),-1));&lt;br /&gt;
    A=(1/(s*2))*(diag(ones(1,N-1),1)-diag(ones(1,N-1),-1));&lt;br /&gt;
    A=diag(1./xint)*A;&lt;br /&gt;
    h0=(40*ones(N,1));&lt;br /&gt;
    dt=200; &lt;br /&gt;
    t=0:dt:t;&lt;br /&gt;
    M=length(t)-1;&lt;br /&gt;
    F=(zeros(N,1));&lt;br /&gt;
    F(1)=D*((hp/s^2)-(hp/(2*s)*1/xint(1)));&lt;br /&gt;
    F(N)=D*((ho/s^2)+ho/(s*2*xint(N)));&lt;br /&gt;
    H(1,:)=[40;h0;40]'; &lt;br /&gt;
    h=h0;&lt;br /&gt;
    for n=1:M&lt;br /&gt;
      h=(D)*(K-A)\((F)); %utilizamos el comando backslash para resolver el sistema de ecuaciones&lt;br /&gt;
      H(n+1,:)=[hp h' ho];&lt;br /&gt;
    end&lt;br /&gt;
    %mallado y representación&lt;br /&gt;
    [X,T]=meshgrid(x,t);&lt;br /&gt;
    surf(X,T,H)&lt;br /&gt;
    xlabel('Distancia (metros)');&lt;br /&gt;
    ylabel('Tiempo (horas)');&lt;br /&gt;
    zlabel('Nivel piezométrico (metros)')&lt;br /&gt;
}}&lt;br /&gt;
Efectivamente, como podemos comprobar en la gráfica, la solución es independiente del tiempo salvo para tiempos pequeños en los cuales no queda muy bien definida&lt;br /&gt;
&lt;br /&gt;
====Capacidad de recuperación del acuífero====&lt;br /&gt;
En este apartado queremos calcular una ley que nos describa el comportamiento del acuífero e el caso de que impermeabilizásemos las paredes del pozo partiendo del estado estacionario anterior, esto significaría que el fujo de agua en los bordes del pozo sería nulo y el nivel piezométrico iría variando hasta llegar a otro estado estacionario.&lt;br /&gt;
El estado estacionarioque tenderá a alcanzar el fluido será el inicial, ya que al impermeabilizar las paredes volvemos al caso del acuífero confinado y por ello es nivel piezométrico quedará constante a lo largo del tiempo y de la extensión del acuífero.&lt;br /&gt;
La condición frontera a imponer será que el flujo de agua en r0 será 0, ya que estará impermeabilizado. Esto lo podemos plasmar diciendo que la parcial del nivel piezométrico con respecto a ro en r0 es 0, ya que un aislamiento impide el flujo de líquido, y si el flujo de líquido es nulo el nivel piezométrico no varía.&lt;br /&gt;
&amp;lt;math&amp;gt;\frac{\partial h}{\partial \rho}=0&amp;lt;/math&amp;gt;&lt;br /&gt;
====Método de Fourier====&lt;br /&gt;
Ahora suponemos que el radio del pozo es despreciable y que una vez extraido el agua el pozo se cierra quedando el acuifero de nuevo homogéneo. En este caso tomaremos la región ρ &amp;lt; 20. Nuestro objetivo es aproximar las soluciones usando el método de Fourier. De nuevo supondremos que la solución sólo depende de ρ y t, y tomaremos ahora como condición frontera h(20, t) = 40.&lt;br /&gt;
Vamos a considerar el sistema de ecuaciones para h(ρ,t)=h(ρ,t)-40:&lt;br /&gt;
 &amp;lt;math&amp;gt; \left\{\begin{matrix}&lt;br /&gt;
\frac{\partial h}{\partial t} - D (\frac{1}{\rho}  \frac{\partial h}{\partial \rho} + \frac{\partial^2 h}{\partial \rho^2})= 0 &amp;amp; \rho \epsilon (0, 20) &amp;amp; \theta \epsilon (0, 2\Pi ) &amp;amp; t &amp;gt; 0 \\ &lt;br /&gt;
\frac{\partial h}{\partial \rho}(0,t) = 0;   h(20, t)= 0 \\ &lt;br /&gt;
\end{matrix}\right. &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Obtenemos el problema de autovalores asociado al sistema anterior con el método de separación de variables:&lt;br /&gt;
 &amp;lt;math&amp;gt; \left\{\begin{matrix}&lt;br /&gt;
D (\frac{X'(\rho)}{\rho} + X''(\rho))+ λX(\rho)=0 \\&lt;br /&gt;
X'(0) = 0;   X(20)= 0 \\ &lt;br /&gt;
&lt;br /&gt;
\end{matrix}\right. &amp;lt;/math&amp;gt;&lt;br /&gt;
[[Archivo:Marta1.jpg|marco|derecha]]&lt;br /&gt;
Sabemos que los problemas de esta forma tienen como solución la función de Bessel de primera especie que forma una familia de autofunciones: &amp;lt;math&amp;gt;Ψ(\rho)=J_0·(\rho\sqrt{λ})&amp;lt;/math&amp;gt;. Estas se anulan cuando &amp;lt;math&amp;gt;(\rho\sqrt{λ})&amp;lt;/math&amp;gt; se iguala a 2.4048, 5.5201, 8.6537, 11.7915 y 14.9309, siendo estos los 5 primeros ceros de la función de Bessel. De esta manera y tomando ρ=20 obtenemos los 5 primeros autovalores:&lt;br /&gt;
&amp;lt;math&amp;gt;(20\sqrt{λ})=2.4048&amp;lt;/math&amp;gt;Haciendo la operación anterior para los 5 ceros obtenemos los siguientes autovalores: 0.0145, 0.0762, 0.1872, 0.3476, 0.5573.&lt;br /&gt;
Ahora vamos a dibujar las 5 primeras autofunciones utilizando la función besselj:&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
a1=0.0145;&lt;br /&gt;
a2=0.0762;&lt;br /&gt;
a3=0.1872;&lt;br /&gt;
a4=0.3476;&lt;br /&gt;
a5=0.5575;&lt;br /&gt;
r=0:0.02:20;&lt;br /&gt;
F1=besselj(0,r.*(sqrt(a1))); &lt;br /&gt;
F2=besselj(0,r.*(sqrt(a2)));&lt;br /&gt;
F3=besselj(0,r.*(sqrt(a3)));&lt;br /&gt;
F4=besselj(0,r.*(sqrt(a4)));&lt;br /&gt;
F5=besselj(0,r.*(sqrt(a5)));&lt;br /&gt;
hold on&lt;br /&gt;
plot(r,F1)&lt;br /&gt;
plot(r,F2,'r')&lt;br /&gt;
plot(r,F3,'g')	&lt;br /&gt;
plot(r,F4,'c')&lt;br /&gt;
plot(r,F5,'y')&lt;br /&gt;
hold off&lt;br /&gt;
}}&lt;br /&gt;
[[Archivo:Marta2.jpg|marco|derecha]]&lt;br /&gt;
Aproximamos ahora la solución de la ecuación tomando como dato inicial es&amp;lt;math&amp;gt; h (\rho,0)= -log \frac{|\rho + 0.01|}{20.01} &amp;lt;/math&amp;gt; y usando 5 términos del desarrollo de Fourier, teniendo en cuenta que las autofunciones son ortogonales respecto al producto escalar: &amp;lt;math&amp;gt; (f(\rho),g(\rho)) = \int_{0}^{20} \rho f(\rho) g(\rho) \cdot dx &amp;lt;/math&amp;gt;&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
x0=0; L=20;&lt;br /&gt;
c0=[2.4048,5.5201,8.6537,11.7915,14.9309]; %Vector de ceros de la función de Bessel&lt;br /&gt;
A=(c0./20).^2; %Vector de autovalores&lt;br /&gt;
K=5; %Número de términos del desarrollo de Fourier&lt;br /&gt;
x=x0:0.1:L;&lt;br /&gt;
N=length(x)-1;&lt;br /&gt;
J=zeros(N+1,K);&lt;br /&gt;
z=zeros(N+1,K);&lt;br /&gt;
t0=0; tf=500;&lt;br /&gt;
t=t0:0.1:tf;&lt;br /&gt;
[xx,tt]=meshgrid(x,t);&lt;br /&gt;
h=0;&lt;br /&gt;
for k=1:K&lt;br /&gt;
   z(:,k)=(x)'*sqrt(A(k));&lt;br /&gt;
   J(:,k)=besselj(0,z(:,k));&lt;br /&gt;
   h0=-log((abs(x+0.1))/20.01); %Condición inicial&lt;br /&gt;
   c(k)=trapz(x,x'.*h0'.*J(:,k))/trapz(x,x'.*J(:,k).*J(:,k)); %Coeficientes de Fourier&lt;br /&gt;
   h=h+c(k)*exp(-A(k)*t)'*J(:,k)';&lt;br /&gt;
end&lt;br /&gt;
surf(xx,tt,h)&lt;br /&gt;
title('Aproximación de la solución')&lt;br /&gt;
}}&lt;/div&gt;</summary>
		<author><name>Marta Cavero</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Nivel_piezom%C3%A9trico_de_un_acu%C3%ADfero_confinado_(A5)&amp;diff=30059</id>
		<title>Nivel piezométrico de un acuífero confinado (A5)</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Nivel_piezom%C3%A9trico_de_un_acu%C3%ADfero_confinado_(A5)&amp;diff=30059"/>
				<updated>2015-05-14T14:41:26Z</updated>
		
		<summary type="html">&lt;p&gt;Marta Cavero: /* Método de Fourier */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;br /&gt;
==== Introducción ====&lt;br /&gt;
&lt;br /&gt;
Consideramos un acuífero confinado entre dos capas de terreno impermeables horizontales. Llamaremos h(x, y) al nivel piezométrico del acuífero, definido por la altura que alcanzaría el agua si hiciéramos un sondeo en el punto (x, y). Obviamente este valor depende de la presión a la que se encuentra el agua confinada en el acuífero. Supondremos&lt;br /&gt;
que el acuífero es un medio poroso saturado de agua que ocupa una región infinita y está en equilibrio de manera que &amp;lt;math&amp;gt;h(x, y) = h_0&amp;lt;/math&amp;gt; constante para todo (x, y) ∈ &amp;lt;math&amp;gt;IR^{2}&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Sobre el acuifero se construye un pozo de sección circular y radio&amp;lt;math&amp;gt; ρ_0&amp;lt;/math&amp;gt; para extraer agua. La presencia del pozo hace que el nivel piezométrico cambie. Dada la simetría del problema podemos suponer que h(x, y) sólo va a depender de la distancia al pozo. Si tomamos coordenadas cilíndricas de forma que el eje OZ coincida con el eje de simetría del pozo, entonces h = h(ρ) donde &amp;lt;math&amp;gt;ρ = \sqrt{x^{2} + y^{2}}&amp;lt;/math&amp;gt; . Trabajaremos por tanto en coordenadas polares en el plano (ρ, θ).&lt;br /&gt;
&lt;br /&gt;
Las ecuaciones que permiten conocer h(ρ) son la ecuación de conservación de la masa:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; S = \frac{∂h}{∂t} + div q = 0 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
junto con la ley de Darcy&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; q = −K∇h &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
que es una ley experimental que modela el flujo de agua en un medio poroso. La ley de Darcy establece que el flujo de agua q a través de un medio poroso es proporcional a la diferencia de presión, que a su vez se puede escribir en términos del gradiente del nivel piezométrico en cada punto. La constante K se deduce experimentalmente para cada material y se conoce como la conductividad hidráulica o permeabilidad. Cuanto mayor es la constante K mayor es el flujo de agua provocado por un cambio&lt;br /&gt;
de presión. La ley de Darcy proporciona una buena aproximación del comportamiento del agua en un medio poroso siempre que este sea homogéneo e isótropo.&lt;br /&gt;
&lt;br /&gt;
La constante S en la ley de conservación de la masa se conoce como almacenamiento específico y se interpreta como la cantidad de agua que libera el acuífero al descender el nivel piezométrico en una unidad, por unidad de volumen.&lt;br /&gt;
&lt;br /&gt;
Combinando las ecuaciones de conservación de la masa con la ley de Darcy, obtenemos la ecuación:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \frac{∂h}{∂t} - D∆h = 0, ρ &amp;gt; ρ_0, θ ∈ (0, 2π), t &amp;gt; 0, (1) &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
donde D = K/S es la difusividad hidráulica que supondremos constante.&lt;br /&gt;
&lt;br /&gt;
==== Deducción de la fórmula ====&lt;br /&gt;
&lt;br /&gt;
En este apartado buscamos demostrar la ecuación (1) como combinación de la ecuación de conservación de masas y la Ley de Darcy.&lt;br /&gt;
&lt;br /&gt;
Por un lado sabemos que el laplaciaco equivale a la divergencia del gradiente: &lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; &lt;br /&gt;
(\Delta f = \nabla \cdot \nabla f = div \left (\nabla f) \right) &lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Por otro lado, sabemos que en coordenadas polares: &lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;x = ρ cos \theta \\&lt;br /&gt;
             y = ρ  sen \theta&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\bar{g_ρ } = cos \theta \bar{i} + sin \theta  \bar{j} \\&lt;br /&gt;
              \bar{g_\theta } = - ρ  sin \theta \bar{i} + ρ cos \theta \bar{j} &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;&lt;br /&gt;
G =&lt;br /&gt;
\left(&lt;br /&gt;
\begin{array}{cc}&lt;br /&gt;
1&amp;amp; 0 \\&lt;br /&gt;
0 &amp;amp; ρ ^{2} \\&lt;br /&gt;
\end{array}&lt;br /&gt;
\right);&lt;br /&gt;
\text {donde la raiz del determinante es} \sqrt{g} = ρ&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Como indica el enunciado, al sustituir la Ley de Darcy en la ecuación de conservación de la masa obtenemos y dividir entre S, teniendo en cuenta que el divergente del gradiente es el laplaciano como hemos indicado al principio de este apartado, obtenemos la ecuación (1): &amp;lt;math&amp;gt; \frac{∂h}{∂t} - \frac{k}{S}∆h = 0 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
En esta ecuación queda por desarrollar el Laplaciano de h. &lt;br /&gt;
Partiremos de la función h(ρ,θ), de la cual calcularemos primero el gradiente:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \nabla h = \frac{\partial h}{\partial \rho}\hat{\rho} + \frac{\partial h}{\partial \rho}\hat{\theta} =  \frac{\partial h}{\partial \rho}\bar{\rho} + \frac{1}{\rho^{2}} \frac{\partial h}{\partial \rho}\bar{\theta}  &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
teniendo en cuenta que &amp;lt;math&amp;gt;\bar{g^{i} } = \frac{\bar{g_i } }{ | \bar{g_i } | ^{2} } &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Ahora hacemos el divergente del gradiente anterior y obtenemos el Laplaciano en coordenadas polares:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;math&amp;gt;&lt;br /&gt;
 \Delta h = div(∇h) &lt;br /&gt;
= {1 \over \rho} {\partial \over \partial \rho}&lt;br /&gt;
  \left( \rho {\partial h \over \partial \rho} \right) &lt;br /&gt;
+ {1 \over \rho^2} {\partial^2 h \over \partial \theta^2}&lt;br /&gt;
= {1 \over \rho} {\partial h \over \partial \rho} &lt;br /&gt;
+ {\partial^2 h \over \partial \rho^2}&lt;br /&gt;
+ {1 \over \rho^2} {\partial^2 h \over \partial \theta^2}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Si consideramos que, debido a la simetría del problema, h sólo depende de su distancia al pozo, entonces obtenemos la función radial h(ρ), que nos permite simplificar el Laplaciano del modo siguiente:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;math&amp;gt;&lt;br /&gt;
 \Delta h = div(∇h) &lt;br /&gt;
= {1 \over \rho} {\partial h \over \partial \rho} &lt;br /&gt;
+ {\partial^2 h \over \partial \rho^2}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== Obtención de la ecuación====&lt;br /&gt;
&lt;br /&gt;
Para poder resolver la ecuación anterior y que el resultado sea único, hemos de establecer condiciones iniciales y de contorno.&lt;br /&gt;
&lt;br /&gt;
Las condiciones de contorno serán dos pues aparece la derivada segunda de la posición: &amp;lt;math&amp;gt; h(\rho_0 , t) = h_p \\&lt;br /&gt;
                                                                                                                                                                  h(20,t) = h_0 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
La condición inicial será única pues sólo aparece una derivada de primer orden en tiempo en nuestra ecuación: &amp;lt;math&amp;gt; h(\rho,0) = h_0 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
De este modo la ecuación resultante será:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \left\{\begin{matrix}&lt;br /&gt;
\frac{\partial h}{\partial t} - \frac{k}{s} (\frac{1}{\rho}  \frac{\partial h}{\partial \rho} + \frac{\partial^2 h}{\partial \rho^2})= 0 &amp;amp; \rho \epsilon (\rho_{0}, 2c) &amp;amp; \theta \epsilon (0, 2\Pi ) &amp;amp; t &amp;gt; 0 \\ &lt;br /&gt;
h(\rho_{0},t) = h_{p};   h(20, t)= h_{0} \\ &lt;br /&gt;
h(\rho, 0) = h_{0} &lt;br /&gt;
\end{matrix}\right. &amp;lt;/math&amp;gt; &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==== Resolución por método de diferencias finitas ====&lt;br /&gt;
&lt;br /&gt;
Suponiendo &amp;lt;math&amp;gt;ρ_0 =0.5m&amp;lt;/math&amp;gt;, &amp;lt;math&amp;gt;h_0 =45m&amp;lt;/math&amp;gt;, &amp;lt;math&amp;gt;hp =34&amp;lt;/math&amp;gt;, D=10−2, &amp;lt;math&amp;gt;(ρ,0)=h_0&amp;lt;/math&amp;gt;; y tomando  ∆ρ = 0.1 y ∆t = ∆ρ. Vamos a resolver la ecuación anterior por el método de diferencias finitas, usando el Método de Heun para realizar la aproximación en tiempo.&lt;br /&gt;
&lt;br /&gt;
Primero, sustituyendo los datos anteriores en la ecuación, llegamos a:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \left\{\begin{matrix}&lt;br /&gt;
\frac{\partial h}{\partial t} - 10^{2} (\frac{1}{\rho}  \frac{\partial h}{\partial \rho} + \frac{\partial^2 h}{\partial \rho^2})= 0 &amp;amp; \rho \epsilon (0.5, 20) &amp;amp; \theta \epsilon (0, 2\Pi ) &amp;amp; t &amp;gt; 0 \\ &lt;br /&gt;
h(0.5,t) = 34;   h(20, t)= 45 \\ &lt;br /&gt;
h(\rho, 0) = 45&lt;br /&gt;
\end{matrix}\right. &amp;lt;/math&amp;gt; &lt;br /&gt;
&lt;br /&gt;
Aplicando el método de las diferencias finitas llegamos al siguiente código:&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
&lt;br /&gt;
%TRPRIMERA FASE. ESPACIO&lt;br /&gt;
&lt;br /&gt;
a=0.5; b=20; %Condiciones de contorno&lt;br /&gt;
drho=0.1; N=(b-a)/drho; %División del intervalo&lt;br /&gt;
&lt;br /&gt;
rho=a+drho:drho:b-drho; %Sólo nodos interiores&lt;br /&gt;
&lt;br /&gt;
%Creamos las matrices&lt;br /&gt;
&lt;br /&gt;
L=diag(ones(1,N-2),1)-diag(ones(1,N-2),-1);&lt;br /&gt;
A=diag(1./rho);&lt;br /&gt;
L=10^(-2)*(1/(2*drho))*A*L;&lt;br /&gt;
&lt;br /&gt;
K=-2*diag(ones(1,N-1))+diag(ones(1,N-2),1)+diag(ones(1,N-2),-1);&lt;br /&gt;
K=10^(-2)*(1/drho^2)*K; &lt;br /&gt;
&lt;br /&gt;
F=zeros(N-1,1);&lt;br /&gt;
F(1,1)=10^(-2)*(-17/(rho(1)*drho)+34/drho^2);&lt;br /&gt;
F(N-1,1)=10^(-2)*(45/(rho(N-1)*2*drho)+45/drho^2);&lt;br /&gt;
&lt;br /&gt;
%SEGUDA FASE. TIEMPO&lt;br /&gt;
&lt;br /&gt;
H=ones(1,length(rho)); H=H*45; H=H';&lt;br /&gt;
dt=drho; T=10; t=0:dt:T;&lt;br /&gt;
h0=34; hN=45;&lt;br /&gt;
sol=[h0 H' hN];&lt;br /&gt;
&lt;br /&gt;
for j=1:length(t)-1 &lt;br /&gt;
    &lt;br /&gt;
    %Método de Heun&lt;br /&gt;
    k1=F+(K+L)*H;&lt;br /&gt;
    k2=F+(K+L)*(H+k1*dt);&lt;br /&gt;
    H=H+(dt/2)*(k1+k2);&lt;br /&gt;
 &lt;br /&gt;
    sol(j+1,:)=[h0 H' hN]; %Salvamos las solución, incluimos los extremos&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
rho1=a:drho:b; %Incluimos los nodos exteriores&lt;br /&gt;
&lt;br /&gt;
[rr,tt]=meshgrid(rho1,t);&lt;br /&gt;
surf(rr,tt,sol); %Dibujamos la solución&lt;br /&gt;
title('Nivel Piezométrico. Método Diferencias finitas con Heun en tiempo.')&lt;br /&gt;
xlabel('Distancia radial al centro del pozo.')&lt;br /&gt;
ylabel('Tiempo.')&lt;br /&gt;
zlabel('Nivel piezométrico.')&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
Mediante este código obtenemos la siguiente gráfica:&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Grafica npiezometrico.jpg|500px|thumb|best|Gráfica Nivel Piezométrico aproximada con el Método de Diferencias Finitas con Heun en tiempo.]]&lt;br /&gt;
&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Ahora dibujaremos la gráfica mediante los métodos de Euler implícito y trapecio y compararemos los resultados obtenidos.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Sobre el programa anterior cambiaremos las líneas correspondientes al método de Heun.&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* Método de Euler implícito:&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;math&amp;gt; \left\{\begin{matrix}&lt;br /&gt;
y_{0}\\&lt;br /&gt;
y_{n+1}=y_{n} + hf(t_{n+1},y_{n+1})\\&lt;br /&gt;
\end{matrix}\right. &amp;lt;/math&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
&lt;br /&gt;
for j=1:length(t)-1 &lt;br /&gt;
    &lt;br /&gt;
    %Método de Euler implícito&lt;br /&gt;
    &lt;br /&gt;
    H=(eye(N-1)-dt*(K+L))\(H+(F*dt)); &lt;br /&gt;
 &lt;br /&gt;
    sol(j+1,:)=[h0 H' hN]; %Salvamos las solución, incluimos los extremos&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
rho1=a:drho:b; %Incluimos los nodos exteriores&lt;br /&gt;
&lt;br /&gt;
[rr,tt]=meshgrid(rho1,t);&lt;br /&gt;
surf(rr,tt,sol); %Dibujamos la solución&lt;br /&gt;
title('Nivel Piezométrico. Método Diferencias finitas con Euler en tiempo.')&lt;br /&gt;
xlabel('Distancia radial al centro del pozo.')&lt;br /&gt;
ylabel('Tiempo.')&lt;br /&gt;
zlabel('Nivel piezométrico.')&lt;br /&gt;
&lt;br /&gt;
}}&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* Método del Trapecio:&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;math&amp;gt; \left\{\begin{matrix}&lt;br /&gt;
y_{0}\\&lt;br /&gt;
y_{n+1}=y_{n} + \frac{h}{2}f((t_{n},y_{n}+f(t_{n+1},y_{n+1}))\\&lt;br /&gt;
\end{matrix}\right. &amp;lt;/math&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
for j=1:length(t)-1 &lt;br /&gt;
    &lt;br /&gt;
    %Método del trapecio&lt;br /&gt;
    k1=F+(K+L)*H;&lt;br /&gt;
    k2=F+(K+L)*(H+k1*dt); &lt;br /&gt;
    H=(eye(N-1)-(dt/2)*(K+L))\(H+dt*F+(dt/2)*(K+L)*H);&lt;br /&gt;
 &lt;br /&gt;
    sol(j+1,:)=[h0 H' hN]; %Salvamos las solución, incluimos los extremos&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
rho1=a:drho:b; %Incluimos los nodos exteriores&lt;br /&gt;
&lt;br /&gt;
[rr,tt]=meshgrid(rho1,t);&lt;br /&gt;
surf(rr,tt,sol); %Dibujamos la solución&lt;br /&gt;
title('Nivel Piezométrico. Método Diferencias finitas con trapecio en tiempo.')&lt;br /&gt;
xlabel('Distancia radial al centro del pozo.')&lt;br /&gt;
ylabel('Tiempo.')&lt;br /&gt;
zlabel('Nivel piezométrico.')&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
Como podemos ver a continuación las tres gráficas resultantes son prácticamente iguales por lo que los tres métodos hacen una aproximación similar.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
[[Archivo:Trapecio12.png|500px|thumb|left|Gráfica Nivel Piezométrico aproximada con el Método de Diferencias Finitas con Trapecio en tiempo.]]&lt;br /&gt;
[[Archivo:Euler12.png|500px|thumb|right|Gráfica Nivel Piezométrico aproximada con el Método de Diferencias Finitas con Euler Implícito en tiempo.]]&lt;br /&gt;
&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== Comportamiento del nivel piezométrico con &amp;lt;math&amp;gt; \rho &amp;lt;/math&amp;gt; constante ====&lt;br /&gt;
&lt;br /&gt;
Ahora supondremos que &amp;lt;math&amp;gt; \rho &amp;lt;/math&amp;gt; es constante y que su valor es 2 y dibujaremos el comportamiento del nivel piezométrico en una gráfica 2D nivel piezométrico-tiempo.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Nuevamente utilizando el programa anterior con el  método de Heun:&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Rho2.png|500px|thumb|best|Gráfica Nivel Piezométrico-tiempo para &amp;lt;math&amp;gt; \rho =2 &amp;lt;/math&amp;gt; para T=10.]]&lt;br /&gt;
[[Archivo:Rho1000.png|500px|thumb|best|Gráfica Nivel Piezométrico-tiempo para &amp;lt;math&amp;gt; \rho =2 &amp;lt;/math&amp;gt; para T=1000.]]&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
&lt;br /&gt;
%PRIMERA FASE. ESPACIO&lt;br /&gt;
&lt;br /&gt;
a=0.5; b=20; %Condiciones de contorno&lt;br /&gt;
drho=0.1; N=(b-a)/drho; %División del intervalo&lt;br /&gt;
&lt;br /&gt;
rho=a+drho:drho:b-drho; %Sólo nodos interiores&lt;br /&gt;
&lt;br /&gt;
%Creamos las matrices&lt;br /&gt;
&lt;br /&gt;
L=diag(ones(1,N-2),1)-diag(ones(1,N-2),-1);&lt;br /&gt;
A=diag(1./rho);&lt;br /&gt;
L=10^(-2)*(1/(2*drho))*A*L;&lt;br /&gt;
&lt;br /&gt;
K=-2*diag(ones(1,N-1))+diag(ones(1,N-2),1)+diag(ones(1,N-2),-1);&lt;br /&gt;
K=10^(-2)*(1/drho^2)*K; &lt;br /&gt;
&lt;br /&gt;
F=zeros(N-1,1);&lt;br /&gt;
F(1,1)=10^(-2)*(-17/(rho(1)*drho)+34/drho^2);&lt;br /&gt;
F(N-1,1)=10^(-2)*(45/(rho(N-1)*2*drho)+45/drho^2);&lt;br /&gt;
&lt;br /&gt;
%SEGUDA FASE. TIEMPO&lt;br /&gt;
&lt;br /&gt;
H=ones(1,length(rho)); H=H*45; H=H';&lt;br /&gt;
dt=drho; &lt;br /&gt;
T=10 &lt;br /&gt;
%Comprobamos también la solución para un tiempo mayor &lt;br /&gt;
%T=1000&lt;br /&gt;
t=0:dt:T;&lt;br /&gt;
h0=34; hN=45;&lt;br /&gt;
sol=[h0 H' hN];&lt;br /&gt;
&lt;br /&gt;
for j=1:length(t)-1 &lt;br /&gt;
    &lt;br /&gt;
    %Método de Heun&lt;br /&gt;
    k1=F+(K+L)*H;&lt;br /&gt;
    k2=F+(K+L)*(H+k1*dt);&lt;br /&gt;
    H=H+(dt/2)*(k1+k2);&lt;br /&gt;
 &lt;br /&gt;
    sol(j+1,:)=[h0 H' hN]; %Salvamos las solución, incluimos los extremos&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
rho1=a:drho:b; %Incluimos los nodos exteriores&lt;br /&gt;
&lt;br /&gt;
m=sol(:,rho==2); %Vector que incluye la solución en tiempo para rho=2&lt;br /&gt;
&lt;br /&gt;
plot(t,m);&lt;br /&gt;
&lt;br /&gt;
title('Comportamiento del nivel piezométrico en el tiempo para p=2')&lt;br /&gt;
xlabel('Tiempo')&lt;br /&gt;
ylabel('Nivel piezométrico.')&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
La primera gráfica muestra que para tiempos pequeños la variación del nivel piezométrico es muy pequeña (del orden de 0,10/0,15 m), aún así como observamos en la segunda gráfica a medida que avanzamos en el tiempo la variación del nivel disminuye aún más ya que la curva está cada vez menos inclinada.&lt;br /&gt;
&lt;br /&gt;
==== Variación del nivel piezométrico en tiempos grandes ====&lt;br /&gt;
Ahora vamos a comprobar que la variación del nivel piezométrico para tiempos elevados (T=5000) es mínima.&lt;br /&gt;
Para ello dibujaremos las soluciones cada 100 horas de en el intervalo temporal [1; 5000], en&lt;br /&gt;
una misma gráfica.&lt;br /&gt;
[[Archivo:Tiemposg2.png|marco|derecha|Nivel piezométrico para tiempos grandes]]&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
%PRIMERA FASE. ESPACIO&lt;br /&gt;
&lt;br /&gt;
a=0.5; b=20; %Condiciones de contorno&lt;br /&gt;
drho=0.1; N=(b-a)/drho; %División del intervalo&lt;br /&gt;
&lt;br /&gt;
rho=a+drho:drho:b-drho; %Sólo nodos interiores&lt;br /&gt;
&lt;br /&gt;
%Creamos las matrices&lt;br /&gt;
&lt;br /&gt;
L=diag(ones(1,N-2),1)-diag(ones(1,N-2),-1);&lt;br /&gt;
A=diag(1./rho);&lt;br /&gt;
L=10^(-2)*(1/(2*drho))*A*L;&lt;br /&gt;
&lt;br /&gt;
K=-2*diag(ones(1,N-1))+diag(ones(1,N-2),1)+diag(ones(1,N-2),-1);&lt;br /&gt;
K=10^(-2)*(1/drho^2)*K; &lt;br /&gt;
&lt;br /&gt;
F=zeros(N-1,1);&lt;br /&gt;
F(1,1)=10^(-2)*(-17/(rho(1)*drho)+34/drho^2);&lt;br /&gt;
F(N-1,1)=10^(-2)*(45/(rho(N-1)*2*drho)+45/drho^2);&lt;br /&gt;
&lt;br /&gt;
%SEGUDA FASE. TIEMPO&lt;br /&gt;
&lt;br /&gt;
H=ones(1,length(rho)); H=H*45; H=H';&lt;br /&gt;
dt=0.1; T=5000; t=0:dt:T;&lt;br /&gt;
h0=34; hN=45;&lt;br /&gt;
sol=[h0 H' hN];&lt;br /&gt;
&lt;br /&gt;
figure(1);&lt;br /&gt;
hold on;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
for j=1:length(t)-1 &lt;br /&gt;
    &lt;br /&gt;
    %Método de Heun&lt;br /&gt;
    k1=F+(K+L)*H;&lt;br /&gt;
    k2=F+(K+L)*(H+k1*dt);&lt;br /&gt;
    H=H+(dt/2)*(k1+k2);&lt;br /&gt;
 &lt;br /&gt;
    sol(j+1,:)=[h0 H' hN]; %Salvamos las solución, incluimos los extremos&lt;br /&gt;
    &lt;br /&gt;
 if rem(t(j),100)==0; &lt;br /&gt;
    &lt;br /&gt;
    rho1=a:drho:b; %Incluimos los nodos exteriores&lt;br /&gt;
  &lt;br /&gt;
  plot(rho1,sol(j,:)) %pintamos la solución cada 100 horas&lt;br /&gt;
  &lt;br /&gt;
  title('Variación del nivel piezométrico para tiempos grandes')&lt;br /&gt;
  pause(1)&lt;br /&gt;
&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
end&lt;br /&gt;
}}&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Como se puede observar en la gráfica según vamos avanzando en el tiempo las curvas están más juntas lo que quiere decir que la variación del nivel es cada vez menor aproximándose a un régimen estacionario.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Trabajo21.jpg|marco|derecha|Nivel piezométrico estacionario]]&lt;br /&gt;
&lt;br /&gt;
====Problema estacionario====&lt;br /&gt;
Como hemos visto en el apartado anterior para tiempos grandes el nivel piezométrico se mantiene practicamente constante a lo largo del tiempo, esto es debido a que se establece un equilibrio entre el caudal de agua extraida del acuifero y la migración de aguas desde los puntos más alejados del pozo hacia este.&lt;br /&gt;
Por lo tanto se verifica que:&lt;br /&gt;
 &amp;lt;math&amp;gt;\frac{\partial h}{\partial t}=0&amp;lt;/math&amp;gt;&lt;br /&gt;
Y por lo tanto el nivel piezométrico se puede aproximar por:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \left\{\begin{matrix}&lt;br /&gt;
- \frac{k}{s} (\frac{1}{\rho}  \frac{\partial h}{\partial \rho} + \frac{\partial^2 h}{\partial \rho^2})= 0 &amp;amp; \rho \epsilon (1, 20) &amp;amp; \theta \epsilon (0, 2\Pi ) &amp;amp; 0 &amp;lt; t &amp;lt; 5000 \\ &lt;br /&gt;
h(1,t) = 35;    h(20, t)= 40 \\ &lt;br /&gt;
h(\rho, 0) = 40 &lt;br /&gt;
\end{matrix}\right. &amp;lt;/math&amp;gt;&lt;br /&gt;
Resolvemos por diferencias finitas:&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
    %datos&lt;br /&gt;
    t=5000;&lt;br /&gt;
    l=20;&lt;br /&gt;
    D=0.01;&lt;br /&gt;
    hp=35;&lt;br /&gt;
    ho=40;&lt;br /&gt;
    %discretización&lt;br /&gt;
    s=0.1;&lt;br /&gt;
    x0=1;&lt;br /&gt;
    x=x0:s:l;&lt;br /&gt;
    xint=x0+s:s:l-s;&lt;br /&gt;
    N=length(x)-2; &lt;br /&gt;
    %construimos las matrices para el método de las diferencias finitas&lt;br /&gt;
    K=(1/s^2)*(diag(2*ones(1,N))-diag(ones(1,N-1),1)-diag(ones(1,N-1),-1));&lt;br /&gt;
    A=(1/(s*2))*(diag(ones(1,N-1),1)-diag(ones(1,N-1),-1));&lt;br /&gt;
    A=diag(1./xint)*A;&lt;br /&gt;
    h0=(40*ones(N,1));&lt;br /&gt;
    dt=200; &lt;br /&gt;
    t=0:dt:t;&lt;br /&gt;
    M=length(t)-1;&lt;br /&gt;
    F=(zeros(N,1));&lt;br /&gt;
    F(1)=D*((hp/s^2)-(hp/(2*s)*1/xint(1)));&lt;br /&gt;
    F(N)=D*((ho/s^2)+ho/(s*2*xint(N)));&lt;br /&gt;
    H(1,:)=[40;h0;40]'; &lt;br /&gt;
    h=h0;&lt;br /&gt;
    for n=1:M&lt;br /&gt;
      h=(D)*(K-A)\((F)); %utilizamos el comando backslash para resolver el sistema de ecuaciones&lt;br /&gt;
      H(n+1,:)=[hp h' ho];&lt;br /&gt;
    end&lt;br /&gt;
    %mallado y representación&lt;br /&gt;
    [X,T]=meshgrid(x,t);&lt;br /&gt;
    surf(X,T,H)&lt;br /&gt;
    xlabel('Distancia (metros)');&lt;br /&gt;
    ylabel('Tiempo (horas)');&lt;br /&gt;
    zlabel('Nivel piezométrico (metros)')&lt;br /&gt;
}}&lt;br /&gt;
Efectivamente, como podemos comprobar en la gráfica, la solución es independiente del tiempo salvo para tiempos pequeños en los cuales no queda muy bien definida&lt;br /&gt;
&lt;br /&gt;
====Capacidad de recuperación del acuífero====&lt;br /&gt;
En este apartado queremos calcular una ley que nos describa el comportamiento del acuífero e el caso de que impermeabilizásemos las paredes del pozo partiendo del estado estacionario anterior, esto significaría que el fujo de agua en los bordes del pozo sería nulo y el nivel piezométrico iría variando hasta llegar a otro estado estacionario.&lt;br /&gt;
El estado estacionarioque tenderá a alcanzar el fluido será el inicial, ya que al impermeabilizar las paredes volvemos al caso del acuífero confinado y por ello es nivel piezométrico quedará constante a lo largo del tiempo y de la extensión del acuífero.&lt;br /&gt;
La condición frontera a imponer será que el flujo de agua en r0 será 0, ya que estará impermeabilizado. Esto lo podemos plasmar diciendo que la parcial del nivel piezométrico con respecto a ro en r0 es 0, ya que un aislamiento impide el flujo de líquido, y si el flujo de líquido es nulo el nivel piezométrico no varía.&lt;br /&gt;
&amp;lt;math&amp;gt;\frac{\partial h}{\partial \rho}=0&amp;lt;/math&amp;gt;&lt;br /&gt;
====Método de Fourier====&lt;br /&gt;
Ahora suponemos que el radio del pozo es despreciable y que una vez extraido el agua el pozo se cierra quedando el acuifero de nuevo homogéneo. En este caso tomaremos la región ρ &amp;lt; 20. Nuestro objetivo es aproximar las soluciones usando el método de Fourier. De nuevo supondremos que la solución sólo depende de ρ y t, y tomaremos ahora como condición frontera h(20, t) = 40.&lt;br /&gt;
Vamos a considerar el sistema de ecuaciones para h(ρ,t)=h(ρ,t)-40:&lt;br /&gt;
 &amp;lt;math&amp;gt; \left\{\begin{matrix}&lt;br /&gt;
\frac{\partial h}{\partial t} - D (\frac{1}{\rho}  \frac{\partial h}{\partial \rho} + \frac{\partial^2 h}{\partial \rho^2})= 0 &amp;amp; \rho \epsilon (0, 20) &amp;amp; \theta \epsilon (0, 2\Pi ) &amp;amp; t &amp;gt; 0 \\ &lt;br /&gt;
\frac{\partial h}{\partial \rho}(0,t) = 0;   h(20, t)= 0 \\ &lt;br /&gt;
\end{matrix}\right. &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Obtenemos el problema de autovalores asociado al sistema anterior con el método de separación de variables:&lt;br /&gt;
 &amp;lt;math&amp;gt; \left\{\begin{matrix}&lt;br /&gt;
D (\frac{X'(\rho)}{\rho} + X''(\rho))+ λX(\rho)=0 \\&lt;br /&gt;
X'(0) = 0;   X(20)= 0 \\ &lt;br /&gt;
&lt;br /&gt;
\end{matrix}\right. &amp;lt;/math&amp;gt;&lt;br /&gt;
[[Archivo:Marta1.jpg|marco|derecha]]&lt;br /&gt;
Sabemos que los problemas de esta forma tienen como solución la función de Bessel de primera especie que forma una familia de autofunciones: &amp;lt;math&amp;gt;Ψ(\rho)=J_0·(\rho\sqrt{λ})&amp;lt;/math&amp;gt;. Estas se anulan cuando &amp;lt;math&amp;gt;(\rho\sqrt{λ})&amp;lt;/math&amp;gt; se iguala a 2.4048, 5.5201, 8.6537, 11.7915 y 14.9309, siendo estos los 5 primeros ceros de la función de Bessel. De esta manera y tomando ρ=20 obtenemos los 5 primeros autovalores:&lt;br /&gt;
&amp;lt;math&amp;gt;(20\sqrt{λ})=2.4048&amp;lt;/math&amp;gt;Haciendo la operación anterior para los 5 ceros obtenemos los siguientes autovalores: 0.0145, 0.0762, 0.1872, 0.3476, 0.5573.&lt;br /&gt;
Ahora vamos a dibujar las 5 primeras autofunciones utilizando la función besselj:&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
a1=0.0145;&lt;br /&gt;
a2=0.0762;&lt;br /&gt;
a3=0.1872;&lt;br /&gt;
a4=0.3476;&lt;br /&gt;
a5=0.5575;&lt;br /&gt;
r=0:0.02:20;&lt;br /&gt;
F1=besselj(0,r.*(sqrt(a1))); &lt;br /&gt;
F2=besselj(0,r.*(sqrt(a2)));&lt;br /&gt;
F3=besselj(0,r.*(sqrt(a3)));&lt;br /&gt;
F4=besselj(0,r.*(sqrt(a4)));&lt;br /&gt;
F5=besselj(0,r.*(sqrt(a5)));&lt;br /&gt;
hold on&lt;br /&gt;
plot(r,F1)&lt;br /&gt;
plot(r,F2,'r')&lt;br /&gt;
plot(r,F3,'g')	&lt;br /&gt;
plot(r,F4,'c')&lt;br /&gt;
plot(r,F5,'y')&lt;br /&gt;
hold off&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
Aproximamos ahora la solución de la ecuación tomando como dato inicial es&amp;lt;math&amp;gt; h (\rho,0)= -log \frac{|\rho + 0.01|}{20.01} &amp;lt;/math&amp;gt; y usando 5 términos del desarrollo de Fourier, teniendo en cuenta que las autofunciones son ortogonales respecto al producto escalar: &amp;lt;math&amp;gt; (f(\rho),g(\rho)) = \int_{0}^{20} \rho f(\rho) g(\rho) \cdot dx &amp;lt;/math&amp;gt;&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
x0=0; L=20;&lt;br /&gt;
c0=[2.4048,5.5201,8.6537,11.7915,14.9309]; %Vector de ceros de la función de Bessel&lt;br /&gt;
A=(c0./20).^2; %Vector de autovalores&lt;br /&gt;
K=5; %Número de términos del desarrollo de Fourier&lt;br /&gt;
x=x0:0.1:L;&lt;br /&gt;
N=length(x)-1;&lt;br /&gt;
J=zeros(N+1,K);&lt;br /&gt;
z=zeros(N+1,K);&lt;br /&gt;
t0=0; tf=500;&lt;br /&gt;
t=t0:0.1:tf;&lt;br /&gt;
[xx,tt]=meshgrid(x,t);&lt;br /&gt;
h=0;&lt;br /&gt;
for k=1:K&lt;br /&gt;
   z(:,k)=(x)'*sqrt(A(k));&lt;br /&gt;
   J(:,k)=besselj(0,z(:,k));&lt;br /&gt;
   h0=-log((abs(x+0.1))/20.01); %Condición inicial&lt;br /&gt;
   c(k)=trapz(x,x'.*h0'.*J(:,k))/trapz(x,x'.*J(:,k).*J(:,k)); %Coeficientes de Fourier&lt;br /&gt;
   h=h+c(k)*exp(-A(k)*t)'*J(:,k)';&lt;br /&gt;
end&lt;br /&gt;
surf(xx,tt,h)&lt;br /&gt;
title('Aproximación de la solución')&lt;br /&gt;
}}&lt;/div&gt;</summary>
		<author><name>Marta Cavero</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Archivo:Marta1.jpg&amp;diff=30053</id>
		<title>Archivo:Marta1.jpg</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Archivo:Marta1.jpg&amp;diff=30053"/>
				<updated>2015-05-14T14:37:42Z</updated>
		
		<summary type="html">&lt;p&gt;Marta Cavero: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>Marta Cavero</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Nivel_piezom%C3%A9trico_de_un_acu%C3%ADfero_confinado_(A5)&amp;diff=30041</id>
		<title>Nivel piezométrico de un acuífero confinado (A5)</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Nivel_piezom%C3%A9trico_de_un_acu%C3%ADfero_confinado_(A5)&amp;diff=30041"/>
				<updated>2015-05-14T14:13:19Z</updated>
		
		<summary type="html">&lt;p&gt;Marta Cavero: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;br /&gt;
==== Introducción ====&lt;br /&gt;
&lt;br /&gt;
Consideramos un acuífero confinado entre dos capas de terreno impermeables horizontales. Llamaremos h(x, y) al nivel piezométrico del acuífero, definido por la altura que alcanzaría el agua si hiciéramos un sondeo en el punto (x, y). Obviamente este valor depende de la presión a la que se encuentra el agua confinada en el acuífero. Supondremos&lt;br /&gt;
que el acuífero es un medio poroso saturado de agua que ocupa una región infinita y está en equilibrio de manera que &amp;lt;math&amp;gt;h(x, y) = h_0&amp;lt;/math&amp;gt; constante para todo (x, y) ∈ &amp;lt;math&amp;gt;IR^{2}&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Sobre el acuifero se construye un pozo de sección circular y radio&amp;lt;math&amp;gt; ρ_0&amp;lt;/math&amp;gt; para extraer agua. La presencia del pozo hace que el nivel piezométrico cambie. Dada la simetría del problema podemos suponer que h(x, y) sólo va a depender de la distancia al pozo. Si tomamos coordenadas cilíndricas de forma que el eje OZ coincida con el eje de simetría del pozo, entonces h = h(ρ) donde &amp;lt;math&amp;gt;ρ = \sqrt{x^{2} + y^{2}}&amp;lt;/math&amp;gt; . Trabajaremos por tanto en coordenadas polares en el plano (ρ, θ).&lt;br /&gt;
&lt;br /&gt;
Las ecuaciones que permiten conocer h(ρ) son la ecuación de conservación de la masa:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; S = \frac{∂h}{∂t} + div q = 0 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
junto con la ley de Darcy&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; q = −K∇h &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
que es una ley experimental que modela el flujo de agua en un medio poroso. La ley de Darcy establece que el flujo de agua q a través de un medio poroso es proporcional a la diferencia de presión, que a su vez se puede escribir en términos del gradiente del nivel piezométrico en cada punto. La constante K se deduce experimentalmente para cada material y se conoce como la conductividad hidráulica o permeabilidad. Cuanto mayor es la constante K mayor es el flujo de agua provocado por un cambio&lt;br /&gt;
de presión. La ley de Darcy proporciona una buena aproximación del comportamiento del agua en un medio poroso siempre que este sea homogéneo e isótropo.&lt;br /&gt;
&lt;br /&gt;
La constante S en la ley de conservación de la masa se conoce como almacenamiento específico y se interpreta como la cantidad de agua que libera el acuífero al descender el nivel piezométrico en una unidad, por unidad de volumen.&lt;br /&gt;
&lt;br /&gt;
Combinando las ecuaciones de conservación de la masa con la ley de Darcy, obtenemos la ecuación:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \frac{∂h}{∂t} - D∆h = 0, ρ &amp;gt; ρ_0, θ ∈ (0, 2π), t &amp;gt; 0, (1) &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
donde D = K/S es la difusividad hidráulica que supondremos constante.&lt;br /&gt;
&lt;br /&gt;
==== Deducción de la fórmula ====&lt;br /&gt;
&lt;br /&gt;
En este apartado buscamos demostrar la ecuación (1) como combinación de la ecuación de conservación de masas y la Ley de Darcy.&lt;br /&gt;
&lt;br /&gt;
Por un lado sabemos que el laplaciaco equivale a la divergencia del gradiente: &lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; &lt;br /&gt;
(\Delta f = \nabla \cdot \nabla f = div \left (\nabla f) \right) &lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Por otro lado, sabemos que en coordenadas polares: &lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;x = ρ cos \theta \\&lt;br /&gt;
             y = ρ  sen \theta&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\bar{g_ρ } = cos \theta \bar{i} + sin \theta  \bar{j} \\&lt;br /&gt;
              \bar{g_\theta } = - ρ  sin \theta \bar{i} + ρ cos \theta \bar{j} &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;&lt;br /&gt;
G =&lt;br /&gt;
\left(&lt;br /&gt;
\begin{array}{cc}&lt;br /&gt;
1&amp;amp; 0 \\&lt;br /&gt;
0 &amp;amp; ρ ^{2} \\&lt;br /&gt;
\end{array}&lt;br /&gt;
\right);&lt;br /&gt;
\text {donde la raiz del determinante es} \sqrt{g} = ρ&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Como indica el enunciado, al sustituir la Ley de Darcy en la ecuación de conservación de la masa obtenemos y dividir entre S, teniendo en cuenta que el divergente del gradiente es el laplaciano como hemos indicado al principio de este apartado, obtenemos la ecuación (1): &amp;lt;math&amp;gt; \frac{∂h}{∂t} - \frac{k}{S}∆h = 0 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
En esta ecuación queda por desarrollar el Laplaciano de h. &lt;br /&gt;
Partiremos de la función h(ρ,θ), de la cual calcularemos primero el gradiente:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \nabla h = \frac{\partial h}{\partial \rho}\hat{\rho} + \frac{\partial h}{\partial \rho}\hat{\theta} =  \frac{\partial h}{\partial \rho}\bar{\rho} + \frac{1}{\rho^{2}} \frac{\partial h}{\partial \rho}\bar{\theta}  &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
teniendo en cuenta que &amp;lt;math&amp;gt;\bar{g^{i} } = \frac{\bar{g_i } }{ | \bar{g_i } | ^{2} } &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Ahora hacemos el divergente del gradiente anterior y obtenemos el Laplaciano en coordenadas polares:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;math&amp;gt;&lt;br /&gt;
 \Delta h = div(∇h) &lt;br /&gt;
= {1 \over \rho} {\partial \over \partial \rho}&lt;br /&gt;
  \left( \rho {\partial h \over \partial \rho} \right) &lt;br /&gt;
+ {1 \over \rho^2} {\partial^2 h \over \partial \theta^2}&lt;br /&gt;
= {1 \over \rho} {\partial h \over \partial \rho} &lt;br /&gt;
+ {\partial^2 h \over \partial \rho^2}&lt;br /&gt;
+ {1 \over \rho^2} {\partial^2 h \over \partial \theta^2}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Si consideramos que, debido a la simetría del problema, h sólo depende de su distancia al pozo, entonces obtenemos la función radial h(ρ), que nos permite simplificar el Laplaciano del modo siguiente:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;math&amp;gt;&lt;br /&gt;
 \Delta h = div(∇h) &lt;br /&gt;
= {1 \over \rho} {\partial h \over \partial \rho} &lt;br /&gt;
+ {\partial^2 h \over \partial \rho^2}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== Obtención de la ecuación====&lt;br /&gt;
&lt;br /&gt;
Para poder resolver la ecuación anterior y que el resultado sea único, hemos de establecer condiciones iniciales y de contorno.&lt;br /&gt;
&lt;br /&gt;
Las condiciones de contorno serán dos pues aparece la derivada segunda de la posición: &amp;lt;math&amp;gt; h(\rho_0 , t) = h_p \\&lt;br /&gt;
                                                                                                                                                                  h(20,t) = h_0 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
La condición inicial será única pues sólo aparece una derivada de primer orden en tiempo en nuestra ecuación: &amp;lt;math&amp;gt; h(\rho,0) = h_0 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
De este modo la ecuación resultante será:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \left\{\begin{matrix}&lt;br /&gt;
\frac{\partial h}{\partial t} - \frac{k}{s} (\frac{1}{\rho}  \frac{\partial h}{\partial \rho} + \frac{\partial^2 h}{\partial \rho^2})= 0 &amp;amp; \rho \epsilon (\rho_{0}, 2c) &amp;amp; \theta \epsilon (0, 2\Pi ) &amp;amp; t &amp;gt; 0 \\ &lt;br /&gt;
h(\rho_{0},t) = h_{p};   h(20, t)= h_{0} \\ &lt;br /&gt;
h(\rho, 0) = h_{0} &lt;br /&gt;
\end{matrix}\right. &amp;lt;/math&amp;gt; &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==== Resolución por método de diferencias finitas ====&lt;br /&gt;
&lt;br /&gt;
Suponiendo &amp;lt;math&amp;gt;ρ_0 =0.5m&amp;lt;/math&amp;gt;, &amp;lt;math&amp;gt;h_0 =45m&amp;lt;/math&amp;gt;, &amp;lt;math&amp;gt;hp =34&amp;lt;/math&amp;gt;, D=10−2, &amp;lt;math&amp;gt;(ρ,0)=h_0&amp;lt;/math&amp;gt;; y tomando  ∆ρ = 0.1 y ∆t = ∆ρ. Vamos a resolver la ecuación anterior por el método de diferencias finitas, usando el Método de Heun para realizar la aproximación en tiempo.&lt;br /&gt;
&lt;br /&gt;
Primero, sustituyendo los datos anteriores en la ecuación, llegamos a:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \left\{\begin{matrix}&lt;br /&gt;
\frac{\partial h}{\partial t} - 10^{2} (\frac{1}{\rho}  \frac{\partial h}{\partial \rho} + \frac{\partial^2 h}{\partial \rho^2})= 0 &amp;amp; \rho \epsilon (0.5, 20) &amp;amp; \theta \epsilon (0, 2\Pi ) &amp;amp; t &amp;gt; 0 \\ &lt;br /&gt;
h(0.5,t) = 34;   h(20, t)= 45 \\ &lt;br /&gt;
h(\rho, 0) = 45&lt;br /&gt;
\end{matrix}\right. &amp;lt;/math&amp;gt; &lt;br /&gt;
&lt;br /&gt;
Aplicando el método de las diferencias finitas llegamos al siguiente código:&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
&lt;br /&gt;
%TRPRIMERA FASE. ESPACIO&lt;br /&gt;
&lt;br /&gt;
a=0.5; b=20; %Condiciones de contorno&lt;br /&gt;
drho=0.1; N=(b-a)/drho; %División del intervalo&lt;br /&gt;
&lt;br /&gt;
rho=a+drho:drho:b-drho; %Sólo nodos interiores&lt;br /&gt;
&lt;br /&gt;
%Creamos las matrices&lt;br /&gt;
&lt;br /&gt;
L=diag(ones(1,N-2),1)-diag(ones(1,N-2),-1);&lt;br /&gt;
A=diag(1./rho);&lt;br /&gt;
L=10^(-2)*(1/(2*drho))*A*L;&lt;br /&gt;
&lt;br /&gt;
K=-2*diag(ones(1,N-1))+diag(ones(1,N-2),1)+diag(ones(1,N-2),-1);&lt;br /&gt;
K=10^(-2)*(1/drho^2)*K; &lt;br /&gt;
&lt;br /&gt;
F=zeros(N-1,1);&lt;br /&gt;
F(1,1)=10^(-2)*(-17/(rho(1)*drho)+34/drho^2);&lt;br /&gt;
F(N-1,1)=10^(-2)*(45/(rho(N-1)*2*drho)+45/drho^2);&lt;br /&gt;
&lt;br /&gt;
%SEGUDA FASE. TIEMPO&lt;br /&gt;
&lt;br /&gt;
H=ones(1,length(rho)); H=H*45; H=H';&lt;br /&gt;
dt=drho; T=10; t=0:dt:T;&lt;br /&gt;
h0=34; hN=45;&lt;br /&gt;
sol=[h0 H' hN];&lt;br /&gt;
&lt;br /&gt;
for j=1:length(t)-1 &lt;br /&gt;
    &lt;br /&gt;
    %Método de Heun&lt;br /&gt;
    k1=F+(K+L)*H;&lt;br /&gt;
    k2=F+(K+L)*(H+k1*dt);&lt;br /&gt;
    H=H+(dt/2)*(k1+k2);&lt;br /&gt;
 &lt;br /&gt;
    sol(j+1,:)=[h0 H' hN]; %Salvamos las solución, incluimos los extremos&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
rho1=a:drho:b; %Incluimos los nodos exteriores&lt;br /&gt;
&lt;br /&gt;
[rr,tt]=meshgrid(rho1,t);&lt;br /&gt;
surf(rr,tt,sol); %Dibujamos la solución&lt;br /&gt;
title('Nivel Piezométrico. Método Diferencias finitas con Heun en tiempo.')&lt;br /&gt;
xlabel('Distancia radial al centro del pozo.')&lt;br /&gt;
ylabel('Tiempo.')&lt;br /&gt;
zlabel('Nivel piezométrico.')&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
Mediante este código obtenemos la siguiente gráfica:&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Grafica npiezometrico.jpg|500px|thumb|best|Gráfica Nivel Piezométrico aproximada con el Método de Diferencias Finitas con Heun en tiempo.]]&lt;br /&gt;
&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Ahora dibujaremos la gráfica mediante los métodos de Euler implícito y trapecio y compararemos los resultados obtenidos.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Sobre el programa anterior cambiaremos las líneas correspondientes al método de Heun.&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* Método de Euler implícito:&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;math&amp;gt; \left\{\begin{matrix}&lt;br /&gt;
y_{0}\\&lt;br /&gt;
y_{n+1}=y_{n} + hf(t_{n+1},y_{n+1})\\&lt;br /&gt;
\end{matrix}\right. &amp;lt;/math&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
&lt;br /&gt;
for j=1:length(t)-1 &lt;br /&gt;
    &lt;br /&gt;
    %Método de Euler implícito&lt;br /&gt;
    &lt;br /&gt;
    H=(eye(N-1)-dt*(K+L))\(H+(F*dt)); &lt;br /&gt;
 &lt;br /&gt;
    sol(j+1,:)=[h0 H' hN]; %Salvamos las solución, incluimos los extremos&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
rho1=a:drho:b; %Incluimos los nodos exteriores&lt;br /&gt;
&lt;br /&gt;
[rr,tt]=meshgrid(rho1,t);&lt;br /&gt;
surf(rr,tt,sol); %Dibujamos la solución&lt;br /&gt;
title('Nivel Piezométrico. Método Diferencias finitas con Euler en tiempo.')&lt;br /&gt;
xlabel('Distancia radial al centro del pozo.')&lt;br /&gt;
ylabel('Tiempo.')&lt;br /&gt;
zlabel('Nivel piezométrico.')&lt;br /&gt;
&lt;br /&gt;
}}&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* Método del Trapecio:&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;math&amp;gt; \left\{\begin{matrix}&lt;br /&gt;
y_{0}\\&lt;br /&gt;
y_{n+1}=y_{n} + \frac{h}{2}f((t_{n},y_{n}+f(t_{n+1},y_{n+1}))\\&lt;br /&gt;
\end{matrix}\right. &amp;lt;/math&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
for j=1:length(t)-1 &lt;br /&gt;
    &lt;br /&gt;
    %Método del trapecio&lt;br /&gt;
    k1=F+(K+L)*H;&lt;br /&gt;
    k2=F+(K+L)*(H+k1*dt); &lt;br /&gt;
    H=(eye(N-1)-(dt/2)*(K+L))\(H+dt*F+(dt/2)*(K+L)*H);&lt;br /&gt;
 &lt;br /&gt;
    sol(j+1,:)=[h0 H' hN]; %Salvamos las solución, incluimos los extremos&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
rho1=a:drho:b; %Incluimos los nodos exteriores&lt;br /&gt;
&lt;br /&gt;
[rr,tt]=meshgrid(rho1,t);&lt;br /&gt;
surf(rr,tt,sol); %Dibujamos la solución&lt;br /&gt;
title('Nivel Piezométrico. Método Diferencias finitas con trapecio en tiempo.')&lt;br /&gt;
xlabel('Distancia radial al centro del pozo.')&lt;br /&gt;
ylabel('Tiempo.')&lt;br /&gt;
zlabel('Nivel piezométrico.')&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
Como podemos ver a continuación las tres gráficas resultantes son prácticamente iguales por lo que los tres métodos hacen una aproximación similar.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
[[Archivo:Trapecio12.png|500px|thumb|left|Gráfica Nivel Piezométrico aproximada con el Método de Diferencias Finitas con Trapecio en tiempo.]]&lt;br /&gt;
[[Archivo:Euler12.png|500px|thumb|right|Gráfica Nivel Piezométrico aproximada con el Método de Diferencias Finitas con Euler Implícito en tiempo.]]&lt;br /&gt;
&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== Comportamiento del nivel piezométrico con &amp;lt;math&amp;gt; \rho &amp;lt;/math&amp;gt; constante ====&lt;br /&gt;
&lt;br /&gt;
Ahora supondremos que &amp;lt;math&amp;gt; \rho &amp;lt;/math&amp;gt; es constante y que su valor es 2 y dibujaremos el comportamiento del nivel piezométrico en una gráfica 2D nivel piezométrico-tiempo.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Nuevamente utilizando el programa anterior con el  método de Heun:&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Rho2.png|500px|thumb|best|Gráfica Nivel Piezométrico-tiempo para &amp;lt;math&amp;gt; \rho =2 &amp;lt;/math&amp;gt; para T=10.]]&lt;br /&gt;
[[Archivo:Rho1000.png|500px|thumb|best|Gráfica Nivel Piezométrico-tiempo para &amp;lt;math&amp;gt; \rho =2 &amp;lt;/math&amp;gt; para T=1000.]]&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
&lt;br /&gt;
%PRIMERA FASE. ESPACIO&lt;br /&gt;
&lt;br /&gt;
a=0.5; b=20; %Condiciones de contorno&lt;br /&gt;
drho=0.1; N=(b-a)/drho; %División del intervalo&lt;br /&gt;
&lt;br /&gt;
rho=a+drho:drho:b-drho; %Sólo nodos interiores&lt;br /&gt;
&lt;br /&gt;
%Creamos las matrices&lt;br /&gt;
&lt;br /&gt;
L=diag(ones(1,N-2),1)-diag(ones(1,N-2),-1);&lt;br /&gt;
A=diag(1./rho);&lt;br /&gt;
L=10^(-2)*(1/(2*drho))*A*L;&lt;br /&gt;
&lt;br /&gt;
K=-2*diag(ones(1,N-1))+diag(ones(1,N-2),1)+diag(ones(1,N-2),-1);&lt;br /&gt;
K=10^(-2)*(1/drho^2)*K; &lt;br /&gt;
&lt;br /&gt;
F=zeros(N-1,1);&lt;br /&gt;
F(1,1)=10^(-2)*(-17/(rho(1)*drho)+34/drho^2);&lt;br /&gt;
F(N-1,1)=10^(-2)*(45/(rho(N-1)*2*drho)+45/drho^2);&lt;br /&gt;
&lt;br /&gt;
%SEGUDA FASE. TIEMPO&lt;br /&gt;
&lt;br /&gt;
H=ones(1,length(rho)); H=H*45; H=H';&lt;br /&gt;
dt=drho; &lt;br /&gt;
T=10 &lt;br /&gt;
%Comprobamos también la solución para un tiempo mayor &lt;br /&gt;
%T=1000&lt;br /&gt;
t=0:dt:T;&lt;br /&gt;
h0=34; hN=45;&lt;br /&gt;
sol=[h0 H' hN];&lt;br /&gt;
&lt;br /&gt;
for j=1:length(t)-1 &lt;br /&gt;
    &lt;br /&gt;
    %Método de Heun&lt;br /&gt;
    k1=F+(K+L)*H;&lt;br /&gt;
    k2=F+(K+L)*(H+k1*dt);&lt;br /&gt;
    H=H+(dt/2)*(k1+k2);&lt;br /&gt;
 &lt;br /&gt;
    sol(j+1,:)=[h0 H' hN]; %Salvamos las solución, incluimos los extremos&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
rho1=a:drho:b; %Incluimos los nodos exteriores&lt;br /&gt;
&lt;br /&gt;
m=sol(:,rho==2); %Vector que incluye la solución en tiempo para rho=2&lt;br /&gt;
&lt;br /&gt;
plot(t,m);&lt;br /&gt;
&lt;br /&gt;
title('Comportamiento del nivel piezométrico en el tiempo para p=2')&lt;br /&gt;
xlabel('Tiempo')&lt;br /&gt;
ylabel('Nivel piezométrico.')&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
La primera gráfica muestra que para tiempos pequeños la variación del nivel piezométrico es muy pequeña (del orden de 0,10/0,15 m), aún así como observamos en la segunda gráfica a medida que avanzamos en el tiempo la variación del nivel disminuye aún más ya que la curva está cada vez menos inclinada.&lt;br /&gt;
&lt;br /&gt;
==== Variación del nivel piezométrico en tiempos grandes ====&lt;br /&gt;
Ahora vamos a comprobar que la variación del nivel piezométrico para tiempos elevados (T=5000) es mínima.&lt;br /&gt;
Para ello dibujaremos las soluciones cada 100 horas de en el intervalo temporal [1; 5000], en&lt;br /&gt;
una misma gráfica.&lt;br /&gt;
[[Archivo:Tiemposg2.png|marco|derecha|Nivel piezométrico para tiempos grandes]]&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
%PRIMERA FASE. ESPACIO&lt;br /&gt;
&lt;br /&gt;
a=0.5; b=20; %Condiciones de contorno&lt;br /&gt;
drho=0.1; N=(b-a)/drho; %División del intervalo&lt;br /&gt;
&lt;br /&gt;
rho=a+drho:drho:b-drho; %Sólo nodos interiores&lt;br /&gt;
&lt;br /&gt;
%Creamos las matrices&lt;br /&gt;
&lt;br /&gt;
L=diag(ones(1,N-2),1)-diag(ones(1,N-2),-1);&lt;br /&gt;
A=diag(1./rho);&lt;br /&gt;
L=10^(-2)*(1/(2*drho))*A*L;&lt;br /&gt;
&lt;br /&gt;
K=-2*diag(ones(1,N-1))+diag(ones(1,N-2),1)+diag(ones(1,N-2),-1);&lt;br /&gt;
K=10^(-2)*(1/drho^2)*K; &lt;br /&gt;
&lt;br /&gt;
F=zeros(N-1,1);&lt;br /&gt;
F(1,1)=10^(-2)*(-17/(rho(1)*drho)+34/drho^2);&lt;br /&gt;
F(N-1,1)=10^(-2)*(45/(rho(N-1)*2*drho)+45/drho^2);&lt;br /&gt;
&lt;br /&gt;
%SEGUDA FASE. TIEMPO&lt;br /&gt;
&lt;br /&gt;
H=ones(1,length(rho)); H=H*45; H=H';&lt;br /&gt;
dt=0.1; T=5000; t=0:dt:T;&lt;br /&gt;
h0=34; hN=45;&lt;br /&gt;
sol=[h0 H' hN];&lt;br /&gt;
&lt;br /&gt;
figure(1);&lt;br /&gt;
hold on;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
for j=1:length(t)-1 &lt;br /&gt;
    &lt;br /&gt;
    %Método de Heun&lt;br /&gt;
    k1=F+(K+L)*H;&lt;br /&gt;
    k2=F+(K+L)*(H+k1*dt);&lt;br /&gt;
    H=H+(dt/2)*(k1+k2);&lt;br /&gt;
 &lt;br /&gt;
    sol(j+1,:)=[h0 H' hN]; %Salvamos las solución, incluimos los extremos&lt;br /&gt;
    &lt;br /&gt;
 if rem(t(j),100)==0; &lt;br /&gt;
    &lt;br /&gt;
    rho1=a:drho:b; %Incluimos los nodos exteriores&lt;br /&gt;
  &lt;br /&gt;
  plot(rho1,sol(j,:)) %pintamos la solución cada 100 horas&lt;br /&gt;
  &lt;br /&gt;
  title('Variación del nivel piezométrico para tiempos grandes')&lt;br /&gt;
  pause(1)&lt;br /&gt;
&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
end&lt;br /&gt;
}}&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Como se puede observar en la gráfica según vamos avanzando en el tiempo las curvas están más juntas lo que quiere decir que la variación del nivel es cada vez menor aproximándose a un régimen estacionario.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Trabajo21.jpg|marco|derecha|Nivel piezométrico estacionario]]&lt;br /&gt;
&lt;br /&gt;
====Problema estacionario====&lt;br /&gt;
Como hemos visto en el apartado anterior para tiempos grandes el nivel piezométrico se mantiene practicamente constante a lo largo del tiempo, esto es debido a que se establece un equilibrio entre el caudal de agua extraida del acuifero y la migración de aguas desde los puntos más alejados del pozo hacia este.&lt;br /&gt;
Por lo tanto se verifica que:&lt;br /&gt;
 &amp;lt;math&amp;gt;\frac{\partial h}{\partial t}=0&amp;lt;/math&amp;gt;&lt;br /&gt;
Y por lo tanto el nivel piezométrico se puede aproximar por:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \left\{\begin{matrix}&lt;br /&gt;
- \frac{k}{s} (\frac{1}{\rho}  \frac{\partial h}{\partial \rho} + \frac{\partial^2 h}{\partial \rho^2})= 0 &amp;amp; \rho \epsilon (1, 20) &amp;amp; \theta \epsilon (0, 2\Pi ) &amp;amp; 0 &amp;lt; t &amp;lt; 5000 \\ &lt;br /&gt;
h(1,t) = 35;    h(20, t)= 40 \\ &lt;br /&gt;
h(\rho, 0) = 40 &lt;br /&gt;
\end{matrix}\right. &amp;lt;/math&amp;gt;&lt;br /&gt;
Resolvemos por diferencias finitas:&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
    %datos&lt;br /&gt;
    t=5000;&lt;br /&gt;
    l=20;&lt;br /&gt;
    D=0.01;&lt;br /&gt;
    hp=35;&lt;br /&gt;
    ho=40;&lt;br /&gt;
    %discretización&lt;br /&gt;
    s=0.1;&lt;br /&gt;
    x0=1;&lt;br /&gt;
    x=x0:s:l;&lt;br /&gt;
    xint=x0+s:s:l-s;&lt;br /&gt;
    N=length(x)-2; &lt;br /&gt;
    %construimos las matrices para el método de las diferencias finitas&lt;br /&gt;
    K=(1/s^2)*(diag(2*ones(1,N))-diag(ones(1,N-1),1)-diag(ones(1,N-1),-1));&lt;br /&gt;
    A=(1/(s*2))*(diag(ones(1,N-1),1)-diag(ones(1,N-1),-1));&lt;br /&gt;
    A=diag(1./xint)*A;&lt;br /&gt;
    h0=(40*ones(N,1));&lt;br /&gt;
    dt=200; &lt;br /&gt;
    t=0:dt:t;&lt;br /&gt;
    M=length(t)-1;&lt;br /&gt;
    F=(zeros(N,1));&lt;br /&gt;
    F(1)=D*((hp/s^2)-(hp/(2*s)*1/xint(1)));&lt;br /&gt;
    F(N)=D*((ho/s^2)+ho/(s*2*xint(N)));&lt;br /&gt;
    H(1,:)=[40;h0;40]'; &lt;br /&gt;
    h=h0;&lt;br /&gt;
    for n=1:M&lt;br /&gt;
      h=(D)*(K-A)\((F)); %utilizamos el comando backslash para resolver el sistema de ecuaciones&lt;br /&gt;
      H(n+1,:)=[hp h' ho];&lt;br /&gt;
    end&lt;br /&gt;
    %mallado y representación&lt;br /&gt;
    [X,T]=meshgrid(x,t);&lt;br /&gt;
    surf(X,T,H)&lt;br /&gt;
    xlabel('Distancia (metros)');&lt;br /&gt;
    ylabel('Tiempo (horas)');&lt;br /&gt;
    zlabel('Nivel piezométrico (metros)')&lt;br /&gt;
}}&lt;br /&gt;
Efectivamente, como podemos comprobar en la gráfica, la solución es independiente del tiempo salvo para tiempos pequeños en los cuales no queda muy bien definida&lt;br /&gt;
&lt;br /&gt;
====Capacidad de recuperación del acuífero====&lt;br /&gt;
En este apartado queremos calcular una ley que nos describa el comportamiento del acuífero e el caso de que impermeabilizásemos las paredes del pozo partiendo del estado estacionario anterior, esto significaría que el fujo de agua en los bordes del pozo sería nulo y el nivel piezométrico iría variando hasta llegar a otro estado estacionario.&lt;br /&gt;
El estado estacionarioque tenderá a alcanzar el fluido será el inicial, ya que al impermeabilizar las paredes volvemos al caso del acuífero confinado y por ello es nivel piezométrico quedará constante a lo largo del tiempo y de la extensión del acuífero.&lt;br /&gt;
La condición frontera a imponer será que el flujo de agua en r0 será 0, ya que estará impermeabilizado. Esto lo podemos plasmar diciendo que la parcial del nivel piezométrico con respecto a ro en r0 es 0, ya que un aislamiento impide el flujo de líquido, y si el flujo de líquido es nulo el nivel piezométrico no varía.&lt;br /&gt;
&amp;lt;math&amp;gt;\frac{\partial h}{\partial \rho}=0&amp;lt;/math&amp;gt;&lt;br /&gt;
====Método de Fourier====&lt;br /&gt;
Ahora suponemos que el radio del pozo es despreciable y que una vez extraido el agua el pozo se cierra quedando el acuifero de nuevo homogéneo. En este caso tomaremos la región ρ &amp;lt; 20. Nuestro objetivo es aproximar las soluciones usando el método de Fourier. De nuevo supondremos que la solución sólo depende de ρ y t, y tomaremos ahora como condición frontera h(20, t) = 40.&lt;br /&gt;
Vamos a considerar el sistema de ecuaciones para h(ρ,t)=h(ρ,t)-40:&lt;br /&gt;
 &amp;lt;math&amp;gt; \left\{\begin{matrix}&lt;br /&gt;
\frac{\partial h}{\partial t} - D (\frac{1}{\rho}  \frac{\partial h}{\partial \rho} + \frac{\partial^2 h}{\partial \rho^2})= 0 &amp;amp; \rho \epsilon (0, 20) &amp;amp; \theta \epsilon (0, 2\Pi ) &amp;amp; t &amp;gt; 0 \\ &lt;br /&gt;
\frac{\partial h}{\partial \rho}(0,t) = 0;   h(20, t)= 0 \\ &lt;br /&gt;
\end{matrix}\right. &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Obtenemos el problema de autovalores asociado al sistema anterior con el método de separación de variables:&lt;br /&gt;
 &amp;lt;math&amp;gt; \left\{\begin{matrix}&lt;br /&gt;
D (\frac{X'(\rho)}{\rho} + X''(\rho))+ λX(\rho)=0 \\&lt;br /&gt;
X'(0) = 0;   X(20)= 0 \\ &lt;br /&gt;
&lt;br /&gt;
\end{matrix}\right. &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Sabemos que los problemas de esta forma tienen como solución la función de Bessel de primera especie que forma una familia de autofunciones: &amp;lt;math&amp;gt;Ψ(\rho)=J_0·(\rho\sqrt{λ})&amp;lt;/math&amp;gt;. Estas se anulan cuando &amp;lt;math&amp;gt;(\rho\sqrt{λ})&amp;lt;/math&amp;gt; se iguala a 2.4048, 5.5201, 8.6537, 11.7915 y 14.9309, siendo estos los 5 primeros ceros de la función de Bessel. De esta manera y tomando ρ=20 obtenemos los 5 primeros autovalores:&lt;br /&gt;
&amp;lt;math&amp;gt;(20\sqrt{λ})=2.4048&amp;lt;/math&amp;gt;Haciendo la operación anterior para los 5 ceros obtenemos los siguientes autovalores: 0.0145, 0.0762, 0.1872, 0.3476, 0.5573.&lt;br /&gt;
Ahora vamos a dibujar las 5 primeras autofunciones utilizando la función besselj:&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
a1=0.0145;&lt;br /&gt;
a2=0.0762;&lt;br /&gt;
a3=0.1872;&lt;br /&gt;
a4=0.3476;&lt;br /&gt;
a5=0.5575;&lt;br /&gt;
r=0:0.02:20;&lt;br /&gt;
F1=besselj(0,r.*(sqrt(a1))); &lt;br /&gt;
F2=besselj(0,r.*(sqrt(a2)));&lt;br /&gt;
F3=besselj(0,r.*(sqrt(a3)));&lt;br /&gt;
F4=besselj(0,r.*(sqrt(a4)));&lt;br /&gt;
F5=besselj(0,r.*(sqrt(a5)));&lt;br /&gt;
hold on&lt;br /&gt;
plot(r,F1)&lt;br /&gt;
plot(r,F2,'r')&lt;br /&gt;
plot(r,F3,'g')	&lt;br /&gt;
plot(r,F4,'c')&lt;br /&gt;
plot(r,F5,'y')&lt;br /&gt;
hold off&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
Aproximamos ahora la solución de la ecuación tomando como dato inicial es&amp;lt;math&amp;gt; h (\rho,0)= -log \frac{|\rho + 0.01|}{20.01} &amp;lt;/math&amp;gt; y usando 5 términos del desarrollo de Fourier, teniendo en cuenta que las autofunciones son ortogonales respecto al producto escalar: &amp;lt;math&amp;gt; (f(\rho),g(\rho)) = \int_{0}^{20} \rho f(\rho) g(\rho) \cdot dx &amp;lt;/math&amp;gt;&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
x0=0; L=20;&lt;br /&gt;
c0=[2.4048,5.5201,8.6537,11.7915,14.9309]; %Vector de ceros de la función de Bessel&lt;br /&gt;
A=(c0./20).^2; %Vector de autovalores&lt;br /&gt;
K=5; %Número de términos del desarrollo de Fourier&lt;br /&gt;
x=x0:0.1:L;&lt;br /&gt;
N=length(x)-1;&lt;br /&gt;
J=zeros(N+1,K);&lt;br /&gt;
z=zeros(N+1,K);&lt;br /&gt;
t0=0; tf=500;&lt;br /&gt;
t=t0:0.1:tf;&lt;br /&gt;
[xx,tt]=meshgrid(x,t);&lt;br /&gt;
h=0;&lt;br /&gt;
for k=1:K&lt;br /&gt;
   z(:,k)=(x)'*sqrt(A(k));&lt;br /&gt;
   J(:,k)=besselj(0,z(:,k));&lt;br /&gt;
   h0=-log((abs(x+0.1))/20.01); %Condición inicial&lt;br /&gt;
   c(k)=trapz(x,x'.*h0'.*J(:,k))/trapz(x,x'.*J(:,k).*J(:,k)); %Coeficientes de Fourier&lt;br /&gt;
   h=h+c(k)*exp(-A(k)*t)'*J(:,k)';&lt;br /&gt;
end&lt;br /&gt;
surf(xx,tt,h)&lt;br /&gt;
title('Aproximación de la solución')&lt;br /&gt;
}}&lt;/div&gt;</summary>
		<author><name>Marta Cavero</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Nivel_piezom%C3%A9trico_de_un_acu%C3%ADfero_confinado_(A5)&amp;diff=30038</id>
		<title>Nivel piezométrico de un acuífero confinado (A5)</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Nivel_piezom%C3%A9trico_de_un_acu%C3%ADfero_confinado_(A5)&amp;diff=30038"/>
				<updated>2015-05-14T14:11:43Z</updated>
		
		<summary type="html">&lt;p&gt;Marta Cavero: /* Capacidad de recuperación del acuífero */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;br /&gt;
==== Introducción ====&lt;br /&gt;
&lt;br /&gt;
Consideramos un acuífero confinado entre dos capas de terreno impermeables horizontales. Llamaremos h(x, y) al nivel piezométrico del acuífero, definido por la altura que alcanzaría el agua si hiciéramos un sondeo en el punto (x, y). Obviamente este valor depende de la presión a la que se encuentra el agua confinada en el acuífero. Supondremos&lt;br /&gt;
que el acuífero es un medio poroso saturado de agua que ocupa una región infinita y está en equilibrio de manera que &amp;lt;math&amp;gt;h(x, y) = h_0&amp;lt;/math&amp;gt; constante para todo (x, y) ∈ &amp;lt;math&amp;gt;IR^{2}&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Sobre el acuifero se construye un pozo de sección circular y radio&amp;lt;math&amp;gt; ρ_0&amp;lt;/math&amp;gt; para extraer agua. La presencia del pozo hace que el nivel piezométrico cambie. Dada la simetría del problema podemos suponer que h(x, y) sólo va a depender de la distancia al pozo. Si tomamos coordenadas cilíndricas de forma que el eje OZ coincida con el eje de simetría del pozo, entonces h = h(ρ) donde &amp;lt;math&amp;gt;ρ = \sqrt{x^{2} + y^{2}}&amp;lt;/math&amp;gt; . Trabajaremos por tanto en coordenadas polares en el plano (ρ, θ).&lt;br /&gt;
&lt;br /&gt;
Las ecuaciones que permiten conocer h(ρ) son la ecuación de conservación de la masa:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; S = \frac{∂h}{∂t} + div q = 0 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
junto con la ley de Darcy&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; q = −K∇h &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
que es una ley experimental que modela el flujo de agua en un medio poroso. La ley de Darcy establece que el flujo de agua q a través de un medio poroso es proporcional a la diferencia de presión, que a su vez se puede escribir en términos del gradiente del nivel piezométrico en cada punto. La constante K se deduce experimentalmente para cada material y se conoce como la conductividad hidráulica o permeabilidad. Cuanto mayor es la constante K mayor es el flujo de agua provocado por un cambio&lt;br /&gt;
de presión. La ley de Darcy proporciona una buena aproximación del comportamiento del agua en un medio poroso siempre que este sea homogéneo e isótropo.&lt;br /&gt;
&lt;br /&gt;
La constante S en la ley de conservación de la masa se conoce como almacenamiento específico y se interpreta como la cantidad de agua que libera el acuífero al descender el nivel piezométrico en una unidad, por unidad de volumen.&lt;br /&gt;
&lt;br /&gt;
Combinando las ecuaciones de conservación de la masa con la ley de Darcy, obtenemos la ecuación:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \frac{∂h}{∂t} - D∆h = 0, ρ &amp;gt; ρ_0, θ ∈ (0, 2π), t &amp;gt; 0, (1) &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
donde D = K/S es la difusividad hidráulica que supondremos constante.&lt;br /&gt;
&lt;br /&gt;
==== Deducción de la fórmula ====&lt;br /&gt;
&lt;br /&gt;
En este apartado buscamos demostrar la ecuación (1) como combinación de la ecuación de conservación de masas y la Ley de Darcy.&lt;br /&gt;
&lt;br /&gt;
Por un lado sabemos que el laplaciaco equivale a la divergencia del gradiente: &lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; &lt;br /&gt;
(\Delta f = \nabla \cdot \nabla f = div \left (\nabla f) \right) &lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Por otro lado, sabemos que en coordenadas polares: &lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;x = ρ cos \theta \\&lt;br /&gt;
             y = ρ  sen \theta&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\bar{g_ρ } = cos \theta \bar{i} + sin \theta  \bar{j} \\&lt;br /&gt;
              \bar{g_\theta } = - ρ  sin \theta \bar{i} + ρ cos \theta \bar{j} &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;&lt;br /&gt;
G =&lt;br /&gt;
\left(&lt;br /&gt;
\begin{array}{cc}&lt;br /&gt;
1&amp;amp; 0 \\&lt;br /&gt;
0 &amp;amp; ρ ^{2} \\&lt;br /&gt;
\end{array}&lt;br /&gt;
\right);&lt;br /&gt;
\text {donde la raiz del determinante es} \sqrt{g} = ρ&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Como indica el enunciado, al sustituir la Ley de Darcy en la ecuación de conservación de la masa obtenemos y dividir entre S, teniendo en cuenta que el divergente del gradiente es el laplaciano como hemos indicado al principio de este apartado, obtenemos la ecuación (1): &amp;lt;math&amp;gt; \frac{∂h}{∂t} - \frac{k}{S}∆h = 0 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
En esta ecuación queda por desarrollar el Laplaciano de h. &lt;br /&gt;
Partiremos de la función h(ρ,θ), de la cual calcularemos primero el gradiente:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \nabla h = \frac{\partial h}{\partial \rho}\hat{\rho} + \frac{\partial h}{\partial \rho}\hat{\theta} =  \frac{\partial h}{\partial \rho}\bar{\rho} + \frac{1}{\rho^{2}} \frac{\partial h}{\partial \rho}\bar{\theta}  &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
teniendo en cuenta que &amp;lt;math&amp;gt;\bar{g^{i} } = \frac{\bar{g_i } }{ | \bar{g_i } | ^{2} } &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Ahora hacemos el divergente del gradiente anterior y obtenemos el Laplaciano en coordenadas polares:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;math&amp;gt;&lt;br /&gt;
 \Delta h = div(∇h) &lt;br /&gt;
= {1 \over \rho} {\partial \over \partial \rho}&lt;br /&gt;
  \left( \rho {\partial h \over \partial \rho} \right) &lt;br /&gt;
+ {1 \over \rho^2} {\partial^2 h \over \partial \theta^2}&lt;br /&gt;
= {1 \over \rho} {\partial h \over \partial \rho} &lt;br /&gt;
+ {\partial^2 h \over \partial \rho^2}&lt;br /&gt;
+ {1 \over \rho^2} {\partial^2 h \over \partial \theta^2}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Si consideramos que, debido a la simetría del problema, h sólo depende de su distancia al pozo, entonces obtenemos la función radial h(ρ), que nos permite simplificar el Laplaciano del modo siguiente:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;math&amp;gt;&lt;br /&gt;
 \Delta h = div(∇h) &lt;br /&gt;
= {1 \over \rho} {\partial h \over \partial \rho} &lt;br /&gt;
+ {\partial^2 h \over \partial \rho^2}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== Obtención de la ecuación====&lt;br /&gt;
&lt;br /&gt;
Para poder resolver la ecuación anterior y que el resultado sea único, hemos de establecer condiciones iniciales y de contorno.&lt;br /&gt;
&lt;br /&gt;
Las condiciones de contorno serán dos pues aparece la derivada segunda de la posición: &amp;lt;math&amp;gt; h(\rho_0 , t) = h_p \\&lt;br /&gt;
                                                                                                                                                                  h(20,t) = h_0 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
La condición inicial será única pues sólo aparece una derivada de primer orden en tiempo en nuestra ecuación: &amp;lt;math&amp;gt; h(\rho,0) = h_0 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
De este modo la ecuación resultante será:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \left\{\begin{matrix}&lt;br /&gt;
\frac{\partial h}{\partial t} - \frac{k}{s} (\frac{1}{\rho}  \frac{\partial h}{\partial \rho} + \frac{\partial^2 h}{\partial \rho^2})= 0 &amp;amp; \rho \epsilon (\rho_{0}, 2c) &amp;amp; \theta \epsilon (0, 2\Pi ) &amp;amp; t &amp;gt; 0 \\ &lt;br /&gt;
h(\rho_{0},t) = h_{p};   h(20, t)= h_{0} \\ &lt;br /&gt;
h(\rho, 0) = h_{0} &lt;br /&gt;
\end{matrix}\right. &amp;lt;/math&amp;gt; &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==== Resolución por método de diferencias finitas ====&lt;br /&gt;
&lt;br /&gt;
Suponiendo &amp;lt;math&amp;gt;ρ_0 =0.5m&amp;lt;/math&amp;gt;, &amp;lt;math&amp;gt;h_0 =45m&amp;lt;/math&amp;gt;, &amp;lt;math&amp;gt;hp =34&amp;lt;/math&amp;gt;, D=10−2, &amp;lt;math&amp;gt;(ρ,0)=h_0&amp;lt;/math&amp;gt;; y tomando  ∆ρ = 0.1 y ∆t = ∆ρ. Vamos a resolver la ecuación anterior por el método de diferencias finitas, usando el Método de Heun para realizar la aproximación en tiempo.&lt;br /&gt;
&lt;br /&gt;
Primero, sustituyendo los datos anteriores en la ecuación, llegamos a:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \left\{\begin{matrix}&lt;br /&gt;
\frac{\partial h}{\partial t} - 10^{2} (\frac{1}{\rho}  \frac{\partial h}{\partial \rho} + \frac{\partial^2 h}{\partial \rho^2})= 0 &amp;amp; \rho \epsilon (0.5, 20) &amp;amp; \theta \epsilon (0, 2\Pi ) &amp;amp; t &amp;gt; 0 \\ &lt;br /&gt;
h(0.5,t) = 34;   h(20, t)= 45 \\ &lt;br /&gt;
h(\rho, 0) = 45&lt;br /&gt;
\end{matrix}\right. &amp;lt;/math&amp;gt; &lt;br /&gt;
&lt;br /&gt;
Aplicando el método de las diferencias finitas llegamos al siguiente código:&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
&lt;br /&gt;
%TRPRIMERA FASE. ESPACIO&lt;br /&gt;
&lt;br /&gt;
a=0.5; b=20; %Condiciones de contorno&lt;br /&gt;
drho=0.1; N=(b-a)/drho; %División del intervalo&lt;br /&gt;
&lt;br /&gt;
rho=a+drho:drho:b-drho; %Sólo nodos interiores&lt;br /&gt;
&lt;br /&gt;
%Creamos las matrices&lt;br /&gt;
&lt;br /&gt;
L=diag(ones(1,N-2),1)-diag(ones(1,N-2),-1);&lt;br /&gt;
A=diag(1./rho);&lt;br /&gt;
L=10^(-2)*(1/(2*drho))*A*L;&lt;br /&gt;
&lt;br /&gt;
K=-2*diag(ones(1,N-1))+diag(ones(1,N-2),1)+diag(ones(1,N-2),-1);&lt;br /&gt;
K=10^(-2)*(1/drho^2)*K; &lt;br /&gt;
&lt;br /&gt;
F=zeros(N-1,1);&lt;br /&gt;
F(1,1)=10^(-2)*(-17/(rho(1)*drho)+34/drho^2);&lt;br /&gt;
F(N-1,1)=10^(-2)*(45/(rho(N-1)*2*drho)+45/drho^2);&lt;br /&gt;
&lt;br /&gt;
%SEGUDA FASE. TIEMPO&lt;br /&gt;
&lt;br /&gt;
H=ones(1,length(rho)); H=H*45; H=H';&lt;br /&gt;
dt=drho; T=10; t=0:dt:T;&lt;br /&gt;
h0=34; hN=45;&lt;br /&gt;
sol=[h0 H' hN];&lt;br /&gt;
&lt;br /&gt;
for j=1:length(t)-1 &lt;br /&gt;
    &lt;br /&gt;
    %Método de Heun&lt;br /&gt;
    k1=F+(K+L)*H;&lt;br /&gt;
    k2=F+(K+L)*(H+k1*dt);&lt;br /&gt;
    H=H+(dt/2)*(k1+k2);&lt;br /&gt;
 &lt;br /&gt;
    sol(j+1,:)=[h0 H' hN]; %Salvamos las solución, incluimos los extremos&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
rho1=a:drho:b; %Incluimos los nodos exteriores&lt;br /&gt;
&lt;br /&gt;
[rr,tt]=meshgrid(rho1,t);&lt;br /&gt;
surf(rr,tt,sol); %Dibujamos la solución&lt;br /&gt;
title('Nivel Piezométrico. Método Diferencias finitas con Heun en tiempo.')&lt;br /&gt;
xlabel('Distancia radial al centro del pozo.')&lt;br /&gt;
ylabel('Tiempo.')&lt;br /&gt;
zlabel('Nivel piezométrico.')&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
Mediante este código obtenemos la siguiente gráfica:&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Grafica npiezometrico.jpg|500px|thumb|best|Gráfica Nivel Piezométrico aproximada con el Método de Diferencias Finitas con Heun en tiempo.]]&lt;br /&gt;
&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Ahora dibujaremos la gráfica mediante los métodos de Euler implícito y trapecio y compararemos los resultados obtenidos.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Sobre el programa anterior cambiaremos las líneas correspondientes al método de Heun.&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* Método de Euler implícito:&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;math&amp;gt; \left\{\begin{matrix}&lt;br /&gt;
y_{0}\\&lt;br /&gt;
y_{n+1}=y_{n} + hf(t_{n+1},y_{n+1})\\&lt;br /&gt;
\end{matrix}\right. &amp;lt;/math&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
&lt;br /&gt;
for j=1:length(t)-1 &lt;br /&gt;
    &lt;br /&gt;
    %Método de Euler implícito&lt;br /&gt;
    &lt;br /&gt;
    H=(eye(N-1)-dt*(K+L))\(H+(F*dt)); &lt;br /&gt;
 &lt;br /&gt;
    sol(j+1,:)=[h0 H' hN]; %Salvamos las solución, incluimos los extremos&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
rho1=a:drho:b; %Incluimos los nodos exteriores&lt;br /&gt;
&lt;br /&gt;
[rr,tt]=meshgrid(rho1,t);&lt;br /&gt;
surf(rr,tt,sol); %Dibujamos la solución&lt;br /&gt;
title('Nivel Piezométrico. Método Diferencias finitas con Euler en tiempo.')&lt;br /&gt;
xlabel('Distancia radial al centro del pozo.')&lt;br /&gt;
ylabel('Tiempo.')&lt;br /&gt;
zlabel('Nivel piezométrico.')&lt;br /&gt;
&lt;br /&gt;
}}&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* Método del Trapecio:&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;math&amp;gt; \left\{\begin{matrix}&lt;br /&gt;
y_{0}\\&lt;br /&gt;
y_{n+1}=y_{n} + \frac{h}{2}f((t_{n},y_{n}+f(t_{n+1},y_{n+1}))\\&lt;br /&gt;
\end{matrix}\right. &amp;lt;/math&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
for j=1:length(t)-1 &lt;br /&gt;
    &lt;br /&gt;
    %Método del trapecio&lt;br /&gt;
    k1=F+(K+L)*H;&lt;br /&gt;
    k2=F+(K+L)*(H+k1*dt); &lt;br /&gt;
    H=(eye(N-1)-(dt/2)*(K+L))\(H+dt*F+(dt/2)*(K+L)*H);&lt;br /&gt;
 &lt;br /&gt;
    sol(j+1,:)=[h0 H' hN]; %Salvamos las solución, incluimos los extremos&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
rho1=a:drho:b; %Incluimos los nodos exteriores&lt;br /&gt;
&lt;br /&gt;
[rr,tt]=meshgrid(rho1,t);&lt;br /&gt;
surf(rr,tt,sol); %Dibujamos la solución&lt;br /&gt;
title('Nivel Piezométrico. Método Diferencias finitas con trapecio en tiempo.')&lt;br /&gt;
xlabel('Distancia radial al centro del pozo.')&lt;br /&gt;
ylabel('Tiempo.')&lt;br /&gt;
zlabel('Nivel piezométrico.')&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
Como podemos ver a continuación las tres gráficas resultantes son prácticamente iguales por lo que los tres métodos hacen una aproximación similar.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
[[Archivo:Trapecio12.png|500px|thumb|left|Gráfica Nivel Piezométrico aproximada con el Método de Diferencias Finitas con Trapecio en tiempo.]]&lt;br /&gt;
[[Archivo:Euler12.png|500px|thumb|right|Gráfica Nivel Piezométrico aproximada con el Método de Diferencias Finitas con Euler Implícito en tiempo.]]&lt;br /&gt;
&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== Comportamiento del nivel piezométrico con &amp;lt;math&amp;gt; \rho &amp;lt;/math&amp;gt; constante ====&lt;br /&gt;
&lt;br /&gt;
Ahora supondremos que &amp;lt;math&amp;gt; \rho &amp;lt;/math&amp;gt; es constante y que su valor es 2 y dibujaremos el comportamiento del nivel piezométrico en una gráfica 2D nivel piezométrico-tiempo.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Nuevamente utilizando el programa anterior con el  método de Heun:&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Rho2.png|500px|thumb|best|Gráfica Nivel Piezométrico-tiempo para &amp;lt;math&amp;gt; \rho =2 &amp;lt;/math&amp;gt; para T=10.]]&lt;br /&gt;
[[Archivo:Rho1000.png|500px|thumb|best|Gráfica Nivel Piezométrico-tiempo para &amp;lt;math&amp;gt; \rho =2 &amp;lt;/math&amp;gt; para T=1000.]]&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
&lt;br /&gt;
%PRIMERA FASE. ESPACIO&lt;br /&gt;
&lt;br /&gt;
a=0.5; b=20; %Condiciones de contorno&lt;br /&gt;
drho=0.1; N=(b-a)/drho; %División del intervalo&lt;br /&gt;
&lt;br /&gt;
rho=a+drho:drho:b-drho; %Sólo nodos interiores&lt;br /&gt;
&lt;br /&gt;
%Creamos las matrices&lt;br /&gt;
&lt;br /&gt;
L=diag(ones(1,N-2),1)-diag(ones(1,N-2),-1);&lt;br /&gt;
A=diag(1./rho);&lt;br /&gt;
L=10^(-2)*(1/(2*drho))*A*L;&lt;br /&gt;
&lt;br /&gt;
K=-2*diag(ones(1,N-1))+diag(ones(1,N-2),1)+diag(ones(1,N-2),-1);&lt;br /&gt;
K=10^(-2)*(1/drho^2)*K; &lt;br /&gt;
&lt;br /&gt;
F=zeros(N-1,1);&lt;br /&gt;
F(1,1)=10^(-2)*(-17/(rho(1)*drho)+34/drho^2);&lt;br /&gt;
F(N-1,1)=10^(-2)*(45/(rho(N-1)*2*drho)+45/drho^2);&lt;br /&gt;
&lt;br /&gt;
%SEGUDA FASE. TIEMPO&lt;br /&gt;
&lt;br /&gt;
H=ones(1,length(rho)); H=H*45; H=H';&lt;br /&gt;
dt=drho; &lt;br /&gt;
T=10 &lt;br /&gt;
%Comprobamos también la solución para un tiempo mayor &lt;br /&gt;
%T=1000&lt;br /&gt;
t=0:dt:T;&lt;br /&gt;
h0=34; hN=45;&lt;br /&gt;
sol=[h0 H' hN];&lt;br /&gt;
&lt;br /&gt;
for j=1:length(t)-1 &lt;br /&gt;
    &lt;br /&gt;
    %Método de Heun&lt;br /&gt;
    k1=F+(K+L)*H;&lt;br /&gt;
    k2=F+(K+L)*(H+k1*dt);&lt;br /&gt;
    H=H+(dt/2)*(k1+k2);&lt;br /&gt;
 &lt;br /&gt;
    sol(j+1,:)=[h0 H' hN]; %Salvamos las solución, incluimos los extremos&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
rho1=a:drho:b; %Incluimos los nodos exteriores&lt;br /&gt;
&lt;br /&gt;
m=sol(:,rho==2); %Vector que incluye la solución en tiempo para rho=2&lt;br /&gt;
&lt;br /&gt;
plot(t,m);&lt;br /&gt;
&lt;br /&gt;
title('Comportamiento del nivel piezométrico en el tiempo para p=2')&lt;br /&gt;
xlabel('Tiempo')&lt;br /&gt;
ylabel('Nivel piezométrico.')&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
La primera gráfica muestra que para tiempos pequeños la variación del nivel piezométrico es muy pequeña (del orden de 0,10/0,15 m), aún así como observamos en la segunda gráfica a medida que avanzamos en el tiempo la variación del nivel disminuye aún más ya que la curva está cada vez menos inclinada.&lt;br /&gt;
&lt;br /&gt;
==== Variación del nivel piezométrico en tiempos grandes ====&lt;br /&gt;
Ahora vamos a comprobar que la variación del nivel piezométrico para tiempos elevados (T=5000) es mínima.&lt;br /&gt;
Para ello dibujaremos las soluciones cada 100 horas de en el intervalo temporal [1; 5000], en&lt;br /&gt;
una misma gráfica.&lt;br /&gt;
[[Archivo:Tiemposg2.png|marco|derecha|Nivel piezométrico para tiempos grandes]]&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
%PRIMERA FASE. ESPACIO&lt;br /&gt;
&lt;br /&gt;
a=0.5; b=20; %Condiciones de contorno&lt;br /&gt;
drho=0.1; N=(b-a)/drho; %División del intervalo&lt;br /&gt;
&lt;br /&gt;
rho=a+drho:drho:b-drho; %Sólo nodos interiores&lt;br /&gt;
&lt;br /&gt;
%Creamos las matrices&lt;br /&gt;
&lt;br /&gt;
L=diag(ones(1,N-2),1)-diag(ones(1,N-2),-1);&lt;br /&gt;
A=diag(1./rho);&lt;br /&gt;
L=10^(-2)*(1/(2*drho))*A*L;&lt;br /&gt;
&lt;br /&gt;
K=-2*diag(ones(1,N-1))+diag(ones(1,N-2),1)+diag(ones(1,N-2),-1);&lt;br /&gt;
K=10^(-2)*(1/drho^2)*K; &lt;br /&gt;
&lt;br /&gt;
F=zeros(N-1,1);&lt;br /&gt;
F(1,1)=10^(-2)*(-17/(rho(1)*drho)+34/drho^2);&lt;br /&gt;
F(N-1,1)=10^(-2)*(45/(rho(N-1)*2*drho)+45/drho^2);&lt;br /&gt;
&lt;br /&gt;
%SEGUDA FASE. TIEMPO&lt;br /&gt;
&lt;br /&gt;
H=ones(1,length(rho)); H=H*45; H=H';&lt;br /&gt;
dt=0.1; T=5000; t=0:dt:T;&lt;br /&gt;
h0=34; hN=45;&lt;br /&gt;
sol=[h0 H' hN];&lt;br /&gt;
&lt;br /&gt;
figure(1);&lt;br /&gt;
hold on;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
for j=1:length(t)-1 &lt;br /&gt;
    &lt;br /&gt;
    %Método de Heun&lt;br /&gt;
    k1=F+(K+L)*H;&lt;br /&gt;
    k2=F+(K+L)*(H+k1*dt);&lt;br /&gt;
    H=H+(dt/2)*(k1+k2);&lt;br /&gt;
 &lt;br /&gt;
    sol(j+1,:)=[h0 H' hN]; %Salvamos las solución, incluimos los extremos&lt;br /&gt;
    &lt;br /&gt;
 if rem(t(j),100)==0; &lt;br /&gt;
    &lt;br /&gt;
    rho1=a:drho:b; %Incluimos los nodos exteriores&lt;br /&gt;
  &lt;br /&gt;
  plot(rho1,sol(j,:)) %pintamos la solución cada 100 horas&lt;br /&gt;
  &lt;br /&gt;
  title('Variación del nivel piezométrico para tiempos grandes')&lt;br /&gt;
  pause(1)&lt;br /&gt;
&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
end&lt;br /&gt;
}}&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Como se puede observar en la gráfica según vamos avanzando en el tiempo las curvas están más juntas lo que quiere decir que la variación del nivel es cada vez menor aproximándose a un régimen estacionario.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Trabajo21.jpg|marco|derecha|Nivel piezométrico estacionario]]&lt;br /&gt;
&lt;br /&gt;
====Problema estacionario====&lt;br /&gt;
Como hemos visto en el apartado anterior para tiempos grandes el nivel piezométrico se mantiene practicamente constante a lo largo del tiempo, esto es debido a que se establece un equilibrio entre el caudal de agua extraida del acuifero y la migración de aguas desde los puntos más alejados del pozo hacia este.&lt;br /&gt;
Por lo tanto se verifica que:&lt;br /&gt;
 &amp;lt;math&amp;gt;\frac{\partial h}{\partial t}=0&amp;lt;/math&amp;gt;&lt;br /&gt;
Y por lo tanto el nivel piezométrico se puede aproximar por:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \left\{\begin{matrix}&lt;br /&gt;
- \frac{k}{s} (\frac{1}{\rho}  \frac{\partial h}{\partial \rho} + \frac{\partial^2 h}{\partial \rho^2})= 0 &amp;amp; \rho \epsilon (1, 20) &amp;amp; \theta \epsilon (0, 2\Pi ) &amp;amp; 0 &amp;lt; t &amp;lt; 5000 \\ &lt;br /&gt;
h(1,t) = 35;    h(20, t)= 40 \\ &lt;br /&gt;
h(\rho, 0) = 40 &lt;br /&gt;
\end{matrix}\right. &amp;lt;/math&amp;gt;&lt;br /&gt;
Resolvemos por diferencias finitas:&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
    %datos&lt;br /&gt;
    t=5000;&lt;br /&gt;
    l=20;&lt;br /&gt;
    D=0.01;&lt;br /&gt;
    hp=35;&lt;br /&gt;
    ho=40;&lt;br /&gt;
    %discretización&lt;br /&gt;
    s=0.1;&lt;br /&gt;
    x0=1;&lt;br /&gt;
    x=x0:s:l;&lt;br /&gt;
    xint=x0+s:s:l-s;&lt;br /&gt;
    N=length(x)-2; &lt;br /&gt;
    %construimos las matrices para el método de las diferencias finitas&lt;br /&gt;
    K=(1/s^2)*(diag(2*ones(1,N))-diag(ones(1,N-1),1)-diag(ones(1,N-1),-1));&lt;br /&gt;
    A=(1/(s*2))*(diag(ones(1,N-1),1)-diag(ones(1,N-1),-1));&lt;br /&gt;
    A=diag(1./xint)*A;&lt;br /&gt;
    h0=(40*ones(N,1));&lt;br /&gt;
    dt=200; &lt;br /&gt;
    t=0:dt:t;&lt;br /&gt;
    M=length(t)-1;&lt;br /&gt;
    F=(zeros(N,1));&lt;br /&gt;
    F(1)=D*((hp/s^2)-(hp/(2*s)*1/xint(1)));&lt;br /&gt;
    F(N)=D*((ho/s^2)+ho/(s*2*xint(N)));&lt;br /&gt;
    H(1,:)=[40;h0;40]'; &lt;br /&gt;
    h=h0;&lt;br /&gt;
    for n=1:M&lt;br /&gt;
      h=(D)*(K-A)\((F)); %utilizamos el comando backslash para resolver el sistema de ecuaciones&lt;br /&gt;
      H(n+1,:)=[hp h' ho];&lt;br /&gt;
    end&lt;br /&gt;
    %mallado y representación&lt;br /&gt;
    [X,T]=meshgrid(x,t);&lt;br /&gt;
    surf(X,T,H)&lt;br /&gt;
    xlabel('Distancia (metros)');&lt;br /&gt;
    ylabel('Tiempo (horas)');&lt;br /&gt;
    zlabel('Nivel piezométrico (metros)')&lt;br /&gt;
}}&lt;br /&gt;
Efectivamente, como podemos comprobar en la gráfica, la solución es independiente del tiempo salvo para tiempos pequeños en los cuales no queda muy bien definida&lt;br /&gt;
&lt;br /&gt;
====Capacidad de recuperación del acuífero====&lt;br /&gt;
En este apartado queremos calcular una ley que nos describa el comportamiento del acuífero e el caso de que impermeabilizásemos las paredes del pozo partiendo del estado estacionario anterior, esto significaría que el fujo de agua en los bordes del pozo sería nulo y el nivel piezométrico iría variando hasta llegar a otro estado estacionario.&lt;br /&gt;
El estado estacionarioque tenderá a alcanzar el fluido será el inicial, ya que al impermeabilizar las paredes volvemos al caso del acuífero confinado y por ello es nivel piezométrico quedará constante a lo largo del tiempo y de la extensión del acuífero.&lt;br /&gt;
La condición frontera a imponer será que el flujo de agua en r0 será 0, ya que estará impermeabilizado. Esto lo podemos plasmar diciendo que la parcial del nivel piezométrico con respecto a ro en r0 es 0, ya que un aislamiento impide el flujo de líquido, y si el flujo de líquido es nulo el nivel piezométrico no varía.&lt;br /&gt;
&lt;br /&gt;
====Método de Fourier====&lt;br /&gt;
Ahora suponemos que el radio del pozo es despreciable y que una vez extraido el agua el pozo se cierra quedando el acuifero de nuevo homogéneo. En este caso tomaremos la región ρ &amp;lt; 20. Nuestro objetivo es aproximar las soluciones usando el método de Fourier. De nuevo supondremos que la solución sólo depende de ρ y t, y tomaremos ahora como condición frontera h(20, t) = 40.&lt;br /&gt;
Vamos a considerar el sistema de ecuaciones para h(ρ,t)=h(ρ,t)-40:&lt;br /&gt;
 &amp;lt;math&amp;gt; \left\{\begin{matrix}&lt;br /&gt;
\frac{\partial h}{\partial t} - D (\frac{1}{\rho}  \frac{\partial h}{\partial \rho} + \frac{\partial^2 h}{\partial \rho^2})= 0 &amp;amp; \rho \epsilon (0, 20) &amp;amp; \theta \epsilon (0, 2\Pi ) &amp;amp; t &amp;gt; 0 \\ &lt;br /&gt;
\frac{\partial h}{\partial \rho}(0,t) = 0;   h(20, t)= 0 \\ &lt;br /&gt;
\end{matrix}\right. &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Obtenemos el problema de autovalores asociado al sistema anterior con el método de separación de variables:&lt;br /&gt;
 &amp;lt;math&amp;gt; \left\{\begin{matrix}&lt;br /&gt;
D (\frac{X'(\rho)}{\rho} + X''(\rho))+ λX(\rho)=0 \\&lt;br /&gt;
X'(0) = 0;   X(20)= 0 \\ &lt;br /&gt;
&lt;br /&gt;
\end{matrix}\right. &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Sabemos que los problemas de esta forma tienen como solución la función de Bessel de primera especie que forma una familia de autofunciones: &amp;lt;math&amp;gt;Ψ(\rho)=J_0·(\rho\sqrt{λ})&amp;lt;/math&amp;gt;. Estas se anulan cuando &amp;lt;math&amp;gt;(\rho\sqrt{λ})&amp;lt;/math&amp;gt; se iguala a 2.4048, 5.5201, 8.6537, 11.7915 y 14.9309, siendo estos los 5 primeros ceros de la función de Bessel. De esta manera y tomando ρ=20 obtenemos los 5 primeros autovalores:&lt;br /&gt;
&amp;lt;math&amp;gt;(20\sqrt{λ})=2.4048&amp;lt;/math&amp;gt;Haciendo la operación anterior para los 5 ceros obtenemos los siguientes autovalores: 0.0145, 0.0762, 0.1872, 0.3476, 0.5573.&lt;br /&gt;
Ahora vamos a dibujar las 5 primeras autofunciones utilizando la función besselj:&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
a1=0.0145;&lt;br /&gt;
a2=0.0762;&lt;br /&gt;
a3=0.1872;&lt;br /&gt;
a4=0.3476;&lt;br /&gt;
a5=0.5575;&lt;br /&gt;
r=0:0.02:20;&lt;br /&gt;
F1=besselj(0,r.*(sqrt(a1))); &lt;br /&gt;
F2=besselj(0,r.*(sqrt(a2)));&lt;br /&gt;
F3=besselj(0,r.*(sqrt(a3)));&lt;br /&gt;
F4=besselj(0,r.*(sqrt(a4)));&lt;br /&gt;
F5=besselj(0,r.*(sqrt(a5)));&lt;br /&gt;
hold on&lt;br /&gt;
plot(r,F1)&lt;br /&gt;
plot(r,F2,'r')&lt;br /&gt;
plot(r,F3,'g')	&lt;br /&gt;
plot(r,F4,'c')&lt;br /&gt;
plot(r,F5,'y')&lt;br /&gt;
hold off&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
Aproximamos ahora la solución de la ecuación tomando como dato inicial es&amp;lt;math&amp;gt; h (\rho,0)= -log \frac{|\rho + 0.01|}{20.01} &amp;lt;/math&amp;gt; y usando 5 términos del desarrollo de Fourier, teniendo en cuenta que las autofunciones son ortogonales respecto al producto escalar: &amp;lt;math&amp;gt; (f(\rho),g(\rho)) = \int_{0}^{20} \rho f(\rho) g(\rho) \cdot dx &amp;lt;/math&amp;gt;&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
x0=0; L=20;&lt;br /&gt;
c0=[2.4048,5.5201,8.6537,11.7915,14.9309]; %Vector de ceros de la función de Bessel&lt;br /&gt;
A=(c0./20).^2; %Vector de autovalores&lt;br /&gt;
K=5; %Número de términos del desarrollo de Fourier&lt;br /&gt;
x=x0:0.1:L;&lt;br /&gt;
N=length(x)-1;&lt;br /&gt;
J=zeros(N+1,K);&lt;br /&gt;
z=zeros(N+1,K);&lt;br /&gt;
t0=0; tf=500;&lt;br /&gt;
t=t0:0.1:tf;&lt;br /&gt;
[xx,tt]=meshgrid(x,t);&lt;br /&gt;
h=0;&lt;br /&gt;
for k=1:K&lt;br /&gt;
   z(:,k)=(x)'*sqrt(A(k));&lt;br /&gt;
   J(:,k)=besselj(0,z(:,k));&lt;br /&gt;
   h0=-log((abs(x+0.1))/20.01); %Condición inicial&lt;br /&gt;
   c(k)=trapz(x,x'.*h0'.*J(:,k))/trapz(x,x'.*J(:,k).*J(:,k)); %Coeficientes de Fourier&lt;br /&gt;
   h=h+c(k)*exp(-A(k)*t)'*J(:,k)';&lt;br /&gt;
end&lt;br /&gt;
surf(xx,tt,h)&lt;br /&gt;
title('Aproximación de la solución')&lt;br /&gt;
}}&lt;/div&gt;</summary>
		<author><name>Marta Cavero</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Nivel_piezom%C3%A9trico_de_un_acu%C3%ADfero_confinado_(A5)&amp;diff=29958</id>
		<title>Nivel piezométrico de un acuífero confinado (A5)</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Nivel_piezom%C3%A9trico_de_un_acu%C3%ADfero_confinado_(A5)&amp;diff=29958"/>
				<updated>2015-05-14T11:35:02Z</updated>
		
		<summary type="html">&lt;p&gt;Marta Cavero: /* Capacidad de recuperación del acuífero */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;br /&gt;
==== Introducción ====&lt;br /&gt;
&lt;br /&gt;
Consideramos un acuífero confinado entre dos capas de terreno impermeables horizontales. Llamaremos h(x, y) al nivel piezométrico del acuífero, definido por la altura que alcanzaría el agua si hiciéramos un sondeo en el punto (x, y). Obviamente este valor depende de la presión a la que se encuentra el agua confinada en el acuífero. Supondremos&lt;br /&gt;
que el acuífero es un medio poroso saturado de agua que ocupa una región infinita y está en equilibrio de manera que &amp;lt;math&amp;gt;h(x, y) = h_0&amp;lt;/math&amp;gt; constante para todo (x, y) ∈ &amp;lt;math&amp;gt;IR^{2}&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Sobre el acuifero se construye un pozo de sección circular y radio&amp;lt;math&amp;gt; ρ_0&amp;lt;/math&amp;gt; para extraer agua. La presencia del pozo hace que el nivel piezométrico cambie. Dada la simetría del problema podemos suponer que h(x, y) sólo va a depender de la distancia al pozo. Si tomamos coordenadas cilíndricas de forma que el eje OZ coincida con el eje de simetría del pozo, entonces h = h(ρ) donde &amp;lt;math&amp;gt;ρ = \sqrt{x^{2} + y^{2}}&amp;lt;/math&amp;gt; . Trabajaremos por tanto en coordenadas polares en el plano (ρ, θ).&lt;br /&gt;
&lt;br /&gt;
Las ecuaciones que permiten conocer h(ρ) son la ecuación de conservación de la masa:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; S = \frac{∂h}{∂t} + div q = 0 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
junto con la ley de Darcy&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; q = −K∇h &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
que es una ley experimental que modela el flujo de agua en un medio poroso. La ley de Darcy establece que el flujo de agua q a través de un medio poroso es proporcional a la diferencia de presión, que a su vez se puede escribir en términos del gradiente del nivel piezométrico en cada punto. La constante K se deduce experimentalmente para cada material y se conoce como la conductividad hidráulica o permeabilidad. Cuanto mayor es la constante K mayor es el flujo de agua provocado por un cambio&lt;br /&gt;
de presión. La ley de Darcy proporciona una buena aproximación del comportamiento del agua en un medio poroso siempre que este sea homogéneo e isótropo.&lt;br /&gt;
&lt;br /&gt;
La constante S en la ley de conservación de la masa se conoce como almacenamiento específico y se interpreta como la cantidad de agua que libera el acuífero al descender el nivel piezométrico en una unidad, por unidad de volumen.&lt;br /&gt;
&lt;br /&gt;
Combinando las ecuaciones de conservación de la masa con la ley de Darcy, obtenemos la ecuación:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \frac{∂h}{∂t} - D∆h = 0, ρ &amp;gt; ρ_0, θ ∈ (0, 2π), t &amp;gt; 0, (1) &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
donde D = K/S es la difusividad hidráulica que supondremos constante.&lt;br /&gt;
&lt;br /&gt;
==== Deducción de la fórmula ====&lt;br /&gt;
&lt;br /&gt;
En este apartado buscamos demostrar la ecuación (1) como combinación de la ecuación de conservación de masas y la Ley de Darcy.&lt;br /&gt;
&lt;br /&gt;
Por un lado sabemos que el laplaciaco equivale a la divergencia del gradiente: &lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; &lt;br /&gt;
(\Delta f = \nabla \cdot \nabla f = div \left (\nabla f) \right) &lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Por otro lado, sabemos que en coordenadas polares: &lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;x = ρ cos \theta \\&lt;br /&gt;
             y = ρ  sen \theta&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\bar{g_ρ } = cos \theta \bar{i} + sin \theta  \bar{j} \\&lt;br /&gt;
              \bar{g_\theta } = - ρ  sin \theta \bar{i} + ρ cos \theta \bar{j} &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;&lt;br /&gt;
G =&lt;br /&gt;
\left(&lt;br /&gt;
\begin{array}{cc}&lt;br /&gt;
1&amp;amp; 0 \\&lt;br /&gt;
0 &amp;amp; ρ ^{2} \\&lt;br /&gt;
\end{array}&lt;br /&gt;
\right);&lt;br /&gt;
\text {donde la raiz del determinante es} \sqrt{g} = ρ&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Como indica el enunciado, al sustituir la Ley de Darcy en la ecuación de conservación de la masa obtenemos y dividir entre S, teniendo en cuenta que el divergente del gradiente es el laplaciano como hemos indicado al principio de este apartado, obtenemos la ecuación (1): &amp;lt;math&amp;gt; \frac{∂h}{∂t} - \frac{k}{S}∆h = 0 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
En esta ecuación queda por desarrollar el Laplaciano de h. &lt;br /&gt;
Partiremos de la función h(ρ,θ), de la cual calcularemos primero el gradiente:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \nabla h = \frac{\partial h}{\partial \rho}\hat{\rho} + \frac{\partial h}{\partial \rho}\hat{\theta} =  \frac{\partial h}{\partial \rho}\bar{\rho} + \frac{1}{\rho^{2}} \frac{\partial h}{\partial \rho}\bar{\theta}  &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
teniendo en cuenta que &amp;lt;math&amp;gt;\bar{g^{i} } = \frac{\bar{g_i } }{ | \bar{g_i } | ^{2} } &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Ahora hacemos el divergente del gradiente anterior y obtenemos el Laplaciano en coordenadas polares:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;math&amp;gt;&lt;br /&gt;
 \Delta h = div(∇h) &lt;br /&gt;
= {1 \over \rho} {\partial \over \partial \rho}&lt;br /&gt;
  \left( \rho {\partial h \over \partial \rho} \right) &lt;br /&gt;
+ {1 \over \rho^2} {\partial^2 h \over \partial \theta^2}&lt;br /&gt;
= {1 \over \rho} {\partial h \over \partial \rho} &lt;br /&gt;
+ {\partial^2 h \over \partial \rho^2}&lt;br /&gt;
+ {1 \over \rho^2} {\partial^2 h \over \partial \theta^2}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Si consideramos que, debido a la simetría del problema, h sólo depende de su distancia al pozo, entonces obtenemos la función radial h(ρ), que nos permite simplificar el Laplaciano del modo siguiente:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;math&amp;gt;&lt;br /&gt;
 \Delta h = div(∇h) &lt;br /&gt;
= {1 \over \rho} {\partial h \over \partial \rho} &lt;br /&gt;
+ {\partial^2 h \over \partial \rho^2}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== Obtención de la ecuación====&lt;br /&gt;
&lt;br /&gt;
Para poder resolver la ecuación anterior y que el resultado sea único, hemos de establecer condiciones iniciales y de contorno.&lt;br /&gt;
&lt;br /&gt;
Las condiciones de contorno serán dos pues aparece la derivada segunda de la posición: &amp;lt;math&amp;gt; h(\rho_0 , t) = h_p \\&lt;br /&gt;
                                                                                                                                                                  h(20,t) = h_0 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
La condición inicial será única pues sólo aparece una derivada de primer orden en tiempo en nuestra ecuación: &amp;lt;math&amp;gt; h(\rho,0) = h_0 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
De este modo la ecuación resultante será:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \left\{\begin{matrix}&lt;br /&gt;
\frac{\partial h}{\partial t} - \frac{k}{s} (\frac{1}{\rho}  \frac{\partial h}{\partial \rho} + \frac{\partial^2 h}{\partial \rho^2})= 0 &amp;amp; \rho \epsilon (\rho_{0}, 2c) &amp;amp; \theta \epsilon (0, 2\Pi ) &amp;amp; t &amp;gt; 0 \\ &lt;br /&gt;
h(\rho_{0},t) = h_{p};   h(20, t)= h_{0} \\ &lt;br /&gt;
h(\rho, 0) = h_{0} &lt;br /&gt;
\end{matrix}\right. &amp;lt;/math&amp;gt; &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==== Resolución por método de diferencias finitas ====&lt;br /&gt;
&lt;br /&gt;
Suponiendo &amp;lt;math&amp;gt;ρ_0 =0.5m&amp;lt;/math&amp;gt;, &amp;lt;math&amp;gt;h_0 =45m&amp;lt;/math&amp;gt;, &amp;lt;math&amp;gt;hp =34&amp;lt;/math&amp;gt;, D=10−2, &amp;lt;math&amp;gt;(ρ,0)=h_0&amp;lt;/math&amp;gt;; y tomando  ∆ρ = 0.1 y ∆t = ∆ρ. Vamos a resolver la ecuación anterior por el método de diferencias finitas, usando el Método de Heun para realizar la aproximación en tiempo.&lt;br /&gt;
&lt;br /&gt;
Primero, sustituyendo los datos anteriores en la ecuación, llegamos a:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \left\{\begin{matrix}&lt;br /&gt;
\frac{\partial h}{\partial t} - 10^{2} (\frac{1}{\rho}  \frac{\partial h}{\partial \rho} + \frac{\partial^2 h}{\partial \rho^2})= 0 &amp;amp; \rho \epsilon (0.5, 20) &amp;amp; \theta \epsilon (0, 2\Pi ) &amp;amp; t &amp;gt; 0 \\ &lt;br /&gt;
h(0.5,t) = 34;   h(20, t)= 45 \\ &lt;br /&gt;
h(\rho, 0) = 45&lt;br /&gt;
\end{matrix}\right. &amp;lt;/math&amp;gt; &lt;br /&gt;
&lt;br /&gt;
Aplicando el método de las diferencias finitas llegamos al siguiente código:&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
&lt;br /&gt;
%TRPRIMERA FASE. ESPACIO&lt;br /&gt;
&lt;br /&gt;
a=0.5; b=20; %Condiciones de contorno&lt;br /&gt;
drho=0.1; N=(b-a)/drho; %División del intervalo&lt;br /&gt;
&lt;br /&gt;
rho=a+drho:drho:b-drho; %Sólo nodos interiores&lt;br /&gt;
&lt;br /&gt;
%Creamos las matrices&lt;br /&gt;
&lt;br /&gt;
L=diag(ones(1,N-2),1)-diag(ones(1,N-2),-1);&lt;br /&gt;
A=diag(1./rho);&lt;br /&gt;
L=10^(-2)*(1/(2*drho))*A*L;&lt;br /&gt;
&lt;br /&gt;
K=-2*diag(ones(1,N-1))+diag(ones(1,N-2),1)+diag(ones(1,N-2),-1);&lt;br /&gt;
K=10^(-2)*(1/drho^2)*K; &lt;br /&gt;
&lt;br /&gt;
F=zeros(N-1,1);&lt;br /&gt;
F(1,1)=10^(-2)*(-17/(rho(1)*drho)+34/drho^2);&lt;br /&gt;
F(N-1,1)=10^(-2)*(45/(rho(N-1)*2*drho)+45/drho^2);&lt;br /&gt;
&lt;br /&gt;
%SEGUDA FASE. TIEMPO&lt;br /&gt;
&lt;br /&gt;
H=ones(1,length(rho)); H=H*45; H=H';&lt;br /&gt;
dt=drho; T=10; t=0:dt:T;&lt;br /&gt;
h0=34; hN=45;&lt;br /&gt;
sol=[h0 H' hN];&lt;br /&gt;
&lt;br /&gt;
for j=1:length(t)-1 &lt;br /&gt;
    &lt;br /&gt;
    %Método de Heun&lt;br /&gt;
    k1=F+(K+L)*H;&lt;br /&gt;
    k2=F+(K+L)*(H+k1*dt);&lt;br /&gt;
    H=H+(dt/2)*(k1+k2);&lt;br /&gt;
 &lt;br /&gt;
    sol(j+1,:)=[h0 H' hN]; %Salvamos las solución, incluimos los extremos&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
rho1=a:drho:b; %Incluimos los nodos exteriores&lt;br /&gt;
&lt;br /&gt;
[rr,tt]=meshgrid(rho1,t);&lt;br /&gt;
surf(rr,tt,sol); %Dibujamos la solución&lt;br /&gt;
title('Nivel Piezométrico. Método Diferencias finitas con Heun en tiempo.')&lt;br /&gt;
xlabel('Distancia radial al centro del pozo.')&lt;br /&gt;
ylabel('Tiempo.')&lt;br /&gt;
zlabel('Nivel piezométrico.')&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
Mediante este código obtenemos la siguiente gráfica:&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Grafica npiezometrico.jpg|500px|thumb|best|Gráfica Nivel Piezométrico aproximada con el Método de Diferencias Finitas con Heun en tiempo.]]&lt;br /&gt;
&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Ahora dibujaremos la gráfica mediante los métodos de Euler implícito y trapecio y compararemos los resultados obtenidos.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Sobre el programa anterior cambiaremos las líneas correspondientes al método de Heun.&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* Método de Euler implícito:&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;math&amp;gt; \left\{\begin{matrix}&lt;br /&gt;
y_{0}\\&lt;br /&gt;
y_{n+1}=y_{n} + hf(t_{n+1},y_{n+1})\\&lt;br /&gt;
\end{matrix}\right. &amp;lt;/math&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
&lt;br /&gt;
for j=1:length(t)-1 &lt;br /&gt;
    &lt;br /&gt;
    %Método de Euler implícito&lt;br /&gt;
    &lt;br /&gt;
    H=(eye(N-1)-dt*(K+L))\(H+(F*dt)); &lt;br /&gt;
 &lt;br /&gt;
    sol(j+1,:)=[h0 H' hN]; %Salvamos las solución, incluimos los extremos&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
rho1=a:drho:b; %Incluimos los nodos exteriores&lt;br /&gt;
&lt;br /&gt;
[rr,tt]=meshgrid(rho1,t);&lt;br /&gt;
surf(rr,tt,sol); %Dibujamos la solución&lt;br /&gt;
title('Nivel Piezométrico. Método Diferencias finitas con Euler en tiempo.')&lt;br /&gt;
xlabel('Distancia radial al centro del pozo.')&lt;br /&gt;
ylabel('Tiempo.')&lt;br /&gt;
zlabel('Nivel piezométrico.')&lt;br /&gt;
&lt;br /&gt;
}}&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* Método del Trapecio:&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;math&amp;gt; \left\{\begin{matrix}&lt;br /&gt;
y_{0}\\&lt;br /&gt;
y_{n+1}=y_{n} + \frac{h}{2}f((t_{n},y_{n}+f(t_{n+1},y_{n+1}))\\&lt;br /&gt;
\end{matrix}\right. &amp;lt;/math&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
for j=1:length(t)-1 &lt;br /&gt;
    &lt;br /&gt;
    %Método del trapecio&lt;br /&gt;
    k1=F+(K+L)*H;&lt;br /&gt;
    k2=F+(K+L)*(H+k1*dt); &lt;br /&gt;
    H=(eye(N-1)-(dt/2)*(K+L))\(H+dt*F+(dt/2)*(K+L)*H);&lt;br /&gt;
 &lt;br /&gt;
    sol(j+1,:)=[h0 H' hN]; %Salvamos las solución, incluimos los extremos&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
rho1=a:drho:b; %Incluimos los nodos exteriores&lt;br /&gt;
&lt;br /&gt;
[rr,tt]=meshgrid(rho1,t);&lt;br /&gt;
surf(rr,tt,sol); %Dibujamos la solución&lt;br /&gt;
title('Nivel Piezométrico. Método Diferencias finitas con trapecio en tiempo.')&lt;br /&gt;
xlabel('Distancia radial al centro del pozo.')&lt;br /&gt;
ylabel('Tiempo.')&lt;br /&gt;
zlabel('Nivel piezométrico.')&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
Como podemos ver a continuación las tres gráficas resultantes son prácticamente iguales por lo que los tres métodos hacen una aproximación similar.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
[[Archivo:Trapecio12.png|500px|thumb|left|Gráfica Nivel Piezométrico aproximada con el Método de Diferencias Finitas con Trapecio en tiempo.]]&lt;br /&gt;
[[Archivo:Euler12.png|500px|thumb|right|Gráfica Nivel Piezométrico aproximada con el Método de Diferencias Finitas con Euler Implícito en tiempo.]]&lt;br /&gt;
&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== Comportamiento del nivel piezométrico con &amp;lt;math&amp;gt; \rho &amp;lt;/math&amp;gt; constante ====&lt;br /&gt;
&lt;br /&gt;
Ahora supondremos que &amp;lt;math&amp;gt; \rho &amp;lt;/math&amp;gt; es constante y que su valor es 2 y dibujaremos el comportamiento del nivel piezométrico en una gráfica 2D nivel piezométrico-tiempo.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Nuevamente utilizando el programa anterior con el  método de Heun:&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Rho2.png|500px|thumb|best|Gráfica Nivel Piezométrico-tiempo para &amp;lt;math&amp;gt; \rho =2 &amp;lt;/math&amp;gt; para T=10.]]&lt;br /&gt;
[[Archivo:Rho1000.png|500px|thumb|best|Gráfica Nivel Piezométrico-tiempo para &amp;lt;math&amp;gt; \rho =2 &amp;lt;/math&amp;gt; para T=1000.]]&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
&lt;br /&gt;
%PRIMERA FASE. ESPACIO&lt;br /&gt;
&lt;br /&gt;
a=0.5; b=20; %Condiciones de contorno&lt;br /&gt;
drho=0.1; N=(b-a)/drho; %División del intervalo&lt;br /&gt;
&lt;br /&gt;
rho=a+drho:drho:b-drho; %Sólo nodos interiores&lt;br /&gt;
&lt;br /&gt;
%Creamos las matrices&lt;br /&gt;
&lt;br /&gt;
L=diag(ones(1,N-2),1)-diag(ones(1,N-2),-1);&lt;br /&gt;
A=diag(1./rho);&lt;br /&gt;
L=10^(-2)*(1/(2*drho))*A*L;&lt;br /&gt;
&lt;br /&gt;
K=-2*diag(ones(1,N-1))+diag(ones(1,N-2),1)+diag(ones(1,N-2),-1);&lt;br /&gt;
K=10^(-2)*(1/drho^2)*K; &lt;br /&gt;
&lt;br /&gt;
F=zeros(N-1,1);&lt;br /&gt;
F(1,1)=10^(-2)*(-17/(rho(1)*drho)+34/drho^2);&lt;br /&gt;
F(N-1,1)=10^(-2)*(45/(rho(N-1)*2*drho)+45/drho^2);&lt;br /&gt;
&lt;br /&gt;
%SEGUDA FASE. TIEMPO&lt;br /&gt;
&lt;br /&gt;
H=ones(1,length(rho)); H=H*45; H=H';&lt;br /&gt;
dt=drho; &lt;br /&gt;
T=10 &lt;br /&gt;
%Comprobamos también la solución para un tiempo mayor &lt;br /&gt;
%T=1000&lt;br /&gt;
t=0:dt:T;&lt;br /&gt;
h0=34; hN=45;&lt;br /&gt;
sol=[h0 H' hN];&lt;br /&gt;
&lt;br /&gt;
for j=1:length(t)-1 &lt;br /&gt;
    &lt;br /&gt;
    %Método de Heun&lt;br /&gt;
    k1=F+(K+L)*H;&lt;br /&gt;
    k2=F+(K+L)*(H+k1*dt);&lt;br /&gt;
    H=H+(dt/2)*(k1+k2);&lt;br /&gt;
 &lt;br /&gt;
    sol(j+1,:)=[h0 H' hN]; %Salvamos las solución, incluimos los extremos&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
rho1=a:drho:b; %Incluimos los nodos exteriores&lt;br /&gt;
&lt;br /&gt;
m=sol(:,rho==2); %Vector que incluye la solución en tiempo para rho=2&lt;br /&gt;
&lt;br /&gt;
plot(t,m);&lt;br /&gt;
&lt;br /&gt;
title('Comportamiento del nivel piezométrico en el tiempo para p=2')&lt;br /&gt;
xlabel('Tiempo')&lt;br /&gt;
ylabel('Nivel piezométrico.')&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
La primera gráfica muestra que para tiempos pequeños la variación del nivel piezométrico es muy pequeña (del orden de 0,10/0,15 m), aún así como observamos en la segunda gráfica a medida que avanzamos en el tiempo la variación del nivel disminuye aún más ya que la curva está cada vez menos inclinada.&lt;br /&gt;
&lt;br /&gt;
==== Variación del nivel piezométrico en tiempos grandes ====&lt;br /&gt;
Ahora vamos a comprobar que la variación del nivel piezométrico para tiempos elevados (T=5000) es mínima.&lt;br /&gt;
Para ello dibujaremos las soluciones cada 100 horas de en el intervalo temporal [1; 5000], en&lt;br /&gt;
una misma gráfica.&lt;br /&gt;
[[Archivo:Tiemposg2.png|marco|derecha|Nivel piezométrico para tiempos grandes]]&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
%PRIMERA FASE. ESPACIO&lt;br /&gt;
&lt;br /&gt;
a=0.5; b=20; %Condiciones de contorno&lt;br /&gt;
drho=0.1; N=(b-a)/drho; %División del intervalo&lt;br /&gt;
&lt;br /&gt;
rho=a+drho:drho:b-drho; %Sólo nodos interiores&lt;br /&gt;
&lt;br /&gt;
%Creamos las matrices&lt;br /&gt;
&lt;br /&gt;
L=diag(ones(1,N-2),1)-diag(ones(1,N-2),-1);&lt;br /&gt;
A=diag(1./rho);&lt;br /&gt;
L=10^(-2)*(1/(2*drho))*A*L;&lt;br /&gt;
&lt;br /&gt;
K=-2*diag(ones(1,N-1))+diag(ones(1,N-2),1)+diag(ones(1,N-2),-1);&lt;br /&gt;
K=10^(-2)*(1/drho^2)*K; &lt;br /&gt;
&lt;br /&gt;
F=zeros(N-1,1);&lt;br /&gt;
F(1,1)=10^(-2)*(-17/(rho(1)*drho)+34/drho^2);&lt;br /&gt;
F(N-1,1)=10^(-2)*(45/(rho(N-1)*2*drho)+45/drho^2);&lt;br /&gt;
&lt;br /&gt;
%SEGUDA FASE. TIEMPO&lt;br /&gt;
&lt;br /&gt;
H=ones(1,length(rho)); H=H*45; H=H';&lt;br /&gt;
dt=0.1; T=5000; t=0:dt:T;&lt;br /&gt;
h0=34; hN=45;&lt;br /&gt;
sol=[h0 H' hN];&lt;br /&gt;
&lt;br /&gt;
figure(1);&lt;br /&gt;
hold on;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
for j=1:length(t)-1 &lt;br /&gt;
    &lt;br /&gt;
    %Método de Heun&lt;br /&gt;
    k1=F+(K+L)*H;&lt;br /&gt;
    k2=F+(K+L)*(H+k1*dt);&lt;br /&gt;
    H=H+(dt/2)*(k1+k2);&lt;br /&gt;
 &lt;br /&gt;
    sol(j+1,:)=[h0 H' hN]; %Salvamos las solución, incluimos los extremos&lt;br /&gt;
    &lt;br /&gt;
 if rem(t(j),100)==0; &lt;br /&gt;
    &lt;br /&gt;
    rho1=a:drho:b; %Incluimos los nodos exteriores&lt;br /&gt;
  &lt;br /&gt;
  plot(rho1,sol(j,:)) %pintamos la solución cada 100 horas&lt;br /&gt;
  &lt;br /&gt;
  title('Variación del nivel piezométrico para tiempos grandes')&lt;br /&gt;
  pause(1)&lt;br /&gt;
&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
end&lt;br /&gt;
}}&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Como se puede observar en la gráfica según vamos avanzando en el tiempo las curvas están más juntas lo que quiere decir que la variación del nivel es cada vez menor aproximándose a un régimen estacionario.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Trabajo21.jpg|marco|derecha|Nivel piezométrico estacionario]]&lt;br /&gt;
&lt;br /&gt;
====Problema estacionario====&lt;br /&gt;
Como hemos visto en el apartado anterior para tiempos grandes el nivel piezométrico se mantiene practicamente constante a lo largo del tiempo, esto es debido a que se establece un equilibrio entre el caudal de agua extraida del acuifero y la migración de aguas desde los puntos más alejados del pozo hacia este.&lt;br /&gt;
Por lo tanto se verifica que:&lt;br /&gt;
 &amp;lt;math&amp;gt;\frac{\partial h}{\partial t}=0&amp;lt;/math&amp;gt;&lt;br /&gt;
Y por lo tanto el nivel piezométrico se puede aproximar por:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \left\{\begin{matrix}&lt;br /&gt;
- \frac{k}{s} (\frac{1}{\rho}  \frac{\partial h}{\partial \rho} + \frac{\partial^2 h}{\partial \rho^2})= 0 &amp;amp; \rho \epsilon (1, 20) &amp;amp; \theta \epsilon (0, 2\Pi ) &amp;amp; 0 &amp;lt; t &amp;lt; 5000 \\ &lt;br /&gt;
h(1,t) = 35;    h(20, t)= 40 \\ &lt;br /&gt;
h(\rho, 0) = 40 &lt;br /&gt;
\end{matrix}\right. &amp;lt;/math&amp;gt;&lt;br /&gt;
Resolvemos por diferencias finitas:&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
    %datos&lt;br /&gt;
    t=5000;&lt;br /&gt;
    l=20;&lt;br /&gt;
    D=0.01;&lt;br /&gt;
    hp=35;&lt;br /&gt;
    ho=40;&lt;br /&gt;
    %discretización&lt;br /&gt;
    s=0.1;&lt;br /&gt;
    x0=1;&lt;br /&gt;
    x=x0:s:l;&lt;br /&gt;
    xint=x0+s:s:l-s;&lt;br /&gt;
    N=length(x)-2; &lt;br /&gt;
    %construimos las matrices para el método de las diferencias finitas&lt;br /&gt;
    K=(1/s^2)*(diag(2*ones(1,N))-diag(ones(1,N-1),1)-diag(ones(1,N-1),-1));&lt;br /&gt;
    A=(1/(s*2))*(diag(ones(1,N-1),1)-diag(ones(1,N-1),-1));&lt;br /&gt;
    A=diag(1./xint)*A;&lt;br /&gt;
    h0=(40*ones(N,1));&lt;br /&gt;
    dt=200; &lt;br /&gt;
    t=0:dt:t;&lt;br /&gt;
    M=length(t)-1;&lt;br /&gt;
    F=(zeros(N,1));&lt;br /&gt;
    F(1)=D*((hp/s^2)-(hp/(2*s)*1/xint(1)));&lt;br /&gt;
    F(N)=D*((ho/s^2)+ho/(s*2*xint(N)));&lt;br /&gt;
    H(1,:)=[40;h0;40]'; &lt;br /&gt;
    h=h0;&lt;br /&gt;
    for n=1:M&lt;br /&gt;
      h=(D)*(K-A)\((F)); %utilizamos el comando backslash para resolver el sistema de ecuaciones&lt;br /&gt;
      H(n+1,:)=[hp h' ho];&lt;br /&gt;
    end&lt;br /&gt;
    %mallado y representación&lt;br /&gt;
    [X,T]=meshgrid(x,t);&lt;br /&gt;
    surf(X,T,H)&lt;br /&gt;
    xlabel('Distancia (metros)');&lt;br /&gt;
    ylabel('Tiempo (horas)');&lt;br /&gt;
    zlabel('Nivel piezométrico (metros)')&lt;br /&gt;
}}&lt;br /&gt;
Efectivamente, como podemos comprobar en la gráfica, la solución es independiente del tiempo salvo para tiempos pequeños en los cuales no queda muy bien definida&lt;br /&gt;
&lt;br /&gt;
====Capacidad de recuperación del acuífero====&lt;br /&gt;
En este apartado queremos calcular una ley que nos describa el comportamiento del acuífero e el caso de que impermeabilizásemos las paredes del pozo partiendo del estado estacionario anterior, esto significaría que el fujo de agua en los bordes del pozo sería nulo y el nivel piezométrico iría variando hasta llegar a otro estado estacionario.&lt;br /&gt;
El estado que tratará de alcanzar el fluido será el inicial, ya que al impermeabilizar las paredes volvemos al caso del acuífero confinado y por ello es nivel piezométrico quedará constante a lo largo del tiempo y de la extensión del acuífero.&lt;br /&gt;
&lt;br /&gt;
====Método de Fourier====&lt;br /&gt;
Ahora suponemos que el radio del pozo es despreciable y que una vez extraido el agua el pozo se cierra quedando el acuifero de nuevo homogéneo. En este caso tomaremos la región ρ &amp;lt; 20. Nuestro objetivo es aproximar las soluciones usando el método de Fourier. De nuevo supondremos que la solución sólo depende de ρ y t, y tomaremos ahora como condición frontera h(20, t) = 40.&lt;br /&gt;
Vamos a considerar el sistema de ecuaciones para h(ρ,t)=h(ρ,t)-40:&lt;br /&gt;
 &amp;lt;math&amp;gt; \left\{\begin{matrix}&lt;br /&gt;
\frac{\partial h}{\partial t} - D (\frac{1}{\rho}  \frac{\partial h}{\partial \rho} + \frac{\partial^2 h}{\partial \rho^2})= 0 &amp;amp; \rho \epsilon (0, 20) &amp;amp; \theta \epsilon (0, 2\Pi ) &amp;amp; t &amp;gt; 0 \\ &lt;br /&gt;
\frac{\partial h}{\partial \rho}(0,t) = 0;   h(20, t)= 0 \\ &lt;br /&gt;
\end{matrix}\right. &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Obtenemos el problema de autovalores asociado al sistema anterior con el método de separación de variables:&lt;br /&gt;
 &amp;lt;math&amp;gt; \left\{\begin{matrix}&lt;br /&gt;
D (\frac{X'(\rho)}{\rho} + X''(\rho))+ λX(\rho)=0 \\&lt;br /&gt;
X'(0) = 0;   X(20)= 0 \\ &lt;br /&gt;
&lt;br /&gt;
\end{matrix}\right. &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Sabemos que los problemas de esta forma tienen como solución la función de Bessel de primera especie que forma una familia de autofunciones: &amp;lt;math&amp;gt;Ψ(\rho)=J_0·(\rho\sqrt{λ})&amp;lt;/math&amp;gt;. Estas se anulan cuando &amp;lt;math&amp;gt;(\rho\sqrt{λ})&amp;lt;/math&amp;gt; se iguala a 2.4048, 5.5201, 8.6537, 11.7915 y 14.9309, siendo estos los 5 primeros ceros de la función de Bessel. De esta manera y tomando ρ=20 obtenemos los 5 primeros autovalores:&lt;br /&gt;
&amp;lt;math&amp;gt;(20\sqrt{λ})=2.4048&amp;lt;/math&amp;gt;Haciendo la operación anterior para los 5 ceros obtenemos los siguientes autovalores: 0.0145, 0.0762, 0.1872, 0.3476, 0.5573.&lt;br /&gt;
Ahora vamos a dibujar las 5 primeras autofunciones utilizando la función besselj:&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
a1=0.0145;&lt;br /&gt;
a2=0.0762;&lt;br /&gt;
a3=0.1872;&lt;br /&gt;
a4=0.3476;&lt;br /&gt;
a5=0.5575;&lt;br /&gt;
r=0:0.02:20;&lt;br /&gt;
F1=besselj(0,r.*(sqrt(a1))); &lt;br /&gt;
F2=besselj(0,r.*(sqrt(a2)));&lt;br /&gt;
F3=besselj(0,r.*(sqrt(a3)));&lt;br /&gt;
F4=besselj(0,r.*(sqrt(a4)));&lt;br /&gt;
F5=besselj(0,r.*(sqrt(a5)));&lt;br /&gt;
hold on&lt;br /&gt;
plot(r,F1)&lt;br /&gt;
plot(r,F2,'r')&lt;br /&gt;
plot(r,F3,'g')	&lt;br /&gt;
plot(r,F4,'c')&lt;br /&gt;
plot(r,F5,'y')&lt;br /&gt;
hold off&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
Aproximamos ahora la solución de la ecuación tomando como dato inicial es&amp;lt;math&amp;gt; h (\rho,0)= -log \frac{|\rho + 0.01|}{20.01} &amp;lt;/math&amp;gt; y usando 5 términos del desarrollo de Fourier, teniendo en cuenta que las autofunciones son ortogonales respecto al producto escalar: &amp;lt;math&amp;gt; (f(\rho),g(\rho)) = \int_{0}^{20} \rho f(\rho) g(\rho) \cdot dx &amp;lt;/math&amp;gt;&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
x0=0; L=20;&lt;br /&gt;
c0=[2.4048,5.5201,8.6537,11.7915,14.9309]; %Vector de ceros de la función de Bessel&lt;br /&gt;
A=(c0./20).^2; %Vector de autovalores&lt;br /&gt;
K=5; %Número de términos del desarrollo de Fourier&lt;br /&gt;
x=x0:0.1:L;&lt;br /&gt;
N=length(x)-1;&lt;br /&gt;
J=zeros(N+1,K);&lt;br /&gt;
z=zeros(N+1,K);&lt;br /&gt;
t0=0; tf=500;&lt;br /&gt;
t=t0:0.1:tf;&lt;br /&gt;
[xx,tt]=meshgrid(x,t);&lt;br /&gt;
h=0;&lt;br /&gt;
for k=1:K&lt;br /&gt;
   z(:,k)=(x)'*sqrt(A(k));&lt;br /&gt;
   J(:,k)=besselj(0,z(:,k));&lt;br /&gt;
   h0=-log((abs(x+0.1))/20.01); %Condición inicial&lt;br /&gt;
   c(k)=trapz(x,x'.*h0'.*J(:,k))/trapz(x,x'.*J(:,k).*J(:,k)); %Coeficientes de Fourier&lt;br /&gt;
   h=h+c(k)*exp(-A(k)*t)'*J(:,k)';&lt;br /&gt;
end&lt;br /&gt;
surf(xx,tt,h)&lt;br /&gt;
title('Aproximación de la solución')&lt;br /&gt;
}}&lt;/div&gt;</summary>
		<author><name>Marta Cavero</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Nivel_piezom%C3%A9trico_de_un_acu%C3%ADfero_confinado_(A5)&amp;diff=29920</id>
		<title>Nivel piezométrico de un acuífero confinado (A5)</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Nivel_piezom%C3%A9trico_de_un_acu%C3%ADfero_confinado_(A5)&amp;diff=29920"/>
				<updated>2015-05-14T10:41:27Z</updated>
		
		<summary type="html">&lt;p&gt;Marta Cavero: /* Problema estacionario */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;br /&gt;
==== Introducción ====&lt;br /&gt;
&lt;br /&gt;
Consideramos un acuífero confinado entre dos capas de terreno impermeables horizontales. Llamaremos h(x, y) al nivel piezométrico del acuífero, definido por la altura que alcanzaría el agua si hiciéramos un sondeo en el punto (x, y). Obviamente este valor depende de la presión a la que se encuentra el agua confinada en el acuífero. Supondremos&lt;br /&gt;
que el acuífero es un medio poroso saturado de agua que ocupa una región infinita y está en equilibrio de manera que &amp;lt;math&amp;gt;h(x, y) = h_0&amp;lt;/math&amp;gt; constante para todo (x, y) ∈ &amp;lt;math&amp;gt;IR^{2}&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Sobre el acuifero se construye un pozo de sección circular y radio&amp;lt;math&amp;gt; ρ_0&amp;lt;/math&amp;gt; para extraer agua. La presencia del pozo hace que el nivel piezométrico cambie. Dada la simetría del problema podemos suponer que h(x, y) sólo va a depender de la distancia al pozo. Si tomamos coordenadas cilíndricas de forma que el eje OZ coincida con el eje de simetría del pozo, entonces h = h(ρ) donde &amp;lt;math&amp;gt;ρ = \sqrt{x^{2} + y^{2}}&amp;lt;/math&amp;gt; . Trabajaremos por tanto en coordenadas polares en el plano (ρ, θ).&lt;br /&gt;
&lt;br /&gt;
Las ecuaciones que permiten conocer h(ρ) son la ecuación de conservación de la masa:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; S = \frac{∂h}{∂t} + div q = 0 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
junto con la ley de Darcy&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; q = −K∇h &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
que es una ley experimental que modela el flujo de agua en un medio poroso. La ley de Darcy establece que el flujo de agua q a través de un medio poroso es proporcional a la diferencia de presión, que a su vez se puede escribir en términos del gradiente del nivel piezométrico en cada punto. La constante K se deduce experimentalmente para cada material y se conoce como la conductividad hidráulica o permeabilidad. Cuanto mayor es la constante K mayor es el flujo de agua provocado por un cambio&lt;br /&gt;
de presión. La ley de Darcy proporciona una buena aproximación del comportamiento del agua en un medio poroso siempre que este sea homogéneo e isótropo.&lt;br /&gt;
&lt;br /&gt;
La constante S en la ley de conservación de la masa se conoce como almacenamiento específico y se interpreta como la cantidad de agua que libera el acuífero al descender el nivel piezométrico en una unidad, por unidad de volumen.&lt;br /&gt;
&lt;br /&gt;
Combinando las ecuaciones de conservación de la masa con la ley de Darcy, obtenemos la ecuación:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \frac{∂h}{∂t} - D∆h = 0, ρ &amp;gt; ρ_0, θ ∈ (0, 2π), t &amp;gt; 0, (1) &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
donde D = K/S es la difusividad hidráulica que supondremos constante.&lt;br /&gt;
&lt;br /&gt;
==== Deducción de la fórmula ====&lt;br /&gt;
&lt;br /&gt;
En este apartado buscamos demostrar la ecuación (1) como combinación de la ecuación de conservación de masas y la Ley de Darcy.&lt;br /&gt;
&lt;br /&gt;
Por un lado sabemos que el laplaciaco equivale a la divergencia del gradiente: &lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; &lt;br /&gt;
(\Delta f = \nabla \cdot \nabla f = div \left (\nabla f) \right) &lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Por otro lado, sabemos que en coordenadas polares: &lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;x = ρ cos \theta \\&lt;br /&gt;
             y = ρ  sen \theta&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\bar{g_ρ } = cos \theta \bar{i} + sin \theta  \bar{j} \\&lt;br /&gt;
              \bar{g_\theta } = - ρ  sin \theta \bar{i} + ρ cos \theta \bar{j} &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;&lt;br /&gt;
G =&lt;br /&gt;
\left(&lt;br /&gt;
\begin{array}{cc}&lt;br /&gt;
1&amp;amp; 0 \\&lt;br /&gt;
0 &amp;amp; ρ ^{2} \\&lt;br /&gt;
\end{array}&lt;br /&gt;
\right);&lt;br /&gt;
\text {donde la raiz del determinante es} \sqrt{g} = ρ&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Como indica el enunciado, al sustituir la Ley de Darcy en la ecuación de conservación de la masa obtenemos y dividir entre S, teniendo en cuenta que el divergente del gradiente es el laplaciano como hemos indicado al principio de este apartado, obtenemos la ecuación (1): &amp;lt;math&amp;gt; \frac{∂h}{∂t} - \frac{k}{S}∆h = 0 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
En esta ecuación queda por desarrollar el Laplaciano de h. &lt;br /&gt;
Partiremos de la función h(ρ,θ), de la cual calcularemos primero el gradiente:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \nabla h = \frac{\partial h}{\partial \rho}\hat{\rho} + \frac{\partial h}{\partial \rho}\hat{\theta} =  \frac{\partial h}{\partial \rho}\bar{\rho} + \frac{1}{\rho^{2}} \frac{\partial h}{\partial \rho}\bar{\theta}  &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
teniendo en cuenta que &amp;lt;math&amp;gt;\bar{g^{i} } = \frac{\bar{g_i } }{ | \bar{g_i } | ^{2} } &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Ahora hacemos el divergente del gradiente anterior y obtenemos el Laplaciano en coordenadas polares:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;math&amp;gt;&lt;br /&gt;
 \Delta h = div(∇h) &lt;br /&gt;
= {1 \over \rho} {\partial \over \partial \rho}&lt;br /&gt;
  \left( \rho {\partial h \over \partial \rho} \right) &lt;br /&gt;
+ {1 \over \rho^2} {\partial^2 h \over \partial \theta^2}&lt;br /&gt;
= {1 \over \rho} {\partial h \over \partial \rho} &lt;br /&gt;
+ {\partial^2 h \over \partial \rho^2}&lt;br /&gt;
+ {1 \over \rho^2} {\partial^2 h \over \partial \theta^2}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Si consideramos que, debido a la simetría del problema, h sólo depende de su distancia al pozo, entonces obtenemos la función radial h(ρ), que nos permite simplificar el Laplaciano del modo siguiente:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;math&amp;gt;&lt;br /&gt;
 \Delta h = div(∇h) &lt;br /&gt;
= {1 \over \rho} {\partial h \over \partial \rho} &lt;br /&gt;
+ {\partial^2 h \over \partial \rho^2}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== Obtención de la ecuación====&lt;br /&gt;
&lt;br /&gt;
Para poder resolver la ecuación anterior y que el resultado sea único, hemos de establecer condiciones iniciales y de contorno.&lt;br /&gt;
&lt;br /&gt;
Las condiciones de contorno serán dos pues aparece la derivada segunda de la posición: &amp;lt;math&amp;gt; h(\rho_0 , t) = h_p \\&lt;br /&gt;
                                                                                                                                                                  h(20,t) = h_0 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
La condición inicial será única pues sólo aparece una derivada de primer orden en tiempo en nuestra ecuación: &amp;lt;math&amp;gt; h(\rho,0) = h_0 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
De este modo la ecuación resultante será:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \left\{\begin{matrix}&lt;br /&gt;
\frac{\partial h}{\partial t} - \frac{k}{s} (\frac{1}{\rho}  \frac{\partial h}{\partial \rho} + \frac{\partial^2 h}{\partial \rho^2})= 0 &amp;amp; \rho \epsilon (\rho_{0}, 2c) &amp;amp; \theta \epsilon (0, 2\Pi ) &amp;amp; t &amp;gt; 0 \\ &lt;br /&gt;
h(\rho_{0},t) = h_{p};   h(20, t)= h_{0} \\ &lt;br /&gt;
h(\rho, 0) = h_{0} &lt;br /&gt;
\end{matrix}\right. &amp;lt;/math&amp;gt; &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==== Resolución por método de diferencias finitas ====&lt;br /&gt;
&lt;br /&gt;
Suponiendo &amp;lt;math&amp;gt;ρ_0 =0.5m&amp;lt;/math&amp;gt;, &amp;lt;math&amp;gt;h_0 =45m&amp;lt;/math&amp;gt;, &amp;lt;math&amp;gt;hp =34&amp;lt;/math&amp;gt;, D=10−2, &amp;lt;math&amp;gt;(ρ,0)=h_0&amp;lt;/math&amp;gt;; y tomando  ∆ρ = 0.1 y ∆t = ∆ρ. Vamos a resolver la ecuación anterior por el método de diferencias finitas, usando el Método de Heun para realizar la aproximación en tiempo.&lt;br /&gt;
&lt;br /&gt;
Primero, sustituyendo los datos anteriores en la ecuación, llegamos a:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \left\{\begin{matrix}&lt;br /&gt;
\frac{\partial h}{\partial t} - 10^{2} (\frac{1}{\rho}  \frac{\partial h}{\partial \rho} + \frac{\partial^2 h}{\partial \rho^2})= 0 &amp;amp; \rho \epsilon (0.5, 20) &amp;amp; \theta \epsilon (0, 2\Pi ) &amp;amp; t &amp;gt; 0 \\ &lt;br /&gt;
h(0.5,t) = 34;   h(20, t)= 45 \\ &lt;br /&gt;
h(\rho, 0) = 45&lt;br /&gt;
\end{matrix}\right. &amp;lt;/math&amp;gt; &lt;br /&gt;
&lt;br /&gt;
Aplicando el método de las diferencias finitas llegamos al siguiente código:&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
&lt;br /&gt;
%TRPRIMERA FASE. ESPACIO&lt;br /&gt;
&lt;br /&gt;
a=0.5; b=20; %Condiciones de contorno&lt;br /&gt;
drho=0.1; N=(b-a)/drho; %División del intervalo&lt;br /&gt;
&lt;br /&gt;
rho=a+drho:drho:b-drho; %Sólo nodos interiores&lt;br /&gt;
&lt;br /&gt;
%Creamos las matrices&lt;br /&gt;
&lt;br /&gt;
L=diag(ones(1,N-2),1)-diag(ones(1,N-2),-1);&lt;br /&gt;
A=diag(1./rho);&lt;br /&gt;
L=10^(-2)*(1/(2*drho))*A*L;&lt;br /&gt;
&lt;br /&gt;
K=-2*diag(ones(1,N-1))+diag(ones(1,N-2),1)+diag(ones(1,N-2),-1);&lt;br /&gt;
K=10^(-2)*(1/drho^2)*K; &lt;br /&gt;
&lt;br /&gt;
F=zeros(N-1,1);&lt;br /&gt;
F(1,1)=10^(-2)*(-17/(rho(1)*drho)+34/drho^2);&lt;br /&gt;
F(N-1,1)=10^(-2)*(45/(rho(N-1)*2*drho)+45/drho^2);&lt;br /&gt;
&lt;br /&gt;
%SEGUDA FASE. TIEMPO&lt;br /&gt;
&lt;br /&gt;
H=ones(1,length(rho)); H=H*45; H=H';&lt;br /&gt;
dt=drho; T=10; t=0:dt:T;&lt;br /&gt;
h0=34; hN=45;&lt;br /&gt;
sol=[h0 H' hN];&lt;br /&gt;
&lt;br /&gt;
for j=1:length(t)-1 &lt;br /&gt;
    &lt;br /&gt;
    %Método de Heun&lt;br /&gt;
    k1=F+(K+L)*H;&lt;br /&gt;
    k2=F+(K+L)*(H+k1*dt);&lt;br /&gt;
    H=H+(dt/2)*(k1+k2);&lt;br /&gt;
 &lt;br /&gt;
    sol(j+1,:)=[h0 H' hN]; %Salvamos las solución, incluimos los extremos&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
rho1=a:drho:b; %Incluimos los nodos exteriores&lt;br /&gt;
&lt;br /&gt;
[rr,tt]=meshgrid(rho1,t);&lt;br /&gt;
surf(rr,tt,sol); %Dibujamos la solución&lt;br /&gt;
title('Nivel Piezométrico. Método Diferencias finitas con Heun en tiempo.')&lt;br /&gt;
xlabel('Distancia radial al centro del pozo.')&lt;br /&gt;
ylabel('Tiempo.')&lt;br /&gt;
zlabel('Nivel piezométrico.')&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
Mediante este código obtenemos la siguiente gráfica:&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Grafica npiezometrico.jpg|500px|thumb|best|Gráfica Nivel Piezométrico aproximada con el Método de Diferencias Finitas con Heun en tiempo.]]&lt;br /&gt;
&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Ahora dibujaremos la gráfica mediante los métodos de Euler implícito y trapecio y compararemos los resultados obtenidos.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Sobre el programa anterior cambiaremos las líneas correspondientes al método de Heun.&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* Método de Euler implícito:&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;math&amp;gt; \left\{\begin{matrix}&lt;br /&gt;
y_{0}\\&lt;br /&gt;
y_{n+1}=y_{n} + hf(t_{n+1},y_{n+1})\\&lt;br /&gt;
\end{matrix}\right. &amp;lt;/math&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
&lt;br /&gt;
for j=1:length(t)-1 &lt;br /&gt;
    &lt;br /&gt;
    %Método de Euler implícito&lt;br /&gt;
    &lt;br /&gt;
    H=(eye(N-1)-dt*(K+L))\(H+(F*dt)); &lt;br /&gt;
 &lt;br /&gt;
    sol(j+1,:)=[h0 H' hN]; %Salvamos las solución, incluimos los extremos&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
rho1=a:drho:b; %Incluimos los nodos exteriores&lt;br /&gt;
&lt;br /&gt;
[rr,tt]=meshgrid(rho1,t);&lt;br /&gt;
surf(rr,tt,sol); %Dibujamos la solución&lt;br /&gt;
title('Nivel Piezométrico. Método Diferencias finitas con Euler en tiempo.')&lt;br /&gt;
xlabel('Distancia radial al centro del pozo.')&lt;br /&gt;
ylabel('Tiempo.')&lt;br /&gt;
zlabel('Nivel piezométrico.')&lt;br /&gt;
&lt;br /&gt;
}}&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* Método del Trapecio:&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;math&amp;gt; \left\{\begin{matrix}&lt;br /&gt;
y_{0}\\&lt;br /&gt;
y_{n+1}=y_{n} + \frac{h}{2}f((t_{n},y_{n}+f(t_{n+1},y_{n+1}))\\&lt;br /&gt;
\end{matrix}\right. &amp;lt;/math&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
for j=1:length(t)-1 &lt;br /&gt;
    &lt;br /&gt;
    %Método del trapecio&lt;br /&gt;
    k1=F+(K+L)*H;&lt;br /&gt;
    k2=F+(K+L)*(H+k1*dt); &lt;br /&gt;
    H=(eye(N-1)-(dt/2)*(K+L))\(H+dt*F+(dt/2)*(K+L)*H);&lt;br /&gt;
 &lt;br /&gt;
    sol(j+1,:)=[h0 H' hN]; %Salvamos las solución, incluimos los extremos&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
rho1=a:drho:b; %Incluimos los nodos exteriores&lt;br /&gt;
&lt;br /&gt;
[rr,tt]=meshgrid(rho1,t);&lt;br /&gt;
surf(rr,tt,sol); %Dibujamos la solución&lt;br /&gt;
title('Nivel Piezométrico. Método Diferencias finitas con trapecio en tiempo.')&lt;br /&gt;
xlabel('Distancia radial al centro del pozo.')&lt;br /&gt;
ylabel('Tiempo.')&lt;br /&gt;
zlabel('Nivel piezométrico.')&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
Como podemos ver a continuación las tres gráficas resultantes son prácticamente iguales por lo que los tres métodos hacen una aproximación similar.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
[[Archivo:Trapecio12.png|500px|thumb|left|Gráfica Nivel Piezométrico aproximada con el Método de Diferencias Finitas con Trapecio en tiempo.]]&lt;br /&gt;
[[Archivo:Euler12.png|500px|thumb|right|Gráfica Nivel Piezométrico aproximada con el Método de Diferencias Finitas con Euler Implícito en tiempo.]]&lt;br /&gt;
&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== Comportamiento del nivel piezométrico con &amp;lt;math&amp;gt; \rho &amp;lt;/math&amp;gt; constante ====&lt;br /&gt;
&lt;br /&gt;
Ahora supondremos que &amp;lt;math&amp;gt; \rho &amp;lt;/math&amp;gt; es constante y que su valor es 2 y dibujaremos el comportamiento del nivel piezométrico en una gráfica 2D nivel piezométrico-tiempo.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Nuevamente utilizando el programa anterior con el  método de Heun:&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Rho2.png|500px|thumb|best|Gráfica Nivel Piezométrico-tiempo para &amp;lt;math&amp;gt; \rho =2 &amp;lt;/math&amp;gt; para T=10.]]&lt;br /&gt;
[[Archivo:Rho1000.png|500px|thumb|best|Gráfica Nivel Piezométrico-tiempo para &amp;lt;math&amp;gt; \rho =2 &amp;lt;/math&amp;gt; para T=1000.]]&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
&lt;br /&gt;
%PRIMERA FASE. ESPACIO&lt;br /&gt;
&lt;br /&gt;
a=0.5; b=20; %Condiciones de contorno&lt;br /&gt;
drho=0.1; N=(b-a)/drho; %División del intervalo&lt;br /&gt;
&lt;br /&gt;
rho=a+drho:drho:b-drho; %Sólo nodos interiores&lt;br /&gt;
&lt;br /&gt;
%Creamos las matrices&lt;br /&gt;
&lt;br /&gt;
L=diag(ones(1,N-2),1)-diag(ones(1,N-2),-1);&lt;br /&gt;
A=diag(1./rho);&lt;br /&gt;
L=10^(-2)*(1/(2*drho))*A*L;&lt;br /&gt;
&lt;br /&gt;
K=-2*diag(ones(1,N-1))+diag(ones(1,N-2),1)+diag(ones(1,N-2),-1);&lt;br /&gt;
K=10^(-2)*(1/drho^2)*K; &lt;br /&gt;
&lt;br /&gt;
F=zeros(N-1,1);&lt;br /&gt;
F(1,1)=10^(-2)*(-17/(rho(1)*drho)+34/drho^2);&lt;br /&gt;
F(N-1,1)=10^(-2)*(45/(rho(N-1)*2*drho)+45/drho^2);&lt;br /&gt;
&lt;br /&gt;
%SEGUDA FASE. TIEMPO&lt;br /&gt;
&lt;br /&gt;
H=ones(1,length(rho)); H=H*45; H=H';&lt;br /&gt;
dt=drho; &lt;br /&gt;
T=10 &lt;br /&gt;
%Comprobamos también la solución para un tiempo mayor &lt;br /&gt;
%T=1000&lt;br /&gt;
t=0:dt:T;&lt;br /&gt;
h0=34; hN=45;&lt;br /&gt;
sol=[h0 H' hN];&lt;br /&gt;
&lt;br /&gt;
for j=1:length(t)-1 &lt;br /&gt;
    &lt;br /&gt;
    %Método de Heun&lt;br /&gt;
    k1=F+(K+L)*H;&lt;br /&gt;
    k2=F+(K+L)*(H+k1*dt);&lt;br /&gt;
    H=H+(dt/2)*(k1+k2);&lt;br /&gt;
 &lt;br /&gt;
    sol(j+1,:)=[h0 H' hN]; %Salvamos las solución, incluimos los extremos&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
rho1=a:drho:b; %Incluimos los nodos exteriores&lt;br /&gt;
&lt;br /&gt;
m=sol(:,rho==2); %Vector que incluye la solución en tiempo para rho=2&lt;br /&gt;
&lt;br /&gt;
plot(t,m);&lt;br /&gt;
&lt;br /&gt;
title('Comportamiento del nivel piezométrico en el tiempo para p=2')&lt;br /&gt;
xlabel('Tiempo')&lt;br /&gt;
ylabel('Nivel piezométrico.')&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
La primera gráfica muestra que para tiempos pequeños la variación del nivel piezométrico es muy pequeña (del orden de 0,10/0,15 m), aún así como observamos en la segunda gráfica a medida que avanzamos en el tiempo la variación del nivel disminuye aún más ya que la curva está cada vez menos inclinada.&lt;br /&gt;
&lt;br /&gt;
==== Variación del nivel piezométrico en tiempos grandes ====&lt;br /&gt;
Ahora vamos a comprobar que la variación del nivel piezométrico para tiempos elevados (T=5000) es mínima.&lt;br /&gt;
Para ello dibujaremos las soluciones cada 100 horas de en el intervalo temporal [1; 5000], en&lt;br /&gt;
una misma gráfica.&lt;br /&gt;
[[Archivo:Tiemposg2.png|marco|derecha|Nivel piezométrico para tiempos grandes]]&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
%PRIMERA FASE. ESPACIO&lt;br /&gt;
&lt;br /&gt;
a=0.5; b=20; %Condiciones de contorno&lt;br /&gt;
drho=0.1; N=(b-a)/drho; %División del intervalo&lt;br /&gt;
&lt;br /&gt;
rho=a+drho:drho:b-drho; %Sólo nodos interiores&lt;br /&gt;
&lt;br /&gt;
%Creamos las matrices&lt;br /&gt;
&lt;br /&gt;
L=diag(ones(1,N-2),1)-diag(ones(1,N-2),-1);&lt;br /&gt;
A=diag(1./rho);&lt;br /&gt;
L=10^(-2)*(1/(2*drho))*A*L;&lt;br /&gt;
&lt;br /&gt;
K=-2*diag(ones(1,N-1))+diag(ones(1,N-2),1)+diag(ones(1,N-2),-1);&lt;br /&gt;
K=10^(-2)*(1/drho^2)*K; &lt;br /&gt;
&lt;br /&gt;
F=zeros(N-1,1);&lt;br /&gt;
F(1,1)=10^(-2)*(-17/(rho(1)*drho)+34/drho^2);&lt;br /&gt;
F(N-1,1)=10^(-2)*(45/(rho(N-1)*2*drho)+45/drho^2);&lt;br /&gt;
&lt;br /&gt;
%SEGUDA FASE. TIEMPO&lt;br /&gt;
&lt;br /&gt;
H=ones(1,length(rho)); H=H*45; H=H';&lt;br /&gt;
dt=0.1; T=5000; t=0:dt:T;&lt;br /&gt;
h0=34; hN=45;&lt;br /&gt;
sol=[h0 H' hN];&lt;br /&gt;
&lt;br /&gt;
figure(1);&lt;br /&gt;
hold on;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
for j=1:length(t)-1 &lt;br /&gt;
    &lt;br /&gt;
    %Método de Heun&lt;br /&gt;
    k1=F+(K+L)*H;&lt;br /&gt;
    k2=F+(K+L)*(H+k1*dt);&lt;br /&gt;
    H=H+(dt/2)*(k1+k2);&lt;br /&gt;
 &lt;br /&gt;
    sol(j+1,:)=[h0 H' hN]; %Salvamos las solución, incluimos los extremos&lt;br /&gt;
    &lt;br /&gt;
 if rem(t(j),100)==0; &lt;br /&gt;
    &lt;br /&gt;
    rho1=a:drho:b; %Incluimos los nodos exteriores&lt;br /&gt;
  &lt;br /&gt;
  plot(rho1,sol(j,:)) %pintamos la solución cada 100 horas&lt;br /&gt;
  &lt;br /&gt;
  title('Variación del nivel piezométrico para tiempos grandes')&lt;br /&gt;
  pause(1)&lt;br /&gt;
&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
end&lt;br /&gt;
}}&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Como se puede observar en la gráfica según vamos avanzando en el tiempo las curvas están más juntas lo que quiere decir que la variación del nivel es cada vez menor aproximándose a un régimen estacionario.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Trabajo21.jpg|marco|derecha|Nivel piezométrico estacionario]]&lt;br /&gt;
&lt;br /&gt;
====Problema estacionario====&lt;br /&gt;
Como hemos visto en el apartado anterior para tiempos grandes el nivel piezométrico se mantiene practicamente constante a lo largo del tiempo, esto es debido a que se establece un equilibrio entre el caudal de agua extraida del acuifero y la migración de aguas desde los puntos más alejados del pozo hacia este.&lt;br /&gt;
Por lo tanto se verifica que:&lt;br /&gt;
 &amp;lt;math&amp;gt;\frac{\partial h}{\partial t}=0&amp;lt;/math&amp;gt;&lt;br /&gt;
Y por lo tanto el nivel piezométrico se puede aproximar por:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \left\{\begin{matrix}&lt;br /&gt;
- \frac{k}{s} (\frac{1}{\rho}  \frac{\partial h}{\partial \rho} + \frac{\partial^2 h}{\partial \rho^2})= 0 &amp;amp; \rho \epsilon (1, 20) &amp;amp; \theta \epsilon (0, 2\Pi ) &amp;amp; 0 &amp;lt; t &amp;lt; 5000 \\ &lt;br /&gt;
h(1,t) = 35;    h(20, t)= 40 \\ &lt;br /&gt;
h(\rho, 0) = 40 &lt;br /&gt;
\end{matrix}\right. &amp;lt;/math&amp;gt;&lt;br /&gt;
Resolvemos por diferencias finitas:&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
    %datos&lt;br /&gt;
    t=5000;&lt;br /&gt;
    l=20;&lt;br /&gt;
    D=0.01;&lt;br /&gt;
    hp=35;&lt;br /&gt;
    ho=40;&lt;br /&gt;
    %discretización&lt;br /&gt;
    s=0.1;&lt;br /&gt;
    x0=1;&lt;br /&gt;
    x=x0:s:l;&lt;br /&gt;
    xint=x0+s:s:l-s;&lt;br /&gt;
    N=length(x)-2; &lt;br /&gt;
    %construimos las matrices para el método de las diferencias finitas&lt;br /&gt;
    K=(1/s^2)*(diag(2*ones(1,N))-diag(ones(1,N-1),1)-diag(ones(1,N-1),-1));&lt;br /&gt;
    A=(1/(s*2))*(diag(ones(1,N-1),1)-diag(ones(1,N-1),-1));&lt;br /&gt;
    A=diag(1./xint)*A;&lt;br /&gt;
    h0=(40*ones(N,1));&lt;br /&gt;
    dt=200; &lt;br /&gt;
    t=0:dt:t;&lt;br /&gt;
    M=length(t)-1;&lt;br /&gt;
    F=(zeros(N,1));&lt;br /&gt;
    F(1)=D*((hp/s^2)-(hp/(2*s)*1/xint(1)));&lt;br /&gt;
    F(N)=D*((ho/s^2)+ho/(s*2*xint(N)));&lt;br /&gt;
    H(1,:)=[40;h0;40]'; &lt;br /&gt;
    h=h0;&lt;br /&gt;
    for n=1:M&lt;br /&gt;
      h=(D)*(K-A)\((F)); %utilizamos el comando backslash para resolver el sistema de ecuaciones&lt;br /&gt;
      H(n+1,:)=[hp h' ho];&lt;br /&gt;
    end&lt;br /&gt;
    %mallado y representación&lt;br /&gt;
    [X,T]=meshgrid(x,t);&lt;br /&gt;
    surf(X,T,H)&lt;br /&gt;
    xlabel('Distancia (metros)');&lt;br /&gt;
    ylabel('Tiempo (horas)');&lt;br /&gt;
    zlabel('Nivel piezométrico (metros)')&lt;br /&gt;
}}&lt;br /&gt;
Efectivamente, como podemos comprobar en la gráfica, la solución es independiente del tiempo salvo para tiempos pequeños en los cuales no queda muy bien definida&lt;br /&gt;
&lt;br /&gt;
====Capacidad de recuperación del acuífero====&lt;br /&gt;
En este apartado queremos calcular una ley que nos describa el comportamiento del acuífero e el caso de que impermeabilizásemos las paredes del pozo partiendo del estado estacionario anterior, esto significaría que el fujo de agua en los bordes del pozo sería nulo y el nivel piezométrico iría variando hasta llegar a otro estado estacionario.&lt;br /&gt;
La condición frontera en r=r0 será entonces:&lt;br /&gt;
&amp;lt;math&amp;gt;\frac{\partial h(r0,t)}{\partial \rho}=0&amp;lt;/math&amp;gt;&lt;br /&gt;
Ya que en caso de que la derivada parcial del nivel piezométrico respecto a la distancia r sea nula significa que el estado está en equilibrio y no hay corrientes de líquido.&lt;br /&gt;
El estado que tratará de alcanzar el fluido será el inicial, con el mismo nivel piezométrico ya que al impermeabilizar las paredes del pozo hemos vuelto al estado inicial.&lt;br /&gt;
&lt;br /&gt;
====Método de Fourier====&lt;br /&gt;
Ahora suponemos que el radio del pozo es despreciable y que una vez extraido el agua el pozo se cierra quedando el acuifero de nuevo homogéneo. En este caso tomaremos la región ρ &amp;lt; 20. Nuestro objetivo es aproximar las soluciones usando el método de Fourier. De nuevo supondremos que la solución sólo depende de ρ y t, y tomaremos ahora como condición frontera h(20, t) = 40.&lt;br /&gt;
Vamos a considerar el sistema de ecuaciones para h(ρ,t)=h(ρ,t)-40:&lt;br /&gt;
 &amp;lt;math&amp;gt; \left\{\begin{matrix}&lt;br /&gt;
\frac{\partial h}{\partial t} - D (\frac{1}{\rho}  \frac{\partial h}{\partial \rho} + \frac{\partial^2 h}{\partial \rho^2})= 0 &amp;amp; \rho \epsilon (0, 20) &amp;amp; \theta \epsilon (0, 2\Pi ) &amp;amp; t &amp;gt; 0 \\ &lt;br /&gt;
\frac{\partial h}{\partial \rho}(0,t) = 0;   h(20, t)= 0 \\ &lt;br /&gt;
\end{matrix}\right. &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Obtenemos el problema de autovalores asociado al sistema anterior con el método de separación de variables:&lt;br /&gt;
 &amp;lt;math&amp;gt; \left\{\begin{matrix}&lt;br /&gt;
D (\frac{X'(\rho)}{\rho} + X''(\rho))+ λX(\rho)=0 \\&lt;br /&gt;
X'(0) = 0;   X(20)= 0 \\ &lt;br /&gt;
&lt;br /&gt;
\end{matrix}\right. &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Sabemos que los problemas de esta forma tienen como solución la función de Bessel de primera especie que forma una familia de autofunciones: &amp;lt;math&amp;gt;Ψ(\rho)=J_0·(\rho\sqrt{λ})&amp;lt;/math&amp;gt;. Estas se anulan cuando &amp;lt;math&amp;gt;(\rho\sqrt{λ})&amp;lt;/math&amp;gt; se iguala a 2.4048, 5.5201, 8.6537, 11.7915 y 14.9309, siendo estos los 5 primeros ceros de la función de Bessel. De esta manera y tomando ρ=20 obtenemos los 5 primeros autovalores:&lt;br /&gt;
&amp;lt;math&amp;gt;(20\sqrt{λ})=2.4048&amp;lt;/math&amp;gt;Haciendo la operación anterior para los 5 ceros obtenemos los siguientes autovalores: 0.0145, 0.0762, 0.1872, 0.3476, 0.5573.&lt;br /&gt;
Ahora vamos a dibujar las 5 primeras autofunciones utilizando la función besselj:&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
a1=0.0145;&lt;br /&gt;
a2=0.0762;&lt;br /&gt;
a3=0.1872;&lt;br /&gt;
a4=0.3476;&lt;br /&gt;
a5=0.5575;&lt;br /&gt;
r=0:0.02:20;&lt;br /&gt;
F1=besselj(0,r.*(sqrt(a1))); &lt;br /&gt;
F2=besselj(0,r.*(sqrt(a2)));&lt;br /&gt;
F3=besselj(0,r.*(sqrt(a3)));&lt;br /&gt;
F4=besselj(0,r.*(sqrt(a4)));&lt;br /&gt;
F5=besselj(0,r.*(sqrt(a5)));&lt;br /&gt;
hold on&lt;br /&gt;
plot(r,F1)&lt;br /&gt;
plot(r,F2,'r')&lt;br /&gt;
plot(r,F3,'g')	&lt;br /&gt;
plot(r,F4,'c')&lt;br /&gt;
plot(r,F5,'y')&lt;br /&gt;
hold off&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
Aproximamos ahora la solución de la ecuación tomando como dato inicial es&amp;lt;math&amp;gt; h (\rho,0)= -log \frac{|\rho + 0.01|}{20.01} &amp;lt;/math&amp;gt; y usando 5 términos del desarrollo de Fourier, teniendo en cuenta que las autofunciones son ortogonales respecto al producto escalar: &amp;lt;math&amp;gt; (f(\rho),g(\rho)) = \int_{0}^{20} \rho f(\rho) g(\rho) \cdot dx &amp;lt;/math&amp;gt;&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
x0=0; L=20;&lt;br /&gt;
c0=[2.4048,5.5201,8.6537,11.7915,14.9309]; %Vector de ceros de la función de Bessel&lt;br /&gt;
A=(c0./20).^2; %Vector de autovalores&lt;br /&gt;
K=5; %Número de términos del desarrollo de Fourier&lt;br /&gt;
x=x0:0.1:L;&lt;br /&gt;
N=length(x)-1;&lt;br /&gt;
J=zeros(N+1,K);&lt;br /&gt;
z=zeros(N+1,K);&lt;br /&gt;
t0=0; tf=500;&lt;br /&gt;
t=t0:0.1:tf;&lt;br /&gt;
[xx,tt]=meshgrid(x,t);&lt;br /&gt;
h=0;&lt;br /&gt;
for k=1:K&lt;br /&gt;
   z(:,k)=(x)'*sqrt(A(k));&lt;br /&gt;
   J(:,k)=besselj(0,z(:,k));&lt;br /&gt;
   h0=-log((abs(x+0.1))/20.01); %Condición inicial&lt;br /&gt;
   c(k)=trapz(x,x'.*h0'.*J(:,k))/trapz(x,x'.*J(:,k).*J(:,k)); %Coeficientes de Fourier&lt;br /&gt;
   h=h+c(k)*exp(-A(k)*t)'*J(:,k)';&lt;br /&gt;
end&lt;br /&gt;
surf(xx,tt,h)&lt;br /&gt;
title('Aproximación de la solución')&lt;br /&gt;
}}&lt;/div&gt;</summary>
		<author><name>Marta Cavero</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Nivel_piezom%C3%A9trico_de_un_acu%C3%ADfero_confinado_(A5)&amp;diff=29901</id>
		<title>Nivel piezométrico de un acuífero confinado (A5)</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Nivel_piezom%C3%A9trico_de_un_acu%C3%ADfero_confinado_(A5)&amp;diff=29901"/>
				<updated>2015-05-14T09:38:35Z</updated>
		
		<summary type="html">&lt;p&gt;Marta Cavero: /* Variación del nivel piezométrico en tiempos grandes */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;br /&gt;
==== Introducción ====&lt;br /&gt;
&lt;br /&gt;
Consideramos un acuífero confinado entre dos capas de terreno impermeables horizontales. Llamaremos h(x, y) al nivel piezométrico del acuífero, definido por la altura que alcanzaría el agua si hiciéramos un sondeo en el punto (x, y). Obviamente este valor depende de la presión a la que se encuentra el agua confinada en el acuífero. Supondremos&lt;br /&gt;
que el acuífero es un medio poroso saturado de agua que ocupa una región infinita y está en equilibrio de manera que &amp;lt;math&amp;gt;h(x, y) = h_0&amp;lt;/math&amp;gt; constante para todo (x, y) ∈ &amp;lt;math&amp;gt;IR^{2}&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Sobre el acuifero se construye un pozo de sección circular y radio&amp;lt;math&amp;gt; ρ_0&amp;lt;/math&amp;gt; para extraer agua. La presencia del pozo hace que el nivel piezométrico cambie. Dada la simetría del problema podemos suponer que h(x, y) sólo va a depender de la distancia al pozo. Si tomamos coordenadas cilíndricas de forma que el eje OZ coincida con el eje de simetría del pozo, entonces h = h(ρ) donde &amp;lt;math&amp;gt;ρ = \sqrt{x^{2} + y^{2}}&amp;lt;/math&amp;gt; . Trabajaremos por tanto en coordenadas polares en el plano (ρ, θ).&lt;br /&gt;
&lt;br /&gt;
Las ecuaciones que permiten conocer h(ρ) son la ecuación de conservación de la masa:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; S = \frac{∂h}{∂t} + div q = 0 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
junto con la ley de Darcy&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; q = −K∇h &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
que es una ley experimental que modela el flujo de agua en un medio poroso. La ley de Darcy establece que el flujo de agua q a través de un medio poroso es proporcional a la diferencia de presión, que a su vez se puede escribir en términos del gradiente del nivel piezométrico en cada punto. La constante K se deduce experimentalmente para cada material y se conoce como la conductividad hidráulica o permeabilidad. Cuanto mayor es la constante K mayor es el flujo de agua provocado por un cambio&lt;br /&gt;
de presión. La ley de Darcy proporciona una buena aproximación del comportamiento del agua en un medio poroso siempre que este sea homogéneo e isótropo.&lt;br /&gt;
&lt;br /&gt;
La constante S en la ley de conservación de la masa se conoce como almacenamiento específico y se interpreta como la cantidad de agua que libera el acuífero al descender el nivel piezométrico en una unidad, por unidad de volumen.&lt;br /&gt;
&lt;br /&gt;
Combinando las ecuaciones de conservación de la masa con la ley de Darcy, obtenemos la ecuación:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \frac{∂h}{∂t} - D∆h = 0, ρ &amp;gt; ρ_0, θ ∈ (0, 2π), t &amp;gt; 0, (1) &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
donde D = K/S es la difusividad hidráulica que supondremos constante.&lt;br /&gt;
&lt;br /&gt;
==== Deducción de la fórmula ====&lt;br /&gt;
&lt;br /&gt;
En este apartado buscamos demostrar la ecuación (1) como combinación de la ecuación de conservación de masas y la Ley de Darcy.&lt;br /&gt;
&lt;br /&gt;
Por un lado sabemos que el laplaciaco equivale a la divergencia del gradiente: &lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; &lt;br /&gt;
(\Delta f = \nabla \cdot \nabla f = div \left (\nabla f) \right) &lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Por otro lado, sabemos que en coordenadas polares: &lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;x = ρ cos \theta \\&lt;br /&gt;
             y = ρ  sen \theta&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\bar{g_ρ } = cos \theta \bar{i} + sin \theta  \bar{j} \\&lt;br /&gt;
              \bar{g_\theta } = - ρ  sin \theta \bar{i} + ρ cos \theta \bar{j} &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;&lt;br /&gt;
G =&lt;br /&gt;
\left(&lt;br /&gt;
\begin{array}{cc}&lt;br /&gt;
1&amp;amp; 0 \\&lt;br /&gt;
0 &amp;amp; ρ ^{2} \\&lt;br /&gt;
\end{array}&lt;br /&gt;
\right);&lt;br /&gt;
\text {donde la raiz del determinante es} \sqrt{g} = ρ&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Como indica el enunciado, al sustituir la Ley de Darcy en la ecuación de conservación de la masa obtenemos y dividir entre S, teniendo en cuenta que el divergente del gradiente es el laplaciano como hemos indicado al principio de este apartado, obtenemos la ecuación (1): &amp;lt;math&amp;gt; \frac{∂h}{∂t} - \frac{k}{S}∆h = 0 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
En esta ecuación queda por desarrollar el Laplaciano de h. &lt;br /&gt;
Partiremos de la función h(ρ,θ), de la cual calcularemos primero el gradiente:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \nabla h = \frac{\partial h}{\partial \rho}\hat{\rho} + \frac{\partial h}{\partial \rho}\hat{\theta} =  \frac{\partial h}{\partial \rho}\bar{\rho} + \frac{1}{\rho^{2}} \frac{\partial h}{\partial \rho}\bar{\theta}  &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
teniendo en cuenta que &amp;lt;math&amp;gt;\bar{g^{i} } = \frac{\bar{g_i } }{ | \bar{g_i } | ^{2} } &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Ahora hacemos el divergente del gradiente anterior y obtenemos el Laplaciano en coordenadas polares:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;math&amp;gt;&lt;br /&gt;
 \Delta h = div(∇h) &lt;br /&gt;
= {1 \over \rho} {\partial \over \partial \rho}&lt;br /&gt;
  \left( \rho {\partial h \over \partial \rho} \right) &lt;br /&gt;
+ {1 \over \rho^2} {\partial^2 h \over \partial \theta^2}&lt;br /&gt;
= {1 \over \rho} {\partial h \over \partial \rho} &lt;br /&gt;
+ {\partial^2 h \over \partial \rho^2}&lt;br /&gt;
+ {1 \over \rho^2} {\partial^2 h \over \partial \theta^2}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Si consideramos que, debido a la simetría del problema, h sólo depende de su distancia al pozo, entonces obtenemos la función radial h(ρ), que nos permite simplificar el Laplaciano del modo siguiente:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;math&amp;gt;&lt;br /&gt;
 \Delta h = div(∇h) &lt;br /&gt;
= {1 \over \rho} {\partial h \over \partial \rho} &lt;br /&gt;
+ {\partial^2 h \over \partial \rho^2}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== Obtención de la ecuación====&lt;br /&gt;
&lt;br /&gt;
Para poder resolver la ecuación anterior y que el resultado sea único, hemos de establecer condiciones iniciales y de contorno.&lt;br /&gt;
&lt;br /&gt;
Las condiciones de contorno serán dos pues aparece la derivada segunda de la posición: &amp;lt;math&amp;gt; h(\rho_0 , t) = h_p \\&lt;br /&gt;
                                                                                                                                                                  h(20,t) = h_0 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
La condición inicial será única pues sólo aparece una derivada de primer orden en tiempo en nuestra ecuación: &amp;lt;math&amp;gt; h(\rho,0) = h_0 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
De este modo la ecuación resultante será:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \left\{\begin{matrix}&lt;br /&gt;
\frac{\partial h}{\partial t} - \frac{k}{s} (\frac{1}{\rho}  \frac{\partial h}{\partial \rho} + \frac{\partial^2 h}{\partial \rho^2})= 0 &amp;amp; \rho \epsilon (\rho_{0}, 2c) &amp;amp; \theta \epsilon (0, 2\Pi ) &amp;amp; t &amp;gt; 0 \\ &lt;br /&gt;
h(\rho_{0},t) = h_{p};   h(20, t)= h_{0} \\ &lt;br /&gt;
h(\rho, 0) = h_{0} &lt;br /&gt;
\end{matrix}\right. &amp;lt;/math&amp;gt; &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==== Resolución por método de diferencias finitas ====&lt;br /&gt;
&lt;br /&gt;
Suponiendo &amp;lt;math&amp;gt;ρ_0 =0.5m&amp;lt;/math&amp;gt;, &amp;lt;math&amp;gt;h_0 =45m&amp;lt;/math&amp;gt;, &amp;lt;math&amp;gt;hp =34&amp;lt;/math&amp;gt;, D=10−2, &amp;lt;math&amp;gt;(ρ,0)=h_0&amp;lt;/math&amp;gt;; y tomando  ∆ρ = 0.1 y ∆t = ∆ρ. Vamos a resolver la ecuación anterior por el método de diferencias finitas, usando el Método de Heun para realizar la aproximación en tiempo.&lt;br /&gt;
&lt;br /&gt;
Primero, sustituyendo los datos anteriores en la ecuación, llegamos a:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \left\{\begin{matrix}&lt;br /&gt;
\frac{\partial h}{\partial t} - 10^{2} (\frac{1}{\rho}  \frac{\partial h}{\partial \rho} + \frac{\partial^2 h}{\partial \rho^2})= 0 &amp;amp; \rho \epsilon (0.5, 20) &amp;amp; \theta \epsilon (0, 2\Pi ) &amp;amp; t &amp;gt; 0 \\ &lt;br /&gt;
h(0.5,t) = 34;   h(20, t)= 45 \\ &lt;br /&gt;
h(\rho, 0) = 45&lt;br /&gt;
\end{matrix}\right. &amp;lt;/math&amp;gt; &lt;br /&gt;
&lt;br /&gt;
Aplicando el método de las diferencias finitas llegamos al siguiente código:&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
&lt;br /&gt;
%TRPRIMERA FASE. ESPACIO&lt;br /&gt;
&lt;br /&gt;
a=0.5; b=20; %Condiciones de contorno&lt;br /&gt;
drho=0.1; N=(b-a)/drho; %División del intervalo&lt;br /&gt;
&lt;br /&gt;
rho=a+drho:drho:b-drho; %Sólo nodos interiores&lt;br /&gt;
&lt;br /&gt;
%Creamos las matrices&lt;br /&gt;
&lt;br /&gt;
L=diag(ones(1,N-2),1)-diag(ones(1,N-2),-1);&lt;br /&gt;
A=diag(1./rho);&lt;br /&gt;
L=10^(-2)*(1/(2*drho))*A*L;&lt;br /&gt;
&lt;br /&gt;
K=-2*diag(ones(1,N-1))+diag(ones(1,N-2),1)+diag(ones(1,N-2),-1);&lt;br /&gt;
K=10^(-2)*(1/drho^2)*K; &lt;br /&gt;
&lt;br /&gt;
F=zeros(N-1,1);&lt;br /&gt;
F(1,1)=10^(-2)*(-17/(rho(1)*drho)+34/drho^2);&lt;br /&gt;
F(N-1,1)=10^(-2)*(45/(rho(N-1)*2*drho)+45/drho^2);&lt;br /&gt;
&lt;br /&gt;
%SEGUDA FASE. TIEMPO&lt;br /&gt;
&lt;br /&gt;
H=ones(1,length(rho)); H=H*45; H=H';&lt;br /&gt;
dt=drho; T=10; t=0:dt:T;&lt;br /&gt;
h0=34; hN=45;&lt;br /&gt;
sol=[h0 H' hN];&lt;br /&gt;
&lt;br /&gt;
for j=1:length(t)-1 &lt;br /&gt;
    &lt;br /&gt;
    %Método de Heun&lt;br /&gt;
    k1=F+(K+L)*H;&lt;br /&gt;
    k2=F+(K+L)*(H+k1*dt);&lt;br /&gt;
    H=H+(dt/2)*(k1+k2);&lt;br /&gt;
 &lt;br /&gt;
    sol(j+1,:)=[h0 H' hN]; %Salvamos las solución, incluimos los extremos&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
rho1=a:drho:b; %Incluimos los nodos exteriores&lt;br /&gt;
&lt;br /&gt;
[rr,tt]=meshgrid(rho1,t);&lt;br /&gt;
surf(rr,tt,sol); %Dibujamos la solución&lt;br /&gt;
title('Nivel Piezométrico. Método Diferencias finitas con Heun en tiempo.')&lt;br /&gt;
xlabel('Distancia radial al centro del pozo.')&lt;br /&gt;
ylabel('Tiempo.')&lt;br /&gt;
zlabel('Nivel piezométrico.')&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
Mediante este código obtenemos la siguiente gráfica:&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Grafica npiezometrico.jpg|500px|thumb|best|Gráfica Nivel Piezométrico aproximada con el Método de Diferencias Finitas con Heun en tiempo.]]&lt;br /&gt;
&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Ahora dibujaremos la gráfica mediante los métodos de Euler implícito y trapecio y compararemos los resultados obtenidos.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Sobre el programa anterior cambiaremos las líneas correspondientes al método de Heun.&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* Método de Euler implícito:&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;math&amp;gt; \left\{\begin{matrix}&lt;br /&gt;
y_{0}\\&lt;br /&gt;
y_{n+1}=y_{n} + hf(t_{n+1},y_{n+1})\\&lt;br /&gt;
\end{matrix}\right. &amp;lt;/math&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
&lt;br /&gt;
for j=1:length(t)-1 &lt;br /&gt;
    &lt;br /&gt;
    %Método de Euler implícito&lt;br /&gt;
    &lt;br /&gt;
    H=(eye(N-1)-dt*(K+L))\(H+(F*dt)); &lt;br /&gt;
 &lt;br /&gt;
    sol(j+1,:)=[h0 H' hN]; %Salvamos las solución, incluimos los extremos&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
rho1=a:drho:b; %Incluimos los nodos exteriores&lt;br /&gt;
&lt;br /&gt;
[rr,tt]=meshgrid(rho1,t);&lt;br /&gt;
surf(rr,tt,sol); %Dibujamos la solución&lt;br /&gt;
title('Nivel Piezométrico. Método Diferencias finitas con Euler en tiempo.')&lt;br /&gt;
xlabel('Distancia radial al centro del pozo.')&lt;br /&gt;
ylabel('Tiempo.')&lt;br /&gt;
zlabel('Nivel piezométrico.')&lt;br /&gt;
&lt;br /&gt;
}}&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* Método del Trapecio:&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;math&amp;gt; \left\{\begin{matrix}&lt;br /&gt;
y_{0}\\&lt;br /&gt;
y_{n+1}=y_{n} + \frac{h}{2}f((t_{n},y_{n}+f(t_{n+1},y_{n+1}))\\&lt;br /&gt;
\end{matrix}\right. &amp;lt;/math&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
for j=1:length(t)-1 &lt;br /&gt;
    &lt;br /&gt;
    %Método del trapecio&lt;br /&gt;
    k1=F+(K+L)*H;&lt;br /&gt;
    k2=F+(K+L)*(H+k1*dt); &lt;br /&gt;
    H=(eye(N-1)-(dt/2)*(K+L))\(H+dt*F+(dt/2)*(K+L)*H);&lt;br /&gt;
 &lt;br /&gt;
    sol(j+1,:)=[h0 H' hN]; %Salvamos las solución, incluimos los extremos&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
rho1=a:drho:b; %Incluimos los nodos exteriores&lt;br /&gt;
&lt;br /&gt;
[rr,tt]=meshgrid(rho1,t);&lt;br /&gt;
surf(rr,tt,sol); %Dibujamos la solución&lt;br /&gt;
title('Nivel Piezométrico. Método Diferencias finitas con trapecio en tiempo.')&lt;br /&gt;
xlabel('Distancia radial al centro del pozo.')&lt;br /&gt;
ylabel('Tiempo.')&lt;br /&gt;
zlabel('Nivel piezométrico.')&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
Como podemos ver a continuación las tres gráficas resultantes son prácticamente iguales por lo que los tres métodos hacen una aproximación similar.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
[[Archivo:Trapecio12.png|500px|thumb|left|Gráfica Nivel Piezométrico aproximada con el Método de Diferencias Finitas con Trapecio en tiempo.]]&lt;br /&gt;
[[Archivo:Euler12.png|500px|thumb|right|Gráfica Nivel Piezométrico aproximada con el Método de Diferencias Finitas con Euler Implícito en tiempo.]]&lt;br /&gt;
&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== Comportamiento del nivel piezométrico con &amp;lt;math&amp;gt; \rho &amp;lt;/math&amp;gt; constante ====&lt;br /&gt;
&lt;br /&gt;
Ahora supondremos que &amp;lt;math&amp;gt; \rho &amp;lt;/math&amp;gt; es constante y que su valor es 2 y dibujaremos el comportamiento del nivel piezométrico en una gráfica 2D nivel piezométrico-tiempo.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Nuevamente utilizando el programa anterior con el  método de Heun:&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Rho2.png|500px|thumb|best|Gráfica Nivel Piezométrico-tiempo para &amp;lt;math&amp;gt; \rho =2 &amp;lt;/math&amp;gt; para T=10.]]&lt;br /&gt;
[[Archivo:Rho1000.png|500px|thumb|best|Gráfica Nivel Piezométrico-tiempo para &amp;lt;math&amp;gt; \rho =2 &amp;lt;/math&amp;gt; para T=1000.]]&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
&lt;br /&gt;
%PRIMERA FASE. ESPACIO&lt;br /&gt;
&lt;br /&gt;
a=0.5; b=20; %Condiciones de contorno&lt;br /&gt;
drho=0.1; N=(b-a)/drho; %División del intervalo&lt;br /&gt;
&lt;br /&gt;
rho=a+drho:drho:b-drho; %Sólo nodos interiores&lt;br /&gt;
&lt;br /&gt;
%Creamos las matrices&lt;br /&gt;
&lt;br /&gt;
L=diag(ones(1,N-2),1)-diag(ones(1,N-2),-1);&lt;br /&gt;
A=diag(1./rho);&lt;br /&gt;
L=10^(-2)*(1/(2*drho))*A*L;&lt;br /&gt;
&lt;br /&gt;
K=-2*diag(ones(1,N-1))+diag(ones(1,N-2),1)+diag(ones(1,N-2),-1);&lt;br /&gt;
K=10^(-2)*(1/drho^2)*K; &lt;br /&gt;
&lt;br /&gt;
F=zeros(N-1,1);&lt;br /&gt;
F(1,1)=10^(-2)*(-17/(rho(1)*drho)+34/drho^2);&lt;br /&gt;
F(N-1,1)=10^(-2)*(45/(rho(N-1)*2*drho)+45/drho^2);&lt;br /&gt;
&lt;br /&gt;
%SEGUDA FASE. TIEMPO&lt;br /&gt;
&lt;br /&gt;
H=ones(1,length(rho)); H=H*45; H=H';&lt;br /&gt;
dt=drho; &lt;br /&gt;
T=10 &lt;br /&gt;
%Comprobamos también la solución para un tiempo mayor &lt;br /&gt;
%T=1000&lt;br /&gt;
t=0:dt:T;&lt;br /&gt;
h0=34; hN=45;&lt;br /&gt;
sol=[h0 H' hN];&lt;br /&gt;
&lt;br /&gt;
for j=1:length(t)-1 &lt;br /&gt;
    &lt;br /&gt;
    %Método de Heun&lt;br /&gt;
    k1=F+(K+L)*H;&lt;br /&gt;
    k2=F+(K+L)*(H+k1*dt);&lt;br /&gt;
    H=H+(dt/2)*(k1+k2);&lt;br /&gt;
 &lt;br /&gt;
    sol(j+1,:)=[h0 H' hN]; %Salvamos las solución, incluimos los extremos&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
rho1=a:drho:b; %Incluimos los nodos exteriores&lt;br /&gt;
&lt;br /&gt;
m=sol(:,rho==2); %Vector que incluye la solución en tiempo para rho=2&lt;br /&gt;
&lt;br /&gt;
plot(t,m);&lt;br /&gt;
&lt;br /&gt;
title('Comportamiento del nivel piezométrico en el tiempo para p=2')&lt;br /&gt;
xlabel('Tiempo')&lt;br /&gt;
ylabel('Nivel piezométrico.')&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
La primera gráfica muestra que para tiempos pequeños la variación del nivel piezométrico es muy pequeña (del orden de 0,10/0,15 m), aún así como observamos en la segunda gráfica a medida que avanzamos en el tiempo la variación del nivel disminuye aún más ya que la curva está cada vez menos inclinada.&lt;br /&gt;
&lt;br /&gt;
==== Variación del nivel piezométrico en tiempos grandes ====&lt;br /&gt;
Ahora vamos a comprobar que la variación del nivel piezométrico para tiempos elevados (T=5000) es mínima.&lt;br /&gt;
Para ello dibujaremos las soluciones cada 100 horas de en el intervalo temporal [1; 5000], en&lt;br /&gt;
una misma gráfica.&lt;br /&gt;
[[Archivo:Tiemposg2.png|marco|derecha|Nivel piezométrico para tiempos grandes]]&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
%PRIMERA FASE. ESPACIO&lt;br /&gt;
&lt;br /&gt;
a=0.5; b=20; %Condiciones de contorno&lt;br /&gt;
drho=0.1; N=(b-a)/drho; %División del intervalo&lt;br /&gt;
&lt;br /&gt;
rho=a+drho:drho:b-drho; %Sólo nodos interiores&lt;br /&gt;
&lt;br /&gt;
%Creamos las matrices&lt;br /&gt;
&lt;br /&gt;
L=diag(ones(1,N-2),1)-diag(ones(1,N-2),-1);&lt;br /&gt;
A=diag(1./rho);&lt;br /&gt;
L=10^(-2)*(1/(2*drho))*A*L;&lt;br /&gt;
&lt;br /&gt;
K=-2*diag(ones(1,N-1))+diag(ones(1,N-2),1)+diag(ones(1,N-2),-1);&lt;br /&gt;
K=10^(-2)*(1/drho^2)*K; &lt;br /&gt;
&lt;br /&gt;
F=zeros(N-1,1);&lt;br /&gt;
F(1,1)=10^(-2)*(-17/(rho(1)*drho)+34/drho^2);&lt;br /&gt;
F(N-1,1)=10^(-2)*(45/(rho(N-1)*2*drho)+45/drho^2);&lt;br /&gt;
&lt;br /&gt;
%SEGUDA FASE. TIEMPO&lt;br /&gt;
&lt;br /&gt;
H=ones(1,length(rho)); H=H*45; H=H';&lt;br /&gt;
dt=0.1; T=5000; t=0:dt:T;&lt;br /&gt;
h0=34; hN=45;&lt;br /&gt;
sol=[h0 H' hN];&lt;br /&gt;
&lt;br /&gt;
figure(1);&lt;br /&gt;
hold on;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
for j=1:length(t)-1 &lt;br /&gt;
    &lt;br /&gt;
    %Método de Heun&lt;br /&gt;
    k1=F+(K+L)*H;&lt;br /&gt;
    k2=F+(K+L)*(H+k1*dt);&lt;br /&gt;
    H=H+(dt/2)*(k1+k2);&lt;br /&gt;
 &lt;br /&gt;
    sol(j+1,:)=[h0 H' hN]; %Salvamos las solución, incluimos los extremos&lt;br /&gt;
    &lt;br /&gt;
 if rem(t(j),100)==0; &lt;br /&gt;
    &lt;br /&gt;
    rho1=a:drho:b; %Incluimos los nodos exteriores&lt;br /&gt;
  &lt;br /&gt;
  plot(rho1,sol(j,:)) %pintamos la solución cada 100 horas&lt;br /&gt;
  &lt;br /&gt;
  title('Variación del nivel piezométrico para tiempos grandes')&lt;br /&gt;
  pause(1)&lt;br /&gt;
&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
end&lt;br /&gt;
}}&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Como se puede observar en la gráfica según vamos avanzando en el tiempo las curvas están más juntas lo que quiere decir que la variación del nivel es cada vez menor aproximándose a un régimen estacionario.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Trabajo21.jpg|marco|derecha|Nivel piezométrico estacionario]]&lt;br /&gt;
&lt;br /&gt;
====Problema estacionario====&lt;br /&gt;
Como hemos visto en el apartado anterior para tiempos grandes el nivel piezométrico se mantiene practicamente constante a lo largo del tiempo, esto es debido a que se establece un equilibrio entre el caudal de agua extraida del acuifero y la migración de aguas desde los puntos más alejados del pozo hacia este.&lt;br /&gt;
Por lo tanto se verifica que:&lt;br /&gt;
 &amp;lt;math&amp;gt;\frac{\partial h}{\partial t}=0&amp;lt;/math&amp;gt;&lt;br /&gt;
Y por lo tanto el nivel piezométrico se puede aproximar por:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \left\{\begin{matrix}&lt;br /&gt;
- \frac{k}{s} (\frac{1}{\rho}  \frac{\partial h}{\partial \rho} + \frac{\partial^2 h}{\partial \rho^2})= 0 &amp;amp; \rho \epsilon (1, 20) &amp;amp; \theta \epsilon (0, 2\Pi ) &amp;amp; 0 &amp;lt; t &amp;lt; 5000 \\ &lt;br /&gt;
h(1,t) = 35;    h(20, t)= 40 \\ &lt;br /&gt;
h(\rho, 0) = 40 &lt;br /&gt;
\end{matrix}\right. &amp;lt;/math&amp;gt;&lt;br /&gt;
Resolvemos por diferencias finitas:&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
    %datos&lt;br /&gt;
    t=5000;&lt;br /&gt;
    l=20;&lt;br /&gt;
    D=0.01;&lt;br /&gt;
    hp=35;&lt;br /&gt;
    ho=40;&lt;br /&gt;
    %discretización&lt;br /&gt;
    s=0.1;&lt;br /&gt;
    x0=1;&lt;br /&gt;
    x=x0:s:l;&lt;br /&gt;
    xint=x0+s:s:l-s;&lt;br /&gt;
    N=length(x)-2; &lt;br /&gt;
    %construimos las matrices para el método de las diferencias finitas&lt;br /&gt;
    K=(1/s^2)*(diag(2*ones(1,N))-diag(ones(1,N-1),1)-diag(ones(1,N-1),-1));&lt;br /&gt;
    A=(1/(s*2))*(diag(ones(1,N-1),1)-diag(ones(1,N-1),-1));&lt;br /&gt;
    A=diag(1./xint)*A;&lt;br /&gt;
    h0=(40*ones(N,1));&lt;br /&gt;
    dt=200; &lt;br /&gt;
    t=0:dt:t;&lt;br /&gt;
    M=length(t)-1;&lt;br /&gt;
    F=(zeros(N,1));&lt;br /&gt;
    F(1)=D*((hp/s^2)-(hp/(2*s)*1/xint(1)));&lt;br /&gt;
    F(N)=D*((ho/s^2)+ho/(s*2*xint(N)));&lt;br /&gt;
    H(1,:)=[40;h0;40]'; &lt;br /&gt;
    h=h0;&lt;br /&gt;
    for n=1:M&lt;br /&gt;
      h=(D)*(K-A)\((F)); %utilizamos el comando backslash para resolver el sistema de ecuaciones&lt;br /&gt;
      H(n+1,:)=[hp h' ho];&lt;br /&gt;
    end&lt;br /&gt;
    %mallado y representación&lt;br /&gt;
    [X,T]=meshgrid(x,t);&lt;br /&gt;
    surf(X,T,H)&lt;br /&gt;
    xlabel('Distancia (metros)');&lt;br /&gt;
    ylabel('Tiempo (horas)');&lt;br /&gt;
    zlabel('Nivel piezométrico (metros)')&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
====Capacidad de recuperación del acuífero====&lt;br /&gt;
En este apartado queremos calcular una ley que nos describa el comportamiento del acuífero e el caso de que impermeabilizásemos las paredes del pozo partiendo del estado estacionario anterior, esto significaría que el fujo de agua en los bordes del pozo sería nulo y el nivel piezométrico iría variando hasta llegar a otro estado estacionario.&lt;br /&gt;
La condición frontera en r=r0 será entonces:&lt;br /&gt;
&amp;lt;math&amp;gt;\frac{\partial h(r0,t)}{\partial \rho}=0&amp;lt;/math&amp;gt;&lt;br /&gt;
Ya que en caso de que la derivada parcial del nivel piezométrico respecto a la distancia r sea nula significa que el estado está en equilibrio y no hay corrientes de líquido.&lt;br /&gt;
El estado que tratará de alcanzar el fluido será el inicial, con el mismo nivel piezométrico ya que al impermeabilizar las paredes del pozo hemos vuelto al estado inicial.&lt;br /&gt;
&lt;br /&gt;
====Método de Fourier====&lt;br /&gt;
Ahora suponemos que el radio del pozo es despreciable y que una vez extraido el agua el pozo se cierra quedando el acuifero de nuevo homogéneo. En este caso tomaremos la región ρ &amp;lt; 20. Nuestro objetivo es aproximar las soluciones usando el método de Fourier. De nuevo supondremos que la solución sólo depende de ρ y t, y tomaremos ahora como condición frontera h(20, t) = 40.&lt;br /&gt;
Vamos a considerar el sistema de ecuaciones para h(ρ,t)=h(ρ,t)-40:&lt;br /&gt;
 &amp;lt;math&amp;gt; \left\{\begin{matrix}&lt;br /&gt;
\frac{\partial h}{\partial t} - D (\frac{1}{\rho}  \frac{\partial h}{\partial \rho} + \frac{\partial^2 h}{\partial \rho^2})= 0 &amp;amp; \rho \epsilon (0, 20) &amp;amp; \theta \epsilon (0, 2\Pi ) &amp;amp; t &amp;gt; 0 \\ &lt;br /&gt;
\frac{\partial h}{\partial \rho}(0,t) = 0;   h(20, t)= 0 \\ &lt;br /&gt;
\end{matrix}\right. &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Obtenemos el problema de autovalores asociado al sistema anterior con el método de separación de variables:&lt;br /&gt;
 &amp;lt;math&amp;gt; \left\{\begin{matrix}&lt;br /&gt;
D (\frac{X'(\rho)}{\rho} + X''(\rho))+ λX(\rho)=0 \\&lt;br /&gt;
X'(0) = 0;   X(20)= 0 \\ &lt;br /&gt;
&lt;br /&gt;
\end{matrix}\right. &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Sabemos que los problemas de esta forma tienen como solución la función de Bessel de primera especie que forma una familia de autofunciones: &amp;lt;math&amp;gt;Ψ(\rho)=J_0·(\rho\sqrt{λ})&amp;lt;/math&amp;gt;. Estas se anulan cuando &amp;lt;math&amp;gt;(\rho\sqrt{λ})&amp;lt;/math&amp;gt; se iguala a 2.4048, 5.5201, 8.6537, 11.7915 y 14.9309, siendo estos los 5 primeros ceros de la función de Bessel. De esta manera y tomando ρ=20 obtenemos los 5 primeros autovalores:&lt;br /&gt;
&amp;lt;math&amp;gt;(20\sqrt{λ})=2.4048&amp;lt;/math&amp;gt;Haciendo la operación anterior para los 5 ceros obtenemos los siguientes autovalores: 0.0145, 0.0762, 0.1872, 0.3476, 0.5573.&lt;br /&gt;
Ahora vamos a dibujar las 5 primeras autofunciones utilizando la función besselj:&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
a1=0.0145;&lt;br /&gt;
a2=0.0762;&lt;br /&gt;
a3=0.1872;&lt;br /&gt;
a4=0.3476;&lt;br /&gt;
a5=0.5575;&lt;br /&gt;
r=0:0.02:20;&lt;br /&gt;
F1=besselj(0,r.*(sqrt(a1))); &lt;br /&gt;
F2=besselj(0,r.*(sqrt(a2)));&lt;br /&gt;
F3=besselj(0,r.*(sqrt(a3)));&lt;br /&gt;
F4=besselj(0,r.*(sqrt(a4)));&lt;br /&gt;
F5=besselj(0,r.*(sqrt(a5)));&lt;br /&gt;
hold on&lt;br /&gt;
plot(r,F1)&lt;br /&gt;
plot(r,F2,'r')&lt;br /&gt;
plot(r,F3,'g')	&lt;br /&gt;
plot(r,F4,'c')&lt;br /&gt;
plot(r,F5,'y')&lt;br /&gt;
hold off&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
Aproximamos ahora la solución de la ecuación tomando como dato inicial es&amp;lt;math&amp;gt; h (\rho,0)= -log \frac{|\rho + 0.01|}{20.01} &amp;lt;/math&amp;gt; y usando 5 términos del desarrollo de Fourier, teniendo en cuenta que las autofunciones son ortogonales respecto al producto escalar: &amp;lt;math&amp;gt; (f(\rho),g(\rho)) = \int_{0}^{20} \rho f(\rho) g(\rho) \cdot dx &amp;lt;/math&amp;gt;&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
x0=0; L=20;&lt;br /&gt;
c0=[2.4048,5.5201,8.6537,11.7915,14.9309]; %Vector de ceros de la función de Bessel&lt;br /&gt;
A=(c0./20).^2; %Vector de autovalores&lt;br /&gt;
K=5; %Número de términos del desarrollo de Fourier&lt;br /&gt;
x=x0:0.1:L;&lt;br /&gt;
N=length(x)-1;&lt;br /&gt;
J=zeros(N+1,K);&lt;br /&gt;
z=zeros(N+1,K);&lt;br /&gt;
t0=0; tf=500;&lt;br /&gt;
t=t0:0.1:tf;&lt;br /&gt;
[xx,tt]=meshgrid(x,t);&lt;br /&gt;
h=0;&lt;br /&gt;
for k=1:K&lt;br /&gt;
   z(:,k)=(x)'*sqrt(A(k));&lt;br /&gt;
   J(:,k)=besselj(0,z(:,k));&lt;br /&gt;
   h0=-log((abs(x+0.1))/20.01); %Condición inicial&lt;br /&gt;
   c(k)=trapz(x,x'.*h0'.*J(:,k))/trapz(x,x'.*J(:,k).*J(:,k)); %Coeficientes de Fourier&lt;br /&gt;
   h=h+c(k)*exp(-A(k)*t)'*J(:,k)';&lt;br /&gt;
end&lt;br /&gt;
surf(xx,tt,h)&lt;br /&gt;
title('Aproximación de la solución')&lt;br /&gt;
}}&lt;/div&gt;</summary>
		<author><name>Marta Cavero</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Nivel_piezom%C3%A9trico_de_un_acu%C3%ADfero_confinado_(A5)&amp;diff=29900</id>
		<title>Nivel piezométrico de un acuífero confinado (A5)</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Nivel_piezom%C3%A9trico_de_un_acu%C3%ADfero_confinado_(A5)&amp;diff=29900"/>
				<updated>2015-05-14T09:37:28Z</updated>
		
		<summary type="html">&lt;p&gt;Marta Cavero: /* Variación del nivel piezométrico en tiempos grandes */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;br /&gt;
==== Introducción ====&lt;br /&gt;
&lt;br /&gt;
Consideramos un acuífero confinado entre dos capas de terreno impermeables horizontales. Llamaremos h(x, y) al nivel piezométrico del acuífero, definido por la altura que alcanzaría el agua si hiciéramos un sondeo en el punto (x, y). Obviamente este valor depende de la presión a la que se encuentra el agua confinada en el acuífero. Supondremos&lt;br /&gt;
que el acuífero es un medio poroso saturado de agua que ocupa una región infinita y está en equilibrio de manera que &amp;lt;math&amp;gt;h(x, y) = h_0&amp;lt;/math&amp;gt; constante para todo (x, y) ∈ &amp;lt;math&amp;gt;IR^{2}&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Sobre el acuifero se construye un pozo de sección circular y radio&amp;lt;math&amp;gt; ρ_0&amp;lt;/math&amp;gt; para extraer agua. La presencia del pozo hace que el nivel piezométrico cambie. Dada la simetría del problema podemos suponer que h(x, y) sólo va a depender de la distancia al pozo. Si tomamos coordenadas cilíndricas de forma que el eje OZ coincida con el eje de simetría del pozo, entonces h = h(ρ) donde &amp;lt;math&amp;gt;ρ = \sqrt{x^{2} + y^{2}}&amp;lt;/math&amp;gt; . Trabajaremos por tanto en coordenadas polares en el plano (ρ, θ).&lt;br /&gt;
&lt;br /&gt;
Las ecuaciones que permiten conocer h(ρ) son la ecuación de conservación de la masa:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; S = \frac{∂h}{∂t} + div q = 0 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
junto con la ley de Darcy&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; q = −K∇h &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
que es una ley experimental que modela el flujo de agua en un medio poroso. La ley de Darcy establece que el flujo de agua q a través de un medio poroso es proporcional a la diferencia de presión, que a su vez se puede escribir en términos del gradiente del nivel piezométrico en cada punto. La constante K se deduce experimentalmente para cada material y se conoce como la conductividad hidráulica o permeabilidad. Cuanto mayor es la constante K mayor es el flujo de agua provocado por un cambio&lt;br /&gt;
de presión. La ley de Darcy proporciona una buena aproximación del comportamiento del agua en un medio poroso siempre que este sea homogéneo e isótropo.&lt;br /&gt;
&lt;br /&gt;
La constante S en la ley de conservación de la masa se conoce como almacenamiento específico y se interpreta como la cantidad de agua que libera el acuífero al descender el nivel piezométrico en una unidad, por unidad de volumen.&lt;br /&gt;
&lt;br /&gt;
Combinando las ecuaciones de conservación de la masa con la ley de Darcy, obtenemos la ecuación:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \frac{∂h}{∂t} - D∆h = 0, ρ &amp;gt; ρ_0, θ ∈ (0, 2π), t &amp;gt; 0, (1) &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
donde D = K/S es la difusividad hidráulica que supondremos constante.&lt;br /&gt;
&lt;br /&gt;
==== Deducción de la fórmula ====&lt;br /&gt;
&lt;br /&gt;
En este apartado buscamos demostrar la ecuación (1) como combinación de la ecuación de conservación de masas y la Ley de Darcy.&lt;br /&gt;
&lt;br /&gt;
Por un lado sabemos que el laplaciaco equivale a la divergencia del gradiente: &lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; &lt;br /&gt;
(\Delta f = \nabla \cdot \nabla f = div \left (\nabla f) \right) &lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Por otro lado, sabemos que en coordenadas polares: &lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;x = ρ cos \theta \\&lt;br /&gt;
             y = ρ  sen \theta&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\bar{g_ρ } = cos \theta \bar{i} + sin \theta  \bar{j} \\&lt;br /&gt;
              \bar{g_\theta } = - ρ  sin \theta \bar{i} + ρ cos \theta \bar{j} &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;&lt;br /&gt;
G =&lt;br /&gt;
\left(&lt;br /&gt;
\begin{array}{cc}&lt;br /&gt;
1&amp;amp; 0 \\&lt;br /&gt;
0 &amp;amp; ρ ^{2} \\&lt;br /&gt;
\end{array}&lt;br /&gt;
\right);&lt;br /&gt;
\text {donde la raiz del determinante es} \sqrt{g} = ρ&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Como indica el enunciado, al sustituir la Ley de Darcy en la ecuación de conservación de la masa obtenemos y dividir entre S, teniendo en cuenta que el divergente del gradiente es el laplaciano como hemos indicado al principio de este apartado, obtenemos la ecuación (1): &amp;lt;math&amp;gt; \frac{∂h}{∂t} - \frac{k}{S}∆h = 0 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
En esta ecuación queda por desarrollar el Laplaciano de h. &lt;br /&gt;
Partiremos de la función h(ρ,θ), de la cual calcularemos primero el gradiente:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \nabla h = \frac{\partial h}{\partial \rho}\hat{\rho} + \frac{\partial h}{\partial \rho}\hat{\theta} =  \frac{\partial h}{\partial \rho}\bar{\rho} + \frac{1}{\rho^{2}} \frac{\partial h}{\partial \rho}\bar{\theta}  &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
teniendo en cuenta que &amp;lt;math&amp;gt;\bar{g^{i} } = \frac{\bar{g_i } }{ | \bar{g_i } | ^{2} } &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Ahora hacemos el divergente del gradiente anterior y obtenemos el Laplaciano en coordenadas polares:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;math&amp;gt;&lt;br /&gt;
 \Delta h = div(∇h) &lt;br /&gt;
= {1 \over \rho} {\partial \over \partial \rho}&lt;br /&gt;
  \left( \rho {\partial h \over \partial \rho} \right) &lt;br /&gt;
+ {1 \over \rho^2} {\partial^2 h \over \partial \theta^2}&lt;br /&gt;
= {1 \over \rho} {\partial h \over \partial \rho} &lt;br /&gt;
+ {\partial^2 h \over \partial \rho^2}&lt;br /&gt;
+ {1 \over \rho^2} {\partial^2 h \over \partial \theta^2}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Si consideramos que, debido a la simetría del problema, h sólo depende de su distancia al pozo, entonces obtenemos la función radial h(ρ), que nos permite simplificar el Laplaciano del modo siguiente:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;math&amp;gt;&lt;br /&gt;
 \Delta h = div(∇h) &lt;br /&gt;
= {1 \over \rho} {\partial h \over \partial \rho} &lt;br /&gt;
+ {\partial^2 h \over \partial \rho^2}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== Obtención de la ecuación====&lt;br /&gt;
&lt;br /&gt;
Para poder resolver la ecuación anterior y que el resultado sea único, hemos de establecer condiciones iniciales y de contorno.&lt;br /&gt;
&lt;br /&gt;
Las condiciones de contorno serán dos pues aparece la derivada segunda de la posición: &amp;lt;math&amp;gt; h(\rho_0 , t) = h_p \\&lt;br /&gt;
                                                                                                                                                                  h(20,t) = h_0 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
La condición inicial será única pues sólo aparece una derivada de primer orden en tiempo en nuestra ecuación: &amp;lt;math&amp;gt; h(\rho,0) = h_0 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
De este modo la ecuación resultante será:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \left\{\begin{matrix}&lt;br /&gt;
\frac{\partial h}{\partial t} - \frac{k}{s} (\frac{1}{\rho}  \frac{\partial h}{\partial \rho} + \frac{\partial^2 h}{\partial \rho^2})= 0 &amp;amp; \rho \epsilon (\rho_{0}, 2c) &amp;amp; \theta \epsilon (0, 2\Pi ) &amp;amp; t &amp;gt; 0 \\ &lt;br /&gt;
h(\rho_{0},t) = h_{p};   h(20, t)= h_{0} \\ &lt;br /&gt;
h(\rho, 0) = h_{0} &lt;br /&gt;
\end{matrix}\right. &amp;lt;/math&amp;gt; &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==== Resolución por método de diferencias finitas ====&lt;br /&gt;
&lt;br /&gt;
Suponiendo &amp;lt;math&amp;gt;ρ_0 =0.5m&amp;lt;/math&amp;gt;, &amp;lt;math&amp;gt;h_0 =45m&amp;lt;/math&amp;gt;, &amp;lt;math&amp;gt;hp =34&amp;lt;/math&amp;gt;, D=10−2, &amp;lt;math&amp;gt;(ρ,0)=h_0&amp;lt;/math&amp;gt;; y tomando  ∆ρ = 0.1 y ∆t = ∆ρ. Vamos a resolver la ecuación anterior por el método de diferencias finitas, usando el Método de Heun para realizar la aproximación en tiempo.&lt;br /&gt;
&lt;br /&gt;
Primero, sustituyendo los datos anteriores en la ecuación, llegamos a:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \left\{\begin{matrix}&lt;br /&gt;
\frac{\partial h}{\partial t} - 10^{2} (\frac{1}{\rho}  \frac{\partial h}{\partial \rho} + \frac{\partial^2 h}{\partial \rho^2})= 0 &amp;amp; \rho \epsilon (0.5, 20) &amp;amp; \theta \epsilon (0, 2\Pi ) &amp;amp; t &amp;gt; 0 \\ &lt;br /&gt;
h(0.5,t) = 34;   h(20, t)= 45 \\ &lt;br /&gt;
h(\rho, 0) = 45&lt;br /&gt;
\end{matrix}\right. &amp;lt;/math&amp;gt; &lt;br /&gt;
&lt;br /&gt;
Aplicando el método de las diferencias finitas llegamos al siguiente código:&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
&lt;br /&gt;
%TRPRIMERA FASE. ESPACIO&lt;br /&gt;
&lt;br /&gt;
a=0.5; b=20; %Condiciones de contorno&lt;br /&gt;
drho=0.1; N=(b-a)/drho; %División del intervalo&lt;br /&gt;
&lt;br /&gt;
rho=a+drho:drho:b-drho; %Sólo nodos interiores&lt;br /&gt;
&lt;br /&gt;
%Creamos las matrices&lt;br /&gt;
&lt;br /&gt;
L=diag(ones(1,N-2),1)-diag(ones(1,N-2),-1);&lt;br /&gt;
A=diag(1./rho);&lt;br /&gt;
L=10^(-2)*(1/(2*drho))*A*L;&lt;br /&gt;
&lt;br /&gt;
K=-2*diag(ones(1,N-1))+diag(ones(1,N-2),1)+diag(ones(1,N-2),-1);&lt;br /&gt;
K=10^(-2)*(1/drho^2)*K; &lt;br /&gt;
&lt;br /&gt;
F=zeros(N-1,1);&lt;br /&gt;
F(1,1)=10^(-2)*(-17/(rho(1)*drho)+34/drho^2);&lt;br /&gt;
F(N-1,1)=10^(-2)*(45/(rho(N-1)*2*drho)+45/drho^2);&lt;br /&gt;
&lt;br /&gt;
%SEGUDA FASE. TIEMPO&lt;br /&gt;
&lt;br /&gt;
H=ones(1,length(rho)); H=H*45; H=H';&lt;br /&gt;
dt=drho; T=10; t=0:dt:T;&lt;br /&gt;
h0=34; hN=45;&lt;br /&gt;
sol=[h0 H' hN];&lt;br /&gt;
&lt;br /&gt;
for j=1:length(t)-1 &lt;br /&gt;
    &lt;br /&gt;
    %Método de Heun&lt;br /&gt;
    k1=F+(K+L)*H;&lt;br /&gt;
    k2=F+(K+L)*(H+k1*dt);&lt;br /&gt;
    H=H+(dt/2)*(k1+k2);&lt;br /&gt;
 &lt;br /&gt;
    sol(j+1,:)=[h0 H' hN]; %Salvamos las solución, incluimos los extremos&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
rho1=a:drho:b; %Incluimos los nodos exteriores&lt;br /&gt;
&lt;br /&gt;
[rr,tt]=meshgrid(rho1,t);&lt;br /&gt;
surf(rr,tt,sol); %Dibujamos la solución&lt;br /&gt;
title('Nivel Piezométrico. Método Diferencias finitas con Heun en tiempo.')&lt;br /&gt;
xlabel('Distancia radial al centro del pozo.')&lt;br /&gt;
ylabel('Tiempo.')&lt;br /&gt;
zlabel('Nivel piezométrico.')&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
Mediante este código obtenemos la siguiente gráfica:&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Grafica npiezometrico.jpg|500px|thumb|best|Gráfica Nivel Piezométrico aproximada con el Método de Diferencias Finitas con Heun en tiempo.]]&lt;br /&gt;
&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Ahora dibujaremos la gráfica mediante los métodos de Euler implícito y trapecio y compararemos los resultados obtenidos.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Sobre el programa anterior cambiaremos las líneas correspondientes al método de Heun.&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* Método de Euler implícito:&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;math&amp;gt; \left\{\begin{matrix}&lt;br /&gt;
y_{0}\\&lt;br /&gt;
y_{n+1}=y_{n} + hf(t_{n+1},y_{n+1})\\&lt;br /&gt;
\end{matrix}\right. &amp;lt;/math&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
&lt;br /&gt;
for j=1:length(t)-1 &lt;br /&gt;
    &lt;br /&gt;
    %Método de Euler implícito&lt;br /&gt;
    &lt;br /&gt;
    H=(eye(N-1)-dt*(K+L))\(H+(F*dt)); &lt;br /&gt;
 &lt;br /&gt;
    sol(j+1,:)=[h0 H' hN]; %Salvamos las solución, incluimos los extremos&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
rho1=a:drho:b; %Incluimos los nodos exteriores&lt;br /&gt;
&lt;br /&gt;
[rr,tt]=meshgrid(rho1,t);&lt;br /&gt;
surf(rr,tt,sol); %Dibujamos la solución&lt;br /&gt;
title('Nivel Piezométrico. Método Diferencias finitas con Euler en tiempo.')&lt;br /&gt;
xlabel('Distancia radial al centro del pozo.')&lt;br /&gt;
ylabel('Tiempo.')&lt;br /&gt;
zlabel('Nivel piezométrico.')&lt;br /&gt;
&lt;br /&gt;
}}&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* Método del Trapecio:&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;math&amp;gt; \left\{\begin{matrix}&lt;br /&gt;
y_{0}\\&lt;br /&gt;
y_{n+1}=y_{n} + \frac{h}{2}f((t_{n},y_{n}+f(t_{n+1},y_{n+1}))\\&lt;br /&gt;
\end{matrix}\right. &amp;lt;/math&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
for j=1:length(t)-1 &lt;br /&gt;
    &lt;br /&gt;
    %Método del trapecio&lt;br /&gt;
    k1=F+(K+L)*H;&lt;br /&gt;
    k2=F+(K+L)*(H+k1*dt); &lt;br /&gt;
    H=(eye(N-1)-(dt/2)*(K+L))\(H+dt*F+(dt/2)*(K+L)*H);&lt;br /&gt;
 &lt;br /&gt;
    sol(j+1,:)=[h0 H' hN]; %Salvamos las solución, incluimos los extremos&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
rho1=a:drho:b; %Incluimos los nodos exteriores&lt;br /&gt;
&lt;br /&gt;
[rr,tt]=meshgrid(rho1,t);&lt;br /&gt;
surf(rr,tt,sol); %Dibujamos la solución&lt;br /&gt;
title('Nivel Piezométrico. Método Diferencias finitas con trapecio en tiempo.')&lt;br /&gt;
xlabel('Distancia radial al centro del pozo.')&lt;br /&gt;
ylabel('Tiempo.')&lt;br /&gt;
zlabel('Nivel piezométrico.')&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
Como podemos ver a continuación las tres gráficas resultantes son prácticamente iguales por lo que los tres métodos hacen una aproximación similar.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
[[Archivo:Trapecio12.png|500px|thumb|left|Gráfica Nivel Piezométrico aproximada con el Método de Diferencias Finitas con Trapecio en tiempo.]]&lt;br /&gt;
[[Archivo:Euler12.png|500px|thumb|right|Gráfica Nivel Piezométrico aproximada con el Método de Diferencias Finitas con Euler Implícito en tiempo.]]&lt;br /&gt;
&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== Comportamiento del nivel piezométrico con &amp;lt;math&amp;gt; \rho &amp;lt;/math&amp;gt; constante ====&lt;br /&gt;
&lt;br /&gt;
Ahora supondremos que &amp;lt;math&amp;gt; \rho &amp;lt;/math&amp;gt; es constante y que su valor es 2 y dibujaremos el comportamiento del nivel piezométrico en una gráfica 2D nivel piezométrico-tiempo.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Nuevamente utilizando el programa anterior con el  método de Heun:&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Rho2.png|500px|thumb|best|Gráfica Nivel Piezométrico-tiempo para &amp;lt;math&amp;gt; \rho =2 &amp;lt;/math&amp;gt; para T=10.]]&lt;br /&gt;
[[Archivo:Rho1000.png|500px|thumb|best|Gráfica Nivel Piezométrico-tiempo para &amp;lt;math&amp;gt; \rho =2 &amp;lt;/math&amp;gt; para T=1000.]]&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
&lt;br /&gt;
%PRIMERA FASE. ESPACIO&lt;br /&gt;
&lt;br /&gt;
a=0.5; b=20; %Condiciones de contorno&lt;br /&gt;
drho=0.1; N=(b-a)/drho; %División del intervalo&lt;br /&gt;
&lt;br /&gt;
rho=a+drho:drho:b-drho; %Sólo nodos interiores&lt;br /&gt;
&lt;br /&gt;
%Creamos las matrices&lt;br /&gt;
&lt;br /&gt;
L=diag(ones(1,N-2),1)-diag(ones(1,N-2),-1);&lt;br /&gt;
A=diag(1./rho);&lt;br /&gt;
L=10^(-2)*(1/(2*drho))*A*L;&lt;br /&gt;
&lt;br /&gt;
K=-2*diag(ones(1,N-1))+diag(ones(1,N-2),1)+diag(ones(1,N-2),-1);&lt;br /&gt;
K=10^(-2)*(1/drho^2)*K; &lt;br /&gt;
&lt;br /&gt;
F=zeros(N-1,1);&lt;br /&gt;
F(1,1)=10^(-2)*(-17/(rho(1)*drho)+34/drho^2);&lt;br /&gt;
F(N-1,1)=10^(-2)*(45/(rho(N-1)*2*drho)+45/drho^2);&lt;br /&gt;
&lt;br /&gt;
%SEGUDA FASE. TIEMPO&lt;br /&gt;
&lt;br /&gt;
H=ones(1,length(rho)); H=H*45; H=H';&lt;br /&gt;
dt=drho; &lt;br /&gt;
T=10 &lt;br /&gt;
%Comprobamos también la solución para un tiempo mayor &lt;br /&gt;
%T=1000&lt;br /&gt;
t=0:dt:T;&lt;br /&gt;
h0=34; hN=45;&lt;br /&gt;
sol=[h0 H' hN];&lt;br /&gt;
&lt;br /&gt;
for j=1:length(t)-1 &lt;br /&gt;
    &lt;br /&gt;
    %Método de Heun&lt;br /&gt;
    k1=F+(K+L)*H;&lt;br /&gt;
    k2=F+(K+L)*(H+k1*dt);&lt;br /&gt;
    H=H+(dt/2)*(k1+k2);&lt;br /&gt;
 &lt;br /&gt;
    sol(j+1,:)=[h0 H' hN]; %Salvamos las solución, incluimos los extremos&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
rho1=a:drho:b; %Incluimos los nodos exteriores&lt;br /&gt;
&lt;br /&gt;
m=sol(:,rho==2); %Vector que incluye la solución en tiempo para rho=2&lt;br /&gt;
&lt;br /&gt;
plot(t,m);&lt;br /&gt;
&lt;br /&gt;
title('Comportamiento del nivel piezométrico en el tiempo para p=2')&lt;br /&gt;
xlabel('Tiempo')&lt;br /&gt;
ylabel('Nivel piezométrico.')&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
La primera gráfica muestra que para tiempos pequeños la variación del nivel piezométrico es muy pequeña (del orden de 0,10/0,15 m), aún así como observamos en la segunda gráfica a medida que avanzamos en el tiempo la variación del nivel disminuye aún más ya que la curva está cada vez menos inclinada.&lt;br /&gt;
&lt;br /&gt;
==== Variación del nivel piezométrico en tiempos grandes ====&lt;br /&gt;
Ahora vamos a comprobar que la variación del nivel piezométrico para tiempos elevados (T=5000) es mínima.&lt;br /&gt;
Para ello dibujaremos las soluciones cada 100 horas de en el intervalo temporal [1; 5000], en&lt;br /&gt;
una misma gráfica.&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
%PRIMERA FASE. ESPACIO&lt;br /&gt;
&lt;br /&gt;
a=0.5; b=20; %Condiciones de contorno&lt;br /&gt;
drho=0.1; N=(b-a)/drho; %División del intervalo&lt;br /&gt;
&lt;br /&gt;
rho=a+drho:drho:b-drho; %Sólo nodos interiores&lt;br /&gt;
&lt;br /&gt;
%Creamos las matrices&lt;br /&gt;
&lt;br /&gt;
L=diag(ones(1,N-2),1)-diag(ones(1,N-2),-1);&lt;br /&gt;
A=diag(1./rho);&lt;br /&gt;
L=10^(-2)*(1/(2*drho))*A*L;&lt;br /&gt;
&lt;br /&gt;
K=-2*diag(ones(1,N-1))+diag(ones(1,N-2),1)+diag(ones(1,N-2),-1);&lt;br /&gt;
K=10^(-2)*(1/drho^2)*K; &lt;br /&gt;
&lt;br /&gt;
F=zeros(N-1,1);&lt;br /&gt;
F(1,1)=10^(-2)*(-17/(rho(1)*drho)+34/drho^2);&lt;br /&gt;
F(N-1,1)=10^(-2)*(45/(rho(N-1)*2*drho)+45/drho^2);&lt;br /&gt;
&lt;br /&gt;
%SEGUDA FASE. TIEMPO&lt;br /&gt;
&lt;br /&gt;
H=ones(1,length(rho)); H=H*45; H=H';&lt;br /&gt;
dt=0.1; T=5000; t=0:dt:T;&lt;br /&gt;
h0=34; hN=45;&lt;br /&gt;
sol=[h0 H' hN];&lt;br /&gt;
&lt;br /&gt;
figure(1);&lt;br /&gt;
hold on;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
for j=1:length(t)-1 &lt;br /&gt;
    &lt;br /&gt;
    %Método de Heun&lt;br /&gt;
    k1=F+(K+L)*H;&lt;br /&gt;
    k2=F+(K+L)*(H+k1*dt);&lt;br /&gt;
    H=H+(dt/2)*(k1+k2);&lt;br /&gt;
 &lt;br /&gt;
    sol(j+1,:)=[h0 H' hN]; %Salvamos las solución, incluimos los extremos&lt;br /&gt;
    &lt;br /&gt;
 if rem(t(j),100)==0; &lt;br /&gt;
    &lt;br /&gt;
    rho1=a:drho:b; %Incluimos los nodos exteriores&lt;br /&gt;
  &lt;br /&gt;
  plot(rho1,sol(j,:)) %pintamos la solución cada 100 horas&lt;br /&gt;
  &lt;br /&gt;
  title('Variación del nivel piezométrico para tiempos grandes')&lt;br /&gt;
  pause(1)&lt;br /&gt;
&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
end&lt;br /&gt;
}}&lt;br /&gt;
[[Archivo:Tiemposg2.png|marco|derecha|Nivel piezométrico para tiempos grandes]]&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Como se puede observar en la gráfica según vamos avanzando en el tiempo las curvas están más juntas lo que quiere decir que la variación del nivel es cada vez menor aproximándose a un régimen estacionario.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Trabajo21.jpg|marco|derecha|Nivel piezométrico estacionario]]&lt;br /&gt;
&lt;br /&gt;
====Problema estacionario====&lt;br /&gt;
Como hemos visto en el apartado anterior para tiempos grandes el nivel piezométrico se mantiene practicamente constante a lo largo del tiempo, esto es debido a que se establece un equilibrio entre el caudal de agua extraida del acuifero y la migración de aguas desde los puntos más alejados del pozo hacia este.&lt;br /&gt;
Por lo tanto se verifica que:&lt;br /&gt;
 &amp;lt;math&amp;gt;\frac{\partial h}{\partial t}=0&amp;lt;/math&amp;gt;&lt;br /&gt;
Y por lo tanto el nivel piezométrico se puede aproximar por:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \left\{\begin{matrix}&lt;br /&gt;
- \frac{k}{s} (\frac{1}{\rho}  \frac{\partial h}{\partial \rho} + \frac{\partial^2 h}{\partial \rho^2})= 0 &amp;amp; \rho \epsilon (1, 20) &amp;amp; \theta \epsilon (0, 2\Pi ) &amp;amp; 0 &amp;lt; t &amp;lt; 5000 \\ &lt;br /&gt;
h(1,t) = 35;    h(20, t)= 40 \\ &lt;br /&gt;
h(\rho, 0) = 40 &lt;br /&gt;
\end{matrix}\right. &amp;lt;/math&amp;gt;&lt;br /&gt;
Resolvemos por diferencias finitas:&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
    %datos&lt;br /&gt;
    t=5000;&lt;br /&gt;
    l=20;&lt;br /&gt;
    D=0.01;&lt;br /&gt;
    hp=35;&lt;br /&gt;
    ho=40;&lt;br /&gt;
    %discretización&lt;br /&gt;
    s=0.1;&lt;br /&gt;
    x0=1;&lt;br /&gt;
    x=x0:s:l;&lt;br /&gt;
    xint=x0+s:s:l-s;&lt;br /&gt;
    N=length(x)-2; &lt;br /&gt;
    %construimos las matrices para el método de las diferencias finitas&lt;br /&gt;
    K=(1/s^2)*(diag(2*ones(1,N))-diag(ones(1,N-1),1)-diag(ones(1,N-1),-1));&lt;br /&gt;
    A=(1/(s*2))*(diag(ones(1,N-1),1)-diag(ones(1,N-1),-1));&lt;br /&gt;
    A=diag(1./xint)*A;&lt;br /&gt;
    h0=(40*ones(N,1));&lt;br /&gt;
    dt=200; &lt;br /&gt;
    t=0:dt:t;&lt;br /&gt;
    M=length(t)-1;&lt;br /&gt;
    F=(zeros(N,1));&lt;br /&gt;
    F(1)=D*((hp/s^2)-(hp/(2*s)*1/xint(1)));&lt;br /&gt;
    F(N)=D*((ho/s^2)+ho/(s*2*xint(N)));&lt;br /&gt;
    H(1,:)=[40;h0;40]'; &lt;br /&gt;
    h=h0;&lt;br /&gt;
    for n=1:M&lt;br /&gt;
      h=(D)*(K-A)\((F)); %utilizamos el comando backslash para resolver el sistema de ecuaciones&lt;br /&gt;
      H(n+1,:)=[hp h' ho];&lt;br /&gt;
    end&lt;br /&gt;
    %mallado y representación&lt;br /&gt;
    [X,T]=meshgrid(x,t);&lt;br /&gt;
    surf(X,T,H)&lt;br /&gt;
    xlabel('Distancia (metros)');&lt;br /&gt;
    ylabel('Tiempo (horas)');&lt;br /&gt;
    zlabel('Nivel piezométrico (metros)')&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
====Capacidad de recuperación del acuífero====&lt;br /&gt;
En este apartado queremos calcular una ley que nos describa el comportamiento del acuífero e el caso de que impermeabilizásemos las paredes del pozo partiendo del estado estacionario anterior, esto significaría que el fujo de agua en los bordes del pozo sería nulo y el nivel piezométrico iría variando hasta llegar a otro estado estacionario.&lt;br /&gt;
La condición frontera en r=r0 será entonces:&lt;br /&gt;
&amp;lt;math&amp;gt;\frac{\partial h(r0,t)}{\partial \rho}=0&amp;lt;/math&amp;gt;&lt;br /&gt;
Ya que en caso de que la derivada parcial del nivel piezométrico respecto a la distancia r sea nula significa que el estado está en equilibrio y no hay corrientes de líquido.&lt;br /&gt;
El estado que tratará de alcanzar el fluido será el inicial, con el mismo nivel piezométrico ya que al impermeabilizar las paredes del pozo hemos vuelto al estado inicial.&lt;br /&gt;
&lt;br /&gt;
====Método de Fourier====&lt;br /&gt;
Ahora suponemos que el radio del pozo es despreciable y que una vez extraido el agua el pozo se cierra quedando el acuifero de nuevo homogéneo. En este caso tomaremos la región ρ &amp;lt; 20. Nuestro objetivo es aproximar las soluciones usando el método de Fourier. De nuevo supondremos que la solución sólo depende de ρ y t, y tomaremos ahora como condición frontera h(20, t) = 40.&lt;br /&gt;
Vamos a considerar el sistema de ecuaciones para h(ρ,t)=h(ρ,t)-40:&lt;br /&gt;
 &amp;lt;math&amp;gt; \left\{\begin{matrix}&lt;br /&gt;
\frac{\partial h}{\partial t} - D (\frac{1}{\rho}  \frac{\partial h}{\partial \rho} + \frac{\partial^2 h}{\partial \rho^2})= 0 &amp;amp; \rho \epsilon (0, 20) &amp;amp; \theta \epsilon (0, 2\Pi ) &amp;amp; t &amp;gt; 0 \\ &lt;br /&gt;
\frac{\partial h}{\partial \rho}(0,t) = 0;   h(20, t)= 0 \\ &lt;br /&gt;
\end{matrix}\right. &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Obtenemos el problema de autovalores asociado al sistema anterior con el método de separación de variables:&lt;br /&gt;
 &amp;lt;math&amp;gt; \left\{\begin{matrix}&lt;br /&gt;
D (\frac{X'(\rho)}{\rho} + X''(\rho))+ λX(\rho)=0 \\&lt;br /&gt;
X'(0) = 0;   X(20)= 0 \\ &lt;br /&gt;
&lt;br /&gt;
\end{matrix}\right. &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Sabemos que los problemas de esta forma tienen como solución la función de Bessel de primera especie que forma una familia de autofunciones: &amp;lt;math&amp;gt;Ψ(\rho)=J_0·(\rho\sqrt{λ})&amp;lt;/math&amp;gt;. Estas se anulan cuando &amp;lt;math&amp;gt;(\rho\sqrt{λ})&amp;lt;/math&amp;gt; se iguala a 2.4048, 5.5201, 8.6537, 11.7915 y 14.9309, siendo estos los 5 primeros ceros de la función de Bessel. De esta manera y tomando ρ=20 obtenemos los 5 primeros autovalores:&lt;br /&gt;
&amp;lt;math&amp;gt;(20\sqrt{λ})=2.4048&amp;lt;/math&amp;gt;Haciendo la operación anterior para los 5 ceros obtenemos los siguientes autovalores: 0.0145, 0.0762, 0.1872, 0.3476, 0.5573.&lt;br /&gt;
Ahora vamos a dibujar las 5 primeras autofunciones utilizando la función besselj:&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
a1=0.0145;&lt;br /&gt;
a2=0.0762;&lt;br /&gt;
a3=0.1872;&lt;br /&gt;
a4=0.3476;&lt;br /&gt;
a5=0.5575;&lt;br /&gt;
r=0:0.02:20;&lt;br /&gt;
F1=besselj(0,r.*(sqrt(a1))); &lt;br /&gt;
F2=besselj(0,r.*(sqrt(a2)));&lt;br /&gt;
F3=besselj(0,r.*(sqrt(a3)));&lt;br /&gt;
F4=besselj(0,r.*(sqrt(a4)));&lt;br /&gt;
F5=besselj(0,r.*(sqrt(a5)));&lt;br /&gt;
hold on&lt;br /&gt;
plot(r,F1)&lt;br /&gt;
plot(r,F2,'r')&lt;br /&gt;
plot(r,F3,'g')	&lt;br /&gt;
plot(r,F4,'c')&lt;br /&gt;
plot(r,F5,'y')&lt;br /&gt;
hold off&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
Aproximamos ahora la solución de la ecuación tomando como dato inicial es&amp;lt;math&amp;gt; h (\rho,0)= -log \frac{|\rho + 0.01|}{20.01} &amp;lt;/math&amp;gt; y usando 5 términos del desarrollo de Fourier, teniendo en cuenta que las autofunciones son ortogonales respecto al producto escalar: &amp;lt;math&amp;gt; (f(\rho),g(\rho)) = \int_{0}^{20} \rho f(\rho) g(\rho) \cdot dx &amp;lt;/math&amp;gt;&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
x0=0; L=20;&lt;br /&gt;
c0=[2.4048,5.5201,8.6537,11.7915,14.9309]; %Vector de ceros de la función de Bessel&lt;br /&gt;
A=(c0./20).^2; %Vector de autovalores&lt;br /&gt;
K=5; %Número de términos del desarrollo de Fourier&lt;br /&gt;
x=x0:0.1:L;&lt;br /&gt;
N=length(x)-1;&lt;br /&gt;
J=zeros(N+1,K);&lt;br /&gt;
z=zeros(N+1,K);&lt;br /&gt;
t0=0; tf=500;&lt;br /&gt;
t=t0:0.1:tf;&lt;br /&gt;
[xx,tt]=meshgrid(x,t);&lt;br /&gt;
h=0;&lt;br /&gt;
for k=1:K&lt;br /&gt;
   z(:,k)=(x)'*sqrt(A(k));&lt;br /&gt;
   J(:,k)=besselj(0,z(:,k));&lt;br /&gt;
   h0=-log((abs(x+0.1))/20.01); %Condición inicial&lt;br /&gt;
   c(k)=trapz(x,x'.*h0'.*J(:,k))/trapz(x,x'.*J(:,k).*J(:,k)); %Coeficientes de Fourier&lt;br /&gt;
   h=h+c(k)*exp(-A(k)*t)'*J(:,k)';&lt;br /&gt;
end&lt;br /&gt;
surf(xx,tt,h)&lt;br /&gt;
title('Aproximación de la solución')&lt;br /&gt;
}}&lt;/div&gt;</summary>
		<author><name>Marta Cavero</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Archivo:Tiemposg2.png&amp;diff=29899</id>
		<title>Archivo:Tiemposg2.png</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Archivo:Tiemposg2.png&amp;diff=29899"/>
				<updated>2015-05-14T09:35:52Z</updated>
		
		<summary type="html">&lt;p&gt;Marta Cavero: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>Marta Cavero</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Nivel_piezom%C3%A9trico_de_un_acu%C3%ADfero_confinado_(A5)&amp;diff=29897</id>
		<title>Nivel piezométrico de un acuífero confinado (A5)</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Nivel_piezom%C3%A9trico_de_un_acu%C3%ADfero_confinado_(A5)&amp;diff=29897"/>
				<updated>2015-05-14T09:17:46Z</updated>
		
		<summary type="html">&lt;p&gt;Marta Cavero: /* Variación del nivel piezométrico en tiempos grandes */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;br /&gt;
==== Introducción ====&lt;br /&gt;
&lt;br /&gt;
Consideramos un acuífero confinado entre dos capas de terreno impermeables horizontales. Llamaremos h(x, y) al nivel piezométrico del acuífero, definido por la altura que alcanzaría el agua si hiciéramos un sondeo en el punto (x, y). Obviamente este valor depende de la presión a la que se encuentra el agua confinada en el acuífero. Supondremos&lt;br /&gt;
que el acuífero es un medio poroso saturado de agua que ocupa una región infinita y está en equilibrio de manera que &amp;lt;math&amp;gt;h(x, y) = h_0&amp;lt;/math&amp;gt; constante para todo (x, y) ∈ &amp;lt;math&amp;gt;IR^{2}&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Sobre el acuifero se construye un pozo de sección circular y radio&amp;lt;math&amp;gt; ρ_0&amp;lt;/math&amp;gt; para extraer agua. La presencia del pozo hace que el nivel piezométrico cambie. Dada la simetría del problema podemos suponer que h(x, y) sólo va a depender de la distancia al pozo. Si tomamos coordenadas cilíndricas de forma que el eje OZ coincida con el eje de simetría del pozo, entonces h = h(ρ) donde &amp;lt;math&amp;gt;ρ = \sqrt{x^{2} + y^{2}}&amp;lt;/math&amp;gt; . Trabajaremos por tanto en coordenadas polares en el plano (ρ, θ).&lt;br /&gt;
&lt;br /&gt;
Las ecuaciones que permiten conocer h(ρ) son la ecuación de conservación de la masa:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; S = \frac{∂h}{∂t} + div q = 0 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
junto con la ley de Darcy&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; q = −K∇h &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
que es una ley experimental que modela el flujo de agua en un medio poroso. La ley de Darcy establece que el flujo de agua q a través de un medio poroso es proporcional a la diferencia de presión, que a su vez se puede escribir en términos del gradiente del nivel piezométrico en cada punto. La constante K se deduce experimentalmente para cada material y se conoce como la conductividad hidráulica o permeabilidad. Cuanto mayor es la constante K mayor es el flujo de agua provocado por un cambio&lt;br /&gt;
de presión. La ley de Darcy proporciona una buena aproximación del comportamiento del agua en un medio poroso siempre que este sea homogéneo e isótropo.&lt;br /&gt;
&lt;br /&gt;
La constante S en la ley de conservación de la masa se conoce como almacenamiento específico y se interpreta como la cantidad de agua que libera el acuífero al descender el nivel piezométrico en una unidad, por unidad de volumen.&lt;br /&gt;
&lt;br /&gt;
Combinando las ecuaciones de conservación de la masa con la ley de Darcy, obtenemos la ecuación:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \frac{∂h}{∂t} - D∆h = 0, ρ &amp;gt; ρ_0, θ ∈ (0, 2π), t &amp;gt; 0, (1) &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
donde D = K/S es la difusividad hidráulica que supondremos constante.&lt;br /&gt;
&lt;br /&gt;
==== Deducción de la fórmula ====&lt;br /&gt;
&lt;br /&gt;
En este apartado buscamos demostrar la ecuación (1) como combinación de la ecuación de conservación de masas y la Ley de Darcy.&lt;br /&gt;
&lt;br /&gt;
Por un lado sabemos que el laplaciaco equivale a la divergencia del gradiente: &lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; &lt;br /&gt;
(\Delta f = \nabla \cdot \nabla f = div \left (\nabla f) \right) &lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Por otro lado, sabemos que en coordenadas polares: &lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;x = ρ cos \theta \\&lt;br /&gt;
             y = ρ  sen \theta&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\bar{g_ρ } = cos \theta \bar{i} + sin \theta  \bar{j} \\&lt;br /&gt;
              \bar{g_\theta } = - ρ  sin \theta \bar{i} + ρ cos \theta \bar{j} &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;&lt;br /&gt;
G =&lt;br /&gt;
\left(&lt;br /&gt;
\begin{array}{cc}&lt;br /&gt;
1&amp;amp; 0 \\&lt;br /&gt;
0 &amp;amp; ρ ^{2} \\&lt;br /&gt;
\end{array}&lt;br /&gt;
\right);&lt;br /&gt;
\text {donde la raiz del determinante es} \sqrt{g} = ρ&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Como indica el enunciado, al sustituir la Ley de Darcy en la ecuación de conservación de la masa obtenemos y dividir entre S, teniendo en cuenta que el divergente del gradiente es el laplaciano como hemos indicado al principio de este apartado, obtenemos la ecuación (1): &amp;lt;math&amp;gt; \frac{∂h}{∂t} - \frac{k}{S}∆h = 0 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
En esta ecuación queda por desarrollar el Laplaciano de h. &lt;br /&gt;
Partiremos de la función h(ρ,θ), de la cual calcularemos primero el gradiente:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \nabla h = \frac{\partial h}{\partial \rho}\hat{\rho} + \frac{\partial h}{\partial \rho}\hat{\theta} =  \frac{\partial h}{\partial \rho}\bar{\rho} + \frac{1}{\rho^{2}} \frac{\partial h}{\partial \rho}\bar{\theta}  &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
teniendo en cuenta que &amp;lt;math&amp;gt;\bar{g^{i} } = \frac{\bar{g_i } }{ | \bar{g_i } | ^{2} } &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Ahora hacemos el divergente del gradiente anterior y obtenemos el Laplaciano en coordenadas polares:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;math&amp;gt;&lt;br /&gt;
 \Delta h = div(∇h) &lt;br /&gt;
= {1 \over \rho} {\partial \over \partial \rho}&lt;br /&gt;
  \left( \rho {\partial h \over \partial \rho} \right) &lt;br /&gt;
+ {1 \over \rho^2} {\partial^2 h \over \partial \theta^2}&lt;br /&gt;
= {1 \over \rho} {\partial h \over \partial \rho} &lt;br /&gt;
+ {\partial^2 h \over \partial \rho^2}&lt;br /&gt;
+ {1 \over \rho^2} {\partial^2 h \over \partial \theta^2}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Si consideramos que, debido a la simetría del problema, h sólo depende de su distancia al pozo, entonces obtenemos la función radial h(ρ), que nos permite simplificar el Laplaciano del modo siguiente:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;math&amp;gt;&lt;br /&gt;
 \Delta h = div(∇h) &lt;br /&gt;
= {1 \over \rho} {\partial h \over \partial \rho} &lt;br /&gt;
+ {\partial^2 h \over \partial \rho^2}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== Obtención de la ecuación====&lt;br /&gt;
&lt;br /&gt;
Para poder resolver la ecuación anterior y que el resultado sea único, hemos de establecer condiciones iniciales y de contorno.&lt;br /&gt;
&lt;br /&gt;
Las condiciones de contorno serán dos pues aparece la derivada segunda de la posición: &amp;lt;math&amp;gt; h(\rho_0 , t) = h_p \\&lt;br /&gt;
                                                                                                                                                                  h(20,t) = h_0 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
La condición inicial será única pues sólo aparece una derivada de primer orden en tiempo en nuestra ecuación: &amp;lt;math&amp;gt; h(\rho,0) = h_0 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
De este modo la ecuación resultante será:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \left\{\begin{matrix}&lt;br /&gt;
\frac{\partial h}{\partial t} - \frac{k}{s} (\frac{1}{\rho}  \frac{\partial h}{\partial \rho} + \frac{\partial^2 h}{\partial \rho^2})= 0 &amp;amp; \rho \epsilon (\rho_{0}, 2c) &amp;amp; \theta \epsilon (0, 2\Pi ) &amp;amp; t &amp;gt; 0 \\ &lt;br /&gt;
h(\rho_{0},t) = h_{p};   h(20, t)= h_{0} \\ &lt;br /&gt;
h(\rho, 0) = h_{0} &lt;br /&gt;
\end{matrix}\right. &amp;lt;/math&amp;gt; &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==== Resolución por método de diferencias finitas ====&lt;br /&gt;
&lt;br /&gt;
Suponiendo &amp;lt;math&amp;gt;ρ_0 =0.5m&amp;lt;/math&amp;gt;, &amp;lt;math&amp;gt;h_0 =45m&amp;lt;/math&amp;gt;, &amp;lt;math&amp;gt;hp =34&amp;lt;/math&amp;gt;, D=10−2, &amp;lt;math&amp;gt;(ρ,0)=h_0&amp;lt;/math&amp;gt;; y tomando  ∆ρ = 0.1 y ∆t = ∆ρ. Vamos a resolver la ecuación anterior por el método de diferencias finitas, usando el Método de Heun para realizar la aproximación en tiempo.&lt;br /&gt;
&lt;br /&gt;
Primero, sustituyendo los datos anteriores en la ecuación, llegamos a:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \left\{\begin{matrix}&lt;br /&gt;
\frac{\partial h}{\partial t} - 10^{2} (\frac{1}{\rho}  \frac{\partial h}{\partial \rho} + \frac{\partial^2 h}{\partial \rho^2})= 0 &amp;amp; \rho \epsilon (0.5, 20) &amp;amp; \theta \epsilon (0, 2\Pi ) &amp;amp; t &amp;gt; 0 \\ &lt;br /&gt;
h(0.5,t) = 34;   h(20, t)= 45 \\ &lt;br /&gt;
h(\rho, 0) = 45&lt;br /&gt;
\end{matrix}\right. &amp;lt;/math&amp;gt; &lt;br /&gt;
&lt;br /&gt;
Aplicando el método de las diferencias finitas llegamos al siguiente código:&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
&lt;br /&gt;
%TRPRIMERA FASE. ESPACIO&lt;br /&gt;
&lt;br /&gt;
a=0.5; b=20; %Condiciones de contorno&lt;br /&gt;
drho=0.1; N=(b-a)/drho; %División del intervalo&lt;br /&gt;
&lt;br /&gt;
rho=a+drho:drho:b-drho; %Sólo nodos interiores&lt;br /&gt;
&lt;br /&gt;
%Creamos las matrices&lt;br /&gt;
&lt;br /&gt;
L=diag(ones(1,N-2),1)-diag(ones(1,N-2),-1);&lt;br /&gt;
A=diag(1./rho);&lt;br /&gt;
L=10^(-2)*(1/(2*drho))*A*L;&lt;br /&gt;
&lt;br /&gt;
K=-2*diag(ones(1,N-1))+diag(ones(1,N-2),1)+diag(ones(1,N-2),-1);&lt;br /&gt;
K=10^(-2)*(1/drho^2)*K; &lt;br /&gt;
&lt;br /&gt;
F=zeros(N-1,1);&lt;br /&gt;
F(1,1)=10^(-2)*(-17/(rho(1)*drho)+34/drho^2);&lt;br /&gt;
F(N-1,1)=10^(-2)*(45/(rho(N-1)*2*drho)+45/drho^2);&lt;br /&gt;
&lt;br /&gt;
%SEGUDA FASE. TIEMPO&lt;br /&gt;
&lt;br /&gt;
H=ones(1,length(rho)); H=H*45; H=H';&lt;br /&gt;
dt=drho; T=10; t=0:dt:T;&lt;br /&gt;
h0=34; hN=45;&lt;br /&gt;
sol=[h0 H' hN];&lt;br /&gt;
&lt;br /&gt;
for j=1:length(t)-1 &lt;br /&gt;
    &lt;br /&gt;
    %Método de Heun&lt;br /&gt;
    k1=F+(K+L)*H;&lt;br /&gt;
    k2=F+(K+L)*(H+k1*dt);&lt;br /&gt;
    H=H+(dt/2)*(k1+k2);&lt;br /&gt;
 &lt;br /&gt;
    sol(j+1,:)=[h0 H' hN]; %Salvamos las solución, incluimos los extremos&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
rho1=a:drho:b; %Incluimos los nodos exteriores&lt;br /&gt;
&lt;br /&gt;
[rr,tt]=meshgrid(rho1,t);&lt;br /&gt;
surf(rr,tt,sol); %Dibujamos la solución&lt;br /&gt;
title('Nivel Piezométrico. Método Diferencias finitas con Heun en tiempo.')&lt;br /&gt;
xlabel('Distancia radial al centro del pozo.')&lt;br /&gt;
ylabel('Tiempo.')&lt;br /&gt;
zlabel('Nivel piezométrico.')&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
Mediante este código obtenemos la siguiente gráfica:&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Grafica npiezometrico.jpg|500px|thumb|best|Gráfica Nivel Piezométrico aproximada con el Método de Diferencias Finitas con Heun en tiempo.]]&lt;br /&gt;
&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Ahora dibujaremos la gráfica mediante los métodos de Euler implícito y trapecio y compararemos los resultados obtenidos.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Sobre el programa anterior cambiaremos las líneas correspondientes al método de Heun.&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* Método de Euler implícito:&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;math&amp;gt; \left\{\begin{matrix}&lt;br /&gt;
y_{0}\\&lt;br /&gt;
y_{n+1}=y_{n} + hf(t_{n+1},y_{n+1})\\&lt;br /&gt;
\end{matrix}\right. &amp;lt;/math&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
&lt;br /&gt;
for j=1:length(t)-1 &lt;br /&gt;
    &lt;br /&gt;
    %Método de Euler implícito&lt;br /&gt;
    &lt;br /&gt;
    H=(eye(N-1)-dt*(K+L))\(H+(F*dt)); &lt;br /&gt;
 &lt;br /&gt;
    sol(j+1,:)=[h0 H' hN]; %Salvamos las solución, incluimos los extremos&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
rho1=a:drho:b; %Incluimos los nodos exteriores&lt;br /&gt;
&lt;br /&gt;
[rr,tt]=meshgrid(rho1,t);&lt;br /&gt;
surf(rr,tt,sol); %Dibujamos la solución&lt;br /&gt;
title('Nivel Piezométrico. Método Diferencias finitas con Euler en tiempo.')&lt;br /&gt;
xlabel('Distancia radial al centro del pozo.')&lt;br /&gt;
ylabel('Tiempo.')&lt;br /&gt;
zlabel('Nivel piezométrico.')&lt;br /&gt;
&lt;br /&gt;
}}&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* Método del Trapecio:&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;math&amp;gt; \left\{\begin{matrix}&lt;br /&gt;
y_{0}\\&lt;br /&gt;
y_{n+1}=y_{n} + \frac{h}{2}f((t_{n},y_{n}+f(t_{n+1},y_{n+1}))\\&lt;br /&gt;
\end{matrix}\right. &amp;lt;/math&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
for j=1:length(t)-1 &lt;br /&gt;
    &lt;br /&gt;
    %Método del trapecio&lt;br /&gt;
    k1=F+(K+L)*H;&lt;br /&gt;
    k2=F+(K+L)*(H+k1*dt); &lt;br /&gt;
    H=(eye(N-1)-(dt/2)*(K+L))\(H+dt*F+(dt/2)*(K+L)*H);&lt;br /&gt;
 &lt;br /&gt;
    sol(j+1,:)=[h0 H' hN]; %Salvamos las solución, incluimos los extremos&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
rho1=a:drho:b; %Incluimos los nodos exteriores&lt;br /&gt;
&lt;br /&gt;
[rr,tt]=meshgrid(rho1,t);&lt;br /&gt;
surf(rr,tt,sol); %Dibujamos la solución&lt;br /&gt;
title('Nivel Piezométrico. Método Diferencias finitas con trapecio en tiempo.')&lt;br /&gt;
xlabel('Distancia radial al centro del pozo.')&lt;br /&gt;
ylabel('Tiempo.')&lt;br /&gt;
zlabel('Nivel piezométrico.')&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
Como podemos ver a continuación las tres gráficas resultantes son prácticamente iguales por lo que los tres métodos hacen una aproximación similar.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
[[Archivo:Trapecio12.png|500px|thumb|left|Gráfica Nivel Piezométrico aproximada con el Método de Diferencias Finitas con Trapecio en tiempo.]]&lt;br /&gt;
[[Archivo:Euler12.png|500px|thumb|right|Gráfica Nivel Piezométrico aproximada con el Método de Diferencias Finitas con Euler Implícito en tiempo.]]&lt;br /&gt;
&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== Comportamiento del nivel piezométrico con &amp;lt;math&amp;gt; \rho &amp;lt;/math&amp;gt; constante ====&lt;br /&gt;
&lt;br /&gt;
Ahora supondremos que &amp;lt;math&amp;gt; \rho &amp;lt;/math&amp;gt; es constante y que su valor es 2 y dibujaremos el comportamiento del nivel piezométrico en una gráfica 2D nivel piezométrico-tiempo.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Nuevamente utilizando el programa anterior con el  método de Heun:&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Rho2.png|500px|thumb|best|Gráfica Nivel Piezométrico-tiempo para &amp;lt;math&amp;gt; \rho =2 &amp;lt;/math&amp;gt; para T=10.]]&lt;br /&gt;
[[Archivo:Rho1000.png|500px|thumb|best|Gráfica Nivel Piezométrico-tiempo para &amp;lt;math&amp;gt; \rho =2 &amp;lt;/math&amp;gt; para T=1000.]]&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
&lt;br /&gt;
%PRIMERA FASE. ESPACIO&lt;br /&gt;
&lt;br /&gt;
a=0.5; b=20; %Condiciones de contorno&lt;br /&gt;
drho=0.1; N=(b-a)/drho; %División del intervalo&lt;br /&gt;
&lt;br /&gt;
rho=a+drho:drho:b-drho; %Sólo nodos interiores&lt;br /&gt;
&lt;br /&gt;
%Creamos las matrices&lt;br /&gt;
&lt;br /&gt;
L=diag(ones(1,N-2),1)-diag(ones(1,N-2),-1);&lt;br /&gt;
A=diag(1./rho);&lt;br /&gt;
L=10^(-2)*(1/(2*drho))*A*L;&lt;br /&gt;
&lt;br /&gt;
K=-2*diag(ones(1,N-1))+diag(ones(1,N-2),1)+diag(ones(1,N-2),-1);&lt;br /&gt;
K=10^(-2)*(1/drho^2)*K; &lt;br /&gt;
&lt;br /&gt;
F=zeros(N-1,1);&lt;br /&gt;
F(1,1)=10^(-2)*(-17/(rho(1)*drho)+34/drho^2);&lt;br /&gt;
F(N-1,1)=10^(-2)*(45/(rho(N-1)*2*drho)+45/drho^2);&lt;br /&gt;
&lt;br /&gt;
%SEGUDA FASE. TIEMPO&lt;br /&gt;
&lt;br /&gt;
H=ones(1,length(rho)); H=H*45; H=H';&lt;br /&gt;
dt=drho; &lt;br /&gt;
T=10 &lt;br /&gt;
%Comprobamos también la solución para un tiempo mayor &lt;br /&gt;
%T=1000&lt;br /&gt;
t=0:dt:T;&lt;br /&gt;
h0=34; hN=45;&lt;br /&gt;
sol=[h0 H' hN];&lt;br /&gt;
&lt;br /&gt;
for j=1:length(t)-1 &lt;br /&gt;
    &lt;br /&gt;
    %Método de Heun&lt;br /&gt;
    k1=F+(K+L)*H;&lt;br /&gt;
    k2=F+(K+L)*(H+k1*dt);&lt;br /&gt;
    H=H+(dt/2)*(k1+k2);&lt;br /&gt;
 &lt;br /&gt;
    sol(j+1,:)=[h0 H' hN]; %Salvamos las solución, incluimos los extremos&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
rho1=a:drho:b; %Incluimos los nodos exteriores&lt;br /&gt;
&lt;br /&gt;
m=sol(:,rho==2); %Vector que incluye la solución en tiempo para rho=2&lt;br /&gt;
&lt;br /&gt;
plot(t,m);&lt;br /&gt;
&lt;br /&gt;
title('Comportamiento del nivel piezométrico en el tiempo para p=2')&lt;br /&gt;
xlabel('Tiempo')&lt;br /&gt;
ylabel('Nivel piezométrico.')&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
La primera gráfica muestra que para tiempos pequeños la variación del nivel piezométrico es muy pequeña (del orden de 0,10/0,15 m), aún así como observamos en la segunda gráfica a medida que avanzamos en el tiempo la variación del nivel disminuye aún más ya que la curva está cada vez menos inclinada.&lt;br /&gt;
&lt;br /&gt;
==== Variación del nivel piezométrico en tiempos grandes ====&lt;br /&gt;
Ahora vamos a comprobar que la variación del nivel piezométrico para tiempos elevados (T=5000) es mínima.&lt;br /&gt;
Para ello dibujaremos las soluciones cada 200 horas de en el intervalo temporal [1; 5000], en&lt;br /&gt;
una misma gráfica.&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
%PRIMERA FASE. ESPACIO&lt;br /&gt;
&lt;br /&gt;
a=0.5; b=20; %Condiciones de contorno&lt;br /&gt;
drho=0.1; N=(b-a)/drho; %División del intervalo&lt;br /&gt;
&lt;br /&gt;
rho=a+drho:drho:b-drho; %Sólo nodos interiores&lt;br /&gt;
&lt;br /&gt;
%Creamos las matrices&lt;br /&gt;
&lt;br /&gt;
L=diag(ones(1,N-2),1)-diag(ones(1,N-2),-1);&lt;br /&gt;
A=diag(1./rho);&lt;br /&gt;
L=10^(-2)*(1/(2*drho))*A*L;&lt;br /&gt;
&lt;br /&gt;
K=-2*diag(ones(1,N-1))+diag(ones(1,N-2),1)+diag(ones(1,N-2),-1);&lt;br /&gt;
K=10^(-2)*(1/drho^2)*K; &lt;br /&gt;
&lt;br /&gt;
F=zeros(N-1,1);&lt;br /&gt;
F(1,1)=10^(-2)*(-17/(rho(1)*drho)+34/drho^2);&lt;br /&gt;
F(N-1,1)=10^(-2)*(45/(rho(N-1)*2*drho)+45/drho^2);&lt;br /&gt;
&lt;br /&gt;
%SEGUDA FASE. TIEMPO&lt;br /&gt;
&lt;br /&gt;
H=ones(1,length(rho)); H=H*45; H=H';&lt;br /&gt;
dt=0.5; T=5000; t=0:dt:T;&lt;br /&gt;
h0=34; hN=45;&lt;br /&gt;
sol=[h0 H' hN];&lt;br /&gt;
&lt;br /&gt;
figure(1);&lt;br /&gt;
hold on;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
for j=1:length(t)-1 &lt;br /&gt;
    &lt;br /&gt;
    %Método de Heun&lt;br /&gt;
    k1=F+(K+L)*H;&lt;br /&gt;
    k2=F+(K+L)*(H+k1*dt);&lt;br /&gt;
    H=H+(dt/2)*(k1+k2);&lt;br /&gt;
 &lt;br /&gt;
    sol(j+1,:)=[h0 H' hN]; %Salvamos las solución, incluimos los extremos&lt;br /&gt;
    &lt;br /&gt;
 if rem(t(j),200)==0;&lt;br /&gt;
    &lt;br /&gt;
    rho1=a:drho:b; %Incluimos los nodos exteriores&lt;br /&gt;
  &lt;br /&gt;
  plot(rho1,sol)&lt;br /&gt;
&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
end&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
Sin embargo, no hemos sido capaces de obtener la gráfica correspondiente mediante este programa pues, con un paso de 0.5 o menor, MATLAB se &amp;quot;satura&amp;quot; antes de sacar una solución, y con un paso mayor la gráfica obtenida es inestable. &lt;br /&gt;
&lt;br /&gt;
[[Archivo:Trabajo21.jpg|marco|derecha|Nivel piezométrico estacionario]]&lt;br /&gt;
&lt;br /&gt;
====Problema estacionario====&lt;br /&gt;
Como hemos visto en el apartado anterior para tiempos grandes el nivel piezométrico se mantiene practicamente constante a lo largo del tiempo, esto es debido a que se establece un equilibrio entre el caudal de agua extraida del acuifero y la migración de aguas desde los puntos más alejados del pozo hacia este.&lt;br /&gt;
Por lo tanto se verifica que:&lt;br /&gt;
 &amp;lt;math&amp;gt;\frac{\partial h}{\partial t}=0&amp;lt;/math&amp;gt;&lt;br /&gt;
Y por lo tanto el nivel piezométrico se puede aproximar por:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \left\{\begin{matrix}&lt;br /&gt;
- \frac{k}{s} (\frac{1}{\rho}  \frac{\partial h}{\partial \rho} + \frac{\partial^2 h}{\partial \rho^2})= 0 &amp;amp; \rho \epsilon (1, 20) &amp;amp; \theta \epsilon (0, 2\Pi ) &amp;amp; 0 &amp;lt; t &amp;lt; 5000 \\ &lt;br /&gt;
h(1,t) = 35;    h(20, t)= 40 \\ &lt;br /&gt;
h(\rho, 0) = 40 &lt;br /&gt;
\end{matrix}\right. &amp;lt;/math&amp;gt;&lt;br /&gt;
Resolvemos por diferencias finitas:&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
    %datos&lt;br /&gt;
    t=5000;&lt;br /&gt;
    l=20;&lt;br /&gt;
    D=0.01;&lt;br /&gt;
    hp=35;&lt;br /&gt;
    ho=40;&lt;br /&gt;
    %discretización&lt;br /&gt;
    s=0.1;&lt;br /&gt;
    x0=1;&lt;br /&gt;
    x=x0:s:l;&lt;br /&gt;
    xint=x0+s:s:l-s;&lt;br /&gt;
    N=length(x)-2; &lt;br /&gt;
    %construimos las matrices para el método de las diferencias finitas&lt;br /&gt;
    K=(1/s^2)*(diag(2*ones(1,N))-diag(ones(1,N-1),1)-diag(ones(1,N-1),-1));&lt;br /&gt;
    A=(1/(s*2))*(diag(ones(1,N-1),1)-diag(ones(1,N-1),-1));&lt;br /&gt;
    A=diag(1./xint)*A;&lt;br /&gt;
    h0=(40*ones(N,1));&lt;br /&gt;
    dt=200; &lt;br /&gt;
    t=0:dt:t;&lt;br /&gt;
    M=length(t)-1;&lt;br /&gt;
    F=(zeros(N,1));&lt;br /&gt;
    F(1)=D*((hp/s^2)-(hp/(2*s)*1/xint(1)));&lt;br /&gt;
    F(N)=D*((ho/s^2)+ho/(s*2*xint(N)));&lt;br /&gt;
    H(1,:)=[40;h0;40]'; &lt;br /&gt;
    h=h0;&lt;br /&gt;
    for n=1:M&lt;br /&gt;
      h=(D)*(K-A)\((F)); %utilizamos el comando backslash para resolver el sistema de ecuaciones&lt;br /&gt;
      H(n+1,:)=[hp h' ho];&lt;br /&gt;
    end&lt;br /&gt;
    %mallado y representación&lt;br /&gt;
    [X,T]=meshgrid(x,t);&lt;br /&gt;
    surf(X,T,H)&lt;br /&gt;
    xlabel('Distancia (metros)');&lt;br /&gt;
    ylabel('Tiempo (horas)');&lt;br /&gt;
    zlabel('Nivel piezométrico (metros)')&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
====Capacidad de recuperación del acuífero====&lt;br /&gt;
En este apartado queremos calcular una ley que nos describa el comportamiento del acuífero e el caso de que impermeabilizásemos las paredes del pozo partiendo del estado estacionario anterior, esto significaría que el fujo de agua en los bordes del pozo sería nulo y el nivel piezométrico iría variando hasta llegar a otro estado estacionario.&lt;br /&gt;
La condición frontera en r=r0 será entonces:&lt;br /&gt;
&amp;lt;math&amp;gt;\frac{\partial h(r0,t)}{\partial \rho}=0&amp;lt;/math&amp;gt;&lt;br /&gt;
Ya que en caso de que la derivada parcial del nivel piezométrico respecto a la distancia r sea nula significa que el estado está en equilibrio y no hay corrientes de líquido.&lt;br /&gt;
El estado que tratará de alcanzar el fluido será el inicial, con el mismo nivel piezométrico ya que al impermeabilizar las paredes del pozo hemos vuelto al estado inicial.&lt;br /&gt;
&lt;br /&gt;
====Método de Fourier====&lt;br /&gt;
Ahora suponemos que el radio del pozo es despreciable y que una vez extraido el agua el pozo se cierra quedando el acuifero de nuevo homogéneo. En este caso tomaremos la región ρ &amp;lt; 20. Nuestro objetivo es aproximar las soluciones usando el método de Fourier. De nuevo supondremos que la solución sólo depende de ρ y t, y tomaremos ahora como condición frontera h(20, t) = 40.&lt;br /&gt;
Vamos a considerar el sistema de ecuaciones para h(ρ,t)=h(ρ,t)-40:&lt;br /&gt;
 &amp;lt;math&amp;gt; \left\{\begin{matrix}&lt;br /&gt;
\frac{\partial h}{\partial t} - D (\frac{1}{\rho}  \frac{\partial h}{\partial \rho} + \frac{\partial^2 h}{\partial \rho^2})= 0 &amp;amp; \rho \epsilon (0, 20) &amp;amp; \theta \epsilon (0, 2\Pi ) &amp;amp; t &amp;gt; 0 \\ &lt;br /&gt;
\frac{\partial h}{\partial \rho}(0,t) = 0;   h(20, t)= 0 \\ &lt;br /&gt;
\end{matrix}\right. &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Obtenemos el problema de autovalores asociado al sistema anterior con el método de separación de variables:&lt;br /&gt;
 &amp;lt;math&amp;gt; \left\{\begin{matrix}&lt;br /&gt;
D (\frac{X'(\rho)}{\rho} + X''(\rho))+ λX(\rho)=0 \\&lt;br /&gt;
X'(0) = 0;   X(20)= 0 \\ &lt;br /&gt;
&lt;br /&gt;
\end{matrix}\right. &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Sabemos que los problemas de esta forma tienen como solución la función de Bessel de primera especie que forma una familia de autofunciones: &amp;lt;math&amp;gt;Ψ(\rho)=J_0·(\rho\sqrt{λ})&amp;lt;/math&amp;gt;. Estas se anulan cuando &amp;lt;math&amp;gt;(\rho\sqrt{λ})&amp;lt;/math&amp;gt; se iguala a 2.4048, 5.5201, 8.6537, 11.7915 y 14.9309, siendo estos los 5 primeros ceros de la función de Bessel. De esta manera y tomando ρ=20 obtenemos los 5 primeros autovalores:&lt;br /&gt;
&amp;lt;math&amp;gt;(20\sqrt{λ})=2.4048&amp;lt;/math&amp;gt;Haciendo la operación anterior para los 5 ceros obtenemos los siguientes autovalores: 0.0145, 0.0762, 0.1872, 0.3476, 0.5573.&lt;br /&gt;
Ahora vamos a dibujar las 5 primeras autofunciones utilizando la función besselj:&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
a1=0.0145;&lt;br /&gt;
a2=0.0762;&lt;br /&gt;
a3=0.1872;&lt;br /&gt;
a4=0.3476;&lt;br /&gt;
a5=0.5575;&lt;br /&gt;
r=0:0.02:20;&lt;br /&gt;
F1=besselj(0,r.*(sqrt(a1))); &lt;br /&gt;
F2=besselj(0,r.*(sqrt(a2)));&lt;br /&gt;
F3=besselj(0,r.*(sqrt(a3)));&lt;br /&gt;
F4=besselj(0,r.*(sqrt(a4)));&lt;br /&gt;
F5=besselj(0,r.*(sqrt(a5)));&lt;br /&gt;
hold on&lt;br /&gt;
plot(r,F1)&lt;br /&gt;
plot(r,F2,'r')&lt;br /&gt;
plot(r,F3,'g')	&lt;br /&gt;
plot(r,F4,'c')&lt;br /&gt;
plot(r,F5,'y')&lt;br /&gt;
hold off&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
Aproximamos ahora la solución de la ecuación tomando como dato inicial es&amp;lt;math&amp;gt; h (\rho,0)= -log \frac{|\rho + 0.01|}{20.01} &amp;lt;/math&amp;gt; y usando 5 términos del desarrollo de Fourier, teniendo en cuenta que las autofunciones son ortogonales respecto al producto escalar: &amp;lt;math&amp;gt; (f(\rho),g(\rho)) = \int_{0}^{20} \rho f(\rho) g(\rho) \cdot dx &amp;lt;/math&amp;gt;&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
x0=0; L=20;&lt;br /&gt;
c0=[2.4048,5.5201,8.6537,11.7915,14.9309]; %Vector de ceros de la función de Bessel&lt;br /&gt;
A=(c0./20).^2; %Vector de autovalores&lt;br /&gt;
K=5; %Número de términos del desarrollo de Fourier&lt;br /&gt;
x=x0:0.1:L;&lt;br /&gt;
N=length(x)-1;&lt;br /&gt;
J=zeros(N+1,K);&lt;br /&gt;
z=zeros(N+1,K);&lt;br /&gt;
t0=0; tf=500;&lt;br /&gt;
t=t0:0.1:tf;&lt;br /&gt;
[xx,tt]=meshgrid(x,t);&lt;br /&gt;
h=0;&lt;br /&gt;
for k=1:K&lt;br /&gt;
   z(:,k)=(x)'*sqrt(A(k));&lt;br /&gt;
   J(:,k)=besselj(0,z(:,k));&lt;br /&gt;
   h0=-log((abs(x+0.1))/20.01); %Condición inicial&lt;br /&gt;
   c(k)=trapz(x,x'.*h0'.*J(:,k))/trapz(x,x'.*J(:,k).*J(:,k)); %Coeficientes de Fourier&lt;br /&gt;
   h=h+c(k)*exp(-A(k)*t)'*J(:,k)';&lt;br /&gt;
end&lt;br /&gt;
surf(xx,tt,h)&lt;br /&gt;
title('Aproximación de la solución')&lt;br /&gt;
}}&lt;/div&gt;</summary>
		<author><name>Marta Cavero</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Nivel_piezom%C3%A9trico_de_un_acu%C3%ADfero_confinado_(A5)&amp;diff=29896</id>
		<title>Nivel piezométrico de un acuífero confinado (A5)</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Nivel_piezom%C3%A9trico_de_un_acu%C3%ADfero_confinado_(A5)&amp;diff=29896"/>
				<updated>2015-05-14T09:15:19Z</updated>
		
		<summary type="html">&lt;p&gt;Marta Cavero: /* Variación del nivel piezométrico en tiempos grandes */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;br /&gt;
==== Introducción ====&lt;br /&gt;
&lt;br /&gt;
Consideramos un acuífero confinado entre dos capas de terreno impermeables horizontales. Llamaremos h(x, y) al nivel piezométrico del acuífero, definido por la altura que alcanzaría el agua si hiciéramos un sondeo en el punto (x, y). Obviamente este valor depende de la presión a la que se encuentra el agua confinada en el acuífero. Supondremos&lt;br /&gt;
que el acuífero es un medio poroso saturado de agua que ocupa una región infinita y está en equilibrio de manera que &amp;lt;math&amp;gt;h(x, y) = h_0&amp;lt;/math&amp;gt; constante para todo (x, y) ∈ &amp;lt;math&amp;gt;IR^{2}&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Sobre el acuifero se construye un pozo de sección circular y radio&amp;lt;math&amp;gt; ρ_0&amp;lt;/math&amp;gt; para extraer agua. La presencia del pozo hace que el nivel piezométrico cambie. Dada la simetría del problema podemos suponer que h(x, y) sólo va a depender de la distancia al pozo. Si tomamos coordenadas cilíndricas de forma que el eje OZ coincida con el eje de simetría del pozo, entonces h = h(ρ) donde &amp;lt;math&amp;gt;ρ = \sqrt{x^{2} + y^{2}}&amp;lt;/math&amp;gt; . Trabajaremos por tanto en coordenadas polares en el plano (ρ, θ).&lt;br /&gt;
&lt;br /&gt;
Las ecuaciones que permiten conocer h(ρ) son la ecuación de conservación de la masa:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; S = \frac{∂h}{∂t} + div q = 0 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
junto con la ley de Darcy&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; q = −K∇h &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
que es una ley experimental que modela el flujo de agua en un medio poroso. La ley de Darcy establece que el flujo de agua q a través de un medio poroso es proporcional a la diferencia de presión, que a su vez se puede escribir en términos del gradiente del nivel piezométrico en cada punto. La constante K se deduce experimentalmente para cada material y se conoce como la conductividad hidráulica o permeabilidad. Cuanto mayor es la constante K mayor es el flujo de agua provocado por un cambio&lt;br /&gt;
de presión. La ley de Darcy proporciona una buena aproximación del comportamiento del agua en un medio poroso siempre que este sea homogéneo e isótropo.&lt;br /&gt;
&lt;br /&gt;
La constante S en la ley de conservación de la masa se conoce como almacenamiento específico y se interpreta como la cantidad de agua que libera el acuífero al descender el nivel piezométrico en una unidad, por unidad de volumen.&lt;br /&gt;
&lt;br /&gt;
Combinando las ecuaciones de conservación de la masa con la ley de Darcy, obtenemos la ecuación:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \frac{∂h}{∂t} - D∆h = 0, ρ &amp;gt; ρ_0, θ ∈ (0, 2π), t &amp;gt; 0, (1) &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
donde D = K/S es la difusividad hidráulica que supondremos constante.&lt;br /&gt;
&lt;br /&gt;
==== Deducción de la fórmula ====&lt;br /&gt;
&lt;br /&gt;
En este apartado buscamos demostrar la ecuación (1) como combinación de la ecuación de conservación de masas y la Ley de Darcy.&lt;br /&gt;
&lt;br /&gt;
Por un lado sabemos que el laplaciaco equivale a la divergencia del gradiente: &lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; &lt;br /&gt;
(\Delta f = \nabla \cdot \nabla f = div \left (\nabla f) \right) &lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Por otro lado, sabemos que en coordenadas polares: &lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;x = ρ cos \theta \\&lt;br /&gt;
             y = ρ  sen \theta&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\bar{g_ρ } = cos \theta \bar{i} + sin \theta  \bar{j} \\&lt;br /&gt;
              \bar{g_\theta } = - ρ  sin \theta \bar{i} + ρ cos \theta \bar{j} &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;&lt;br /&gt;
G =&lt;br /&gt;
\left(&lt;br /&gt;
\begin{array}{cc}&lt;br /&gt;
1&amp;amp; 0 \\&lt;br /&gt;
0 &amp;amp; ρ ^{2} \\&lt;br /&gt;
\end{array}&lt;br /&gt;
\right);&lt;br /&gt;
\text {donde la raiz del determinante es} \sqrt{g} = ρ&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Como indica el enunciado, al sustituir la Ley de Darcy en la ecuación de conservación de la masa obtenemos y dividir entre S, teniendo en cuenta que el divergente del gradiente es el laplaciano como hemos indicado al principio de este apartado, obtenemos la ecuación (1): &amp;lt;math&amp;gt; \frac{∂h}{∂t} - \frac{k}{S}∆h = 0 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
En esta ecuación queda por desarrollar el Laplaciano de h. &lt;br /&gt;
Partiremos de la función h(ρ,θ), de la cual calcularemos primero el gradiente:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \nabla h = \frac{\partial h}{\partial \rho}\hat{\rho} + \frac{\partial h}{\partial \rho}\hat{\theta} =  \frac{\partial h}{\partial \rho}\bar{\rho} + \frac{1}{\rho^{2}} \frac{\partial h}{\partial \rho}\bar{\theta}  &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
teniendo en cuenta que &amp;lt;math&amp;gt;\bar{g^{i} } = \frac{\bar{g_i } }{ | \bar{g_i } | ^{2} } &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Ahora hacemos el divergente del gradiente anterior y obtenemos el Laplaciano en coordenadas polares:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;math&amp;gt;&lt;br /&gt;
 \Delta h = div(∇h) &lt;br /&gt;
= {1 \over \rho} {\partial \over \partial \rho}&lt;br /&gt;
  \left( \rho {\partial h \over \partial \rho} \right) &lt;br /&gt;
+ {1 \over \rho^2} {\partial^2 h \over \partial \theta^2}&lt;br /&gt;
= {1 \over \rho} {\partial h \over \partial \rho} &lt;br /&gt;
+ {\partial^2 h \over \partial \rho^2}&lt;br /&gt;
+ {1 \over \rho^2} {\partial^2 h \over \partial \theta^2}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Si consideramos que, debido a la simetría del problema, h sólo depende de su distancia al pozo, entonces obtenemos la función radial h(ρ), que nos permite simplificar el Laplaciano del modo siguiente:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;math&amp;gt;&lt;br /&gt;
 \Delta h = div(∇h) &lt;br /&gt;
= {1 \over \rho} {\partial h \over \partial \rho} &lt;br /&gt;
+ {\partial^2 h \over \partial \rho^2}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== Obtención de la ecuación====&lt;br /&gt;
&lt;br /&gt;
Para poder resolver la ecuación anterior y que el resultado sea único, hemos de establecer condiciones iniciales y de contorno.&lt;br /&gt;
&lt;br /&gt;
Las condiciones de contorno serán dos pues aparece la derivada segunda de la posición: &amp;lt;math&amp;gt; h(\rho_0 , t) = h_p \\&lt;br /&gt;
                                                                                                                                                                  h(20,t) = h_0 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
La condición inicial será única pues sólo aparece una derivada de primer orden en tiempo en nuestra ecuación: &amp;lt;math&amp;gt; h(\rho,0) = h_0 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
De este modo la ecuación resultante será:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \left\{\begin{matrix}&lt;br /&gt;
\frac{\partial h}{\partial t} - \frac{k}{s} (\frac{1}{\rho}  \frac{\partial h}{\partial \rho} + \frac{\partial^2 h}{\partial \rho^2})= 0 &amp;amp; \rho \epsilon (\rho_{0}, 2c) &amp;amp; \theta \epsilon (0, 2\Pi ) &amp;amp; t &amp;gt; 0 \\ &lt;br /&gt;
h(\rho_{0},t) = h_{p};   h(20, t)= h_{0} \\ &lt;br /&gt;
h(\rho, 0) = h_{0} &lt;br /&gt;
\end{matrix}\right. &amp;lt;/math&amp;gt; &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==== Resolución por método de diferencias finitas ====&lt;br /&gt;
&lt;br /&gt;
Suponiendo &amp;lt;math&amp;gt;ρ_0 =0.5m&amp;lt;/math&amp;gt;, &amp;lt;math&amp;gt;h_0 =45m&amp;lt;/math&amp;gt;, &amp;lt;math&amp;gt;hp =34&amp;lt;/math&amp;gt;, D=10−2, &amp;lt;math&amp;gt;(ρ,0)=h_0&amp;lt;/math&amp;gt;; y tomando  ∆ρ = 0.1 y ∆t = ∆ρ. Vamos a resolver la ecuación anterior por el método de diferencias finitas, usando el Método de Heun para realizar la aproximación en tiempo.&lt;br /&gt;
&lt;br /&gt;
Primero, sustituyendo los datos anteriores en la ecuación, llegamos a:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \left\{\begin{matrix}&lt;br /&gt;
\frac{\partial h}{\partial t} - 10^{2} (\frac{1}{\rho}  \frac{\partial h}{\partial \rho} + \frac{\partial^2 h}{\partial \rho^2})= 0 &amp;amp; \rho \epsilon (0.5, 20) &amp;amp; \theta \epsilon (0, 2\Pi ) &amp;amp; t &amp;gt; 0 \\ &lt;br /&gt;
h(0.5,t) = 34;   h(20, t)= 45 \\ &lt;br /&gt;
h(\rho, 0) = 45&lt;br /&gt;
\end{matrix}\right. &amp;lt;/math&amp;gt; &lt;br /&gt;
&lt;br /&gt;
Aplicando el método de las diferencias finitas llegamos al siguiente código:&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
&lt;br /&gt;
%TRPRIMERA FASE. ESPACIO&lt;br /&gt;
&lt;br /&gt;
a=0.5; b=20; %Condiciones de contorno&lt;br /&gt;
drho=0.1; N=(b-a)/drho; %División del intervalo&lt;br /&gt;
&lt;br /&gt;
rho=a+drho:drho:b-drho; %Sólo nodos interiores&lt;br /&gt;
&lt;br /&gt;
%Creamos las matrices&lt;br /&gt;
&lt;br /&gt;
L=diag(ones(1,N-2),1)-diag(ones(1,N-2),-1);&lt;br /&gt;
A=diag(1./rho);&lt;br /&gt;
L=10^(-2)*(1/(2*drho))*A*L;&lt;br /&gt;
&lt;br /&gt;
K=-2*diag(ones(1,N-1))+diag(ones(1,N-2),1)+diag(ones(1,N-2),-1);&lt;br /&gt;
K=10^(-2)*(1/drho^2)*K; &lt;br /&gt;
&lt;br /&gt;
F=zeros(N-1,1);&lt;br /&gt;
F(1,1)=10^(-2)*(-17/(rho(1)*drho)+34/drho^2);&lt;br /&gt;
F(N-1,1)=10^(-2)*(45/(rho(N-1)*2*drho)+45/drho^2);&lt;br /&gt;
&lt;br /&gt;
%SEGUDA FASE. TIEMPO&lt;br /&gt;
&lt;br /&gt;
H=ones(1,length(rho)); H=H*45; H=H';&lt;br /&gt;
dt=drho; T=10; t=0:dt:T;&lt;br /&gt;
h0=34; hN=45;&lt;br /&gt;
sol=[h0 H' hN];&lt;br /&gt;
&lt;br /&gt;
for j=1:length(t)-1 &lt;br /&gt;
    &lt;br /&gt;
    %Método de Heun&lt;br /&gt;
    k1=F+(K+L)*H;&lt;br /&gt;
    k2=F+(K+L)*(H+k1*dt);&lt;br /&gt;
    H=H+(dt/2)*(k1+k2);&lt;br /&gt;
 &lt;br /&gt;
    sol(j+1,:)=[h0 H' hN]; %Salvamos las solución, incluimos los extremos&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
rho1=a:drho:b; %Incluimos los nodos exteriores&lt;br /&gt;
&lt;br /&gt;
[rr,tt]=meshgrid(rho1,t);&lt;br /&gt;
surf(rr,tt,sol); %Dibujamos la solución&lt;br /&gt;
title('Nivel Piezométrico. Método Diferencias finitas con Heun en tiempo.')&lt;br /&gt;
xlabel('Distancia radial al centro del pozo.')&lt;br /&gt;
ylabel('Tiempo.')&lt;br /&gt;
zlabel('Nivel piezométrico.')&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
Mediante este código obtenemos la siguiente gráfica:&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Grafica npiezometrico.jpg|500px|thumb|best|Gráfica Nivel Piezométrico aproximada con el Método de Diferencias Finitas con Heun en tiempo.]]&lt;br /&gt;
&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Ahora dibujaremos la gráfica mediante los métodos de Euler implícito y trapecio y compararemos los resultados obtenidos.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Sobre el programa anterior cambiaremos las líneas correspondientes al método de Heun.&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* Método de Euler implícito:&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;math&amp;gt; \left\{\begin{matrix}&lt;br /&gt;
y_{0}\\&lt;br /&gt;
y_{n+1}=y_{n} + hf(t_{n+1},y_{n+1})\\&lt;br /&gt;
\end{matrix}\right. &amp;lt;/math&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
&lt;br /&gt;
for j=1:length(t)-1 &lt;br /&gt;
    &lt;br /&gt;
    %Método de Euler implícito&lt;br /&gt;
    &lt;br /&gt;
    H=(eye(N-1)-dt*(K+L))\(H+(F*dt)); &lt;br /&gt;
 &lt;br /&gt;
    sol(j+1,:)=[h0 H' hN]; %Salvamos las solución, incluimos los extremos&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
rho1=a:drho:b; %Incluimos los nodos exteriores&lt;br /&gt;
&lt;br /&gt;
[rr,tt]=meshgrid(rho1,t);&lt;br /&gt;
surf(rr,tt,sol); %Dibujamos la solución&lt;br /&gt;
title('Nivel Piezométrico. Método Diferencias finitas con Euler en tiempo.')&lt;br /&gt;
xlabel('Distancia radial al centro del pozo.')&lt;br /&gt;
ylabel('Tiempo.')&lt;br /&gt;
zlabel('Nivel piezométrico.')&lt;br /&gt;
&lt;br /&gt;
}}&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* Método del Trapecio:&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;math&amp;gt; \left\{\begin{matrix}&lt;br /&gt;
y_{0}\\&lt;br /&gt;
y_{n+1}=y_{n} + \frac{h}{2}f((t_{n},y_{n}+f(t_{n+1},y_{n+1}))\\&lt;br /&gt;
\end{matrix}\right. &amp;lt;/math&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
for j=1:length(t)-1 &lt;br /&gt;
    &lt;br /&gt;
    %Método del trapecio&lt;br /&gt;
    k1=F+(K+L)*H;&lt;br /&gt;
    k2=F+(K+L)*(H+k1*dt); &lt;br /&gt;
    H=(eye(N-1)-(dt/2)*(K+L))\(H+dt*F+(dt/2)*(K+L)*H);&lt;br /&gt;
 &lt;br /&gt;
    sol(j+1,:)=[h0 H' hN]; %Salvamos las solución, incluimos los extremos&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
rho1=a:drho:b; %Incluimos los nodos exteriores&lt;br /&gt;
&lt;br /&gt;
[rr,tt]=meshgrid(rho1,t);&lt;br /&gt;
surf(rr,tt,sol); %Dibujamos la solución&lt;br /&gt;
title('Nivel Piezométrico. Método Diferencias finitas con trapecio en tiempo.')&lt;br /&gt;
xlabel('Distancia radial al centro del pozo.')&lt;br /&gt;
ylabel('Tiempo.')&lt;br /&gt;
zlabel('Nivel piezométrico.')&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
Como podemos ver a continuación las tres gráficas resultantes son prácticamente iguales por lo que los tres métodos hacen una aproximación similar.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
[[Archivo:Trapecio12.png|500px|thumb|left|Gráfica Nivel Piezométrico aproximada con el Método de Diferencias Finitas con Trapecio en tiempo.]]&lt;br /&gt;
[[Archivo:Euler12.png|500px|thumb|right|Gráfica Nivel Piezométrico aproximada con el Método de Diferencias Finitas con Euler Implícito en tiempo.]]&lt;br /&gt;
&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== Comportamiento del nivel piezométrico con &amp;lt;math&amp;gt; \rho &amp;lt;/math&amp;gt; constante ====&lt;br /&gt;
&lt;br /&gt;
Ahora supondremos que &amp;lt;math&amp;gt; \rho &amp;lt;/math&amp;gt; es constante y que su valor es 2 y dibujaremos el comportamiento del nivel piezométrico en una gráfica 2D nivel piezométrico-tiempo.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Nuevamente utilizando el programa anterior con el  método de Heun:&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Rho2.png|500px|thumb|best|Gráfica Nivel Piezométrico-tiempo para &amp;lt;math&amp;gt; \rho =2 &amp;lt;/math&amp;gt; para T=10.]]&lt;br /&gt;
[[Archivo:Rho1000.png|500px|thumb|best|Gráfica Nivel Piezométrico-tiempo para &amp;lt;math&amp;gt; \rho =2 &amp;lt;/math&amp;gt; para T=1000.]]&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
&lt;br /&gt;
%PRIMERA FASE. ESPACIO&lt;br /&gt;
&lt;br /&gt;
a=0.5; b=20; %Condiciones de contorno&lt;br /&gt;
drho=0.1; N=(b-a)/drho; %División del intervalo&lt;br /&gt;
&lt;br /&gt;
rho=a+drho:drho:b-drho; %Sólo nodos interiores&lt;br /&gt;
&lt;br /&gt;
%Creamos las matrices&lt;br /&gt;
&lt;br /&gt;
L=diag(ones(1,N-2),1)-diag(ones(1,N-2),-1);&lt;br /&gt;
A=diag(1./rho);&lt;br /&gt;
L=10^(-2)*(1/(2*drho))*A*L;&lt;br /&gt;
&lt;br /&gt;
K=-2*diag(ones(1,N-1))+diag(ones(1,N-2),1)+diag(ones(1,N-2),-1);&lt;br /&gt;
K=10^(-2)*(1/drho^2)*K; &lt;br /&gt;
&lt;br /&gt;
F=zeros(N-1,1);&lt;br /&gt;
F(1,1)=10^(-2)*(-17/(rho(1)*drho)+34/drho^2);&lt;br /&gt;
F(N-1,1)=10^(-2)*(45/(rho(N-1)*2*drho)+45/drho^2);&lt;br /&gt;
&lt;br /&gt;
%SEGUDA FASE. TIEMPO&lt;br /&gt;
&lt;br /&gt;
H=ones(1,length(rho)); H=H*45; H=H';&lt;br /&gt;
dt=drho; &lt;br /&gt;
T=10 &lt;br /&gt;
%Comprobamos también la solución para un tiempo mayor &lt;br /&gt;
%T=1000&lt;br /&gt;
t=0:dt:T;&lt;br /&gt;
h0=34; hN=45;&lt;br /&gt;
sol=[h0 H' hN];&lt;br /&gt;
&lt;br /&gt;
for j=1:length(t)-1 &lt;br /&gt;
    &lt;br /&gt;
    %Método de Heun&lt;br /&gt;
    k1=F+(K+L)*H;&lt;br /&gt;
    k2=F+(K+L)*(H+k1*dt);&lt;br /&gt;
    H=H+(dt/2)*(k1+k2);&lt;br /&gt;
 &lt;br /&gt;
    sol(j+1,:)=[h0 H' hN]; %Salvamos las solución, incluimos los extremos&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
rho1=a:drho:b; %Incluimos los nodos exteriores&lt;br /&gt;
&lt;br /&gt;
m=sol(:,rho==2); %Vector que incluye la solución en tiempo para rho=2&lt;br /&gt;
&lt;br /&gt;
plot(t,m);&lt;br /&gt;
&lt;br /&gt;
title('Comportamiento del nivel piezométrico en el tiempo para p=2')&lt;br /&gt;
xlabel('Tiempo')&lt;br /&gt;
ylabel('Nivel piezométrico.')&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
La primera gráfica muestra que para tiempos pequeños la variación del nivel piezométrico es muy pequeña (del orden de 0,10/0,15 m), aún así como observamos en la segunda gráfica a medida que avanzamos en el tiempo la variación del nivel disminuye aún más ya que la curva está cada vez menos inclinada.&lt;br /&gt;
&lt;br /&gt;
==== Variación del nivel piezométrico en tiempos grandes ====&lt;br /&gt;
Ahora vamos a comprobar que la variación del nivel piezométrico para tiempos elevados (T=5000) es mínima.&lt;br /&gt;
Para ello dibujaremos las soluciones cada 200 horas de en el intervalo temporal [1; 5000], en&lt;br /&gt;
una misma gráfica.&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
%PRIMERA FASE. ESPACIO&lt;br /&gt;
&lt;br /&gt;
a=0.5; b=20; %Condiciones de contorno&lt;br /&gt;
drho=0.1; N=(b-a)/drho; %División del intervalo&lt;br /&gt;
&lt;br /&gt;
rho=a+drho:drho:b-drho; %Sólo nodos interiores&lt;br /&gt;
&lt;br /&gt;
%Creamos las matrices&lt;br /&gt;
&lt;br /&gt;
L=diag(ones(1,N-2),1)-diag(ones(1,N-2),-1);&lt;br /&gt;
A=diag(1./rho);&lt;br /&gt;
L=10^(-2)*(1/(2*drho))*A*L;&lt;br /&gt;
&lt;br /&gt;
K=-2*diag(ones(1,N-1))+diag(ones(1,N-2),1)+diag(ones(1,N-2),-1);&lt;br /&gt;
K=10^(-2)*(1/drho^2)*K; &lt;br /&gt;
&lt;br /&gt;
F=zeros(N-1,1);&lt;br /&gt;
F(1,1)=10^(-2)*(-17/(rho(1)*drho)+34/drho^2);&lt;br /&gt;
F(N-1,1)=10^(-2)*(45/(rho(N-1)*2*drho)+45/drho^2);&lt;br /&gt;
&lt;br /&gt;
%SEGUDA FASE. TIEMPO&lt;br /&gt;
&lt;br /&gt;
H=ones(1,length(rho)); H=H*45; H=H';&lt;br /&gt;
dt=1; T=5000; t=0:dt:T;&lt;br /&gt;
h0=34; hN=45;&lt;br /&gt;
sol=[h0 H' hN];&lt;br /&gt;
&lt;br /&gt;
figure(1);&lt;br /&gt;
hold on;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
for j=1:length(t)-1 &lt;br /&gt;
    &lt;br /&gt;
    %Método de Heun&lt;br /&gt;
    k1=F+(K+L)*H;&lt;br /&gt;
    k2=F+(K+L)*(H+k1*dt);&lt;br /&gt;
    H=H+(dt/2)*(k1+k2);&lt;br /&gt;
 &lt;br /&gt;
    sol(j+1,:)=[h0 H' hN]; %Salvamos las solución, incluimos los extremos&lt;br /&gt;
    &lt;br /&gt;
 if rem(t(j),200)==0;&lt;br /&gt;
    &lt;br /&gt;
    rho1=a:drho:b; %Incluimos los nodos exteriores&lt;br /&gt;
  &lt;br /&gt;
  plot(rho1,sol)&lt;br /&gt;
&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
end&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
Sin embargo, no hemos sido capaces de obtener la gráfica correspondiente mediante este programa pues, con un paso de 0.5 o menor, MATLAB se &amp;quot;satura&amp;quot; antes de sacar una solución, y con un paso mayor la gráfica obtenida es inestable. &lt;br /&gt;
&lt;br /&gt;
[[Archivo:Trabajo21.jpg|marco|derecha|Nivel piezométrico estacionario]]&lt;br /&gt;
&lt;br /&gt;
====Problema estacionario====&lt;br /&gt;
Como hemos visto en el apartado anterior para tiempos grandes el nivel piezométrico se mantiene practicamente constante a lo largo del tiempo, esto es debido a que se establece un equilibrio entre el caudal de agua extraida del acuifero y la migración de aguas desde los puntos más alejados del pozo hacia este.&lt;br /&gt;
Por lo tanto se verifica que:&lt;br /&gt;
 &amp;lt;math&amp;gt;\frac{\partial h}{\partial t}=0&amp;lt;/math&amp;gt;&lt;br /&gt;
Y por lo tanto el nivel piezométrico se puede aproximar por:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \left\{\begin{matrix}&lt;br /&gt;
- \frac{k}{s} (\frac{1}{\rho}  \frac{\partial h}{\partial \rho} + \frac{\partial^2 h}{\partial \rho^2})= 0 &amp;amp; \rho \epsilon (1, 20) &amp;amp; \theta \epsilon (0, 2\Pi ) &amp;amp; 0 &amp;lt; t &amp;lt; 5000 \\ &lt;br /&gt;
h(1,t) = 35;    h(20, t)= 40 \\ &lt;br /&gt;
h(\rho, 0) = 40 &lt;br /&gt;
\end{matrix}\right. &amp;lt;/math&amp;gt;&lt;br /&gt;
Resolvemos por diferencias finitas:&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
    %datos&lt;br /&gt;
    t=5000;&lt;br /&gt;
    l=20;&lt;br /&gt;
    D=0.01;&lt;br /&gt;
    hp=35;&lt;br /&gt;
    ho=40;&lt;br /&gt;
    %discretización&lt;br /&gt;
    s=0.1;&lt;br /&gt;
    x0=1;&lt;br /&gt;
    x=x0:s:l;&lt;br /&gt;
    xint=x0+s:s:l-s;&lt;br /&gt;
    N=length(x)-2; &lt;br /&gt;
    %construimos las matrices para el método de las diferencias finitas&lt;br /&gt;
    K=(1/s^2)*(diag(2*ones(1,N))-diag(ones(1,N-1),1)-diag(ones(1,N-1),-1));&lt;br /&gt;
    A=(1/(s*2))*(diag(ones(1,N-1),1)-diag(ones(1,N-1),-1));&lt;br /&gt;
    A=diag(1./xint)*A;&lt;br /&gt;
    h0=(40*ones(N,1));&lt;br /&gt;
    dt=200; &lt;br /&gt;
    t=0:dt:t;&lt;br /&gt;
    M=length(t)-1;&lt;br /&gt;
    F=(zeros(N,1));&lt;br /&gt;
    F(1)=D*((hp/s^2)-(hp/(2*s)*1/xint(1)));&lt;br /&gt;
    F(N)=D*((ho/s^2)+ho/(s*2*xint(N)));&lt;br /&gt;
    H(1,:)=[40;h0;40]'; &lt;br /&gt;
    h=h0;&lt;br /&gt;
    for n=1:M&lt;br /&gt;
      h=(D)*(K-A)\((F)); %utilizamos el comando backslash para resolver el sistema de ecuaciones&lt;br /&gt;
      H(n+1,:)=[hp h' ho];&lt;br /&gt;
    end&lt;br /&gt;
    %mallado y representación&lt;br /&gt;
    [X,T]=meshgrid(x,t);&lt;br /&gt;
    surf(X,T,H)&lt;br /&gt;
    xlabel('Distancia (metros)');&lt;br /&gt;
    ylabel('Tiempo (horas)');&lt;br /&gt;
    zlabel('Nivel piezométrico (metros)')&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
====Capacidad de recuperación del acuífero====&lt;br /&gt;
En este apartado queremos calcular una ley que nos describa el comportamiento del acuífero e el caso de que impermeabilizásemos las paredes del pozo partiendo del estado estacionario anterior, esto significaría que el fujo de agua en los bordes del pozo sería nulo y el nivel piezométrico iría variando hasta llegar a otro estado estacionario.&lt;br /&gt;
La condición frontera en r=r0 será entonces:&lt;br /&gt;
&amp;lt;math&amp;gt;\frac{\partial h(r0,t)}{\partial \rho}=0&amp;lt;/math&amp;gt;&lt;br /&gt;
Ya que en caso de que la derivada parcial del nivel piezométrico respecto a la distancia r sea nula significa que el estado está en equilibrio y no hay corrientes de líquido.&lt;br /&gt;
El estado que tratará de alcanzar el fluido será el inicial, con el mismo nivel piezométrico ya que al impermeabilizar las paredes del pozo hemos vuelto al estado inicial.&lt;br /&gt;
&lt;br /&gt;
====Método de Fourier====&lt;br /&gt;
Ahora suponemos que el radio del pozo es despreciable y que una vez extraido el agua el pozo se cierra quedando el acuifero de nuevo homogéneo. En este caso tomaremos la región ρ &amp;lt; 20. Nuestro objetivo es aproximar las soluciones usando el método de Fourier. De nuevo supondremos que la solución sólo depende de ρ y t, y tomaremos ahora como condición frontera h(20, t) = 40.&lt;br /&gt;
Vamos a considerar el sistema de ecuaciones para h(ρ,t)=h(ρ,t)-40:&lt;br /&gt;
 &amp;lt;math&amp;gt; \left\{\begin{matrix}&lt;br /&gt;
\frac{\partial h}{\partial t} - D (\frac{1}{\rho}  \frac{\partial h}{\partial \rho} + \frac{\partial^2 h}{\partial \rho^2})= 0 &amp;amp; \rho \epsilon (0, 20) &amp;amp; \theta \epsilon (0, 2\Pi ) &amp;amp; t &amp;gt; 0 \\ &lt;br /&gt;
\frac{\partial h}{\partial \rho}(0,t) = 0;   h(20, t)= 0 \\ &lt;br /&gt;
\end{matrix}\right. &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Obtenemos el problema de autovalores asociado al sistema anterior con el método de separación de variables:&lt;br /&gt;
 &amp;lt;math&amp;gt; \left\{\begin{matrix}&lt;br /&gt;
D (\frac{X'(\rho)}{\rho} + X''(\rho))+ λX(\rho)=0 \\&lt;br /&gt;
X'(0) = 0;   X(20)= 0 \\ &lt;br /&gt;
&lt;br /&gt;
\end{matrix}\right. &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Sabemos que los problemas de esta forma tienen como solución la función de Bessel de primera especie que forma una familia de autofunciones: &amp;lt;math&amp;gt;Ψ(\rho)=J_0·(\rho\sqrt{λ})&amp;lt;/math&amp;gt;. Estas se anulan cuando &amp;lt;math&amp;gt;(\rho\sqrt{λ})&amp;lt;/math&amp;gt; se iguala a 2.4048, 5.5201, 8.6537, 11.7915 y 14.9309, siendo estos los 5 primeros ceros de la función de Bessel. De esta manera y tomando ρ=20 obtenemos los 5 primeros autovalores:&lt;br /&gt;
&amp;lt;math&amp;gt;(20\sqrt{λ})=2.4048&amp;lt;/math&amp;gt;Haciendo la operación anterior para los 5 ceros obtenemos los siguientes autovalores: 0.0145, 0.0762, 0.1872, 0.3476, 0.5573.&lt;br /&gt;
Ahora vamos a dibujar las 5 primeras autofunciones utilizando la función besselj:&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
a1=0.0145;&lt;br /&gt;
a2=0.0762;&lt;br /&gt;
a3=0.1872;&lt;br /&gt;
a4=0.3476;&lt;br /&gt;
a5=0.5575;&lt;br /&gt;
r=0:0.02:20;&lt;br /&gt;
F1=besselj(0,r.*(sqrt(a1))); &lt;br /&gt;
F2=besselj(0,r.*(sqrt(a2)));&lt;br /&gt;
F3=besselj(0,r.*(sqrt(a3)));&lt;br /&gt;
F4=besselj(0,r.*(sqrt(a4)));&lt;br /&gt;
F5=besselj(0,r.*(sqrt(a5)));&lt;br /&gt;
hold on&lt;br /&gt;
plot(r,F1)&lt;br /&gt;
plot(r,F2,'r')&lt;br /&gt;
plot(r,F3,'g')	&lt;br /&gt;
plot(r,F4,'c')&lt;br /&gt;
plot(r,F5,'y')&lt;br /&gt;
hold off&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
Aproximamos ahora la solución de la ecuación tomando como dato inicial es&amp;lt;math&amp;gt; h (\rho,0)= -log \frac{|\rho + 0.01|}{20.01} &amp;lt;/math&amp;gt; y usando 5 términos del desarrollo de Fourier, teniendo en cuenta que las autofunciones son ortogonales respecto al producto escalar: &amp;lt;math&amp;gt; (f(\rho),g(\rho)) = \int_{0}^{20} \rho f(\rho) g(\rho) \cdot dx &amp;lt;/math&amp;gt;&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
x0=0; L=20;&lt;br /&gt;
c0=[2.4048,5.5201,8.6537,11.7915,14.9309]; %Vector de ceros de la función de Bessel&lt;br /&gt;
A=(c0./20).^2; %Vector de autovalores&lt;br /&gt;
K=5; %Número de términos del desarrollo de Fourier&lt;br /&gt;
x=x0:0.1:L;&lt;br /&gt;
N=length(x)-1;&lt;br /&gt;
J=zeros(N+1,K);&lt;br /&gt;
z=zeros(N+1,K);&lt;br /&gt;
t0=0; tf=500;&lt;br /&gt;
t=t0:0.1:tf;&lt;br /&gt;
[xx,tt]=meshgrid(x,t);&lt;br /&gt;
h=0;&lt;br /&gt;
for k=1:K&lt;br /&gt;
   z(:,k)=(x)'*sqrt(A(k));&lt;br /&gt;
   J(:,k)=besselj(0,z(:,k));&lt;br /&gt;
   h0=-log((abs(x+0.1))/20.01); %Condición inicial&lt;br /&gt;
   c(k)=trapz(x,x'.*h0'.*J(:,k))/trapz(x,x'.*J(:,k).*J(:,k)); %Coeficientes de Fourier&lt;br /&gt;
   h=h+c(k)*exp(-A(k)*t)'*J(:,k)';&lt;br /&gt;
end&lt;br /&gt;
surf(xx,tt,h)&lt;br /&gt;
title('Aproximación de la solución')&lt;br /&gt;
}}&lt;/div&gt;</summary>
		<author><name>Marta Cavero</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Nivel_piezom%C3%A9trico_de_un_acu%C3%ADfero_confinado_(A5)&amp;diff=29894</id>
		<title>Nivel piezométrico de un acuífero confinado (A5)</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Nivel_piezom%C3%A9trico_de_un_acu%C3%ADfero_confinado_(A5)&amp;diff=29894"/>
				<updated>2015-05-14T09:05:35Z</updated>
		
		<summary type="html">&lt;p&gt;Marta Cavero: /* Resolución por método de diferencias finitas */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;br /&gt;
==== Introducción ====&lt;br /&gt;
&lt;br /&gt;
Consideramos un acuífero confinado entre dos capas de terreno impermeables horizontales. Llamaremos h(x, y) al nivel piezométrico del acuífero, definido por la altura que alcanzaría el agua si hiciéramos un sondeo en el punto (x, y). Obviamente este valor depende de la presión a la que se encuentra el agua confinada en el acuífero. Supondremos&lt;br /&gt;
que el acuífero es un medio poroso saturado de agua que ocupa una región infinita y está en equilibrio de manera que &amp;lt;math&amp;gt;h(x, y) = h_0&amp;lt;/math&amp;gt; constante para todo (x, y) ∈ &amp;lt;math&amp;gt;IR^{2}&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Sobre el acuifero se construye un pozo de sección circular y radio&amp;lt;math&amp;gt; ρ_0&amp;lt;/math&amp;gt; para extraer agua. La presencia del pozo hace que el nivel piezométrico cambie. Dada la simetría del problema podemos suponer que h(x, y) sólo va a depender de la distancia al pozo. Si tomamos coordenadas cilíndricas de forma que el eje OZ coincida con el eje de simetría del pozo, entonces h = h(ρ) donde &amp;lt;math&amp;gt;ρ = \sqrt{x^{2} + y^{2}}&amp;lt;/math&amp;gt; . Trabajaremos por tanto en coordenadas polares en el plano (ρ, θ).&lt;br /&gt;
&lt;br /&gt;
Las ecuaciones que permiten conocer h(ρ) son la ecuación de conservación de la masa:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; S = \frac{∂h}{∂t} + div q = 0 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
junto con la ley de Darcy&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; q = −K∇h &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
que es una ley experimental que modela el flujo de agua en un medio poroso. La ley de Darcy establece que el flujo de agua q a través de un medio poroso es proporcional a la diferencia de presión, que a su vez se puede escribir en términos del gradiente del nivel piezométrico en cada punto. La constante K se deduce experimentalmente para cada material y se conoce como la conductividad hidráulica o permeabilidad. Cuanto mayor es la constante K mayor es el flujo de agua provocado por un cambio&lt;br /&gt;
de presión. La ley de Darcy proporciona una buena aproximación del comportamiento del agua en un medio poroso siempre que este sea homogéneo e isótropo.&lt;br /&gt;
&lt;br /&gt;
La constante S en la ley de conservación de la masa se conoce como almacenamiento específico y se interpreta como la cantidad de agua que libera el acuífero al descender el nivel piezométrico en una unidad, por unidad de volumen.&lt;br /&gt;
&lt;br /&gt;
Combinando las ecuaciones de conservación de la masa con la ley de Darcy, obtenemos la ecuación:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \frac{∂h}{∂t} - D∆h = 0, ρ &amp;gt; ρ_0, θ ∈ (0, 2π), t &amp;gt; 0, (1) &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
donde D = K/S es la difusividad hidráulica que supondremos constante.&lt;br /&gt;
&lt;br /&gt;
==== Deducción de la fórmula ====&lt;br /&gt;
&lt;br /&gt;
En este apartado buscamos demostrar la ecuación (1) como combinación de la ecuación de conservación de masas y la Ley de Darcy.&lt;br /&gt;
&lt;br /&gt;
Por un lado sabemos que el laplaciaco equivale a la divergencia del gradiente: &lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; &lt;br /&gt;
(\Delta f = \nabla \cdot \nabla f = div \left (\nabla f) \right) &lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Por otro lado, sabemos que en coordenadas polares: &lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;x = ρ cos \theta \\&lt;br /&gt;
             y = ρ  sen \theta&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\bar{g_ρ } = cos \theta \bar{i} + sin \theta  \bar{j} \\&lt;br /&gt;
              \bar{g_\theta } = - ρ  sin \theta \bar{i} + ρ cos \theta \bar{j} &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;&lt;br /&gt;
G =&lt;br /&gt;
\left(&lt;br /&gt;
\begin{array}{cc}&lt;br /&gt;
1&amp;amp; 0 \\&lt;br /&gt;
0 &amp;amp; ρ ^{2} \\&lt;br /&gt;
\end{array}&lt;br /&gt;
\right);&lt;br /&gt;
\text {donde la raiz del determinante es} \sqrt{g} = ρ&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Como indica el enunciado, al sustituir la Ley de Darcy en la ecuación de conservación de la masa obtenemos y dividir entre S, teniendo en cuenta que el divergente del gradiente es el laplaciano como hemos indicado al principio de este apartado, obtenemos la ecuación (1): &amp;lt;math&amp;gt; \frac{∂h}{∂t} - \frac{k}{S}∆h = 0 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
En esta ecuación queda por desarrollar el Laplaciano de h. &lt;br /&gt;
Partiremos de la función h(ρ,θ), de la cual calcularemos primero el gradiente:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \nabla h = \frac{\partial h}{\partial \rho}\hat{\rho} + \frac{\partial h}{\partial \rho}\hat{\theta} =  \frac{\partial h}{\partial \rho}\bar{\rho} + \frac{1}{\rho^{2}} \frac{\partial h}{\partial \rho}\bar{\theta}  &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
teniendo en cuenta que &amp;lt;math&amp;gt;\bar{g^{i} } = \frac{\bar{g_i } }{ | \bar{g_i } | ^{2} } &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Ahora hacemos el divergente del gradiente anterior y obtenemos el Laplaciano en coordenadas polares:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;math&amp;gt;&lt;br /&gt;
 \Delta h = div(∇h) &lt;br /&gt;
= {1 \over \rho} {\partial \over \partial \rho}&lt;br /&gt;
  \left( \rho {\partial h \over \partial \rho} \right) &lt;br /&gt;
+ {1 \over \rho^2} {\partial^2 h \over \partial \theta^2}&lt;br /&gt;
= {1 \over \rho} {\partial h \over \partial \rho} &lt;br /&gt;
+ {\partial^2 h \over \partial \rho^2}&lt;br /&gt;
+ {1 \over \rho^2} {\partial^2 h \over \partial \theta^2}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Si consideramos que, debido a la simetría del problema, h sólo depende de su distancia al pozo, entonces obtenemos la función radial h(ρ), que nos permite simplificar el Laplaciano del modo siguiente:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;math&amp;gt;&lt;br /&gt;
 \Delta h = div(∇h) &lt;br /&gt;
= {1 \over \rho} {\partial h \over \partial \rho} &lt;br /&gt;
+ {\partial^2 h \over \partial \rho^2}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== Obtención de la ecuación====&lt;br /&gt;
&lt;br /&gt;
Para poder resolver la ecuación anterior y que el resultado sea único, hemos de establecer condiciones iniciales y de contorno.&lt;br /&gt;
&lt;br /&gt;
Las condiciones de contorno serán dos pues aparece la derivada segunda de la posición: &amp;lt;math&amp;gt; h(\rho_0 , t) = h_p \\&lt;br /&gt;
                                                                                                                                                                  h(20,t) = h_0 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
La condición inicial será única pues sólo aparece una derivada de primer orden en tiempo en nuestra ecuación: &amp;lt;math&amp;gt; h(\rho,0) = h_0 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
De este modo la ecuación resultante será:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \left\{\begin{matrix}&lt;br /&gt;
\frac{\partial h}{\partial t} - \frac{k}{s} (\frac{1}{\rho}  \frac{\partial h}{\partial \rho} + \frac{\partial^2 h}{\partial \rho^2})= 0 &amp;amp; \rho \epsilon (\rho_{0}, 2c) &amp;amp; \theta \epsilon (0, 2\Pi ) &amp;amp; t &amp;gt; 0 \\ &lt;br /&gt;
h(\rho_{0},t) = h_{p};   h(20, t)= h_{0} \\ &lt;br /&gt;
h(\rho, 0) = h_{0} &lt;br /&gt;
\end{matrix}\right. &amp;lt;/math&amp;gt; &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==== Resolución por método de diferencias finitas ====&lt;br /&gt;
&lt;br /&gt;
Suponiendo &amp;lt;math&amp;gt;ρ_0 =0.5m&amp;lt;/math&amp;gt;, &amp;lt;math&amp;gt;h_0 =45m&amp;lt;/math&amp;gt;, &amp;lt;math&amp;gt;hp =34&amp;lt;/math&amp;gt;, D=10−2, &amp;lt;math&amp;gt;(ρ,0)=h_0&amp;lt;/math&amp;gt;; y tomando  ∆ρ = 0.1 y ∆t = ∆ρ. Vamos a resolver la ecuación anterior por el método de diferencias finitas, usando el Método de Heun para realizar la aproximación en tiempo.&lt;br /&gt;
&lt;br /&gt;
Primero, sustituyendo los datos anteriores en la ecuación, llegamos a:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \left\{\begin{matrix}&lt;br /&gt;
\frac{\partial h}{\partial t} - 10^{2} (\frac{1}{\rho}  \frac{\partial h}{\partial \rho} + \frac{\partial^2 h}{\partial \rho^2})= 0 &amp;amp; \rho \epsilon (0.5, 20) &amp;amp; \theta \epsilon (0, 2\Pi ) &amp;amp; t &amp;gt; 0 \\ &lt;br /&gt;
h(0.5,t) = 34;   h(20, t)= 45 \\ &lt;br /&gt;
h(\rho, 0) = 45&lt;br /&gt;
\end{matrix}\right. &amp;lt;/math&amp;gt; &lt;br /&gt;
&lt;br /&gt;
Aplicando el método de las diferencias finitas llegamos al siguiente código:&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
&lt;br /&gt;
%TRPRIMERA FASE. ESPACIO&lt;br /&gt;
&lt;br /&gt;
a=0.5; b=20; %Condiciones de contorno&lt;br /&gt;
drho=0.1; N=(b-a)/drho; %División del intervalo&lt;br /&gt;
&lt;br /&gt;
rho=a+drho:drho:b-drho; %Sólo nodos interiores&lt;br /&gt;
&lt;br /&gt;
%Creamos las matrices&lt;br /&gt;
&lt;br /&gt;
L=diag(ones(1,N-2),1)-diag(ones(1,N-2),-1);&lt;br /&gt;
A=diag(1./rho);&lt;br /&gt;
L=10^(-2)*(1/(2*drho))*A*L;&lt;br /&gt;
&lt;br /&gt;
K=-2*diag(ones(1,N-1))+diag(ones(1,N-2),1)+diag(ones(1,N-2),-1);&lt;br /&gt;
K=10^(-2)*(1/drho^2)*K; &lt;br /&gt;
&lt;br /&gt;
F=zeros(N-1,1);&lt;br /&gt;
F(1,1)=10^(-2)*(-17/(rho(1)*drho)+34/drho^2);&lt;br /&gt;
F(N-1,1)=10^(-2)*(45/(rho(N-1)*2*drho)+45/drho^2);&lt;br /&gt;
&lt;br /&gt;
%SEGUDA FASE. TIEMPO&lt;br /&gt;
&lt;br /&gt;
H=ones(1,length(rho)); H=H*45; H=H';&lt;br /&gt;
dt=drho; T=10; t=0:dt:T;&lt;br /&gt;
h0=34; hN=45;&lt;br /&gt;
sol=[h0 H' hN];&lt;br /&gt;
&lt;br /&gt;
for j=1:length(t)-1 &lt;br /&gt;
    &lt;br /&gt;
    %Método de Heun&lt;br /&gt;
    k1=F+(K+L)*H;&lt;br /&gt;
    k2=F+(K+L)*(H+k1*dt);&lt;br /&gt;
    H=H+(dt/2)*(k1+k2);&lt;br /&gt;
 &lt;br /&gt;
    sol(j+1,:)=[h0 H' hN]; %Salvamos las solución, incluimos los extremos&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
rho1=a:drho:b; %Incluimos los nodos exteriores&lt;br /&gt;
&lt;br /&gt;
[rr,tt]=meshgrid(rho1,t);&lt;br /&gt;
surf(rr,tt,sol); %Dibujamos la solución&lt;br /&gt;
title('Nivel Piezométrico. Método Diferencias finitas con Heun en tiempo.')&lt;br /&gt;
xlabel('Distancia radial al centro del pozo.')&lt;br /&gt;
ylabel('Tiempo.')&lt;br /&gt;
zlabel('Nivel piezométrico.')&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
Mediante este código obtenemos la siguiente gráfica:&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Grafica npiezometrico.jpg|500px|thumb|best|Gráfica Nivel Piezométrico aproximada con el Método de Diferencias Finitas con Heun en tiempo.]]&lt;br /&gt;
&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Ahora dibujaremos la gráfica mediante los métodos de Euler implícito y trapecio y compararemos los resultados obtenidos.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Sobre el programa anterior cambiaremos las líneas correspondientes al método de Heun.&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* Método de Euler implícito:&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;math&amp;gt; \left\{\begin{matrix}&lt;br /&gt;
y_{0}\\&lt;br /&gt;
y_{n+1}=y_{n} + hf(t_{n+1},y_{n+1})\\&lt;br /&gt;
\end{matrix}\right. &amp;lt;/math&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
&lt;br /&gt;
for j=1:length(t)-1 &lt;br /&gt;
    &lt;br /&gt;
    %Método de Euler implícito&lt;br /&gt;
    &lt;br /&gt;
    H=(eye(N-1)-dt*(K+L))\(H+(F*dt)); &lt;br /&gt;
 &lt;br /&gt;
    sol(j+1,:)=[h0 H' hN]; %Salvamos las solución, incluimos los extremos&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
rho1=a:drho:b; %Incluimos los nodos exteriores&lt;br /&gt;
&lt;br /&gt;
[rr,tt]=meshgrid(rho1,t);&lt;br /&gt;
surf(rr,tt,sol); %Dibujamos la solución&lt;br /&gt;
title('Nivel Piezométrico. Método Diferencias finitas con Euler en tiempo.')&lt;br /&gt;
xlabel('Distancia radial al centro del pozo.')&lt;br /&gt;
ylabel('Tiempo.')&lt;br /&gt;
zlabel('Nivel piezométrico.')&lt;br /&gt;
&lt;br /&gt;
}}&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* Método del Trapecio:&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;math&amp;gt; \left\{\begin{matrix}&lt;br /&gt;
y_{0}\\&lt;br /&gt;
y_{n+1}=y_{n} + \frac{h}{2}f((t_{n},y_{n}+f(t_{n+1},y_{n+1}))\\&lt;br /&gt;
\end{matrix}\right. &amp;lt;/math&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
for j=1:length(t)-1 &lt;br /&gt;
    &lt;br /&gt;
    %Método del trapecio&lt;br /&gt;
    k1=F+(K+L)*H;&lt;br /&gt;
    k2=F+(K+L)*(H+k1*dt); &lt;br /&gt;
    H=(eye(N-1)-(dt/2)*(K+L))\(H+dt*F+(dt/2)*(K+L)*H);&lt;br /&gt;
 &lt;br /&gt;
    sol(j+1,:)=[h0 H' hN]; %Salvamos las solución, incluimos los extremos&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
rho1=a:drho:b; %Incluimos los nodos exteriores&lt;br /&gt;
&lt;br /&gt;
[rr,tt]=meshgrid(rho1,t);&lt;br /&gt;
surf(rr,tt,sol); %Dibujamos la solución&lt;br /&gt;
title('Nivel Piezométrico. Método Diferencias finitas con trapecio en tiempo.')&lt;br /&gt;
xlabel('Distancia radial al centro del pozo.')&lt;br /&gt;
ylabel('Tiempo.')&lt;br /&gt;
zlabel('Nivel piezométrico.')&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
Como podemos ver a continuación las tres gráficas resultantes son prácticamente iguales por lo que los tres métodos hacen una aproximación similar.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
[[Archivo:Trapecio12.png|500px|thumb|left|Gráfica Nivel Piezométrico aproximada con el Método de Diferencias Finitas con Trapecio en tiempo.]]&lt;br /&gt;
[[Archivo:Euler12.png|500px|thumb|right|Gráfica Nivel Piezométrico aproximada con el Método de Diferencias Finitas con Euler Implícito en tiempo.]]&lt;br /&gt;
&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== Comportamiento del nivel piezométrico con &amp;lt;math&amp;gt; \rho &amp;lt;/math&amp;gt; constante ====&lt;br /&gt;
&lt;br /&gt;
Ahora supondremos que &amp;lt;math&amp;gt; \rho &amp;lt;/math&amp;gt; es constante y que su valor es 2 y dibujaremos el comportamiento del nivel piezométrico en una gráfica 2D nivel piezométrico-tiempo.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Nuevamente utilizando el programa anterior con el  método de Heun:&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Rho2.png|500px|thumb|best|Gráfica Nivel Piezométrico-tiempo para &amp;lt;math&amp;gt; \rho =2 &amp;lt;/math&amp;gt; para T=10.]]&lt;br /&gt;
[[Archivo:Rho1000.png|500px|thumb|best|Gráfica Nivel Piezométrico-tiempo para &amp;lt;math&amp;gt; \rho =2 &amp;lt;/math&amp;gt; para T=1000.]]&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
&lt;br /&gt;
%PRIMERA FASE. ESPACIO&lt;br /&gt;
&lt;br /&gt;
a=0.5; b=20; %Condiciones de contorno&lt;br /&gt;
drho=0.1; N=(b-a)/drho; %División del intervalo&lt;br /&gt;
&lt;br /&gt;
rho=a+drho:drho:b-drho; %Sólo nodos interiores&lt;br /&gt;
&lt;br /&gt;
%Creamos las matrices&lt;br /&gt;
&lt;br /&gt;
L=diag(ones(1,N-2),1)-diag(ones(1,N-2),-1);&lt;br /&gt;
A=diag(1./rho);&lt;br /&gt;
L=10^(-2)*(1/(2*drho))*A*L;&lt;br /&gt;
&lt;br /&gt;
K=-2*diag(ones(1,N-1))+diag(ones(1,N-2),1)+diag(ones(1,N-2),-1);&lt;br /&gt;
K=10^(-2)*(1/drho^2)*K; &lt;br /&gt;
&lt;br /&gt;
F=zeros(N-1,1);&lt;br /&gt;
F(1,1)=10^(-2)*(-17/(rho(1)*drho)+34/drho^2);&lt;br /&gt;
F(N-1,1)=10^(-2)*(45/(rho(N-1)*2*drho)+45/drho^2);&lt;br /&gt;
&lt;br /&gt;
%SEGUDA FASE. TIEMPO&lt;br /&gt;
&lt;br /&gt;
H=ones(1,length(rho)); H=H*45; H=H';&lt;br /&gt;
dt=drho; &lt;br /&gt;
T=10 &lt;br /&gt;
%Comprobamos también la solución para un tiempo mayor &lt;br /&gt;
%T=1000&lt;br /&gt;
t=0:dt:T;&lt;br /&gt;
h0=34; hN=45;&lt;br /&gt;
sol=[h0 H' hN];&lt;br /&gt;
&lt;br /&gt;
for j=1:length(t)-1 &lt;br /&gt;
    &lt;br /&gt;
    %Método de Heun&lt;br /&gt;
    k1=F+(K+L)*H;&lt;br /&gt;
    k2=F+(K+L)*(H+k1*dt);&lt;br /&gt;
    H=H+(dt/2)*(k1+k2);&lt;br /&gt;
 &lt;br /&gt;
    sol(j+1,:)=[h0 H' hN]; %Salvamos las solución, incluimos los extremos&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
rho1=a:drho:b; %Incluimos los nodos exteriores&lt;br /&gt;
&lt;br /&gt;
m=sol(:,rho==2); %Vector que incluye la solución en tiempo para rho=2&lt;br /&gt;
&lt;br /&gt;
plot(t,m);&lt;br /&gt;
&lt;br /&gt;
title('Comportamiento del nivel piezométrico en el tiempo para p=2')&lt;br /&gt;
xlabel('Tiempo')&lt;br /&gt;
ylabel('Nivel piezométrico.')&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
La primera gráfica muestra que para tiempos pequeños la variación del nivel piezométrico es muy pequeña (del orden de 0,10/0,15 m), aún así como observamos en la segunda gráfica a medida que avanzamos en el tiempo la variación del nivel disminuye aún más ya que la curva está cada vez menos inclinada.&lt;br /&gt;
&lt;br /&gt;
==== Variación del nivel piezométrico en tiempos grandes ====&lt;br /&gt;
Ahora vamos a comprobar que la variación del nivel piezométrico para tiempos elevados (T=5000) es mínima.&lt;br /&gt;
Para ello dibujaremos las soluciones cada 200 horas de en el intervalo temporal [1; 5000], en&lt;br /&gt;
una misma gráfica.&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
%PRIMERA FASE. ESPACIO&lt;br /&gt;
&lt;br /&gt;
a=0.5; b=20; %Condiciones de contorno&lt;br /&gt;
drho=0.1; N=(b-a)/drho; %División del intervalo&lt;br /&gt;
&lt;br /&gt;
rho=a+drho:drho:b-drho; %Sólo nodos interiores&lt;br /&gt;
&lt;br /&gt;
%Creamos las matrices&lt;br /&gt;
&lt;br /&gt;
L=diag(ones(1,N-2),1)-diag(ones(1,N-2),-1);&lt;br /&gt;
A=diag(1./rho);&lt;br /&gt;
L=10^(-2)*(1/(2*drho))*A*L;&lt;br /&gt;
&lt;br /&gt;
K=-2*diag(ones(1,N-1))+diag(ones(1,N-2),1)+diag(ones(1,N-2),-1);&lt;br /&gt;
K=10^(-2)*(1/drho^2)*K; &lt;br /&gt;
&lt;br /&gt;
F=zeros(N-1,1);&lt;br /&gt;
F(1,1)=10^(-2)*(-17/(rho(1)*drho)+34/drho^2);&lt;br /&gt;
F(N-1,1)=10^(-2)*(45/(rho(N-1)*2*drho)+45/drho^2);&lt;br /&gt;
&lt;br /&gt;
%SEGUDA FASE. TIEMPO&lt;br /&gt;
&lt;br /&gt;
H=ones(1,length(rho)); H=H*45; H=H';&lt;br /&gt;
dt=1; T=5000; t=0:dt:T;&lt;br /&gt;
h0=34; hN=45;&lt;br /&gt;
sol=[h0 H' hN];&lt;br /&gt;
&lt;br /&gt;
figure(1);&lt;br /&gt;
hold on;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
for j=1:length(t)-1 &lt;br /&gt;
    &lt;br /&gt;
    %Método de Heun&lt;br /&gt;
    k1=F+(K+L)*H;&lt;br /&gt;
    k2=F+(K+L)*(H+k1*dt);&lt;br /&gt;
    H=H+(dt/2)*(k1+k2);&lt;br /&gt;
 &lt;br /&gt;
    sol(j+1,:)=[h0 H' hN]; %Salvamos las solución, incluimos los extremos&lt;br /&gt;
    &lt;br /&gt;
 if rem(t(j),200)==0;&lt;br /&gt;
    &lt;br /&gt;
    rho1=a:drho:b; %Incluimos los nodos exteriores&lt;br /&gt;
  &lt;br /&gt;
  plot(rho1,sol)&lt;br /&gt;
&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
end&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Sin embargo, mediante el siguiente programa obtenemos una solución inestable ya que se trata de un intervalo de tiempo muy grande y el paso es muy elevado porque dibujamos las soluciones cada 200 horas.&lt;br /&gt;
[[Archivo:Trabajo21.jpg|marco|derecha|Nivel piezométrico estacionario]]&lt;br /&gt;
&lt;br /&gt;
====Problema estacionario====&lt;br /&gt;
Como hemos visto en el apartado anterior para tiempos grandes el nivel piezométrico se mantiene practicamente constante a lo largo del tiempo, esto es debido a que se establece un equilibrio entre el caudal de agua extraida del acuifero y la migración de aguas desde los puntos más alejados del pozo hacia este.&lt;br /&gt;
Por lo tanto se verifica que:&lt;br /&gt;
 &amp;lt;math&amp;gt;\frac{\partial h}{\partial t}=0&amp;lt;/math&amp;gt;&lt;br /&gt;
Y por lo tanto el nivel piezométrico se puede aproximar por:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \left\{\begin{matrix}&lt;br /&gt;
- \frac{k}{s} (\frac{1}{\rho}  \frac{\partial h}{\partial \rho} + \frac{\partial^2 h}{\partial \rho^2})= 0 &amp;amp; \rho \epsilon (1, 20) &amp;amp; \theta \epsilon (0, 2\Pi ) &amp;amp; 0 &amp;lt; t &amp;lt; 5000 \\ &lt;br /&gt;
h(1,t) = 35;    h(20, t)= 40 \\ &lt;br /&gt;
h(\rho, 0) = 40 &lt;br /&gt;
\end{matrix}\right. &amp;lt;/math&amp;gt;&lt;br /&gt;
Resolvemos por diferencias finitas:&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
    %datos&lt;br /&gt;
    t=5000;&lt;br /&gt;
    l=20;&lt;br /&gt;
    D=0.01;&lt;br /&gt;
    hp=35;&lt;br /&gt;
    ho=40;&lt;br /&gt;
    %discretización&lt;br /&gt;
    s=0.1;&lt;br /&gt;
    x0=1;&lt;br /&gt;
    x=x0:s:l;&lt;br /&gt;
    xint=x0+s:s:l-s;&lt;br /&gt;
    N=length(x)-2; &lt;br /&gt;
    %construimos las matrices para el método de las diferencias finitas&lt;br /&gt;
    K=(1/s^2)*(diag(2*ones(1,N))-diag(ones(1,N-1),1)-diag(ones(1,N-1),-1));&lt;br /&gt;
    A=(1/(s*2))*(diag(ones(1,N-1),1)-diag(ones(1,N-1),-1));&lt;br /&gt;
    A=diag(1./xint)*A;&lt;br /&gt;
    h0=(40*ones(N,1));&lt;br /&gt;
    dt=200; &lt;br /&gt;
    t=0:dt:t;&lt;br /&gt;
    M=length(t)-1;&lt;br /&gt;
    F=(zeros(N,1));&lt;br /&gt;
    F(1)=D*((hp/s^2)-(hp/(2*s)*1/xint(1)));&lt;br /&gt;
    F(N)=D*((ho/s^2)+ho/(s*2*xint(N)));&lt;br /&gt;
    H(1,:)=[40;h0;40]'; &lt;br /&gt;
    h=h0;&lt;br /&gt;
    for n=1:M&lt;br /&gt;
      h=(D)*(K-A)\((F)); %utilizamos el comando backslash para resolver el sistema de ecuaciones&lt;br /&gt;
      H(n+1,:)=[hp h' ho];&lt;br /&gt;
    end&lt;br /&gt;
    %mallado y representación&lt;br /&gt;
    [X,T]=meshgrid(x,t);&lt;br /&gt;
    surf(X,T,H)&lt;br /&gt;
    xlabel('Distancia (metros)');&lt;br /&gt;
    ylabel('Tiempo (horas)');&lt;br /&gt;
    zlabel('Nivel piezométrico (metros)')&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
====Capacidad de recuperación del acuífero====&lt;br /&gt;
En este apartado queremos calcular una ley que nos describa el comportamiento del acuífero e el caso de que impermeabilizásemos las paredes del pozo partiendo del estado estacionario anterior, esto significaría que el fujo de agua en los bordes del pozo sería nulo y el nivel piezométrico iría variando hasta llegar a otro estado estacionario.&lt;br /&gt;
La condición frontera en r=r0 será entonces:&lt;br /&gt;
&amp;lt;math&amp;gt;\frac{\partial h(r0,t)}{\partial \rho}=0&amp;lt;/math&amp;gt;&lt;br /&gt;
Ya que en caso de que la derivada parcial del nivel piezométrico respecto a la distancia r sea nula significa que el estado está en equilibrio y no hay corrientes de líquido.&lt;br /&gt;
El estado que tratará de alcanzar el fluido será el inicial, con el mismo nivel piezométrico ya que al impermeabilizar las paredes del pozo hemos vuelto al estado inicial.&lt;br /&gt;
&lt;br /&gt;
====Método de Fourier====&lt;br /&gt;
Ahora suponemos que el radio del pozo es despreciable y que una vez extraido el agua el pozo se cierra quedando el acuifero de nuevo homogéneo. En este caso tomaremos la región ρ &amp;lt; 20. Nuestro objetivo es aproximar las soluciones usando el método de Fourier. De nuevo supondremos que la solución sólo depende de ρ y t, y tomaremos ahora como condición frontera h(20, t) = 40.&lt;br /&gt;
Vamos a considerar el sistema de ecuaciones para h(ρ,t)=h(ρ,t)-40:&lt;br /&gt;
 &amp;lt;math&amp;gt; \left\{\begin{matrix}&lt;br /&gt;
\frac{\partial h}{\partial t} - D (\frac{1}{\rho}  \frac{\partial h}{\partial \rho} + \frac{\partial^2 h}{\partial \rho^2})= 0 &amp;amp; \rho \epsilon (0, 20) &amp;amp; \theta \epsilon (0, 2\Pi ) &amp;amp; t &amp;gt; 0 \\ &lt;br /&gt;
\frac{\partial h}{\partial \rho}(0,t) = 0;   h(20, t)= 0 \\ &lt;br /&gt;
\end{matrix}\right. &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Obtenemos el problema de autovalores asociado al sistema anterior con el método de separación de variables:&lt;br /&gt;
 &amp;lt;math&amp;gt; \left\{\begin{matrix}&lt;br /&gt;
D (\frac{X'(\rho)}{\rho} + X''(\rho))+ λX(\rho)=0 \\&lt;br /&gt;
X'(0) = 0;   X(20)= 0 \\ &lt;br /&gt;
&lt;br /&gt;
\end{matrix}\right. &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Sabemos que los problemas de esta forma tienen como solución la función de Bessel de primera especie que forma una familia de autofunciones: &amp;lt;math&amp;gt;Ψ(\rho)=J_0·(\rho\sqrt{λ})&amp;lt;/math&amp;gt;. Estas se anulan cuando &amp;lt;math&amp;gt;(\rho\sqrt{λ})&amp;lt;/math&amp;gt; se iguala a 2.4048, 5.5201, 8.6537, 11.7915 y 14.9309, siendo estos los 5 primeros ceros de la función de Bessel. De esta manera y tomando ρ=20 obtenemos los 5 primeros autovalores:&lt;br /&gt;
&amp;lt;math&amp;gt;(20\sqrt{λ})=2.4048&amp;lt;/math&amp;gt;Haciendo la operación anterior para los 5 ceros obtenemos los siguientes autovalores: 0.0145, 0.0762, 0.1872, 0.3476, 0.5573.&lt;br /&gt;
Ahora vamos a dibujar las 5 primeras autofunciones utilizando la función besselj:&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
a1=0.0145;&lt;br /&gt;
a2=0.0762;&lt;br /&gt;
a3=0.1872;&lt;br /&gt;
a4=0.3476;&lt;br /&gt;
a5=0.5575;&lt;br /&gt;
r=0:0.02:20;&lt;br /&gt;
F1=besselj(0,r.*(sqrt(a1))); &lt;br /&gt;
F2=besselj(0,r.*(sqrt(a2)));&lt;br /&gt;
F3=besselj(0,r.*(sqrt(a3)));&lt;br /&gt;
F4=besselj(0,r.*(sqrt(a4)));&lt;br /&gt;
F5=besselj(0,r.*(sqrt(a5)));&lt;br /&gt;
hold on&lt;br /&gt;
plot(r,F1)&lt;br /&gt;
plot(r,F2,'r')&lt;br /&gt;
plot(r,F3,'g')	&lt;br /&gt;
plot(r,F4,'c')&lt;br /&gt;
plot(r,F5,'y')&lt;br /&gt;
hold off&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
Aproximamos ahora la solución de la ecuación tomando como dato inicial es&amp;lt;math&amp;gt; h (\rho,0)= -log \frac{|\rho + 0.01|}{20.01} &amp;lt;/math&amp;gt; y usando 5 términos del desarrollo de Fourier, teniendo en cuenta que las autofunciones son ortogonales respecto al producto escalar: &amp;lt;math&amp;gt; (f(\rho),g(\rho)) = \int_{0}^{20} \rho f(\rho) g(\rho) \cdot dx &amp;lt;/math&amp;gt;&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
x0=0; L=20;&lt;br /&gt;
c0=[2.4048,5.5201,8.6537,11.7915,14.9309]; %Vector de ceros de la función de Bessel&lt;br /&gt;
A=(c0./20).^2; %Vector de autovalores&lt;br /&gt;
K=5; %Número de términos del desarrollo de Fourier&lt;br /&gt;
x=x0:0.1:L;&lt;br /&gt;
N=length(x)-1;&lt;br /&gt;
J=zeros(N+1,K);&lt;br /&gt;
z=zeros(N+1,K);&lt;br /&gt;
t0=0; tf=500;&lt;br /&gt;
t=t0:0.1:tf;&lt;br /&gt;
[xx,tt]=meshgrid(x,t);&lt;br /&gt;
h=0;&lt;br /&gt;
for k=1:K&lt;br /&gt;
   z(:,k)=(x)'*sqrt(A(k));&lt;br /&gt;
   J(:,k)=besselj(0,z(:,k));&lt;br /&gt;
   h0=-log((abs(x+0.1))/20.01); %Condición inicial&lt;br /&gt;
   c(k)=trapz(x,x'.*h0'.*J(:,k))/trapz(x,x'.*J(:,k).*J(:,k)); %Coeficientes de Fourier&lt;br /&gt;
   h=h+c(k)*exp(-A(k)*t)'*J(:,k)';&lt;br /&gt;
end&lt;br /&gt;
surf(xx,tt,h)&lt;br /&gt;
title('Aproximación de la solución')&lt;br /&gt;
}}&lt;/div&gt;</summary>
		<author><name>Marta Cavero</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Nivel_piezom%C3%A9trico_de_un_acu%C3%ADfero_confinado_(A5)&amp;diff=29881</id>
		<title>Nivel piezométrico de un acuífero confinado (A5)</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Nivel_piezom%C3%A9trico_de_un_acu%C3%ADfero_confinado_(A5)&amp;diff=29881"/>
				<updated>2015-05-14T03:49:48Z</updated>
		
		<summary type="html">&lt;p&gt;Marta Cavero: /* Capacidad de recuperación del acuífero */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;br /&gt;
==== Introducción ====&lt;br /&gt;
&lt;br /&gt;
Consideramos un acuífero confinado entre dos capas de terreno impermeables horizontales. Llamaremos h(x, y) al nivel piezométrico del acuífero, definido por la altura que alcanzaría el agua si hiciéramos un sondeo en el punto (x, y). Obviamente este valor depende de la presión a la que se encuentra el agua confinada en el acuífero. Supondremos&lt;br /&gt;
que el acuífero es un medio poroso saturado de agua que ocupa una región infinita y está en equilibrio de manera que &amp;lt;math&amp;gt;h(x, y) = h_0&amp;lt;/math&amp;gt; constante para todo (x, y) ∈ &amp;lt;math&amp;gt;IR^{2}&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Sobre el acuifero se construye un pozo de sección circular y radio&amp;lt;math&amp;gt; ρ_0&amp;lt;/math&amp;gt; para extraer agua. La presencia del pozo hace que el nivel piezométrico cambie. Dada la simetría del problema podemos suponer que h(x, y) sólo va a depender de la distancia al pozo. Si tomamos coordenadas cilíndricas de forma que el eje OZ coincida con el eje de simetría del pozo, entonces h = h(ρ) donde &amp;lt;math&amp;gt;ρ = \sqrt{x^{2} + y^{2}}&amp;lt;/math&amp;gt; . Trabajaremos por tanto en coordenadas polares en el plano (ρ, θ).&lt;br /&gt;
&lt;br /&gt;
Las ecuaciones que permiten conocer h(ρ) son la ecuación de conservación de la masa:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; S = \frac{∂h}{∂t} + div q = 0 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
junto con la ley de Darcy&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; q = −K∇h &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
que es una ley experimental que modela el flujo de agua en un medio poroso. La ley de Darcy establece que el flujo de agua q a través de un medio poroso es proporcional a la diferencia de presión, que a su vez se puede escribir en términos del gradiente del nivel piezométrico en cada punto. La constante K se deduce experimentalmente para cada material y se conoce como la conductividad hidráulica o permeabilidad. Cuanto mayor es la constante K mayor es el flujo de agua provocado por un cambio&lt;br /&gt;
de presión. La ley de Darcy proporciona una buena aproximación del comportamiento del agua en un medio poroso siempre que este sea homogéneo e isótropo.&lt;br /&gt;
&lt;br /&gt;
La constante S en la ley de conservación de la masa se conoce como almacenamiento específico y se interpreta como la cantidad de agua que libera el acuífero al descender el nivel piezométrico en una unidad, por unidad de volumen.&lt;br /&gt;
&lt;br /&gt;
Combinando las ecuaciones de conservación de la masa con la ley de Darcy, obtenemos la ecuación:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \frac{∂h}{∂t} - D∆h = 0, ρ &amp;gt; ρ_0, θ ∈ (0, 2π), t &amp;gt; 0, (1) &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
donde D = K/S es la difusividad hidráulica que supondremos constante.&lt;br /&gt;
&lt;br /&gt;
==== Deducción de la fórmula ====&lt;br /&gt;
&lt;br /&gt;
En este apartado buscamos demostrar la ecuación (1) como combinación de la ecuación de conservación de masas y la Ley de Darcy.&lt;br /&gt;
&lt;br /&gt;
Por un lado sabemos que el laplaciaco equivale a la divergencia del gradiente: &lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; &lt;br /&gt;
(\Delta f = \nabla \cdot \nabla f = div \left (\nabla f) \right) &lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Por otro lado, sabemos que en coordenadas polares: &lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;x = ρ cos \theta \\&lt;br /&gt;
             y = ρ  sen \theta&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\bar{g_ρ } = cos \theta \bar{i} + sin \theta  \bar{j} \\&lt;br /&gt;
              \bar{g_\theta } = - ρ  sin \theta \bar{i} + ρ cos \theta \bar{j} &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;&lt;br /&gt;
G =&lt;br /&gt;
\left(&lt;br /&gt;
\begin{array}{cc}&lt;br /&gt;
1&amp;amp; 0 \\&lt;br /&gt;
0 &amp;amp; ρ ^{2} \\&lt;br /&gt;
\end{array}&lt;br /&gt;
\right);&lt;br /&gt;
\text {donde la raiz del determinante es} \sqrt{g} = ρ&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Como indica el enunciado, al sustituir la Ley de Darcy en la ecuación de conservación de la masa obtenemos y dividir entre S, teniendo en cuenta que el divergente del gradiente es el laplaciano como hemos indicado al principio de este apartado, obtenemos la ecuación (1): &amp;lt;math&amp;gt; \frac{∂h}{∂t} - \frac{k}{S}∆h = 0 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
En esta ecuación queda por desarrollar el Laplaciano de h. &lt;br /&gt;
Partiremos de la función h(ρ,θ), de la cual calcularemos primero el gradiente:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \nabla h = \frac{\partial h}{\partial \rho}\hat{\rho} + \frac{\partial h}{\partial \rho}\hat{\theta} =  \frac{\partial h}{\partial \rho}\bar{\rho} + \frac{1}{\rho^{2}} \frac{\partial h}{\partial \rho}\bar{\theta}  &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
teniendo en cuenta que &amp;lt;math&amp;gt;\bar{g^{i} } = \frac{\bar{g_i } }{ | \bar{g_i } | ^{2} } &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Ahora hacemos el divergente del gradiente anterior y obtenemos el Laplaciano en coordenadas polares:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;math&amp;gt;&lt;br /&gt;
 \Delta h = div(∇h) &lt;br /&gt;
= {1 \over \rho} {\partial \over \partial \rho}&lt;br /&gt;
  \left( \rho {\partial h \over \partial \rho} \right) &lt;br /&gt;
+ {1 \over \rho^2} {\partial^2 h \over \partial \theta^2}&lt;br /&gt;
= {1 \over \rho} {\partial h \over \partial \rho} &lt;br /&gt;
+ {\partial^2 h \over \partial \rho^2}&lt;br /&gt;
+ {1 \over \rho^2} {\partial^2 h \over \partial \theta^2}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Si consideramos que, debido a la simetría del problema, h sólo depende de su distancia al pozo, entonces obtenemos la función radial h(ρ), que nos permite simplificar el Laplaciano del modo siguiente:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;math&amp;gt;&lt;br /&gt;
 \Delta h = div(∇h) &lt;br /&gt;
= {1 \over \rho} {\partial h \over \partial \rho} &lt;br /&gt;
+ {\partial^2 h \over \partial \rho^2}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== Obtención de la ecuación====&lt;br /&gt;
&lt;br /&gt;
Para poder resolver la ecuación anterior y que el resultado sea único, hemos de establecer condiciones iniciales y de contorno.&lt;br /&gt;
&lt;br /&gt;
Las condiciones de contorno serán dos pues aparece la derivada segunda de la posición: &amp;lt;math&amp;gt; h(\rho_0 , t) = h_p \\&lt;br /&gt;
                                                                                                                                                                  h(20,t) = h_0 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
La condición inicial será única pues sólo aparece una derivada de primer orden en tiempo en nuestra ecuación: &amp;lt;math&amp;gt; h(\rho,0) = h_0 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
De este modo la ecuación resultante será:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \left\{\begin{matrix}&lt;br /&gt;
\frac{\partial h}{\partial t} - \frac{k}{s} (\frac{1}{\rho}  \frac{\partial h}{\partial \rho} + \frac{\partial^2 h}{\partial \rho^2})= 0 &amp;amp; \rho \epsilon (\rho_{0}, 2c) &amp;amp; \theta \epsilon (0, 2\Pi ) &amp;amp; t &amp;gt; 0 \\ &lt;br /&gt;
h(\rho_{0},t) = h_{p};   h(20, t)= h_{0} \\ &lt;br /&gt;
h(\rho, 0) = h_{0} &lt;br /&gt;
\end{matrix}\right. &amp;lt;/math&amp;gt; &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==== Resolución por método de diferencias finitas ====&lt;br /&gt;
&lt;br /&gt;
Suponiendo &amp;lt;math&amp;gt;ρ_0 =0.5m&amp;lt;/math&amp;gt;, &amp;lt;math&amp;gt;h_0 =45m&amp;lt;/math&amp;gt;, &amp;lt;math&amp;gt;hp =34&amp;lt;/math&amp;gt;, D=10−2, &amp;lt;math&amp;gt;(ρ,0)=h_0&amp;lt;/math&amp;gt;; y tomando  ∆ρ = 0.1 y ∆t = ∆ρ. Vamos a resolver la ecuación anterior por el método de diferencias finitas, usando el Método de Heun para realizar la aproximación en tiempo.&lt;br /&gt;
&lt;br /&gt;
Primero, sustituyendo los datos anteriores en la ecuación, llegamos a:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \left\{\begin{matrix}&lt;br /&gt;
\frac{\partial h}{\partial t} - 10^{2} (\frac{1}{\rho}  \frac{\partial h}{\partial \rho} + \frac{\partial^2 h}{\partial \rho^2})= 0 &amp;amp; \rho \epsilon (0.5, 20) &amp;amp; \theta \epsilon (0, 2\Pi ) &amp;amp; t &amp;gt; 0 \\ &lt;br /&gt;
h(0.5,t) = 34;   h(20, t)= 45 \\ &lt;br /&gt;
h(\rho, 0) = 45&lt;br /&gt;
\end{matrix}\right. &amp;lt;/math&amp;gt; &lt;br /&gt;
&lt;br /&gt;
Aplicando el método de las diferencias finitas llegamos al siguiente código:&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
&lt;br /&gt;
%TRPRIMERA FASE. ESPACIO&lt;br /&gt;
&lt;br /&gt;
a=0.5; b=20; %Condiciones de contorno&lt;br /&gt;
drho=0.1; N=(b-a)/drho; %División del intervalo&lt;br /&gt;
&lt;br /&gt;
rho=a+drho:drho:b-drho; %Sólo nodos interiores&lt;br /&gt;
&lt;br /&gt;
%Creamos las matrices&lt;br /&gt;
&lt;br /&gt;
L=diag(ones(1,N-2),1)-diag(ones(1,N-2),-1);&lt;br /&gt;
A=diag(1./rho);&lt;br /&gt;
L=10^(-2)*(1/(2*drho))*A*L;&lt;br /&gt;
&lt;br /&gt;
K=-2*diag(ones(1,N-1))+diag(ones(1,N-2),1)+diag(ones(1,N-2),-1);&lt;br /&gt;
K=10^(-2)*(1/drho^2)*K; &lt;br /&gt;
&lt;br /&gt;
F=zeros(N-1,1);&lt;br /&gt;
F(1,1)=10^(-2)*(-17/(rho(1)*drho)+34/drho^2);&lt;br /&gt;
F(N-1,1)=10^(-2)*(45/(rho(N-1)*2*drho)+45/drho^2);&lt;br /&gt;
&lt;br /&gt;
%SEGUDA FASE. TIEMPO&lt;br /&gt;
&lt;br /&gt;
H=ones(1,length(rho)); H=H*45; H=H';&lt;br /&gt;
dt=drho; T=10; t=0:dt:T;&lt;br /&gt;
h0=34; hN=45;&lt;br /&gt;
sol=[h0 H' hN];&lt;br /&gt;
&lt;br /&gt;
for j=1:length(t)-1 &lt;br /&gt;
    &lt;br /&gt;
    %Método de Heun&lt;br /&gt;
    k1=F+(K+L)*H;&lt;br /&gt;
    k2=F+(K+L)*(H+k1*dt);&lt;br /&gt;
    H=H+(dt/2)*(k1+k2);&lt;br /&gt;
 &lt;br /&gt;
    sol(j+1,:)=[h0 H' hN]; %Salvamos las solución, incluimos los extremos&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
rho1=a:drho:b; %Incluimos los nodos exteriores&lt;br /&gt;
&lt;br /&gt;
[rr,tt]=meshgrid(rho1,t);&lt;br /&gt;
surf(rr,tt,sol); %Dibujamos la solución&lt;br /&gt;
title('Nivel Piezométrico. Método Diferencias finitas con Heun en tiempo.')&lt;br /&gt;
xlabel('Distancia radial al centro del pozo.')&lt;br /&gt;
ylabel('Tiempo.')&lt;br /&gt;
zlabel('Nivel piezométrico.')&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
Mediante este código obtenemos la siguiente gráfica:&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Grafica npiezometrico.jpg|500px|thumb|best|Gráfica Nivel Piezométrico aproximada con el Método de Diferencias Finitas con Heun en tiempo.]]&lt;br /&gt;
&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Ahora dibujaremos la gráfica mediante los métodos de Euler implícito y trapecio y compararemos los resultados obtenidos.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Sobre el programa anterior cambiaremos las líneas correspondientes al método de Heun.&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* Método de Euler implícito:&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;math&amp;gt; \left\{\begin{matrix}&lt;br /&gt;
y_{0}\\&lt;br /&gt;
y_{n+1}=y_{n} + hf(t_{n+1},y_{n+1})\\&lt;br /&gt;
\end{matrix}\right. &amp;lt;/math&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
&lt;br /&gt;
for j=1:length(t)-1 &lt;br /&gt;
    &lt;br /&gt;
    %Método de Euler implícito&lt;br /&gt;
    &lt;br /&gt;
    H=(eye(N-1)-dt*(K+L))\(H+(F*dt)); &lt;br /&gt;
 &lt;br /&gt;
    sol(j+1,:)=[h0 H' hN]; %Salvamos las solución, incluimos los extremos&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
rho1=a:drho:b; %Incluimos los nodos exteriores&lt;br /&gt;
&lt;br /&gt;
[rr,tt]=meshgrid(rho1,t);&lt;br /&gt;
surf(rr,tt,sol); %Dibujamos la solución&lt;br /&gt;
title('Nivel Piezométrico. Método Diferencias finitas con Euler en tiempo.')&lt;br /&gt;
xlabel('Distancia radial al centro del pozo.')&lt;br /&gt;
ylabel('Tiempo.')&lt;br /&gt;
zlabel('Nivel piezométrico.')&lt;br /&gt;
&lt;br /&gt;
}}&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* Método del Trapecio:&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;math&amp;gt; \left\{\begin{matrix}&lt;br /&gt;
y_{0}\\&lt;br /&gt;
y_{n+1}=y_{n} + \frac{h}{2}f((t_{n},y_{n}+f(t_{n+1},y_{n+1}))\\&lt;br /&gt;
\end{matrix}\right. &amp;lt;/math&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
for j=1:length(t)-1 &lt;br /&gt;
    &lt;br /&gt;
    %Método del trapecio&lt;br /&gt;
    k1=F+(K+L)*H;&lt;br /&gt;
    k2=F+(K+L)*(H+k1*dt); &lt;br /&gt;
    H=(eye(N-1)-(dt/2)*(K+L))\(H+dt*F+(dt/2)*(K+L)*H);&lt;br /&gt;
 &lt;br /&gt;
    sol(j+1,:)=[h0 H' hN]; %Salvamos las solución, incluimos los extremos&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
rho1=a:drho:b; %Incluimos los nodos exteriores&lt;br /&gt;
&lt;br /&gt;
[rr,tt]=meshgrid(rho1,t);&lt;br /&gt;
surf(rr,tt,sol); %Dibujamos la solución&lt;br /&gt;
title('Nivel Piezométrico. Método Diferencias finitas con trapecio en tiempo.')&lt;br /&gt;
xlabel('Distancia radial al centro del pozo.')&lt;br /&gt;
ylabel('Tiempo.')&lt;br /&gt;
zlabel('Nivel piezométrico.')&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
Como podemos ver a continuación las tres gráficas resultantes son prácticamente iguales por lo que los tres métodos hacen una aproximación similar.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
[[Archivo:Trapecio12.png|500px|thumb|left|Gráfica Nivel Piezométrico aproximada con el Método de Diferencias Finitas con Trapecio en tiempo.]]&lt;br /&gt;
[[Archivo:Euler12.png|500px|thumb|right|Gráfica Nivel Piezométrico aproximada con el Método de Diferencias Finitas con Euler Implícito en tiempo.]]&lt;br /&gt;
&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==== Comportamiento del nivel piezométrico con &amp;lt;math&amp;gt; \rho &amp;lt;/math&amp;gt; constante ====&lt;br /&gt;
&lt;br /&gt;
Ahora supondremos que &amp;lt;math&amp;gt; \rho &amp;lt;/math&amp;gt; es constante y que su valor es 2 y dibujaremos el comportamiento del nivel piezométrico en una gráfica 2D nivel piezométrico-tiempo.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Nuevamente utilizando el programa anterior con el  método de Heun:&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Rho2.png|500px|thumb|best|Gráfica Nivel Piezométrico-tiempo para &amp;lt;math&amp;gt; \rho =2 &amp;lt;/math&amp;gt; para T=10.]]&lt;br /&gt;
[[Archivo:Rho1000.png|500px|thumb|best|Gráfica Nivel Piezométrico-tiempo para &amp;lt;math&amp;gt; \rho =2 &amp;lt;/math&amp;gt; para T=1000.]]&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
&lt;br /&gt;
%PRIMERA FASE. ESPACIO&lt;br /&gt;
&lt;br /&gt;
a=0.5; b=20; %Condiciones de contorno&lt;br /&gt;
drho=0.1; N=(b-a)/drho; %División del intervalo&lt;br /&gt;
&lt;br /&gt;
rho=a+drho:drho:b-drho; %Sólo nodos interiores&lt;br /&gt;
&lt;br /&gt;
%Creamos las matrices&lt;br /&gt;
&lt;br /&gt;
L=diag(ones(1,N-2),1)-diag(ones(1,N-2),-1);&lt;br /&gt;
A=diag(1./rho);&lt;br /&gt;
L=10^(-2)*(1/(2*drho))*A*L;&lt;br /&gt;
&lt;br /&gt;
K=-2*diag(ones(1,N-1))+diag(ones(1,N-2),1)+diag(ones(1,N-2),-1);&lt;br /&gt;
K=10^(-2)*(1/drho^2)*K; &lt;br /&gt;
&lt;br /&gt;
F=zeros(N-1,1);&lt;br /&gt;
F(1,1)=10^(-2)*(-17/(rho(1)*drho)+34/drho^2);&lt;br /&gt;
F(N-1,1)=10^(-2)*(45/(rho(N-1)*2*drho)+45/drho^2);&lt;br /&gt;
&lt;br /&gt;
%SEGUDA FASE. TIEMPO&lt;br /&gt;
&lt;br /&gt;
H=ones(1,length(rho)); H=H*45; H=H';&lt;br /&gt;
dt=drho; &lt;br /&gt;
T=10 &lt;br /&gt;
%Comprobamos también la solución para un tiempo mayor &lt;br /&gt;
%T=1000&lt;br /&gt;
t=0:dt:T;&lt;br /&gt;
h0=34; hN=45;&lt;br /&gt;
sol=[h0 H' hN];&lt;br /&gt;
&lt;br /&gt;
for j=1:length(t)-1 &lt;br /&gt;
    &lt;br /&gt;
    %Método de Heun&lt;br /&gt;
    k1=F+(K+L)*H;&lt;br /&gt;
    k2=F+(K+L)*(H+k1*dt);&lt;br /&gt;
    H=H+(dt/2)*(k1+k2);&lt;br /&gt;
 &lt;br /&gt;
    sol(j+1,:)=[h0 H' hN]; %Salvamos las solución, incluimos los extremos&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
rho1=a:drho:b; %Incluimos los nodos exteriores&lt;br /&gt;
&lt;br /&gt;
m=sol(:,rho==2); %Vector que incluye la solución en tiempo para rho=2&lt;br /&gt;
&lt;br /&gt;
plot(t,m);&lt;br /&gt;
&lt;br /&gt;
title('Comportamiento del nivel piezométrico en el tiempo para p=2')&lt;br /&gt;
xlabel('Tiempo')&lt;br /&gt;
ylabel('Nivel piezométrico.')&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
La primera gráfica muestra que para tiempos pequeños la variación del nivel piezométrico es muy pequeña (del orden de 0,10/0,15 m), aún así como observamos en la segunda gráfica a medida que avanzamos en el tiempo la variación del nivel disminuye aún más ya que la curva está cada vez menos inclinada.&lt;br /&gt;
&lt;br /&gt;
==== Variación del nivel piezométrico en tiempos grandes ====&lt;br /&gt;
Ahora vamos a comprobar que la variación del nivel piezométrico para tiempos elevados (T=5000) es mínima.&lt;br /&gt;
Para ello dibujaremos las soluciones cada 200 horas de en el intervalo temporal [1; 5000], en&lt;br /&gt;
una misma gráfica.&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
%PRIMERA FASE. ESPACIO&lt;br /&gt;
&lt;br /&gt;
a=0.5; b=20; %Condiciones de contorno&lt;br /&gt;
drho=0.1; N=(b-a)/drho; %División del intervalo&lt;br /&gt;
&lt;br /&gt;
rho=a+drho:drho:b-drho; %Sólo nodos interiores&lt;br /&gt;
&lt;br /&gt;
%Creamos las matrices&lt;br /&gt;
&lt;br /&gt;
L=diag(ones(1,N-2),1)-diag(ones(1,N-2),-1);&lt;br /&gt;
A=diag(1./rho);&lt;br /&gt;
L=10^(-2)*(1/(2*drho))*A*L;&lt;br /&gt;
&lt;br /&gt;
K=-2*diag(ones(1,N-1))+diag(ones(1,N-2),1)+diag(ones(1,N-2),-1);&lt;br /&gt;
K=10^(-2)*(1/drho^2)*K; &lt;br /&gt;
&lt;br /&gt;
F=zeros(N-1,1);&lt;br /&gt;
F(1,1)=10^(-2)*(-17/(rho(1)*drho)+34/drho^2);&lt;br /&gt;
F(N-1,1)=10^(-2)*(45/(rho(N-1)*2*drho)+45/drho^2);&lt;br /&gt;
&lt;br /&gt;
%SEGUDA FASE. TIEMPO&lt;br /&gt;
&lt;br /&gt;
H=ones(1,length(rho)); H=H*45; H=H';&lt;br /&gt;
dt=1; T=5000; t=0:dt:T;&lt;br /&gt;
h0=34; hN=45;&lt;br /&gt;
sol=[h0 H' hN];&lt;br /&gt;
&lt;br /&gt;
figure(1);&lt;br /&gt;
hold on;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
for j=1:length(t)-1 &lt;br /&gt;
    &lt;br /&gt;
    %Método de Heun&lt;br /&gt;
    k1=F+(K+L)*H;&lt;br /&gt;
    k2=F+(K+L)*(H+k1*dt);&lt;br /&gt;
    H=H+(dt/2)*(k1+k2);&lt;br /&gt;
 &lt;br /&gt;
    sol(j+1,:)=[h0 H' hN]; %Salvamos las solución, incluimos los extremos&lt;br /&gt;
    &lt;br /&gt;
 if rem(t(j),200)==0;&lt;br /&gt;
    &lt;br /&gt;
    rho1=a:drho:b; %Incluimos los nodos exteriores&lt;br /&gt;
  &lt;br /&gt;
  plot(rho1,sol)&lt;br /&gt;
&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
end&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Sin embargo, mediante el siguiente programa obtenemos una solución inestable ya que se trata de un intervalo de tiempo muy grande y el paso es muy elevado porque dibujamos las soluciones cada 200 horas.&lt;br /&gt;
[[Archivo:Trabajo21.jpg|marco|derecha|Nivel piezométrico estacionario]]&lt;br /&gt;
&lt;br /&gt;
====Problema estacionario====&lt;br /&gt;
Como hemos visto en el apartado anterior para tiempos grandes el nivel piezométrico se mantiene practicamente constante a lo largo del tiempo, esto es debido a que se establece un equilibrio entre el caudal de agua extraida del acuifero y la migración de aguas desde los puntos más alejados del pozo hacia este.&lt;br /&gt;
Por lo tanto se verifica que:&lt;br /&gt;
 &amp;lt;math&amp;gt;\frac{\partial h}{\partial t}=0&amp;lt;/math&amp;gt;&lt;br /&gt;
Y por lo tanto el nivel piezométrico se puede aproximar por:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \left\{\begin{matrix}&lt;br /&gt;
- \frac{k}{s} (\frac{1}{\rho}  \frac{\partial h}{\partial \rho} + \frac{\partial^2 h}{\partial \rho^2})= 0 &amp;amp; \rho \epsilon (1, 20) &amp;amp; \theta \epsilon (0, 2\Pi ) &amp;amp; 0 &amp;lt; t &amp;lt; 5000 \\ &lt;br /&gt;
h(1,t) = 35;    h(20, t)= 40 \\ &lt;br /&gt;
h(\rho, 0) = 40 &lt;br /&gt;
\end{matrix}\right. &amp;lt;/math&amp;gt;&lt;br /&gt;
Resolvemos por diferencias finitas:&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
    %datos&lt;br /&gt;
    t=5000;&lt;br /&gt;
    l=20;&lt;br /&gt;
    D=0.01;&lt;br /&gt;
    hp=35;&lt;br /&gt;
    ho=40;&lt;br /&gt;
    %discretización&lt;br /&gt;
    s=0.1;&lt;br /&gt;
    x0=1;&lt;br /&gt;
    x=x0:s:l;&lt;br /&gt;
    xint=x0+s:s:l-s;&lt;br /&gt;
    N=length(x)-2; &lt;br /&gt;
    %construimos las matrices para el método de las diferencias finitas&lt;br /&gt;
    K=(1/s^2)*(diag(2*ones(1,N))-diag(ones(1,N-1),1)-diag(ones(1,N-1),-1));&lt;br /&gt;
    A=(1/(s*2))*(diag(ones(1,N-1),1)-diag(ones(1,N-1),-1));&lt;br /&gt;
    A=diag(1./xint)*A;&lt;br /&gt;
    h0=(40*ones(N,1));&lt;br /&gt;
    dt=200; &lt;br /&gt;
    t=0:dt:t;&lt;br /&gt;
    M=length(t)-1;&lt;br /&gt;
    F=(zeros(N,1));&lt;br /&gt;
    F(1)=D*((hp/s^2)-(hp/(2*s)*1/xint(1)));&lt;br /&gt;
    F(N)=D*((ho/s^2)+ho/(s*2*xint(N)));&lt;br /&gt;
    H(1,:)=[40;h0;40]'; &lt;br /&gt;
    h=h0;&lt;br /&gt;
    for n=1:M&lt;br /&gt;
      h=(D)*(K-A)\((F)); %utilizamos el comando backslash para resolver el sistema de ecuaciones&lt;br /&gt;
      H(n+1,:)=[hp h' ho];&lt;br /&gt;
    end&lt;br /&gt;
    %mallado y representación&lt;br /&gt;
    [X,T]=meshgrid(x,t);&lt;br /&gt;
    surf(X,T,H)&lt;br /&gt;
    xlabel('Distancia (metros)');&lt;br /&gt;
    ylabel('Tiempo (horas)');&lt;br /&gt;
    zlabel('Nivel piezométrico (metros)')&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
====Capacidad de recuperación del acuífero====&lt;br /&gt;
En este apartado queremos calcular una ley que nos describa el comportamiento del acuífero e el caso de que impermeabilizásemos las paredes del pozo partiendo del estado estacionario anterior, esto significaría que el fujo de agua en los bordes del pozo sería nulo y el nivel piezométrico iría variando hasta llegar a otro estado estacionario.&lt;br /&gt;
La condición frontera en r=r0 será entonces:&lt;br /&gt;
&amp;lt;math&amp;gt;\frac{\partial h(r0,t)}{\partial \rho}=0&amp;lt;/math&amp;gt;&lt;br /&gt;
Ya que en caso de que la derivada parcial del nivel piezométrico respecto a la distancia r sea nula significa que el estado está en equilibrio y no hay corrientes de líquido.&lt;br /&gt;
El estado que tratará de alcanzar el fluido será el inicial, con el mismo nivel piezométrico ya que al impermeabilizar las paredes del pozo hemos vuelto al estado inicial.&lt;br /&gt;
&lt;br /&gt;
====Método de Fourier====&lt;br /&gt;
Ahora suponemos que el radio del pozo es despreciable y que una vez extraido el agua el pozo se cierra quedando el acuifero de nuevo homogéneo. En este caso tomaremos la región ρ &amp;lt; 20. Nuestro objetivo es aproximar las soluciones usando el método de Fourier. De nuevo supondremos que la solución sólo depende de ρ y t, y tomaremos ahora como condición frontera h(20, t) = 40.&lt;br /&gt;
Vamos a considerar el sistema de ecuaciones para h(ρ,t)=h(ρ,t)-40:&lt;br /&gt;
 &amp;lt;math&amp;gt; \left\{\begin{matrix}&lt;br /&gt;
\frac{\partial h}{\partial t} - D (\frac{1}{\rho}  \frac{\partial h}{\partial \rho} + \frac{\partial^2 h}{\partial \rho^2})= 0 &amp;amp; \rho \epsilon (0, 20) &amp;amp; \theta \epsilon (0, 2\Pi ) &amp;amp; t &amp;gt; 0 \\ &lt;br /&gt;
\frac{\partial h}{\partial \rho}(0,t) = 0;   h(20, t)= 0 \\ &lt;br /&gt;
\end{matrix}\right. &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Obtenemos el problema de autovalores asociado al sistema anterior con el método de separación de variables:&lt;br /&gt;
 &amp;lt;math&amp;gt; \left\{\begin{matrix}&lt;br /&gt;
D (\frac{X'(\rho)}{\rho} + X''(\rho))+ λX(\rho)=0 \\&lt;br /&gt;
X'(0) = 0;   X(20)= 0 \\ &lt;br /&gt;
&lt;br /&gt;
\end{matrix}\right. &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Sabemos que los problemas de esta forma tienen como solución la función de Bessel de primera especie que forma una familia de autofunciones: &amp;lt;math&amp;gt;Ψ(\rho)=J_0·(\rho\sqrt{λ})&amp;lt;/math&amp;gt;. Estas se anulan cuando &amp;lt;math&amp;gt;(\rho\sqrt{λ})&amp;lt;/math&amp;gt; se iguala a 2.4048, 5.5201, 8.6537, 11.7915 y 14.9309, siendo estos los 5 primeros ceros de la función de Bessel. De esta manera y tomando ρ=20 obtenemos los 5 primeros autovalores:&lt;br /&gt;
&amp;lt;math&amp;gt;(20\sqrt{λ})=2.4048&amp;lt;/math&amp;gt;Haciendo la operación anterior para los 5 ceros obtenemos los siguientes autovalores: 0.0145, 0.0762, 0.1872, 0.3476, 0.5573.&lt;br /&gt;
Ahora vamos a dibujar las 5 primeras autofunciones utilizando la función besselj:&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
a1=0.0145;&lt;br /&gt;
a2=0.0762;&lt;br /&gt;
a3=0.1872;&lt;br /&gt;
a4=0.3476;&lt;br /&gt;
a5=0.5575;&lt;br /&gt;
r=0:0.02:20;&lt;br /&gt;
F1=besselj(0,r.*(sqrt(a1))); &lt;br /&gt;
F2=besselj(0,r.*(sqrt(a2)));&lt;br /&gt;
F3=besselj(0,r.*(sqrt(a3)));&lt;br /&gt;
F4=besselj(0,r.*(sqrt(a4)));&lt;br /&gt;
F5=besselj(0,r.*(sqrt(a5)));&lt;br /&gt;
hold on&lt;br /&gt;
plot(r,F1)&lt;br /&gt;
plot(r,F2,'r')&lt;br /&gt;
plot(r,F3,'g')	&lt;br /&gt;
plot(r,F4,'c')&lt;br /&gt;
plot(r,F5,'y')&lt;br /&gt;
hold off&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
Aproximamos ahora la solución de la ecuación tomando como dato inicial es&amp;lt;math&amp;gt; h (\rho,0)= -log \frac{|\rho + 0.01|}{20.01} &amp;lt;/math&amp;gt; y usando 5 términos del desarrollo de Fourier, teniendo en cuenta que las autofunciones son ortogonales respecto al producto escalar: &amp;lt;math&amp;gt; (f(\rho),g(\rho)) = \int_{0}^{20} \rho f(\rho) g(\rho) \cdot dx &amp;lt;/math&amp;gt;&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
x0=0; L=20;&lt;br /&gt;
c0=[2.4048,5.5201,8.6537,11.7915,14.9309]; %Vector de ceros de la función de Bessel&lt;br /&gt;
A=(c0./20).^2; %Vector de autovalores&lt;br /&gt;
K=5; %Número de términos del desarrollo de Fourier&lt;br /&gt;
x=x0:0.1:L;&lt;br /&gt;
N=length(x)-1;&lt;br /&gt;
J=zeros(N+1,K);&lt;br /&gt;
z=zeros(N+1,K);&lt;br /&gt;
t0=0; tf=500;&lt;br /&gt;
t=t0:0.1:tf;&lt;br /&gt;
[xx,tt]=meshgrid(x,t);&lt;br /&gt;
h=0;&lt;br /&gt;
for k=1:K&lt;br /&gt;
   z(:,k)=(x)'*sqrt(A(k));&lt;br /&gt;
   J(:,k)=besselj(0,z(:,k));&lt;br /&gt;
   h0=-log((abs(x+0.1))/20.01); %Condición inicial&lt;br /&gt;
   c(k)=trapz(x,x'.*h0'.*J(:,k))/trapz(x,x'.*J(:,k).*J(:,k)); %Coeficientes de Fourier&lt;br /&gt;
   h=h+c(k)*exp(-A(k)*t)'*J(:,k)';&lt;br /&gt;
end&lt;br /&gt;
surf(xx,tt,h)&lt;br /&gt;
title('Aproximación de la solución')&lt;br /&gt;
}}&lt;/div&gt;</summary>
		<author><name>Marta Cavero</name></author>	</entry>

	</feed>