<?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=Toni+Villa</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=Toni+Villa"/>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/wiki/Especial:Contribuciones/Toni_Villa"/>
		<updated>2026-04-30T16:45:03Z</updated>
		<subtitle>Contribuciones del usuario</subtitle>
		<generator>MediaWiki 1.26.2</generator>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Ecuaci%C3%B3n_del_calor_en_una_placa_en_forma_de_anillo&amp;diff=13599</id>
		<title>Ecuación del calor en una placa en forma de anillo</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Ecuaci%C3%B3n_del_calor_en_una_placa_en_forma_de_anillo&amp;diff=13599"/>
				<updated>2014-05-22T09:49:23Z</updated>
		
		<summary type="html">&lt;p&gt;Toni Villa: /* Método del trapecio en el tiempo */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{ TrabajoED | Ecuación del calor en una placa en forma de anillo. Grupo 6B | [[:Categoría:Ecuaciones Diferenciales|Ecuaciones Diferenciales]]|[[:Categoría:ED13/14|Curso 2013-14]] | Elisabet Sánchez López, Ana Santos Martín, Isabel Sastre Furones, Ángel Antonio Villa Figueroa }}&lt;br /&gt;
&lt;br /&gt;
== Introducción ==&lt;br /&gt;
Tenemos una placa plana en forma de anillo. Vamos a trabajar en coordenadas polares en el plano y sabemos que la placa está comprendida entre los radios ρ=1 y ρ=6 y su temperatura inicial viene definida por la función u(ρ,0):&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\left\{\begin{matrix}100(ρ-1)   ………   ρ ∈ [1, 2] \\100     ………  ρ ∈ [2, 5]\\90(6-ρ)+10  ………  ρ ∈ [5, 6]\end{matrix}\right.&amp;lt;/math&amp;gt;&lt;br /&gt;
                                                                           &lt;br /&gt;
Si colocamos en los extremos interior ρ=1 y exterior ρ=6 objetos a una temperatura constante de 0 y 10 grados respectivamente, es decir, las condiciones de frontera serán:            &lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\left\{\begin{matrix}u(1,t)=0 \\u(6,t)=10\end{matrix}\right.&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; u_t-\Delta u= u_t- \frac{\partial^2 u }{\partial ρ^2} -\frac{1 }{ρ} \frac{\partial u }{\partial ρ}-\frac{1 }{ρ^2} \frac{\partial^2 u }{\partial θ^2}= u_t- \frac{\partial^2 u }{\partial ρ^2} -\frac{1 }{ρ} \frac{\partial u }{\partial ρ} = 0 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Así la ecuación queda de la siguiente manera:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; u_t-\frac{1 }{ρ} u_ρ - u_(ρρ) = 0 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Suponiendo que la temperatura u de la placa únicamente depende de la coordenada radial y del tiempo, es decir, u=u(ρ,t) y sabiendo que satisface la ecuación del calor &amp;lt;math&amp;gt; u_t-\Delta u=0&amp;lt;/math&amp;gt; , vamos a plantear el sistema de ecuaciones que satisface u(ρ,t) en coordenadas polares:&lt;br /&gt;
&lt;br /&gt;
== Resolución por el método de diferencias finitas ==&lt;br /&gt;
=== Método del trapecio en el tiempo===&lt;br /&gt;
&lt;br /&gt;
Tomamos los pasos de discretización del espacio &amp;lt;math&amp;gt; \Delta ρ=0.1&amp;lt;/math&amp;gt; y del tiempo &amp;lt;math&amp;gt; \Delta t=(\Delta ρ/4)&amp;lt;/math&amp;gt; en t ∈ [0; 10]&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=    &lt;br /&gt;
%Datos&lt;br /&gt;
a=1; b=6; h=0.1;&lt;br /&gt;
ya=0; yb=10;&lt;br /&gt;
N=(b-a)/h; dt=h/4;&lt;br /&gt;
r=[a:h:b]'; rr=[a+h:h:b-h]';     &lt;br /&gt;
%Definimos K1&lt;br /&gt;
K1=diag(ones(1,N-1)*2)+diag(ones(1,N-2)*(-1),-1)+diag(ones(1,N-2)*(-1),1);&lt;br /&gt;
K1=K1*(1/h^2);    &lt;br /&gt;
%Definimos K2&lt;br /&gt;
K2=diag(ones(N-2,1)*(-1),1)+diag(ones(N-2,1),-1);&lt;br /&gt;
K2=(1/h^2)*K2;&lt;br /&gt;
M=diag(1./rr);&lt;br /&gt;
K2=M*K2;&lt;br /&gt;
     &lt;br /&gt;
T0=0; TF=10;&lt;br /&gt;
t=T0&lt;br /&gt;
      &lt;br /&gt;
%Definimos la malla&lt;br /&gt;
[R,T]=meshgrid(r,t);   &lt;br /&gt;
%Defino F:&lt;br /&gt;
F=zeros(1,N-1)&lt;br /&gt;
F(end)=F(end)+10/(h^2)+10/(2*5.9*h);        %(donde (b-h)=5.9)   &lt;br /&gt;
%Condición inicial&lt;br /&gt;
for i=1:length(rr)&lt;br /&gt;
    if rr(i)&amp;lt;2&lt;br /&gt;
       U(i)=100*(rr(i)-1);&lt;br /&gt;
    elseif rr(i)&amp;lt;5&lt;br /&gt;
       U(i)=100;&lt;br /&gt;
    else&lt;br /&gt;
       U(i)=90*(6-rr(i))+10;&lt;br /&gt;
    end&lt;br /&gt;
end&lt;br /&gt;
sol(1,:)=[0,U,10]; &lt;br /&gt;
%Método del trapecio&lt;br /&gt;
for m=1:length(t)-1&lt;br /&gt;
    Z=U'+(dt/2)*(-(K1+K2)*U'+F');&lt;br /&gt;
    W=eye(N-1)+(dt/2)*(K1+K2);&lt;br /&gt;
    W=W\Z;&lt;br /&gt;
    sol(m+1,:)=[0,W',10];&lt;br /&gt;
    U=W'&lt;br /&gt;
end     &lt;br /&gt;
%Resultados gráficos&lt;br /&gt;
surf(R,T,sol)&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:imagentrapecio.jpg|marco|centro|Superficie temperatura en el eje radial  ρ∈[1,6] en el intervalo de tiempo]]&lt;br /&gt;
&lt;br /&gt;
Como se puede observar en la gráfica, la temperatura va disminuyendo hasta alcanzar valores casi constantes a lo largo del tiempo. En el centro (del eje radial) se ve un descenso más brusco, debido a que la temperatura inicial es más alta, y en los extremos se mantiene el mismo valor. Por lo tanto, existe un enfriamiento de la placa, sobre todo en la parte central, hasta unos valores constantes de temperatura: 0 en ρ=1, 10 en ρ=6 y entre 0-10 en ρ∈(1,6).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''Temperatura en ρ=3'''&lt;br /&gt;
&lt;br /&gt;
Partiendo del programa anterior, queremos ahora dibujar el comportamiento de la temperatura en los puntos para los cuales '''ρ=3''' en una gráfica 2D temperatura/tiempo. Implementamos el siguiente código Matlab y obtenemos dicha gráfica.&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
%Cálculo del punto N que corresponde a ρ=3&lt;br /&gt;
N3=(3-a)/h+1;&lt;br /&gt;
%Dibujo&lt;br /&gt;
plot(sol(:,N3),t)&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:imagenP3.jpg|marco|centro|Temperatura en los puntos de la corona ρ=3]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Con esto, se demuestra lo dicho en el anterior apartado, pero se puede ver de forma mucho más clara para ρ=3 que existe un enfriamiento en la corona, llegando a una temperatura entre los 0 y 10ºC.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:mayorT.jpg|marco|centro|]]&lt;br /&gt;
i&lt;br /&gt;
[[Archivo:mayorTP3.jpg|marco|centro|Temperatura en los puntos de la corona ρ=3]]&lt;br /&gt;
Que demuestra lo comentado anteriormente que cuando se supera el intevalo de tiempo se llegan a valores constantes.&lt;br /&gt;
&lt;br /&gt;
=== Método de Euler explícito en el tiempo ===&lt;br /&gt;
&lt;br /&gt;
Puesto que los datos son los mismos que los usados en el método de diferencias finitas con el método del trapecio en el tiempo, únicamente incluimos en este apartado la implementación del nuevo método utilizado.&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
%Método de Euler explícito&lt;br /&gt;
for m=1:length(t)-1&lt;br /&gt;
    Z=U'+(dt)*(-(K1+K2)*U'+F');&lt;br /&gt;
    sol(m+1,:)=[0,Z',10];&lt;br /&gt;
    U=Z';&lt;br /&gt;
end       &lt;br /&gt;
surf(R,T,sol)&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:imageneuler.jpg|marco|centro|]]&lt;br /&gt;
&lt;br /&gt;
En esta gráfica resultante se puede observar que, como el método es explícito, el sistema es inestable. Esto significa que el paso tomado es grande, por eso tiene los límites muy elevados. &lt;br /&gt;
&lt;br /&gt;
=== Método de Euler implícito en el tiempo ===&lt;br /&gt;
&lt;br /&gt;
Análogamente, en este apartado se especifica la aplicación del método de Euler implícito, obviando los datos (que continúan siendo los mismos).&lt;br /&gt;
 &lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
%Método de Euler implícito:&lt;br /&gt;
for m=1:length(t)-1 &lt;br /&gt;
    Z=U'+dt*(F');&lt;br /&gt;
    W=eye(N-1)+dt*(K1+K2);&lt;br /&gt;
    W=W\Z;&lt;br /&gt;
    sol(m+1,:)=[0,W',10]&lt;br /&gt;
    U=W';&lt;br /&gt;
end&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:imageneimp.jpg|marco|centro|]]&lt;br /&gt;
&lt;br /&gt;
Obtenemos una superficie muy parecida a la que salía con el método del trapecio.&lt;br /&gt;
&lt;br /&gt;
=== Método de Euler modificado en el tiempo ===&lt;br /&gt;
&lt;br /&gt;
Al utilizar el método de Euler modificado en el tiempo, observamos que éste es inestable, al igual que el método de Euler explícito.&lt;br /&gt;
 &lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
%Método de Euler modificado:&lt;br /&gt;
for m=1:length(t)-1&lt;br /&gt;
    M1=-(K1+K2)*U'+F';&lt;br /&gt;
    M2=-(K1+K2)*(U'+M1*dt)+F';&lt;br /&gt;
    W=U'+(dt/2)*(M1+M2);&lt;br /&gt;
    sol(m+1,:)=[0,W',10];&lt;br /&gt;
    U=W';&lt;br /&gt;
end&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:imagenemod.jpg|marco|centro|]]&lt;br /&gt;
&lt;br /&gt;
== Estado estacionario ==&lt;br /&gt;
=== Con las mismas condiciones ===&lt;br /&gt;
&lt;br /&gt;
El sistema a resolver para tiempos grandes queda de la siguiente manera:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\left\{\begin{matrix} -\frac{1 }{ρ} u_ρ - u_{ρρ} = 0 \\ u(1)=0 ; u(6)=10\end{matrix}\right.&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
El paso que se toma es de 0.1 y 0.01. Como se trata de un problema de contorno, lo resolvereos implementando el siguiente código:&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
%Datos&lt;br /&gt;
a=1; b=6; ya=0; yb=10;&lt;br /&gt;
h=[0.1,0.01];&lt;br /&gt;
color='rg'&lt;br /&gt;
%Para obtener ambas soluciones en la misma gráfica&lt;br /&gt;
hold on&lt;br /&gt;
for i=1:2&lt;br /&gt;
    N=(b-a)/h(i); r=[a:h(i):b]';rr=[a+h(i):h(i):b-h(i)]';&lt;br /&gt;
    K1=1/h(i)^2*(2*diag(ones(N-1,1))-diag(ones(N-2,1),1)-diag(ones(N-2,1),-1));&lt;br /&gt;
    K2=1/(2*h(i))*( diag(ones(N-2,1),-1)-diag(ones(N-2,1),1) );&lt;br /&gt;
    M=diag(1./rr);&lt;br /&gt;
    K2=M*K2;&lt;br /&gt;
    F=zeros(1,N-1);&lt;br /&gt;
    F(end)=F(end)+10/h(i)^2+10/(2*5.9*h(i));&lt;br /&gt;
    u=(K1+K2)\F';&lt;br /&gt;
    uu=[ya;u;yb];&lt;br /&gt;
    plot(r,uu,color(i));&lt;br /&gt;
end&lt;br /&gt;
hold off&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Archivo:tgrande.jpg|marco|centro|Distribución de la temperatura para tiempos grandes con ambos pasos]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Como podemos observar, casi no se aprecia la diferencia entre hacerlo con h=0.1 y h=0.01. Además, demuestra que da igual que sean tiempos grandes porque para nuestra placa se obtendrá un valor dentro del intervalo de tiempo dado y, como se había dicho antes, se llegan a valores constantes de temperatura.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Archivo:tgrandezoom.jpg|marco|centro|Detalle de la imagen anterior: rojo(0.1) y verde(0.01)]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
En el zoom podemos comprobar como dicha diferencia es mínima.&lt;br /&gt;
&lt;br /&gt;
=== Con las nuevas condiciones ===&lt;br /&gt;
&lt;br /&gt;
Cuando colocamos en la frontera exterior de la placa una pieza aislante, no se produce pérdida de calor en dicho extremo, por lo que el flujo de temperatura en la dirección radial es nulo.&lt;br /&gt;
&lt;br /&gt;
Una vez alcanzado el estado estacionario, el problema que modeliza la temperatura de la placa es:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\left\{\begin{matrix} -\frac{1}{ρ} u_ρ - u_{ρρ} = 0 \\ u(1)=0 ; u_ρ(6)=0\end{matrix}\right.&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Para obtener el valor estacionario de la temperatura de a placa, resolvemos el problema aplicando el cambio de variable  '''&amp;lt;math&amp;gt; u_ρ = v &amp;lt;/math&amp;gt;'''.&lt;br /&gt;
&lt;br /&gt;
Así, tenemos que resolver una ecuación de variables separables cuya solución será: '''&amp;lt;math&amp;gt; u_ρ = v = \frac{c_1}{ρ} &amp;lt;/math&amp;gt;'''&lt;br /&gt;
&lt;br /&gt;
Integrando, obtenemos '''&amp;lt;math&amp;gt; u(ρ)=c_1·log ρ + c_2 &amp;lt;/math&amp;gt;'''.&lt;br /&gt;
&lt;br /&gt;
Finalmente, obligando al cumplimiento de las condiciones, obtenemos el valor de las constantes:&lt;br /&gt;
&amp;lt;math&amp;gt;\left\{\begin{matrix} u(1)=0  =&amp;gt;  c_2=0 \\ u_ρ(6)=0  =&amp;gt;  c_1=0\end{matrix}\right.&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Por lo tanto, '''&amp;lt;math&amp;gt; u(ρ)=0 &amp;lt;/math&amp;gt;'''.&lt;br /&gt;
&lt;br /&gt;
Ahora comprobamos cuánto tarda la temperatura en alcanzar el estado estacionario con un error del 5%. Para ello, utilizamos un método cualquiera de los progamados anteriormente y añadimos al bucle del tiempo las siguientes líneas:&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
for ...&lt;br /&gt;
    ...&lt;br /&gt;
    if (max(abs(sol)))&amp;lt;0.05&lt;br /&gt;
         break&lt;br /&gt;
    end&lt;br /&gt;
end&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
Así, obtenemos como resultado '''t= '''.&lt;br /&gt;
&lt;br /&gt;
== Disco completo ==&lt;br /&gt;
&lt;br /&gt;
Ahora consideraremos que la placa ocupa todo el disco '''ρ&amp;lt;6'''. La solución sólo dependerá de ρ y t, y la condición de frontera será '''&amp;lt;math&amp;gt; u(6,t)=0 &amp;lt;/math&amp;gt;'''.&lt;br /&gt;
&lt;br /&gt;
=== Problema de autovalores ===&lt;br /&gt;
&lt;br /&gt;
Para obtener el problema de autovalores asociado '''(PA)''', partimos del problema '''(P)''', cuyas condiciones se imponen teniendo en cuenta la condición de frontera dada y que las soluciones tienen que ser difereciables en '''ρ=0'''. Debido a este último dato, sabemos que en ese punto tiene que existir tangente horizontal (pendiente nula) y obtenemos, así, la condición '''&amp;lt;math&amp;gt; u_ρ(0)=0 &amp;lt;/math&amp;gt;'''.&lt;br /&gt;
&lt;br /&gt;
El problema '''(P)''' inicial es: &lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\left\{\begin{matrix} u_t -\frac{1}{ρ} u_ρ - u_{ρρ} = 0 \\ u_ρ(0)=0 ; u(6)=0\end{matrix}\right.&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Aplicando el método de separación de variables, ya que nuestro problema es homogéneo en las condiciones de frontera, buscamos que '''&amp;lt;math&amp;gt; u(ρ,t) &amp;lt;/math&amp;gt;''' sea el producto de dos funciones que dependan respectivamente de una de las variables. Así: '''&amp;lt;math&amp;gt; u(ρ,t)=R(ρ)T(t) &amp;lt;/math&amp;gt;'''.&lt;br /&gt;
&lt;br /&gt;
Derivando, sustituyendo en '''(P)''' y dividiendo entre '''&amp;lt;math&amp;gt; R(ρ)T(t) &amp;lt;/math&amp;gt;''', llegamos al problema de autovalores asociado '''(PA)''':&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\left\{\begin{matrix} R''(ρ) +\frac{R'(ρ)}{ρ} = -λR(ρ) \\ R'(0)=0 ; R(6)=0\end{matrix}\right.&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Relación con las funciones de Bessel ===&lt;br /&gt;
&lt;br /&gt;
La función de Bessel de primera especie, &amp;lt;math&amp;gt; J_0(r) &amp;lt;/math&amp;gt;, es la solución de la ecuación diferencial de Bessel:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\left\{\begin{matrix} r^2 φ''(r) + r φ'(r) + r^2 φ(r) = 0 \\ φ(0)=1 ; φ'(0)=0\end{matrix}\right.&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Para demostrar que las autofunciones del problema anterior son de la forma &amp;lt;math&amp;gt; φ_k = J_0 (ρλ^{1/2}) &amp;lt;/math&amp;gt;, siendo λ el autovalor correspondiente, nos basamos en las similitudes entre a ecuación diferencial de Bessel y nuestro problema de autovalores. &amp;lt;math&amp;gt; R = J_0 (ρλ^{1/2}) &amp;lt;/math&amp;gt; tiene que satisfacer '''(PA)'''. Esto se comprueba sin más que derivar aplicando la regla de la cadena y sustituir en el problema de autovalores, lo que nos proporciona una ecuación diferencial de Bessel de la cual '''R''' ya es solución.&lt;br /&gt;
&lt;br /&gt;
Si &amp;lt;math&amp;gt; φ_k = J_0 (ρλ^{1/2}) &amp;lt;/math&amp;gt; son las autofunciones del problema que nos ocupa, siendo λ los autovalores, los ceros de la función de Bessel se relacionan con los autovalores de la siguiente forma:&lt;br /&gt;
&amp;lt;math&amp;gt; φ_k (6)=0 \\ J_0 (6·λ^{1/2})=0 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Esto sucede si &amp;lt;math&amp;gt; 6·λ^{1/2} &amp;lt;/math&amp;gt; es un cero de la función de Bessel. Por tanto, si llamamos '''&amp;lt;math&amp;gt; r_0 &amp;lt;/math&amp;gt;''' a las raíces de la función de Bessel, obtenemos la relación:&lt;br /&gt;
&amp;lt;math&amp;gt; r_0 = 6·λ^{1/2} &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Autovalores y autofunciones ===&lt;br /&gt;
&lt;br /&gt;
'''Autovalores'''&lt;br /&gt;
&lt;br /&gt;
Una vez demostrado que las autofunciones de '''(P)''' son de la forma &amp;lt;math&amp;gt; φ_k = J_0 (ρλ^{1/2}) &amp;lt;/math&amp;gt;, para calcular los cinco primeros autovalores utilizaremos la relación anterior e implementaremos un pequeño cálculo vectorial en Matlab.&lt;br /&gt;
&lt;br /&gt;
Tomamos como condición &amp;lt;math&amp;gt; φ_k (6)=0 &amp;lt;/math&amp;gt;, obtenemos la relación &amp;lt;math&amp;gt; r_0 = 6·λ^{1/2} &amp;lt;/math&amp;gt; y utilizamos los valores de los cinco primeros ceros de la función de Bessel dados. Así, tenemos:&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
%Cálculo vectorial para la obtención de los 5 primeros autovalores de (P)&lt;br /&gt;
r0=[2.4048,5.5201,8.6537,11.7915,14.9309]; %Vector de ceros de la función de Bessel&lt;br /&gt;
A=r0.^2/36 %Vector de autovalores&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
Los resultados que obtenemos son:&lt;br /&gt;
'''&amp;lt;math&amp;gt; λ_1 = 0.1606, λ_2=0.8464, λ_3=2.0802, λ_4=3.8622, λ_5=6.1925 &amp;lt;/math&amp;gt;'''&lt;br /&gt;
&lt;br /&gt;
'''Autofunciones'''&lt;br /&gt;
&lt;br /&gt;
Para obtener la gráfica con las primeras cinco autofunciones, utilizaremos la función '''besselj''' de Matlab. '''J=besselj(nu,Z)''' computa la función de Bessel de orden nu (en nuestro caso, nu=0) para cada elemento del vector Z (en nuestro caso, el vector de &amp;lt;math&amp;gt; ρλ^{1/2} &amp;lt;/math&amp;gt;). Programando en Matlab, obtenemos los siguientes resultados:&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
%Datos del problema&lt;br /&gt;
clear all&lt;br /&gt;
a=0; b=6;&lt;br /&gt;
r0=[2.4048,5.5201,8.6537,11.7915,14.9309]; %Vector de ceros de la función de Bessel&lt;br /&gt;
A=r0.^2/36; %Vector de autovalores&lt;br /&gt;
K=5; %Número de autovalores y autofunciones buscadas&lt;br /&gt;
%Datos de la discretización&lt;br /&gt;
h=0.1;&lt;br /&gt;
N=(b-a)/h;&lt;br /&gt;
%Vector de radios&lt;br /&gt;
p=a:h:b;&lt;br /&gt;
%Matriz de ceros de la función de Bessel y matriz de autofunciones&lt;br /&gt;
J=zeros(N,K);&lt;br /&gt;
z=zeros(N,K);&lt;br /&gt;
%Inicialización de las matrices&lt;br /&gt;
j0=besselj(0,0);&lt;br /&gt;
J(:,1)=j0;&lt;br /&gt;
z0=0;&lt;br /&gt;
z(:,1)=z0;&lt;br /&gt;
for k=1:K&lt;br /&gt;
    for i=1:N&lt;br /&gt;
        z(i,k)=(p(1,i))'*sqrt(A(k));&lt;br /&gt;
        J(i,k)=besselj(0,z(i,k));&lt;br /&gt;
    end&lt;br /&gt;
end&lt;br /&gt;
%Representación gráfica de las autofunciones J&lt;br /&gt;
plot (J)&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:AutofuncionesGraph.jpg]]&lt;br /&gt;
&lt;br /&gt;
=== Resolución por el método de Fourier ===&lt;br /&gt;
&lt;br /&gt;
Por último, aproximaremos la solución de la ecuación del calor utilizando cinco términos del desarrollo de Fourier cuando el dato inicial es &amp;lt;math&amp;gt; u(ρ,0)=-log \frac{|ρ+0.1|}{6.1} &amp;lt;/math&amp;gt;. Ensayamos con soluciones de la forma:: &amp;lt;math&amp;gt; u(ρ,t)= T_k(t)φ_k(ρ)\\ k=1,2,3,4,5 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Debe satisfacer la condición inicial del problema:: &amp;lt;math&amp;gt; u(ρ,0)= T_k(0)J_0(ρλ_k^{1/2}) =-log \frac{|ρ+0.1|}{6.1} &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
De la serie de Fourier de &amp;lt;math&amp;gt; h(ρ)=-log \frac{|ρ+0.1|}{6.1} &amp;lt;/math&amp;gt;, obtenemos la expresión de los coeficientes de Fourier que se utilizará para programar en Matlab. En ella, tendremos en cuenta que, al tratarse de funciones de Bessel, las autofuciones son ortogonales respecto al producto escalar.&lt;br /&gt;
&lt;br /&gt;
El programa de Matlab para obtener la solución de la ecuación del calor por el método de Fourier es:&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
a=0; b=6;&lt;br /&gt;
r0=[2.4048,5.5201,8.6537,11.7915,14.9309]; %Vector de ceros de la función de Bessel&lt;br /&gt;
A=r0.^2/36; %Vector de autovalores&lt;br /&gt;
K=5; %Número de autovalores y autofunciones buscadas&lt;br /&gt;
%Datos de la discretización&lt;br /&gt;
h=0.1;&lt;br /&gt;
N=(b-a)/h;&lt;br /&gt;
%Vector de radios&lt;br /&gt;
p=a:h:b;&lt;br /&gt;
%Matriz de ceros de la función de Bessel y matriz de autofunciones&lt;br /&gt;
J=zeros(N,K);&lt;br /&gt;
z=zeros(N,K);&lt;br /&gt;
%Inicialización de las matrices&lt;br /&gt;
j0=besselj(0,0);&lt;br /&gt;
J(:,1)=j0;&lt;br /&gt;
z0=0;&lt;br /&gt;
z(:,1)=z0;&lt;br /&gt;
%Matriz de soluciones&lt;br /&gt;
U=0;&lt;br /&gt;
%Mallado en el tiempo&lt;br /&gt;
t0=0; tf=2;&lt;br /&gt;
m=0.1; %Longitud de paso&lt;br /&gt;
t=t0:m:tf;&lt;br /&gt;
[Mp,Mt]=meshgrid(p,t);&lt;br /&gt;
%Bucle&lt;br /&gt;
for k=1:K&lt;br /&gt;
    for i=1:N&lt;br /&gt;
        z(i,k)=(p(1,i))'*sqrt(A(k));&lt;br /&gt;
        J(i,k)=besselj(0,z(i,k));&lt;br /&gt;
        h=-log((abs(p(1,i)+0.1))/6.1); %Vector de condiciones iniciales&lt;br /&gt;
        ck=trapz(p,(p').*h.*J(i,k))/trapz(p,(p').*J(i,k).*J(i,k)); %Coeficientes de Fourier&lt;br /&gt;
        U=U+ck*exp(-A(k)*Mt).*J(i,k); &lt;br /&gt;
    end&lt;br /&gt;
end&lt;br /&gt;
%Representación gráfica de la solución obtenida&lt;br /&gt;
mesh(Mp,Mt,U)&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
La gráfica obtenida es la siguiente:&lt;br /&gt;
&lt;br /&gt;
[[Archivo:FourierGraph.jpg|centro]]&lt;br /&gt;
&lt;br /&gt;
[[Categoría:Ecuaciones Diferenciales]]&lt;br /&gt;
[[Categoría:ED13/14]]&lt;br /&gt;
[[Categoría:Trabajos 2013-14]]&lt;/div&gt;</summary>
		<author><name>Toni Villa</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Archivo:MayorTP3.jpg&amp;diff=13595</id>
		<title>Archivo:MayorTP3.jpg</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Archivo:MayorTP3.jpg&amp;diff=13595"/>
				<updated>2014-05-22T09:45:34Z</updated>
		
		<summary type="html">&lt;p&gt;Toni Villa: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>Toni Villa</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Archivo:MayorT.jpg&amp;diff=13594</id>
		<title>Archivo:MayorT.jpg</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Archivo:MayorT.jpg&amp;diff=13594"/>
				<updated>2014-05-22T09:45:13Z</updated>
		
		<summary type="html">&lt;p&gt;Toni Villa: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>Toni Villa</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Ecuaci%C3%B3n_del_calor_en_una_placa_en_forma_de_anillo&amp;diff=13024</id>
		<title>Ecuación del calor en una placa en forma de anillo</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Ecuaci%C3%B3n_del_calor_en_una_placa_en_forma_de_anillo&amp;diff=13024"/>
				<updated>2014-05-19T19:48:59Z</updated>
		
		<summary type="html">&lt;p&gt;Toni Villa: /* Tiempos grandes (estado estacionario) */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{ TrabajoED | Ecuación del calor en una placa en forma de anillo. Grupo 6B | [[:Categoría:Ecuaciones Diferenciales|Ecuaciones Diferenciales]]|[[:Categoría:ED13/14|Curso 2013-14]] | Elisabet Sánchez López, Ana Santos Martín, Isabel Sastre Furones, Ángel Antonio Villa Figueroa }}&lt;br /&gt;
&lt;br /&gt;
{{ beta }}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Introducción ==&lt;br /&gt;
Tenemos una placa plana en forma de anillo. Vamos a trabajar en coordenadas polares en el plano y sabemos que la placa está comprendida entre los radios ρ=1 y ρ=6 y cuya temperatura inicial viene definida por la función u(ρ,0):&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\left\{\begin{matrix}100(ρ-1)   ………   ρ ∈ [1, 2] \\100     ………  ρ ∈ [2, 5]\\90(6-ρ)+10  ………  ρ ∈ [5, 6]\end{matrix}\right.&amp;lt;/math&amp;gt;&lt;br /&gt;
                                                                           &lt;br /&gt;
Si colocamos en los extremos interior ρ=1 y exterior ρ=6 objetos a una temperatura constante de 0 y 10 grados respectivamente, es decir, las condiciones de frontera serán:            &lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\left\{\begin{matrix}u(1,t)=0 \\u(6,t)=10\end{matrix}\right.&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; u_t-\Delta u= u_t- \frac{\partial^2 u }{\partial ρ^2} -\frac{1 }{ρ} \frac{\partial u }{\partial ρ}-\frac{1 }{ρ^2} \frac{\partial^2 u }{\partial θ^2}= u_t- \frac{\partial^2 u }{\partial ρ^2} -\frac{1 }{ρ} \frac{\partial u }{\partial ρ} = 0 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Así la ecuación queda de la siguiente manera:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; u_t-\frac{1 }{ρ} u_ρ - u_(ρρ) = 0 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Suponiendo que la temperatura u de la placa únicamente depende de la coordenada radial y del tiempo, es decir, u=u(ρ,t) y sabiendo que satisface la ecuación del calor &amp;lt;math&amp;gt; u_t-\Delta u=0&amp;lt;/math&amp;gt; , vamos a plantear el sistema de ecuaciones que satisface u(ρ,t) en coordenadas polares:&lt;br /&gt;
&lt;br /&gt;
== Método de diferencias finitas con el método del Trapecio ==&lt;br /&gt;
&lt;br /&gt;
Tomamos los pasos de discretización del espacio &amp;lt;math&amp;gt; \Delta ρ=0.1&amp;lt;/math&amp;gt; y del tiempo &amp;lt;math&amp;gt; \Delta t=(\Delta ρ/4)&amp;lt;/math&amp;gt; en t ∈ [0; 10]&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=    &lt;br /&gt;
%Datos&lt;br /&gt;
      a=1;b=6;h=0.1; ya=0;yb=10;&lt;br /&gt;
      N=(b-a)/h; dt=h/4;&lt;br /&gt;
      r=[a:h:b]'; rr=[a+h:h:b-h]';&lt;br /&gt;
      &lt;br /&gt;
%Defino K1:&lt;br /&gt;
      K1=diag(ones(1,N-1)*2)+diag(ones(1,N-2)*(-1),-1)+diag(ones(1,N-2)*(-1),1);&lt;br /&gt;
      K1=K1*(1/h^2);&lt;br /&gt;
      &lt;br /&gt;
%Defino K2:&lt;br /&gt;
      K2=diag(ones(N-2,1)*(-1),1)+diag(ones(N-2,1),-1);&lt;br /&gt;
      K2=(1/h^2)*K2;&lt;br /&gt;
      M=diag(1./rr);&lt;br /&gt;
      K2=M*K2;&lt;br /&gt;
     &lt;br /&gt;
      T0=0;TF=10;&lt;br /&gt;
      t=T0&lt;br /&gt;
      &lt;br /&gt;
%Defino la malla:&lt;br /&gt;
      [R,T]=meshgrid(r,t);&lt;br /&gt;
      &lt;br /&gt;
%Defino F:&lt;br /&gt;
      F=zeros(1,N-1)&lt;br /&gt;
      F(end)=F(end)+10/(h^2)+10/(2*5.9*h);        %(donde (b-h)=5.9)&lt;br /&gt;
     &lt;br /&gt;
%Condición inicial:&lt;br /&gt;
      for i=1:length(rr)&lt;br /&gt;
            if rr(i)&amp;lt;2&lt;br /&gt;
            U(i)=100*(rr(i)-1);&lt;br /&gt;
            elseif rr(i)&amp;lt;5&lt;br /&gt;
            U(i)=100;&lt;br /&gt;
            else&lt;br /&gt;
            U(i)=90*(6-rr(i))+10;&lt;br /&gt;
            end&lt;br /&gt;
      end&lt;br /&gt;
      sol(1,:)=[0,U,10]; &lt;br /&gt;
 &lt;br /&gt;
%Método del trapecio:&lt;br /&gt;
      for m=1:length(t)-1&lt;br /&gt;
            Z=U'+(dt/2)*(-(K1+K2)*U'+F');&lt;br /&gt;
            W=eye(N-1)+(dt/2)*(K1+K2);&lt;br /&gt;
            W=W\Z;&lt;br /&gt;
            sol(m+1,:)=[0,W',10];&lt;br /&gt;
            U=W'&lt;br /&gt;
      end&lt;br /&gt;
      &lt;br /&gt;
%dibujo&lt;br /&gt;
      surf(R,T,sol)&lt;br /&gt;
}}&lt;br /&gt;
[[Archivo:imagentrapecio.jpg|marco|centro|Superficie temperatura en el eje radial  ρ ∈ [1,6] en el intervalo de tiempo]]&lt;br /&gt;
&lt;br /&gt;
Como se puede observar la temperatura va disminuyendo hasta alcanzar valores casi constantes a lo largo del tiempo. En el centro(del eje radial)se ve un descenso mas brusco debido a que la temperatura inicial es mas alta y en los extremos se mantiene el mismo valor. Por lo tanto existe un enfriamiento de la placa, sobre todo en la parte central hasta unos valores constantes de temperatura(0 en p=1, 10 en p=6 y entre 0-10 en p ∈ (1,6)).&lt;br /&gt;
&lt;br /&gt;
== Temperatura en ρ=3 ==&lt;br /&gt;
Partiendo del programa anterior queremos ahora dibujar el comportamiento de la temperatura en los puntos para los cuales ρ = 3 en una gráfica 2D temperatura/tiempo:&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
&lt;br /&gt;
%Cálculo del punto N que corresponde a ρ=3&lt;br /&gt;
N3=(3-a)/h+1;&lt;br /&gt;
&lt;br /&gt;
%Dibujo&lt;br /&gt;
plot(sol(:,N3),t)&lt;br /&gt;
&lt;br /&gt;
}}&lt;br /&gt;
[[Archivo:imagenP3.jpg|marco|centro|Temperatura en los puntos de la corona �ρ = 3]]&lt;br /&gt;
&lt;br /&gt;
Viene a demostrar lo dicho en el anterior apartado pero se puede ver de forma mucho mas clara para p=3, que existe un enfriamiento en la corona llegando a una temperatura entre los 0 y 10 º.&lt;br /&gt;
&lt;br /&gt;
== Euler explícito, implícito y modificado ==&lt;br /&gt;
Como los datos son los mismos que los usados en el método de diferencias finitas del trapecio, no vamos a volver a repetir los datos puesto que son los mismos y lo único que cambia es el método utilizado.&lt;br /&gt;
&lt;br /&gt;
Euler explícito:&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
&lt;br /&gt;
%Método de Euler explícito&lt;br /&gt;
for m=1:length(t)-1&lt;br /&gt;
    Z=U'+(dt)*(-(K1+K2)*U'+F');&lt;br /&gt;
    sol(m+1,:)=[0,Z',10];&lt;br /&gt;
    U=Z';&lt;br /&gt;
end       &lt;br /&gt;
&lt;br /&gt;
surf(R,T,sol)&lt;br /&gt;
}}&lt;br /&gt;
[[Archivo:imageneuler.jpg|marco|centro|]]&lt;br /&gt;
&lt;br /&gt;
La explicación a esta gráfica resultante es que como el método es explícito, el sistema es inestable y significa que el paso tomado es grande, por eso tiene los límites muy elevados. &lt;br /&gt;
&lt;br /&gt;
Euler implícito:&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
%Método de Euler implícito:&lt;br /&gt;
          for m=1:length(t)-1 &lt;br /&gt;
                Z=U'+dt*(F');&lt;br /&gt;
                W=eye(N-1)+dt*(K1+K2);&lt;br /&gt;
                W=W\Z;&lt;br /&gt;
                sol(m+1,:)=[0,W',10]&lt;br /&gt;
                U=W';&lt;br /&gt;
          end&lt;br /&gt;
}}&lt;br /&gt;
[[Archivo:imageneimp.jpg|marco|centro|]]&lt;br /&gt;
&lt;br /&gt;
Sale una superficie muy parecida a la que salia con el metodo del trapecio.&lt;br /&gt;
&lt;br /&gt;
Euler modificado:&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
%Método de Euler modificado:&lt;br /&gt;
          for m=1:length(t)-1&lt;br /&gt;
               M1=-(K1+K2)*U'+F';&lt;br /&gt;
               M2=-(K1+K2)*(U'+M1*dt)+F';&lt;br /&gt;
               W=U'+(dt/2)*(M1+M2);&lt;br /&gt;
               sol(m+1,:)=[0,W',10];&lt;br /&gt;
               U=W':&lt;br /&gt;
          end&lt;br /&gt;
}}&lt;br /&gt;
[[Archivo:imagenemod.jpg|marco|centro|]]&lt;br /&gt;
&lt;br /&gt;
En este caso ocurre lo mismo que en el anterior caso de inestabilidad.&lt;br /&gt;
&lt;br /&gt;
== Tiempos grandes (estado estacionario) ==&lt;br /&gt;
&lt;br /&gt;
El sistema a resolver para tiempos grandes queda de la siguiente manera:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\left\{\begin{matrix} -\frac{1 }{ρ} u_ρ - u_(ρρ) = 0 \\ u(1)=0 ;u(6)=10\end{matrix}\right.&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
El paso que se toma es de 0.1 y 0.01&lt;br /&gt;
&lt;br /&gt;
Que se puede resolver como se hacía en el tema 2 al tratarse de un problema de contorno.&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
&lt;br /&gt;
%datos&lt;br /&gt;
   a=1;b=6;ya=0;yb=10;&lt;br /&gt;
   h=[0.1,0.01];&lt;br /&gt;
   color='rg'&lt;br /&gt;
%Para que me salgan ambas soluciones en la misma grafica&lt;br /&gt;
   hold on&lt;br /&gt;
 for i=1:2&lt;br /&gt;
   N=(b-a)/h(i); r=[a:h(i):b]';rr=[a+h(i):h(i):b-h(i)]';&lt;br /&gt;
   K1=1/h(i)^2*(2*diag(ones(N-1,1))-diag(ones(N-2,1),1)-diag(ones(N-2,1),-1));&lt;br /&gt;
   K2=1/(2*h(i))*( diag(ones(N-2,1),-1)-diag(ones(N-2,1),1) );&lt;br /&gt;
   M=diag(1./rr);&lt;br /&gt;
   K2=M*K2;&lt;br /&gt;
   F=zeros(1,N-1);&lt;br /&gt;
   F(end)=F(end)+10/h(i)^2+10/(2*5.9*h(i));&lt;br /&gt;
   u=(K1+K2)\F';&lt;br /&gt;
   uu=[ya;u;yb];&lt;br /&gt;
   plot(r,uu,color(i));&lt;br /&gt;
 end&lt;br /&gt;
   hold off&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:tgrande.jpg|marco|centro|Distribución de la temperatura para tiempos grandes con ambos pasos]]&lt;br /&gt;
Como se puede ver casi no se aprecia la diferencia entre hacerlo con h=0.1 y h=0.01.&lt;br /&gt;
Ademas, demuestra que da igual que sean tiempos grandes porque para nuestra placa se obtendra un valor dentro del intervalo de tiempo dado y como se habia dicho antes se llegan a valores constantes de temperatura.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:tgrandezoom.jpg|marco|centro|Detalle de la imagen anterior: rojo(0.1) y verde(0.01)]]&lt;br /&gt;
En el zoom se ve como hay una mínima diferencia.&lt;br /&gt;
&lt;br /&gt;
[[Categoría:Ecuaciones Diferenciales]]&lt;br /&gt;
[[Categoría:ED13/14]]&lt;br /&gt;
[[Categoría:Trabajos 2013-14]]&lt;/div&gt;</summary>
		<author><name>Toni Villa</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Ecuaci%C3%B3n_del_calor_en_una_placa_en_forma_de_anillo&amp;diff=13010</id>
		<title>Ecuación del calor en una placa en forma de anillo</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Ecuaci%C3%B3n_del_calor_en_una_placa_en_forma_de_anillo&amp;diff=13010"/>
				<updated>2014-05-19T19:36:18Z</updated>
		
		<summary type="html">&lt;p&gt;Toni Villa: /* Euler explícito, implícito y modificado */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{ TrabajoED | Ecuación del calor en una placa en forma de anillo. Grupo 6B | [[:Categoría:Ecuaciones Diferenciales|Ecuaciones Diferenciales]]|[[:Categoría:ED13/14|Curso 2013-14]] | Elisabet Sánchez López, Ana Santos Martín, Isabel Sastre Furones, Ángel Antonio Villa Figueroa }}&lt;br /&gt;
&lt;br /&gt;
{{ beta }}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Introducción ==&lt;br /&gt;
Tenemos una placa plana en forma de anillo. Vamos a trabajar en coordenadas polares en el plano y sabemos que la placa está comprendida entre los radios ρ=1 y ρ=6 y cuya temperatura inicial viene definida por la función u(ρ,0):&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\left\{\begin{matrix}100(ρ-1)   ………   ρ ∈ [1, 2] \\100     ………  ρ ∈ [2, 5]\\90(6-ρ)+10  ………  ρ ∈ [5, 6]\end{matrix}\right.&amp;lt;/math&amp;gt;&lt;br /&gt;
                                                                           &lt;br /&gt;
Si colocamos en los extremos interior ρ=1 y exterior ρ=6 objetos a una temperatura constante de 0 y 10 grados respectivamente, es decir, las condiciones de frontera serán:            &lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\left\{\begin{matrix}u(1,t)=0 \\u(6,t)=10\end{matrix}\right.&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; u_t-\Delta u= u_t- \frac{\partial^2 u }{\partial ρ^2} -\frac{1 }{ρ} \frac{\partial u }{\partial ρ}-\frac{1 }{ρ^2} \frac{\partial^2 u }{\partial θ^2}= u_t- \frac{\partial^2 u }{\partial ρ^2} -\frac{1 }{ρ} \frac{\partial u }{\partial ρ} = 0 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Así la ecuación queda de la siguiente manera:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; u_t-\frac{1 }{ρ} u_ρ - u_(ρρ) = 0 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Suponiendo que la temperatura u de la placa únicamente depende de la coordenada radial y del tiempo, es decir, u=u(ρ,t) y sabiendo que satisface la ecuación del calor &amp;lt;math&amp;gt; u_t-\Delta u=0&amp;lt;/math&amp;gt; , vamos a plantear el sistema de ecuaciones que satisface u(ρ,t) en coordenadas polares:&lt;br /&gt;
&lt;br /&gt;
== Método de diferencias finitas con el método del Trapecio ==&lt;br /&gt;
&lt;br /&gt;
Tomamos los pasos de discretización del espacio &amp;lt;math&amp;gt; \Delta ρ=0.1&amp;lt;/math&amp;gt; y del tiempo &amp;lt;math&amp;gt; \Delta t=(\Delta ρ/4)&amp;lt;/math&amp;gt; en t ∈ [0; 10]&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=    &lt;br /&gt;
%Datos&lt;br /&gt;
      a=1;b=6;h=0.1; ya=0;yb=10;&lt;br /&gt;
      N=(b-a)/h; dt=h/4;&lt;br /&gt;
      r=[a:h:b]'; rr=[a+h:h:b-h]';&lt;br /&gt;
      &lt;br /&gt;
%Defino K1:&lt;br /&gt;
      K1=diag(ones(1,N-1)*2)+diag(ones(1,N-2)*(-1),-1)+diag(ones(1,N-2)*(-1),1);&lt;br /&gt;
      K1=K1*(1/h^2);&lt;br /&gt;
      &lt;br /&gt;
%Defino K2:&lt;br /&gt;
      K2=diag(ones(N-2,1)*(-1),1)+diag(ones(N-2,1),-1);&lt;br /&gt;
      K2=(1/h^2)*K2;&lt;br /&gt;
      M=diag(1./rr);&lt;br /&gt;
      K2=M*K2;&lt;br /&gt;
     &lt;br /&gt;
      T0=0;TF=10;&lt;br /&gt;
      t=T0&lt;br /&gt;
      &lt;br /&gt;
%Defino la malla:&lt;br /&gt;
      [R,T]=meshgrid(r,t);&lt;br /&gt;
      &lt;br /&gt;
%Defino F:&lt;br /&gt;
      F=zeros(1,N-1)&lt;br /&gt;
      F(end)=F(end)+10/(h^2)+10/(2*5.9*h);        %(donde (b-h)=5.9)&lt;br /&gt;
     &lt;br /&gt;
%Condición inicial:&lt;br /&gt;
      for i=1:length(rr)&lt;br /&gt;
            if rr(i)&amp;lt;2&lt;br /&gt;
            U(i)=100*(rr(i)-1);&lt;br /&gt;
            elseif rr(i)&amp;lt;5&lt;br /&gt;
            U(i)=100;&lt;br /&gt;
            else&lt;br /&gt;
            U(i)=90*(6-rr(i))+10;&lt;br /&gt;
            end&lt;br /&gt;
      end&lt;br /&gt;
      sol(1,:)=[0,U,10]; &lt;br /&gt;
 &lt;br /&gt;
%Método del trapecio:&lt;br /&gt;
      for m=1:length(t)-1&lt;br /&gt;
            Z=U'+(dt/2)*(-(K1+K2)*U'+F');&lt;br /&gt;
            W=eye(N-1)+(dt/2)*(K1+K2);&lt;br /&gt;
            W=W\Z;&lt;br /&gt;
            sol(m+1,:)=[0,W',10];&lt;br /&gt;
            U=W'&lt;br /&gt;
      end&lt;br /&gt;
      &lt;br /&gt;
%dibujo&lt;br /&gt;
      surf(R,T,sol)&lt;br /&gt;
}}&lt;br /&gt;
[[Archivo:imagentrapecio.jpg|marco|centro|Superficie temperatura en el eje radial  ρ ∈ [1,6] en el intervalo de tiempo]]&lt;br /&gt;
&lt;br /&gt;
Como se puede observar la temperatura va disminuyendo hasta alcanzar valores casi constantes a lo largo del tiempo. En el centro(del eje radial)se ve un descenso mas brusco debido a que la temperatura inicial es mas alta y en los extremos se mantiene el mismo valor. Por lo tanto existe un enfriamiento de la placa, sobre todo en la parte central hasta unos valores constantes de temperatura(0 en p=1, 10 en p=6 y entre 0-10 en p ∈ (1,6)).&lt;br /&gt;
&lt;br /&gt;
== Temperatura en ρ=3 ==&lt;br /&gt;
Partiendo del programa anterior queremos ahora dibujar el comportamiento de la temperatura en los puntos para los cuales ρ = 3 en una gráfica 2D temperatura/tiempo:&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
&lt;br /&gt;
%Cálculo del punto N que corresponde a ρ=3&lt;br /&gt;
N3=(3-a)/h+1;&lt;br /&gt;
&lt;br /&gt;
%Dibujo&lt;br /&gt;
plot(sol(:,N3),t)&lt;br /&gt;
&lt;br /&gt;
}}&lt;br /&gt;
[[Archivo:imagenP3.jpg|marco|centro|Temperatura en los puntos de la corona �ρ = 3]]&lt;br /&gt;
&lt;br /&gt;
Viene a demostrar lo dicho en el anterior apartado pero se puede ver de forma mucho mas clara para p=3, que existe un enfriamiento en la corona llegando a una temperatura entre los 0 y 10 º.&lt;br /&gt;
&lt;br /&gt;
== Euler explícito, implícito y modificado ==&lt;br /&gt;
Como los datos son los mismos que los usados en el método de diferencias finitas del trapecio, no vamos a volver a repetir los datos puesto que son los mismos y lo único que cambia es el método utilizado.&lt;br /&gt;
&lt;br /&gt;
Euler explícito:&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
&lt;br /&gt;
%Método de Euler explícito&lt;br /&gt;
for m=1:length(t)-1&lt;br /&gt;
    Z=U'+(dt)*(-(K1+K2)*U'+F');&lt;br /&gt;
    sol(m+1,:)=[0,Z',10];&lt;br /&gt;
    U=Z';&lt;br /&gt;
end       &lt;br /&gt;
&lt;br /&gt;
surf(R,T,sol)&lt;br /&gt;
}}&lt;br /&gt;
[[Archivo:imageneuler.jpg|marco|centro|]]&lt;br /&gt;
&lt;br /&gt;
La explicación a esta gráfica resultante es que como el método es explícito, el sistema es inestable y significa que el paso tomado es grande, por eso tiene los límites muy elevados. &lt;br /&gt;
&lt;br /&gt;
Euler implícito:&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
%Método de Euler implícito:&lt;br /&gt;
          for m=1:length(t)-1 &lt;br /&gt;
                Z=U'+dt*(F');&lt;br /&gt;
                W=eye(N-1)+dt*(K1+K2);&lt;br /&gt;
                W=W\Z;&lt;br /&gt;
                sol(m+1,:)=[0,W',10]&lt;br /&gt;
                U=W';&lt;br /&gt;
          end&lt;br /&gt;
}}&lt;br /&gt;
[[Archivo:imageneimp.jpg|marco|centro|]]&lt;br /&gt;
&lt;br /&gt;
Sale una superficie muy parecida a la que salia con el metodo del trapecio.&lt;br /&gt;
&lt;br /&gt;
Euler modificado:&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
%Método de Euler modificado:&lt;br /&gt;
          for m=1:length(t)-1&lt;br /&gt;
               M1=-(K1+K2)*U'+F';&lt;br /&gt;
               M2=-(K1+K2)*(U'+M1*dt)+F';&lt;br /&gt;
               W=U'+(dt/2)*(M1+M2);&lt;br /&gt;
               sol(m+1,:)=[0,W',10];&lt;br /&gt;
               U=W':&lt;br /&gt;
          end&lt;br /&gt;
}}&lt;br /&gt;
[[Archivo:imagenemod.jpg|marco|centro|]]&lt;br /&gt;
&lt;br /&gt;
En este caso ocurre lo mismo que en el anterior caso de inestabilidad.&lt;br /&gt;
&lt;br /&gt;
== Tiempos grandes (estado estacionario) ==&lt;br /&gt;
&lt;br /&gt;
El sistema a resolver para tiempos grandes queda de la siguiente manera:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\left\{\begin{matrix} -\frac{1 }{ρ} u_ρ - u_(ρρ) = 0 \\ u(1)=0 ;u(6)=10\end{matrix}\right.&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
El paso que se toma es de 0.1 y 0.01&lt;br /&gt;
&lt;br /&gt;
Que se puede resolver como se hacía en el tema 2 al tratarse de un problema de contorno.&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
&lt;br /&gt;
%datos&lt;br /&gt;
   a=1;b=6;ya=0;yb=10;&lt;br /&gt;
   h=[0.1,0.01];&lt;br /&gt;
   color='rg'&lt;br /&gt;
%Para que me salgan ambas soluciones en la misma grafica&lt;br /&gt;
   hold on&lt;br /&gt;
 for i=1:2&lt;br /&gt;
   N=(b-a)/h(i); r=[a:h(i):b]';rr=[a+h(i):h(i):b-h(i)]';&lt;br /&gt;
   K1=1/h(i)^2*(2*diag(ones(N-1,1))-diag(ones(N-2,1),1)-diag(ones(N-2,1),-1));&lt;br /&gt;
   K2=1/(2*h(i))*( diag(ones(N-2,1),-1)-diag(ones(N-2,1),1) );&lt;br /&gt;
   M=diag(1./rr);&lt;br /&gt;
   K2=M*K2;&lt;br /&gt;
   F=zeros(1,N-1);&lt;br /&gt;
   F(end)=F(end)+10/h(i)^2+10/(2*5.9*h(i));&lt;br /&gt;
   u=(K1+K2)\F';&lt;br /&gt;
   uu=[ya;u;yb];&lt;br /&gt;
   plot(r,uu,color(i));&lt;br /&gt;
 end&lt;br /&gt;
   hold off&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:tgrande.jpg|marco|centro|Distribución de la temperatura para tiempos grandes con ambos pasos]]&lt;br /&gt;
Como se puede ver casi no se aprecia la diferencia entre hacerlo con h=0.1 y h=0.01&lt;br /&gt;
&lt;br /&gt;
[[Archivo:tgrandezoom.jpg|marco|centro|Detalle de la imagen anterior: rojo(0.1) y verde(0.01)]]&lt;br /&gt;
Se observa como hay una mínima diferencia.&lt;br /&gt;
&lt;br /&gt;
[[Categoría:Ecuaciones Diferenciales]]&lt;br /&gt;
[[Categoría:ED13/14]]&lt;br /&gt;
[[Categoría:Trabajos 2013-14]]&lt;/div&gt;</summary>
		<author><name>Toni Villa</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Ecuaci%C3%B3n_del_calor_en_una_placa_en_forma_de_anillo&amp;diff=13007</id>
		<title>Ecuación del calor en una placa en forma de anillo</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Ecuaci%C3%B3n_del_calor_en_una_placa_en_forma_de_anillo&amp;diff=13007"/>
				<updated>2014-05-19T19:33:42Z</updated>
		
		<summary type="html">&lt;p&gt;Toni Villa: /* Temperatura en ρ=3 */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{ TrabajoED | Ecuación del calor en una placa en forma de anillo. Grupo 6B | [[:Categoría:Ecuaciones Diferenciales|Ecuaciones Diferenciales]]|[[:Categoría:ED13/14|Curso 2013-14]] | Elisabet Sánchez López, Ana Santos Martín, Isabel Sastre Furones, Ángel Antonio Villa Figueroa }}&lt;br /&gt;
&lt;br /&gt;
{{ beta }}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Introducción ==&lt;br /&gt;
Tenemos una placa plana en forma de anillo. Vamos a trabajar en coordenadas polares en el plano y sabemos que la placa está comprendida entre los radios ρ=1 y ρ=6 y cuya temperatura inicial viene definida por la función u(ρ,0):&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\left\{\begin{matrix}100(ρ-1)   ………   ρ ∈ [1, 2] \\100     ………  ρ ∈ [2, 5]\\90(6-ρ)+10  ………  ρ ∈ [5, 6]\end{matrix}\right.&amp;lt;/math&amp;gt;&lt;br /&gt;
                                                                           &lt;br /&gt;
Si colocamos en los extremos interior ρ=1 y exterior ρ=6 objetos a una temperatura constante de 0 y 10 grados respectivamente, es decir, las condiciones de frontera serán:            &lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\left\{\begin{matrix}u(1,t)=0 \\u(6,t)=10\end{matrix}\right.&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; u_t-\Delta u= u_t- \frac{\partial^2 u }{\partial ρ^2} -\frac{1 }{ρ} \frac{\partial u }{\partial ρ}-\frac{1 }{ρ^2} \frac{\partial^2 u }{\partial θ^2}= u_t- \frac{\partial^2 u }{\partial ρ^2} -\frac{1 }{ρ} \frac{\partial u }{\partial ρ} = 0 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Así la ecuación queda de la siguiente manera:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; u_t-\frac{1 }{ρ} u_ρ - u_(ρρ) = 0 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Suponiendo que la temperatura u de la placa únicamente depende de la coordenada radial y del tiempo, es decir, u=u(ρ,t) y sabiendo que satisface la ecuación del calor &amp;lt;math&amp;gt; u_t-\Delta u=0&amp;lt;/math&amp;gt; , vamos a plantear el sistema de ecuaciones que satisface u(ρ,t) en coordenadas polares:&lt;br /&gt;
&lt;br /&gt;
== Método de diferencias finitas con el método del Trapecio ==&lt;br /&gt;
&lt;br /&gt;
Tomamos los pasos de discretización del espacio &amp;lt;math&amp;gt; \Delta ρ=0.1&amp;lt;/math&amp;gt; y del tiempo &amp;lt;math&amp;gt; \Delta t=(\Delta ρ/4)&amp;lt;/math&amp;gt; en t ∈ [0; 10]&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=    &lt;br /&gt;
%Datos&lt;br /&gt;
      a=1;b=6;h=0.1; ya=0;yb=10;&lt;br /&gt;
      N=(b-a)/h; dt=h/4;&lt;br /&gt;
      r=[a:h:b]'; rr=[a+h:h:b-h]';&lt;br /&gt;
      &lt;br /&gt;
%Defino K1:&lt;br /&gt;
      K1=diag(ones(1,N-1)*2)+diag(ones(1,N-2)*(-1),-1)+diag(ones(1,N-2)*(-1),1);&lt;br /&gt;
      K1=K1*(1/h^2);&lt;br /&gt;
      &lt;br /&gt;
%Defino K2:&lt;br /&gt;
      K2=diag(ones(N-2,1)*(-1),1)+diag(ones(N-2,1),-1);&lt;br /&gt;
      K2=(1/h^2)*K2;&lt;br /&gt;
      M=diag(1./rr);&lt;br /&gt;
      K2=M*K2;&lt;br /&gt;
     &lt;br /&gt;
      T0=0;TF=10;&lt;br /&gt;
      t=T0&lt;br /&gt;
      &lt;br /&gt;
%Defino la malla:&lt;br /&gt;
      [R,T]=meshgrid(r,t);&lt;br /&gt;
      &lt;br /&gt;
%Defino F:&lt;br /&gt;
      F=zeros(1,N-1)&lt;br /&gt;
      F(end)=F(end)+10/(h^2)+10/(2*5.9*h);        %(donde (b-h)=5.9)&lt;br /&gt;
     &lt;br /&gt;
%Condición inicial:&lt;br /&gt;
      for i=1:length(rr)&lt;br /&gt;
            if rr(i)&amp;lt;2&lt;br /&gt;
            U(i)=100*(rr(i)-1);&lt;br /&gt;
            elseif rr(i)&amp;lt;5&lt;br /&gt;
            U(i)=100;&lt;br /&gt;
            else&lt;br /&gt;
            U(i)=90*(6-rr(i))+10;&lt;br /&gt;
            end&lt;br /&gt;
      end&lt;br /&gt;
      sol(1,:)=[0,U,10]; &lt;br /&gt;
 &lt;br /&gt;
%Método del trapecio:&lt;br /&gt;
      for m=1:length(t)-1&lt;br /&gt;
            Z=U'+(dt/2)*(-(K1+K2)*U'+F');&lt;br /&gt;
            W=eye(N-1)+(dt/2)*(K1+K2);&lt;br /&gt;
            W=W\Z;&lt;br /&gt;
            sol(m+1,:)=[0,W',10];&lt;br /&gt;
            U=W'&lt;br /&gt;
      end&lt;br /&gt;
      &lt;br /&gt;
%dibujo&lt;br /&gt;
      surf(R,T,sol)&lt;br /&gt;
}}&lt;br /&gt;
[[Archivo:imagentrapecio.jpg|marco|centro|Superficie temperatura en el eje radial  ρ ∈ [1,6] en el intervalo de tiempo]]&lt;br /&gt;
&lt;br /&gt;
Como se puede observar la temperatura va disminuyendo hasta alcanzar valores casi constantes a lo largo del tiempo. En el centro(del eje radial)se ve un descenso mas brusco debido a que la temperatura inicial es mas alta y en los extremos se mantiene el mismo valor. Por lo tanto existe un enfriamiento de la placa, sobre todo en la parte central hasta unos valores constantes de temperatura(0 en p=1, 10 en p=6 y entre 0-10 en p ∈ (1,6)).&lt;br /&gt;
&lt;br /&gt;
== Temperatura en ρ=3 ==&lt;br /&gt;
Partiendo del programa anterior queremos ahora dibujar el comportamiento de la temperatura en los puntos para los cuales ρ = 3 en una gráfica 2D temperatura/tiempo:&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
&lt;br /&gt;
%Cálculo del punto N que corresponde a ρ=3&lt;br /&gt;
N3=(3-a)/h+1;&lt;br /&gt;
&lt;br /&gt;
%Dibujo&lt;br /&gt;
plot(sol(:,N3),t)&lt;br /&gt;
&lt;br /&gt;
}}&lt;br /&gt;
[[Archivo:imagenP3.jpg|marco|centro|Temperatura en los puntos de la corona �ρ = 3]]&lt;br /&gt;
&lt;br /&gt;
Viene a demostrar lo dicho en el anterior apartado pero se puede ver de forma mucho mas clara para p=3, que existe un enfriamiento en la corona llegando a una temperatura entre los 0 y 10 º.&lt;br /&gt;
&lt;br /&gt;
== Euler explícito, implícito y modificado ==&lt;br /&gt;
Como los datos son los mismos que los usados en el método de diferencias finitas del trapecio, no vamos a volver a repetir los datos puesto que son los mismos y lo único que cambia es el método utilizado.&lt;br /&gt;
&lt;br /&gt;
Euler explícito:&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
&lt;br /&gt;
%Método de Euler explícito&lt;br /&gt;
for m=1:length(t)-1&lt;br /&gt;
    Z=U'+(dt)*(-(K1+K2)*U'+F');&lt;br /&gt;
    sol(m+1,:)=[0,Z',10];&lt;br /&gt;
    U=Z';&lt;br /&gt;
end       &lt;br /&gt;
&lt;br /&gt;
surf(R,T,sol)&lt;br /&gt;
}}&lt;br /&gt;
[[Archivo:imageneuler.jpg|marco|centro|]]&lt;br /&gt;
i&lt;br /&gt;
&lt;br /&gt;
La explicación a esta gráfica resultante es que como el método es explícito, el sistema es inestable y significa que el paso tomado es grande, por eso tiene los límites muy elevados. &lt;br /&gt;
&lt;br /&gt;
Euler implícito:&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
%Método de Euler implícito:&lt;br /&gt;
          for m=1:length(t)-1 &lt;br /&gt;
                Z=U'+dt*(F');&lt;br /&gt;
                W=eye(N-1)+dt*(K1+K2);&lt;br /&gt;
                W=W\Z;&lt;br /&gt;
                sol(m+1,:)=[0,W',10]&lt;br /&gt;
                U=W';&lt;br /&gt;
          end&lt;br /&gt;
}}&lt;br /&gt;
[[Archivo:imageneimp.jpg|marco|centro|]]&lt;br /&gt;
i&lt;br /&gt;
&lt;br /&gt;
Euler modificado:&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
%Método de Euler modificado:&lt;br /&gt;
          for m=1:length(t)-1&lt;br /&gt;
               M1=-(K1+K2)*U'+F';&lt;br /&gt;
               M2=-(K1+K2)*(U'+M1*dt)+F';&lt;br /&gt;
               W=U'+(dt/2)*(M1+M2);&lt;br /&gt;
               sol(m+1,:)=[0,W',10];&lt;br /&gt;
               U=W':&lt;br /&gt;
          end&lt;br /&gt;
}}&lt;br /&gt;
[[Archivo:imagenemod.jpg|marco|centro|]]&lt;br /&gt;
i&lt;br /&gt;
&lt;br /&gt;
En este caso ocurre lo mismo que en el anterior caso.&lt;br /&gt;
&lt;br /&gt;
== Tiempos grandes (estado estacionario) ==&lt;br /&gt;
&lt;br /&gt;
El sistema a resolver para tiempos grandes queda de la siguiente manera:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\left\{\begin{matrix} -\frac{1 }{ρ} u_ρ - u_(ρρ) = 0 \\ u(1)=0 ;u(6)=10\end{matrix}\right.&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
El paso que se toma es de 0.1 y 0.01&lt;br /&gt;
&lt;br /&gt;
Que se puede resolver como se hacía en el tema 2 al tratarse de un problema de contorno.&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
&lt;br /&gt;
%datos&lt;br /&gt;
   a=1;b=6;ya=0;yb=10;&lt;br /&gt;
   h=[0.1,0.01];&lt;br /&gt;
   color='rg'&lt;br /&gt;
%Para que me salgan ambas soluciones en la misma grafica&lt;br /&gt;
   hold on&lt;br /&gt;
 for i=1:2&lt;br /&gt;
   N=(b-a)/h(i); r=[a:h(i):b]';rr=[a+h(i):h(i):b-h(i)]';&lt;br /&gt;
   K1=1/h(i)^2*(2*diag(ones(N-1,1))-diag(ones(N-2,1),1)-diag(ones(N-2,1),-1));&lt;br /&gt;
   K2=1/(2*h(i))*( diag(ones(N-2,1),-1)-diag(ones(N-2,1),1) );&lt;br /&gt;
   M=diag(1./rr);&lt;br /&gt;
   K2=M*K2;&lt;br /&gt;
   F=zeros(1,N-1);&lt;br /&gt;
   F(end)=F(end)+10/h(i)^2+10/(2*5.9*h(i));&lt;br /&gt;
   u=(K1+K2)\F';&lt;br /&gt;
   uu=[ya;u;yb];&lt;br /&gt;
   plot(r,uu,color(i));&lt;br /&gt;
 end&lt;br /&gt;
   hold off&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:tgrande.jpg|marco|centro|Distribución de la temperatura para tiempos grandes con ambos pasos]]&lt;br /&gt;
Como se puede ver casi no se aprecia la diferencia entre hacerlo con h=0.1 y h=0.01&lt;br /&gt;
&lt;br /&gt;
[[Archivo:tgrandezoom.jpg|marco|centro|Detalle de la imagen anterior: rojo(0.1) y verde(0.01)]]&lt;br /&gt;
Se observa como hay una mínima diferencia.&lt;br /&gt;
&lt;br /&gt;
[[Categoría:Ecuaciones Diferenciales]]&lt;br /&gt;
[[Categoría:ED13/14]]&lt;br /&gt;
[[Categoría:Trabajos 2013-14]]&lt;/div&gt;</summary>
		<author><name>Toni Villa</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Ecuaci%C3%B3n_del_calor_en_una_placa_en_forma_de_anillo&amp;diff=13004</id>
		<title>Ecuación del calor en una placa en forma de anillo</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Ecuaci%C3%B3n_del_calor_en_una_placa_en_forma_de_anillo&amp;diff=13004"/>
				<updated>2014-05-19T19:32:11Z</updated>
		
		<summary type="html">&lt;p&gt;Toni Villa: /* Temperatura en ρ=3 */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{ TrabajoED | Ecuación del calor en una placa en forma de anillo. Grupo 6B | [[:Categoría:Ecuaciones Diferenciales|Ecuaciones Diferenciales]]|[[:Categoría:ED13/14|Curso 2013-14]] | Elisabet Sánchez López, Ana Santos Martín, Isabel Sastre Furones, Ángel Antonio Villa Figueroa }}&lt;br /&gt;
&lt;br /&gt;
{{ beta }}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Introducción ==&lt;br /&gt;
Tenemos una placa plana en forma de anillo. Vamos a trabajar en coordenadas polares en el plano y sabemos que la placa está comprendida entre los radios ρ=1 y ρ=6 y cuya temperatura inicial viene definida por la función u(ρ,0):&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\left\{\begin{matrix}100(ρ-1)   ………   ρ ∈ [1, 2] \\100     ………  ρ ∈ [2, 5]\\90(6-ρ)+10  ………  ρ ∈ [5, 6]\end{matrix}\right.&amp;lt;/math&amp;gt;&lt;br /&gt;
                                                                           &lt;br /&gt;
Si colocamos en los extremos interior ρ=1 y exterior ρ=6 objetos a una temperatura constante de 0 y 10 grados respectivamente, es decir, las condiciones de frontera serán:            &lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\left\{\begin{matrix}u(1,t)=0 \\u(6,t)=10\end{matrix}\right.&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; u_t-\Delta u= u_t- \frac{\partial^2 u }{\partial ρ^2} -\frac{1 }{ρ} \frac{\partial u }{\partial ρ}-\frac{1 }{ρ^2} \frac{\partial^2 u }{\partial θ^2}= u_t- \frac{\partial^2 u }{\partial ρ^2} -\frac{1 }{ρ} \frac{\partial u }{\partial ρ} = 0 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Así la ecuación queda de la siguiente manera:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; u_t-\frac{1 }{ρ} u_ρ - u_(ρρ) = 0 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Suponiendo que la temperatura u de la placa únicamente depende de la coordenada radial y del tiempo, es decir, u=u(ρ,t) y sabiendo que satisface la ecuación del calor &amp;lt;math&amp;gt; u_t-\Delta u=0&amp;lt;/math&amp;gt; , vamos a plantear el sistema de ecuaciones que satisface u(ρ,t) en coordenadas polares:&lt;br /&gt;
&lt;br /&gt;
== Método de diferencias finitas con el método del Trapecio ==&lt;br /&gt;
&lt;br /&gt;
Tomamos los pasos de discretización del espacio &amp;lt;math&amp;gt; \Delta ρ=0.1&amp;lt;/math&amp;gt; y del tiempo &amp;lt;math&amp;gt; \Delta t=(\Delta ρ/4)&amp;lt;/math&amp;gt; en t ∈ [0; 10]&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=    &lt;br /&gt;
%Datos&lt;br /&gt;
      a=1;b=6;h=0.1; ya=0;yb=10;&lt;br /&gt;
      N=(b-a)/h; dt=h/4;&lt;br /&gt;
      r=[a:h:b]'; rr=[a+h:h:b-h]';&lt;br /&gt;
      &lt;br /&gt;
%Defino K1:&lt;br /&gt;
      K1=diag(ones(1,N-1)*2)+diag(ones(1,N-2)*(-1),-1)+diag(ones(1,N-2)*(-1),1);&lt;br /&gt;
      K1=K1*(1/h^2);&lt;br /&gt;
      &lt;br /&gt;
%Defino K2:&lt;br /&gt;
      K2=diag(ones(N-2,1)*(-1),1)+diag(ones(N-2,1),-1);&lt;br /&gt;
      K2=(1/h^2)*K2;&lt;br /&gt;
      M=diag(1./rr);&lt;br /&gt;
      K2=M*K2;&lt;br /&gt;
     &lt;br /&gt;
      T0=0;TF=10;&lt;br /&gt;
      t=T0&lt;br /&gt;
      &lt;br /&gt;
%Defino la malla:&lt;br /&gt;
      [R,T]=meshgrid(r,t);&lt;br /&gt;
      &lt;br /&gt;
%Defino F:&lt;br /&gt;
      F=zeros(1,N-1)&lt;br /&gt;
      F(end)=F(end)+10/(h^2)+10/(2*5.9*h);        %(donde (b-h)=5.9)&lt;br /&gt;
     &lt;br /&gt;
%Condición inicial:&lt;br /&gt;
      for i=1:length(rr)&lt;br /&gt;
            if rr(i)&amp;lt;2&lt;br /&gt;
            U(i)=100*(rr(i)-1);&lt;br /&gt;
            elseif rr(i)&amp;lt;5&lt;br /&gt;
            U(i)=100;&lt;br /&gt;
            else&lt;br /&gt;
            U(i)=90*(6-rr(i))+10;&lt;br /&gt;
            end&lt;br /&gt;
      end&lt;br /&gt;
      sol(1,:)=[0,U,10]; &lt;br /&gt;
 &lt;br /&gt;
%Método del trapecio:&lt;br /&gt;
      for m=1:length(t)-1&lt;br /&gt;
            Z=U'+(dt/2)*(-(K1+K2)*U'+F');&lt;br /&gt;
            W=eye(N-1)+(dt/2)*(K1+K2);&lt;br /&gt;
            W=W\Z;&lt;br /&gt;
            sol(m+1,:)=[0,W',10];&lt;br /&gt;
            U=W'&lt;br /&gt;
      end&lt;br /&gt;
      &lt;br /&gt;
%dibujo&lt;br /&gt;
      surf(R,T,sol)&lt;br /&gt;
}}&lt;br /&gt;
[[Archivo:imagentrapecio.jpg|marco|centro|Superficie temperatura en el eje radial  ρ ∈ [1,6] en el intervalo de tiempo]]&lt;br /&gt;
&lt;br /&gt;
Como se puede observar la temperatura va disminuyendo hasta alcanzar valores casi constantes a lo largo del tiempo. En el centro(del eje radial)se ve un descenso mas brusco debido a que la temperatura inicial es mas alta y en los extremos se mantiene el mismo valor. Por lo tanto existe un enfriamiento de la placa, sobre todo en la parte central hasta unos valores constantes de temperatura(0 en p=1, 10 en p=6 y entre 0-10 en p ∈ (1,6)).&lt;br /&gt;
&lt;br /&gt;
== Temperatura en ρ=3 ==&lt;br /&gt;
Partiendo del programa anterior queremos ahora dibujar el comportamiento de la temperatura en los puntos para los cuales ρ = 3 en una gráfica 2D temperatura/tiempo:&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
&lt;br /&gt;
%Cálculo del punto N que corresponde a ρ=3&lt;br /&gt;
N3=(3-a)/h+1;&lt;br /&gt;
&lt;br /&gt;
%Dibujo&lt;br /&gt;
plot(sol(:,N3),t)&lt;br /&gt;
&lt;br /&gt;
}}&lt;br /&gt;
[[Archivo:imagenP3.jpg|marco|centro|Temperatura en los puntos de la corona �ρ = 3]]&lt;br /&gt;
&lt;br /&gt;
Viene a demostrar lo dicho en el anterior apartado pero se puede ver de forma mucho mas clara para p=3, que existe un enfriamiento en la corona llegando a una temperatura constante.&lt;br /&gt;
&lt;br /&gt;
== Euler explícito, implícito y modificado ==&lt;br /&gt;
Como los datos son los mismos que los usados en el método de diferencias finitas del trapecio, no vamos a volver a repetir los datos puesto que son los mismos y lo único que cambia es el método utilizado.&lt;br /&gt;
&lt;br /&gt;
Euler explícito:&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
&lt;br /&gt;
%Método de Euler explícito&lt;br /&gt;
for m=1:length(t)-1&lt;br /&gt;
    Z=U'+(dt)*(-(K1+K2)*U'+F');&lt;br /&gt;
    sol(m+1,:)=[0,Z',10];&lt;br /&gt;
    U=Z';&lt;br /&gt;
end       &lt;br /&gt;
&lt;br /&gt;
surf(R,T,sol)&lt;br /&gt;
}}&lt;br /&gt;
[[Archivo:imageneuler.jpg|marco|centro|]]&lt;br /&gt;
i&lt;br /&gt;
&lt;br /&gt;
La explicación a esta gráfica resultante es que como el método es explícito, el sistema es inestable y significa que el paso tomado es grande, por eso tiene los límites muy elevados. &lt;br /&gt;
&lt;br /&gt;
Euler implícito:&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
%Método de Euler implícito:&lt;br /&gt;
          for m=1:length(t)-1 &lt;br /&gt;
                Z=U'+dt*(F');&lt;br /&gt;
                W=eye(N-1)+dt*(K1+K2);&lt;br /&gt;
                W=W\Z;&lt;br /&gt;
                sol(m+1,:)=[0,W',10]&lt;br /&gt;
                U=W';&lt;br /&gt;
          end&lt;br /&gt;
}}&lt;br /&gt;
[[Archivo:imageneimp.jpg|marco|centro|]]&lt;br /&gt;
i&lt;br /&gt;
&lt;br /&gt;
Euler modificado:&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
%Método de Euler modificado:&lt;br /&gt;
          for m=1:length(t)-1&lt;br /&gt;
               M1=-(K1+K2)*U'+F';&lt;br /&gt;
               M2=-(K1+K2)*(U'+M1*dt)+F';&lt;br /&gt;
               W=U'+(dt/2)*(M1+M2);&lt;br /&gt;
               sol(m+1,:)=[0,W',10];&lt;br /&gt;
               U=W':&lt;br /&gt;
          end&lt;br /&gt;
}}&lt;br /&gt;
[[Archivo:imagenemod.jpg|marco|centro|]]&lt;br /&gt;
i&lt;br /&gt;
&lt;br /&gt;
En este caso ocurre lo mismo que en el anterior caso.&lt;br /&gt;
&lt;br /&gt;
== Tiempos grandes (estado estacionario) ==&lt;br /&gt;
&lt;br /&gt;
El sistema a resolver para tiempos grandes queda de la siguiente manera:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\left\{\begin{matrix} -\frac{1 }{ρ} u_ρ - u_(ρρ) = 0 \\ u(1)=0 ;u(6)=10\end{matrix}\right.&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
El paso que se toma es de 0.1 y 0.01&lt;br /&gt;
&lt;br /&gt;
Que se puede resolver como se hacía en el tema 2 al tratarse de un problema de contorno.&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
&lt;br /&gt;
%datos&lt;br /&gt;
   a=1;b=6;ya=0;yb=10;&lt;br /&gt;
   h=[0.1,0.01];&lt;br /&gt;
   color='rg'&lt;br /&gt;
%Para que me salgan ambas soluciones en la misma grafica&lt;br /&gt;
   hold on&lt;br /&gt;
 for i=1:2&lt;br /&gt;
   N=(b-a)/h(i); r=[a:h(i):b]';rr=[a+h(i):h(i):b-h(i)]';&lt;br /&gt;
   K1=1/h(i)^2*(2*diag(ones(N-1,1))-diag(ones(N-2,1),1)-diag(ones(N-2,1),-1));&lt;br /&gt;
   K2=1/(2*h(i))*( diag(ones(N-2,1),-1)-diag(ones(N-2,1),1) );&lt;br /&gt;
   M=diag(1./rr);&lt;br /&gt;
   K2=M*K2;&lt;br /&gt;
   F=zeros(1,N-1);&lt;br /&gt;
   F(end)=F(end)+10/h(i)^2+10/(2*5.9*h(i));&lt;br /&gt;
   u=(K1+K2)\F';&lt;br /&gt;
   uu=[ya;u;yb];&lt;br /&gt;
   plot(r,uu,color(i));&lt;br /&gt;
 end&lt;br /&gt;
   hold off&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:tgrande.jpg|marco|centro|Distribución de la temperatura para tiempos grandes con ambos pasos]]&lt;br /&gt;
Como se puede ver casi no se aprecia la diferencia entre hacerlo con h=0.1 y h=0.01&lt;br /&gt;
&lt;br /&gt;
[[Archivo:tgrandezoom.jpg|marco|centro|Detalle de la imagen anterior: rojo(0.1) y verde(0.01)]]&lt;br /&gt;
Se observa como hay una mínima diferencia.&lt;br /&gt;
&lt;br /&gt;
[[Categoría:Ecuaciones Diferenciales]]&lt;br /&gt;
[[Categoría:ED13/14]]&lt;br /&gt;
[[Categoría:Trabajos 2013-14]]&lt;/div&gt;</summary>
		<author><name>Toni Villa</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Ecuaci%C3%B3n_del_calor_en_una_placa_en_forma_de_anillo&amp;diff=12998</id>
		<title>Ecuación del calor en una placa en forma de anillo</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Ecuaci%C3%B3n_del_calor_en_una_placa_en_forma_de_anillo&amp;diff=12998"/>
				<updated>2014-05-19T19:29:20Z</updated>
		
		<summary type="html">&lt;p&gt;Toni Villa: /* Método de diferencias finitas con el método del Trapecio */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{ TrabajoED | Ecuación del calor en una placa en forma de anillo. Grupo 6B | [[:Categoría:Ecuaciones Diferenciales|Ecuaciones Diferenciales]]|[[:Categoría:ED13/14|Curso 2013-14]] | Elisabet Sánchez López, Ana Santos Martín, Isabel Sastre Furones, Ángel Antonio Villa Figueroa }}&lt;br /&gt;
&lt;br /&gt;
{{ beta }}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Introducción ==&lt;br /&gt;
Tenemos una placa plana en forma de anillo. Vamos a trabajar en coordenadas polares en el plano y sabemos que la placa está comprendida entre los radios ρ=1 y ρ=6 y cuya temperatura inicial viene definida por la función u(ρ,0):&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\left\{\begin{matrix}100(ρ-1)   ………   ρ ∈ [1, 2] \\100     ………  ρ ∈ [2, 5]\\90(6-ρ)+10  ………  ρ ∈ [5, 6]\end{matrix}\right.&amp;lt;/math&amp;gt;&lt;br /&gt;
                                                                           &lt;br /&gt;
Si colocamos en los extremos interior ρ=1 y exterior ρ=6 objetos a una temperatura constante de 0 y 10 grados respectivamente, es decir, las condiciones de frontera serán:            &lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\left\{\begin{matrix}u(1,t)=0 \\u(6,t)=10\end{matrix}\right.&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; u_t-\Delta u= u_t- \frac{\partial^2 u }{\partial ρ^2} -\frac{1 }{ρ} \frac{\partial u }{\partial ρ}-\frac{1 }{ρ^2} \frac{\partial^2 u }{\partial θ^2}= u_t- \frac{\partial^2 u }{\partial ρ^2} -\frac{1 }{ρ} \frac{\partial u }{\partial ρ} = 0 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Así la ecuación queda de la siguiente manera:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; u_t-\frac{1 }{ρ} u_ρ - u_(ρρ) = 0 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Suponiendo que la temperatura u de la placa únicamente depende de la coordenada radial y del tiempo, es decir, u=u(ρ,t) y sabiendo que satisface la ecuación del calor &amp;lt;math&amp;gt; u_t-\Delta u=0&amp;lt;/math&amp;gt; , vamos a plantear el sistema de ecuaciones que satisface u(ρ,t) en coordenadas polares:&lt;br /&gt;
&lt;br /&gt;
== Método de diferencias finitas con el método del Trapecio ==&lt;br /&gt;
&lt;br /&gt;
Tomamos los pasos de discretización del espacio &amp;lt;math&amp;gt; \Delta ρ=0.1&amp;lt;/math&amp;gt; y del tiempo &amp;lt;math&amp;gt; \Delta t=(\Delta ρ/4)&amp;lt;/math&amp;gt; en t ∈ [0; 10]&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=    &lt;br /&gt;
%Datos&lt;br /&gt;
      a=1;b=6;h=0.1; ya=0;yb=10;&lt;br /&gt;
      N=(b-a)/h; dt=h/4;&lt;br /&gt;
      r=[a:h:b]'; rr=[a+h:h:b-h]';&lt;br /&gt;
      &lt;br /&gt;
%Defino K1:&lt;br /&gt;
      K1=diag(ones(1,N-1)*2)+diag(ones(1,N-2)*(-1),-1)+diag(ones(1,N-2)*(-1),1);&lt;br /&gt;
      K1=K1*(1/h^2);&lt;br /&gt;
      &lt;br /&gt;
%Defino K2:&lt;br /&gt;
      K2=diag(ones(N-2,1)*(-1),1)+diag(ones(N-2,1),-1);&lt;br /&gt;
      K2=(1/h^2)*K2;&lt;br /&gt;
      M=diag(1./rr);&lt;br /&gt;
      K2=M*K2;&lt;br /&gt;
     &lt;br /&gt;
      T0=0;TF=10;&lt;br /&gt;
      t=T0&lt;br /&gt;
      &lt;br /&gt;
%Defino la malla:&lt;br /&gt;
      [R,T]=meshgrid(r,t);&lt;br /&gt;
      &lt;br /&gt;
%Defino F:&lt;br /&gt;
      F=zeros(1,N-1)&lt;br /&gt;
      F(end)=F(end)+10/(h^2)+10/(2*5.9*h);        %(donde (b-h)=5.9)&lt;br /&gt;
     &lt;br /&gt;
%Condición inicial:&lt;br /&gt;
      for i=1:length(rr)&lt;br /&gt;
            if rr(i)&amp;lt;2&lt;br /&gt;
            U(i)=100*(rr(i)-1);&lt;br /&gt;
            elseif rr(i)&amp;lt;5&lt;br /&gt;
            U(i)=100;&lt;br /&gt;
            else&lt;br /&gt;
            U(i)=90*(6-rr(i))+10;&lt;br /&gt;
            end&lt;br /&gt;
      end&lt;br /&gt;
      sol(1,:)=[0,U,10]; &lt;br /&gt;
 &lt;br /&gt;
%Método del trapecio:&lt;br /&gt;
      for m=1:length(t)-1&lt;br /&gt;
            Z=U'+(dt/2)*(-(K1+K2)*U'+F');&lt;br /&gt;
            W=eye(N-1)+(dt/2)*(K1+K2);&lt;br /&gt;
            W=W\Z;&lt;br /&gt;
            sol(m+1,:)=[0,W',10];&lt;br /&gt;
            U=W'&lt;br /&gt;
      end&lt;br /&gt;
      &lt;br /&gt;
%dibujo&lt;br /&gt;
      surf(R,T,sol)&lt;br /&gt;
}}&lt;br /&gt;
[[Archivo:imagentrapecio.jpg|marco|centro|Superficie temperatura en el eje radial  ρ ∈ [1,6] en el intervalo de tiempo]]&lt;br /&gt;
&lt;br /&gt;
Como se puede observar la temperatura va disminuyendo hasta alcanzar valores casi constantes a lo largo del tiempo. En el centro(del eje radial)se ve un descenso mas brusco debido a que la temperatura inicial es mas alta y en los extremos se mantiene el mismo valor. Por lo tanto existe un enfriamiento de la placa, sobre todo en la parte central hasta unos valores constantes de temperatura(0 en p=1, 10 en p=6 y entre 0-10 en p ∈ (1,6)).&lt;br /&gt;
&lt;br /&gt;
== Temperatura en ρ=3 ==&lt;br /&gt;
Partiendo del programa anterior queremos ahora dibujar el comportamiento de la temperatura en los puntos para los cuales ρ = 3 en una gráfica 2D temperatura/tiempo:&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
&lt;br /&gt;
%Cálculo del punto N que corresponde a ρ=3&lt;br /&gt;
N3=(3-a)/h+1;&lt;br /&gt;
&lt;br /&gt;
%Dibujo&lt;br /&gt;
plot(sol(:,N3),t)&lt;br /&gt;
&lt;br /&gt;
}}&lt;br /&gt;
[[Archivo:imagenP3.jpg|marco|centro|Temperatura en los puntos de la corona �ρ = 3]]&lt;br /&gt;
i&lt;br /&gt;
&lt;br /&gt;
== Euler explícito, implícito y modificado ==&lt;br /&gt;
Como los datos son los mismos que los usados en el método de diferencias finitas del trapecio, no vamos a volver a repetir los datos puesto que son los mismos y lo único que cambia es el método utilizado.&lt;br /&gt;
&lt;br /&gt;
Euler explícito:&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
&lt;br /&gt;
%Método de Euler explícito&lt;br /&gt;
for m=1:length(t)-1&lt;br /&gt;
    Z=U'+(dt)*(-(K1+K2)*U'+F');&lt;br /&gt;
    sol(m+1,:)=[0,Z',10];&lt;br /&gt;
    U=Z';&lt;br /&gt;
end       &lt;br /&gt;
&lt;br /&gt;
surf(R,T,sol)&lt;br /&gt;
}}&lt;br /&gt;
[[Archivo:imageneuler.jpg|marco|centro|]]&lt;br /&gt;
i&lt;br /&gt;
&lt;br /&gt;
La explicación a esta gráfica resultante es que como el método es explícito, el sistema es inestable y significa que el paso tomado es grande, por eso tiene los límites muy elevados. &lt;br /&gt;
&lt;br /&gt;
Euler implícito:&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
%Método de Euler implícito:&lt;br /&gt;
          for m=1:length(t)-1 &lt;br /&gt;
                Z=U'+dt*(F');&lt;br /&gt;
                W=eye(N-1)+dt*(K1+K2);&lt;br /&gt;
                W=W\Z;&lt;br /&gt;
                sol(m+1,:)=[0,W',10]&lt;br /&gt;
                U=W';&lt;br /&gt;
          end&lt;br /&gt;
}}&lt;br /&gt;
[[Archivo:imageneimp.jpg|marco|centro|]]&lt;br /&gt;
i&lt;br /&gt;
&lt;br /&gt;
Euler modificado:&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
%Método de Euler modificado:&lt;br /&gt;
          for m=1:length(t)-1&lt;br /&gt;
               M1=-(K1+K2)*U'+F';&lt;br /&gt;
               M2=-(K1+K2)*(U'+M1*dt)+F';&lt;br /&gt;
               W=U'+(dt/2)*(M1+M2);&lt;br /&gt;
               sol(m+1,:)=[0,W',10];&lt;br /&gt;
               U=W':&lt;br /&gt;
          end&lt;br /&gt;
}}&lt;br /&gt;
[[Archivo:imagenemod.jpg|marco|centro|]]&lt;br /&gt;
i&lt;br /&gt;
&lt;br /&gt;
En este caso ocurre lo mismo que en el anterior caso.&lt;br /&gt;
&lt;br /&gt;
== Tiempos grandes (estado estacionario) ==&lt;br /&gt;
&lt;br /&gt;
El sistema a resolver para tiempos grandes queda de la siguiente manera:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\left\{\begin{matrix} -\frac{1 }{ρ} u_ρ - u_(ρρ) = 0 \\ u(1)=0 ;u(6)=10\end{matrix}\right.&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
El paso que se toma es de 0.1 y 0.01&lt;br /&gt;
&lt;br /&gt;
Que se puede resolver como se hacía en el tema 2 al tratarse de un problema de contorno.&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
&lt;br /&gt;
%datos&lt;br /&gt;
   a=1;b=6;ya=0;yb=10;&lt;br /&gt;
   h=[0.1,0.01];&lt;br /&gt;
   color='rg'&lt;br /&gt;
%Para que me salgan ambas soluciones en la misma grafica&lt;br /&gt;
   hold on&lt;br /&gt;
 for i=1:2&lt;br /&gt;
   N=(b-a)/h(i); r=[a:h(i):b]';rr=[a+h(i):h(i):b-h(i)]';&lt;br /&gt;
   K1=1/h(i)^2*(2*diag(ones(N-1,1))-diag(ones(N-2,1),1)-diag(ones(N-2,1),-1));&lt;br /&gt;
   K2=1/(2*h(i))*( diag(ones(N-2,1),-1)-diag(ones(N-2,1),1) );&lt;br /&gt;
   M=diag(1./rr);&lt;br /&gt;
   K2=M*K2;&lt;br /&gt;
   F=zeros(1,N-1);&lt;br /&gt;
   F(end)=F(end)+10/h(i)^2+10/(2*5.9*h(i));&lt;br /&gt;
   u=(K1+K2)\F';&lt;br /&gt;
   uu=[ya;u;yb];&lt;br /&gt;
   plot(r,uu,color(i));&lt;br /&gt;
 end&lt;br /&gt;
   hold off&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:tgrande.jpg|marco|centro|Distribución de la temperatura para tiempos grandes con ambos pasos]]&lt;br /&gt;
Como se puede ver casi no se aprecia la diferencia entre hacerlo con h=0.1 y h=0.01&lt;br /&gt;
&lt;br /&gt;
[[Archivo:tgrandezoom.jpg|marco|centro|Detalle de la imagen anterior: rojo(0.1) y verde(0.01)]]&lt;br /&gt;
Se observa como hay una mínima diferencia.&lt;br /&gt;
&lt;br /&gt;
[[Categoría:Ecuaciones Diferenciales]]&lt;br /&gt;
[[Categoría:ED13/14]]&lt;br /&gt;
[[Categoría:Trabajos 2013-14]]&lt;/div&gt;</summary>
		<author><name>Toni Villa</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Ecuaci%C3%B3n_del_calor_en_una_placa_en_forma_de_anillo&amp;diff=12515</id>
		<title>Ecuación del calor en una placa en forma de anillo</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Ecuaci%C3%B3n_del_calor_en_una_placa_en_forma_de_anillo&amp;diff=12515"/>
				<updated>2014-05-18T22:57:19Z</updated>
		
		<summary type="html">&lt;p&gt;Toni Villa: /* Tiempos grandes (estado estacionario) */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{ TrabajoED | Ecuación del calor en una placa en forma de anillo. Grupo 6B | [[:Categoría:Ecuaciones Diferenciales|Ecuaciones Diferenciales]]|[[:Categoría:ED13/14|Curso 2013-14]] | Elisabet Sánchez López, Ana Santos Martín, Isabel Sastre Furones, Ángel Antonio Villa Figueroa }}&lt;br /&gt;
&lt;br /&gt;
{{ beta }}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Introducción ==&lt;br /&gt;
Tenemos una placa plana en forma de anillo. Vamos a trabajar en coordenadas polares en el plano y sabemos que la placa está comprendida entre los radios ρ=1 y ρ=6 y cuya temperatura inicial viene definida por la función u(ρ,0):&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\left\{\begin{matrix}100(ρ-1)   ………   ρ ∈ [1, 2] \\100     ………  ρ ∈ [2, 5]\\90(6-ρ)+10  ………  ρ ∈ [5, 6]\end{matrix}\right.&amp;lt;/math&amp;gt;&lt;br /&gt;
                                                                           &lt;br /&gt;
Si colocamos en los extremos interior ρ=1 y exterior ρ=6 objetos a una temperatura constante de 0 y 10 grados respectivamente, es decir, las condiciones de frontera serán:            &lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\left\{\begin{matrix}u(1,t)=0 \\u(6,t)=10\end{matrix}\right.&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; u_t-\Delta u= u_t- \frac{\partial^2 u }{\partial ρ^2} -\frac{1 }{ρ} \frac{\partial u }{\partial ρ}-\frac{1 }{ρ^2} \frac{\partial^2 u }{\partial θ^2}= u_t- \frac{\partial^2 u }{\partial ρ^2} -\frac{1 }{ρ} \frac{\partial u }{\partial ρ} = 0 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Así la ecuación queda de la siguiente manera:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; u_t-\frac{1 }{ρ} u_ρ - u_(ρρ) = 0 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Suponiendo que la temperatura u de la placa únicamente depende de la coordenada radial y del tiempo, es decir, u=u(ρ,t) y sabiendo que satisface la ecuación del calor &amp;lt;math&amp;gt; u_t-\Delta u=0&amp;lt;/math&amp;gt; , vamos a plantear el sistema de ecuaciones que satisface u(ρ,t) en coordenadas polares:&lt;br /&gt;
&lt;br /&gt;
== Método de diferencias finitas con el método del Trapecio ==&lt;br /&gt;
&lt;br /&gt;
Tomamos los pasos de discretización del espacio &amp;lt;math&amp;gt; \Delta ρ=0.1&amp;lt;/math&amp;gt; y del tiempo &amp;lt;math&amp;gt; \Delta t=(\Delta ρ/4)&amp;lt;/math&amp;gt; en t ∈ [0; 10]&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=    &lt;br /&gt;
%Datos&lt;br /&gt;
      a=1;b=6;h=0.1; ya=0;yb=10;&lt;br /&gt;
      N=(b-a)/h; dt=h/4;&lt;br /&gt;
      r=[a:h:b]'; rr=[a+h:h:b-h]';&lt;br /&gt;
      &lt;br /&gt;
%Defino K1:&lt;br /&gt;
      K1=diag(ones(1,N-1)*2)+diag(ones(1,N-2)*(-1),-1)+diag(ones(1,N-2)*(-1),1);&lt;br /&gt;
      K1=K1*(1/h^2);&lt;br /&gt;
      &lt;br /&gt;
%Defino K2:&lt;br /&gt;
      K2=diag(ones(N-2,1)*(-1),1)+diag(ones(N-2,1),-1);&lt;br /&gt;
      K2=(1/h^2)*K2;&lt;br /&gt;
      M=diag(1./rr);&lt;br /&gt;
      K2=M*K2;&lt;br /&gt;
     &lt;br /&gt;
      T0=0;TF=10;&lt;br /&gt;
      t=T0&lt;br /&gt;
      &lt;br /&gt;
%Defino la malla:&lt;br /&gt;
      [R,T]=meshgrid(r,t);&lt;br /&gt;
      &lt;br /&gt;
%Defino F:&lt;br /&gt;
      F=zeros(1,N-1)&lt;br /&gt;
      F(end)=F(end)+10/(h^2)+10/(2*5.9*h);        %(donde (b-h)=5.9)&lt;br /&gt;
     &lt;br /&gt;
%Condición inicial:&lt;br /&gt;
      for i=1:length(rr)&lt;br /&gt;
            if rr(i)&amp;lt;2&lt;br /&gt;
            U(i)=100*(rr(i)-1);&lt;br /&gt;
            elseif rr(i)&amp;lt;5&lt;br /&gt;
            U(i)=100;&lt;br /&gt;
            else&lt;br /&gt;
            U(i)=90*(6-rr(i))+10;&lt;br /&gt;
            end&lt;br /&gt;
      end&lt;br /&gt;
      sol(1,:)=[0,U,10]; &lt;br /&gt;
 &lt;br /&gt;
%Método del trapecio:&lt;br /&gt;
      for m=1:length(t)-1&lt;br /&gt;
            Z=U'+(dt/2)*(-(K1+K2)*U'+F');&lt;br /&gt;
            W=eye(N-1)+(dt/2)*(K1+K2);&lt;br /&gt;
            W=W\Z;&lt;br /&gt;
            sol(m+1,:)=[0,W',10];&lt;br /&gt;
            U=W'&lt;br /&gt;
      end&lt;br /&gt;
      &lt;br /&gt;
%dibujo&lt;br /&gt;
      surf(R,T,sol)&lt;br /&gt;
}}&lt;br /&gt;
[[Archivo:imagentrapecio.jpg|marco|centro|Superficie temperatura en el eje radial  ρ ∈ [1,6] en el intervalo de tiempo]]&lt;br /&gt;
&lt;br /&gt;
i&lt;br /&gt;
&lt;br /&gt;
== Temperatura en ρ=3 ==&lt;br /&gt;
Partiendo del programa anterior queremos ahora dibujar el comportamiento de la temperatura en los puntos para los cuales ρ = 3 en una gráfica 2D temperatura/tiempo:&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
&lt;br /&gt;
%Cálculo del punto N que corresponde a ρ=3&lt;br /&gt;
N3=(3-a)/h+1;&lt;br /&gt;
&lt;br /&gt;
%Dibujo&lt;br /&gt;
plot(sol(:,N3),t)&lt;br /&gt;
&lt;br /&gt;
}}&lt;br /&gt;
[[Archivo:imagenP3.jpg|marco|centro|Temperatura en los puntos de la corona �ρ = 3]]&lt;br /&gt;
i&lt;br /&gt;
&lt;br /&gt;
== Euler explícito, implícito y modificado ==&lt;br /&gt;
Como los datos son los mismos que los usados en el método de diferencias finitas del trapecio, no vamos a volver a repetir los datos puesto que son los mismos y lo único que cambia es el método utilizado.&lt;br /&gt;
&lt;br /&gt;
Euler explícito:&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
&lt;br /&gt;
%Método de Euler explícito&lt;br /&gt;
for m=1:length(t)-1&lt;br /&gt;
    Z=U'+(dt)*(-(K1+K2)*U'+F');&lt;br /&gt;
    sol(m+1,:)=[0,Z',10];&lt;br /&gt;
    U=Z';&lt;br /&gt;
end       &lt;br /&gt;
&lt;br /&gt;
surf(R,T,sol)&lt;br /&gt;
}}&lt;br /&gt;
[[Archivo:imageneuler.jpg|marco|centro|]]&lt;br /&gt;
i&lt;br /&gt;
&lt;br /&gt;
La explicación a esta gráfica resultante es que como el método es explícito, el sistema es inestable y significa que el paso tomado es grande, por eso tiene los límites muy elevados. &lt;br /&gt;
&lt;br /&gt;
Euler implícito:&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
%Método de Euler implícito:&lt;br /&gt;
          for m=1:length(t)-1 &lt;br /&gt;
                Z=U'+dt*(F');&lt;br /&gt;
                W=eye(N-1)+dt*(K1+K2);&lt;br /&gt;
                W=W\Z;&lt;br /&gt;
                sol(m+1,:)=[0,W',10]&lt;br /&gt;
                U=W';&lt;br /&gt;
          end&lt;br /&gt;
}}&lt;br /&gt;
[[Archivo:imageneimp.jpg|marco|centro|]]&lt;br /&gt;
i&lt;br /&gt;
&lt;br /&gt;
Euler modificado:&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
%Método de Euler modificado:&lt;br /&gt;
          for m=1:length(t)-1&lt;br /&gt;
               M1=-(K1+K2)*U'+F';&lt;br /&gt;
               M2=-(K1+K2)*(U'+M1*dt)+F';&lt;br /&gt;
               W=U'+(dt/2)*(M1+M2);&lt;br /&gt;
               sol(m+1,:)=[0,W',10];&lt;br /&gt;
               U=W':&lt;br /&gt;
          end&lt;br /&gt;
}}&lt;br /&gt;
[[Archivo:imagenemod.jpg|marco|centro|]]&lt;br /&gt;
i&lt;br /&gt;
&lt;br /&gt;
En este caso ocurre lo mismo que en el anterior caso.&lt;br /&gt;
&lt;br /&gt;
== Tiempos grandes (estado estacionario) ==&lt;br /&gt;
&lt;br /&gt;
El sistema a resolver para tiempos grandes queda de la siguiente manera:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\left\{\begin{matrix} -\frac{1 }{ρ} u_ρ - u_(ρρ) = 0 \\ u(1)=0 ;u(6)=10\end{matrix}\right.&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
El paso que se toma es de 0.1 y 0.01&lt;br /&gt;
&lt;br /&gt;
Que se puede resolver como se hacía en el tema 2 al tratarse de un problema de contorno.&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
&lt;br /&gt;
%datos&lt;br /&gt;
   a=1;b=6;ya=0;yb=10;&lt;br /&gt;
   h=[0.1,0.01];&lt;br /&gt;
   color='rg'&lt;br /&gt;
%Para que me salgan ambas soluciones en la misma grafica&lt;br /&gt;
   hold on&lt;br /&gt;
 for i=1:2&lt;br /&gt;
   N=(b-a)/h(i); r=[a:h(i):b]';rr=[a+h(i):h(i):b-h(i)]';&lt;br /&gt;
   K1=1/h(i)^2*(2*diag(ones(N-1,1))-diag(ones(N-2,1),1)-diag(ones(N-2,1),-1));&lt;br /&gt;
   K2=1/(2*h(i))*( diag(ones(N-2,1),-1)-diag(ones(N-2,1),1) );&lt;br /&gt;
   M=diag(1./rr);&lt;br /&gt;
   K2=M*K2;&lt;br /&gt;
   F=zeros(1,N-1);&lt;br /&gt;
   F(end)=F(end)+10/h(i)^2+10/(2*5.9*h(i));&lt;br /&gt;
   u=(K1+K2)\F';&lt;br /&gt;
   uu=[ya;u;yb];&lt;br /&gt;
   plot(r,uu,color(i));&lt;br /&gt;
 end&lt;br /&gt;
   hold off&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:tgrande.jpg|marco|centro|Distribución de la temperatura para tiempos grandes con ambos pasos]]&lt;br /&gt;
Como se puede ver casi no se aprecia la diferencia entre hacerlo con h=0.1 y h=0.01&lt;br /&gt;
&lt;br /&gt;
[[Archivo:tgrandezoom.jpg|marco|centro|Detalle de la imagen anterior: rojo(0.1) y verde(0.01)]]&lt;br /&gt;
Se observa como hay una mínima diferencia.&lt;br /&gt;
&lt;br /&gt;
[[Categoría:Ecuaciones Diferenciales]]&lt;br /&gt;
[[Categoría:ED13/14]]&lt;br /&gt;
[[Categoría:Trabajos 2013-14]]&lt;/div&gt;</summary>
		<author><name>Toni Villa</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Archivo:Tgrandezoom.jpg&amp;diff=12514</id>
		<title>Archivo:Tgrandezoom.jpg</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Archivo:Tgrandezoom.jpg&amp;diff=12514"/>
				<updated>2014-05-18T22:51:40Z</updated>
		
		<summary type="html">&lt;p&gt;Toni Villa: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>Toni Villa</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Archivo:Tgrande.jpg&amp;diff=12513</id>
		<title>Archivo:Tgrande.jpg</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Archivo:Tgrande.jpg&amp;diff=12513"/>
				<updated>2014-05-18T22:50:33Z</updated>
		
		<summary type="html">&lt;p&gt;Toni Villa: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>Toni Villa</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Ecuaci%C3%B3n_del_calor_en_una_placa_en_forma_de_anillo&amp;diff=12508</id>
		<title>Ecuación del calor en una placa en forma de anillo</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Ecuaci%C3%B3n_del_calor_en_una_placa_en_forma_de_anillo&amp;diff=12508"/>
				<updated>2014-05-18T22:43:45Z</updated>
		
		<summary type="html">&lt;p&gt;Toni Villa: /* Tiempos grandes (estado estacionario) */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{ TrabajoED | Ecuación del calor en una placa en forma de anillo. Grupo 6B | [[:Categoría:Ecuaciones Diferenciales|Ecuaciones Diferenciales]]|[[:Categoría:ED13/14|Curso 2013-14]] | Elisabet Sánchez López, Ana Santos Martín, Isabel Sastre Furones, Ángel Antonio Villa Figueroa }}&lt;br /&gt;
&lt;br /&gt;
{{ beta }}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Introducción ==&lt;br /&gt;
Tenemos una placa plana en forma de anillo. Vamos a trabajar en coordenadas polares en el plano y sabemos que la placa está comprendida entre los radios ρ=1 y ρ=6 y cuya temperatura inicial viene definida por la función u(ρ,0):&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\left\{\begin{matrix}100(ρ-1)   ………   ρ ∈ [1, 2] \\100     ………  ρ ∈ [2, 5]\\90(6-ρ)+10  ………  ρ ∈ [5, 6]\end{matrix}\right.&amp;lt;/math&amp;gt;&lt;br /&gt;
                                                                           &lt;br /&gt;
Si colocamos en los extremos interior ρ=1 y exterior ρ=6 objetos a una temperatura constante de 0 y 10 grados respectivamente, es decir, las condiciones de frontera serán:            &lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\left\{\begin{matrix}u(1,t)=0 \\u(6,t)=10\end{matrix}\right.&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; u_t-\Delta u= u_t- \frac{\partial^2 u }{\partial ρ^2} -\frac{1 }{ρ} \frac{\partial u }{\partial ρ}-\frac{1 }{ρ^2} \frac{\partial^2 u }{\partial θ^2}= u_t- \frac{\partial^2 u }{\partial ρ^2} -\frac{1 }{ρ} \frac{\partial u }{\partial ρ} = 0 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Así la ecuación queda de la siguiente manera:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; u_t-\frac{1 }{ρ} u_ρ - u_(ρρ) = 0 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Suponiendo que la temperatura u de la placa únicamente depende de la coordenada radial y del tiempo, es decir, u=u(ρ,t) y sabiendo que satisface la ecuación del calor &amp;lt;math&amp;gt; u_t-\Delta u=0&amp;lt;/math&amp;gt; , vamos a plantear el sistema de ecuaciones que satisface u(ρ,t) en coordenadas polares:&lt;br /&gt;
&lt;br /&gt;
== Método de diferencias finitas con el método del Trapecio ==&lt;br /&gt;
&lt;br /&gt;
Tomamos los pasos de discretización del espacio &amp;lt;math&amp;gt; \Delta ρ=0.1&amp;lt;/math&amp;gt; y del tiempo &amp;lt;math&amp;gt; \Delta t=(\Delta ρ/4)&amp;lt;/math&amp;gt; en t ∈ [0; 10]&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=    &lt;br /&gt;
%Datos&lt;br /&gt;
      a=1;b=6;h=0.1; ya=0;yb=10;&lt;br /&gt;
      N=(b-a)/h; dt=h/4;&lt;br /&gt;
      r=[a:h:b]'; rr=[a+h:h:b-h]';&lt;br /&gt;
      &lt;br /&gt;
%Defino K1:&lt;br /&gt;
      K1=diag(ones(1,N-1)*2)+diag(ones(1,N-2)*(-1),-1)+diag(ones(1,N-2)*(-1),1);&lt;br /&gt;
      K1=K1*(1/h^2);&lt;br /&gt;
      &lt;br /&gt;
%Defino K2:&lt;br /&gt;
      K2=diag(ones(N-2,1)*(-1),1)+diag(ones(N-2,1),-1);&lt;br /&gt;
      K2=(1/h^2)*K2;&lt;br /&gt;
      M=diag(1./rr);&lt;br /&gt;
      K2=M*K2;&lt;br /&gt;
     &lt;br /&gt;
      T0=0;TF=10;&lt;br /&gt;
      t=T0&lt;br /&gt;
      &lt;br /&gt;
%Defino la malla:&lt;br /&gt;
      [R,T]=meshgrid(r,t);&lt;br /&gt;
      &lt;br /&gt;
%Defino F:&lt;br /&gt;
      F=zeros(1,N-1)&lt;br /&gt;
      F(end)=F(end)+10/(h^2)+10/(2*5.9*h);        %(donde (b-h)=5.9)&lt;br /&gt;
     &lt;br /&gt;
%Condición inicial:&lt;br /&gt;
      for i=1:length(rr)&lt;br /&gt;
            if rr(i)&amp;lt;2&lt;br /&gt;
            U(i)=100*(rr(i)-1);&lt;br /&gt;
            elseif rr(i)&amp;lt;5&lt;br /&gt;
            U(i)=100;&lt;br /&gt;
            else&lt;br /&gt;
            U(i)=90*(6-rr(i))+10;&lt;br /&gt;
            end&lt;br /&gt;
      end&lt;br /&gt;
      sol(1,:)=[0,U,10]; &lt;br /&gt;
 &lt;br /&gt;
%Método del trapecio:&lt;br /&gt;
      for m=1:length(t)-1&lt;br /&gt;
            Z=U'+(dt/2)*(-(K1+K2)*U'+F');&lt;br /&gt;
            W=eye(N-1)+(dt/2)*(K1+K2);&lt;br /&gt;
            W=W\Z;&lt;br /&gt;
            sol(m+1,:)=[0,W',10];&lt;br /&gt;
            U=W'&lt;br /&gt;
      end&lt;br /&gt;
      &lt;br /&gt;
%dibujo&lt;br /&gt;
      surf(R,T,sol)&lt;br /&gt;
}}&lt;br /&gt;
[[Archivo:imagentrapecio.jpg|marco|centro|Superficie temperatura en el eje radial  ρ ∈ [1,6] en el intervalo de tiempo]]&lt;br /&gt;
&lt;br /&gt;
i&lt;br /&gt;
&lt;br /&gt;
== Temperatura en ρ=3 ==&lt;br /&gt;
Partiendo del programa anterior queremos ahora dibujar el comportamiento de la temperatura en los puntos para los cuales ρ = 3 en una gráfica 2D temperatura/tiempo:&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
&lt;br /&gt;
%Cálculo del punto N que corresponde a ρ=3&lt;br /&gt;
N3=(3-a)/h+1;&lt;br /&gt;
&lt;br /&gt;
%Dibujo&lt;br /&gt;
plot(sol(:,N3),t)&lt;br /&gt;
&lt;br /&gt;
}}&lt;br /&gt;
[[Archivo:imagenP3.jpg|marco|centro|Temperatura en los puntos de la corona �ρ = 3]]&lt;br /&gt;
i&lt;br /&gt;
&lt;br /&gt;
== Euler explícito, implícito y modificado ==&lt;br /&gt;
Como los datos son los mismos que los usados en el método de diferencias finitas del trapecio, no vamos a volver a repetir los datos puesto que son los mismos y lo único que cambia es el método utilizado.&lt;br /&gt;
&lt;br /&gt;
Euler explícito:&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
&lt;br /&gt;
%Método de Euler explícito&lt;br /&gt;
for m=1:length(t)-1&lt;br /&gt;
    Z=U'+(dt)*(-(K1+K2)*U'+F');&lt;br /&gt;
    sol(m+1,:)=[0,Z',10];&lt;br /&gt;
    U=Z';&lt;br /&gt;
end       &lt;br /&gt;
&lt;br /&gt;
surf(R,T,sol)&lt;br /&gt;
}}&lt;br /&gt;
[[Archivo:imageneuler.jpg|marco|centro|]]&lt;br /&gt;
i&lt;br /&gt;
&lt;br /&gt;
La explicación a esta gráfica resultante es que como el método es explícito, el sistema es inestable y significa que el paso tomado es grande, por eso tiene los límites muy elevados. &lt;br /&gt;
&lt;br /&gt;
Euler implícito:&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
%Método de Euler implícito:&lt;br /&gt;
          for m=1:length(t)-1 &lt;br /&gt;
                Z=U'+dt*(F');&lt;br /&gt;
                W=eye(N-1)+dt*(K1+K2);&lt;br /&gt;
                W=W\Z;&lt;br /&gt;
                sol(m+1,:)=[0,W',10]&lt;br /&gt;
                U=W';&lt;br /&gt;
          end&lt;br /&gt;
}}&lt;br /&gt;
[[Archivo:imageneimp.jpg|marco|centro|]]&lt;br /&gt;
i&lt;br /&gt;
&lt;br /&gt;
Euler modificado:&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
%Método de Euler modificado:&lt;br /&gt;
          for m=1:length(t)-1&lt;br /&gt;
               M1=-(K1+K2)*U'+F';&lt;br /&gt;
               M2=-(K1+K2)*(U'+M1*dt)+F';&lt;br /&gt;
               W=U'+(dt/2)*(M1+M2);&lt;br /&gt;
               sol(m+1,:)=[0,W',10];&lt;br /&gt;
               U=W':&lt;br /&gt;
          end&lt;br /&gt;
}}&lt;br /&gt;
[[Archivo:imagenemod.jpg|marco|centro|]]&lt;br /&gt;
i&lt;br /&gt;
&lt;br /&gt;
En este caso ocurre lo mismo que en el anterior caso.&lt;br /&gt;
&lt;br /&gt;
== Tiempos grandes (estado estacionario) ==&lt;br /&gt;
&lt;br /&gt;
El sistema a resolver para tiempos grandes queda de la siguiente manera:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\left\{\begin{matrix} -\frac{1 }{ρ} u_ρ - u_(ρρ) = 0 \\ u(1)=0 ;u(6)=10\end{matrix}\right.&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Que se puede resolver como se hacía en el tema 2 al tratarse de un problema de contorno.&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
&lt;br /&gt;
%datos&lt;br /&gt;
   a=1;b=6;ya=0;yb=10;&lt;br /&gt;
   h=[0.1,0.01];&lt;br /&gt;
   color='rg'&lt;br /&gt;
%Para que me salgan ambas soluciones en la misma grafica&lt;br /&gt;
   hold on&lt;br /&gt;
 for i=1:2&lt;br /&gt;
   N=(b-a)/h(i); r=[a:h(i):b]';rr=[a+h(i):h(i):b-h(i)]';&lt;br /&gt;
   K1=1/h(i)^2*(2*diag(ones(N-1,1))-diag(ones(N-2,1),1)-diag(ones(N-2,1),-1));&lt;br /&gt;
   K2=1/(2*h(i))*( diag(ones(N-2,1),-1)-diag(ones(N-2,1),1) );&lt;br /&gt;
   M=diag(1./rr);&lt;br /&gt;
   K2=M*K2;&lt;br /&gt;
   F=zeros(1,N-1);&lt;br /&gt;
   F(end)=F(end)+10/h(i)^2+10/(2*5.9*h(i));&lt;br /&gt;
   u=(K1+K2)\F';&lt;br /&gt;
   uu=[ya;u;yb];&lt;br /&gt;
   plot(r,uu,color(i));&lt;br /&gt;
 end&lt;br /&gt;
   hold off&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Categoría:Ecuaciones Diferenciales]]&lt;br /&gt;
[[Categoría:ED13/14]]&lt;br /&gt;
[[Categoría:Trabajos 2013-14]]&lt;/div&gt;</summary>
		<author><name>Toni Villa</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Ecuaci%C3%B3n_del_calor_en_una_placa_en_forma_de_anillo&amp;diff=12503</id>
		<title>Ecuación del calor en una placa en forma de anillo</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Ecuaci%C3%B3n_del_calor_en_una_placa_en_forma_de_anillo&amp;diff=12503"/>
				<updated>2014-05-18T22:21:34Z</updated>
		
		<summary type="html">&lt;p&gt;Toni Villa: /* Tiempos grandes (estado estacionario) */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{ TrabajoED | Ecuación del calor en una placa en forma de anillo. Grupo 6B | [[:Categoría:Ecuaciones Diferenciales|Ecuaciones Diferenciales]]|[[:Categoría:ED13/14|Curso 2013-14]] | Elisabet Sánchez López, Ana Santos Martín, Isabel Sastre Furones, Ángel Antonio Villa Figueroa }}&lt;br /&gt;
&lt;br /&gt;
{{ beta }}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Introducción ==&lt;br /&gt;
Tenemos una placa plana en forma de anillo. Vamos a trabajar en coordenadas polares en el plano y sabemos que la placa está comprendida entre los radios ρ=1 y ρ=6 y cuya temperatura inicial viene definida por la función u(ρ,0):&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\left\{\begin{matrix}100(ρ-1)   ………   ρ ∈ [1, 2] \\100     ………  ρ ∈ [2, 5]\\90(6-ρ)+10  ………  ρ ∈ [5, 6]\end{matrix}\right.&amp;lt;/math&amp;gt;&lt;br /&gt;
                                                                           &lt;br /&gt;
Si colocamos en los extremos interior ρ=1 y exterior ρ=6 objetos a una temperatura constante de 0 y 10 grados respectivamente, es decir, las condiciones de frontera serán:            &lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\left\{\begin{matrix}u(1,t)=0 \\u(6,t)=10\end{matrix}\right.&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; u_t-\Delta u= u_t- \frac{\partial^2 u }{\partial ρ^2} -\frac{1 }{ρ} \frac{\partial u }{\partial ρ}-\frac{1 }{ρ^2} \frac{\partial^2 u }{\partial θ^2}= u_t- \frac{\partial^2 u }{\partial ρ^2} -\frac{1 }{ρ} \frac{\partial u }{\partial ρ} = 0 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Así la ecuación queda de la siguiente manera:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; u_t-\frac{1 }{ρ} u_ρ - u_(ρρ) = 0 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Suponiendo que la temperatura u de la placa únicamente depende de la coordenada radial y del tiempo, es decir, u=u(ρ,t) y sabiendo que satisface la ecuación del calor &amp;lt;math&amp;gt; u_t-\Delta u=0&amp;lt;/math&amp;gt; , vamos a plantear el sistema de ecuaciones que satisface u(ρ,t) en coordenadas polares:&lt;br /&gt;
&lt;br /&gt;
== Método de diferencias finitas con el método del Trapecio ==&lt;br /&gt;
&lt;br /&gt;
Tomamos los pasos de discretización del espacio &amp;lt;math&amp;gt; \Delta ρ=0.1&amp;lt;/math&amp;gt; y del tiempo &amp;lt;math&amp;gt; \Delta t=(\Delta ρ/4)&amp;lt;/math&amp;gt; en t ∈ [0; 10]&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=    &lt;br /&gt;
%Datos&lt;br /&gt;
      a=1;b=6;h=0.1; ya=0;yb=10;&lt;br /&gt;
      N=(b-a)/h; dt=h/4;&lt;br /&gt;
      r=[a:h:b]'; rr=[a+h:h:b-h]';&lt;br /&gt;
      &lt;br /&gt;
%Defino K1:&lt;br /&gt;
      K1=diag(ones(1,N-1)*2)+diag(ones(1,N-2)*(-1),-1)+diag(ones(1,N-2)*(-1),1);&lt;br /&gt;
      K1=K1*(1/h^2);&lt;br /&gt;
      &lt;br /&gt;
%Defino K2:&lt;br /&gt;
      K2=diag(ones(N-2,1)*(-1),1)+diag(ones(N-2,1),-1);&lt;br /&gt;
      K2=(1/h^2)*K2;&lt;br /&gt;
      M=diag(1./rr);&lt;br /&gt;
      K2=M*K2;&lt;br /&gt;
     &lt;br /&gt;
      T0=0;TF=10;&lt;br /&gt;
      t=T0&lt;br /&gt;
      &lt;br /&gt;
%Defino la malla:&lt;br /&gt;
      [R,T]=meshgrid(r,t);&lt;br /&gt;
      &lt;br /&gt;
%Defino F:&lt;br /&gt;
      F=zeros(1,N-1)&lt;br /&gt;
      F(end)=F(end)+10/(h^2)+10/(2*5.9*h);        %(donde (b-h)=5.9)&lt;br /&gt;
     &lt;br /&gt;
%Condición inicial:&lt;br /&gt;
      for i=1:length(rr)&lt;br /&gt;
            if rr(i)&amp;lt;2&lt;br /&gt;
            U(i)=100*(rr(i)-1);&lt;br /&gt;
            elseif rr(i)&amp;lt;5&lt;br /&gt;
            U(i)=100;&lt;br /&gt;
            else&lt;br /&gt;
            U(i)=90*(6-rr(i))+10;&lt;br /&gt;
            end&lt;br /&gt;
      end&lt;br /&gt;
      sol(1,:)=[0,U,10]; &lt;br /&gt;
 &lt;br /&gt;
%Método del trapecio:&lt;br /&gt;
      for m=1:length(t)-1&lt;br /&gt;
            Z=U'+(dt/2)*(-(K1+K2)*U'+F');&lt;br /&gt;
            W=eye(N-1)+(dt/2)*(K1+K2);&lt;br /&gt;
            W=W\Z;&lt;br /&gt;
            sol(m+1,:)=[0,W',10];&lt;br /&gt;
            U=W'&lt;br /&gt;
      end&lt;br /&gt;
      &lt;br /&gt;
%dibujo&lt;br /&gt;
      surf(R,T,sol)&lt;br /&gt;
}}&lt;br /&gt;
[[Archivo:imagentrapecio.jpg|marco|centro|Superficie temperatura en el eje radial  ρ ∈ [1,6] en el intervalo de tiempo]]&lt;br /&gt;
&lt;br /&gt;
i&lt;br /&gt;
&lt;br /&gt;
== Temperatura en ρ=3 ==&lt;br /&gt;
Partiendo del programa anterior queremos ahora dibujar el comportamiento de la temperatura en los puntos para los cuales ρ = 3 en una gráfica 2D temperatura/tiempo:&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
&lt;br /&gt;
%Cálculo del punto N que corresponde a ρ=3&lt;br /&gt;
N3=(3-a)/h+1;&lt;br /&gt;
&lt;br /&gt;
%Dibujo&lt;br /&gt;
plot(sol(:,N3),t)&lt;br /&gt;
&lt;br /&gt;
}}&lt;br /&gt;
[[Archivo:imagenP3.jpg|marco|centro|Temperatura en los puntos de la corona �ρ = 3]]&lt;br /&gt;
i&lt;br /&gt;
&lt;br /&gt;
== Euler explícito, implícito y modificado ==&lt;br /&gt;
Como los datos son los mismos que los usados en el método de diferencias finitas del trapecio, no vamos a volver a repetir los datos puesto que son los mismos y lo único que cambia es el método utilizado.&lt;br /&gt;
&lt;br /&gt;
Euler explícito:&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
&lt;br /&gt;
%Método de Euler explícito&lt;br /&gt;
for m=1:length(t)-1&lt;br /&gt;
    Z=U'+(dt)*(-(K1+K2)*U'+F');&lt;br /&gt;
    sol(m+1,:)=[0,Z',10];&lt;br /&gt;
    U=Z';&lt;br /&gt;
end       &lt;br /&gt;
&lt;br /&gt;
surf(R,T,sol)&lt;br /&gt;
}}&lt;br /&gt;
[[Archivo:imageneuler.jpg|marco|centro|]]&lt;br /&gt;
i&lt;br /&gt;
&lt;br /&gt;
La explicación a esta gráfica resultante es que como el método es explícito, el sistema es inestable y significa que el paso tomado es grande, por eso tiene los límites muy elevados. &lt;br /&gt;
&lt;br /&gt;
Euler implícito:&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
%Método de Euler implícito:&lt;br /&gt;
          for m=1:length(t)-1 &lt;br /&gt;
                Z=U'+dt*(F');&lt;br /&gt;
                W=eye(N-1)+dt*(K1+K2);&lt;br /&gt;
                W=W\Z;&lt;br /&gt;
                sol(m+1,:)=[0,W',10]&lt;br /&gt;
                U=W';&lt;br /&gt;
          end&lt;br /&gt;
}}&lt;br /&gt;
[[Archivo:imageneimp.jpg|marco|centro|]]&lt;br /&gt;
i&lt;br /&gt;
&lt;br /&gt;
Euler modificado:&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
%Método de Euler modificado:&lt;br /&gt;
          for m=1:length(t)-1&lt;br /&gt;
               M1=-(K1+K2)*U'+F';&lt;br /&gt;
               M2=-(K1+K2)*(U'+M1*dt)+F';&lt;br /&gt;
               W=U'+(dt/2)*(M1+M2);&lt;br /&gt;
               sol(m+1,:)=[0,W',10];&lt;br /&gt;
               U=W':&lt;br /&gt;
          end&lt;br /&gt;
}}&lt;br /&gt;
[[Archivo:imagenemod.jpg|marco|centro|]]&lt;br /&gt;
i&lt;br /&gt;
&lt;br /&gt;
En este caso ocurre lo mismo que en el anterior caso.&lt;br /&gt;
&lt;br /&gt;
== Tiempos grandes (estado estacionario) ==&lt;br /&gt;
&lt;br /&gt;
El sistema a resolver para tiempos grandes queda de la siguiente manera:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\left\{\begin{matrix} -\frac{1 }{ρ} u_ρ - u_(ρρ) = 0 \\ u(1)=0 ;u(6)=10\end{matrix}\right.&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Categoría:Ecuaciones Diferenciales]]&lt;br /&gt;
[[Categoría:ED13/14]]&lt;br /&gt;
[[Categoría:Trabajos 2013-14]]&lt;/div&gt;</summary>
		<author><name>Toni Villa</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Ecuaci%C3%B3n_del_calor_en_una_placa_en_forma_de_anillo&amp;diff=12501</id>
		<title>Ecuación del calor en una placa en forma de anillo</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Ecuaci%C3%B3n_del_calor_en_una_placa_en_forma_de_anillo&amp;diff=12501"/>
				<updated>2014-05-18T22:20:22Z</updated>
		
		<summary type="html">&lt;p&gt;Toni Villa: /* Tiempos grandes (estado estacionario) */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{ TrabajoED | Ecuación del calor en una placa en forma de anillo. Grupo 6B | [[:Categoría:Ecuaciones Diferenciales|Ecuaciones Diferenciales]]|[[:Categoría:ED13/14|Curso 2013-14]] | Elisabet Sánchez López, Ana Santos Martín, Isabel Sastre Furones, Ángel Antonio Villa Figueroa }}&lt;br /&gt;
&lt;br /&gt;
{{ beta }}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Introducción ==&lt;br /&gt;
Tenemos una placa plana en forma de anillo. Vamos a trabajar en coordenadas polares en el plano y sabemos que la placa está comprendida entre los radios ρ=1 y ρ=6 y cuya temperatura inicial viene definida por la función u(ρ,0):&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\left\{\begin{matrix}100(ρ-1)   ………   ρ ∈ [1, 2] \\100     ………  ρ ∈ [2, 5]\\90(6-ρ)+10  ………  ρ ∈ [5, 6]\end{matrix}\right.&amp;lt;/math&amp;gt;&lt;br /&gt;
                                                                           &lt;br /&gt;
Si colocamos en los extremos interior ρ=1 y exterior ρ=6 objetos a una temperatura constante de 0 y 10 grados respectivamente, es decir, las condiciones de frontera serán:            &lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\left\{\begin{matrix}u(1,t)=0 \\u(6,t)=10\end{matrix}\right.&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; u_t-\Delta u= u_t- \frac{\partial^2 u }{\partial ρ^2} -\frac{1 }{ρ} \frac{\partial u }{\partial ρ}-\frac{1 }{ρ^2} \frac{\partial^2 u }{\partial θ^2}= u_t- \frac{\partial^2 u }{\partial ρ^2} -\frac{1 }{ρ} \frac{\partial u }{\partial ρ} = 0 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Así la ecuación queda de la siguiente manera:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; u_t-\frac{1 }{ρ} u_ρ - u_(ρρ) = 0 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Suponiendo que la temperatura u de la placa únicamente depende de la coordenada radial y del tiempo, es decir, u=u(ρ,t) y sabiendo que satisface la ecuación del calor &amp;lt;math&amp;gt; u_t-\Delta u=0&amp;lt;/math&amp;gt; , vamos a plantear el sistema de ecuaciones que satisface u(ρ,t) en coordenadas polares:&lt;br /&gt;
&lt;br /&gt;
== Método de diferencias finitas con el método del Trapecio ==&lt;br /&gt;
&lt;br /&gt;
Tomamos los pasos de discretización del espacio &amp;lt;math&amp;gt; \Delta ρ=0.1&amp;lt;/math&amp;gt; y del tiempo &amp;lt;math&amp;gt; \Delta t=(\Delta ρ/4)&amp;lt;/math&amp;gt; en t ∈ [0; 10]&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=    &lt;br /&gt;
%Datos&lt;br /&gt;
      a=1;b=6;h=0.1; ya=0;yb=10;&lt;br /&gt;
      N=(b-a)/h; dt=h/4;&lt;br /&gt;
      r=[a:h:b]'; rr=[a+h:h:b-h]';&lt;br /&gt;
      &lt;br /&gt;
%Defino K1:&lt;br /&gt;
      K1=diag(ones(1,N-1)*2)+diag(ones(1,N-2)*(-1),-1)+diag(ones(1,N-2)*(-1),1);&lt;br /&gt;
      K1=K1*(1/h^2);&lt;br /&gt;
      &lt;br /&gt;
%Defino K2:&lt;br /&gt;
      K2=diag(ones(N-2,1)*(-1),1)+diag(ones(N-2,1),-1);&lt;br /&gt;
      K2=(1/h^2)*K2;&lt;br /&gt;
      M=diag(1./rr);&lt;br /&gt;
      K2=M*K2;&lt;br /&gt;
     &lt;br /&gt;
      T0=0;TF=10;&lt;br /&gt;
      t=T0&lt;br /&gt;
      &lt;br /&gt;
%Defino la malla:&lt;br /&gt;
      [R,T]=meshgrid(r,t);&lt;br /&gt;
      &lt;br /&gt;
%Defino F:&lt;br /&gt;
      F=zeros(1,N-1)&lt;br /&gt;
      F(end)=F(end)+10/(h^2)+10/(2*5.9*h);        %(donde (b-h)=5.9)&lt;br /&gt;
     &lt;br /&gt;
%Condición inicial:&lt;br /&gt;
      for i=1:length(rr)&lt;br /&gt;
            if rr(i)&amp;lt;2&lt;br /&gt;
            U(i)=100*(rr(i)-1);&lt;br /&gt;
            elseif rr(i)&amp;lt;5&lt;br /&gt;
            U(i)=100;&lt;br /&gt;
            else&lt;br /&gt;
            U(i)=90*(6-rr(i))+10;&lt;br /&gt;
            end&lt;br /&gt;
      end&lt;br /&gt;
      sol(1,:)=[0,U,10]; &lt;br /&gt;
 &lt;br /&gt;
%Método del trapecio:&lt;br /&gt;
      for m=1:length(t)-1&lt;br /&gt;
            Z=U'+(dt/2)*(-(K1+K2)*U'+F');&lt;br /&gt;
            W=eye(N-1)+(dt/2)*(K1+K2);&lt;br /&gt;
            W=W\Z;&lt;br /&gt;
            sol(m+1,:)=[0,W',10];&lt;br /&gt;
            U=W'&lt;br /&gt;
      end&lt;br /&gt;
      &lt;br /&gt;
%dibujo&lt;br /&gt;
      surf(R,T,sol)&lt;br /&gt;
}}&lt;br /&gt;
[[Archivo:imagentrapecio.jpg|marco|centro|Superficie temperatura en el eje radial  ρ ∈ [1,6] en el intervalo de tiempo]]&lt;br /&gt;
&lt;br /&gt;
i&lt;br /&gt;
&lt;br /&gt;
== Temperatura en ρ=3 ==&lt;br /&gt;
Partiendo del programa anterior queremos ahora dibujar el comportamiento de la temperatura en los puntos para los cuales ρ = 3 en una gráfica 2D temperatura/tiempo:&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
&lt;br /&gt;
%Cálculo del punto N que corresponde a ρ=3&lt;br /&gt;
N3=(3-a)/h+1;&lt;br /&gt;
&lt;br /&gt;
%Dibujo&lt;br /&gt;
plot(sol(:,N3),t)&lt;br /&gt;
&lt;br /&gt;
}}&lt;br /&gt;
[[Archivo:imagenP3.jpg|marco|centro|Temperatura en los puntos de la corona �ρ = 3]]&lt;br /&gt;
i&lt;br /&gt;
&lt;br /&gt;
== Euler explícito, implícito y modificado ==&lt;br /&gt;
Como los datos son los mismos que los usados en el método de diferencias finitas del trapecio, no vamos a volver a repetir los datos puesto que son los mismos y lo único que cambia es el método utilizado.&lt;br /&gt;
&lt;br /&gt;
Euler explícito:&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
&lt;br /&gt;
%Método de Euler explícito&lt;br /&gt;
for m=1:length(t)-1&lt;br /&gt;
    Z=U'+(dt)*(-(K1+K2)*U'+F');&lt;br /&gt;
    sol(m+1,:)=[0,Z',10];&lt;br /&gt;
    U=Z';&lt;br /&gt;
end       &lt;br /&gt;
&lt;br /&gt;
surf(R,T,sol)&lt;br /&gt;
}}&lt;br /&gt;
[[Archivo:imageneuler.jpg|marco|centro|]]&lt;br /&gt;
i&lt;br /&gt;
&lt;br /&gt;
La explicación a esta gráfica resultante es que como el método es explícito, el sistema es inestable y significa que el paso tomado es grande, por eso tiene los límites muy elevados. &lt;br /&gt;
&lt;br /&gt;
Euler implícito:&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
%Método de Euler implícito:&lt;br /&gt;
          for m=1:length(t)-1 &lt;br /&gt;
                Z=U'+dt*(F');&lt;br /&gt;
                W=eye(N-1)+dt*(K1+K2);&lt;br /&gt;
                W=W\Z;&lt;br /&gt;
                sol(m+1,:)=[0,W',10]&lt;br /&gt;
                U=W';&lt;br /&gt;
          end&lt;br /&gt;
}}&lt;br /&gt;
[[Archivo:imageneimp.jpg|marco|centro|]]&lt;br /&gt;
i&lt;br /&gt;
&lt;br /&gt;
Euler modificado:&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
%Método de Euler modificado:&lt;br /&gt;
          for m=1:length(t)-1&lt;br /&gt;
               M1=-(K1+K2)*U'+F';&lt;br /&gt;
               M2=-(K1+K2)*(U'+M1*dt)+F';&lt;br /&gt;
               W=U'+(dt/2)*(M1+M2);&lt;br /&gt;
               sol(m+1,:)=[0,W',10];&lt;br /&gt;
               U=W':&lt;br /&gt;
          end&lt;br /&gt;
}}&lt;br /&gt;
[[Archivo:imagenemod.jpg|marco|centro|]]&lt;br /&gt;
i&lt;br /&gt;
&lt;br /&gt;
En este caso ocurre lo mismo que en el anterior caso.&lt;br /&gt;
&lt;br /&gt;
== Tiempos grandes (estado estacionario) ==&lt;br /&gt;
&lt;br /&gt;
El sistema a resolver para tiempos grandes queda de la siguiente manera:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\left\{\begin{matrix}u(1)=0 \\u(6)=10\end{matrix}\right.&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Categoría:Ecuaciones Diferenciales]]&lt;br /&gt;
[[Categoría:ED13/14]]&lt;br /&gt;
[[Categoría:Trabajos 2013-14]]&lt;/div&gt;</summary>
		<author><name>Toni Villa</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Ecuaci%C3%B3n_del_calor_en_una_placa_en_forma_de_anillo&amp;diff=12499</id>
		<title>Ecuación del calor en una placa en forma de anillo</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Ecuaci%C3%B3n_del_calor_en_una_placa_en_forma_de_anillo&amp;diff=12499"/>
				<updated>2014-05-18T22:18:03Z</updated>
		
		<summary type="html">&lt;p&gt;Toni Villa: /* Introducción */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{ TrabajoED | Ecuación del calor en una placa en forma de anillo. Grupo 6B | [[:Categoría:Ecuaciones Diferenciales|Ecuaciones Diferenciales]]|[[:Categoría:ED13/14|Curso 2013-14]] | Elisabet Sánchez López, Ana Santos Martín, Isabel Sastre Furones, Ángel Antonio Villa Figueroa }}&lt;br /&gt;
&lt;br /&gt;
{{ beta }}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Introducción ==&lt;br /&gt;
Tenemos una placa plana en forma de anillo. Vamos a trabajar en coordenadas polares en el plano y sabemos que la placa está comprendida entre los radios ρ=1 y ρ=6 y cuya temperatura inicial viene definida por la función u(ρ,0):&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\left\{\begin{matrix}100(ρ-1)   ………   ρ ∈ [1, 2] \\100     ………  ρ ∈ [2, 5]\\90(6-ρ)+10  ………  ρ ∈ [5, 6]\end{matrix}\right.&amp;lt;/math&amp;gt;&lt;br /&gt;
                                                                           &lt;br /&gt;
Si colocamos en los extremos interior ρ=1 y exterior ρ=6 objetos a una temperatura constante de 0 y 10 grados respectivamente, es decir, las condiciones de frontera serán:            &lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\left\{\begin{matrix}u(1,t)=0 \\u(6,t)=10\end{matrix}\right.&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; u_t-\Delta u= u_t- \frac{\partial^2 u }{\partial ρ^2} -\frac{1 }{ρ} \frac{\partial u }{\partial ρ}-\frac{1 }{ρ^2} \frac{\partial^2 u }{\partial θ^2}= u_t- \frac{\partial^2 u }{\partial ρ^2} -\frac{1 }{ρ} \frac{\partial u }{\partial ρ} = 0 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Así la ecuación queda de la siguiente manera:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; u_t-\frac{1 }{ρ} u_ρ - u_(ρρ) = 0 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Suponiendo que la temperatura u de la placa únicamente depende de la coordenada radial y del tiempo, es decir, u=u(ρ,t) y sabiendo que satisface la ecuación del calor &amp;lt;math&amp;gt; u_t-\Delta u=0&amp;lt;/math&amp;gt; , vamos a plantear el sistema de ecuaciones que satisface u(ρ,t) en coordenadas polares:&lt;br /&gt;
&lt;br /&gt;
== Método de diferencias finitas con el método del Trapecio ==&lt;br /&gt;
&lt;br /&gt;
Tomamos los pasos de discretización del espacio &amp;lt;math&amp;gt; \Delta ρ=0.1&amp;lt;/math&amp;gt; y del tiempo &amp;lt;math&amp;gt; \Delta t=(\Delta ρ/4)&amp;lt;/math&amp;gt; en t ∈ [0; 10]&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=    &lt;br /&gt;
%Datos&lt;br /&gt;
      a=1;b=6;h=0.1; ya=0;yb=10;&lt;br /&gt;
      N=(b-a)/h; dt=h/4;&lt;br /&gt;
      r=[a:h:b]'; rr=[a+h:h:b-h]';&lt;br /&gt;
      &lt;br /&gt;
%Defino K1:&lt;br /&gt;
      K1=diag(ones(1,N-1)*2)+diag(ones(1,N-2)*(-1),-1)+diag(ones(1,N-2)*(-1),1);&lt;br /&gt;
      K1=K1*(1/h^2);&lt;br /&gt;
      &lt;br /&gt;
%Defino K2:&lt;br /&gt;
      K2=diag(ones(N-2,1)*(-1),1)+diag(ones(N-2,1),-1);&lt;br /&gt;
      K2=(1/h^2)*K2;&lt;br /&gt;
      M=diag(1./rr);&lt;br /&gt;
      K2=M*K2;&lt;br /&gt;
     &lt;br /&gt;
      T0=0;TF=10;&lt;br /&gt;
      t=T0&lt;br /&gt;
      &lt;br /&gt;
%Defino la malla:&lt;br /&gt;
      [R,T]=meshgrid(r,t);&lt;br /&gt;
      &lt;br /&gt;
%Defino F:&lt;br /&gt;
      F=zeros(1,N-1)&lt;br /&gt;
      F(end)=F(end)+10/(h^2)+10/(2*5.9*h);        %(donde (b-h)=5.9)&lt;br /&gt;
     &lt;br /&gt;
%Condición inicial:&lt;br /&gt;
      for i=1:length(rr)&lt;br /&gt;
            if rr(i)&amp;lt;2&lt;br /&gt;
            U(i)=100*(rr(i)-1);&lt;br /&gt;
            elseif rr(i)&amp;lt;5&lt;br /&gt;
            U(i)=100;&lt;br /&gt;
            else&lt;br /&gt;
            U(i)=90*(6-rr(i))+10;&lt;br /&gt;
            end&lt;br /&gt;
      end&lt;br /&gt;
      sol(1,:)=[0,U,10]; &lt;br /&gt;
 &lt;br /&gt;
%Método del trapecio:&lt;br /&gt;
      for m=1:length(t)-1&lt;br /&gt;
            Z=U'+(dt/2)*(-(K1+K2)*U'+F');&lt;br /&gt;
            W=eye(N-1)+(dt/2)*(K1+K2);&lt;br /&gt;
            W=W\Z;&lt;br /&gt;
            sol(m+1,:)=[0,W',10];&lt;br /&gt;
            U=W'&lt;br /&gt;
      end&lt;br /&gt;
      &lt;br /&gt;
%dibujo&lt;br /&gt;
      surf(R,T,sol)&lt;br /&gt;
}}&lt;br /&gt;
[[Archivo:imagentrapecio.jpg|marco|centro|Superficie temperatura en el eje radial  ρ ∈ [1,6] en el intervalo de tiempo]]&lt;br /&gt;
&lt;br /&gt;
i&lt;br /&gt;
&lt;br /&gt;
== Temperatura en ρ=3 ==&lt;br /&gt;
Partiendo del programa anterior queremos ahora dibujar el comportamiento de la temperatura en los puntos para los cuales ρ = 3 en una gráfica 2D temperatura/tiempo:&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
&lt;br /&gt;
%Cálculo del punto N que corresponde a ρ=3&lt;br /&gt;
N3=(3-a)/h+1;&lt;br /&gt;
&lt;br /&gt;
%Dibujo&lt;br /&gt;
plot(sol(:,N3),t)&lt;br /&gt;
&lt;br /&gt;
}}&lt;br /&gt;
[[Archivo:imagenP3.jpg|marco|centro|Temperatura en los puntos de la corona �ρ = 3]]&lt;br /&gt;
i&lt;br /&gt;
&lt;br /&gt;
== Euler explícito, implícito y modificado ==&lt;br /&gt;
Como los datos son los mismos que los usados en el método de diferencias finitas del trapecio, no vamos a volver a repetir los datos puesto que son los mismos y lo único que cambia es el método utilizado.&lt;br /&gt;
&lt;br /&gt;
Euler explícito:&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
&lt;br /&gt;
%Método de Euler explícito&lt;br /&gt;
for m=1:length(t)-1&lt;br /&gt;
    Z=U'+(dt)*(-(K1+K2)*U'+F');&lt;br /&gt;
    sol(m+1,:)=[0,Z',10];&lt;br /&gt;
    U=Z';&lt;br /&gt;
end       &lt;br /&gt;
&lt;br /&gt;
surf(R,T,sol)&lt;br /&gt;
}}&lt;br /&gt;
[[Archivo:imageneuler.jpg|marco|centro|]]&lt;br /&gt;
i&lt;br /&gt;
&lt;br /&gt;
La explicación a esta gráfica resultante es que como el método es explícito, el sistema es inestable y significa que el paso tomado es grande, por eso tiene los límites muy elevados. &lt;br /&gt;
&lt;br /&gt;
Euler implícito:&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
%Método de Euler implícito:&lt;br /&gt;
          for m=1:length(t)-1 &lt;br /&gt;
                Z=U'+dt*(F');&lt;br /&gt;
                W=eye(N-1)+dt*(K1+K2);&lt;br /&gt;
                W=W\Z;&lt;br /&gt;
                sol(m+1,:)=[0,W',10]&lt;br /&gt;
                U=W';&lt;br /&gt;
          end&lt;br /&gt;
}}&lt;br /&gt;
[[Archivo:imageneimp.jpg|marco|centro|]]&lt;br /&gt;
i&lt;br /&gt;
&lt;br /&gt;
Euler modificado:&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
%Método de Euler modificado:&lt;br /&gt;
          for m=1:length(t)-1&lt;br /&gt;
               M1=-(K1+K2)*U'+F';&lt;br /&gt;
               M2=-(K1+K2)*(U'+M1*dt)+F';&lt;br /&gt;
               W=U'+(dt/2)*(M1+M2);&lt;br /&gt;
               sol(m+1,:)=[0,W',10];&lt;br /&gt;
               U=W':&lt;br /&gt;
          end&lt;br /&gt;
}}&lt;br /&gt;
[[Archivo:imagenemod.jpg|marco|centro|]]&lt;br /&gt;
i&lt;br /&gt;
&lt;br /&gt;
En este caso ocurre lo mismo que en el anterior caso.&lt;br /&gt;
&lt;br /&gt;
== Tiempos grandes (estado estacionario) ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Categoría:Ecuaciones Diferenciales]]&lt;br /&gt;
[[Categoría:ED13/14]]&lt;br /&gt;
[[Categoría:Trabajos 2013-14]]&lt;/div&gt;</summary>
		<author><name>Toni Villa</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Ecuaci%C3%B3n_del_calor_en_una_placa_en_forma_de_anillo&amp;diff=12498</id>
		<title>Ecuación del calor en una placa en forma de anillo</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Ecuaci%C3%B3n_del_calor_en_una_placa_en_forma_de_anillo&amp;diff=12498"/>
				<updated>2014-05-18T22:17:27Z</updated>
		
		<summary type="html">&lt;p&gt;Toni Villa: /* Introducción */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{ TrabajoED | Ecuación del calor en una placa en forma de anillo. Grupo 6B | [[:Categoría:Ecuaciones Diferenciales|Ecuaciones Diferenciales]]|[[:Categoría:ED13/14|Curso 2013-14]] | Elisabet Sánchez López, Ana Santos Martín, Isabel Sastre Furones, Ángel Antonio Villa Figueroa }}&lt;br /&gt;
&lt;br /&gt;
{{ beta }}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Introducción ==&lt;br /&gt;
Tenemos una placa plana en forma de anillo. Vamos a trabajar en coordenadas polares en el plano y sabemos que la placa está comprendida entre los radios ρ=1 y ρ=6 y cuya temperatura inicial viene definida por la función u(ρ,0):&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\left\{\begin{matrix}100(ρ-1)   ………   ρ ∈ [1, 2] \\100     ………  ρ ∈ [2, 5]\\90(6-ρ)+10  ………  ρ ∈ [5, 6]\end{matrix}\right.&amp;lt;/math&amp;gt;&lt;br /&gt;
                                                                           &lt;br /&gt;
Si colocamos en los extremos interior ρ=1 y exterior ρ=6 objetos a una temperatura constante de 0 y 10 grados respectivamente, es decir, las condiciones de frontera serán:            &lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\left\{\begin{matrix}u(1,t)=0 \\u(6,t)=10\end{matrix}\right.&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; u_t-\Delta u= u_t- \frac{\partial^2 u }{\partial ρ^2} -\frac{1 }{ρ} \frac{\partial u }{\partial ρ}-\frac{1 }{ρ^2} \frac{\partial^2 u }{\partial θ^2}= u_t- \frac{\partial^2 u }{\partial ρ^2} -\frac{1 }{ρ} \frac{\partial u }{\partial ρ} = 0 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Así la ecuación queda de la siguiente manera:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; u_t-\frac{1 }{ρ} u_ρ - u_ρ_ρ = 0 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Suponiendo que la temperatura u de la placa únicamente depende de la coordenada radial y del tiempo, es decir, u=u(ρ,t) y sabiendo que satisface la ecuación del calor &amp;lt;math&amp;gt; u_t-\Delta u=0&amp;lt;/math&amp;gt; , vamos a plantear el sistema de ecuaciones que satisface u(ρ,t) en coordenadas polares:&lt;br /&gt;
&lt;br /&gt;
== Método de diferencias finitas con el método del Trapecio ==&lt;br /&gt;
&lt;br /&gt;
Tomamos los pasos de discretización del espacio &amp;lt;math&amp;gt; \Delta ρ=0.1&amp;lt;/math&amp;gt; y del tiempo &amp;lt;math&amp;gt; \Delta t=(\Delta ρ/4)&amp;lt;/math&amp;gt; en t ∈ [0; 10]&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=    &lt;br /&gt;
%Datos&lt;br /&gt;
      a=1;b=6;h=0.1; ya=0;yb=10;&lt;br /&gt;
      N=(b-a)/h; dt=h/4;&lt;br /&gt;
      r=[a:h:b]'; rr=[a+h:h:b-h]';&lt;br /&gt;
      &lt;br /&gt;
%Defino K1:&lt;br /&gt;
      K1=diag(ones(1,N-1)*2)+diag(ones(1,N-2)*(-1),-1)+diag(ones(1,N-2)*(-1),1);&lt;br /&gt;
      K1=K1*(1/h^2);&lt;br /&gt;
      &lt;br /&gt;
%Defino K2:&lt;br /&gt;
      K2=diag(ones(N-2,1)*(-1),1)+diag(ones(N-2,1),-1);&lt;br /&gt;
      K2=(1/h^2)*K2;&lt;br /&gt;
      M=diag(1./rr);&lt;br /&gt;
      K2=M*K2;&lt;br /&gt;
     &lt;br /&gt;
      T0=0;TF=10;&lt;br /&gt;
      t=T0&lt;br /&gt;
      &lt;br /&gt;
%Defino la malla:&lt;br /&gt;
      [R,T]=meshgrid(r,t);&lt;br /&gt;
      &lt;br /&gt;
%Defino F:&lt;br /&gt;
      F=zeros(1,N-1)&lt;br /&gt;
      F(end)=F(end)+10/(h^2)+10/(2*5.9*h);        %(donde (b-h)=5.9)&lt;br /&gt;
     &lt;br /&gt;
%Condición inicial:&lt;br /&gt;
      for i=1:length(rr)&lt;br /&gt;
            if rr(i)&amp;lt;2&lt;br /&gt;
            U(i)=100*(rr(i)-1);&lt;br /&gt;
            elseif rr(i)&amp;lt;5&lt;br /&gt;
            U(i)=100;&lt;br /&gt;
            else&lt;br /&gt;
            U(i)=90*(6-rr(i))+10;&lt;br /&gt;
            end&lt;br /&gt;
      end&lt;br /&gt;
      sol(1,:)=[0,U,10]; &lt;br /&gt;
 &lt;br /&gt;
%Método del trapecio:&lt;br /&gt;
      for m=1:length(t)-1&lt;br /&gt;
            Z=U'+(dt/2)*(-(K1+K2)*U'+F');&lt;br /&gt;
            W=eye(N-1)+(dt/2)*(K1+K2);&lt;br /&gt;
            W=W\Z;&lt;br /&gt;
            sol(m+1,:)=[0,W',10];&lt;br /&gt;
            U=W'&lt;br /&gt;
      end&lt;br /&gt;
      &lt;br /&gt;
%dibujo&lt;br /&gt;
      surf(R,T,sol)&lt;br /&gt;
}}&lt;br /&gt;
[[Archivo:imagentrapecio.jpg|marco|centro|Superficie temperatura en el eje radial  ρ ∈ [1,6] en el intervalo de tiempo]]&lt;br /&gt;
&lt;br /&gt;
i&lt;br /&gt;
&lt;br /&gt;
== Temperatura en ρ=3 ==&lt;br /&gt;
Partiendo del programa anterior queremos ahora dibujar el comportamiento de la temperatura en los puntos para los cuales ρ = 3 en una gráfica 2D temperatura/tiempo:&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
&lt;br /&gt;
%Cálculo del punto N que corresponde a ρ=3&lt;br /&gt;
N3=(3-a)/h+1;&lt;br /&gt;
&lt;br /&gt;
%Dibujo&lt;br /&gt;
plot(sol(:,N3),t)&lt;br /&gt;
&lt;br /&gt;
}}&lt;br /&gt;
[[Archivo:imagenP3.jpg|marco|centro|Temperatura en los puntos de la corona �ρ = 3]]&lt;br /&gt;
i&lt;br /&gt;
&lt;br /&gt;
== Euler explícito, implícito y modificado ==&lt;br /&gt;
Como los datos son los mismos que los usados en el método de diferencias finitas del trapecio, no vamos a volver a repetir los datos puesto que son los mismos y lo único que cambia es el método utilizado.&lt;br /&gt;
&lt;br /&gt;
Euler explícito:&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
&lt;br /&gt;
%Método de Euler explícito&lt;br /&gt;
for m=1:length(t)-1&lt;br /&gt;
    Z=U'+(dt)*(-(K1+K2)*U'+F');&lt;br /&gt;
    sol(m+1,:)=[0,Z',10];&lt;br /&gt;
    U=Z';&lt;br /&gt;
end       &lt;br /&gt;
&lt;br /&gt;
surf(R,T,sol)&lt;br /&gt;
}}&lt;br /&gt;
[[Archivo:imageneuler.jpg|marco|centro|]]&lt;br /&gt;
i&lt;br /&gt;
&lt;br /&gt;
La explicación a esta gráfica resultante es que como el método es explícito, el sistema es inestable y significa que el paso tomado es grande, por eso tiene los límites muy elevados. &lt;br /&gt;
&lt;br /&gt;
Euler implícito:&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
%Método de Euler implícito:&lt;br /&gt;
          for m=1:length(t)-1 &lt;br /&gt;
                Z=U'+dt*(F');&lt;br /&gt;
                W=eye(N-1)+dt*(K1+K2);&lt;br /&gt;
                W=W\Z;&lt;br /&gt;
                sol(m+1,:)=[0,W',10]&lt;br /&gt;
                U=W';&lt;br /&gt;
          end&lt;br /&gt;
}}&lt;br /&gt;
[[Archivo:imageneimp.jpg|marco|centro|]]&lt;br /&gt;
i&lt;br /&gt;
&lt;br /&gt;
Euler modificado:&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
%Método de Euler modificado:&lt;br /&gt;
          for m=1:length(t)-1&lt;br /&gt;
               M1=-(K1+K2)*U'+F';&lt;br /&gt;
               M2=-(K1+K2)*(U'+M1*dt)+F';&lt;br /&gt;
               W=U'+(dt/2)*(M1+M2);&lt;br /&gt;
               sol(m+1,:)=[0,W',10];&lt;br /&gt;
               U=W':&lt;br /&gt;
          end&lt;br /&gt;
}}&lt;br /&gt;
[[Archivo:imagenemod.jpg|marco|centro|]]&lt;br /&gt;
i&lt;br /&gt;
&lt;br /&gt;
En este caso ocurre lo mismo que en el anterior caso.&lt;br /&gt;
&lt;br /&gt;
== Tiempos grandes (estado estacionario) ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Categoría:Ecuaciones Diferenciales]]&lt;br /&gt;
[[Categoría:ED13/14]]&lt;br /&gt;
[[Categoría:Trabajos 2013-14]]&lt;/div&gt;</summary>
		<author><name>Toni Villa</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Ecuaci%C3%B3n_del_calor_en_una_placa_en_forma_de_anillo&amp;diff=12497</id>
		<title>Ecuación del calor en una placa en forma de anillo</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Ecuaci%C3%B3n_del_calor_en_una_placa_en_forma_de_anillo&amp;diff=12497"/>
				<updated>2014-05-18T22:16:27Z</updated>
		
		<summary type="html">&lt;p&gt;Toni Villa: /* Introducción */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{ TrabajoED | Ecuación del calor en una placa en forma de anillo. Grupo 6B | [[:Categoría:Ecuaciones Diferenciales|Ecuaciones Diferenciales]]|[[:Categoría:ED13/14|Curso 2013-14]] | Elisabet Sánchez López, Ana Santos Martín, Isabel Sastre Furones, Ángel Antonio Villa Figueroa }}&lt;br /&gt;
&lt;br /&gt;
{{ beta }}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Introducción ==&lt;br /&gt;
Tenemos una placa plana en forma de anillo. Vamos a trabajar en coordenadas polares en el plano y sabemos que la placa está comprendida entre los radios ρ=1 y ρ=6 y cuya temperatura inicial viene definida por la función u(ρ,0):&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\left\{\begin{matrix}100·(ρ-1)   −   ρ ∈ [1, 2] \\100     −  ρ ∈ [2, 5]\\90·(6-ρ)+10  −  ρ ∈ [5, 6]\end{matrix}\right.&amp;lt;/math&amp;gt;&lt;br /&gt;
                                                                           &lt;br /&gt;
Si colocamos en los extremos interior ρ=1 y exterior ρ=6 objetos a una temperatura constante de 0 y 10 grados respectivamente, es decir, las condiciones de frontera serán:            &lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\left\{\begin{matrix}u(1,t)=0 \\u(6,t)=10\end{matrix}\right.&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; u_t-\Delta u= u_t- \frac{\partial^2 u }{\partial ρ^2} -\frac{1 }{ρ} \frac{\partial u }{\partial ρ}-\frac{1 }{ρ^2} \frac{\partial^2 u }{\partial θ^2}= u_t- \frac{\partial^2 u }{\partial ρ^2} -\frac{1 }{ρ} \frac{\partial u }{\partial ρ} = 0 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Así la ecuación queda de la siguiente manera:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; u_t-\frac{1 }{ρ} u_ρ - u_ρ_ρ = 0 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Suponiendo que la temperatura u de la placa únicamente depende de la coordenada radial y del tiempo, es decir, u=u(ρ,t) y sabiendo que satisface la ecuación del calor &amp;lt;math&amp;gt; u_t-\Delta u=0&amp;lt;/math&amp;gt; , vamos a plantear el sistema de ecuaciones que satisface u(ρ,t) en coordenadas polares:&lt;br /&gt;
&lt;br /&gt;
== Método de diferencias finitas con el método del Trapecio ==&lt;br /&gt;
&lt;br /&gt;
Tomamos los pasos de discretización del espacio &amp;lt;math&amp;gt; \Delta ρ=0.1&amp;lt;/math&amp;gt; y del tiempo &amp;lt;math&amp;gt; \Delta t=(\Delta ρ/4)&amp;lt;/math&amp;gt; en t ∈ [0; 10]&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=    &lt;br /&gt;
%Datos&lt;br /&gt;
      a=1;b=6;h=0.1; ya=0;yb=10;&lt;br /&gt;
      N=(b-a)/h; dt=h/4;&lt;br /&gt;
      r=[a:h:b]'; rr=[a+h:h:b-h]';&lt;br /&gt;
      &lt;br /&gt;
%Defino K1:&lt;br /&gt;
      K1=diag(ones(1,N-1)*2)+diag(ones(1,N-2)*(-1),-1)+diag(ones(1,N-2)*(-1),1);&lt;br /&gt;
      K1=K1*(1/h^2);&lt;br /&gt;
      &lt;br /&gt;
%Defino K2:&lt;br /&gt;
      K2=diag(ones(N-2,1)*(-1),1)+diag(ones(N-2,1),-1);&lt;br /&gt;
      K2=(1/h^2)*K2;&lt;br /&gt;
      M=diag(1./rr);&lt;br /&gt;
      K2=M*K2;&lt;br /&gt;
     &lt;br /&gt;
      T0=0;TF=10;&lt;br /&gt;
      t=T0&lt;br /&gt;
      &lt;br /&gt;
%Defino la malla:&lt;br /&gt;
      [R,T]=meshgrid(r,t);&lt;br /&gt;
      &lt;br /&gt;
%Defino F:&lt;br /&gt;
      F=zeros(1,N-1)&lt;br /&gt;
      F(end)=F(end)+10/(h^2)+10/(2*5.9*h);        %(donde (b-h)=5.9)&lt;br /&gt;
     &lt;br /&gt;
%Condición inicial:&lt;br /&gt;
      for i=1:length(rr)&lt;br /&gt;
            if rr(i)&amp;lt;2&lt;br /&gt;
            U(i)=100*(rr(i)-1);&lt;br /&gt;
            elseif rr(i)&amp;lt;5&lt;br /&gt;
            U(i)=100;&lt;br /&gt;
            else&lt;br /&gt;
            U(i)=90*(6-rr(i))+10;&lt;br /&gt;
            end&lt;br /&gt;
      end&lt;br /&gt;
      sol(1,:)=[0,U,10]; &lt;br /&gt;
 &lt;br /&gt;
%Método del trapecio:&lt;br /&gt;
      for m=1:length(t)-1&lt;br /&gt;
            Z=U'+(dt/2)*(-(K1+K2)*U'+F');&lt;br /&gt;
            W=eye(N-1)+(dt/2)*(K1+K2);&lt;br /&gt;
            W=W\Z;&lt;br /&gt;
            sol(m+1,:)=[0,W',10];&lt;br /&gt;
            U=W'&lt;br /&gt;
      end&lt;br /&gt;
      &lt;br /&gt;
%dibujo&lt;br /&gt;
      surf(R,T,sol)&lt;br /&gt;
}}&lt;br /&gt;
[[Archivo:imagentrapecio.jpg|marco|centro|Superficie temperatura en el eje radial  ρ ∈ [1,6] en el intervalo de tiempo]]&lt;br /&gt;
&lt;br /&gt;
i&lt;br /&gt;
&lt;br /&gt;
== Temperatura en ρ=3 ==&lt;br /&gt;
Partiendo del programa anterior queremos ahora dibujar el comportamiento de la temperatura en los puntos para los cuales ρ = 3 en una gráfica 2D temperatura/tiempo:&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
&lt;br /&gt;
%Cálculo del punto N que corresponde a ρ=3&lt;br /&gt;
N3=(3-a)/h+1;&lt;br /&gt;
&lt;br /&gt;
%Dibujo&lt;br /&gt;
plot(sol(:,N3),t)&lt;br /&gt;
&lt;br /&gt;
}}&lt;br /&gt;
[[Archivo:imagenP3.jpg|marco|centro|Temperatura en los puntos de la corona �ρ = 3]]&lt;br /&gt;
i&lt;br /&gt;
&lt;br /&gt;
== Euler explícito, implícito y modificado ==&lt;br /&gt;
Como los datos son los mismos que los usados en el método de diferencias finitas del trapecio, no vamos a volver a repetir los datos puesto que son los mismos y lo único que cambia es el método utilizado.&lt;br /&gt;
&lt;br /&gt;
Euler explícito:&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
&lt;br /&gt;
%Método de Euler explícito&lt;br /&gt;
for m=1:length(t)-1&lt;br /&gt;
    Z=U'+(dt)*(-(K1+K2)*U'+F');&lt;br /&gt;
    sol(m+1,:)=[0,Z',10];&lt;br /&gt;
    U=Z';&lt;br /&gt;
end       &lt;br /&gt;
&lt;br /&gt;
surf(R,T,sol)&lt;br /&gt;
}}&lt;br /&gt;
[[Archivo:imageneuler.jpg|marco|centro|]]&lt;br /&gt;
i&lt;br /&gt;
&lt;br /&gt;
La explicación a esta gráfica resultante es que como el método es explícito, el sistema es inestable y significa que el paso tomado es grande, por eso tiene los límites muy elevados. &lt;br /&gt;
&lt;br /&gt;
Euler implícito:&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
%Método de Euler implícito:&lt;br /&gt;
          for m=1:length(t)-1 &lt;br /&gt;
                Z=U'+dt*(F');&lt;br /&gt;
                W=eye(N-1)+dt*(K1+K2);&lt;br /&gt;
                W=W\Z;&lt;br /&gt;
                sol(m+1,:)=[0,W',10]&lt;br /&gt;
                U=W';&lt;br /&gt;
          end&lt;br /&gt;
}}&lt;br /&gt;
[[Archivo:imageneimp.jpg|marco|centro|]]&lt;br /&gt;
i&lt;br /&gt;
&lt;br /&gt;
Euler modificado:&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
%Método de Euler modificado:&lt;br /&gt;
          for m=1:length(t)-1&lt;br /&gt;
               M1=-(K1+K2)*U'+F';&lt;br /&gt;
               M2=-(K1+K2)*(U'+M1*dt)+F';&lt;br /&gt;
               W=U'+(dt/2)*(M1+M2);&lt;br /&gt;
               sol(m+1,:)=[0,W',10];&lt;br /&gt;
               U=W':&lt;br /&gt;
          end&lt;br /&gt;
}}&lt;br /&gt;
[[Archivo:imagenemod.jpg|marco|centro|]]&lt;br /&gt;
i&lt;br /&gt;
&lt;br /&gt;
En este caso ocurre lo mismo que en el anterior caso.&lt;br /&gt;
&lt;br /&gt;
== Tiempos grandes (estado estacionario) ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Categoría:Ecuaciones Diferenciales]]&lt;br /&gt;
[[Categoría:ED13/14]]&lt;br /&gt;
[[Categoría:Trabajos 2013-14]]&lt;/div&gt;</summary>
		<author><name>Toni Villa</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Ecuaci%C3%B3n_del_calor_en_una_placa_en_forma_de_anillo&amp;diff=12496</id>
		<title>Ecuación del calor en una placa en forma de anillo</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Ecuaci%C3%B3n_del_calor_en_una_placa_en_forma_de_anillo&amp;diff=12496"/>
				<updated>2014-05-18T22:15:24Z</updated>
		
		<summary type="html">&lt;p&gt;Toni Villa: /* Introducción */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{ TrabajoED | Ecuación del calor en una placa en forma de anillo. Grupo 6B | [[:Categoría:Ecuaciones Diferenciales|Ecuaciones Diferenciales]]|[[:Categoría:ED13/14|Curso 2013-14]] | Elisabet Sánchez López, Ana Santos Martín, Isabel Sastre Furones, Ángel Antonio Villa Figueroa }}&lt;br /&gt;
&lt;br /&gt;
{{ beta }}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Introducción ==&lt;br /&gt;
Tenemos una placa plana en forma de anillo. Vamos a trabajar en coordenadas polares en el plano y sabemos que la placa está comprendida entre los radios ρ=1 y ρ=6 y cuya temperatura inicial viene definida por la función u(ρ,0):&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\left\{\begin{matrix}100·(ρ-1)   con  ρ ∈ [1, 2] \\100     con  ρ ∈ [2, 5]\\90·(6-ρ)+10  con  ρ ∈ [5, 6]\end{matrix}\right.&amp;lt;/math&amp;gt;&lt;br /&gt;
                                                                           &lt;br /&gt;
Si colocamos en los extremos interior ρ=1 y exterior ρ=6 objetos a una temperatura constante de 0 y 10 grados respectivamente, es decir, las condiciones de frontera serán:            &lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\left\{\begin{matrix}u(1,t)=0 \\u(6,t)=10\end{matrix}\right.&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; u_t-\Delta u= u_t- \frac{\partial^2 u }{\partial ρ^2} -\frac{1 }{ρ} \frac{\partial u }{\partial ρ}-\frac{1 }{ρ^2} \frac{\partial^2 u }{\partial θ^2}= u_t- \frac{\partial^2 u }{\partial ρ^2} -\frac{1 }{ρ} \frac{\partial u }{\partial ρ} = 0 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Así la ecuación queda de la siguiente manera:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; u_t-\frac{1 }{ρ} u_ρ - u_ρρ = 0 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Suponiendo que la temperatura u de la placa únicamente depende de la coordenada radial y del tiempo, es decir, u=u(ρ,t) y sabiendo que satisface la ecuación del calor &amp;lt;math&amp;gt; u_t-\Delta u=0&amp;lt;/math&amp;gt; , vamos a plantear el sistema de ecuaciones que satisface u(ρ,t) en coordenadas polares:&lt;br /&gt;
&lt;br /&gt;
== Método de diferencias finitas con el método del Trapecio ==&lt;br /&gt;
&lt;br /&gt;
Tomamos los pasos de discretización del espacio &amp;lt;math&amp;gt; \Delta ρ=0.1&amp;lt;/math&amp;gt; y del tiempo &amp;lt;math&amp;gt; \Delta t=(\Delta ρ/4)&amp;lt;/math&amp;gt; en t ∈ [0; 10]&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=    &lt;br /&gt;
%Datos&lt;br /&gt;
      a=1;b=6;h=0.1; ya=0;yb=10;&lt;br /&gt;
      N=(b-a)/h; dt=h/4;&lt;br /&gt;
      r=[a:h:b]'; rr=[a+h:h:b-h]';&lt;br /&gt;
      &lt;br /&gt;
%Defino K1:&lt;br /&gt;
      K1=diag(ones(1,N-1)*2)+diag(ones(1,N-2)*(-1),-1)+diag(ones(1,N-2)*(-1),1);&lt;br /&gt;
      K1=K1*(1/h^2);&lt;br /&gt;
      &lt;br /&gt;
%Defino K2:&lt;br /&gt;
      K2=diag(ones(N-2,1)*(-1),1)+diag(ones(N-2,1),-1);&lt;br /&gt;
      K2=(1/h^2)*K2;&lt;br /&gt;
      M=diag(1./rr);&lt;br /&gt;
      K2=M*K2;&lt;br /&gt;
     &lt;br /&gt;
      T0=0;TF=10;&lt;br /&gt;
      t=T0&lt;br /&gt;
      &lt;br /&gt;
%Defino la malla:&lt;br /&gt;
      [R,T]=meshgrid(r,t);&lt;br /&gt;
      &lt;br /&gt;
%Defino F:&lt;br /&gt;
      F=zeros(1,N-1)&lt;br /&gt;
      F(end)=F(end)+10/(h^2)+10/(2*5.9*h);        %(donde (b-h)=5.9)&lt;br /&gt;
     &lt;br /&gt;
%Condición inicial:&lt;br /&gt;
      for i=1:length(rr)&lt;br /&gt;
            if rr(i)&amp;lt;2&lt;br /&gt;
            U(i)=100*(rr(i)-1);&lt;br /&gt;
            elseif rr(i)&amp;lt;5&lt;br /&gt;
            U(i)=100;&lt;br /&gt;
            else&lt;br /&gt;
            U(i)=90*(6-rr(i))+10;&lt;br /&gt;
            end&lt;br /&gt;
      end&lt;br /&gt;
      sol(1,:)=[0,U,10]; &lt;br /&gt;
 &lt;br /&gt;
%Método del trapecio:&lt;br /&gt;
      for m=1:length(t)-1&lt;br /&gt;
            Z=U'+(dt/2)*(-(K1+K2)*U'+F');&lt;br /&gt;
            W=eye(N-1)+(dt/2)*(K1+K2);&lt;br /&gt;
            W=W\Z;&lt;br /&gt;
            sol(m+1,:)=[0,W',10];&lt;br /&gt;
            U=W'&lt;br /&gt;
      end&lt;br /&gt;
      &lt;br /&gt;
%dibujo&lt;br /&gt;
      surf(R,T,sol)&lt;br /&gt;
}}&lt;br /&gt;
[[Archivo:imagentrapecio.jpg|marco|centro|Superficie temperatura en el eje radial  ρ ∈ [1,6] en el intervalo de tiempo]]&lt;br /&gt;
&lt;br /&gt;
i&lt;br /&gt;
&lt;br /&gt;
== Temperatura en ρ=3 ==&lt;br /&gt;
Partiendo del programa anterior queremos ahora dibujar el comportamiento de la temperatura en los puntos para los cuales ρ = 3 en una gráfica 2D temperatura/tiempo:&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
&lt;br /&gt;
%Cálculo del punto N que corresponde a ρ=3&lt;br /&gt;
N3=(3-a)/h+1;&lt;br /&gt;
&lt;br /&gt;
%Dibujo&lt;br /&gt;
plot(sol(:,N3),t)&lt;br /&gt;
&lt;br /&gt;
}}&lt;br /&gt;
[[Archivo:imagenP3.jpg|marco|centro|Temperatura en los puntos de la corona �ρ = 3]]&lt;br /&gt;
i&lt;br /&gt;
&lt;br /&gt;
== Euler explícito, implícito y modificado ==&lt;br /&gt;
Como los datos son los mismos que los usados en el método de diferencias finitas del trapecio, no vamos a volver a repetir los datos puesto que son los mismos y lo único que cambia es el método utilizado.&lt;br /&gt;
&lt;br /&gt;
Euler explícito:&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
&lt;br /&gt;
%Método de Euler explícito&lt;br /&gt;
for m=1:length(t)-1&lt;br /&gt;
    Z=U'+(dt)*(-(K1+K2)*U'+F');&lt;br /&gt;
    sol(m+1,:)=[0,Z',10];&lt;br /&gt;
    U=Z';&lt;br /&gt;
end       &lt;br /&gt;
&lt;br /&gt;
surf(R,T,sol)&lt;br /&gt;
}}&lt;br /&gt;
[[Archivo:imageneuler.jpg|marco|centro|]]&lt;br /&gt;
i&lt;br /&gt;
&lt;br /&gt;
La explicación a esta gráfica resultante es que como el método es explícito, el sistema es inestable y significa que el paso tomado es grande, por eso tiene los límites muy elevados. &lt;br /&gt;
&lt;br /&gt;
Euler implícito:&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
%Método de Euler implícito:&lt;br /&gt;
          for m=1:length(t)-1 &lt;br /&gt;
                Z=U'+dt*(F');&lt;br /&gt;
                W=eye(N-1)+dt*(K1+K2);&lt;br /&gt;
                W=W\Z;&lt;br /&gt;
                sol(m+1,:)=[0,W',10]&lt;br /&gt;
                U=W';&lt;br /&gt;
          end&lt;br /&gt;
}}&lt;br /&gt;
[[Archivo:imageneimp.jpg|marco|centro|]]&lt;br /&gt;
i&lt;br /&gt;
&lt;br /&gt;
Euler modificado:&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
%Método de Euler modificado:&lt;br /&gt;
          for m=1:length(t)-1&lt;br /&gt;
               M1=-(K1+K2)*U'+F';&lt;br /&gt;
               M2=-(K1+K2)*(U'+M1*dt)+F';&lt;br /&gt;
               W=U'+(dt/2)*(M1+M2);&lt;br /&gt;
               sol(m+1,:)=[0,W',10];&lt;br /&gt;
               U=W':&lt;br /&gt;
          end&lt;br /&gt;
}}&lt;br /&gt;
[[Archivo:imagenemod.jpg|marco|centro|]]&lt;br /&gt;
i&lt;br /&gt;
&lt;br /&gt;
En este caso ocurre lo mismo que en el anterior caso.&lt;br /&gt;
&lt;br /&gt;
== Tiempos grandes (estado estacionario) ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Categoría:Ecuaciones Diferenciales]]&lt;br /&gt;
[[Categoría:ED13/14]]&lt;br /&gt;
[[Categoría:Trabajos 2013-14]]&lt;/div&gt;</summary>
		<author><name>Toni Villa</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Ecuaci%C3%B3n_del_calor_en_una_placa_en_forma_de_anillo&amp;diff=12494</id>
		<title>Ecuación del calor en una placa en forma de anillo</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Ecuaci%C3%B3n_del_calor_en_una_placa_en_forma_de_anillo&amp;diff=12494"/>
				<updated>2014-05-18T22:14:53Z</updated>
		
		<summary type="html">&lt;p&gt;Toni Villa: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{ TrabajoED | Ecuación del calor en una placa en forma de anillo. Grupo 6B | [[:Categoría:Ecuaciones Diferenciales|Ecuaciones Diferenciales]]|[[:Categoría:ED13/14|Curso 2013-14]] | Elisabet Sánchez López, Ana Santos Martín, Isabel Sastre Furones, Ángel Antonio Villa Figueroa }}&lt;br /&gt;
&lt;br /&gt;
{{ beta }}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Introducción ==&lt;br /&gt;
Tenemos una placa plana en forma de anillo. Vamos a trabajar en coordenadas polares en el plano y sabemos que la placa está comprendida entre los radios ρ=1 y ρ=6 y cuya temperatura inicial viene definida por la función u(ρ,0):&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\left\{\begin{matrix}100·(ρ-1)   con  ρ ∈ [1, 2] \\100     con  ρ ∈ [2, 5]\\90·(6-ρ)+10  con  ρ ∈ [5, 6]\end{matrix}\right.&amp;lt;/math&amp;gt;&lt;br /&gt;
                                                                           &lt;br /&gt;
Si colocamos en los extremos interior ρ=1 y exterior ρ=6 objetos a una temperatura constante de 0 y 10 grados respectivamente, es decir, las condiciones de frontera serán:            &lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\left\{\begin{matrix}u(1,t)=0 \\u(6,t)=10\end{matrix}\right.&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; u_t-\Delta u= u_t- \frac{\partial^2 u }{\partial ρ^2} -\frac{1 }{ρ} \frac{\partial u }{\partial ρ}-\frac{1 }{ρ^2} \frac{\partial^2 u }{\partial θ^2}= u_t- \frac{\partial^2 u }{\partial ρ^2} -\frac{1 }{ρ} \frac{\partial u }{\partial ρ} = 0 &amp;lt;/math&amp;gt;&lt;br /&gt;
Así la ecuación queda de la siguiente manera:&lt;br /&gt;
&amp;lt;math&amp;gt; u_t-\frac{1 }{ρ} u_ρ - u_ρρ = 0 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Suponiendo que la temperatura u de la placa únicamente depende de la coordenada radial y del tiempo, es decir, u=u(ρ,t) y sabiendo que satisface la ecuación del calor &amp;lt;math&amp;gt; u_t-\Delta u=0&amp;lt;/math&amp;gt; , vamos a plantear el sistema de ecuaciones que satisface u(ρ,t) en coordenadas polares:&lt;br /&gt;
&lt;br /&gt;
== Método de diferencias finitas con el método del Trapecio ==&lt;br /&gt;
&lt;br /&gt;
Tomamos los pasos de discretización del espacio &amp;lt;math&amp;gt; \Delta ρ=0.1&amp;lt;/math&amp;gt; y del tiempo &amp;lt;math&amp;gt; \Delta t=(\Delta ρ/4)&amp;lt;/math&amp;gt; en t ∈ [0; 10]&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=    &lt;br /&gt;
%Datos&lt;br /&gt;
      a=1;b=6;h=0.1; ya=0;yb=10;&lt;br /&gt;
      N=(b-a)/h; dt=h/4;&lt;br /&gt;
      r=[a:h:b]'; rr=[a+h:h:b-h]';&lt;br /&gt;
      &lt;br /&gt;
%Defino K1:&lt;br /&gt;
      K1=diag(ones(1,N-1)*2)+diag(ones(1,N-2)*(-1),-1)+diag(ones(1,N-2)*(-1),1);&lt;br /&gt;
      K1=K1*(1/h^2);&lt;br /&gt;
      &lt;br /&gt;
%Defino K2:&lt;br /&gt;
      K2=diag(ones(N-2,1)*(-1),1)+diag(ones(N-2,1),-1);&lt;br /&gt;
      K2=(1/h^2)*K2;&lt;br /&gt;
      M=diag(1./rr);&lt;br /&gt;
      K2=M*K2;&lt;br /&gt;
     &lt;br /&gt;
      T0=0;TF=10;&lt;br /&gt;
      t=T0&lt;br /&gt;
      &lt;br /&gt;
%Defino la malla:&lt;br /&gt;
      [R,T]=meshgrid(r,t);&lt;br /&gt;
      &lt;br /&gt;
%Defino F:&lt;br /&gt;
      F=zeros(1,N-1)&lt;br /&gt;
      F(end)=F(end)+10/(h^2)+10/(2*5.9*h);        %(donde (b-h)=5.9)&lt;br /&gt;
     &lt;br /&gt;
%Condición inicial:&lt;br /&gt;
      for i=1:length(rr)&lt;br /&gt;
            if rr(i)&amp;lt;2&lt;br /&gt;
            U(i)=100*(rr(i)-1);&lt;br /&gt;
            elseif rr(i)&amp;lt;5&lt;br /&gt;
            U(i)=100;&lt;br /&gt;
            else&lt;br /&gt;
            U(i)=90*(6-rr(i))+10;&lt;br /&gt;
            end&lt;br /&gt;
      end&lt;br /&gt;
      sol(1,:)=[0,U,10]; &lt;br /&gt;
 &lt;br /&gt;
%Método del trapecio:&lt;br /&gt;
      for m=1:length(t)-1&lt;br /&gt;
            Z=U'+(dt/2)*(-(K1+K2)*U'+F');&lt;br /&gt;
            W=eye(N-1)+(dt/2)*(K1+K2);&lt;br /&gt;
            W=W\Z;&lt;br /&gt;
            sol(m+1,:)=[0,W',10];&lt;br /&gt;
            U=W'&lt;br /&gt;
      end&lt;br /&gt;
      &lt;br /&gt;
%dibujo&lt;br /&gt;
      surf(R,T,sol)&lt;br /&gt;
}}&lt;br /&gt;
[[Archivo:imagentrapecio.jpg|marco|centro|Superficie temperatura en el eje radial  ρ ∈ [1,6] en el intervalo de tiempo]]&lt;br /&gt;
&lt;br /&gt;
i&lt;br /&gt;
&lt;br /&gt;
== Temperatura en ρ=3 ==&lt;br /&gt;
Partiendo del programa anterior queremos ahora dibujar el comportamiento de la temperatura en los puntos para los cuales ρ = 3 en una gráfica 2D temperatura/tiempo:&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
&lt;br /&gt;
%Cálculo del punto N que corresponde a ρ=3&lt;br /&gt;
N3=(3-a)/h+1;&lt;br /&gt;
&lt;br /&gt;
%Dibujo&lt;br /&gt;
plot(sol(:,N3),t)&lt;br /&gt;
&lt;br /&gt;
}}&lt;br /&gt;
[[Archivo:imagenP3.jpg|marco|centro|Temperatura en los puntos de la corona �ρ = 3]]&lt;br /&gt;
i&lt;br /&gt;
&lt;br /&gt;
== Euler explícito, implícito y modificado ==&lt;br /&gt;
Como los datos son los mismos que los usados en el método de diferencias finitas del trapecio, no vamos a volver a repetir los datos puesto que son los mismos y lo único que cambia es el método utilizado.&lt;br /&gt;
&lt;br /&gt;
Euler explícito:&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
&lt;br /&gt;
%Método de Euler explícito&lt;br /&gt;
for m=1:length(t)-1&lt;br /&gt;
    Z=U'+(dt)*(-(K1+K2)*U'+F');&lt;br /&gt;
    sol(m+1,:)=[0,Z',10];&lt;br /&gt;
    U=Z';&lt;br /&gt;
end       &lt;br /&gt;
&lt;br /&gt;
surf(R,T,sol)&lt;br /&gt;
}}&lt;br /&gt;
[[Archivo:imageneuler.jpg|marco|centro|]]&lt;br /&gt;
i&lt;br /&gt;
&lt;br /&gt;
La explicación a esta gráfica resultante es que como el método es explícito, el sistema es inestable y significa que el paso tomado es grande, por eso tiene los límites muy elevados. &lt;br /&gt;
&lt;br /&gt;
Euler implícito:&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
%Método de Euler implícito:&lt;br /&gt;
          for m=1:length(t)-1 &lt;br /&gt;
                Z=U'+dt*(F');&lt;br /&gt;
                W=eye(N-1)+dt*(K1+K2);&lt;br /&gt;
                W=W\Z;&lt;br /&gt;
                sol(m+1,:)=[0,W',10]&lt;br /&gt;
                U=W';&lt;br /&gt;
          end&lt;br /&gt;
}}&lt;br /&gt;
[[Archivo:imageneimp.jpg|marco|centro|]]&lt;br /&gt;
i&lt;br /&gt;
&lt;br /&gt;
Euler modificado:&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
%Método de Euler modificado:&lt;br /&gt;
          for m=1:length(t)-1&lt;br /&gt;
               M1=-(K1+K2)*U'+F';&lt;br /&gt;
               M2=-(K1+K2)*(U'+M1*dt)+F';&lt;br /&gt;
               W=U'+(dt/2)*(M1+M2);&lt;br /&gt;
               sol(m+1,:)=[0,W',10];&lt;br /&gt;
               U=W':&lt;br /&gt;
          end&lt;br /&gt;
}}&lt;br /&gt;
[[Archivo:imagenemod.jpg|marco|centro|]]&lt;br /&gt;
i&lt;br /&gt;
&lt;br /&gt;
En este caso ocurre lo mismo que en el anterior caso.&lt;br /&gt;
&lt;br /&gt;
== Tiempos grandes (estado estacionario) ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Categoría:Ecuaciones Diferenciales]]&lt;br /&gt;
[[Categoría:ED13/14]]&lt;br /&gt;
[[Categoría:Trabajos 2013-14]]&lt;/div&gt;</summary>
		<author><name>Toni Villa</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Ecuaci%C3%B3n_del_calor_en_una_placa_en_forma_de_anillo&amp;diff=12491</id>
		<title>Ecuación del calor en una placa en forma de anillo</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Ecuaci%C3%B3n_del_calor_en_una_placa_en_forma_de_anillo&amp;diff=12491"/>
				<updated>2014-05-18T22:09:03Z</updated>
		
		<summary type="html">&lt;p&gt;Toni Villa: /* Introducción */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{ TrabajoED | Ecuación del calor en una placa en forma de anillo. Grupo 6B | [[:Categoría:Ecuaciones Diferenciales|Ecuaciones Diferenciales]]|[[:Categoría:ED13/14|Curso 2013-14]] | Elisabet Sánchez López, Ana Santos Martín, Isabel Sastre Furones, Ángel Antonio Villa Figueroa }}&lt;br /&gt;
&lt;br /&gt;
{{ beta }}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Introducción ==&lt;br /&gt;
Tenemos una placa plana en forma de anillo. Vamos a trabajar en coordenadas polares en el plano y sabemos que la placa está comprendida entre los radios ρ=1 y ρ=6 y cuya temperatura inicial viene definida por la función u(ρ,0):&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\left\{\begin{matrix}100·(ρ-1)   con  ρ ∈ [1, 2] \\100     con  ρ ∈ [2, 5]\\90·(6-ρ)+10  con  ρ ∈ [5, 6]\end{matrix}\right.&amp;lt;/math&amp;gt;&lt;br /&gt;
                                                                           &lt;br /&gt;
Si colocamos en los extremos interior ρ=1 y exterior ρ=6 objetos a una temperatura constante de 0 y 10 grados respectivamente, es decir, las condiciones de frontera serán:            &lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\left\{\begin{matrix}u(1,t)=0 \\u(6,t)=10\end{matrix}\right.&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; u_t-\Delta u= u_t- \frac{\partial^2 u }{\partial ρ^2} -\frac{1 }{ρ} \frac{\partial u }{\partial ρ}-\frac{1 }{ρ^2} \frac{\partial^2 u }{\partial θ^2}= u_t- \frac{\partial^2 u }{\partial ρ^2} -\frac{1 }{ρ} \frac{\partial u }{\partial ρ} = 0 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Suponiendo que la temperatura u de la placa únicamente depende de la coordenada radial y del tiempo, es decir, u=u(ρ,t) y sabiendo que satisface la ecuación del calor &amp;lt;math&amp;gt; u_t-\Delta u=0&amp;lt;/math&amp;gt; , vamos a plantear el sistema de ecuaciones que satisface u(ρ,t) en coordenadas polares:&lt;br /&gt;
&lt;br /&gt;
== Método de diferencias finitas con el método del Trapecio ==&lt;br /&gt;
&lt;br /&gt;
Tomamos los pasos de discretización del espacio &amp;lt;math&amp;gt; \Delta ρ=0.1&amp;lt;/math&amp;gt; y del tiempo &amp;lt;math&amp;gt; \Delta t=(\Delta ρ/4)&amp;lt;/math&amp;gt; en t ∈ [0; 10]&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=    &lt;br /&gt;
%Datos&lt;br /&gt;
      a=1;b=6;h=0.1; ya=0;yb=10;&lt;br /&gt;
      N=(b-a)/h; dt=h/4;&lt;br /&gt;
      r=[a:h:b]'; rr=[a+h:h:b-h]';&lt;br /&gt;
      &lt;br /&gt;
%Defino K1:&lt;br /&gt;
      K1=diag(ones(1,N-1)*2)+diag(ones(1,N-2)*(-1),-1)+diag(ones(1,N-2)*(-1),1);&lt;br /&gt;
      K1=K1*(1/h^2);&lt;br /&gt;
      &lt;br /&gt;
%Defino K2:&lt;br /&gt;
      K2=diag(ones(N-2,1)*(-1),1)+diag(ones(N-2,1),-1);&lt;br /&gt;
      K2=(1/h^2)*K2;&lt;br /&gt;
      M=diag(1./rr);&lt;br /&gt;
      K2=M*K2;&lt;br /&gt;
     &lt;br /&gt;
      T0=0;TF=10;&lt;br /&gt;
      t=T0&lt;br /&gt;
      &lt;br /&gt;
%Defino la malla:&lt;br /&gt;
      [R,T]=meshgrid(r,t);&lt;br /&gt;
      &lt;br /&gt;
%Defino F:&lt;br /&gt;
      F=zeros(1,N-1)&lt;br /&gt;
      F(end)=F(end)+10/(h^2)+10/(2*5.9*h);        %(donde (b-h)=5.9)&lt;br /&gt;
     &lt;br /&gt;
%Condición inicial:&lt;br /&gt;
      for i=1:length(rr)&lt;br /&gt;
            if rr(i)&amp;lt;2&lt;br /&gt;
            U(i)=100*(rr(i)-1);&lt;br /&gt;
            elseif rr(i)&amp;lt;5&lt;br /&gt;
            U(i)=100;&lt;br /&gt;
            else&lt;br /&gt;
            U(i)=90*(6-rr(i))+10;&lt;br /&gt;
            end&lt;br /&gt;
      end&lt;br /&gt;
      sol(1,:)=[0,U,10]; &lt;br /&gt;
 &lt;br /&gt;
%Método del trapecio:&lt;br /&gt;
      for m=1:length(t)-1&lt;br /&gt;
            Z=U'+(dt/2)*(-(K1+K2)*U'+F');&lt;br /&gt;
            W=eye(N-1)+(dt/2)*(K1+K2);&lt;br /&gt;
            W=W\Z;&lt;br /&gt;
            sol(m+1,:)=[0,W',10];&lt;br /&gt;
            U=W'&lt;br /&gt;
      end&lt;br /&gt;
      &lt;br /&gt;
%dibujo&lt;br /&gt;
      surf(R,T,sol)&lt;br /&gt;
}}&lt;br /&gt;
[[Archivo:imagentrapecio.jpg|marco|centro|Superficie temperatura en el eje radial  ρ ∈ [1,6] en el intervalo de tiempo]]&lt;br /&gt;
&lt;br /&gt;
i&lt;br /&gt;
&lt;br /&gt;
== Temperatura en ρ=3 ==&lt;br /&gt;
Partiendo del programa anterior queremos ahora dibujar el comportamiento de la temperatura en los puntos para los cuales �ρ = 3 en una gr�áfica 2D temperatura/tiempo:&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
&lt;br /&gt;
%Cálculo del punto N que corresponde a ρ=3&lt;br /&gt;
N3=(3-a)/h+1;&lt;br /&gt;
&lt;br /&gt;
%Dibujo&lt;br /&gt;
plot(sol(:,N3),t)&lt;br /&gt;
&lt;br /&gt;
}}&lt;br /&gt;
[[Archivo:imagenP3.jpg|marco|centro|Temperatura en los puntos de la corona �ρ = 3]]&lt;br /&gt;
i&lt;br /&gt;
&lt;br /&gt;
== Euler explícito, implícito y modificado ==&lt;br /&gt;
Como los datos son los mismos que los usados en el método de diferencias finitas del trapecio, no vamos a volver a repetir los datos puesto que son los mismos y lo único que cambia es el método utilizado.&lt;br /&gt;
&lt;br /&gt;
Euler explícito:&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
&lt;br /&gt;
%Método de Euler explícito&lt;br /&gt;
for m=1:length(t)-1&lt;br /&gt;
    Z=U'+(dt)*(-(K1+K2)*U'+F');&lt;br /&gt;
    sol(m+1,:)=[0,Z',10];&lt;br /&gt;
    U=Z';&lt;br /&gt;
end       &lt;br /&gt;
&lt;br /&gt;
surf(R,T,sol)&lt;br /&gt;
}}&lt;br /&gt;
[[Archivo:imageneuler.jpg|marco|centro|]]&lt;br /&gt;
i&lt;br /&gt;
&lt;br /&gt;
La explicación a esta gráfica resultante es que como el método es explícito, el sistema es inestable y significa que el paso tomado es grande, por eso tiene los límites muy elevados. &lt;br /&gt;
&lt;br /&gt;
Euler implícito:&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
%Método de Euler implícito:&lt;br /&gt;
          for m=1:length(t)-1 &lt;br /&gt;
                Z=U'+dt*(F');&lt;br /&gt;
                W=eye(N-1)+dt*(K1+K2);&lt;br /&gt;
                W=W\Z;&lt;br /&gt;
                sol(m+1,:)=[0,W',10]&lt;br /&gt;
                U=W';&lt;br /&gt;
          end&lt;br /&gt;
}}&lt;br /&gt;
[[Archivo:imageneimp.jpg|marco|centro|]]&lt;br /&gt;
i&lt;br /&gt;
&lt;br /&gt;
Euler modificado:&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
%Método de Euler modificado:&lt;br /&gt;
          for m=1:length(t)-1&lt;br /&gt;
               M1=-(K1+K2)*U'+F';&lt;br /&gt;
               M2=-(K1+K2)*(U'+M1*dt)+F';&lt;br /&gt;
               W=U'+(dt/2)*(M1+M2);&lt;br /&gt;
               sol(m+1,:)=[0,W',10];&lt;br /&gt;
               U=W':&lt;br /&gt;
          end&lt;br /&gt;
}}&lt;br /&gt;
[[Archivo:imagenemod.jpg|marco|centro|]]&lt;br /&gt;
i&lt;br /&gt;
&lt;br /&gt;
En este caso ocurre lo mismo que en el anterior caso.&lt;br /&gt;
&lt;br /&gt;
[[Categoría:Ecuaciones Diferenciales]]&lt;br /&gt;
[[Categoría:ED13/14]]&lt;br /&gt;
[[Categoría:Trabajos 2013-14]]&lt;/div&gt;</summary>
		<author><name>Toni Villa</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Ecuaci%C3%B3n_del_calor_en_una_placa_en_forma_de_anillo&amp;diff=12490</id>
		<title>Ecuación del calor en una placa en forma de anillo</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Ecuaci%C3%B3n_del_calor_en_una_placa_en_forma_de_anillo&amp;diff=12490"/>
				<updated>2014-05-18T22:08:17Z</updated>
		
		<summary type="html">&lt;p&gt;Toni Villa: /* Introducción */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{ TrabajoED | Ecuación del calor en una placa en forma de anillo. Grupo 6B | [[:Categoría:Ecuaciones Diferenciales|Ecuaciones Diferenciales]]|[[:Categoría:ED13/14|Curso 2013-14]] | Elisabet Sánchez López, Ana Santos Martín, Isabel Sastre Furones, Ángel Antonio Villa Figueroa }}&lt;br /&gt;
&lt;br /&gt;
{{ beta }}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Introducción ==&lt;br /&gt;
Tenemos una placa plana en forma de anillo. Vamos a trabajar en coordenadas polares en el plano y sabemos que la placa está comprendida entre los radios ρ=1 y ρ=6 y cuya temperatura inicial viene definida por la función u(ρ,0):&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\left\{\begin{matrix}100·(ρ-1)   con  ρ ∈ [1, 2] \\100     con  ρ ∈ [2, 5]\\90·(6-ρ)+10  con  ρ ∈ [5, 6]\end{matrix}\right.&amp;lt;/math&amp;gt;&lt;br /&gt;
                                                                           &lt;br /&gt;
Si colocamos en los extremos interior ρ=1 y exterior ρ=6 objetos a una temperatura constante de 0 y 10 grados respectivamente, es decir, las condiciones de frontera serán:            &lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\left\{\begin{matrix}u(1,t)=0 \\u(6,t)=10\end{matrix}\right.&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; u_t-\Delta u= u_t- \frac{\partial^2 u }{\partial ρ^2} -\frac{1 }{ρ} \frac{\partial u }{\partial ρ}-\frac{1 }{ρ^2} \frac{\partial^2 u }{\partial θ^2}= u_t- \frac{\partial^2 u }{\partial ρ^2} -\frac{1 }{ρ} \frac{\partial u }{\partial ρ}  &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Suponiendo que la temperatura u de la placa únicamente depende de la coordenada radial y del tiempo, es decir, u=u(ρ,t) y sabiendo que satisface la ecuación del calor &amp;lt;math&amp;gt; u_t-\Delta u=0&amp;lt;/math&amp;gt; , vamos a plantear el sistema de ecuaciones que satisface u(ρ,t) en coordenadas polares:&lt;br /&gt;
&lt;br /&gt;
== Método de diferencias finitas con el método del Trapecio ==&lt;br /&gt;
&lt;br /&gt;
Tomamos los pasos de discretización del espacio &amp;lt;math&amp;gt; \Delta ρ=0.1&amp;lt;/math&amp;gt; y del tiempo &amp;lt;math&amp;gt; \Delta t=(\Delta ρ/4)&amp;lt;/math&amp;gt; en t ∈ [0; 10]&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=    &lt;br /&gt;
%Datos&lt;br /&gt;
      a=1;b=6;h=0.1; ya=0;yb=10;&lt;br /&gt;
      N=(b-a)/h; dt=h/4;&lt;br /&gt;
      r=[a:h:b]'; rr=[a+h:h:b-h]';&lt;br /&gt;
      &lt;br /&gt;
%Defino K1:&lt;br /&gt;
      K1=diag(ones(1,N-1)*2)+diag(ones(1,N-2)*(-1),-1)+diag(ones(1,N-2)*(-1),1);&lt;br /&gt;
      K1=K1*(1/h^2);&lt;br /&gt;
      &lt;br /&gt;
%Defino K2:&lt;br /&gt;
      K2=diag(ones(N-2,1)*(-1),1)+diag(ones(N-2,1),-1);&lt;br /&gt;
      K2=(1/h^2)*K2;&lt;br /&gt;
      M=diag(1./rr);&lt;br /&gt;
      K2=M*K2;&lt;br /&gt;
     &lt;br /&gt;
      T0=0;TF=10;&lt;br /&gt;
      t=T0&lt;br /&gt;
      &lt;br /&gt;
%Defino la malla:&lt;br /&gt;
      [R,T]=meshgrid(r,t);&lt;br /&gt;
      &lt;br /&gt;
%Defino F:&lt;br /&gt;
      F=zeros(1,N-1)&lt;br /&gt;
      F(end)=F(end)+10/(h^2)+10/(2*5.9*h);        %(donde (b-h)=5.9)&lt;br /&gt;
     &lt;br /&gt;
%Condición inicial:&lt;br /&gt;
      for i=1:length(rr)&lt;br /&gt;
            if rr(i)&amp;lt;2&lt;br /&gt;
            U(i)=100*(rr(i)-1);&lt;br /&gt;
            elseif rr(i)&amp;lt;5&lt;br /&gt;
            U(i)=100;&lt;br /&gt;
            else&lt;br /&gt;
            U(i)=90*(6-rr(i))+10;&lt;br /&gt;
            end&lt;br /&gt;
      end&lt;br /&gt;
      sol(1,:)=[0,U,10]; &lt;br /&gt;
 &lt;br /&gt;
%Método del trapecio:&lt;br /&gt;
      for m=1:length(t)-1&lt;br /&gt;
            Z=U'+(dt/2)*(-(K1+K2)*U'+F');&lt;br /&gt;
            W=eye(N-1)+(dt/2)*(K1+K2);&lt;br /&gt;
            W=W\Z;&lt;br /&gt;
            sol(m+1,:)=[0,W',10];&lt;br /&gt;
            U=W'&lt;br /&gt;
      end&lt;br /&gt;
      &lt;br /&gt;
%dibujo&lt;br /&gt;
      surf(R,T,sol)&lt;br /&gt;
}}&lt;br /&gt;
[[Archivo:imagentrapecio.jpg|marco|centro|Superficie temperatura en el eje radial  ρ ∈ [1,6] en el intervalo de tiempo]]&lt;br /&gt;
&lt;br /&gt;
i&lt;br /&gt;
&lt;br /&gt;
== Temperatura en ρ=3 ==&lt;br /&gt;
Partiendo del programa anterior queremos ahora dibujar el comportamiento de la temperatura en los puntos para los cuales �ρ = 3 en una gr�áfica 2D temperatura/tiempo:&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
&lt;br /&gt;
%Cálculo del punto N que corresponde a ρ=3&lt;br /&gt;
N3=(3-a)/h+1;&lt;br /&gt;
&lt;br /&gt;
%Dibujo&lt;br /&gt;
plot(sol(:,N3),t)&lt;br /&gt;
&lt;br /&gt;
}}&lt;br /&gt;
[[Archivo:imagenP3.jpg|marco|centro|Temperatura en los puntos de la corona �ρ = 3]]&lt;br /&gt;
i&lt;br /&gt;
&lt;br /&gt;
== Euler explícito, implícito y modificado ==&lt;br /&gt;
Como los datos son los mismos que los usados en el método de diferencias finitas del trapecio, no vamos a volver a repetir los datos puesto que son los mismos y lo único que cambia es el método utilizado.&lt;br /&gt;
&lt;br /&gt;
Euler explícito:&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
&lt;br /&gt;
%Método de Euler explícito&lt;br /&gt;
for m=1:length(t)-1&lt;br /&gt;
    Z=U'+(dt)*(-(K1+K2)*U'+F');&lt;br /&gt;
    sol(m+1,:)=[0,Z',10];&lt;br /&gt;
    U=Z';&lt;br /&gt;
end       &lt;br /&gt;
&lt;br /&gt;
surf(R,T,sol)&lt;br /&gt;
}}&lt;br /&gt;
[[Archivo:imageneuler.jpg|marco|centro|]]&lt;br /&gt;
i&lt;br /&gt;
&lt;br /&gt;
La explicación a esta gráfica resultante es que como el método es explícito, el sistema es inestable y significa que el paso tomado es grande, por eso tiene los límites muy elevados. &lt;br /&gt;
&lt;br /&gt;
Euler implícito:&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
%Método de Euler implícito:&lt;br /&gt;
          for m=1:length(t)-1 &lt;br /&gt;
                Z=U'+dt*(F');&lt;br /&gt;
                W=eye(N-1)+dt*(K1+K2);&lt;br /&gt;
                W=W\Z;&lt;br /&gt;
                sol(m+1,:)=[0,W',10]&lt;br /&gt;
                U=W';&lt;br /&gt;
          end&lt;br /&gt;
}}&lt;br /&gt;
[[Archivo:imageneimp.jpg|marco|centro|]]&lt;br /&gt;
i&lt;br /&gt;
&lt;br /&gt;
Euler modificado:&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
%Método de Euler modificado:&lt;br /&gt;
          for m=1:length(t)-1&lt;br /&gt;
               M1=-(K1+K2)*U'+F';&lt;br /&gt;
               M2=-(K1+K2)*(U'+M1*dt)+F';&lt;br /&gt;
               W=U'+(dt/2)*(M1+M2);&lt;br /&gt;
               sol(m+1,:)=[0,W',10];&lt;br /&gt;
               U=W':&lt;br /&gt;
          end&lt;br /&gt;
}}&lt;br /&gt;
[[Archivo:imagenemod.jpg|marco|centro|]]&lt;br /&gt;
i&lt;br /&gt;
&lt;br /&gt;
En este caso ocurre lo mismo que en el anterior caso.&lt;br /&gt;
&lt;br /&gt;
[[Categoría:Ecuaciones Diferenciales]]&lt;br /&gt;
[[Categoría:ED13/14]]&lt;br /&gt;
[[Categoría:Trabajos 2013-14]]&lt;/div&gt;</summary>
		<author><name>Toni Villa</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Ecuaci%C3%B3n_del_calor_en_una_placa_en_forma_de_anillo&amp;diff=12481</id>
		<title>Ecuación del calor en una placa en forma de anillo</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Ecuaci%C3%B3n_del_calor_en_una_placa_en_forma_de_anillo&amp;diff=12481"/>
				<updated>2014-05-18T21:54:15Z</updated>
		
		<summary type="html">&lt;p&gt;Toni Villa: /* Euler explícito, implícito y modificado */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{ TrabajoED | Ecuación del calor en una placa en forma de anillo. Grupo 6B | [[:Categoría:Ecuaciones Diferenciales|Ecuaciones Diferenciales]]|[[:Categoría:ED13/14|Curso 2013-14]] | Elisabet Sánchez López, Ana Santos Martín, Isabel Sastre Furones, Ángel Antonio Villa Figueroa }}&lt;br /&gt;
&lt;br /&gt;
{{ beta }}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Introducción ==&lt;br /&gt;
Tenemos una placa plana en forma de anillo. Vamos a trabajar en coordenadas polares en el plano y sabemos que la placa está comprendida entre los radios ρ=1 y ρ=6 y cuya temperatura inicial viene definida por la función u(ρ,0):&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\left\{\begin{matrix}100·(ρ-1)   con  ρ ∈ [1, 2] \\100     con  ρ ∈ [2, 5]\\90·(6-ρ)+10  con  ρ ∈ [5, 6]\end{matrix}\right.&amp;lt;/math&amp;gt;&lt;br /&gt;
                                                                           &lt;br /&gt;
Si colocamos en los extremos interior ρ=1 y exterior ρ=6 objetos a una temperatura constante de 0 y 10 grados respectivamente, es decir, las condiciones de frontera serán:            &lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\left\{\begin{matrix}u(1,t)=0 \\u(6,t)=10\end{matrix}\right.&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Suponiendo que la temperatura u de la placa únicamente depende de la coordenada radial y del tiempo, es decir, u=u(ρ,t) y sabiendo que satisface la ecuación del calor &amp;lt;math&amp;gt; u_t-\Delta u=0&amp;lt;/math&amp;gt; , vamos a plantear el sistema de ecuaciones que satisface u(ρ,t) en coordenadas polares:&lt;br /&gt;
&lt;br /&gt;
== Método de diferencias finitas con el método del Trapecio ==&lt;br /&gt;
&lt;br /&gt;
Tomamos los pasos de discretización del espacio &amp;lt;math&amp;gt; \Delta ρ=0.1&amp;lt;/math&amp;gt; y del tiempo &amp;lt;math&amp;gt; \Delta t=(\Delta ρ/4)&amp;lt;/math&amp;gt; en t ∈ [0; 10]&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=    &lt;br /&gt;
%Datos&lt;br /&gt;
      a=1;b=6;h=0.1; ya=0;yb=10;&lt;br /&gt;
      N=(b-a)/h; dt=h/4;&lt;br /&gt;
      r=[a:h:b]'; rr=[a+h:h:b-h]';&lt;br /&gt;
      &lt;br /&gt;
%Defino K1:&lt;br /&gt;
      K1=diag(ones(1,N-1)*2)+diag(ones(1,N-2)*(-1),-1)+diag(ones(1,N-2)*(-1),1);&lt;br /&gt;
      K1=K1*(1/h^2);&lt;br /&gt;
      &lt;br /&gt;
%Defino K2:&lt;br /&gt;
      K2=diag(ones(N-2,1)*(-1),1)+diag(ones(N-2,1),-1);&lt;br /&gt;
      K2=(1/h^2)*K2;&lt;br /&gt;
      M=diag(1./rr);&lt;br /&gt;
      K2=M*K2;&lt;br /&gt;
     &lt;br /&gt;
      T0=0;TF=10;&lt;br /&gt;
      t=T0&lt;br /&gt;
      &lt;br /&gt;
%Defino la malla:&lt;br /&gt;
      [R,T]=meshgrid(r,t);&lt;br /&gt;
      &lt;br /&gt;
%Defino F:&lt;br /&gt;
      F=zeros(1,N-1)&lt;br /&gt;
      F(end)=F(end)+10/(h^2)+10/(2*5.9*h);        %(donde (b-h)=5.9)&lt;br /&gt;
     &lt;br /&gt;
%Condición inicial:&lt;br /&gt;
      for i=1:length(rr)&lt;br /&gt;
            if rr(i)&amp;lt;2&lt;br /&gt;
            U(i)=100*(rr(i)-1);&lt;br /&gt;
            elseif rr(i)&amp;lt;5&lt;br /&gt;
            U(i)=100;&lt;br /&gt;
            else&lt;br /&gt;
            U(i)=90*(6-rr(i))+10;&lt;br /&gt;
            end&lt;br /&gt;
      end&lt;br /&gt;
      sol(1,:)=[0,U,10]; &lt;br /&gt;
 &lt;br /&gt;
%Método del trapecio:&lt;br /&gt;
      for m=1:length(t)-1&lt;br /&gt;
            Z=U'+(dt/2)*(-(K1+K2)*U'+F');&lt;br /&gt;
            W=eye(N-1)+(dt/2)*(K1+K2);&lt;br /&gt;
            W=W\Z;&lt;br /&gt;
            sol(m+1,:)=[0,W',10];&lt;br /&gt;
            U=W'&lt;br /&gt;
      end&lt;br /&gt;
      &lt;br /&gt;
%dibujo&lt;br /&gt;
      surf(R,T,sol)&lt;br /&gt;
}}&lt;br /&gt;
[[Archivo:imagentrapecio.jpg|marco|centro|Superficie temperatura en el eje radial  ρ ∈ [1,6] en el intervalo de tiempo]]&lt;br /&gt;
&lt;br /&gt;
i&lt;br /&gt;
&lt;br /&gt;
== Temperatura en ρ=3 ==&lt;br /&gt;
Partiendo del programa anterior queremos ahora dibujar el comportamiento de la temperatura en los puntos para los cuales �ρ = 3 en una gr�áfica 2D temperatura/tiempo:&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
&lt;br /&gt;
%Cálculo del punto N que corresponde a ρ=3&lt;br /&gt;
N3=(3-a)/h+1;&lt;br /&gt;
&lt;br /&gt;
%Dibujo&lt;br /&gt;
plot(sol(:,N3),t)&lt;br /&gt;
&lt;br /&gt;
}}&lt;br /&gt;
[[Archivo:imagenP3.jpg|marco|centro|Temperatura en los puntos de la corona �ρ = 3]]&lt;br /&gt;
i&lt;br /&gt;
&lt;br /&gt;
== Euler explícito, implícito y modificado ==&lt;br /&gt;
Como los datos son los mismos que los usados en el método de diferencias finitas del trapecio, no vamos a volver a repetir los datos puesto que son los mismos y lo único que cambia es el método utilizado.&lt;br /&gt;
&lt;br /&gt;
Euler explícito:&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
&lt;br /&gt;
%Método de Euler explícito&lt;br /&gt;
for m=1:length(t)-1&lt;br /&gt;
    Z=U'+(dt)*(-(K1+K2)*U'+F');&lt;br /&gt;
    sol(m+1,:)=[0,Z',10];&lt;br /&gt;
    U=Z';&lt;br /&gt;
end       &lt;br /&gt;
&lt;br /&gt;
surf(R,T,sol)&lt;br /&gt;
}}&lt;br /&gt;
[[Archivo:imageneuler.jpg|marco|centro|]]&lt;br /&gt;
i&lt;br /&gt;
&lt;br /&gt;
La explicación a esta gráfica resultante es que como el método es explícito, el sistema es inestable y significa que el paso tomado es grande, por eso tiene los límites muy elevados. &lt;br /&gt;
&lt;br /&gt;
Euler implícito:&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
%Método de Euler implícito:&lt;br /&gt;
          for m=1:length(t)-1 &lt;br /&gt;
                Z=U'+dt*(F');&lt;br /&gt;
                W=eye(N-1)+dt*(K1+K2);&lt;br /&gt;
                W=W\Z;&lt;br /&gt;
                sol(m+1,:)=[0,W',10]&lt;br /&gt;
                U=W';&lt;br /&gt;
          end&lt;br /&gt;
}}&lt;br /&gt;
[[Archivo:imageneimp.jpg|marco|centro|]]&lt;br /&gt;
i&lt;br /&gt;
&lt;br /&gt;
Euler modificado:&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
%Método de Euler modificado:&lt;br /&gt;
          for m=1:length(t)-1&lt;br /&gt;
               M1=-(K1+K2)*U'+F';&lt;br /&gt;
               M2=-(K1+K2)*(U'+M1*dt)+F';&lt;br /&gt;
               W=U'+(dt/2)*(M1+M2);&lt;br /&gt;
               sol(m+1,:)=[0,W',10];&lt;br /&gt;
               U=W':&lt;br /&gt;
          end&lt;br /&gt;
}}&lt;br /&gt;
[[Archivo:imagenemod.jpg|marco|centro|]]&lt;br /&gt;
i&lt;br /&gt;
&lt;br /&gt;
En este caso ocurre lo mismo que en el anterior caso.&lt;br /&gt;
&lt;br /&gt;
[[Categoría:Ecuaciones Diferenciales]]&lt;br /&gt;
[[Categoría:ED13/14]]&lt;br /&gt;
[[Categoría:Trabajos 2013-14]]&lt;/div&gt;</summary>
		<author><name>Toni Villa</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Archivo:Imagenemod.jpg&amp;diff=12474</id>
		<title>Archivo:Imagenemod.jpg</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Archivo:Imagenemod.jpg&amp;diff=12474"/>
				<updated>2014-05-18T21:43:00Z</updated>
		
		<summary type="html">&lt;p&gt;Toni Villa: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>Toni Villa</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Archivo:Imageneimp.jpg&amp;diff=12473</id>
		<title>Archivo:Imageneimp.jpg</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Archivo:Imageneimp.jpg&amp;diff=12473"/>
				<updated>2014-05-18T21:42:40Z</updated>
		
		<summary type="html">&lt;p&gt;Toni Villa: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>Toni Villa</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Archivo:Imageneuler.jpg&amp;diff=12472</id>
		<title>Archivo:Imageneuler.jpg</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Archivo:Imageneuler.jpg&amp;diff=12472"/>
				<updated>2014-05-18T21:42:01Z</updated>
		
		<summary type="html">&lt;p&gt;Toni Villa: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>Toni Villa</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Ecuaci%C3%B3n_del_calor_en_una_placa_en_forma_de_anillo&amp;diff=12461</id>
		<title>Ecuación del calor en una placa en forma de anillo</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Ecuaci%C3%B3n_del_calor_en_una_placa_en_forma_de_anillo&amp;diff=12461"/>
				<updated>2014-05-18T21:16:05Z</updated>
		
		<summary type="html">&lt;p&gt;Toni Villa: /* Euler modificado */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{ TrabajoED | Ecuación del calor en una placa en forma de anillo. Grupo 6B | [[:Categoría:Ecuaciones Diferenciales|Ecuaciones Diferenciales]]|[[:Categoría:ED13/14|Curso 2013-14]] | Elisabet Sánchez López, Ana Santos Martín, Isabel Sastre Furones, Ángel Antonio Villa Figueroa }}&lt;br /&gt;
&lt;br /&gt;
{{ beta }}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Introducción ==&lt;br /&gt;
Tenemos una placa plana en forma de anillo. Vamos a trabajar en coordenadas polares en el plano y sabemos que la placa está comprendida entre los radios ρ=1 y ρ=6 y cuya temperatura inicial viene definida por la función u(ρ,0):&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\left\{\begin{matrix}100·(ρ-1)   con  ρ ∈ [1, 2] \\100     con  ρ ∈ [2, 5]\\90·(6-ρ)+10  con  ρ ∈ [5, 6]\end{matrix}\right.&amp;lt;/math&amp;gt;&lt;br /&gt;
                                                                           &lt;br /&gt;
Si colocamos en los extremos interior ρ=1 y exterior ρ=6 objetos a una temperatura constante de 0 y 10 grados respectivamente, es decir, las condiciones de frontera serán:            &lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\left\{\begin{matrix}u(1,t)=0 \\u(6,t)=10\end{matrix}\right.&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Suponiendo que la temperatura u de la placa únicamente depende de la coordenada radial y del tiempo, es decir, u=u(ρ,t) y sabiendo que satisface la ecuación del calor &amp;lt;math&amp;gt; u_t-\Delta u=0&amp;lt;/math&amp;gt; , vamos a plantear el sistema de ecuaciones que satisface u(ρ,t) en coordenadas polares:&lt;br /&gt;
&lt;br /&gt;
== Método de diferencias finitas con el método del Trapecio ==&lt;br /&gt;
&lt;br /&gt;
Tomamos los pasos de discretización del espacio &amp;lt;math&amp;gt; \Delta ρ=0.1&amp;lt;/math&amp;gt; y del tiempo &amp;lt;math&amp;gt; \Delta t=(\Delta ρ/4)&amp;lt;/math&amp;gt; en t ∈ [0; 10]&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=    &lt;br /&gt;
%Datos&lt;br /&gt;
      a=1;b=6;h=0.1; ya=0;yb=10;&lt;br /&gt;
      N=(b-a)/h; dt=h/4;&lt;br /&gt;
      r=[a:h:b]'; rr=[a+h:h:b-h]';&lt;br /&gt;
      &lt;br /&gt;
%Defino K1:&lt;br /&gt;
      K1=diag(ones(1,N-1)*2)+diag(ones(1,N-2)*(-1),-1)+diag(ones(1,N-2)*(-1),1);&lt;br /&gt;
      K1=K1*(1/h^2);&lt;br /&gt;
      &lt;br /&gt;
%Defino K2:&lt;br /&gt;
      K2=diag(ones(N-2,1)*(-1),1)+diag(ones(N-2,1),-1);&lt;br /&gt;
      K2=(1/h^2)*K2;&lt;br /&gt;
      M=diag(1./rr);&lt;br /&gt;
      K2=M*K2;&lt;br /&gt;
     &lt;br /&gt;
      T0=0;TF=10;&lt;br /&gt;
      t=T0&lt;br /&gt;
      &lt;br /&gt;
%Defino la malla:&lt;br /&gt;
      [R,T]=meshgrid(r,t);&lt;br /&gt;
      &lt;br /&gt;
%Defino F:&lt;br /&gt;
      F=zeros(1,N-1)&lt;br /&gt;
      F(end)=F(end)+10/(h^2)+10/(2*5.9*h);        %(donde (b-h)=5.9)&lt;br /&gt;
     &lt;br /&gt;
%Condición inicial:&lt;br /&gt;
      for i=1:length(rr)&lt;br /&gt;
            if rr(i)&amp;lt;2&lt;br /&gt;
            U(i)=100*(rr(i)-1);&lt;br /&gt;
            elseif rr(i)&amp;lt;5&lt;br /&gt;
            U(i)=100;&lt;br /&gt;
            else&lt;br /&gt;
            U(i)=90*(6-rr(i))+10;&lt;br /&gt;
            end&lt;br /&gt;
      end&lt;br /&gt;
      sol(1,:)=[0,U,10]; &lt;br /&gt;
 &lt;br /&gt;
%Método del trapecio:&lt;br /&gt;
      for m=1:length(t)-1&lt;br /&gt;
            Z=U'+(dt/2)*(-(K1+K2)*U'+F');&lt;br /&gt;
            W=eye(N-1)+(dt/2)*(K1+K2);&lt;br /&gt;
            W=W\Z;&lt;br /&gt;
            sol(m+1,:)=[0,W',10];&lt;br /&gt;
            U=W'&lt;br /&gt;
      end&lt;br /&gt;
      &lt;br /&gt;
%dibujo&lt;br /&gt;
      surf(R,T,sol)&lt;br /&gt;
}}&lt;br /&gt;
[[Archivo:imagentrapecio.jpg|marco|centro|Superficie temperatura en el eje radial  ρ ∈ [1,6] en el intervalo de tiempo]]&lt;br /&gt;
&lt;br /&gt;
i&lt;br /&gt;
&lt;br /&gt;
== Temperatura en ρ=3 ==&lt;br /&gt;
Partiendo del programa anterior queremos ahora dibujar el comportamiento de la temperatura en los puntos para los cuales �ρ = 3 en una gr�áfica 2D temperatura/tiempo:&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
&lt;br /&gt;
%Cálculo del punto N que corresponde a ρ=3&lt;br /&gt;
N3=(3-a)/h+1;&lt;br /&gt;
&lt;br /&gt;
%Dibujo&lt;br /&gt;
plot(sol(:,N3),t)&lt;br /&gt;
&lt;br /&gt;
}}&lt;br /&gt;
[[Archivo:imagenP3.jpg|marco|centro|Temperatura en los puntos de la corona �ρ = 3]]&lt;br /&gt;
i&lt;br /&gt;
&lt;br /&gt;
== Euler explícito, implícito y modificado ==&lt;br /&gt;
Como los datos son los mismos que los usados en el método de diferencias finitas del trapecio, no vamos a volver a repetir los datos puesto que son los mismos y lo único que cambia es el método utilizado.&lt;br /&gt;
&lt;br /&gt;
Euler explícito:&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
for m=1:length(t)-1&lt;br /&gt;
    Z=U'+(dt)*(-(K1+K2)*U'+F');&lt;br /&gt;
    sol(m+1,:)=[0,Z',10];&lt;br /&gt;
    U=Z';&lt;br /&gt;
end       &lt;br /&gt;
&lt;br /&gt;
surf(R,T,sol)&lt;br /&gt;
&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
 %Euler implícito:&lt;br /&gt;
          for m=1:length(t)-1 &lt;br /&gt;
                Z=U'+dt*(F');&lt;br /&gt;
                W=eye(N-1)+dt*(K1+K2);&lt;br /&gt;
                W=W\Z;&lt;br /&gt;
                sol(m+1,:)=[0,W',10]&lt;br /&gt;
                U=W';&lt;br /&gt;
          end&lt;br /&gt;
&lt;br /&gt;
Ocurre lo mismo que en el apartado anterior, que los datos no varían y lo único que debe de ser modificado es el método&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
        %Euler modificado:&lt;br /&gt;
          for m=1:length(t)-1&lt;br /&gt;
               M1=-(K1+K2)*U'+F';&lt;br /&gt;
               M2=-(K1+K2)*(U'+M1*dt)+F';&lt;br /&gt;
               W=U'+(dt/2)*(M1+M2);&lt;br /&gt;
               sol(m+1,:)=[0,W',10];&lt;br /&gt;
               U=W':&lt;br /&gt;
          end&lt;br /&gt;
[[Categoría:Ecuaciones Diferenciales]]&lt;br /&gt;
[[Categoría:ED13/14]]&lt;br /&gt;
[[Categoría:Trabajos 2013-14]]&lt;/div&gt;</summary>
		<author><name>Toni Villa</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Ecuaci%C3%B3n_del_calor_en_una_placa_en_forma_de_anillo&amp;diff=12459</id>
		<title>Ecuación del calor en una placa en forma de anillo</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Ecuaci%C3%B3n_del_calor_en_una_placa_en_forma_de_anillo&amp;diff=12459"/>
				<updated>2014-05-18T21:09:04Z</updated>
		
		<summary type="html">&lt;p&gt;Toni Villa: /* Temperatura en ρ=3 */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{ TrabajoED | Ecuación del calor en una placa en forma de anillo. Grupo 6B | [[:Categoría:Ecuaciones Diferenciales|Ecuaciones Diferenciales]]|[[:Categoría:ED13/14|Curso 2013-14]] | Elisabet Sánchez López, Ana Santos Martín, Isabel Sastre Furones, Ángel Antonio Villa Figueroa }}&lt;br /&gt;
&lt;br /&gt;
{{ beta }}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Introducción ==&lt;br /&gt;
Tenemos una placa plana en forma de anillo. Vamos a trabajar en coordenadas polares en el plano y sabemos que la placa está comprendida entre los radios ρ=1 y ρ=6 y cuya temperatura inicial viene definida por la función u(ρ,0):&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\left\{\begin{matrix}100·(ρ-1)   con  ρ ∈ [1, 2] \\100     con  ρ ∈ [2, 5]\\90·(6-ρ)+10  con  ρ ∈ [5, 6]\end{matrix}\right.&amp;lt;/math&amp;gt;&lt;br /&gt;
                                                                           &lt;br /&gt;
Si colocamos en los extremos interior ρ=1 y exterior ρ=6 objetos a una temperatura constante de 0 y 10 grados respectivamente, es decir, las condiciones de frontera serán:            &lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\left\{\begin{matrix}u(1,t)=0 \\u(6,t)=10\end{matrix}\right.&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Suponiendo que la temperatura u de la placa únicamente depende de la coordenada radial y del tiempo, es decir, u=u(ρ,t) y sabiendo que satisface la ecuación del calor &amp;lt;math&amp;gt; u_t-\Delta u=0&amp;lt;/math&amp;gt; , vamos a plantear el sistema de ecuaciones que satisface u(ρ,t) en coordenadas polares:&lt;br /&gt;
&lt;br /&gt;
== Método de diferencias finitas con el método del Trapecio ==&lt;br /&gt;
&lt;br /&gt;
Tomamos los pasos de discretización del espacio &amp;lt;math&amp;gt; \Delta ρ=0.1&amp;lt;/math&amp;gt; y del tiempo &amp;lt;math&amp;gt; \Delta t=(\Delta ρ/4)&amp;lt;/math&amp;gt; en t ∈ [0; 10]&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=    &lt;br /&gt;
%Datos&lt;br /&gt;
      a=1;b=6;h=0.1; ya=0;yb=10;&lt;br /&gt;
      N=(b-a)/h; dt=h/4;&lt;br /&gt;
      r=[a:h:b]'; rr=[a+h:h:b-h]';&lt;br /&gt;
      &lt;br /&gt;
%Defino K1:&lt;br /&gt;
      K1=diag(ones(1,N-1)*2)+diag(ones(1,N-2)*(-1),-1)+diag(ones(1,N-2)*(-1),1);&lt;br /&gt;
      K1=K1*(1/h^2);&lt;br /&gt;
      &lt;br /&gt;
%Defino K2:&lt;br /&gt;
      K2=diag(ones(N-2,1)*(-1),1)+diag(ones(N-2,1),-1);&lt;br /&gt;
      K2=(1/h^2)*K2;&lt;br /&gt;
      M=diag(1./rr);&lt;br /&gt;
      K2=M*K2;&lt;br /&gt;
     &lt;br /&gt;
      T0=0;TF=10;&lt;br /&gt;
      t=T0&lt;br /&gt;
      &lt;br /&gt;
%Defino la malla:&lt;br /&gt;
      [R,T]=meshgrid(r,t);&lt;br /&gt;
      &lt;br /&gt;
%Defino F:&lt;br /&gt;
      F=zeros(1,N-1)&lt;br /&gt;
      F(end)=F(end)+10/(h^2)+10/(2*5.9*h);        %(donde (b-h)=5.9)&lt;br /&gt;
     &lt;br /&gt;
%Condición inicial:&lt;br /&gt;
      for i=1:length(rr)&lt;br /&gt;
            if rr(i)&amp;lt;2&lt;br /&gt;
            U(i)=100*(rr(i)-1);&lt;br /&gt;
            elseif rr(i)&amp;lt;5&lt;br /&gt;
            U(i)=100;&lt;br /&gt;
            else&lt;br /&gt;
            U(i)=90*(6-rr(i))+10;&lt;br /&gt;
            end&lt;br /&gt;
      end&lt;br /&gt;
      sol(1,:)=[0,U,10]; &lt;br /&gt;
 &lt;br /&gt;
%Método del trapecio:&lt;br /&gt;
      for m=1:length(t)-1&lt;br /&gt;
            Z=U'+(dt/2)*(-(K1+K2)*U'+F');&lt;br /&gt;
            W=eye(N-1)+(dt/2)*(K1+K2);&lt;br /&gt;
            W=W\Z;&lt;br /&gt;
            sol(m+1,:)=[0,W',10];&lt;br /&gt;
            U=W'&lt;br /&gt;
      end&lt;br /&gt;
      &lt;br /&gt;
%dibujo&lt;br /&gt;
      surf(R,T,sol)&lt;br /&gt;
}}&lt;br /&gt;
[[Archivo:imagentrapecio.jpg|marco|centro|Superficie temperatura en el eje radial  ρ ∈ [1,6] en el intervalo de tiempo]]&lt;br /&gt;
&lt;br /&gt;
i&lt;br /&gt;
&lt;br /&gt;
== Temperatura en ρ=3 ==&lt;br /&gt;
Partiendo del programa anterior queremos ahora dibujar el comportamiento de la temperatura en los puntos para los cuales �ρ = 3 en una gr�áfica 2D temperatura/tiempo:&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
&lt;br /&gt;
%Cálculo del punto N que corresponde a ρ=3&lt;br /&gt;
N3=(3-a)/h+1;&lt;br /&gt;
&lt;br /&gt;
%Dibujo&lt;br /&gt;
plot(sol(:,N3),t)&lt;br /&gt;
&lt;br /&gt;
}}&lt;br /&gt;
[[Archivo:imagenP3.jpg|marco|centro|Temperatura en los puntos de la corona �ρ = 3]]&lt;br /&gt;
i&lt;br /&gt;
&lt;br /&gt;
== Euler modificado ==&lt;br /&gt;
Como los datos son los mismos que los usados en el método de diferencias finitas, no vamos a volver a repetir los datos puesto que son los mismos y lo único que cambia es el método utilizado.&lt;br /&gt;
&lt;br /&gt;
        %Euler implícito:&lt;br /&gt;
          for m=1:length(t)-1 &lt;br /&gt;
                Z=U'+dt*(F');&lt;br /&gt;
                W=eye(N-1)+dt*(K1+K2);&lt;br /&gt;
                W=W\Z;&lt;br /&gt;
                sol(m+1,:)=[0,W',10]&lt;br /&gt;
                U=W';&lt;br /&gt;
          end&lt;br /&gt;
&lt;br /&gt;
Ocurre lo mismo que en el apartado anterior, que los datos no varían y lo único que debe de ser modificado es el método&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
        %Euler modificado:&lt;br /&gt;
          for m=1:length(t)-1&lt;br /&gt;
               M1=-(K1+K2)*U'+F';&lt;br /&gt;
               M2=-(K1+K2)*(U'+M1*dt)+F';&lt;br /&gt;
               W=U'+(dt/2)*(M1+M2);&lt;br /&gt;
               sol(m+1,:)=[0,W',10];&lt;br /&gt;
               U=W':&lt;br /&gt;
          end&lt;br /&gt;
[[Categoría:Ecuaciones Diferenciales]]&lt;br /&gt;
[[Categoría:ED13/14]]&lt;br /&gt;
[[Categoría:Trabajos 2013-14]]&lt;/div&gt;</summary>
		<author><name>Toni Villa</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Archivo:ImagenP3.jpg&amp;diff=12458</id>
		<title>Archivo:ImagenP3.jpg</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Archivo:ImagenP3.jpg&amp;diff=12458"/>
				<updated>2014-05-18T21:05:43Z</updated>
		
		<summary type="html">&lt;p&gt;Toni Villa: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>Toni Villa</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Ecuaci%C3%B3n_del_calor_en_una_placa_en_forma_de_anillo&amp;diff=12457</id>
		<title>Ecuación del calor en una placa en forma de anillo</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Ecuaci%C3%B3n_del_calor_en_una_placa_en_forma_de_anillo&amp;diff=12457"/>
				<updated>2014-05-18T21:05:15Z</updated>
		
		<summary type="html">&lt;p&gt;Toni Villa: /* Temperatura en ρ=3 */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{ TrabajoED | Ecuación del calor en una placa en forma de anillo. Grupo 6B | [[:Categoría:Ecuaciones Diferenciales|Ecuaciones Diferenciales]]|[[:Categoría:ED13/14|Curso 2013-14]] | Elisabet Sánchez López, Ana Santos Martín, Isabel Sastre Furones, Ángel Antonio Villa Figueroa }}&lt;br /&gt;
&lt;br /&gt;
{{ beta }}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Introducción ==&lt;br /&gt;
Tenemos una placa plana en forma de anillo. Vamos a trabajar en coordenadas polares en el plano y sabemos que la placa está comprendida entre los radios ρ=1 y ρ=6 y cuya temperatura inicial viene definida por la función u(ρ,0):&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\left\{\begin{matrix}100·(ρ-1)   con  ρ ∈ [1, 2] \\100     con  ρ ∈ [2, 5]\\90·(6-ρ)+10  con  ρ ∈ [5, 6]\end{matrix}\right.&amp;lt;/math&amp;gt;&lt;br /&gt;
                                                                           &lt;br /&gt;
Si colocamos en los extremos interior ρ=1 y exterior ρ=6 objetos a una temperatura constante de 0 y 10 grados respectivamente, es decir, las condiciones de frontera serán:            &lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\left\{\begin{matrix}u(1,t)=0 \\u(6,t)=10\end{matrix}\right.&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Suponiendo que la temperatura u de la placa únicamente depende de la coordenada radial y del tiempo, es decir, u=u(ρ,t) y sabiendo que satisface la ecuación del calor &amp;lt;math&amp;gt; u_t-\Delta u=0&amp;lt;/math&amp;gt; , vamos a plantear el sistema de ecuaciones que satisface u(ρ,t) en coordenadas polares:&lt;br /&gt;
&lt;br /&gt;
== Método de diferencias finitas con el método del Trapecio ==&lt;br /&gt;
&lt;br /&gt;
Tomamos los pasos de discretización del espacio &amp;lt;math&amp;gt; \Delta ρ=0.1&amp;lt;/math&amp;gt; y del tiempo &amp;lt;math&amp;gt; \Delta t=(\Delta ρ/4)&amp;lt;/math&amp;gt; en t ∈ [0; 10]&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=    &lt;br /&gt;
%Datos&lt;br /&gt;
      a=1;b=6;h=0.1; ya=0;yb=10;&lt;br /&gt;
      N=(b-a)/h; dt=h/4;&lt;br /&gt;
      r=[a:h:b]'; rr=[a+h:h:b-h]';&lt;br /&gt;
      &lt;br /&gt;
%Defino K1:&lt;br /&gt;
      K1=diag(ones(1,N-1)*2)+diag(ones(1,N-2)*(-1),-1)+diag(ones(1,N-2)*(-1),1);&lt;br /&gt;
      K1=K1*(1/h^2);&lt;br /&gt;
      &lt;br /&gt;
%Defino K2:&lt;br /&gt;
      K2=diag(ones(N-2,1)*(-1),1)+diag(ones(N-2,1),-1);&lt;br /&gt;
      K2=(1/h^2)*K2;&lt;br /&gt;
      M=diag(1./rr);&lt;br /&gt;
      K2=M*K2;&lt;br /&gt;
     &lt;br /&gt;
      T0=0;TF=10;&lt;br /&gt;
      t=T0&lt;br /&gt;
      &lt;br /&gt;
%Defino la malla:&lt;br /&gt;
      [R,T]=meshgrid(r,t);&lt;br /&gt;
      &lt;br /&gt;
%Defino F:&lt;br /&gt;
      F=zeros(1,N-1)&lt;br /&gt;
      F(end)=F(end)+10/(h^2)+10/(2*5.9*h);        %(donde (b-h)=5.9)&lt;br /&gt;
     &lt;br /&gt;
%Condición inicial:&lt;br /&gt;
      for i=1:length(rr)&lt;br /&gt;
            if rr(i)&amp;lt;2&lt;br /&gt;
            U(i)=100*(rr(i)-1);&lt;br /&gt;
            elseif rr(i)&amp;lt;5&lt;br /&gt;
            U(i)=100;&lt;br /&gt;
            else&lt;br /&gt;
            U(i)=90*(6-rr(i))+10;&lt;br /&gt;
            end&lt;br /&gt;
      end&lt;br /&gt;
      sol(1,:)=[0,U,10]; &lt;br /&gt;
 &lt;br /&gt;
%Método del trapecio:&lt;br /&gt;
      for m=1:length(t)-1&lt;br /&gt;
            Z=U'+(dt/2)*(-(K1+K2)*U'+F');&lt;br /&gt;
            W=eye(N-1)+(dt/2)*(K1+K2);&lt;br /&gt;
            W=W\Z;&lt;br /&gt;
            sol(m+1,:)=[0,W',10];&lt;br /&gt;
            U=W'&lt;br /&gt;
      end&lt;br /&gt;
      &lt;br /&gt;
%dibujo&lt;br /&gt;
      surf(R,T,sol)&lt;br /&gt;
}}&lt;br /&gt;
[[Archivo:imagentrapecio.jpg|marco|centro|Superficie temperatura en el eje radial  ρ ∈ [1,6] en el intervalo de tiempo]]&lt;br /&gt;
&lt;br /&gt;
i&lt;br /&gt;
&lt;br /&gt;
== Temperatura en ρ=3 ==&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
&lt;br /&gt;
%Cálculo del punto N que corresponde a ρ=3&lt;br /&gt;
N3=(3-a)/h+1;&lt;br /&gt;
&lt;br /&gt;
%Dibujo&lt;br /&gt;
plot(sol(:,N3),t)&lt;br /&gt;
&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
== Euler modificado ==&lt;br /&gt;
Como los datos son los mismos que los usados en el método de diferencias finitas, no vamos a volver a repetir los datos puesto que son los mismos y lo único que cambia es el método utilizado.&lt;br /&gt;
&lt;br /&gt;
        %Euler implícito:&lt;br /&gt;
          for m=1:length(t)-1 &lt;br /&gt;
                Z=U'+dt*(F');&lt;br /&gt;
                W=eye(N-1)+dt*(K1+K2);&lt;br /&gt;
                W=W\Z;&lt;br /&gt;
                sol(m+1,:)=[0,W',10]&lt;br /&gt;
                U=W';&lt;br /&gt;
          end&lt;br /&gt;
&lt;br /&gt;
Ocurre lo mismo que en el apartado anterior, que los datos no varían y lo único que debe de ser modificado es el método&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
        %Euler modificado:&lt;br /&gt;
          for m=1:length(t)-1&lt;br /&gt;
               M1=-(K1+K2)*U'+F';&lt;br /&gt;
               M2=-(K1+K2)*(U'+M1*dt)+F';&lt;br /&gt;
               W=U'+(dt/2)*(M1+M2);&lt;br /&gt;
               sol(m+1,:)=[0,W',10];&lt;br /&gt;
               U=W':&lt;br /&gt;
          end&lt;br /&gt;
[[Categoría:Ecuaciones Diferenciales]]&lt;br /&gt;
[[Categoría:ED13/14]]&lt;br /&gt;
[[Categoría:Trabajos 2013-14]]&lt;/div&gt;</summary>
		<author><name>Toni Villa</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Ecuaci%C3%B3n_del_calor_en_una_placa_en_forma_de_anillo&amp;diff=12456</id>
		<title>Ecuación del calor en una placa en forma de anillo</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Ecuaci%C3%B3n_del_calor_en_una_placa_en_forma_de_anillo&amp;diff=12456"/>
				<updated>2014-05-18T20:56:52Z</updated>
		
		<summary type="html">&lt;p&gt;Toni Villa: /* Euler modificado */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{ TrabajoED | Ecuación del calor en una placa en forma de anillo. Grupo 6B | [[:Categoría:Ecuaciones Diferenciales|Ecuaciones Diferenciales]]|[[:Categoría:ED13/14|Curso 2013-14]] | Elisabet Sánchez López, Ana Santos Martín, Isabel Sastre Furones, Ángel Antonio Villa Figueroa }}&lt;br /&gt;
&lt;br /&gt;
{{ beta }}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Introducción ==&lt;br /&gt;
Tenemos una placa plana en forma de anillo. Vamos a trabajar en coordenadas polares en el plano y sabemos que la placa está comprendida entre los radios ρ=1 y ρ=6 y cuya temperatura inicial viene definida por la función u(ρ,0):&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\left\{\begin{matrix}100·(ρ-1)   con  ρ ∈ [1, 2] \\100     con  ρ ∈ [2, 5]\\90·(6-ρ)+10  con  ρ ∈ [5, 6]\end{matrix}\right.&amp;lt;/math&amp;gt;&lt;br /&gt;
                                                                           &lt;br /&gt;
Si colocamos en los extremos interior ρ=1 y exterior ρ=6 objetos a una temperatura constante de 0 y 10 grados respectivamente, es decir, las condiciones de frontera serán:            &lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\left\{\begin{matrix}u(1,t)=0 \\u(6,t)=10\end{matrix}\right.&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Suponiendo que la temperatura u de la placa únicamente depende de la coordenada radial y del tiempo, es decir, u=u(ρ,t) y sabiendo que satisface la ecuación del calor &amp;lt;math&amp;gt; u_t-\Delta u=0&amp;lt;/math&amp;gt; , vamos a plantear el sistema de ecuaciones que satisface u(ρ,t) en coordenadas polares:&lt;br /&gt;
&lt;br /&gt;
== Método de diferencias finitas con el método del Trapecio ==&lt;br /&gt;
&lt;br /&gt;
Tomamos los pasos de discretización del espacio &amp;lt;math&amp;gt; \Delta ρ=0.1&amp;lt;/math&amp;gt; y del tiempo &amp;lt;math&amp;gt; \Delta t=(\Delta ρ/4)&amp;lt;/math&amp;gt; en t ∈ [0; 10]&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=    &lt;br /&gt;
%Datos&lt;br /&gt;
      a=1;b=6;h=0.1; ya=0;yb=10;&lt;br /&gt;
      N=(b-a)/h; dt=h/4;&lt;br /&gt;
      r=[a:h:b]'; rr=[a+h:h:b-h]';&lt;br /&gt;
      &lt;br /&gt;
%Defino K1:&lt;br /&gt;
      K1=diag(ones(1,N-1)*2)+diag(ones(1,N-2)*(-1),-1)+diag(ones(1,N-2)*(-1),1);&lt;br /&gt;
      K1=K1*(1/h^2);&lt;br /&gt;
      &lt;br /&gt;
%Defino K2:&lt;br /&gt;
      K2=diag(ones(N-2,1)*(-1),1)+diag(ones(N-2,1),-1);&lt;br /&gt;
      K2=(1/h^2)*K2;&lt;br /&gt;
      M=diag(1./rr);&lt;br /&gt;
      K2=M*K2;&lt;br /&gt;
     &lt;br /&gt;
      T0=0;TF=10;&lt;br /&gt;
      t=T0&lt;br /&gt;
      &lt;br /&gt;
%Defino la malla:&lt;br /&gt;
      [R,T]=meshgrid(r,t);&lt;br /&gt;
      &lt;br /&gt;
%Defino F:&lt;br /&gt;
      F=zeros(1,N-1)&lt;br /&gt;
      F(end)=F(end)+10/(h^2)+10/(2*5.9*h);        %(donde (b-h)=5.9)&lt;br /&gt;
     &lt;br /&gt;
%Condición inicial:&lt;br /&gt;
      for i=1:length(rr)&lt;br /&gt;
            if rr(i)&amp;lt;2&lt;br /&gt;
            U(i)=100*(rr(i)-1);&lt;br /&gt;
            elseif rr(i)&amp;lt;5&lt;br /&gt;
            U(i)=100;&lt;br /&gt;
            else&lt;br /&gt;
            U(i)=90*(6-rr(i))+10;&lt;br /&gt;
            end&lt;br /&gt;
      end&lt;br /&gt;
      sol(1,:)=[0,U,10]; &lt;br /&gt;
 &lt;br /&gt;
%Método del trapecio:&lt;br /&gt;
      for m=1:length(t)-1&lt;br /&gt;
            Z=U'+(dt/2)*(-(K1+K2)*U'+F');&lt;br /&gt;
            W=eye(N-1)+(dt/2)*(K1+K2);&lt;br /&gt;
            W=W\Z;&lt;br /&gt;
            sol(m+1,:)=[0,W',10];&lt;br /&gt;
            U=W'&lt;br /&gt;
      end&lt;br /&gt;
      &lt;br /&gt;
%dibujo&lt;br /&gt;
      surf(R,T,sol)&lt;br /&gt;
}}&lt;br /&gt;
[[Archivo:imagentrapecio.jpg|marco|centro|Superficie temperatura en el eje radial  ρ ∈ [1,6] en el intervalo de tiempo]]&lt;br /&gt;
&lt;br /&gt;
i&lt;br /&gt;
&lt;br /&gt;
== Temperatura en ρ=3 ==&lt;br /&gt;
&lt;br /&gt;
== Euler modificado ==&lt;br /&gt;
Como los datos son los mismos que los usados en el método de diferencias finitas, no vamos a volver a repetir los datos puesto que son los mismos y lo único que cambia es el método utilizado.&lt;br /&gt;
&lt;br /&gt;
        %Euler implícito:&lt;br /&gt;
          for m=1:length(t)-1 &lt;br /&gt;
                Z=U'+dt*(F');&lt;br /&gt;
                W=eye(N-1)+dt*(K1+K2);&lt;br /&gt;
                W=W\Z;&lt;br /&gt;
                sol(m+1,:)=[0,W',10]&lt;br /&gt;
                U=W';&lt;br /&gt;
          end&lt;br /&gt;
&lt;br /&gt;
Ocurre lo mismo que en el apartado anterior, que los datos no varían y lo único que debe de ser modificado es el método&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
        %Euler modificado:&lt;br /&gt;
          for m=1:length(t)-1&lt;br /&gt;
               M1=-(K1+K2)*U'+F';&lt;br /&gt;
               M2=-(K1+K2)*(U'+M1*dt)+F';&lt;br /&gt;
               W=U'+(dt/2)*(M1+M2);&lt;br /&gt;
               sol(m+1,:)=[0,W',10];&lt;br /&gt;
               U=W':&lt;br /&gt;
          end&lt;br /&gt;
[[Categoría:Ecuaciones Diferenciales]]&lt;br /&gt;
[[Categoría:ED13/14]]&lt;br /&gt;
[[Categoría:Trabajos 2013-14]]&lt;/div&gt;</summary>
		<author><name>Toni Villa</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Ecuaci%C3%B3n_del_calor_en_una_placa_en_forma_de_anillo&amp;diff=12455</id>
		<title>Ecuación del calor en una placa en forma de anillo</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Ecuaci%C3%B3n_del_calor_en_una_placa_en_forma_de_anillo&amp;diff=12455"/>
				<updated>2014-05-18T20:56:31Z</updated>
		
		<summary type="html">&lt;p&gt;Toni Villa: /* Euler implícito */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{ TrabajoED | Ecuación del calor en una placa en forma de anillo. Grupo 6B | [[:Categoría:Ecuaciones Diferenciales|Ecuaciones Diferenciales]]|[[:Categoría:ED13/14|Curso 2013-14]] | Elisabet Sánchez López, Ana Santos Martín, Isabel Sastre Furones, Ángel Antonio Villa Figueroa }}&lt;br /&gt;
&lt;br /&gt;
{{ beta }}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Introducción ==&lt;br /&gt;
Tenemos una placa plana en forma de anillo. Vamos a trabajar en coordenadas polares en el plano y sabemos que la placa está comprendida entre los radios ρ=1 y ρ=6 y cuya temperatura inicial viene definida por la función u(ρ,0):&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\left\{\begin{matrix}100·(ρ-1)   con  ρ ∈ [1, 2] \\100     con  ρ ∈ [2, 5]\\90·(6-ρ)+10  con  ρ ∈ [5, 6]\end{matrix}\right.&amp;lt;/math&amp;gt;&lt;br /&gt;
                                                                           &lt;br /&gt;
Si colocamos en los extremos interior ρ=1 y exterior ρ=6 objetos a una temperatura constante de 0 y 10 grados respectivamente, es decir, las condiciones de frontera serán:            &lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\left\{\begin{matrix}u(1,t)=0 \\u(6,t)=10\end{matrix}\right.&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Suponiendo que la temperatura u de la placa únicamente depende de la coordenada radial y del tiempo, es decir, u=u(ρ,t) y sabiendo que satisface la ecuación del calor &amp;lt;math&amp;gt; u_t-\Delta u=0&amp;lt;/math&amp;gt; , vamos a plantear el sistema de ecuaciones que satisface u(ρ,t) en coordenadas polares:&lt;br /&gt;
&lt;br /&gt;
== Método de diferencias finitas con el método del Trapecio ==&lt;br /&gt;
&lt;br /&gt;
Tomamos los pasos de discretización del espacio &amp;lt;math&amp;gt; \Delta ρ=0.1&amp;lt;/math&amp;gt; y del tiempo &amp;lt;math&amp;gt; \Delta t=(\Delta ρ/4)&amp;lt;/math&amp;gt; en t ∈ [0; 10]&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=    &lt;br /&gt;
%Datos&lt;br /&gt;
      a=1;b=6;h=0.1; ya=0;yb=10;&lt;br /&gt;
      N=(b-a)/h; dt=h/4;&lt;br /&gt;
      r=[a:h:b]'; rr=[a+h:h:b-h]';&lt;br /&gt;
      &lt;br /&gt;
%Defino K1:&lt;br /&gt;
      K1=diag(ones(1,N-1)*2)+diag(ones(1,N-2)*(-1),-1)+diag(ones(1,N-2)*(-1),1);&lt;br /&gt;
      K1=K1*(1/h^2);&lt;br /&gt;
      &lt;br /&gt;
%Defino K2:&lt;br /&gt;
      K2=diag(ones(N-2,1)*(-1),1)+diag(ones(N-2,1),-1);&lt;br /&gt;
      K2=(1/h^2)*K2;&lt;br /&gt;
      M=diag(1./rr);&lt;br /&gt;
      K2=M*K2;&lt;br /&gt;
     &lt;br /&gt;
      T0=0;TF=10;&lt;br /&gt;
      t=T0&lt;br /&gt;
      &lt;br /&gt;
%Defino la malla:&lt;br /&gt;
      [R,T]=meshgrid(r,t);&lt;br /&gt;
      &lt;br /&gt;
%Defino F:&lt;br /&gt;
      F=zeros(1,N-1)&lt;br /&gt;
      F(end)=F(end)+10/(h^2)+10/(2*5.9*h);        %(donde (b-h)=5.9)&lt;br /&gt;
     &lt;br /&gt;
%Condición inicial:&lt;br /&gt;
      for i=1:length(rr)&lt;br /&gt;
            if rr(i)&amp;lt;2&lt;br /&gt;
            U(i)=100*(rr(i)-1);&lt;br /&gt;
            elseif rr(i)&amp;lt;5&lt;br /&gt;
            U(i)=100;&lt;br /&gt;
            else&lt;br /&gt;
            U(i)=90*(6-rr(i))+10;&lt;br /&gt;
            end&lt;br /&gt;
      end&lt;br /&gt;
      sol(1,:)=[0,U,10]; &lt;br /&gt;
 &lt;br /&gt;
%Método del trapecio:&lt;br /&gt;
      for m=1:length(t)-1&lt;br /&gt;
            Z=U'+(dt/2)*(-(K1+K2)*U'+F');&lt;br /&gt;
            W=eye(N-1)+(dt/2)*(K1+K2);&lt;br /&gt;
            W=W\Z;&lt;br /&gt;
            sol(m+1,:)=[0,W',10];&lt;br /&gt;
            U=W'&lt;br /&gt;
      end&lt;br /&gt;
      &lt;br /&gt;
%dibujo&lt;br /&gt;
      surf(R,T,sol)&lt;br /&gt;
}}&lt;br /&gt;
[[Archivo:imagentrapecio.jpg|marco|centro|Superficie temperatura en el eje radial  ρ ∈ [1,6] en el intervalo de tiempo]]&lt;br /&gt;
&lt;br /&gt;
i&lt;br /&gt;
&lt;br /&gt;
== Temperatura en ρ=3 ==&lt;br /&gt;
&lt;br /&gt;
== Euler modificado ==&lt;br /&gt;
Ocurre lo mismo que en el apartado anterior, que los datos no varían y lo único que debe de ser modificado es el método&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
        %Euler modificado:&lt;br /&gt;
          for m=1:length(t)-1&lt;br /&gt;
               M1=-(K1+K2)*U'+F';&lt;br /&gt;
               M2=-(K1+K2)*(U'+M1*dt)+F';&lt;br /&gt;
               W=U'+(dt/2)*(M1+M2);&lt;br /&gt;
               sol(m+1,:)=[0,W',10];&lt;br /&gt;
               U=W':&lt;br /&gt;
          end&lt;br /&gt;
[[Categoría:Ecuaciones Diferenciales]]&lt;br /&gt;
[[Categoría:ED13/14]]&lt;br /&gt;
[[Categoría:Trabajos 2013-14]]&lt;/div&gt;</summary>
		<author><name>Toni Villa</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Ecuaci%C3%B3n_del_calor_en_una_placa_en_forma_de_anillo&amp;diff=12454</id>
		<title>Ecuación del calor en una placa en forma de anillo</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Ecuaci%C3%B3n_del_calor_en_una_placa_en_forma_de_anillo&amp;diff=12454"/>
				<updated>2014-05-18T20:54:48Z</updated>
		
		<summary type="html">&lt;p&gt;Toni Villa: /* Método de diferencias finitas con el método del Trapecio */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{ TrabajoED | Ecuación del calor en una placa en forma de anillo. Grupo 6B | [[:Categoría:Ecuaciones Diferenciales|Ecuaciones Diferenciales]]|[[:Categoría:ED13/14|Curso 2013-14]] | Elisabet Sánchez López, Ana Santos Martín, Isabel Sastre Furones, Ángel Antonio Villa Figueroa }}&lt;br /&gt;
&lt;br /&gt;
{{ beta }}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Introducción ==&lt;br /&gt;
Tenemos una placa plana en forma de anillo. Vamos a trabajar en coordenadas polares en el plano y sabemos que la placa está comprendida entre los radios ρ=1 y ρ=6 y cuya temperatura inicial viene definida por la función u(ρ,0):&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\left\{\begin{matrix}100·(ρ-1)   con  ρ ∈ [1, 2] \\100     con  ρ ∈ [2, 5]\\90·(6-ρ)+10  con  ρ ∈ [5, 6]\end{matrix}\right.&amp;lt;/math&amp;gt;&lt;br /&gt;
                                                                           &lt;br /&gt;
Si colocamos en los extremos interior ρ=1 y exterior ρ=6 objetos a una temperatura constante de 0 y 10 grados respectivamente, es decir, las condiciones de frontera serán:            &lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\left\{\begin{matrix}u(1,t)=0 \\u(6,t)=10\end{matrix}\right.&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Suponiendo que la temperatura u de la placa únicamente depende de la coordenada radial y del tiempo, es decir, u=u(ρ,t) y sabiendo que satisface la ecuación del calor &amp;lt;math&amp;gt; u_t-\Delta u=0&amp;lt;/math&amp;gt; , vamos a plantear el sistema de ecuaciones que satisface u(ρ,t) en coordenadas polares:&lt;br /&gt;
&lt;br /&gt;
== Método de diferencias finitas con el método del Trapecio ==&lt;br /&gt;
&lt;br /&gt;
Tomamos los pasos de discretización del espacio &amp;lt;math&amp;gt; \Delta ρ=0.1&amp;lt;/math&amp;gt; y del tiempo &amp;lt;math&amp;gt; \Delta t=(\Delta ρ/4)&amp;lt;/math&amp;gt; en t ∈ [0; 10]&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=    &lt;br /&gt;
%Datos&lt;br /&gt;
      a=1;b=6;h=0.1; ya=0;yb=10;&lt;br /&gt;
      N=(b-a)/h; dt=h/4;&lt;br /&gt;
      r=[a:h:b]'; rr=[a+h:h:b-h]';&lt;br /&gt;
      &lt;br /&gt;
%Defino K1:&lt;br /&gt;
      K1=diag(ones(1,N-1)*2)+diag(ones(1,N-2)*(-1),-1)+diag(ones(1,N-2)*(-1),1);&lt;br /&gt;
      K1=K1*(1/h^2);&lt;br /&gt;
      &lt;br /&gt;
%Defino K2:&lt;br /&gt;
      K2=diag(ones(N-2,1)*(-1),1)+diag(ones(N-2,1),-1);&lt;br /&gt;
      K2=(1/h^2)*K2;&lt;br /&gt;
      M=diag(1./rr);&lt;br /&gt;
      K2=M*K2;&lt;br /&gt;
     &lt;br /&gt;
      T0=0;TF=10;&lt;br /&gt;
      t=T0&lt;br /&gt;
      &lt;br /&gt;
%Defino la malla:&lt;br /&gt;
      [R,T]=meshgrid(r,t);&lt;br /&gt;
      &lt;br /&gt;
%Defino F:&lt;br /&gt;
      F=zeros(1,N-1)&lt;br /&gt;
      F(end)=F(end)+10/(h^2)+10/(2*5.9*h);        %(donde (b-h)=5.9)&lt;br /&gt;
     &lt;br /&gt;
%Condición inicial:&lt;br /&gt;
      for i=1:length(rr)&lt;br /&gt;
            if rr(i)&amp;lt;2&lt;br /&gt;
            U(i)=100*(rr(i)-1);&lt;br /&gt;
            elseif rr(i)&amp;lt;5&lt;br /&gt;
            U(i)=100;&lt;br /&gt;
            else&lt;br /&gt;
            U(i)=90*(6-rr(i))+10;&lt;br /&gt;
            end&lt;br /&gt;
      end&lt;br /&gt;
      sol(1,:)=[0,U,10]; &lt;br /&gt;
 &lt;br /&gt;
%Método del trapecio:&lt;br /&gt;
      for m=1:length(t)-1&lt;br /&gt;
            Z=U'+(dt/2)*(-(K1+K2)*U'+F');&lt;br /&gt;
            W=eye(N-1)+(dt/2)*(K1+K2);&lt;br /&gt;
            W=W\Z;&lt;br /&gt;
            sol(m+1,:)=[0,W',10];&lt;br /&gt;
            U=W'&lt;br /&gt;
      end&lt;br /&gt;
      &lt;br /&gt;
%dibujo&lt;br /&gt;
      surf(R,T,sol)&lt;br /&gt;
}}&lt;br /&gt;
[[Archivo:imagentrapecio.jpg|marco|centro|Superficie temperatura en el eje radial  ρ ∈ [1,6] en el intervalo de tiempo]]&lt;br /&gt;
&lt;br /&gt;
i&lt;br /&gt;
&lt;br /&gt;
== Euler implícito ==&lt;br /&gt;
Como los datos son los mismos que los usados en el método de diferencias finitas, no vamos a volver a repetir los datos puesto que son los mismos y lo único que cambia es el método utilizado.&lt;br /&gt;
&lt;br /&gt;
        %Euler implícito:&lt;br /&gt;
          for m=1:length(t)-1 &lt;br /&gt;
                Z=U'+dt*(F');&lt;br /&gt;
                W=eye(N-1)+dt*(K1+K2);&lt;br /&gt;
                W=W\Z;&lt;br /&gt;
                sol(m+1,:)=[0,W',10]&lt;br /&gt;
                U=W';&lt;br /&gt;
          end&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Euler modificado ==&lt;br /&gt;
Ocurre lo mismo que en el apartado anterior, que los datos no varían y lo único que debe de ser modificado es el método&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
        %Euler modificado:&lt;br /&gt;
          for m=1:length(t)-1&lt;br /&gt;
               M1=-(K1+K2)*U'+F';&lt;br /&gt;
               M2=-(K1+K2)*(U'+M1*dt)+F';&lt;br /&gt;
               W=U'+(dt/2)*(M1+M2);&lt;br /&gt;
               sol(m+1,:)=[0,W',10];&lt;br /&gt;
               U=W':&lt;br /&gt;
          end&lt;br /&gt;
[[Categoría:Ecuaciones Diferenciales]]&lt;br /&gt;
[[Categoría:ED13/14]]&lt;br /&gt;
[[Categoría:Trabajos 2013-14]]&lt;/div&gt;</summary>
		<author><name>Toni Villa</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Ecuaci%C3%B3n_del_calor_en_una_placa_en_forma_de_anillo&amp;diff=12453</id>
		<title>Ecuación del calor en una placa en forma de anillo</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Ecuaci%C3%B3n_del_calor_en_una_placa_en_forma_de_anillo&amp;diff=12453"/>
				<updated>2014-05-18T20:54:29Z</updated>
		
		<summary type="html">&lt;p&gt;Toni Villa: /* Método de diferencias finitas con el método del Trapecio */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{ TrabajoED | Ecuación del calor en una placa en forma de anillo. Grupo 6B | [[:Categoría:Ecuaciones Diferenciales|Ecuaciones Diferenciales]]|[[:Categoría:ED13/14|Curso 2013-14]] | Elisabet Sánchez López, Ana Santos Martín, Isabel Sastre Furones, Ángel Antonio Villa Figueroa }}&lt;br /&gt;
&lt;br /&gt;
{{ beta }}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Introducción ==&lt;br /&gt;
Tenemos una placa plana en forma de anillo. Vamos a trabajar en coordenadas polares en el plano y sabemos que la placa está comprendida entre los radios ρ=1 y ρ=6 y cuya temperatura inicial viene definida por la función u(ρ,0):&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\left\{\begin{matrix}100·(ρ-1)   con  ρ ∈ [1, 2] \\100     con  ρ ∈ [2, 5]\\90·(6-ρ)+10  con  ρ ∈ [5, 6]\end{matrix}\right.&amp;lt;/math&amp;gt;&lt;br /&gt;
                                                                           &lt;br /&gt;
Si colocamos en los extremos interior ρ=1 y exterior ρ=6 objetos a una temperatura constante de 0 y 10 grados respectivamente, es decir, las condiciones de frontera serán:            &lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\left\{\begin{matrix}u(1,t)=0 \\u(6,t)=10\end{matrix}\right.&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Suponiendo que la temperatura u de la placa únicamente depende de la coordenada radial y del tiempo, es decir, u=u(ρ,t) y sabiendo que satisface la ecuación del calor &amp;lt;math&amp;gt; u_t-\Delta u=0&amp;lt;/math&amp;gt; , vamos a plantear el sistema de ecuaciones que satisface u(ρ,t) en coordenadas polares:&lt;br /&gt;
&lt;br /&gt;
== Método de diferencias finitas con el método del Trapecio ==&lt;br /&gt;
&lt;br /&gt;
Tomamos los pasos de discretización del espacio &amp;lt;math&amp;gt; \Delta ρ=0.1&amp;lt;/math&amp;gt; y del tiempo &amp;lt;math&amp;gt; \Delta t=(\Delta ρ/4)&amp;lt;/math&amp;gt; en t ∈ [0; 10]&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=    &lt;br /&gt;
%Datos&lt;br /&gt;
      a=1;b=6;h=0.1; ya=0;yb=10;&lt;br /&gt;
      N=(b-a)/h; dt=h/4;&lt;br /&gt;
      r=[a:h:b]'; rr=[a+h:h:b-h]';&lt;br /&gt;
      &lt;br /&gt;
%Defino K1:&lt;br /&gt;
      K1=diag(ones(1,N-1)*2)+diag(ones(1,N-2)*(-1),-1)+diag(ones(1,N-2)*(-1),1);&lt;br /&gt;
      K1=K1*(1/h^2);&lt;br /&gt;
      &lt;br /&gt;
%Defino K2:&lt;br /&gt;
      K2=diag(ones(N-2,1)*(-1),1)+diag(ones(N-2,1),-1);&lt;br /&gt;
      K2=(1/h^2)*K2;&lt;br /&gt;
      M=diag(1./rr);&lt;br /&gt;
      K2=M*K2;&lt;br /&gt;
     &lt;br /&gt;
      T0=0;TF=10;&lt;br /&gt;
      t=T0&lt;br /&gt;
      &lt;br /&gt;
%Defino la malla:&lt;br /&gt;
      [R,T]=meshgrid(r,t);&lt;br /&gt;
      &lt;br /&gt;
%Defino F:&lt;br /&gt;
      F=zeros(1,N-1)&lt;br /&gt;
      F(end)=F(end)+10/(h^2)+10/(2*5.9*h);        %(donde (b-h)=5.9)&lt;br /&gt;
     &lt;br /&gt;
%Condición inicial:&lt;br /&gt;
      for i=1:length(rr)&lt;br /&gt;
            if rr(i)&amp;lt;2&lt;br /&gt;
            U(i)=100*(rr(i)-1);&lt;br /&gt;
            elseif rr(i)&amp;lt;5&lt;br /&gt;
            U(i)=100;&lt;br /&gt;
            else&lt;br /&gt;
            U(i)=90*(6-rr(i))+10;&lt;br /&gt;
            end&lt;br /&gt;
      end&lt;br /&gt;
      sol(1,:)=[0,U,10]; &lt;br /&gt;
 &lt;br /&gt;
%Método del trapecio:&lt;br /&gt;
      for m=1:length(t)-1&lt;br /&gt;
            Z=U'+(dt/2)*(-(K1+K2)*U'+F');&lt;br /&gt;
            W=eye(N-1)+(dt/2)*(K1+K2);&lt;br /&gt;
            W=W\Z;&lt;br /&gt;
            sol(m+1,:)=[0,W',10];&lt;br /&gt;
            U=W'&lt;br /&gt;
      end&lt;br /&gt;
      &lt;br /&gt;
%dibujo&lt;br /&gt;
      surf(R,T,sol)&lt;br /&gt;
}}&lt;br /&gt;
[[Archivo:imagentrapecio.jpg|marco|centro|Superficie temperatura en el eje radial  ρ ∈ [1,6] en el intervalo de tiempo]]&lt;br /&gt;
&lt;br /&gt;
eneopfñd&lt;br /&gt;
&lt;br /&gt;
== Euler implícito ==&lt;br /&gt;
Como los datos son los mismos que los usados en el método de diferencias finitas, no vamos a volver a repetir los datos puesto que son los mismos y lo único que cambia es el método utilizado.&lt;br /&gt;
&lt;br /&gt;
        %Euler implícito:&lt;br /&gt;
          for m=1:length(t)-1 &lt;br /&gt;
                Z=U'+dt*(F');&lt;br /&gt;
                W=eye(N-1)+dt*(K1+K2);&lt;br /&gt;
                W=W\Z;&lt;br /&gt;
                sol(m+1,:)=[0,W',10]&lt;br /&gt;
                U=W';&lt;br /&gt;
          end&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Euler modificado ==&lt;br /&gt;
Ocurre lo mismo que en el apartado anterior, que los datos no varían y lo único que debe de ser modificado es el método&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
        %Euler modificado:&lt;br /&gt;
          for m=1:length(t)-1&lt;br /&gt;
               M1=-(K1+K2)*U'+F';&lt;br /&gt;
               M2=-(K1+K2)*(U'+M1*dt)+F';&lt;br /&gt;
               W=U'+(dt/2)*(M1+M2);&lt;br /&gt;
               sol(m+1,:)=[0,W',10];&lt;br /&gt;
               U=W':&lt;br /&gt;
          end&lt;br /&gt;
[[Categoría:Ecuaciones Diferenciales]]&lt;br /&gt;
[[Categoría:ED13/14]]&lt;br /&gt;
[[Categoría:Trabajos 2013-14]]&lt;/div&gt;</summary>
		<author><name>Toni Villa</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Ecuaci%C3%B3n_del_calor_en_una_placa_en_forma_de_anillo&amp;diff=12452</id>
		<title>Ecuación del calor en una placa en forma de anillo</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Ecuaci%C3%B3n_del_calor_en_una_placa_en_forma_de_anillo&amp;diff=12452"/>
				<updated>2014-05-18T20:53:13Z</updated>
		
		<summary type="html">&lt;p&gt;Toni Villa: /* Método de diferencias finitas con el método del Trapecio */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{ TrabajoED | Ecuación del calor en una placa en forma de anillo. Grupo 6B | [[:Categoría:Ecuaciones Diferenciales|Ecuaciones Diferenciales]]|[[:Categoría:ED13/14|Curso 2013-14]] | Elisabet Sánchez López, Ana Santos Martín, Isabel Sastre Furones, Ángel Antonio Villa Figueroa }}&lt;br /&gt;
&lt;br /&gt;
{{ beta }}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Introducción ==&lt;br /&gt;
Tenemos una placa plana en forma de anillo. Vamos a trabajar en coordenadas polares en el plano y sabemos que la placa está comprendida entre los radios ρ=1 y ρ=6 y cuya temperatura inicial viene definida por la función u(ρ,0):&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\left\{\begin{matrix}100·(ρ-1)   con  ρ ∈ [1, 2] \\100     con  ρ ∈ [2, 5]\\90·(6-ρ)+10  con  ρ ∈ [5, 6]\end{matrix}\right.&amp;lt;/math&amp;gt;&lt;br /&gt;
                                                                           &lt;br /&gt;
Si colocamos en los extremos interior ρ=1 y exterior ρ=6 objetos a una temperatura constante de 0 y 10 grados respectivamente, es decir, las condiciones de frontera serán:            &lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\left\{\begin{matrix}u(1,t)=0 \\u(6,t)=10\end{matrix}\right.&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Suponiendo que la temperatura u de la placa únicamente depende de la coordenada radial y del tiempo, es decir, u=u(ρ,t) y sabiendo que satisface la ecuación del calor &amp;lt;math&amp;gt; u_t-\Delta u=0&amp;lt;/math&amp;gt; , vamos a plantear el sistema de ecuaciones que satisface u(ρ,t) en coordenadas polares:&lt;br /&gt;
&lt;br /&gt;
== Método de diferencias finitas con el método del Trapecio ==&lt;br /&gt;
&lt;br /&gt;
Tomamos los pasos de discretización del espacio &amp;lt;math&amp;gt; \Delta ρ=0.1&amp;lt;/math&amp;gt; y del tiempo &amp;lt;math&amp;gt; \Delta t=(\Delta ρ/4)&amp;lt;/math&amp;gt; en t ∈ [0; 10]&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=    &lt;br /&gt;
%Datos&lt;br /&gt;
      a=1;b=6;h=0.1; ya=0;yb=10;&lt;br /&gt;
      N=(b-a)/h; dt=h/4;&lt;br /&gt;
      r=[a:h:b]'; rr=[a+h:h:b-h]';&lt;br /&gt;
      &lt;br /&gt;
%Defino K1:&lt;br /&gt;
      K1=diag(ones(1,N-1)*2)+diag(ones(1,N-2)*(-1),-1)+diag(ones(1,N-2)*(-1),1);&lt;br /&gt;
      K1=K1*(1/h^2);&lt;br /&gt;
      &lt;br /&gt;
%Defino K2:&lt;br /&gt;
      K2=diag(ones(N-2,1)*(-1),1)+diag(ones(N-2,1),-1);&lt;br /&gt;
      K2=(1/h^2)*K2;&lt;br /&gt;
      M=diag(1./rr);&lt;br /&gt;
      K2=M*K2;&lt;br /&gt;
     &lt;br /&gt;
      T0=0;TF=10;&lt;br /&gt;
      t=T0&lt;br /&gt;
      &lt;br /&gt;
%Defino la malla:&lt;br /&gt;
      [R,T]=meshgrid(r,t);&lt;br /&gt;
      &lt;br /&gt;
%Defino F:&lt;br /&gt;
      F=zeros(1,N-1)&lt;br /&gt;
      F(end)=F(end)+10/(h^2)+10/(2*5.9*h);        %(donde (b-h)=5.9)&lt;br /&gt;
     &lt;br /&gt;
%Condición inicial:&lt;br /&gt;
      for i=1:length(rr)&lt;br /&gt;
            if rr(i)&amp;lt;2&lt;br /&gt;
            U(i)=100*(rr(i)-1);&lt;br /&gt;
            elseif rr(i)&amp;lt;5&lt;br /&gt;
            U(i)=100;&lt;br /&gt;
            else&lt;br /&gt;
            U(i)=90*(6-rr(i))+10;&lt;br /&gt;
            end&lt;br /&gt;
      end&lt;br /&gt;
      sol(1,:)=[0,U,10]; &lt;br /&gt;
 &lt;br /&gt;
%Método del trapecio:&lt;br /&gt;
      for m=1:length(t)-1&lt;br /&gt;
            Z=U'+(dt/2)*(-(K1+K2)*U'+F');&lt;br /&gt;
            W=eye(N-1)+(dt/2)*(K1+K2);&lt;br /&gt;
            W=W\Z;&lt;br /&gt;
            sol(m+1,:)=[0,W',10];&lt;br /&gt;
            U=W'&lt;br /&gt;
      end&lt;br /&gt;
      &lt;br /&gt;
%dibujo&lt;br /&gt;
      surf(R,T,sol)&lt;br /&gt;
&lt;br /&gt;
[[Archivo:imagentrapecio.jpg|marco|derecha|Superficie temperatura en el eje radial  ρ ∈ [1,6]]]&lt;br /&gt;
&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
== Euler implícito ==&lt;br /&gt;
Como los datos son los mismos que los usados en el método de diferencias finitas, no vamos a volver a repetir los datos puesto que son los mismos y lo único que cambia es el método utilizado.&lt;br /&gt;
&lt;br /&gt;
        %Euler implícito:&lt;br /&gt;
          for m=1:length(t)-1 &lt;br /&gt;
                Z=U'+dt*(F');&lt;br /&gt;
                W=eye(N-1)+dt*(K1+K2);&lt;br /&gt;
                W=W\Z;&lt;br /&gt;
                sol(m+1,:)=[0,W',10]&lt;br /&gt;
                U=W';&lt;br /&gt;
          end&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Euler modificado ==&lt;br /&gt;
Ocurre lo mismo que en el apartado anterior, que los datos no varían y lo único que debe de ser modificado es el método&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
        %Euler modificado:&lt;br /&gt;
          for m=1:length(t)-1&lt;br /&gt;
               M1=-(K1+K2)*U'+F';&lt;br /&gt;
               M2=-(K1+K2)*(U'+M1*dt)+F';&lt;br /&gt;
               W=U'+(dt/2)*(M1+M2);&lt;br /&gt;
               sol(m+1,:)=[0,W',10];&lt;br /&gt;
               U=W':&lt;br /&gt;
          end&lt;br /&gt;
[[Categoría:Ecuaciones Diferenciales]]&lt;br /&gt;
[[Categoría:ED13/14]]&lt;br /&gt;
[[Categoría:Trabajos 2013-14]]&lt;/div&gt;</summary>
		<author><name>Toni Villa</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Ecuaci%C3%B3n_del_calor_en_una_placa_en_forma_de_anillo&amp;diff=12451</id>
		<title>Ecuación del calor en una placa en forma de anillo</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Ecuaci%C3%B3n_del_calor_en_una_placa_en_forma_de_anillo&amp;diff=12451"/>
				<updated>2014-05-18T20:52:45Z</updated>
		
		<summary type="html">&lt;p&gt;Toni Villa: /* Método de diferencias finitas con el método del Trapecio */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{ TrabajoED | Ecuación del calor en una placa en forma de anillo. Grupo 6B | [[:Categoría:Ecuaciones Diferenciales|Ecuaciones Diferenciales]]|[[:Categoría:ED13/14|Curso 2013-14]] | Elisabet Sánchez López, Ana Santos Martín, Isabel Sastre Furones, Ángel Antonio Villa Figueroa }}&lt;br /&gt;
&lt;br /&gt;
{{ beta }}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Introducción ==&lt;br /&gt;
Tenemos una placa plana en forma de anillo. Vamos a trabajar en coordenadas polares en el plano y sabemos que la placa está comprendida entre los radios ρ=1 y ρ=6 y cuya temperatura inicial viene definida por la función u(ρ,0):&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\left\{\begin{matrix}100·(ρ-1)   con  ρ ∈ [1, 2] \\100     con  ρ ∈ [2, 5]\\90·(6-ρ)+10  con  ρ ∈ [5, 6]\end{matrix}\right.&amp;lt;/math&amp;gt;&lt;br /&gt;
                                                                           &lt;br /&gt;
Si colocamos en los extremos interior ρ=1 y exterior ρ=6 objetos a una temperatura constante de 0 y 10 grados respectivamente, es decir, las condiciones de frontera serán:            &lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\left\{\begin{matrix}u(1,t)=0 \\u(6,t)=10\end{matrix}\right.&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Suponiendo que la temperatura u de la placa únicamente depende de la coordenada radial y del tiempo, es decir, u=u(ρ,t) y sabiendo que satisface la ecuación del calor &amp;lt;math&amp;gt; u_t-\Delta u=0&amp;lt;/math&amp;gt; , vamos a plantear el sistema de ecuaciones que satisface u(ρ,t) en coordenadas polares:&lt;br /&gt;
&lt;br /&gt;
== Método de diferencias finitas con el método del Trapecio ==&lt;br /&gt;
&lt;br /&gt;
Tomamos los pasos de discretización del espacio &amp;lt;math&amp;gt; \Delta ρ=0.1&amp;lt;/math&amp;gt; y del tiempo &amp;lt;math&amp;gt; \Delta t=(\Delta ρ/4)&amp;lt;/math&amp;gt; en t ∈ [0; 10]&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=    &lt;br /&gt;
%Datos&lt;br /&gt;
      a=1;b=6;h=0.1; ya=0;yb=10;&lt;br /&gt;
      N=(b-a)/h; dt=h/4;&lt;br /&gt;
      r=[a:h:b]'; rr=[a+h:h:b-h]';&lt;br /&gt;
      &lt;br /&gt;
%Defino K1:&lt;br /&gt;
      K1=diag(ones(1,N-1)*2)+diag(ones(1,N-2)*(-1),-1)+diag(ones(1,N-2)*(-1),1);&lt;br /&gt;
      K1=K1*(1/h^2);&lt;br /&gt;
      &lt;br /&gt;
%Defino K2:&lt;br /&gt;
      K2=diag(ones(N-2,1)*(-1),1)+diag(ones(N-2,1),-1);&lt;br /&gt;
      K2=(1/h^2)*K2;&lt;br /&gt;
      M=diag(1./rr);&lt;br /&gt;
      K2=M*K2;&lt;br /&gt;
     &lt;br /&gt;
      T0=0;TF=10;&lt;br /&gt;
      t=T0&lt;br /&gt;
      &lt;br /&gt;
%Defino la malla:&lt;br /&gt;
      [R,T]=meshgrid(r,t);&lt;br /&gt;
      &lt;br /&gt;
%Defino F:&lt;br /&gt;
      F=zeros(1,N-1)&lt;br /&gt;
      F(end)=F(end)+10/(h^2)+10/(2*5.9*h);        %(donde (b-h)=5.9)&lt;br /&gt;
     &lt;br /&gt;
%Condición inicial:&lt;br /&gt;
      for i=1:length(rr)&lt;br /&gt;
            if rr(i)&amp;lt;2&lt;br /&gt;
            U(i)=100*(rr(i)-1);&lt;br /&gt;
            elseif rr(i)&amp;lt;5&lt;br /&gt;
            U(i)=100;&lt;br /&gt;
            else&lt;br /&gt;
            U(i)=90*(6-rr(i))+10;&lt;br /&gt;
            end&lt;br /&gt;
      end&lt;br /&gt;
      sol(1,:)=[0,U,10]; &lt;br /&gt;
 &lt;br /&gt;
%Método del trapecio:&lt;br /&gt;
      for m=1:length(t)-1&lt;br /&gt;
            Z=U'+(dt/2)*(-(K1+K2)*U'+F');&lt;br /&gt;
            W=eye(N-1)+(dt/2)*(K1+K2);&lt;br /&gt;
            W=W\Z;&lt;br /&gt;
            sol(m+1,:)=[0,W',10];&lt;br /&gt;
            U=W'&lt;br /&gt;
      end&lt;br /&gt;
      &lt;br /&gt;
%dibujo&lt;br /&gt;
      surf(R,T,sol)&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:imagentrapecio.jpg|marco|derecha|Superficie temperatura en el eje radial  ρ ∈ [1,6]]]&lt;br /&gt;
.&lt;br /&gt;
&lt;br /&gt;
== Euler implícito ==&lt;br /&gt;
Como los datos son los mismos que los usados en el método de diferencias finitas, no vamos a volver a repetir los datos puesto que son los mismos y lo único que cambia es el método utilizado.&lt;br /&gt;
&lt;br /&gt;
        %Euler implícito:&lt;br /&gt;
          for m=1:length(t)-1 &lt;br /&gt;
                Z=U'+dt*(F');&lt;br /&gt;
                W=eye(N-1)+dt*(K1+K2);&lt;br /&gt;
                W=W\Z;&lt;br /&gt;
                sol(m+1,:)=[0,W',10]&lt;br /&gt;
                U=W';&lt;br /&gt;
          end&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Euler modificado ==&lt;br /&gt;
Ocurre lo mismo que en el apartado anterior, que los datos no varían y lo único que debe de ser modificado es el método&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
        %Euler modificado:&lt;br /&gt;
          for m=1:length(t)-1&lt;br /&gt;
               M1=-(K1+K2)*U'+F';&lt;br /&gt;
               M2=-(K1+K2)*(U'+M1*dt)+F';&lt;br /&gt;
               W=U'+(dt/2)*(M1+M2);&lt;br /&gt;
               sol(m+1,:)=[0,W',10];&lt;br /&gt;
               U=W':&lt;br /&gt;
          end&lt;br /&gt;
[[Categoría:Ecuaciones Diferenciales]]&lt;br /&gt;
[[Categoría:ED13/14]]&lt;br /&gt;
[[Categoría:Trabajos 2013-14]]&lt;/div&gt;</summary>
		<author><name>Toni Villa</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Ecuaci%C3%B3n_del_calor_en_una_placa_en_forma_de_anillo&amp;diff=12450</id>
		<title>Ecuación del calor en una placa en forma de anillo</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Ecuaci%C3%B3n_del_calor_en_una_placa_en_forma_de_anillo&amp;diff=12450"/>
				<updated>2014-05-18T20:44:19Z</updated>
		
		<summary type="html">&lt;p&gt;Toni Villa: /* Método de diferencias finitas con el método del Trapecio */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{ TrabajoED | Ecuación del calor en una placa en forma de anillo. Grupo 6B | [[:Categoría:Ecuaciones Diferenciales|Ecuaciones Diferenciales]]|[[:Categoría:ED13/14|Curso 2013-14]] | Elisabet Sánchez López, Ana Santos Martín, Isabel Sastre Furones, Ángel Antonio Villa Figueroa }}&lt;br /&gt;
&lt;br /&gt;
{{ beta }}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Introducción ==&lt;br /&gt;
Tenemos una placa plana en forma de anillo. Vamos a trabajar en coordenadas polares en el plano y sabemos que la placa está comprendida entre los radios ρ=1 y ρ=6 y cuya temperatura inicial viene definida por la función u(ρ,0):&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\left\{\begin{matrix}100·(ρ-1)   con  ρ ∈ [1, 2] \\100     con  ρ ∈ [2, 5]\\90·(6-ρ)+10  con  ρ ∈ [5, 6]\end{matrix}\right.&amp;lt;/math&amp;gt;&lt;br /&gt;
                                                                           &lt;br /&gt;
Si colocamos en los extremos interior ρ=1 y exterior ρ=6 objetos a una temperatura constante de 0 y 10 grados respectivamente, es decir, las condiciones de frontera serán:            &lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\left\{\begin{matrix}u(1,t)=0 \\u(6,t)=10\end{matrix}\right.&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Suponiendo que la temperatura u de la placa únicamente depende de la coordenada radial y del tiempo, es decir, u=u(ρ,t) y sabiendo que satisface la ecuación del calor &amp;lt;math&amp;gt; u_t-\Delta u=0&amp;lt;/math&amp;gt; , vamos a plantear el sistema de ecuaciones que satisface u(ρ,t) en coordenadas polares:&lt;br /&gt;
&lt;br /&gt;
== Método de diferencias finitas con el método del Trapecio ==&lt;br /&gt;
&lt;br /&gt;
Tomamos los pasos de discretización del espacio &amp;lt;math&amp;gt; \Delta ρ=0.1&amp;lt;/math&amp;gt; y del tiempo &amp;lt;math&amp;gt; \Delta t=(\Delta ρ/4)&amp;lt;/math&amp;gt; en t ∈ [0; 10]&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=    &lt;br /&gt;
%Datos&lt;br /&gt;
      a=1;b=6;h=0.1; ya=0;yb=10;&lt;br /&gt;
      N=(b-a)/h; dt=h/4;&lt;br /&gt;
      r=[a:h:b]'; rr=[a+h:h:b-h]';&lt;br /&gt;
      &lt;br /&gt;
%Defino K1:&lt;br /&gt;
      K1=diag(ones(1,N-1)*2)+diag(ones(1,N-2)*(-1),-1)+diag(ones(1,N-2)*(-1),1);&lt;br /&gt;
      K1=K1*(1/h^2);&lt;br /&gt;
      &lt;br /&gt;
%Defino K2:&lt;br /&gt;
      K2=diag(ones(N-2,1)*(-1),1)+diag(ones(N-2,1),-1);&lt;br /&gt;
      K2=(1/h^2)*K2;&lt;br /&gt;
      M=diag(1./rr);&lt;br /&gt;
      K2=M*K2;&lt;br /&gt;
     &lt;br /&gt;
      T0=0;TF=10;&lt;br /&gt;
      t=T0&lt;br /&gt;
      &lt;br /&gt;
%Defino la malla:&lt;br /&gt;
      [R,T]=meshgrid(r,t);&lt;br /&gt;
      &lt;br /&gt;
%Defino F:&lt;br /&gt;
      F=zeros(1,N-1)&lt;br /&gt;
      F(end)=F(end)+10/(h^2)+10/(2*5.9*h);        %(donde (b-h)=5.9)&lt;br /&gt;
     &lt;br /&gt;
%Condición inicial:&lt;br /&gt;
      for i=1:length(rr)&lt;br /&gt;
            if rr(i)&amp;lt;2&lt;br /&gt;
            U(i)=100*(rr(i)-1);&lt;br /&gt;
            elseif rr(i)&amp;lt;5&lt;br /&gt;
            U(i)=100;&lt;br /&gt;
            else&lt;br /&gt;
            U(i)=90*(6-rr(i))+10;&lt;br /&gt;
            end&lt;br /&gt;
      end&lt;br /&gt;
      sol(1,:)=[0,U,10]; &lt;br /&gt;
 &lt;br /&gt;
%Método del trapecio:&lt;br /&gt;
      for m=1:length(t)-1&lt;br /&gt;
            Z=U'+(dt/2)*(-(K1+K2)*U'+F');&lt;br /&gt;
            W=eye(N-1)+(dt/2)*(K1+K2);&lt;br /&gt;
            W=W\Z;&lt;br /&gt;
            sol(m+1,:)=[0,W',10];&lt;br /&gt;
            U=W'&lt;br /&gt;
      end&lt;br /&gt;
      &lt;br /&gt;
%dibujo&lt;br /&gt;
      surf(R,T,sol)&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:imagentrapecio.jpg|marco|derecha|Superficie temperatura en el eje radial  ρ ∈ [1,6]]]&lt;br /&gt;
&lt;br /&gt;
== Euler implícito ==&lt;br /&gt;
Como los datos son los mismos que los usados en el método de diferencias finitas, no vamos a volver a repetir los datos puesto que son los mismos y lo único que cambia es el método utilizado.&lt;br /&gt;
&lt;br /&gt;
        %Euler implícito:&lt;br /&gt;
          for m=1:length(t)-1 &lt;br /&gt;
                Z=U'+dt*(F');&lt;br /&gt;
                W=eye(N-1)+dt*(K1+K2);&lt;br /&gt;
                W=W\Z;&lt;br /&gt;
                sol(m+1,:)=[0,W',10]&lt;br /&gt;
                U=W';&lt;br /&gt;
          end&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Euler modificado ==&lt;br /&gt;
Ocurre lo mismo que en el apartado anterior, que los datos no varían y lo único que debe de ser modificado es el método&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
        %Euler modificado:&lt;br /&gt;
          for m=1:length(t)-1&lt;br /&gt;
               M1=-(K1+K2)*U'+F';&lt;br /&gt;
               M2=-(K1+K2)*(U'+M1*dt)+F';&lt;br /&gt;
               W=U'+(dt/2)*(M1+M2);&lt;br /&gt;
               sol(m+1,:)=[0,W',10];&lt;br /&gt;
               U=W':&lt;br /&gt;
          end&lt;br /&gt;
[[Categoría:Ecuaciones Diferenciales]]&lt;br /&gt;
[[Categoría:ED13/14]]&lt;br /&gt;
[[Categoría:Trabajos 2013-14]]&lt;/div&gt;</summary>
		<author><name>Toni Villa</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Archivo:Imagentrapecio.jpg&amp;diff=12449</id>
		<title>Archivo:Imagentrapecio.jpg</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Archivo:Imagentrapecio.jpg&amp;diff=12449"/>
				<updated>2014-05-18T20:41:35Z</updated>
		
		<summary type="html">&lt;p&gt;Toni Villa: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>Toni Villa</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Ecuaci%C3%B3n_del_calor_en_una_placa_en_forma_de_anillo&amp;diff=12445</id>
		<title>Ecuación del calor en una placa en forma de anillo</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Ecuaci%C3%B3n_del_calor_en_una_placa_en_forma_de_anillo&amp;diff=12445"/>
				<updated>2014-05-18T20:31:31Z</updated>
		
		<summary type="html">&lt;p&gt;Toni Villa: /* Método de diferencias finitas con el método del Trapecio */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{ TrabajoED | Ecuación del calor en una placa en forma de anillo. Grupo 6B | [[:Categoría:Ecuaciones Diferenciales|Ecuaciones Diferenciales]]|[[:Categoría:ED13/14|Curso 2013-14]] | Elisabet Sánchez López, Ana Santos Martín, Isabel Sastre Furones, Ángel Antonio Villa Figueroa }}&lt;br /&gt;
&lt;br /&gt;
{{ beta }}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Introducción ==&lt;br /&gt;
Tenemos una placa plana en forma de anillo. Vamos a trabajar en coordenadas polares en el plano y sabemos que la placa está comprendida entre los radios ρ=1 y ρ=6 y cuya temperatura inicial viene definida por la función u(ρ,0):&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\left\{\begin{matrix}100·(ρ-1)   con  ρ ∈ [1, 2] \\100     con  ρ ∈ [2, 5]\\90·(6-ρ)+10  con  ρ ∈ [5, 6]\end{matrix}\right.&amp;lt;/math&amp;gt;&lt;br /&gt;
                                                                           &lt;br /&gt;
Si colocamos en los extremos interior ρ=1 y exterior ρ=6 objetos a una temperatura constante de 0 y 10 grados respectivamente, es decir, las condiciones de frontera serán:            &lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\left\{\begin{matrix}u(1,t)=0 \\u(6,t)=10\end{matrix}\right.&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Suponiendo que la temperatura u de la placa únicamente depende de la coordenada radial y del tiempo, es decir, u=u(ρ,t) y sabiendo que satisface la ecuación del calor &amp;lt;math&amp;gt; u_t-\Delta u=0&amp;lt;/math&amp;gt; , vamos a plantear el sistema de ecuaciones que satisface u(ρ,t) en coordenadas polares:&lt;br /&gt;
&lt;br /&gt;
== Método de diferencias finitas con el método del Trapecio ==&lt;br /&gt;
&lt;br /&gt;
Tomamos los pasos de discretización del espacio &amp;lt;math&amp;gt; \Delta ρ=0.1&amp;lt;/math&amp;gt; y del tiempo &amp;lt;math&amp;gt; \Delta t=(\Delta ρ/4)&amp;lt;/math&amp;gt; en t ∈ [0; 10]&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=    &lt;br /&gt;
%Datos&lt;br /&gt;
      a=1;b=6;h=0.1; ya=0;yb=10;&lt;br /&gt;
      N=(b-a)/h; dt=h/4;&lt;br /&gt;
      r=[a:h:b]'; rr=[a+h:h:b-h]';&lt;br /&gt;
      &lt;br /&gt;
%Defino K1:&lt;br /&gt;
      K1=diag(ones(1,N-1)*2)+diag(ones(1,N-2)*(-1),-1)+diag(ones(1,N-2)*(-1),1);&lt;br /&gt;
      K1=K1*(1/h^2);&lt;br /&gt;
      &lt;br /&gt;
%Defino K2:&lt;br /&gt;
      K2=diag(ones(N-2,1)*(-1),1)+diag(ones(N-2,1),-1);&lt;br /&gt;
      K2=(1/h^2)*K2;&lt;br /&gt;
      M=diag(1./rr);&lt;br /&gt;
      K2=M*K2;&lt;br /&gt;
     &lt;br /&gt;
      T0=0;TF=10;&lt;br /&gt;
      t=T0&lt;br /&gt;
      &lt;br /&gt;
%Defino la malla:&lt;br /&gt;
      [R,T]=meshgrid(r,t);&lt;br /&gt;
      &lt;br /&gt;
%Defino F:&lt;br /&gt;
      F=zeros(1,N-1)&lt;br /&gt;
      F(end)=F(end)+10/(h^2)+10/(2*5.9*h);        %(donde (b-h)=5.9)&lt;br /&gt;
     &lt;br /&gt;
%Condición inicial:&lt;br /&gt;
      for i=1:length(rr)&lt;br /&gt;
            if rr(i)&amp;lt;2&lt;br /&gt;
            U(i)=100*(rr(i)-1);&lt;br /&gt;
            elseif rr(i)&amp;lt;5&lt;br /&gt;
            U(i)=100;&lt;br /&gt;
            else&lt;br /&gt;
            U(i)=90*(6-rr(i))+10;&lt;br /&gt;
            end&lt;br /&gt;
      end&lt;br /&gt;
      sol(1,:)=[0,U,10]; &lt;br /&gt;
 &lt;br /&gt;
%Método del trapecio:&lt;br /&gt;
      for m=1:length(t)-1&lt;br /&gt;
            Z=U'+(dt/2)*(-(K1+K2)*U'+F');&lt;br /&gt;
            W=eye(N-1)+(dt/2)*(K1+K2);&lt;br /&gt;
            W=W\Z;&lt;br /&gt;
            sol(m+1,:)=[0,W',10];&lt;br /&gt;
            U=W'&lt;br /&gt;
      end&lt;br /&gt;
      &lt;br /&gt;
%dibujo&lt;br /&gt;
      surf(R,T,sol)&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
== Euler implícito ==&lt;br /&gt;
Como los datos son los mismos que los usados en el método de diferencias finitas, no vamos a volver a repetir los datos puesto que son los mismos y lo único que cambia es el método utilizado.&lt;br /&gt;
&lt;br /&gt;
        %Euler implícito:&lt;br /&gt;
          for m=1:length(t)-1 &lt;br /&gt;
                Z=U'+dt*(F');&lt;br /&gt;
                W=eye(N-1)+dt*(K1+K2);&lt;br /&gt;
                W=W\Z;&lt;br /&gt;
                sol(m+1,:)=[0,W',10]&lt;br /&gt;
                U=W';&lt;br /&gt;
          end&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Euler modificado ==&lt;br /&gt;
Ocurre lo mismo que en el apartado anterior, que los datos no varían y lo único que debe de ser modificado es el método&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
        %Euler modificado:&lt;br /&gt;
          for m=1:length(t)-1&lt;br /&gt;
               M1=-(K1+K2)*U'+F';&lt;br /&gt;
               M2=-(K1+K2)*(U'+M1*dt)+F';&lt;br /&gt;
               W=U'+(dt/2)*(M1+M2);&lt;br /&gt;
               sol(m+1,:)=[0,W',10];&lt;br /&gt;
               U=W':&lt;br /&gt;
          end&lt;br /&gt;
[[Categoría:Ecuaciones Diferenciales]]&lt;br /&gt;
[[Categoría:ED13/14]]&lt;br /&gt;
[[Categoría:Trabajos 2013-14]]&lt;/div&gt;</summary>
		<author><name>Toni Villa</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Ecuaci%C3%B3n_del_calor_en_una_placa_en_forma_de_anillo&amp;diff=12444</id>
		<title>Ecuación del calor en una placa en forma de anillo</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Ecuaci%C3%B3n_del_calor_en_una_placa_en_forma_de_anillo&amp;diff=12444"/>
				<updated>2014-05-18T20:31:06Z</updated>
		
		<summary type="html">&lt;p&gt;Toni Villa: /* Método de diferencias finitas con el método del Trapecio */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{ TrabajoED | Ecuación del calor en una placa en forma de anillo. Grupo 6B | [[:Categoría:Ecuaciones Diferenciales|Ecuaciones Diferenciales]]|[[:Categoría:ED13/14|Curso 2013-14]] | Elisabet Sánchez López, Ana Santos Martín, Isabel Sastre Furones, Ángel Antonio Villa Figueroa }}&lt;br /&gt;
&lt;br /&gt;
{{ beta }}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Introducción ==&lt;br /&gt;
Tenemos una placa plana en forma de anillo. Vamos a trabajar en coordenadas polares en el plano y sabemos que la placa está comprendida entre los radios ρ=1 y ρ=6 y cuya temperatura inicial viene definida por la función u(ρ,0):&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\left\{\begin{matrix}100·(ρ-1)   con  ρ ∈ [1, 2] \\100     con  ρ ∈ [2, 5]\\90·(6-ρ)+10  con  ρ ∈ [5, 6]\end{matrix}\right.&amp;lt;/math&amp;gt;&lt;br /&gt;
                                                                           &lt;br /&gt;
Si colocamos en los extremos interior ρ=1 y exterior ρ=6 objetos a una temperatura constante de 0 y 10 grados respectivamente, es decir, las condiciones de frontera serán:            &lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\left\{\begin{matrix}u(1,t)=0 \\u(6,t)=10\end{matrix}\right.&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Suponiendo que la temperatura u de la placa únicamente depende de la coordenada radial y del tiempo, es decir, u=u(ρ,t) y sabiendo que satisface la ecuación del calor &amp;lt;math&amp;gt; u_t-\Delta u=0&amp;lt;/math&amp;gt; , vamos a plantear el sistema de ecuaciones que satisface u(ρ,t) en coordenadas polares:&lt;br /&gt;
&lt;br /&gt;
== Método de diferencias finitas con el método del Trapecio ==&lt;br /&gt;
&lt;br /&gt;
Tomamos los pasos de discretización del espacio &amp;lt;math&amp;gt; \Delta ρ=0.1&amp;lt;/math&amp;gt; y del tiempo &amp;lt;math&amp;gt; \Delta t=(\Delta ρ//4)&amp;lt;/math&amp;gt; en t ∈ [0; 10]&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=    &lt;br /&gt;
%Datos&lt;br /&gt;
      a=1;b=6;h=0.1; ya=0;yb=10;&lt;br /&gt;
      N=(b-a)/h; dt=h/4;&lt;br /&gt;
      r=[a:h:b]'; rr=[a+h:h:b-h]';&lt;br /&gt;
      &lt;br /&gt;
%Defino K1:&lt;br /&gt;
      K1=diag(ones(1,N-1)*2)+diag(ones(1,N-2)*(-1),-1)+diag(ones(1,N-2)*(-1),1);&lt;br /&gt;
      K1=K1*(1/h^2);&lt;br /&gt;
      &lt;br /&gt;
%Defino K2:&lt;br /&gt;
      K2=diag(ones(N-2,1)*(-1),1)+diag(ones(N-2,1),-1);&lt;br /&gt;
      K2=(1/h^2)*K2;&lt;br /&gt;
      M=diag(1./rr);&lt;br /&gt;
      K2=M*K2;&lt;br /&gt;
     &lt;br /&gt;
      T0=0;TF=10;&lt;br /&gt;
      t=T0&lt;br /&gt;
      &lt;br /&gt;
%Defino la malla:&lt;br /&gt;
      [R,T]=meshgrid(r,t);&lt;br /&gt;
      &lt;br /&gt;
%Defino F:&lt;br /&gt;
      F=zeros(1,N-1)&lt;br /&gt;
      F(end)=F(end)+10/(h^2)+10/(2*5.9*h);        %(donde (b-h)=5.9)&lt;br /&gt;
     &lt;br /&gt;
%Condición inicial:&lt;br /&gt;
      for i=1:length(rr)&lt;br /&gt;
            if rr(i)&amp;lt;2&lt;br /&gt;
            U(i)=100*(rr(i)-1);&lt;br /&gt;
            elseif rr(i)&amp;lt;5&lt;br /&gt;
            U(i)=100;&lt;br /&gt;
            else&lt;br /&gt;
            U(i)=90*(6-rr(i))+10;&lt;br /&gt;
            end&lt;br /&gt;
      end&lt;br /&gt;
      sol(1,:)=[0,U,10]; &lt;br /&gt;
 &lt;br /&gt;
%Método del trapecio:&lt;br /&gt;
      for m=1:length(t)-1&lt;br /&gt;
            Z=U'+(dt/2)*(-(K1+K2)*U'+F');&lt;br /&gt;
            W=eye(N-1)+(dt/2)*(K1+K2);&lt;br /&gt;
            W=W\Z;&lt;br /&gt;
            sol(m+1,:)=[0,W',10];&lt;br /&gt;
            U=W'&lt;br /&gt;
      end&lt;br /&gt;
      &lt;br /&gt;
%dibujo&lt;br /&gt;
      surf(R,T,sol)&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
== Euler implícito ==&lt;br /&gt;
Como los datos son los mismos que los usados en el método de diferencias finitas, no vamos a volver a repetir los datos puesto que son los mismos y lo único que cambia es el método utilizado.&lt;br /&gt;
&lt;br /&gt;
        %Euler implícito:&lt;br /&gt;
          for m=1:length(t)-1 &lt;br /&gt;
                Z=U'+dt*(F');&lt;br /&gt;
                W=eye(N-1)+dt*(K1+K2);&lt;br /&gt;
                W=W\Z;&lt;br /&gt;
                sol(m+1,:)=[0,W',10]&lt;br /&gt;
                U=W';&lt;br /&gt;
          end&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Euler modificado ==&lt;br /&gt;
Ocurre lo mismo que en el apartado anterior, que los datos no varían y lo único que debe de ser modificado es el método&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
        %Euler modificado:&lt;br /&gt;
          for m=1:length(t)-1&lt;br /&gt;
               M1=-(K1+K2)*U'+F';&lt;br /&gt;
               M2=-(K1+K2)*(U'+M1*dt)+F';&lt;br /&gt;
               W=U'+(dt/2)*(M1+M2);&lt;br /&gt;
               sol(m+1,:)=[0,W',10];&lt;br /&gt;
               U=W':&lt;br /&gt;
          end&lt;br /&gt;
[[Categoría:Ecuaciones Diferenciales]]&lt;br /&gt;
[[Categoría:ED13/14]]&lt;br /&gt;
[[Categoría:Trabajos 2013-14]]&lt;/div&gt;</summary>
		<author><name>Toni Villa</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Ecuaci%C3%B3n_del_calor_en_una_placa_en_forma_de_anillo&amp;diff=12442</id>
		<title>Ecuación del calor en una placa en forma de anillo</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Ecuaci%C3%B3n_del_calor_en_una_placa_en_forma_de_anillo&amp;diff=12442"/>
				<updated>2014-05-18T20:30:09Z</updated>
		
		<summary type="html">&lt;p&gt;Toni Villa: /* Método de diferencias finitas */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{ TrabajoED | Ecuación del calor en una placa en forma de anillo. Grupo 6B | [[:Categoría:Ecuaciones Diferenciales|Ecuaciones Diferenciales]]|[[:Categoría:ED13/14|Curso 2013-14]] | Elisabet Sánchez López, Ana Santos Martín, Isabel Sastre Furones, Ángel Antonio Villa Figueroa }}&lt;br /&gt;
&lt;br /&gt;
{{ beta }}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Introducción ==&lt;br /&gt;
Tenemos una placa plana en forma de anillo. Vamos a trabajar en coordenadas polares en el plano y sabemos que la placa está comprendida entre los radios ρ=1 y ρ=6 y cuya temperatura inicial viene definida por la función u(ρ,0):&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\left\{\begin{matrix}100·(ρ-1)   con  ρ ∈ [1, 2] \\100     con  ρ ∈ [2, 5]\\90·(6-ρ)+10  con  ρ ∈ [5, 6]\end{matrix}\right.&amp;lt;/math&amp;gt;&lt;br /&gt;
                                                                           &lt;br /&gt;
Si colocamos en los extremos interior ρ=1 y exterior ρ=6 objetos a una temperatura constante de 0 y 10 grados respectivamente, es decir, las condiciones de frontera serán:            &lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\left\{\begin{matrix}u(1,t)=0 \\u(6,t)=10\end{matrix}\right.&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Suponiendo que la temperatura u de la placa únicamente depende de la coordenada radial y del tiempo, es decir, u=u(ρ,t) y sabiendo que satisface la ecuación del calor &amp;lt;math&amp;gt; u_t-\Delta u=0&amp;lt;/math&amp;gt; , vamos a plantear el sistema de ecuaciones que satisface u(ρ,t) en coordenadas polares:&lt;br /&gt;
&lt;br /&gt;
== Método de diferencias finitas con el método del Trapecio ==&lt;br /&gt;
&lt;br /&gt;
Tomamos los pasos de discretización del espacio &amp;lt;math&amp;gt; \Delta ρ=0.1&amp;lt;/math&amp;gt; y del tiempo &amp;lt;math&amp;gt; \Delta t=(Delta ρ/4)&amp;lt;/math&amp;gt; en t ∈ [0; 10]&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=    &lt;br /&gt;
%Datos&lt;br /&gt;
      a=1;b=6;h=0.1; ya=0;yb=10;&lt;br /&gt;
      N=(b-a)/h; dt=h/4;&lt;br /&gt;
      r=[a:h:b]'; rr=[a+h:h:b-h]';&lt;br /&gt;
      &lt;br /&gt;
%Defino K1:&lt;br /&gt;
      K1=diag(ones(1,N-1)*2)+diag(ones(1,N-2)*(-1),-1)+diag(ones(1,N-2)*(-1),1);&lt;br /&gt;
      K1=K1*(1/h^2);&lt;br /&gt;
      &lt;br /&gt;
%Defino K2:&lt;br /&gt;
      K2=diag(ones(N-2,1)*(-1),1)+diag(ones(N-2,1),-1);&lt;br /&gt;
      K2=(1/h^2)*K2;&lt;br /&gt;
      M=diag(1./rr);&lt;br /&gt;
      K2=M*K2;&lt;br /&gt;
     &lt;br /&gt;
      T0=0;TF=10;&lt;br /&gt;
      t=T0&lt;br /&gt;
      &lt;br /&gt;
%Defino la malla:&lt;br /&gt;
      [R,T]=meshgrid(r,t);&lt;br /&gt;
      &lt;br /&gt;
%Defino F:&lt;br /&gt;
      F=zeros(1,N-1)&lt;br /&gt;
      F(end)=F(end)+10/(h^2)+10/(2*5.9*h);        %(donde (b-h)=5.9)&lt;br /&gt;
     &lt;br /&gt;
%Condición inicial:&lt;br /&gt;
      for i=1:length(rr)&lt;br /&gt;
            if rr(i)&amp;lt;2&lt;br /&gt;
            U(i)=100*(rr(i)-1);&lt;br /&gt;
            elseif rr(i)&amp;lt;5&lt;br /&gt;
            U(i)=100;&lt;br /&gt;
            else&lt;br /&gt;
            U(i)=90*(6-rr(i))+10;&lt;br /&gt;
            end&lt;br /&gt;
      end&lt;br /&gt;
      sol(1,:)=[0,U,10]; &lt;br /&gt;
 &lt;br /&gt;
%Método del trapecio:&lt;br /&gt;
      for m=1:length(t)-1&lt;br /&gt;
            Z=U'+(dt/2)*(-(K1+K2)*U'+F');&lt;br /&gt;
            W=eye(N-1)+(dt/2)*(K1+K2);&lt;br /&gt;
            W=W\Z;&lt;br /&gt;
            sol(m+1,:)=[0,W',10];&lt;br /&gt;
            U=W'&lt;br /&gt;
      end&lt;br /&gt;
      &lt;br /&gt;
%dibujo&lt;br /&gt;
      surf(R,T,sol)&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
== Euler implícito ==&lt;br /&gt;
Como los datos son los mismos que los usados en el método de diferencias finitas, no vamos a volver a repetir los datos puesto que son los mismos y lo único que cambia es el método utilizado.&lt;br /&gt;
&lt;br /&gt;
        %Euler implícito:&lt;br /&gt;
          for m=1:length(t)-1 &lt;br /&gt;
                Z=U'+dt*(F');&lt;br /&gt;
                W=eye(N-1)+dt*(K1+K2);&lt;br /&gt;
                W=W\Z;&lt;br /&gt;
                sol(m+1,:)=[0,W',10]&lt;br /&gt;
                U=W';&lt;br /&gt;
          end&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Euler modificado ==&lt;br /&gt;
Ocurre lo mismo que en el apartado anterior, que los datos no varían y lo único que debe de ser modificado es el método&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
        %Euler modificado:&lt;br /&gt;
          for m=1:length(t)-1&lt;br /&gt;
               M1=-(K1+K2)*U'+F';&lt;br /&gt;
               M2=-(K1+K2)*(U'+M1*dt)+F';&lt;br /&gt;
               W=U'+(dt/2)*(M1+M2);&lt;br /&gt;
               sol(m+1,:)=[0,W',10];&lt;br /&gt;
               U=W':&lt;br /&gt;
          end&lt;br /&gt;
[[Categoría:Ecuaciones Diferenciales]]&lt;br /&gt;
[[Categoría:ED13/14]]&lt;br /&gt;
[[Categoría:Trabajos 2013-14]]&lt;/div&gt;</summary>
		<author><name>Toni Villa</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Ecuaci%C3%B3n_del_calor_en_una_placa_en_forma_de_anillo&amp;diff=12437</id>
		<title>Ecuación del calor en una placa en forma de anillo</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Ecuaci%C3%B3n_del_calor_en_una_placa_en_forma_de_anillo&amp;diff=12437"/>
				<updated>2014-05-18T20:23:44Z</updated>
		
		<summary type="html">&lt;p&gt;Toni Villa: /* Método de diferencias finitas */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{ TrabajoED | Ecuación del calor en una placa en forma de anillo. Grupo 6B | [[:Categoría:Ecuaciones Diferenciales|Ecuaciones Diferenciales]]|[[:Categoría:ED13/14|Curso 2013-14]] | Elisabet Sánchez López, Ana Santos Martín, Isabel Sastre Furones, Ángel Antonio Villa Figueroa }}&lt;br /&gt;
&lt;br /&gt;
{{ beta }}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Introducción ==&lt;br /&gt;
Tenemos una placa plana en forma de anillo. Vamos a trabajar en coordenadas polares en el plano y sabemos que la placa está comprendida entre los radios ρ=1 y ρ=6 y cuya temperatura inicial viene definida por la función u(ρ,0):&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\left\{\begin{matrix}100·(ρ-1)   con  ρ ∈ [1, 2] \\100     con  ρ ∈ [2, 5]\\90·(6-ρ)+10  con  ρ ∈ [5, 6]\end{matrix}\right.&amp;lt;/math&amp;gt;&lt;br /&gt;
                                                                           &lt;br /&gt;
Si colocamos en los extremos interior ρ=1 y exterior ρ=6 objetos a una temperatura constante de 0 y 10 grados respectivamente, es decir, las condiciones de frontera serán:            &lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\left\{\begin{matrix}u(1,t)=0 \\u(6,t)=10\end{matrix}\right.&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Suponiendo que la temperatura u de la placa únicamente depende de la coordenada radial y del tiempo, es decir, u=u(ρ,t) y sabiendo que satisface la ecuación del calor &amp;lt;math&amp;gt; u_t-\Delta u=0&amp;lt;/math&amp;gt; , vamos a plantear el sistema de ecuaciones que satisface u(ρ,t) en coordenadas polares:&lt;br /&gt;
&lt;br /&gt;
== Método de diferencias finitas ==&lt;br /&gt;
{{matlab|codigo=    &lt;br /&gt;
%Datos&lt;br /&gt;
      a=1;b=6;h=0.1; ya=0;yb=10;&lt;br /&gt;
      N=(b-a)/h; dt=h/4;&lt;br /&gt;
      r=[a:h:b]'; rr=[a+h:h:b-h]';&lt;br /&gt;
      &lt;br /&gt;
%Defino K1:&lt;br /&gt;
      K1=diag(ones(1,N-1)*2)+diag(ones(1,N-2)*(-1),-1)+diag(ones(1,N-2)*(-1),1);&lt;br /&gt;
      K1=K1*(1/h^2);&lt;br /&gt;
      &lt;br /&gt;
%Defino K2:&lt;br /&gt;
      K2=diag(ones(N-2,1)*(-1),1)+diag(ones(N-2,1),-1);&lt;br /&gt;
      K2=(1/h^2)*K2;&lt;br /&gt;
      M=diag(1./rr);&lt;br /&gt;
      K2=M*K2;&lt;br /&gt;
     &lt;br /&gt;
      T0=0;TF=10;&lt;br /&gt;
      t=T0&lt;br /&gt;
      &lt;br /&gt;
%Defino la malla:&lt;br /&gt;
      [R,T]=meshgrid(r,t);&lt;br /&gt;
      &lt;br /&gt;
%Defino F:&lt;br /&gt;
      F=zeros(1,N-1)&lt;br /&gt;
      F(end)=F(end)+10/(h^2)+10/(2*5.9*h);        %(donde (b-h)=5.9)&lt;br /&gt;
     &lt;br /&gt;
%Condición inicial:&lt;br /&gt;
      for i=1:length(rr)&lt;br /&gt;
            if rr(i)&amp;lt;2&lt;br /&gt;
            U(i)=100*(rr(i)-1);&lt;br /&gt;
            elseif rr(i)&amp;lt;5&lt;br /&gt;
            U(i)=100;&lt;br /&gt;
            else&lt;br /&gt;
            U(i)=90*(6-rr(i))+10;&lt;br /&gt;
            end&lt;br /&gt;
      end&lt;br /&gt;
      sol(1,:)=[0,U,10]; &lt;br /&gt;
 &lt;br /&gt;
%Método del trapecio:&lt;br /&gt;
      for m=1:length(t)-1&lt;br /&gt;
            Z=U'+(dt/2)*(-(K1+K2)*U'+F');&lt;br /&gt;
            W=eye(N-1)+(dt/2)*(K1+K2);&lt;br /&gt;
            W=W\Z;&lt;br /&gt;
            sol(m+1,:)=[0,W',10];&lt;br /&gt;
            U=W'&lt;br /&gt;
      end&lt;br /&gt;
      &lt;br /&gt;
%dibujo&lt;br /&gt;
      surf(R,T,sol)&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
== Euler implícito ==&lt;br /&gt;
Como los datos son los mismos que los usados en el método de diferencias finitas, no vamos a volver a repetir los datos puesto que son los mismos y lo único que cambia es el método utilizado.&lt;br /&gt;
&lt;br /&gt;
        %Euler implícito:&lt;br /&gt;
          for m=1:length(t)-1 &lt;br /&gt;
                Z=U'+dt*(F');&lt;br /&gt;
                W=eye(N-1)+dt*(K1+K2);&lt;br /&gt;
                W=W\Z;&lt;br /&gt;
                sol(m+1,:)=[0,W',10]&lt;br /&gt;
                U=W';&lt;br /&gt;
          end&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Euler modificado ==&lt;br /&gt;
Ocurre lo mismo que en el apartado anterior, que los datos no varían y lo único que debe de ser modificado es el método&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
        %Euler modificado:&lt;br /&gt;
          for m=1:length(t)-1&lt;br /&gt;
               M1=-(K1+K2)*U'+F';&lt;br /&gt;
               M2=-(K1+K2)*(U'+M1*dt)+F';&lt;br /&gt;
               W=U'+(dt/2)*(M1+M2);&lt;br /&gt;
               sol(m+1,:)=[0,W',10];&lt;br /&gt;
               U=W':&lt;br /&gt;
          end&lt;br /&gt;
[[Categoría:Ecuaciones Diferenciales]]&lt;br /&gt;
[[Categoría:ED13/14]]&lt;br /&gt;
[[Categoría:Trabajos 2013-14]]&lt;/div&gt;</summary>
		<author><name>Toni Villa</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Ecuaci%C3%B3n_del_calor_en_una_placa_en_forma_de_anillo&amp;diff=12433</id>
		<title>Ecuación del calor en una placa en forma de anillo</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Ecuaci%C3%B3n_del_calor_en_una_placa_en_forma_de_anillo&amp;diff=12433"/>
				<updated>2014-05-18T20:20:58Z</updated>
		
		<summary type="html">&lt;p&gt;Toni Villa: /* Método de diferencias finitas */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{ TrabajoED | Ecuación del calor en una placa en forma de anillo. Grupo 6B | [[:Categoría:Ecuaciones Diferenciales|Ecuaciones Diferenciales]]|[[:Categoría:ED13/14|Curso 2013-14]] | Elisabet Sánchez López, Ana Santos Martín, Isabel Sastre Furones, Ángel Antonio Villa Figueroa }}&lt;br /&gt;
&lt;br /&gt;
{{ beta }}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Introducción ==&lt;br /&gt;
Tenemos una placa plana en forma de anillo. Vamos a trabajar en coordenadas polares en el plano y sabemos que la placa está comprendida entre los radios ρ=1 y ρ=6 y cuya temperatura inicial viene definida por la función u(ρ,0):&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\left\{\begin{matrix}100·(ρ-1)   con  ρ ∈ [1, 2] \\100     con  ρ ∈ [2, 5]\\90·(6-ρ)+10  con  ρ ∈ [5, 6]\end{matrix}\right.&amp;lt;/math&amp;gt;&lt;br /&gt;
                                                                           &lt;br /&gt;
Si colocamos en los extremos interior ρ=1 y exterior ρ=6 objetos a una temperatura constante de 0 y 10 grados respectivamente, es decir, las condiciones de frontera serán:            &lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\left\{\begin{matrix}u(1,t)=0 \\u(6,t)=10\end{matrix}\right.&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Suponiendo que la temperatura u de la placa únicamente depende de la coordenada radial y del tiempo, es decir, u=u(ρ,t) y sabiendo que satisface la ecuación del calor &amp;lt;math&amp;gt; u_t-\Delta u=0&amp;lt;/math&amp;gt; , vamos a plantear el sistema de ecuaciones que satisface u(ρ,t) en coordenadas polares:&lt;br /&gt;
&lt;br /&gt;
== Método de diferencias finitas ==&lt;br /&gt;
{{matlab|codigo=    &lt;br /&gt;
      %Datos&lt;br /&gt;
      a=1;b=6;h=0.1; ya=0;yb=10;&lt;br /&gt;
      N=(b-a)/h; dt=h/4;&lt;br /&gt;
      r=[a:h:b]'; rr=[a+h:h:b-h]';&lt;br /&gt;
      %Defino K1:&lt;br /&gt;
      K1=diag(ones(1,N-1)*2)+diag(ones(1,N-2)*(-1),-1)+diag(ones(1,N-2)*(-1),1);&lt;br /&gt;
      K1=K1*(1/h^2);&lt;br /&gt;
      %Defino K2:&lt;br /&gt;
      K2=diag(ones(N-2,1)*(-1),1)+diag(ones(N-2,1),-1);&lt;br /&gt;
      K2=(1/h^2)*K2;&lt;br /&gt;
      M=diag(1./rr);&lt;br /&gt;
      K2=M*K2;&lt;br /&gt;
      T0=0;TF=10;&lt;br /&gt;
      t=T0&lt;br /&gt;
      %Defino la malla:&lt;br /&gt;
      [R,T]=meshgrid(r,t);&lt;br /&gt;
      %Defino F:&lt;br /&gt;
      F=zeros(1,N-1)&lt;br /&gt;
      F(end)=F(end)+10/(h^2)+10/(2*5.9*h);        %(donde (b-h)=5.9)&lt;br /&gt;
      %Condición inicial:&lt;br /&gt;
      for i=1:length(rr)&lt;br /&gt;
            if rr(i)&amp;lt;2&lt;br /&gt;
            U(i)=100*(rr(i)-1);&lt;br /&gt;
            elseif rr(i)&amp;lt;5&lt;br /&gt;
            U(i)=100;&lt;br /&gt;
            else&lt;br /&gt;
            U(i)=90*(6-rr(i))+10;&lt;br /&gt;
            end&lt;br /&gt;
      end&lt;br /&gt;
      sol(1,:)=[0,U,10]; &lt;br /&gt;
&lt;br /&gt;
      %Método del trapecio:&lt;br /&gt;
      for m=1:length(t)-1&lt;br /&gt;
            Z=U'+(dt/2)*(-(K1+K2)*U'+F');&lt;br /&gt;
            W=eye(N-1)+(dt/2)*(K1+K2);&lt;br /&gt;
            W=W\Z;&lt;br /&gt;
            sol(m+1,:)=[0,W',10];&lt;br /&gt;
            U=W'&lt;br /&gt;
      end&lt;br /&gt;
      %dibujo&lt;br /&gt;
      surf(R,T,sol)&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
== Euler implícito ==&lt;br /&gt;
Como los datos son los mismos que los usados en el método de diferencias finitas, no vamos a volver a repetir los datos puesto que son los mismos y lo único que cambia es el método utilizado.&lt;br /&gt;
&lt;br /&gt;
        %Euler implícito:&lt;br /&gt;
          for m=1:length(t)-1 &lt;br /&gt;
                Z=U'+dt*(F');&lt;br /&gt;
                W=eye(N-1)+dt*(K1+K2);&lt;br /&gt;
                W=W\Z;&lt;br /&gt;
                sol(m+1,:)=[0,W',10]&lt;br /&gt;
                U=W';&lt;br /&gt;
          end&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Euler modificado ==&lt;br /&gt;
Ocurre lo mismo que en el apartado anterior, que los datos no varían y lo único que debe de ser modificado es el método&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
        %Euler modificado:&lt;br /&gt;
          for m=1:length(t)-1&lt;br /&gt;
               M1=-(K1+K2)*U'+F';&lt;br /&gt;
               M2=-(K1+K2)*(U'+M1*dt)+F';&lt;br /&gt;
               W=U'+(dt/2)*(M1+M2);&lt;br /&gt;
               sol(m+1,:)=[0,W',10];&lt;br /&gt;
               U=W':&lt;br /&gt;
          end&lt;br /&gt;
[[Categoría:Ecuaciones Diferenciales]]&lt;br /&gt;
[[Categoría:ED13/14]]&lt;br /&gt;
[[Categoría:Trabajos 2013-14]]&lt;/div&gt;</summary>
		<author><name>Toni Villa</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Ecuaci%C3%B3n_del_calor_en_una_placa_en_forma_de_anillo&amp;diff=12382</id>
		<title>Ecuación del calor en una placa en forma de anillo</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Ecuaci%C3%B3n_del_calor_en_una_placa_en_forma_de_anillo&amp;diff=12382"/>
				<updated>2014-05-18T19:55:52Z</updated>
		
		<summary type="html">&lt;p&gt;Toni Villa: /* Introducción */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{ TrabajoED | Ecuación del calor en una placa en forma de anillo. Grupo 6B | [[:Categoría:Ecuaciones Diferenciales|Ecuaciones Diferenciales]]|[[:Categoría:ED13/14|Curso 2013-14]] | Elisabet Sánchez López, Ana Santos Martín, Isabel Sastre Furones, Ángel Antonio Villa Figueroa }}&lt;br /&gt;
&lt;br /&gt;
{{ beta }}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Introducción ==&lt;br /&gt;
Tenemos una placa plana en forma de anillo. Vamos a trabajar en coordenadas polares en el plano y sabemos que la placa está comprendida entre los radios ρ=1 y ρ=6 y cuya temperatura inicial viene definida por la función u(ρ,0):&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\left\{\begin{matrix}100·(ρ-1)   con  ρ ∈ [1, 2] \\100     con  ρ ∈ [2, 5]\\90·(6-ρ)+10  con  ρ ∈ [5, 6]\end{matrix}\right.&amp;lt;/math&amp;gt;&lt;br /&gt;
                                                                           &lt;br /&gt;
Si colocamos en los extremos interior ρ=1 y exterior ρ=6 objetos a una temperatura constante de 0 y 10 grados respectivamente, es decir, las condiciones de frontera serán:            &lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\left\{\begin{matrix}u(1,t)=0 \\u(6,t)=10\end{matrix}\right.&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Suponiendo que la temperatura u de la placa únicamente depende de la coordenada radial y del tiempo, es decir, u=u(ρ,t) y sabiendo que satisface la ecuación del calor &amp;lt;math&amp;gt; u_t-\Delta u=0&amp;lt;/math&amp;gt; , vamos a plantear el sistema de ecuaciones que satisface u(ρ,t) en coordenadas polares:&lt;br /&gt;
&lt;br /&gt;
== Método de diferencias finitas ==&lt;br /&gt;
      %Método de diferencias finitas&lt;br /&gt;
      a=1;b=6;h=0.1; ya=0;yb=10;&lt;br /&gt;
      N=(b-a)/h; dt=h/4;&lt;br /&gt;
      r=[a:h:b]'; rr=[a+h:h:b-h]';&lt;br /&gt;
      %Defino K1:&lt;br /&gt;
      K1=diag(ones(1,N-1)*2)+diag(ones(1,N-2)*(-1),-1)+diag(ones(1,N-2)*(-1),1);&lt;br /&gt;
      K1=K1*(1/h^2);&lt;br /&gt;
      U=K\F;&lt;br /&gt;
      %DefinoK2:&lt;br /&gt;
      K2=diag(ones(N-2,1)*(-1),1)+diag(ones(N-2,1),-1);&lt;br /&gt;
      K2=(1/h^2)*K2;&lt;br /&gt;
      M=diag(1./rr);&lt;br /&gt;
      K2=M*K2;&lt;br /&gt;
      T0=0;TF=10;&lt;br /&gt;
      t=T0&lt;br /&gt;
      %Defino la malla:&lt;br /&gt;
      [R,T]=meshgrid(r,t);&lt;br /&gt;
      %Defino F:&lt;br /&gt;
      F=zeros(1,N-1)&lt;br /&gt;
      F(end)=F(end)+10/(h^2)+10/(2*5.9*h);        (donde (b-h)=5.9)&lt;br /&gt;
      %Condición inicial:&lt;br /&gt;
      for i=1:length(rr)&lt;br /&gt;
            if rr(i)&amp;lt;2&lt;br /&gt;
            U(i)=100*(rr(i)-1);&lt;br /&gt;
            elseif rr(i)&amp;lt;5&lt;br /&gt;
            U(i)=100;&lt;br /&gt;
            else&lt;br /&gt;
            U(i)=90*(6-rr(i))+10;&lt;br /&gt;
            end&lt;br /&gt;
      end&lt;br /&gt;
      sol(1,:)=[0,U,10]; &lt;br /&gt;
&lt;br /&gt;
      %Método del trapecio:&lt;br /&gt;
      for m=1:length(t)-1&lt;br /&gt;
            Z=U'+(dt/2)*(-(K1+K2)*U'+F');&lt;br /&gt;
            W=eye(N-1)+(dt/2)*(K1+K2);&lt;br /&gt;
            W=W\Z;&lt;br /&gt;
            sol(m+1,:)=[0,W',10];&lt;br /&gt;
            U=W'&lt;br /&gt;
      end&lt;br /&gt;
&lt;br /&gt;
== Euler implícito ==&lt;br /&gt;
Como los datos son los mismos que los usados en el método de diferencias finitas, no vamos a volver a repetir los datos puesto que son los mismos y lo único que cambia es el método utilizado.&lt;br /&gt;
&lt;br /&gt;
        %Euler implícito:&lt;br /&gt;
          for m=1:length(t)-1 &lt;br /&gt;
                Z=U'+dt*(F');&lt;br /&gt;
                W=eye(N-1)+dt*(K1+K2);&lt;br /&gt;
                W=W\Z;&lt;br /&gt;
                sol(m+1,:)=[0,W',10]&lt;br /&gt;
                U=W';&lt;br /&gt;
          end&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Euler modificado ==&lt;br /&gt;
Ocurre lo mismo que en el apartado anterior, que los datos no varían y lo único que debe de ser modificado es el método&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
        %Euler modificado:&lt;br /&gt;
          for m=1:length(t)-1&lt;br /&gt;
               M1=-(K1+K2)*U'+F';&lt;br /&gt;
               M2=-(K1+K2)*(U'+M1*dt)+F';&lt;br /&gt;
               W=U'+(dt/2)*(M1+M2);&lt;br /&gt;
               sol(m+1,:)=[0,W',10];&lt;br /&gt;
               U=W':&lt;br /&gt;
          end&lt;br /&gt;
[[Categoría:Ecuaciones Diferenciales]]&lt;br /&gt;
[[Categoría:ED13/14]]&lt;br /&gt;
[[Categoría:Trabajos 2013-14]]&lt;/div&gt;</summary>
		<author><name>Toni Villa</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Ecuaci%C3%B3n_del_calor_en_una_placa_en_forma_de_anillo&amp;diff=12291</id>
		<title>Ecuación del calor en una placa en forma de anillo</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Ecuaci%C3%B3n_del_calor_en_una_placa_en_forma_de_anillo&amp;diff=12291"/>
				<updated>2014-05-18T18:16:05Z</updated>
		
		<summary type="html">&lt;p&gt;Toni Villa: /* 2.Método de diferencias finitas */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{ TrabajoED | Ecuación del calor en una placa en forma de anillo. Grupo 6B | [[:Categoría:Ecuaciones Diferenciales|Ecuaciones Diferenciales]]|[[:Categoría:ED13/14|Curso 2013-14]] | Elisabet Sánchez López, Ana Santos Martín, Isabel Sastre Furones, Ángel Antonio Villa Figueroa }}&lt;br /&gt;
&lt;br /&gt;
{{ beta }}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Introducción ==&lt;br /&gt;
Sea una placa plana en forma de anillo comprendida entre los radios ρ=1 y ρ=6 y cuya temperatura inicial viene definida por la función&lt;br /&gt;
                                                                                100(ρ-1),           si ρ∈ (1,2),&lt;br /&gt;
        condición inicial:                            u(ρ,0)=       100,                  si ρ∈ (2,5),       &lt;br /&gt;
                                                                                90(6-ρ),             si ρ∈ (5,6),                                                                                     &lt;br /&gt;
&lt;br /&gt;
Si colocamos en los extremos interior ρ=1 y exterior ρ=6 objetos a una temperatura constante de 0 y 10 grados respectivamente, es decir,&lt;br /&gt;
&lt;br /&gt;
        condiciones de frontera:                 u(1,t)=0,  u(6,t)=10,&lt;br /&gt;
&lt;br /&gt;
Suponiendo que la temperatura u de la placa únicamente depende de la coordenada radial y del tiempo, es decir, u=u(ρ,θ) y sabiendo que satisface la ecuación del calor ut − ∆u = 0, vamos a plantear el sistema de ecuaciones que satisface u(ρ,θ) en coordenadas polares:&lt;br /&gt;
                                                      &lt;br /&gt;
== Método de diferencias finitas ==&lt;br /&gt;
      %Método de diferencias finitas&lt;br /&gt;
      a=1;b=6;h=0.1; ya=0;yb=10;&lt;br /&gt;
      N=(b-a)/h; dt=h/4;&lt;br /&gt;
      r=[a:h:b]'; rr=[a+h:h:b-h]';&lt;br /&gt;
      %Defino K1:&lt;br /&gt;
      K1=diag(ones(1,N-1)*2)+diag(ones(1,N-2)*(-1),-1)+diag(ones(1,N-2)*(-1),1);&lt;br /&gt;
      K1=K1*(1/h^2);&lt;br /&gt;
      U=K\F;&lt;br /&gt;
      %DefinoK2:&lt;br /&gt;
      K2=diag(ones(N-2,1)*(-1),1)+diag(ones(N-2,1),-1);&lt;br /&gt;
      K2=(1/h^2)*K2;&lt;br /&gt;
      M=diag(1./rr);&lt;br /&gt;
      K2=M*K2;&lt;br /&gt;
      T0=0;TF=10;&lt;br /&gt;
      t=T0&lt;br /&gt;
      %Defino la malla:&lt;br /&gt;
      [R,T]=meshgrid(r,t);&lt;br /&gt;
      %Defino F:&lt;br /&gt;
      F=zeros(1,N-1)&lt;br /&gt;
      F(end)=F(end)+10/(h^2)+10/(2*5.9*h);        (donde (b-h)=5.9)&lt;br /&gt;
      %Condición inicial:&lt;br /&gt;
      for i=1:length(rr)&lt;br /&gt;
            if rr(i)&amp;lt;2&lt;br /&gt;
            U(i)=100*(rr(i)-1);&lt;br /&gt;
            elseif rr(i)&amp;lt;5&lt;br /&gt;
            U(i)=100;&lt;br /&gt;
            else&lt;br /&gt;
            U(i)=90*(6-rr(i))+10;&lt;br /&gt;
            end&lt;br /&gt;
      end&lt;br /&gt;
      sol(1,:)=[0,U,10]; &lt;br /&gt;
&lt;br /&gt;
      %Método del trapecio:&lt;br /&gt;
      for m=1:length(t)-1&lt;br /&gt;
            Z=U'+(dt/2)*(-(K1+K2)*U'+F');&lt;br /&gt;
            W=eye(N-1)+(dt/2)*(K1+K2);&lt;br /&gt;
            W=W\Z;&lt;br /&gt;
            sol(m+1,:)=[0,W',10];&lt;br /&gt;
            U=W'&lt;br /&gt;
      end&lt;br /&gt;
&lt;br /&gt;
== Euler implícito ==&lt;br /&gt;
Como los datos son los mismos que los usados en el método de diferencias finitas, no vamos a volver a repetir los datos puesto que son los mismos y lo único que cambia es el método utilizado.&lt;br /&gt;
&lt;br /&gt;
        %Euler implícito:&lt;br /&gt;
          for m=1:length(t)-1 &lt;br /&gt;
                Z=U'+dt*(F');&lt;br /&gt;
                W=eye(N-1)+dt*(K1+K2);&lt;br /&gt;
                W=W\Z;&lt;br /&gt;
                sol(m+1,:)=[0,W',10]&lt;br /&gt;
                U=W';&lt;br /&gt;
          end&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Euler modificado ==&lt;br /&gt;
Ocurre lo mismo que en el apartado anterior, que los datos no varían y lo único que debe de ser modificado es el método&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
        %Euler modificado:&lt;br /&gt;
          for m=1:length(t)-1&lt;br /&gt;
               M1=-(K1+K2)*U'+F';&lt;br /&gt;
               M2=-(K1+K2)*(U'+M1*dt)+F';&lt;br /&gt;
               W=U'+(dt/2)*(M1+M2);&lt;br /&gt;
               sol(m+1,:)=[0,W',10];&lt;br /&gt;
               U=W':&lt;br /&gt;
          end&lt;br /&gt;
[[Categoría:Ecuaciones Diferenciales]]&lt;br /&gt;
[[Categoría:ED13/14]]&lt;br /&gt;
[[Categoría:Trabajos 2013-14]]&lt;/div&gt;</summary>
		<author><name>Toni Villa</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Ecuaci%C3%B3n_del_calor_en_una_placa_en_forma_de_anillo&amp;diff=12256</id>
		<title>Ecuación del calor en una placa en forma de anillo</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Ecuaci%C3%B3n_del_calor_en_una_placa_en_forma_de_anillo&amp;diff=12256"/>
				<updated>2014-05-18T17:31:32Z</updated>
		
		<summary type="html">&lt;p&gt;Toni Villa: /* Disco */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{ TrabajoED | Ecuación del calor en una placa en forma de anillo. Grupo 6B | [[:Categoría:Ecuaciones Diferenciales|Ecuaciones Diferenciales]]|[[:Categoría:ED13/14|Curso 2013-14]] | Elisabet Sánchez López, Ana Santos Martín, Isabel Sastre Furones, Ángel Antonio Villa Figueroa }}&lt;br /&gt;
&lt;br /&gt;
{{ beta }}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== 2.Método de diferencias finitas ==&lt;br /&gt;
      %Método de diferencias finitas&lt;br /&gt;
      a=1;b=6;h=0.1; ya=0;yb=10;&lt;br /&gt;
      N=(b-a)/h; dt=h/4;&lt;br /&gt;
      r=[a:h:b]'; rr=[a+h:h:b-h]';&lt;br /&gt;
      %Defino K1:&lt;br /&gt;
      K1=diag(ones(1,N-1)*2)+diag(ones(1,N-2)*(-1),-1)+diag(ones(1,N-2)*(-1),1);&lt;br /&gt;
      K1=K1*(1/h^2);&lt;br /&gt;
      U=K\F;&lt;br /&gt;
      %DefinoK2:&lt;br /&gt;
      K2=diag(ones(N-2,1)*(-1),1)+diag(ones(N-2,1),-1);&lt;br /&gt;
      K2=(1/h^2)*K2;&lt;br /&gt;
      M=diag(1./rr);&lt;br /&gt;
      K2=M*K2;&lt;br /&gt;
      T0=0;TF=10;&lt;br /&gt;
      t=T0&lt;br /&gt;
      %Defino la malla:&lt;br /&gt;
      [R,T]=meshgrid(r,t);&lt;br /&gt;
      %Defino F:&lt;br /&gt;
      F=zeros(1,N-1)&lt;br /&gt;
      F(end)=F(end)+10/(h^2)+10/(2*5.9*h);        (donde (b-h)=5.9)&lt;br /&gt;
      %Condición inicial:&lt;br /&gt;
      for i=1:length(rr)&lt;br /&gt;
            if rr(i)&amp;lt;2&lt;br /&gt;
            U(i)=100*(rr(i)-1);&lt;br /&gt;
            elseif rr(i)&amp;lt;5&lt;br /&gt;
            U(i)=100;&lt;br /&gt;
            else&lt;br /&gt;
            U(i)=90*(6-rr(i))+10;&lt;br /&gt;
            end&lt;br /&gt;
      end&lt;br /&gt;
      sol(1,:)=[0,U,10]; &lt;br /&gt;
&lt;br /&gt;
      %Método del trapecio:&lt;br /&gt;
      for m=1:length(t)-1&lt;br /&gt;
            Z=U'+(dt/2)*(-(K1+K2)*U'+F');&lt;br /&gt;
            W=eye(N-1)+(dt/2)*(K1+K2);&lt;br /&gt;
            W=W\Z;&lt;br /&gt;
            sol(m+1,:)=[0,W',10];&lt;br /&gt;
            U=W'&lt;br /&gt;
      end&lt;br /&gt;
&lt;br /&gt;
== Euler implícito ==&lt;br /&gt;
Como los datos son los mismos que los usados en el método de diferencias finitas, no vamos a volver a repetir los datos puesto que son los mismos y lo único que cambia es el método utilizado.&lt;br /&gt;
&lt;br /&gt;
        %Euler implícito:&lt;br /&gt;
          for m=1:length(t)-1 &lt;br /&gt;
                Z=U'+dt*(F');&lt;br /&gt;
                W=eye(N-1)+dt*(K1+K2);&lt;br /&gt;
                W=W\Z;&lt;br /&gt;
                sol(m+1,:)=[0,W',10]&lt;br /&gt;
                U=W';&lt;br /&gt;
          end&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Euler modificado ==&lt;br /&gt;
Ocurre lo mismo que en el apartado anterior, que los datos no varían y lo único que debe de ser modificado es el método&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
        %Euler modificado:&lt;br /&gt;
          for m=1:length(t)-1&lt;br /&gt;
               M1=-(K1+K2)*U'+F';&lt;br /&gt;
               M2=-(K1+K2)*(U'+M1*dt)+F';&lt;br /&gt;
               W=U'+(dt/2)*(M1+M2);&lt;br /&gt;
               sol(m+1,:)=[0,W',10];&lt;br /&gt;
               U=W':&lt;br /&gt;
          end&lt;br /&gt;
[[Categoría:Ecuaciones Diferenciales]]&lt;br /&gt;
[[Categoría:ED13/14]]&lt;br /&gt;
[[Categoría:Trabajos 2013-14]]&lt;/div&gt;</summary>
		<author><name>Toni Villa</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Ecuaci%C3%B3n_del_calor_en_una_placa_en_forma_de_anillo&amp;diff=12234</id>
		<title>Ecuación del calor en una placa en forma de anillo</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Ecuaci%C3%B3n_del_calor_en_una_placa_en_forma_de_anillo&amp;diff=12234"/>
				<updated>2014-05-18T17:12:31Z</updated>
		
		<summary type="html">&lt;p&gt;Toni Villa: /* 2.Método de diferencias finitas */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{ TrabajoED | Ecuación del calor en una placa en forma de anillo. Grupo 6B | [[:Categoría:Ecuaciones Diferenciales|Ecuaciones Diferenciales]]|[[:Categoría:ED13/14|Curso 2013-14]] | Elisabet Sánchez López, Ana Santos Martín, Isabel Sastre Furones, Ángel Antonio Villa Figueroa }}&lt;br /&gt;
&lt;br /&gt;
{{ beta }}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== 2.Método de diferencias finitas ==&lt;br /&gt;
      %Método de diferencias finitas&lt;br /&gt;
      a=1;b=6;h=0.1; ya=0;yb=10;&lt;br /&gt;
      N=(b-a)/h; dt=h/4;&lt;br /&gt;
      r=[a:h:b]'; rr=[a+h:h:b-h]';&lt;br /&gt;
      %Defino K1:&lt;br /&gt;
      K1=diag(ones(1,N-1)*2)+diag(ones(1,N-2)*(-1),-1)+diag(ones(1,N-2)*(-1),1);&lt;br /&gt;
      K1=K1*(1/h^2);&lt;br /&gt;
      U=K\F;&lt;br /&gt;
      %DefinoK2:&lt;br /&gt;
      K2=diag(ones(N-2,1)*(-1),1)+diag(ones(N-2,1),-1);&lt;br /&gt;
      K2=(1/h^2)*K2;&lt;br /&gt;
      M=diag(1./rr);&lt;br /&gt;
      K2=M*K2;&lt;br /&gt;
      T0=0;TF=10;&lt;br /&gt;
      t=T0&lt;br /&gt;
      %Defino la malla:&lt;br /&gt;
      [R,T]=meshgrid(r,t);&lt;br /&gt;
      %Defino F:&lt;br /&gt;
      F=zeros(1,N-1)&lt;br /&gt;
      F(end)=F(end)+10/(h^2)+10/(2*5.9*h);        (donde (b-h)=5.9)&lt;br /&gt;
      %Condición inicial:&lt;br /&gt;
      for i=1:length(rr)&lt;br /&gt;
            if rr(i)&amp;lt;2&lt;br /&gt;
            U(i)=100*(rr(i)-1);&lt;br /&gt;
            elseif rr(i)&amp;lt;5&lt;br /&gt;
            U(i)=100;&lt;br /&gt;
            else&lt;br /&gt;
            U(i)=90*(6-rr(i))+10;&lt;br /&gt;
            end&lt;br /&gt;
      end&lt;br /&gt;
      sol(1,:)=[0,U,10]; &lt;br /&gt;
&lt;br /&gt;
      %Método del trapecio:&lt;br /&gt;
      for m=1:length(t)-1&lt;br /&gt;
            Z=U'+(dt/2)*(-(K1+K2)*U'+F');&lt;br /&gt;
            W=eye(N-1)+(dt/2)*(K1+K2);&lt;br /&gt;
            W=W\Z;&lt;br /&gt;
            sol(m+1,:)=[0,W',10];&lt;br /&gt;
            U=W'&lt;br /&gt;
      end&lt;br /&gt;
&lt;br /&gt;
== Disco ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Categoría:Ecuaciones Diferenciales]]&lt;br /&gt;
[[Categoría:ED13/14]]&lt;br /&gt;
[[Categoría:Trabajos 2013-14]]&lt;/div&gt;</summary>
		<author><name>Toni Villa</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Ecuaci%C3%B3n_del_calor_en_una_placa_en_forma_de_anillo&amp;diff=12227</id>
		<title>Ecuación del calor en una placa en forma de anillo</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Ecuaci%C3%B3n_del_calor_en_una_placa_en_forma_de_anillo&amp;diff=12227"/>
				<updated>2014-05-18T17:06:37Z</updated>
		
		<summary type="html">&lt;p&gt;Toni Villa: /* Anillo circular */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{ TrabajoED | Ecuación del calor en una placa en forma de anillo. Grupo 6B | [[:Categoría:Ecuaciones Diferenciales|Ecuaciones Diferenciales]]|[[:Categoría:ED13/14|Curso 2013-14]] | Elisabet Sánchez López, Ana Santos Martín, Isabel Sastre Furones, Ángel Antonio Villa Figueroa }}&lt;br /&gt;
&lt;br /&gt;
{{ beta }}&lt;br /&gt;
&lt;br /&gt;
== 2.Método de diferencias finitas ==&lt;br /&gt;
%Método de diferencias finitas&lt;br /&gt;
a=1;b=6;h=0.1; ya=0;yb=10;&lt;br /&gt;
N=(b-a)/h; dt=h/4;&lt;br /&gt;
r=[a:h:b]'; rr=[a+h:h:b-h]';&lt;br /&gt;
%Defino K1:&lt;br /&gt;
K1=diag(ones(1,N-1)*2)+diag(ones(1,N-2)*(-1),-1)+diag(ones(1,N-2)*(-1),1);&lt;br /&gt;
K1=K1*(1/h^2);&lt;br /&gt;
U=K\F;&lt;br /&gt;
%DefinoK2:&lt;br /&gt;
K2=diag(ones(N-2,1)*(-1),1)+diag(ones(N-2,1),-1);&lt;br /&gt;
K2=(1/h^2)*K2;&lt;br /&gt;
M=diag(1./rr);&lt;br /&gt;
K2=M*K2;&lt;br /&gt;
T0=0;TF=10;&lt;br /&gt;
t=T0&lt;br /&gt;
%Defino la malla:&lt;br /&gt;
[R,T]=meshgrid(r,t);&lt;br /&gt;
%Defino F:&lt;br /&gt;
F=zeros(1,N-1)&lt;br /&gt;
F(end)=F(end)+10/(h^2)+10/(2*5.9*h);        (donde (b-h)=5.9)&lt;br /&gt;
%Condición inicial:&lt;br /&gt;
for i=1:length(rr)&lt;br /&gt;
     if rr(i)&amp;lt;2&lt;br /&gt;
     U(i)=100*(rr(i)-1);&lt;br /&gt;
     elseif rr(i)&amp;lt;5&lt;br /&gt;
     U(i)=100;&lt;br /&gt;
     else&lt;br /&gt;
     U(i)=90*(6-rr(i))+10;&lt;br /&gt;
     end&lt;br /&gt;
end&lt;br /&gt;
sol(1,:)=[0,U,10]; &lt;br /&gt;
&lt;br /&gt;
%Método del trapecio:&lt;br /&gt;
for m=1:length(t)-1&lt;br /&gt;
     Z=U'+(dt/2)*(-(K1+K2)*U'+F');&lt;br /&gt;
     W=eye(N-1)+(dt/2)*(K1+K2);&lt;br /&gt;
     W=W\Z;&lt;br /&gt;
     sol(m+1,:)=[0,W',10];&lt;br /&gt;
     U=W'&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
== Disco ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Categoría:Ecuaciones Diferenciales]]&lt;br /&gt;
[[Categoría:ED13/14]]&lt;br /&gt;
[[Categoría:Trabajos 2013-14]]&lt;/div&gt;</summary>
		<author><name>Toni Villa</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Modelo_predador-presa_de_A._Lotka_y_V._Volterra&amp;diff=9656</id>
		<title>Modelo predador-presa de A. Lotka y V. Volterra</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Modelo_predador-presa_de_A._Lotka_y_V._Volterra&amp;diff=9656"/>
				<updated>2014-03-04T10:21:37Z</updated>
		
		<summary type="html">&lt;p&gt;Toni Villa: /* Interpretación de resultados */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{ Beta }}&lt;br /&gt;
&lt;br /&gt;
{{ TrabajoED | Modelo predador-presa. Grupo 6B | [[:Categoría:Ecuaciones Diferenciales|Ecuaciones Diferenciales]]|[[:Categoría:ED13/14|Curso 2013-14]] | Paula De Santos Muñoz, María del Mar García Reinaldos, Elisabet Sánchez López, Ana Santos Martín, Isabel Sastre Furones, Ángel Antonio Villa Figueroa }}&lt;br /&gt;
El modelo predador-presa fue propuesto de forma independiente a comienzos del siglo pasado por A. Lotka y V. Volterra. Es un modelo mátematico para la dinámica de poblaciones de especies competidoras (predadores y presas), que consiste en un sistema de ecuaciones diferenciales de primer orden no lineales correspondientes al cambio de las poblaciones de presa y predador por unidad de tiempo.&lt;br /&gt;
== Interpretación del problema de valor inicial ==&lt;br /&gt;
&lt;br /&gt;
El problema planteado trabaja la existencia de dos especies de presas distintas que comparten una población de depredadores. Llamaremos:&lt;br /&gt;
* x&amp;lt;sub&amp;gt;1&amp;lt;/sub&amp;gt;: especie presa 1&lt;br /&gt;
* x&amp;lt;sub&amp;gt;2&amp;lt;/sub&amp;gt;: especie presa 2&lt;br /&gt;
* x&amp;lt;sub&amp;gt;3&amp;lt;/sub&amp;gt;: población depredadora&lt;br /&gt;
&lt;br /&gt;
Nuestro trabajo se basa en un estudio del crecimiento de las presas y del depredador en el tiempo, observando las interacciones entre ellas y teniendo en cuenta que:&lt;br /&gt;
# En condiciones iniciales, x&amp;lt;sub&amp;gt;1&amp;lt;/sub&amp;gt; cuenta con una población de p&amp;lt;sub&amp;gt;0&amp;lt;/sub&amp;gt;, x&amp;lt;sub&amp;gt;2&amp;lt;/sub&amp;gt; con una población de q&amp;lt;sub&amp;gt;0&amp;lt;/sub&amp;gt; y finalmente x&amp;lt;sub&amp;gt;3&amp;lt;/sub&amp;gt; con una población d&amp;lt;sub&amp;gt;0&amp;lt;/sub&amp;gt;.&lt;br /&gt;
# Las poblaciones evolucionan interactuando entre ellas, sin tener en cuenta agentes externos.&lt;br /&gt;
# Las presas cuenta con una cantidad suficiente de comida para ser alimentada. &lt;br /&gt;
# La alimentación de los depredadores depende completamente de la presa.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Con estos datos podemos definir las ecuaciones de nuestro sistema. La primera ecuación nos define la evolución de la presa en el tiempo cuando está interactuando con la especie depredadora donde: &lt;br /&gt;
* A&amp;lt;sub&amp;gt;1&amp;lt;/sub&amp;gt;x&amp;lt;sub&amp;gt;1&amp;lt;/sub&amp;gt; es la tasa de natalidad de la presa 1, siguiendo una ley exponencial.&lt;br /&gt;
* A&amp;lt;sub&amp;gt;2&amp;lt;/sub&amp;gt;x&amp;lt;sub&amp;gt;1&amp;lt;/sub&amp;gt;x&amp;lt;sub&amp;gt;3&amp;lt;/sub&amp;gt;  es la tasa de mortalidad de la presa 1 afectada por los depredadores.&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;\frac{\mathrm{d} x_1}{\mathrm{d} t}=A_1x_1-A_2x_1x_3\\&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
De forma análoga a la primera ecuación, podemos definir la segunda.&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;\frac{\mathrm{d} x_2}{\mathrm{d} t}=B_1x_2-B_2x_2x_3\\&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
En la tercera ecuación definimos la evolución de x&amp;lt;sub&amp;gt;3&amp;lt;/sub&amp;gt;, definiendo la constante C&amp;lt;sub&amp;gt;1&amp;lt;/sub&amp;gt; multiplicada por (-1), lo que nos hace ver &lt;br /&gt;
la extinción de los depredadores ante la inexistencia de presas y el crecimiento de los mismos gracias a la alimentación aportada por las presas.&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;\frac{\mathrm{d}x_3}{\mathrm{d} t}=-C_1x_3+C_2x_1x_3+C_3x_2x_3\\&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Con estás tres ecuaciones queda definido el sistema de ecuaciones de Lotka y Volterra a resolver como un problema de valor inicial.&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt; &lt;br /&gt;
\left\{\begin{matrix}\frac{\mathrm{d} x_1}{\mathrm{d} t}=A_1x_1-A_2x_1x_3\\\frac{\mathrm{d}x_2}{\mathrm{d} t}=B_1x_2-B_2x_2x_3\\\frac{\mathrm{d}x_3}{\mathrm{d} t}=-C_1x_3+C_2x_1x_3+C_3x_2x_3\\ x_1(0)=p_{0},x_2(0)=q_{0},x_3(0)=d_{0}\end{matrix}\right.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Resolución por el método de Euler ==&lt;br /&gt;
=== Programación del método numérico ===&lt;br /&gt;
El programa utilizado para resolver el problema de valor inicial mediante el método de Euler en un intervalo de tiempo '''tє[0,300]''', para una longitud de paso '''h=0.1''', constantes '''A&amp;lt;sub&amp;gt;1&amp;lt;/sub&amp;gt;=0.35''', '''A&amp;lt;sub&amp;gt;2&amp;lt;/sub&amp;gt;=0.6''', '''B&amp;lt;sub&amp;gt;1&amp;lt;/sub&amp;gt;=0.3''', '''B&amp;lt;sub&amp;gt;2&amp;lt;/sub&amp;gt;=0.5''', '''C&amp;lt;sub&amp;gt;1&amp;lt;/sub&amp;gt;=0.37''', '''C&amp;lt;sub&amp;gt;2&amp;lt;/sub&amp;gt;=0.04''' y '''C&amp;lt;sub&amp;gt;3&amp;lt;/sub&amp;gt;=0.035''', y valores iniciales de '''p&amp;lt;sub&amp;gt;0&amp;lt;/sub&amp;gt;=0.8''' millones de presas de un tipo, '''q&amp;lt;sub&amp;gt;0&amp;lt;/sub&amp;gt;=2.4''' millones de presas de otro tipo y '''d&amp;lt;sub&amp;gt;0&amp;lt;/sub&amp;gt;=0.2''' millones de predadores es el siguiente:&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
%Datos del problema&lt;br /&gt;
t0=0;&lt;br /&gt;
tf=300;&lt;br /&gt;
A1=0.35; A2=0.6;&lt;br /&gt;
B1=0.3; B2=0.5;&lt;br /&gt;
C1=0.37; C2=0.04; C3=0.035;&lt;br /&gt;
%Datos de la discretización&lt;br /&gt;
h=0.1;&lt;br /&gt;
N=(tf-t0)/h;&lt;br /&gt;
%Condiciones iniciales&lt;br /&gt;
p0=0.8;&lt;br /&gt;
q0=2.4;&lt;br /&gt;
d0=0.2;&lt;br /&gt;
y0=[p0 q0 d0]';&lt;br /&gt;
%Matrices de coeficientes del sistema&lt;br /&gt;
A=[A1 0 0;0 B1 0;0 0 -C1];&lt;br /&gt;
B=[-A2 0 C2]';&lt;br /&gt;
C=[0 -B2 C3]';&lt;br /&gt;
%Vector de tiempos y matriz de soluciones aproximadas&lt;br /&gt;
t=t0:h:tf;&lt;br /&gt;
y=zeros(3,N+1);&lt;br /&gt;
%Inicialización&lt;br /&gt;
y(:,1)=y0;&lt;br /&gt;
yy=y0;&lt;br /&gt;
for n=1:N&lt;br /&gt;
    yy=yy+h*(A*yy+B*yy(1)*yy(3)+C*yy(2)*yy(3));&lt;br /&gt;
    y(:,n+1)=yy;&lt;br /&gt;
end&lt;br /&gt;
figure(1)&lt;br /&gt;
plot(t,y)&lt;br /&gt;
title('Evolución de las poblaciones de presas (azul y verde) y predador (rojo) en función del tiempo')&lt;br /&gt;
xlabel('Tiempo t (años)')&lt;br /&gt;
ylabel('Millones de ejemplares')&lt;br /&gt;
axis tight&lt;br /&gt;
figure(2)&lt;br /&gt;
subplot(1,2,1)&lt;br /&gt;
plot(y(1,:),y(3,:))&lt;br /&gt;
title('Población del primer tipo de presa en  función de la de predadores')&lt;br /&gt;
xlabel('Presas tipo 1 (millones de ejemplares)')&lt;br /&gt;
ylabel('Predadores (millones de ejemplares)')&lt;br /&gt;
axis tight&lt;br /&gt;
subplot(1,2,2)&lt;br /&gt;
plot(y(2,:),y(3,:))&lt;br /&gt;
title('Población del segundo tipo de presa en función de la de predadores')&lt;br /&gt;
xlabel('Presas tipo 2 (millones de ejemplares)')&lt;br /&gt;
ylabel('Predadores (millones de ejemplares)')&lt;br /&gt;
axis tight&lt;br /&gt;
}}&lt;br /&gt;
=== Gráficas ===&lt;br /&gt;
==== Considerando la evolución de las especies en el tiempo ====&lt;br /&gt;
De la aplicación del método numérico se obtienen las siguientes gráficas, de las que sacaremos conclusiones posteriormente.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:GraphEuler.jpg|centro]]&lt;br /&gt;
&lt;br /&gt;
En esta primera gráfica, obtenida como resultado de utilizar como longitud de paso '''h=0.1''', se muestran las tres funciones equivalentes a la evolución en el tiempo de los dos tipos de presas y del predador. Cada curva presenta unos máximos periódicos desplazados los unos respecto de los otros, lo cual se debe al desfase con el que evolucionan las distintas especies: primero aumentan las poblaciones de ambas presas (creciendo más aquella de la que inicialmente hay más ejemplares) y después comienza a aumentar la población de la especie predadora, pues puede alimentarse fácilmente. Ésta última alcanzará su primer máximo cuando las presas disminuyen, tras lo cual disminuye también el número de predadores al escasear el alimento. Este proceso se dará periódicamente a lo largo de los 300 años. Es notable la diferencia en la evolución de ambos tipos de presas: mientras que uno tiende a aumentar, el otro disminuye.&lt;br /&gt;
&lt;br /&gt;
Si ahora utilizamos como longitud de paso '''h=1''', obtenemos esta segunda gráfica de la cual podemos concluir que, debido precisamente al aumento de ''h'', el método de Euler pierde su validez.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:GraphEuler1.jpg|centro]]&lt;br /&gt;
&lt;br /&gt;
==== Considerando la interacción entre especies ====&lt;br /&gt;
Dado que hemos comprobado anteriormente que el método de Euler con longitud de paso h=1 no es efectivo, evaluaremos la interacción entre especies utilizando '''h=0.1''' como longitud de paso. Las gráficas resultantes son las siguientes:&lt;br /&gt;
&lt;br /&gt;
[[Archivo:GraphEuler4.jpg|centro]]&lt;br /&gt;
&lt;br /&gt;
=== Interpretación de resultados ===&lt;br /&gt;
Al aumentar la longitud paso de '''h=0.1''' a '''h=1''', lo que observamos es una gran pérdida de precisión en los resultados, ya que el valor de la aproximación calculada por el método de Euler se aleja demasiado de la solución exacta del problema de valor inicial.&lt;br /&gt;
Esto se debe a que este método numérico se basa en aproximaciones mediante la tangente a una determinada función. En nuestro caso, las diferencias entre los máximos y mínimos de las funciones que describen la evolución de las especies son considerables (son funciones oscilatorias) y se producen en intervalos de tiempo ''cortos'', por lo que, al utilizar una longitud de paso ''grande'' (como puede ser ''h=1''), la inexactitud de la aproximación calculada resulta inaceptable. Por el contrario, si disminuimos la longitud de paso, el valor de la aproximación se considera válido. Esto se explica porque el método de Euler alcanza mayor nivel de convergencia cuanto menor es el valor de ''h''; sin embargo, hay que tener en cuenta que, si disminuimos mucho este valor, el programa puede llegar a fallar.&lt;br /&gt;
&lt;br /&gt;
== Resolución por el método de Euler modificado ==&lt;br /&gt;
=== Programación del método numérico ===&lt;br /&gt;
A continuación, se resuelve el problema de valor inicial mediante el método de Euler modificado. Como datos tenemos una longitud de paso '''h=0.1''', constantes '''A&amp;lt;sub&amp;gt;1&amp;lt;/sub&amp;gt;=0.35''', '''A&amp;lt;sub&amp;gt;2&amp;lt;/sub&amp;gt;=0.6''', '''B&amp;lt;sub&amp;gt;1&amp;lt;/sub&amp;gt;=0.3''', '''B&amp;lt;sub&amp;gt;2&amp;lt;/sub&amp;gt;=0.5''', '''C&amp;lt;sub&amp;gt;1&amp;lt;/sub&amp;gt;=0.37''', '''C&amp;lt;sub&amp;gt;2&amp;lt;/sub&amp;gt;=0.04''' y '''C&amp;lt;sub&amp;gt;3&amp;lt;/sub&amp;gt;=0.035''', y valores iniciales de '''p&amp;lt;sub&amp;gt;0&amp;lt;/sub&amp;gt;=2''' millones de presas de un tipo, '''q&amp;lt;sub&amp;gt;0&amp;lt;/sub&amp;gt;=1.4''' millones de presas de otro tipo y '''d&amp;lt;sub&amp;gt;0&amp;lt;/sub&amp;gt;=1''' millones de predadores. Primero tomaremos un intervalo de tiempo '''tє[0,100]'''. El programa se describe a continuación:&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
%Datos del problema&lt;br /&gt;
t0=0;&lt;br /&gt;
tf=100;&lt;br /&gt;
A1=0.35; A2=0.6;&lt;br /&gt;
B1=0.3; B2=0.5;&lt;br /&gt;
C1=0.37; C2=0.04; C3=0.035;&lt;br /&gt;
%Datos de la discretización&lt;br /&gt;
h=0.1;&lt;br /&gt;
N=(tf-t0)/h;&lt;br /&gt;
%Condiciones iniciales&lt;br /&gt;
p0=2;&lt;br /&gt;
q0=1.4;&lt;br /&gt;
d0=1;&lt;br /&gt;
y0=[p0 q0 d0]';&lt;br /&gt;
%Matrices de coeficientes del sistema&lt;br /&gt;
A=[A1 0 0;0 B1 0;0 0 -C1];&lt;br /&gt;
B=[-A2 0 C2]';&lt;br /&gt;
C=[0 -B2 C3]';&lt;br /&gt;
%Vector de tiempos&lt;br /&gt;
t=t0:h:tf;&lt;br /&gt;
%Inicialización&lt;br /&gt;
y=y0;&lt;br /&gt;
for n=1:N&lt;br /&gt;
    k1=(A*y+y(1)*y(3)*B+y(2)*y(3)*C);&lt;br /&gt;
    k2=(A*(y+h*k1)+(y(1)+h*k1(1))*(y(3)+h*k1(3))*B+(y(2)+h*k1(2))*(y(3)+h*k1(3))*C);&lt;br /&gt;
    y=y+h*(k1+k2)/2;&lt;br /&gt;
    y1(n+1)=y(1);&lt;br /&gt;
    y2(n+1)=y(2);&lt;br /&gt;
    y3(n+1)=y(3);&lt;br /&gt;
end&lt;br /&gt;
%Gráfica poblaciones-tiempo&lt;br /&gt;
figure(1)&lt;br /&gt;
hold on&lt;br /&gt;
plot(t,y1,'b')&lt;br /&gt;
plot(t,y2,'g')&lt;br /&gt;
plot(t,y3,'r')&lt;br /&gt;
title('Evolución de las poblaciones de presas (azul y verde) y predador (rojo) en función del tiempo')&lt;br /&gt;
xlabel('Tiempo t (años)')&lt;br /&gt;
ylabel('Millones de ejemplares')&lt;br /&gt;
axis tight&lt;br /&gt;
hold off&lt;br /&gt;
%Gráficas presa-predador&lt;br /&gt;
figure(2)&lt;br /&gt;
subplot(1,2,1)&lt;br /&gt;
plot(y1,y3,'b')&lt;br /&gt;
title('Población del primer tipo de presa en  función de la de predadores')&lt;br /&gt;
xlabel('Presas tipo 1 (millones de ejemplares)')&lt;br /&gt;
ylabel('Predadores (millones de ejemplares)')&lt;br /&gt;
axis tight&lt;br /&gt;
subplot(1,2,2)&lt;br /&gt;
plot(y2,y3,'r')&lt;br /&gt;
title('Población del segundo tipo de presa en función de la de predadores')&lt;br /&gt;
xlabel('Presas tipo 2 (millones de ejemplares)')&lt;br /&gt;
ylabel('Predadores (millones de ejemplares)')&lt;br /&gt;
axis tight&lt;br /&gt;
}}&lt;br /&gt;
Hacemos lo mismo para el segundo intervalo de tiempo '''tє[0,300]'''. El único cambio que sufre el programa es '''tf=300'''.&lt;br /&gt;
&lt;br /&gt;
=== Gráficas ===&lt;br /&gt;
==== Considerando la evolución de las especies en el tiempo ====&lt;br /&gt;
De la aplicación del método numérico para un tiempo '''tє[0,100]''', tenemos la siguiente gráfica:&lt;br /&gt;
&lt;br /&gt;
[[Archivo:GraphMEuler1.jpg|centro]]&lt;br /&gt;
&lt;br /&gt;
De ella podemos concluir que, durante los primeros 100 años, la evolución de ambos tipos de presas sigue direcciones opuestas: mientras la curva que describe la evolución de la presa de la que hay más ejemplares inicialmente tiende a que sus máximos sean cada vez más pequeños, los máximos de la otra son cada vez mayores. Se observa que, al finalizar el período, el número de ejemplares de ambas presas es similar. Por otro lado, la evolución de la cantidad de predadores en el tiempo es similar a la obtenida al aplicar el método de Euler, aumentando el número de ejemplares tras producirse un pico en las cantidades de presas. Cabe destacar, sin embargo, que con el método de Euler modificado obtenemos gráficas más suaves, lo cual permite aumentar un poco la longitud de paso ''h'' sin acumular demasiado error.&lt;br /&gt;
&lt;br /&gt;
Si ahora aumentamos nuestro intervalo de tiempo hasta '''tє[0,300]''', podemos comprobar en la gráfica siguiente que la evolución del número de presas sigue la tendencia indicada durante los primeros 100 años: la especie predadora mantiene su evolución oscilatoria con máximos constantes, las presas cuyos máximos disminuían progresivamente casi se han extinguido transcurridos los 300 años y las otras alcanzan sus cifras máximas al final del período. Esto se debe a que los predadores se centran en un determinado tipo de presa, con lo cual la otra se encuentra menos amenazada. &lt;br /&gt;
&lt;br /&gt;
[[Archivo:GraphMEuler2.jpg|centro]]&lt;br /&gt;
&lt;br /&gt;
==== Considerando la interacción entre especies ====&lt;br /&gt;
Para evaluar la interacción entre especies tendremos en cuenta las gráficas obtenidas para un tiempo '''tє[0,300]''', ya que se observa mejor la variación de las poblaciones de presas respecto de la de predadores.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:GraphMEuler5.jpg|centro]]&lt;br /&gt;
&lt;br /&gt;
Estas gráficas nos permiten concluir que los puntos en los que el ecosistema sería estable son los orígenes (0,0), los cuales despreciamos (pues si lo interpretamos en términos de poblaciones, no hay especies interactuando), y los puntos donde se encuentran los centros de las espirales. Como podemos comprobar, ninguna de las dos curvas converge al mismo centro, así que no podemos asegurar que los ecosistemas sean estables.&lt;br /&gt;
&lt;br /&gt;
== Resolución por el método trapezoidal ==&lt;br /&gt;
El método trapezoidal es un método implícito que, en nuestro caso, requiere la resolución de una ecuación no lineal. Al no ser posible su resolución, se descarta el método y no se tendrá en cuenta a la hora de comparar resultados.&lt;br /&gt;
&lt;br /&gt;
== Resolución por el método de Runge-Kutta ==&lt;br /&gt;
=== Programación del método numérico ===&lt;br /&gt;
A continuación, se resuelve el problema de valor inicial mediante el método de Runge- Kutta de cuarto orden. Como datos tenemos una longitud de paso '''h=0.1''', constantes '''A&amp;lt;sub&amp;gt;1&amp;lt;/sub&amp;gt;=0.4''', '''A&amp;lt;sub&amp;gt;2&amp;lt;/sub&amp;gt;=0.7''', '''B&amp;lt;sub&amp;gt;1&amp;lt;/sub&amp;gt;=0.2''', '''B&amp;lt;sub&amp;gt;2&amp;lt;/sub&amp;gt;=0.4''', '''C&amp;lt;sub&amp;gt;1&amp;lt;/sub&amp;gt;=0.37''', '''C&amp;lt;sub&amp;gt;2&amp;lt;/sub&amp;gt;=0.04''' y '''C&amp;lt;sub&amp;gt;3&amp;lt;/sub&amp;gt;=0.03''', y valores iniciales de '''p&amp;lt;sub&amp;gt;0&amp;lt;/sub&amp;gt;=3.5''' millones de presas de un tipo, '''q&amp;lt;sub&amp;gt;0&amp;lt;/sub&amp;gt;=0.2''' millones de presas de otro tipo y '''d&amp;lt;sub&amp;gt;0&amp;lt;/sub&amp;gt;=0.4''' millones de predadores. En este caso tomaremos un intervalo de tiempo '''tє[0,500]'''. El programa de obtención del método numérico se especifica a continuación:&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
t0=0; tN=500; %Extremos del intervalo&lt;br /&gt;
y0=[3.5;0.2;0.4]; %Valores de población iniciales&lt;br /&gt;
y=y0;&lt;br /&gt;
P1(1)=y(1); %Valor inicial de P1=presas tipo I&lt;br /&gt;
P2(1)=y(1); %Valor inicial de P2=presas tipo II&lt;br /&gt;
D(1)=y(1); %Valor inicial de D=depredadores&lt;br /&gt;
h=0.1; %Amplitud de los subintervalos&lt;br /&gt;
N=(tN-t0)/h; %Número de subintervalos&lt;br /&gt;
A=[ 0.4 0 0;0 0.2 0;0 0 -0.37]; %Parámetros&lt;br /&gt;
%Algoritmo&lt;br /&gt;
for k=1:N&lt;br /&gt;
  k1=(A*y+y(1)*y(3)*[-0.7;0;0.04]+y(2)*y(3)*[0;-0.4;0.03]);&lt;br /&gt;
  k2=(A*(y+(h/2)*k1)+(y(1)+(h/2)*k1(1))*(y(3)+(h/2)*k1(3))*[-0.7;0;0.04]+...&lt;br /&gt;
  (y(2)+(h/2)*k1(2))*(y(3)+(h/2)*k1(3))*[0;-0.4;0.03]);&lt;br /&gt;
  k3=(A*(y+(h/2)*k2)+(y(1)+(h/2)*k2(1))*(y(3)+(h/2)*k2(3))*[-0.7;0;0.04]+...&lt;br /&gt;
  (y(2)+(h/2)*k2(2))*(y(3)+(h/2)*k2(3))*[0;-0.4;0.03]);&lt;br /&gt;
  k4=(A*(y+h*k3)+(y(1)+h*k3(1))*(y(3)+h*k3(3))*[-0.7;0;0.04]+...&lt;br /&gt;
  (y(2)+h*k3(2))*(y(3)+h*k3(3))*[0;-0.4;0.03]);&lt;br /&gt;
  y=y+h/6*(k1+2*k2+2*k3+k4);&lt;br /&gt;
  P1(k+1)=y(1);&lt;br /&gt;
  P2(k+1)=y(2);&lt;br /&gt;
  D(k+1)=y(3);&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
t=t0:h:tN;&lt;br /&gt;
&lt;br /&gt;
%CÁLCULO DE INSTANTES MÁXIMOS Y MÍNIMOS&lt;br /&gt;
&lt;br /&gt;
[maximopresaI,x1]= max(P1)&lt;br /&gt;
t1=t(x1)&lt;br /&gt;
[minimopresaI,x2]= min(P1)&lt;br /&gt;
t2=t(x2)&lt;br /&gt;
[maximopresaII,x3]= max(P2)&lt;br /&gt;
t3=t(x3)&lt;br /&gt;
[minimopresaII,x4]= min(P2)&lt;br /&gt;
t4=t(x4)&lt;br /&gt;
[maximopredadores,x5]= max(D)&lt;br /&gt;
t5=t(x5)&lt;br /&gt;
[minimopredadores,x6]= min(D)&lt;br /&gt;
t6=t(x6)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
%GRÁFICA PRESA TIPO I/PRESA TIPO II/DEPREDADORES&lt;br /&gt;
&lt;br /&gt;
hold on&lt;br /&gt;
figure(1)&lt;br /&gt;
plot(t,P1,'c')&lt;br /&gt;
plot(t,P2,'r')&lt;br /&gt;
plot(t,D,'g')&lt;br /&gt;
title(' Población de presas (tipos I y II) y depredadores')&lt;br /&gt;
xlabel('t(años)')&lt;br /&gt;
ylabel('población(millones de individuos)')&lt;br /&gt;
hold off&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
=== Gráficas: Evolución de las especies en el tiempo ===&lt;br /&gt;
[[Archivo:GraficaRungeKutta.JPG|centro]]&lt;br /&gt;
&lt;br /&gt;
=== Interpretación de resultados ===&lt;br /&gt;
&lt;br /&gt;
En este gráfico se observan las variaciones poblacionales a lo largo del tiempo de las tres especies; la presa tipo I en color cian, la presa de tipo II en color rojo y los predadores se muestran en verde. Interpretamos que la población de predadores empieza a aumentar cuando la población de presas es máxima, es decir cuando tienen mayor cantidad de comida. Este crecimiento se mantiene hasta que el nivel de presas alcanza un punto crítico, donde deja de haber suficientes presas para sostener la población de predadores, lo que genera una disminución en el número de dichos depredadores, que a su vez da lugar a un aumento en el número de presas.&lt;br /&gt;
&lt;br /&gt;
Podemos observar dos comportamientos distintos según el tipo de presa al que nos referimos:&lt;br /&gt;
:* En la presa de tipo II observamos a simple vista que la población inicial es muy reducida, incluso menor que la de depredadores. Esto provoca que a pesar de que este tipo de presa no sea el único del que se alimenta el depredador, esta especie termina por extinguirse, como bien se aprecia en la gráfica.&lt;br /&gt;
:*En la presa de tipo I, vemos que a parte de que su población inicial es muchísimo mayor que la de depredadores, su velocidad de crecimiento también es mayor, y esto asegura la supervivencia de ambas especies.&lt;br /&gt;
Como resultado conluimos que tanto la cantidad de depredadores como la de presas del tipo que no se han extinguido mantienen sus ciclos de crecemiento y decrecimiento por lo que ambas se mantienen constantes en lo que se refiere a máximos y mínimos.&lt;br /&gt;
&lt;br /&gt;
Dichos máximos y mínimos se adjuntan en la siguiente tabla, con los correspondientes instantes en los que tienen lugar:&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Maximosminimos.JPG|centro]]&lt;br /&gt;
&lt;br /&gt;
== Conclusiones ==&lt;br /&gt;
Tras analizar los resultados obtenidos aplicando los diferentes métodos numéricos, llegamos a las siguientes conclusiones:&lt;br /&gt;
* El método de Euler es un método de orden 1, por lo que nos ofrecerá peores resultados que los métodos de órdenes superiores, como son el método de Euler modificado (Runge-Kutta de orden 2) y el Runge-Kutta de orden 4. Esto se comprueba al comparar los distintos resultados obtenidos.&lt;br /&gt;
* En comparación con los otros métodos, es preferible el '''método de Runge-Kutta''', pues aporta soluciones más precisas. Esto se debe a que permite buenas aproximaciones aumentando el valor de la longitud de paso ''h'', ya que no se acumula el error del cálculo mediante tangentes que se desvían de la solución exacta.&lt;br /&gt;
&lt;br /&gt;
[[Categoría:Ecuaciones Diferenciales]]&lt;br /&gt;
[[Categoría:ED13/14]]&lt;br /&gt;
[[Categoría:Trabajos 2013-14]]&lt;/div&gt;</summary>
		<author><name>Toni Villa</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Modelo_predador-presa_de_A._Lotka_y_V._Volterra&amp;diff=9655</id>
		<title>Modelo predador-presa de A. Lotka y V. Volterra</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Modelo_predador-presa_de_A._Lotka_y_V._Volterra&amp;diff=9655"/>
				<updated>2014-03-04T10:20:53Z</updated>
		
		<summary type="html">&lt;p&gt;Toni Villa: /* Interpretación de resultados */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{ Beta }}&lt;br /&gt;
&lt;br /&gt;
{{ TrabajoED | Modelo predador-presa. Grupo 6B | [[:Categoría:Ecuaciones Diferenciales|Ecuaciones Diferenciales]]|[[:Categoría:ED13/14|Curso 2013-14]] | Paula De Santos Muñoz, María del Mar García Reinaldos, Elisabet Sánchez López, Ana Santos Martín, Isabel Sastre Furones, Ángel Antonio Villa Figueroa }}&lt;br /&gt;
El modelo predador-presa fue propuesto de forma independiente a comienzos del siglo pasado por A. Lotka y V. Volterra. Es un modelo mátematico para la dinámica de poblaciones de especies competidoras (predadores y presas), que consiste en un sistema de ecuaciones diferenciales de primer orden no lineales correspondientes al cambio de las poblaciones de presa y predador por unidad de tiempo.&lt;br /&gt;
== Interpretación del problema de valor inicial ==&lt;br /&gt;
&lt;br /&gt;
El problema planteado trabaja la existencia de dos especies de presas distintas que comparten una población de depredadores. Llamaremos:&lt;br /&gt;
* x&amp;lt;sub&amp;gt;1&amp;lt;/sub&amp;gt;: especie presa 1&lt;br /&gt;
* x&amp;lt;sub&amp;gt;2&amp;lt;/sub&amp;gt;: especie presa 2&lt;br /&gt;
* x&amp;lt;sub&amp;gt;3&amp;lt;/sub&amp;gt;: población depredadora&lt;br /&gt;
&lt;br /&gt;
Nuestro trabajo se basa en un estudio del crecimiento de las presas y del depredador en el tiempo, observando las interacciones entre ellas y teniendo en cuenta que:&lt;br /&gt;
# En condiciones iniciales, x&amp;lt;sub&amp;gt;1&amp;lt;/sub&amp;gt; cuenta con una población de p&amp;lt;sub&amp;gt;0&amp;lt;/sub&amp;gt;, x&amp;lt;sub&amp;gt;2&amp;lt;/sub&amp;gt; con una población de q&amp;lt;sub&amp;gt;0&amp;lt;/sub&amp;gt; y finalmente x&amp;lt;sub&amp;gt;3&amp;lt;/sub&amp;gt; con una población d&amp;lt;sub&amp;gt;0&amp;lt;/sub&amp;gt;.&lt;br /&gt;
# Las poblaciones evolucionan interactuando entre ellas, sin tener en cuenta agentes externos.&lt;br /&gt;
# Las presas cuenta con una cantidad suficiente de comida para ser alimentada. &lt;br /&gt;
# La alimentación de los depredadores depende completamente de la presa.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Con estos datos podemos definir las ecuaciones de nuestro sistema. La primera ecuación nos define la evolución de la presa en el tiempo cuando está interactuando con la especie depredadora donde: &lt;br /&gt;
* A&amp;lt;sub&amp;gt;1&amp;lt;/sub&amp;gt;x&amp;lt;sub&amp;gt;1&amp;lt;/sub&amp;gt; es la tasa de natalidad de la presa 1, siguiendo una ley exponencial.&lt;br /&gt;
* A&amp;lt;sub&amp;gt;2&amp;lt;/sub&amp;gt;x&amp;lt;sub&amp;gt;1&amp;lt;/sub&amp;gt;x&amp;lt;sub&amp;gt;3&amp;lt;/sub&amp;gt;  es la tasa de mortalidad de la presa 1 afectada por los depredadores.&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;\frac{\mathrm{d} x_1}{\mathrm{d} t}=A_1x_1-A_2x_1x_3\\&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
De forma análoga a la primera ecuación, podemos definir la segunda.&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;\frac{\mathrm{d} x_2}{\mathrm{d} t}=B_1x_2-B_2x_2x_3\\&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
En la tercera ecuación definimos la evolución de x&amp;lt;sub&amp;gt;3&amp;lt;/sub&amp;gt;, definiendo la constante C&amp;lt;sub&amp;gt;1&amp;lt;/sub&amp;gt; multiplicada por (-1), lo que nos hace ver &lt;br /&gt;
la extinción de los depredadores ante la inexistencia de presas y el crecimiento de los mismos gracias a la alimentación aportada por las presas.&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;\frac{\mathrm{d}x_3}{\mathrm{d} t}=-C_1x_3+C_2x_1x_3+C_3x_2x_3\\&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Con estás tres ecuaciones queda definido el sistema de ecuaciones de Lotka y Volterra a resolver como un problema de valor inicial.&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt; &lt;br /&gt;
\left\{\begin{matrix}\frac{\mathrm{d} x_1}{\mathrm{d} t}=A_1x_1-A_2x_1x_3\\\frac{\mathrm{d}x_2}{\mathrm{d} t}=B_1x_2-B_2x_2x_3\\\frac{\mathrm{d}x_3}{\mathrm{d} t}=-C_1x_3+C_2x_1x_3+C_3x_2x_3\\ x_1(0)=p_{0},x_2(0)=q_{0},x_3(0)=d_{0}\end{matrix}\right.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Resolución por el método de Euler ==&lt;br /&gt;
=== Programación del método numérico ===&lt;br /&gt;
El programa utilizado para resolver el problema de valor inicial mediante el método de Euler en un intervalo de tiempo '''tє[0,300]''', para una longitud de paso '''h=0.1''', constantes '''A&amp;lt;sub&amp;gt;1&amp;lt;/sub&amp;gt;=0.35''', '''A&amp;lt;sub&amp;gt;2&amp;lt;/sub&amp;gt;=0.6''', '''B&amp;lt;sub&amp;gt;1&amp;lt;/sub&amp;gt;=0.3''', '''B&amp;lt;sub&amp;gt;2&amp;lt;/sub&amp;gt;=0.5''', '''C&amp;lt;sub&amp;gt;1&amp;lt;/sub&amp;gt;=0.37''', '''C&amp;lt;sub&amp;gt;2&amp;lt;/sub&amp;gt;=0.04''' y '''C&amp;lt;sub&amp;gt;3&amp;lt;/sub&amp;gt;=0.035''', y valores iniciales de '''p&amp;lt;sub&amp;gt;0&amp;lt;/sub&amp;gt;=0.8''' millones de presas de un tipo, '''q&amp;lt;sub&amp;gt;0&amp;lt;/sub&amp;gt;=2.4''' millones de presas de otro tipo y '''d&amp;lt;sub&amp;gt;0&amp;lt;/sub&amp;gt;=0.2''' millones de predadores es el siguiente:&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
%Datos del problema&lt;br /&gt;
t0=0;&lt;br /&gt;
tf=300;&lt;br /&gt;
A1=0.35; A2=0.6;&lt;br /&gt;
B1=0.3; B2=0.5;&lt;br /&gt;
C1=0.37; C2=0.04; C3=0.035;&lt;br /&gt;
%Datos de la discretización&lt;br /&gt;
h=0.1;&lt;br /&gt;
N=(tf-t0)/h;&lt;br /&gt;
%Condiciones iniciales&lt;br /&gt;
p0=0.8;&lt;br /&gt;
q0=2.4;&lt;br /&gt;
d0=0.2;&lt;br /&gt;
y0=[p0 q0 d0]';&lt;br /&gt;
%Matrices de coeficientes del sistema&lt;br /&gt;
A=[A1 0 0;0 B1 0;0 0 -C1];&lt;br /&gt;
B=[-A2 0 C2]';&lt;br /&gt;
C=[0 -B2 C3]';&lt;br /&gt;
%Vector de tiempos y matriz de soluciones aproximadas&lt;br /&gt;
t=t0:h:tf;&lt;br /&gt;
y=zeros(3,N+1);&lt;br /&gt;
%Inicialización&lt;br /&gt;
y(:,1)=y0;&lt;br /&gt;
yy=y0;&lt;br /&gt;
for n=1:N&lt;br /&gt;
    yy=yy+h*(A*yy+B*yy(1)*yy(3)+C*yy(2)*yy(3));&lt;br /&gt;
    y(:,n+1)=yy;&lt;br /&gt;
end&lt;br /&gt;
figure(1)&lt;br /&gt;
plot(t,y)&lt;br /&gt;
title('Evolución de las poblaciones de presas (azul y verde) y predador (rojo) en función del tiempo')&lt;br /&gt;
xlabel('Tiempo t (años)')&lt;br /&gt;
ylabel('Millones de ejemplares')&lt;br /&gt;
axis tight&lt;br /&gt;
figure(2)&lt;br /&gt;
subplot(1,2,1)&lt;br /&gt;
plot(y(1,:),y(3,:))&lt;br /&gt;
title('Población del primer tipo de presa en  función de la de predadores')&lt;br /&gt;
xlabel('Presas tipo 1 (millones de ejemplares)')&lt;br /&gt;
ylabel('Predadores (millones de ejemplares)')&lt;br /&gt;
axis tight&lt;br /&gt;
subplot(1,2,2)&lt;br /&gt;
plot(y(2,:),y(3,:))&lt;br /&gt;
title('Población del segundo tipo de presa en función de la de predadores')&lt;br /&gt;
xlabel('Presas tipo 2 (millones de ejemplares)')&lt;br /&gt;
ylabel('Predadores (millones de ejemplares)')&lt;br /&gt;
axis tight&lt;br /&gt;
}}&lt;br /&gt;
=== Gráficas ===&lt;br /&gt;
==== Considerando la evolución de las especies en el tiempo ====&lt;br /&gt;
De la aplicación del método numérico se obtienen las siguientes gráficas, de las que sacaremos conclusiones posteriormente.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:GraphEuler.jpg|centro]]&lt;br /&gt;
&lt;br /&gt;
En esta primera gráfica, obtenida como resultado de utilizar como longitud de paso '''h=0.1''', se muestran las tres funciones equivalentes a la evolución en el tiempo de los dos tipos de presas y del predador. Cada curva presenta unos máximos periódicos desplazados los unos respecto de los otros, lo cual se debe al desfase con el que evolucionan las distintas especies: primero aumentan las poblaciones de ambas presas (creciendo más aquella de la que inicialmente hay más ejemplares) y después comienza a aumentar la población de la especie predadora, pues puede alimentarse fácilmente. Ésta última alcanzará su primer máximo cuando las presas disminuyen, tras lo cual disminuye también el número de predadores al escasear el alimento. Este proceso se dará periódicamente a lo largo de los 300 años. Es notable la diferencia en la evolución de ambos tipos de presas: mientras que uno tiende a aumentar, el otro disminuye.&lt;br /&gt;
&lt;br /&gt;
Si ahora utilizamos como longitud de paso '''h=1''', obtenemos esta segunda gráfica de la cual podemos concluir que, debido precisamente al aumento de ''h'', el método de Euler pierde su validez.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:GraphEuler1.jpg|centro]]&lt;br /&gt;
&lt;br /&gt;
==== Considerando la interacción entre especies ====&lt;br /&gt;
Dado que hemos comprobado anteriormente que el método de Euler con longitud de paso h=1 no es efectivo, evaluaremos la interacción entre especies utilizando '''h=0.1''' como longitud de paso. Las gráficas resultantes son las siguientes:&lt;br /&gt;
&lt;br /&gt;
[[Archivo:GraphEuler4.jpg|centro]]&lt;br /&gt;
&lt;br /&gt;
=== Interpretación de resultados ===&lt;br /&gt;
Al aumentar la longitud paso de '''h=0.1''' a '''h=1''', lo que observamos es una gran pérdida de precisión en los resultados, ya que el valor de la aproximación calculada por el método de Euler se aleja demasiado de la solución exacta del problema de valor inicial.&lt;br /&gt;
Esto se debe a que este método numérico se basa en aproximaciones mediante la tangente a una determinada función. En nuestro caso, las diferencias entre los máximos y mínimos de las funciones que describen la evolución de las especies son considerables (son funciones oscilatorias) y se producen en intervalos de tiempo ''cortos'', por lo que, al utilizar una longitud de paso ''grande'' (como puede ser ''h=1''), la inexactitud de la aproximación calculada resulta inaceptable. Por el contrario, si disminuimos la longitud de paso, el valor de la aproximación se considera válido. Esto se explica porque el método de Euler alcanza mayor nivel de convergencia cuanto menor es el valor de ''h''; sin embargo, hay que tener en cuenta que, si disminuimos mucho este valor, el programa puede llegar a fallar.&lt;br /&gt;
&lt;br /&gt;
== Resolución por el método de Euler modificado ==&lt;br /&gt;
=== Programación del método numérico ===&lt;br /&gt;
A continuación, se resuelve el problema de valor inicial mediante el método de Euler modificado. Como datos tenemos una longitud de paso '''h=0.1''', constantes '''A&amp;lt;sub&amp;gt;1&amp;lt;/sub&amp;gt;=0.35''', '''A&amp;lt;sub&amp;gt;2&amp;lt;/sub&amp;gt;=0.6''', '''B&amp;lt;sub&amp;gt;1&amp;lt;/sub&amp;gt;=0.3''', '''B&amp;lt;sub&amp;gt;2&amp;lt;/sub&amp;gt;=0.5''', '''C&amp;lt;sub&amp;gt;1&amp;lt;/sub&amp;gt;=0.37''', '''C&amp;lt;sub&amp;gt;2&amp;lt;/sub&amp;gt;=0.04''' y '''C&amp;lt;sub&amp;gt;3&amp;lt;/sub&amp;gt;=0.035''', y valores iniciales de '''p&amp;lt;sub&amp;gt;0&amp;lt;/sub&amp;gt;=2''' millones de presas de un tipo, '''q&amp;lt;sub&amp;gt;0&amp;lt;/sub&amp;gt;=1.4''' millones de presas de otro tipo y '''d&amp;lt;sub&amp;gt;0&amp;lt;/sub&amp;gt;=1''' millones de predadores. Primero tomaremos un intervalo de tiempo '''tє[0,100]'''. El programa se describe a continuación:&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
%Datos del problema&lt;br /&gt;
t0=0;&lt;br /&gt;
tf=100;&lt;br /&gt;
A1=0.35; A2=0.6;&lt;br /&gt;
B1=0.3; B2=0.5;&lt;br /&gt;
C1=0.37; C2=0.04; C3=0.035;&lt;br /&gt;
%Datos de la discretización&lt;br /&gt;
h=0.1;&lt;br /&gt;
N=(tf-t0)/h;&lt;br /&gt;
%Condiciones iniciales&lt;br /&gt;
p0=2;&lt;br /&gt;
q0=1.4;&lt;br /&gt;
d0=1;&lt;br /&gt;
y0=[p0 q0 d0]';&lt;br /&gt;
%Matrices de coeficientes del sistema&lt;br /&gt;
A=[A1 0 0;0 B1 0;0 0 -C1];&lt;br /&gt;
B=[-A2 0 C2]';&lt;br /&gt;
C=[0 -B2 C3]';&lt;br /&gt;
%Vector de tiempos&lt;br /&gt;
t=t0:h:tf;&lt;br /&gt;
%Inicialización&lt;br /&gt;
y=y0;&lt;br /&gt;
for n=1:N&lt;br /&gt;
    k1=(A*y+y(1)*y(3)*B+y(2)*y(3)*C);&lt;br /&gt;
    k2=(A*(y+h*k1)+(y(1)+h*k1(1))*(y(3)+h*k1(3))*B+(y(2)+h*k1(2))*(y(3)+h*k1(3))*C);&lt;br /&gt;
    y=y+h*(k1+k2)/2;&lt;br /&gt;
    y1(n+1)=y(1);&lt;br /&gt;
    y2(n+1)=y(2);&lt;br /&gt;
    y3(n+1)=y(3);&lt;br /&gt;
end&lt;br /&gt;
%Gráfica poblaciones-tiempo&lt;br /&gt;
figure(1)&lt;br /&gt;
hold on&lt;br /&gt;
plot(t,y1,'b')&lt;br /&gt;
plot(t,y2,'g')&lt;br /&gt;
plot(t,y3,'r')&lt;br /&gt;
title('Evolución de las poblaciones de presas (azul y verde) y predador (rojo) en función del tiempo')&lt;br /&gt;
xlabel('Tiempo t (años)')&lt;br /&gt;
ylabel('Millones de ejemplares')&lt;br /&gt;
axis tight&lt;br /&gt;
hold off&lt;br /&gt;
%Gráficas presa-predador&lt;br /&gt;
figure(2)&lt;br /&gt;
subplot(1,2,1)&lt;br /&gt;
plot(y1,y3,'b')&lt;br /&gt;
title('Población del primer tipo de presa en  función de la de predadores')&lt;br /&gt;
xlabel('Presas tipo 1 (millones de ejemplares)')&lt;br /&gt;
ylabel('Predadores (millones de ejemplares)')&lt;br /&gt;
axis tight&lt;br /&gt;
subplot(1,2,2)&lt;br /&gt;
plot(y2,y3,'r')&lt;br /&gt;
title('Población del segundo tipo de presa en función de la de predadores')&lt;br /&gt;
xlabel('Presas tipo 2 (millones de ejemplares)')&lt;br /&gt;
ylabel('Predadores (millones de ejemplares)')&lt;br /&gt;
axis tight&lt;br /&gt;
}}&lt;br /&gt;
Hacemos lo mismo para el segundo intervalo de tiempo '''tє[0,300]'''. El único cambio que sufre el programa es '''tf=300'''.&lt;br /&gt;
&lt;br /&gt;
=== Gráficas ===&lt;br /&gt;
==== Considerando la evolución de las especies en el tiempo ====&lt;br /&gt;
De la aplicación del método numérico para un tiempo '''tє[0,100]''', tenemos la siguiente gráfica:&lt;br /&gt;
&lt;br /&gt;
[[Archivo:GraphMEuler1.jpg|centro]]&lt;br /&gt;
&lt;br /&gt;
De ella podemos concluir que, durante los primeros 100 años, la evolución de ambos tipos de presas sigue direcciones opuestas: mientras la curva que describe la evolución de la presa de la que hay más ejemplares inicialmente tiende a que sus máximos sean cada vez más pequeños, los máximos de la otra son cada vez mayores. Se observa que, al finalizar el período, el número de ejemplares de ambas presas es similar. Por otro lado, la evolución de la cantidad de predadores en el tiempo es similar a la obtenida al aplicar el método de Euler, aumentando el número de ejemplares tras producirse un pico en las cantidades de presas. Cabe destacar, sin embargo, que con el método de Euler modificado obtenemos gráficas más suaves, lo cual permite aumentar un poco la longitud de paso ''h'' sin acumular demasiado error.&lt;br /&gt;
&lt;br /&gt;
Si ahora aumentamos nuestro intervalo de tiempo hasta '''tє[0,300]''', podemos comprobar en la gráfica siguiente que la evolución del número de presas sigue la tendencia indicada durante los primeros 100 años: la especie predadora mantiene su evolución oscilatoria con máximos constantes, las presas cuyos máximos disminuían progresivamente casi se han extinguido transcurridos los 300 años y las otras alcanzan sus cifras máximas al final del período. Esto se debe a que los predadores se centran en un determinado tipo de presa, con lo cual la otra se encuentra menos amenazada. &lt;br /&gt;
&lt;br /&gt;
[[Archivo:GraphMEuler2.jpg|centro]]&lt;br /&gt;
&lt;br /&gt;
==== Considerando la interacción entre especies ====&lt;br /&gt;
Para evaluar la interacción entre especies tendremos en cuenta las gráficas obtenidas para un tiempo '''tє[0,300]''', ya que se observa mejor la variación de las poblaciones de presas respecto de la de predadores.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:GraphMEuler5.jpg|centro]]&lt;br /&gt;
&lt;br /&gt;
Estas gráficas nos permiten concluir que los puntos en los que el ecosistema sería estable son los orígenes (0,0), los cuales despreciamos (pues si lo interpretamos en términos de poblaciones, no hay especies interactuando), y los puntos donde se encuentran los centros de las espirales. Como podemos comprobar, ninguna de las dos curvas converge al mismo centro, así que no podemos asegurar que los ecosistemas sean estables.&lt;br /&gt;
&lt;br /&gt;
== Resolución por el método trapezoidal ==&lt;br /&gt;
El método trapezoidal es un método implícito que, en nuestro caso, requiere la resolución de una ecuación no lineal. Al no ser posible su resolución, se descarta el método y no se tendrá en cuenta a la hora de comparar resultados.&lt;br /&gt;
&lt;br /&gt;
== Resolución por el método de Runge-Kutta ==&lt;br /&gt;
=== Programación del método numérico ===&lt;br /&gt;
A continuación, se resuelve el problema de valor inicial mediante el método de Runge- Kutta de cuarto orden. Como datos tenemos una longitud de paso '''h=0.1''', constantes '''A&amp;lt;sub&amp;gt;1&amp;lt;/sub&amp;gt;=0.4''', '''A&amp;lt;sub&amp;gt;2&amp;lt;/sub&amp;gt;=0.7''', '''B&amp;lt;sub&amp;gt;1&amp;lt;/sub&amp;gt;=0.2''', '''B&amp;lt;sub&amp;gt;2&amp;lt;/sub&amp;gt;=0.4''', '''C&amp;lt;sub&amp;gt;1&amp;lt;/sub&amp;gt;=0.37''', '''C&amp;lt;sub&amp;gt;2&amp;lt;/sub&amp;gt;=0.04''' y '''C&amp;lt;sub&amp;gt;3&amp;lt;/sub&amp;gt;=0.03''', y valores iniciales de '''p&amp;lt;sub&amp;gt;0&amp;lt;/sub&amp;gt;=3.5''' millones de presas de un tipo, '''q&amp;lt;sub&amp;gt;0&amp;lt;/sub&amp;gt;=0.2''' millones de presas de otro tipo y '''d&amp;lt;sub&amp;gt;0&amp;lt;/sub&amp;gt;=0.4''' millones de predadores. En este caso tomaremos un intervalo de tiempo '''tє[0,500]'''. El programa de obtención del método numérico se especifica a continuación:&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
t0=0; tN=500; %Extremos del intervalo&lt;br /&gt;
y0=[3.5;0.2;0.4]; %Valores de población iniciales&lt;br /&gt;
y=y0;&lt;br /&gt;
P1(1)=y(1); %Valor inicial de P1=presas tipo I&lt;br /&gt;
P2(1)=y(1); %Valor inicial de P2=presas tipo II&lt;br /&gt;
D(1)=y(1); %Valor inicial de D=depredadores&lt;br /&gt;
h=0.1; %Amplitud de los subintervalos&lt;br /&gt;
N=(tN-t0)/h; %Número de subintervalos&lt;br /&gt;
A=[ 0.4 0 0;0 0.2 0;0 0 -0.37]; %Parámetros&lt;br /&gt;
%Algoritmo&lt;br /&gt;
for k=1:N&lt;br /&gt;
  k1=(A*y+y(1)*y(3)*[-0.7;0;0.04]+y(2)*y(3)*[0;-0.4;0.03]);&lt;br /&gt;
  k2=(A*(y+(h/2)*k1)+(y(1)+(h/2)*k1(1))*(y(3)+(h/2)*k1(3))*[-0.7;0;0.04]+...&lt;br /&gt;
  (y(2)+(h/2)*k1(2))*(y(3)+(h/2)*k1(3))*[0;-0.4;0.03]);&lt;br /&gt;
  k3=(A*(y+(h/2)*k2)+(y(1)+(h/2)*k2(1))*(y(3)+(h/2)*k2(3))*[-0.7;0;0.04]+...&lt;br /&gt;
  (y(2)+(h/2)*k2(2))*(y(3)+(h/2)*k2(3))*[0;-0.4;0.03]);&lt;br /&gt;
  k4=(A*(y+h*k3)+(y(1)+h*k3(1))*(y(3)+h*k3(3))*[-0.7;0;0.04]+...&lt;br /&gt;
  (y(2)+h*k3(2))*(y(3)+h*k3(3))*[0;-0.4;0.03]);&lt;br /&gt;
  y=y+h/6*(k1+2*k2+2*k3+k4);&lt;br /&gt;
  P1(k+1)=y(1);&lt;br /&gt;
  P2(k+1)=y(2);&lt;br /&gt;
  D(k+1)=y(3);&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
t=t0:h:tN;&lt;br /&gt;
&lt;br /&gt;
%CÁLCULO DE INSTANTES MÁXIMOS Y MÍNIMOS&lt;br /&gt;
&lt;br /&gt;
[maximopresaI,x1]= max(P1)&lt;br /&gt;
t1=t(x1)&lt;br /&gt;
[minimopresaI,x2]= min(P1)&lt;br /&gt;
t2=t(x2)&lt;br /&gt;
[maximopresaII,x3]= max(P2)&lt;br /&gt;
t3=t(x3)&lt;br /&gt;
[minimopresaII,x4]= min(P2)&lt;br /&gt;
t4=t(x4)&lt;br /&gt;
[maximopredadores,x5]= max(D)&lt;br /&gt;
t5=t(x5)&lt;br /&gt;
[minimopredadores,x6]= min(D)&lt;br /&gt;
t6=t(x6)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
%GRÁFICA PRESA TIPO I/PRESA TIPO II/DEPREDADORES&lt;br /&gt;
&lt;br /&gt;
hold on&lt;br /&gt;
figure(1)&lt;br /&gt;
plot(t,P1,'c')&lt;br /&gt;
plot(t,P2,'r')&lt;br /&gt;
plot(t,D,'g')&lt;br /&gt;
title(' Población de presas (tipos I y II) y depredadores')&lt;br /&gt;
xlabel('t(años)')&lt;br /&gt;
ylabel('población(millones de individuos)')&lt;br /&gt;
hold off&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
=== Gráficas: Evolución de las especies en el tiempo ===&lt;br /&gt;
[[Archivo:GraficaRungeKutta.JPG|centro]]&lt;br /&gt;
&lt;br /&gt;
=== Interpretación de resultados ===&lt;br /&gt;
&lt;br /&gt;
En este gráfico se observan las variaciones poblacionales a lo largo del tiempo de las tres especies; la presa tipo I en color cian, la presa de tipo II en color rojo y los predadores se muestran en verde. Interpretamos que la población de predadores empieza a aumentar cuando la población de presas es máxima, es decir cuando tienen mayor cantidad de comida. Este crecimiento se mantiene hasta que el nivel de presas alcanza un punto crítico, donde deja de haber suficientes presas para sostener la población de predadores, lo que genera una disminución en el número de dichos depredadores, que a su vez da lugar a un aumento en el número de presas.&lt;br /&gt;
&lt;br /&gt;
Podemos observar dos comportamientos distintos según el tipo de presa al que nos referimos:&lt;br /&gt;
:* En la presa de tipo II observamos a simple vista que la población inicial es muy reducida, incluso menor que la de depredadores. Esto provoca que a pesar de que este tipo de presa no sea el único del que se alimenta el depredador, esta especie termina por extinguirse, como bien se aprecia en la gráfica.&lt;br /&gt;
:*En la presa de tipo I, vemos que a parte de que su población inicial es muchísimo mayor que la de depredadores, su velocidad de crecimiento también es mayor, y esto asegura la supervivencia de ambas especies.&lt;br /&gt;
Como resultado conluimos que tanto la cantidad de depredadores como la de presas del tipo que no se han extinguido mantienen sus ciclos de crecemiento y decrecimiento por lo que ambas se mantienen constantes en lo que se refiere a máximos y mínimos.&lt;br /&gt;
&lt;br /&gt;
Dichos máximos y mínimos se adjuntan en la siguiente tabla, con los correspondientes instantes en los que tienen lugar:&lt;br /&gt;
&lt;br /&gt;
== Conclusiones ==&lt;br /&gt;
Tras analizar los resultados obtenidos aplicando los diferentes métodos numéricos, llegamos a las siguientes conclusiones:&lt;br /&gt;
* El método de Euler es un método de orden 1, por lo que nos ofrecerá peores resultados que los métodos de órdenes superiores, como son el método de Euler modificado (Runge-Kutta de orden 2) y el Runge-Kutta de orden 4. Esto se comprueba al comparar los distintos resultados obtenidos.&lt;br /&gt;
* En comparación con los otros métodos, es preferible el '''método de Runge-Kutta''', pues aporta soluciones más precisas. Esto se debe a que permite buenas aproximaciones aumentando el valor de la longitud de paso ''h'', ya que no se acumula el error del cálculo mediante tangentes que se desvían de la solución exacta.&lt;br /&gt;
&lt;br /&gt;
[[Categoría:Ecuaciones Diferenciales]]&lt;br /&gt;
[[Categoría:ED13/14]]&lt;br /&gt;
[[Categoría:Trabajos 2013-14]]&lt;/div&gt;</summary>
		<author><name>Toni Villa</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Archivo:Maximosminimos.JPG&amp;diff=9654</id>
		<title>Archivo:Maximosminimos.JPG</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Archivo:Maximosminimos.JPG&amp;diff=9654"/>
				<updated>2014-03-04T10:20:23Z</updated>
		
		<summary type="html">&lt;p&gt;Toni Villa: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>Toni Villa</name></author>	</entry>

	</feed>