<?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=Lucia+Lopez</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=Lucia+Lopez"/>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/wiki/Especial:Contribuciones/Lucia_Lopez"/>
		<updated>2026-05-04T17:06:59Z</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_de_ondas_(grupo_2B)&amp;diff=13477</id>
		<title>Ecuación de ondas (grupo 2B)</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Ecuaci%C3%B3n_de_ondas_(grupo_2B)&amp;diff=13477"/>
				<updated>2014-05-19T23:16:34Z</updated>
		
		<summary type="html">&lt;p&gt;Lucia Lopez: /* Aproximación por Fourier con diferentes términos de series. */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{ TrabajoED | Ecuación de ondas. Grupo 2-B| [[:Categoría:Ecuaciones Diferenciales|Ecuaciones Diferenciales]]|[[:Categoría:ED13/14|Curso 2013-14]]| &lt;br /&gt;
Ignacio Díaz-Caneja Camblor&lt;br /&gt;
&lt;br /&gt;
Alberto Fernández Pérez&lt;br /&gt;
&lt;br /&gt;
Adela González Barbado&lt;br /&gt;
&lt;br /&gt;
Lucia López Sánchez&lt;br /&gt;
&lt;br /&gt;
Araceli Martín Candilejo&lt;br /&gt;
&lt;br /&gt;
Diego Solano López&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
== Modelización de los desplazamientos del Cable. ==&lt;br /&gt;
El problema que se tratará a continuación describe una ecuación de '''tipo hiperbólico''', una '''ecuación de ondas'''.&lt;br /&gt;
Consideramos un '''cable de 10 metros''' de longitud '''sujeto por sus extremos'''. Suponiendo que éste tiene una '''sección pequeña''' respecto a su longitud someteremos al cable a pequeñas vibraciones que estudiaremos con una modelización de la ecuación de ondas. &lt;br /&gt;
Se caracteriza al cable de una masa constante por unidad de volumen, es decir, será '''homogéneo'''. Éste, '''flexible''' a la tracción, únicamente ofrece resistencias en su dirección longitudinal, tangenciales, pero no a esfuerzos de flexión o cortes. Se supone, además, que es '''inextensible''' por lo que será lo suficientemente rígido longitudinalmente como para poder despreciar su extensibilidad.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Con esta modelización se estudiarán las '''pequeñas vibraciones''', desplazamientos transversales, a las que es sometido el cable. Para iniciar el movimiento del cable lo sujetaremos por el centro subiéndolo dos metros, lo que nos proporciona una primera condición inicial determinada por la función g(x), y soltándolo, con una velocidad inicial nula. &lt;br /&gt;
&lt;br /&gt;
&amp;lt;br/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Obtenemos la ecuación &amp;lt;math&amp;gt;u_{tt}-u_{xx}=0&amp;lt;/math&amp;gt; , de la cual se puede observar que tanto el '''módulo de la tensión''' como la '''densidad''' son '''constantes''' ya que el '''módulo de la elasticidad''' es constante, &amp;lt;math&amp;gt;c^2=1&amp;lt;/math&amp;gt; . Al ser ésta primera ecuación homogénea deducimos que transversalmente no actúa ninguna fuerza densidad espacial y temporal. Se deduce del enunciado anterior que las condiciones de frontera son '''homogéneas''', &amp;lt;math&amp;gt;u(0,t)=0&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;u(10,t)=0&amp;lt;/math&amp;gt; que nos indican que los extremos del cable no describen ningún tipo de movimiento en todo instante t al no estar sometidos a ningun tipo de fuerza. Finalmente, añadimos al sistema las condiciones iniciales, la primera de ellas, &amp;lt;math&amp;gt;u(x,0)=g(x)= 2- |\frac{2}{5}x -2|&amp;lt;/math&amp;gt;, define el '''movimiento descrito por la onda''' en el instante t=0 en cualquier punto del cable; y la segunda, &amp;lt;math&amp;gt;u_t(x,0)=0&amp;lt;/math&amp;gt;, que la onda parte de una '''velocidad inicial nula'''.&lt;br /&gt;
[[Image:DV.png|300px|thumb|right|Deslizamiento vertical del cable. ]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
\begin{cases}&lt;br /&gt;
&lt;br /&gt;
u_{tt}- u_{xx}=0  \  x∈[0,10] \ t&amp;gt;0\\&lt;br /&gt;
u(0,t)=0\\&lt;br /&gt;
u(10,t)=0\\&lt;br /&gt;
u(x,0)= 2- |\frac{2}{5}x -2|\\&lt;br /&gt;
u_t(x,0)=0&lt;br /&gt;
\end{cases}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
En los siguientes apartados se realizaran aproximaciones del sistema expuesto con tres métodos distintos de los que más tarde se hará una comparativa.  &lt;br /&gt;
&amp;lt;br/&amp;gt;&lt;br /&gt;
==== Aproximación por el método del trapecio. ====&lt;br /&gt;
El método del trapecio se basa en aproximar una función integrando. Para ello utilizamos un número N de trapecios (en la imagen inferior hemos aproximado mediante 4 trapecios). Las integrales a resolver para poder poder aproximar una función por este método tendrán la distancia de sus límites de integración constantes para todas las integrales, a esta distancia entre los límites de integración lo llamamos paso. En el desarrollo de este método se supone que la función es continua en el intervalo en que se quiere aproximar.&lt;br /&gt;
&amp;lt;br/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Image:Trapecio.png|300px|thumb|center|Función Y(x), el área bajo la curva, se puede aproximar mediante n trapecios]]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br/&amp;gt;&lt;br /&gt;
{{matlab|codigo= &lt;br /&gt;
%u_tt-u_xx=0&lt;br /&gt;
%u(0,t)=u(l,t)=0&lt;br /&gt;
%u(x,0)=2-abs(0.4x-2)&lt;br /&gt;
%ut(x,0)=0&lt;br /&gt;
clear all&lt;br /&gt;
&lt;br /&gt;
%Datos del problema&lt;br /&gt;
L=10;&lt;br /&gt;
T=40;&lt;br /&gt;
&lt;br /&gt;
%Discretización&lt;br /&gt;
h=0.1;&lt;br /&gt;
N=L/h;&lt;br /&gt;
x=0:h:L;&lt;br /&gt;
xint=h:h:L-h;&lt;br /&gt;
dt=h;&lt;br /&gt;
t=0:dt:T;&lt;br /&gt;
&lt;br /&gt;
%Aprox. de u_xx&lt;br /&gt;
K=2*diag(ones(1,N-1))-diag(ones(1,N-2),-1)-diag(ones(1,N-2),1);&lt;br /&gt;
K=K/h^2;&lt;br /&gt;
F=zeros(N-1,1);&lt;br /&gt;
&lt;br /&gt;
%Posición inicial.&lt;br /&gt;
u0=(2-abs(xint*2/5-2))';&lt;br /&gt;
v0=zeros(N-1,1);&lt;br /&gt;
&lt;br /&gt;
%Aprox. de u_tt&lt;br /&gt;
M=[zeros(N-1),eye(N-1);-K,zeros(N-1)];&lt;br /&gt;
G=[zeros(N-1,1);F];&lt;br /&gt;
&lt;br /&gt;
%Aproximación por el método del Trapecio&lt;br /&gt;
W0=[u0;v0];&lt;br /&gt;
WW=W0;&lt;br /&gt;
sol=zeros(length(t),N+1);&lt;br /&gt;
sol(1,:)=[0,W0(1:N-1)',0];&lt;br /&gt;
for j=1:length(t)-1&lt;br /&gt;
    WW=(eye(2*N-2)-dt/2*M)\(eye(2*N-2)+dt/2*M)*WW;&lt;br /&gt;
    sol(j+1,:)=[0,WW(1:N-1)',0];&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
%Dibujo de la solución&lt;br /&gt;
[xx,tt]=meshgrid(x,t);&lt;br /&gt;
surf(xx,tt,sol);&lt;br /&gt;
xlabel('Desplazamiento horizontal');&lt;br /&gt;
ylabel('Tiempo');&lt;br /&gt;
zlabel('Desplazamiento vertical');}}&lt;br /&gt;
&lt;br /&gt;
[[Image:klklk.jpg|700px|thumb|center|Aproximación por el método del Trapecio.]]&lt;br /&gt;
&lt;br /&gt;
Como el método del trapecio tiene '''orden de precisión 2''' sabemos que se trata de una buena aproximación, pero gráficamente también podemos observar que éste es bastante preciso.&lt;br /&gt;
&lt;br /&gt;
==== Aproximación por el método de Euler. ====&lt;br /&gt;
Se exponen en este apartado dos tipos de aproximaciones de Euler.&lt;br /&gt;
&lt;br /&gt;
Este método se basa en la posibilidad de aproximar una función original mediante rectas tangentes partiendo de un punto dado. Sabiendo que la recta tangente de una función en un punto es la derivada en dicho punto, este método consiste en calcular derivadas de la función en diferentes puntos pertenecientes a ella. Estos puntos serán tomados con la misma distancia a lo largo de la recta, a esta distancia la denominamos paso de discretización. &lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Image:Euler.png|300px|thumb|center|Aproximación de una función por el método de Euler]]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===== Euler Explícito. =====&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
%utt-uxx=0&lt;br /&gt;
%u(0,t)=u(l,t)=0&lt;br /&gt;
%u(x,0)=2-abs(0.4x-2)&lt;br /&gt;
%ut(x,0)=0&lt;br /&gt;
clear all&lt;br /&gt;
L=10;&lt;br /&gt;
T=40;&lt;br /&gt;
h=0.1;&lt;br /&gt;
N=L/h;&lt;br /&gt;
x=0:h:L;&lt;br /&gt;
xint=h:h:L-h;&lt;br /&gt;
dt=h;&lt;br /&gt;
t=0:dt:T;&lt;br /&gt;
K=2*diag(ones(1,N-1))-diag(ones(1,N-2),-1)-diag(ones(1,N-2),1);&lt;br /&gt;
K=K/h^2;&lt;br /&gt;
F=zeros(N-1,1);&lt;br /&gt;
u0=(2-abs(xint*2/5-2))';&lt;br /&gt;
v0=zeros(N-1,1);&lt;br /&gt;
M=[zeros(N-1),eye(N-1);-K,zeros(N-1)];&lt;br /&gt;
G=[zeros(N-1,1);F];&lt;br /&gt;
W0=[u0;v0];&lt;br /&gt;
WW=W0;&lt;br /&gt;
sol=zeros(length(t),N+1);&lt;br /&gt;
sol(1,:)=[0,W0(1:N-1)',0];&lt;br /&gt;
for j=1:length(t)-1&lt;br /&gt;
    k1=[zeros(N-1), eye(N-1); -K, -K.*dt];&lt;br /&gt;
    k2=[zeros(N-1), eye(N-1); -K, -K.*dt];&lt;br /&gt;
    WW=WW+(k1+k2)*WW.*(dt/2);&lt;br /&gt;
    sol(j+1,:)=[0,WW(1:N-1)',0];&lt;br /&gt;
end&lt;br /&gt;
[xx,tt]=meshgrid(x,t);&lt;br /&gt;
surf(xx,tt,sol);&lt;br /&gt;
xlabel('Desplazamiento horizontal');&lt;br /&gt;
ylabel('Tiempo');&lt;br /&gt;
zlabel('Desplazamiento vertical');}}&lt;br /&gt;
&lt;br /&gt;
[[Image:3a3a.png|700px|thumb|center|Aproximación de una función por el método de Euler Explícito]]&lt;br /&gt;
Antes de comentar las dos gráficas anteriores, se debe insistir en que el '''orden de precisión''' del método de Euler es '''1''', por tanto, será menos preciso que el primero.&lt;br /&gt;
&lt;br /&gt;
===== Euler Modificado. =====&lt;br /&gt;
&lt;br /&gt;
Este método se basa en la misma idea que el anterior, pero hace un refinamiento en la aproximación, tomando un promedio entre las pendientes, esto parece más razonable para la obtención de un valor más preciso.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
%utt-uxx=0&lt;br /&gt;
%u(0,t)=u(l,t)=0&lt;br /&gt;
%u(x,0)=2-abs(0.4x-2)&lt;br /&gt;
%ut(x,0)=0&lt;br /&gt;
clear all&lt;br /&gt;
L=10;&lt;br /&gt;
T=40;&lt;br /&gt;
h=0.1;&lt;br /&gt;
N=L/h;&lt;br /&gt;
x=0:h:L;&lt;br /&gt;
xint=h:h:L-h;&lt;br /&gt;
dt=h;&lt;br /&gt;
t=0:dt:T;&lt;br /&gt;
K=2*diag(ones(1,N-1))-diag(ones(1,N-2),-1)-diag(ones(1,N-2),1);&lt;br /&gt;
K=K/h^2;&lt;br /&gt;
F=zeros(N-1,1);&lt;br /&gt;
U=(2-abs(xint*2/5-2))';&lt;br /&gt;
V=zeros(N-1,1);&lt;br /&gt;
sol(1,:)=[0 U' 0];&lt;br /&gt;
for i=1:length(t)-1;&lt;br /&gt;
    U=U+dt*V;&lt;br /&gt;
    V=V-dt*K*U;&lt;br /&gt;
    sol(i+1,:)=[0 U' 0];&lt;br /&gt;
end&lt;br /&gt;
[xx,tt]=meshgrid(x,t);&lt;br /&gt;
surf(xx,tt,sol);&lt;br /&gt;
xlabel('Desplazamiento horizontal');&lt;br /&gt;
ylabel('Tiempo');&lt;br /&gt;
zlabel('Desplazamiento vertical');}}&lt;br /&gt;
[[Image:3b3b.png|700px|thumb|center|Aproximación de una función por el método de Euler Modificado]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Fijándonos en las gráficas, observamos que la obtenida mediante Euler modificado realiza una mejor aproximación, como ya habíamos anticipado al comentar que éste método se basa en mejorar la aproximación del método de Euler sencillo. Es decir, en precisión '''Euler Modificado &amp;gt; Trapecio &amp;gt; Euler Explícito''', por ello concluimos que se asemeja mejor que la obtenida mediante el método del Trapecio y que la primera aproximación de Euler.&lt;br /&gt;
&lt;br /&gt;
==== Aproximación por Fourier con diferentes términos de series. ====&lt;br /&gt;
&lt;br /&gt;
El método de Fourier se basa en obtener una única solución a partir del sistema obtenido del enunciado. Para ello, buscamos una solución que satisfaga las condiciones de contorno, resolviendo un problema de autovalores. Por último, debemos hacer que nuestra solución cumpla las condiciones iniciales, resolviendo una serie de fourier.&lt;br /&gt;
&lt;br /&gt;
En este apartado se ofrece una aproximación alternativa a las anteriores. Se muestran '''cinco iteraciones''' distintas del '''método del Fourier''' que se compararan entre sí y con los métodos anteriores, Trapecio y Euler. Este método de aproximación depende del número de términos de serie (lo denominamos con la letra Q) con los que se realice el programa de Fourier.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br/&amp;gt;&lt;br /&gt;
Puesto que la realización de este método es la misma sea cual sea el número de serie elegido, se han expuesto únicamente dos casos de Q para una mayor claridad del programa.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo= %utt-uxx=0&lt;br /&gt;
%u(0,t)=u(l,t)=0&lt;br /&gt;
%u(x,0)=2-abs(0.4x-2)&lt;br /&gt;
%ut(x,0)=0&lt;br /&gt;
&lt;br /&gt;
%1 iteracion&lt;br /&gt;
clear all&lt;br /&gt;
L=10;&lt;br /&gt;
T=40;&lt;br /&gt;
Q=1;&lt;br /&gt;
h=0.1;&lt;br /&gt;
N=L/h;&lt;br /&gt;
x=0:h:L;&lt;br /&gt;
dt=h;&lt;br /&gt;
t=0:dt:T;&lt;br /&gt;
sol=zeros(length(t),N+1);&lt;br /&gt;
for k=1:Q&lt;br /&gt;
    phi=sin(k/L*pi*x);&lt;br /&gt;
    a=trapz(x,(2-abs(2/5*x-2)).*phi)/(trapz(x,phi.^2));&lt;br /&gt;
    b=0;&lt;br /&gt;
    T=a.*cos(k*pi*t/L);&lt;br /&gt;
    sol=sol+T'*phi;&lt;br /&gt;
end&lt;br /&gt;
[xx,tt]=meshgrid(x,t);&lt;br /&gt;
figure (1)&lt;br /&gt;
surf(xx,tt,sol)&lt;br /&gt;
xlabel('Desplazamiento horizontal');&lt;br /&gt;
ylabel('Tiempo');&lt;br /&gt;
zlabel('Desplazamiento vertical');&lt;br /&gt;
&lt;br /&gt;
%3 iteracion&lt;br /&gt;
clear all&lt;br /&gt;
L=10;&lt;br /&gt;
T=40;&lt;br /&gt;
Q=3;&lt;br /&gt;
h=0.1;&lt;br /&gt;
N=L/h;&lt;br /&gt;
x=0:h:L;&lt;br /&gt;
dt=h;&lt;br /&gt;
t=0:dt:T;&lt;br /&gt;
sol=zeros(length(t),N+1);&lt;br /&gt;
for k=1:Q&lt;br /&gt;
    phi=sin(k/L*pi*x);&lt;br /&gt;
    a=trapz(x,(2-abs(2/5*x-2)).*phi)/(trapz(x,phi.^2));&lt;br /&gt;
    b=0;&lt;br /&gt;
    T=a.*cos(k*pi*t/L);&lt;br /&gt;
    sol=sol+T'*phi;&lt;br /&gt;
end&lt;br /&gt;
[xx,tt]=meshgrid(x,t);&lt;br /&gt;
figure (2)&lt;br /&gt;
surf(xx,tt,sol)&lt;br /&gt;
xlabel('Desplazamiento horizontal');&lt;br /&gt;
ylabel('Tiempo');&lt;br /&gt;
zlabel('Desplazamiento vertical');}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br/&amp;gt;&lt;br /&gt;
[[Image:81tF2.jpg|525px|thumb|left|Aproximación por el método del Trapecio con un término de serie.]]&lt;br /&gt;
[[Image:82tF.jpg|525px|thumb|center|Aproximación por el método del Trapecio con tres términos de serie.]]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br/&amp;gt; &lt;br /&gt;
&lt;br /&gt;
[[Image:83tF.jpg|525px|thumb|left|Aproximación por el método del Trapecio con cinco términos de serie.]]&lt;br /&gt;
[[Image:84tF.jpg|525px|thumb|center|Aproximación por el método del Trapecio con diez términos de serie.]]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Image:85tF.jpg|525px|thumb|center|Aproximación por el método del Trapecio con veinte términos de serie.]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
En este método podemos observar fijándonos en las gráficas que a mayor número de términos (mayor Q), mayor es la aproximación obtenida y más estable.&lt;br /&gt;
&lt;br /&gt;
Realizando una comparación con los otros métodos, se puede observar, fijándonos en las gráficas y en los órdenes de precisión, que el método que mejor aproxima  la ecuación del problema es el método del trapecio, seguido de Euler modificado y, por último, Euler, teniendo mayor orden el que mejor aproxima la función.&lt;br /&gt;
&lt;br /&gt;
Gráficamente podemos confirmar este hecho, dándonos cuenta que '''las gráficas más similares''' son '''Fourier con Q=20''' y el método del '''Euler Modificado'''.&lt;br /&gt;
&lt;br /&gt;
== Energía del Cable. ==&lt;br /&gt;
&lt;br /&gt;
La energía del cable que viene definida por la función: &lt;br /&gt;
\begin{equation}&lt;br /&gt;
E(t) = \int_{0}^{L} (u_{t}^{2}(x,t)+ u_{x}^{2}(x,t)) \cdot dx&lt;br /&gt;
\end{equation}&lt;br /&gt;
&lt;br /&gt;
El método utilizado en el desarrollo numérico de está expresión es el '''método de diferencias finitas'''&lt;br /&gt;
(Funciona calculando de manera aproximada las soluciones a las ecuaciones diferenciales usando ecuaciones diferenciales finitas para aproximar derivadas.).&lt;br /&gt;
&lt;br /&gt;
'''FUNCIÓN:'''&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
function v = deriva(x,y,t)&lt;br /&gt;
&lt;br /&gt;
n = length(x);&lt;br /&gt;
del=zeros(1,n);&lt;br /&gt;
&lt;br /&gt;
if t==1&lt;br /&gt;
    &lt;br /&gt;
    i=1;&lt;br /&gt;
    del(1)=(y(i)-y(i+1))/(-x(i)+x(i+1));&lt;br /&gt;
&lt;br /&gt;
    for i=2:n&lt;br /&gt;
    del(i)=(y(i)-y(i-1))/(x(i)-x(i-1));&lt;br /&gt;
    end &lt;br /&gt;
    &lt;br /&gt;
elseif t==-1&lt;br /&gt;
&lt;br /&gt;
    for i=1:n-1&lt;br /&gt;
    del(i)=(y(i)-y(i+1))/(x(i)-x(i+1));&lt;br /&gt;
    end &lt;br /&gt;
    &lt;br /&gt;
    i=n;&lt;br /&gt;
    del(i)=(y(i)-y(i-1))/(x(i)-x(i-1));&lt;br /&gt;
    &lt;br /&gt;
elseif t==0&lt;br /&gt;
    &lt;br /&gt;
    i=1;&lt;br /&gt;
    del(1)=(y(i)-y(i+1))/(+x(i)-x(i+1));&lt;br /&gt;
    &lt;br /&gt;
    for i=2:n-1&lt;br /&gt;
    del(i)=(y(i+1)-y(i-1))/(2*(x(i)-x(i-1)));&lt;br /&gt;
    end &lt;br /&gt;
    &lt;br /&gt;
    i=n;&lt;br /&gt;
    del(n)=(y(i)-y(i-1))/(x(i)-x(i-1));  &lt;br /&gt;
    &lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
v=del;&lt;br /&gt;
&lt;br /&gt;
end&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''PROGRAMA:'''&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
clc;clear all;&lt;br /&gt;
L=10;dx=0.1;N=L/dx;&lt;br /&gt;
x=dx:dx:L-dx;&lt;br /&gt;
xtot=0:dx:L;&lt;br /&gt;
T=40;dt=0.1;t=0:dt:T;&lt;br /&gt;
K=2*diag(ones(1,N-1))-diag(ones(1,N-2),1)-diag(ones(1,N-2),-1);&lt;br /&gt;
K=(1/dx^2)*K;&lt;br /&gt;
U=(2-abs((x*2/5-2)))';&lt;br /&gt;
V=(0*x)';&lt;br /&gt;
sol(1,:)=[0 U' 0];&lt;br /&gt;
for i=1:length(t)-1;&lt;br /&gt;
    U=U+dt*V;&lt;br /&gt;
    V=V-dt*K*U;&lt;br /&gt;
    sol(i+1,:)=[0 U' 0];&lt;br /&gt;
end&lt;br /&gt;
%DERIVAMOS LA SOLUCION EN x Y EN t:&lt;br /&gt;
dsol_dx=ones(size(sol));&lt;br /&gt;
for i=1:length(t)&lt;br /&gt;
    dsol_dx(i,:)=deriva(sol(i,:),xtot,0);&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
dsol_dt=ones(size(sol));&lt;br /&gt;
for i=1:length(xtot)&lt;br /&gt;
    dsol_dt(:,i)=deriva(sol(:,i),t,1); &lt;br /&gt;
end&lt;br /&gt;
%SUMAMOS LAS DERIVADAS AL CUADRADO E INTEGRAMOS:&lt;br /&gt;
dE=zeros(1,size(t,1));&lt;br /&gt;
for i=1:length(xtot)&lt;br /&gt;
    dE=dE+(dsol_dt(i,:).^2+dsol_dx(i,:).^2)*dx;&lt;br /&gt;
end&lt;br /&gt;
xtot=0:dx:L;&lt;br /&gt;
[xx,tt]=meshgrid(xtot,t);&lt;br /&gt;
figure(1)&lt;br /&gt;
surf(xx,tt,dsol_dx);&lt;br /&gt;
figure(2)&lt;br /&gt;
surf(xx,tt,dsol_dt);&lt;br /&gt;
plot(dE,t)&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
'''CÓDIGO PARA ENERGÍA CON TRAPECIO'''&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
clc;clear all;&lt;br /&gt;
L=10;dx=0.1;N=L/dx;&lt;br /&gt;
x=dx:dx:L-dx;&lt;br /&gt;
xtot=0:dx:L;&lt;br /&gt;
T=40;dt=0.1;t=0:dt:T;&lt;br /&gt;
K=2*diag(ones(1,N-1))-diag(ones(1,N-2),1)-diag(ones(1,N-2),-1);&lt;br /&gt;
K=(1/dx^2)*K;&lt;br /&gt;
u0=(2-abs(x*2/5-2))';&lt;br /&gt;
v0=zeros(N-1,1);&lt;br /&gt;
M=[zeros(N-1),eye(N-1);-K,zeros(N-1)];&lt;br /&gt;
G=[zeros(N-1,1);zeros(N-1,1)];&lt;br /&gt;
W0=[u0;v0];&lt;br /&gt;
WW=W0;&lt;br /&gt;
sol=zeros(length(t),N+1);&lt;br /&gt;
sol(1,:)=[0,W0(1:N-1)',0];&lt;br /&gt;
for j=1:length(t)-1&lt;br /&gt;
    WW=(eye(2*N-2)-dt/2*M)\(eye(2*N-2)+dt/2*M)*WW;&lt;br /&gt;
    sol(j+1,:)=[0,WW(1:N-1)',0];&lt;br /&gt;
end&lt;br /&gt;
%DERIVAMOS LA SOLUCION EN x Y EN t:&lt;br /&gt;
dsol_dx=ones(size(sol));&lt;br /&gt;
for i=1:length(t)&lt;br /&gt;
    dsol_dx(i,:)=deriva(sol(i,:),xtot,0);&lt;br /&gt;
end&lt;br /&gt;
 &lt;br /&gt;
dsol_dt=ones(size(sol));&lt;br /&gt;
for i=1:length(xtot)&lt;br /&gt;
    dsol_dt(:,i)=deriva(sol(:,i),t,1); &lt;br /&gt;
end&lt;br /&gt;
%SUMAMOS LAS DERIVADAS AL CUADRADO E INTEGRAMOS:&lt;br /&gt;
dE=zeros(1,size(t,1));&lt;br /&gt;
for i=1:length(xtot)&lt;br /&gt;
    dE=dE+(dsol_dt(i,:).^2+dsol_dx(i,:).^2)*dx;&lt;br /&gt;
end&lt;br /&gt;
xtot=0:dx:L;&lt;br /&gt;
[xx,tt]=meshgrid(xtot,t);&lt;br /&gt;
figure(1)&lt;br /&gt;
surf(xx,tt,dsol_dx);&lt;br /&gt;
figure(2)&lt;br /&gt;
surf(xx,tt,dsol_dt);&lt;br /&gt;
plot(dE,t)&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
'''CÓDIGO PARA ENERGÍA CON EULER MODIFICADOO'''&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
clc;clear all;&lt;br /&gt;
L=10;dx=0.1;N=L/dx;&lt;br /&gt;
x=dx:dx:L-dx;&lt;br /&gt;
xtot=0:dx:L;&lt;br /&gt;
T=40;dt=0.1;t=0:dt:T;&lt;br /&gt;
K=2*diag(ones(1,N-1))-diag(ones(1,N-2),1)-diag(ones(1,N-2),-1);&lt;br /&gt;
K=(1/dx^2)*K;&lt;br /&gt;
F=zeros(N-1,1);&lt;br /&gt;
u0=(2-abs(x*2/5-2))';&lt;br /&gt;
v0=zeros(N-1,1);&lt;br /&gt;
M=[zeros(N-1),eye(N-1);-K,zeros(N-1)];&lt;br /&gt;
G=[zeros(N-1,1);F];&lt;br /&gt;
W0=[u0;v0];&lt;br /&gt;
WW=W0;&lt;br /&gt;
sol=zeros(length(t),N+1);&lt;br /&gt;
sol(1,:)=[0,W0(1:N-1)',0];&lt;br /&gt;
for j=1:length(t)-1&lt;br /&gt;
    k1=[zeros(N-1), eye(N-1); -K, -K.*dt];&lt;br /&gt;
    k2=[zeros(N-1), eye(N-1); -K, -K.*dt];&lt;br /&gt;
    WW=WW+(k1+k2)*WW.*(dt/2);&lt;br /&gt;
    sol(j+1,:)=[0,WW(1:N-1)',0];&lt;br /&gt;
end&lt;br /&gt;
%DERIVAMOS LA SOLUCION EN x Y EN t:&lt;br /&gt;
dsol_dx=ones(size(sol));&lt;br /&gt;
for i=1:length(t)&lt;br /&gt;
    dsol_dx(i,:)=deriva(sol(i,:),xtot,0);&lt;br /&gt;
end&lt;br /&gt;
 &lt;br /&gt;
dsol_dt=ones(size(sol));&lt;br /&gt;
for i=1:length(xtot)&lt;br /&gt;
    dsol_dt(:,i)=deriva(sol(:,i),t,1); &lt;br /&gt;
end&lt;br /&gt;
%SUMAMOS LAS DERIVADAS AL CUADRADO E INTEGRAMOS:&lt;br /&gt;
dE=zeros(1,size(t,1));&lt;br /&gt;
for i=1:length(xtot)&lt;br /&gt;
    dE=dE+(dsol_dt(i,:).^2+dsol_dx(i,:).^2)*dx;&lt;br /&gt;
end&lt;br /&gt;
xtot=0:dx:L;&lt;br /&gt;
[xx,tt]=meshgrid(xtot,t);&lt;br /&gt;
figure(1)&lt;br /&gt;
surf(xx,tt,dsol_dx);&lt;br /&gt;
figure(2)&lt;br /&gt;
surf(xx,tt,dsol_dt);&lt;br /&gt;
plot(dE,t)&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
El resultado habría de ser una gráfica que representase la evolución de la energía de la cuerda frente al transcurso del tiempo. No obstante, en nuestra resolución aparece una gráfica en blanco que ajudicamos o a un posible error en el código, o que podemos interpretar como que la energía tiende a infinito.&lt;br /&gt;
Dicha gráfica representaría una energía constante debido a la ausencia de fuerzas externas y rozamientos viscosos.&lt;br /&gt;
&lt;br /&gt;
== Aplicaciones. ==&lt;br /&gt;
&lt;br /&gt;
==== Sumersión en un medio viscoso. ====&lt;br /&gt;
&lt;br /&gt;
Suponemos ahora la inmersión del cable en una medio viscoso. Este medio viscoso produce un amortiguamiento en el movimiento del cable, con lo que la anterior ecuación diferencial se convertiría en &lt;br /&gt;
\begin{equation}&lt;br /&gt;
u_{tt}-u_{xx}+au_{t}=0&lt;br /&gt;
\end{equation} &lt;br /&gt;
, siendo '''&amp;lt;math&amp;gt; a  &amp;lt;/math&amp;gt;''' una constante de amortiguamiento propia del medio viscoso.&lt;br /&gt;
Puesto que la función '''&amp;lt;math&amp;gt; u(x,t)  &amp;lt;/math&amp;gt;''' se ve afectada ahora por el medio viscoso, y más directamente, por la constante '''&amp;lt;math&amp;gt; a  &amp;lt;/math&amp;gt;''' que actúa en su nombre, la energía del cable ,que se expresaba como una integral en función de '''&amp;lt;math&amp;gt; u(x,t)  &amp;lt;/math&amp;gt;''' también se va a ver afectada:&lt;br /&gt;
\begin{equation}&lt;br /&gt;
E(t) = \int_{0}^{L} (u_{t}^{2}(x,t)+ u_{x}^{2}(x,t)) \cdot dx&lt;br /&gt;
\end{equation}&lt;br /&gt;
&lt;br /&gt;
El obetivo del siguiente código será hallar una representación de la evolución de la energía en función del tiempo a raíz de la modificación de la función '''&amp;lt;math&amp;gt; u(x,t)  &amp;lt;/math&amp;gt;'''. Para ello asignaremos distintos valores a la constante '''&amp;lt;math&amp;gt; a  &amp;lt;/math&amp;gt;'''. Éstos van a ser:&lt;br /&gt;
'''&amp;lt;math&amp;gt; a=0  &amp;lt;/math&amp;gt;''' (la energía para este valor resultará igual que la hallada en el apartado anterior)&lt;br /&gt;
'''&amp;lt;math&amp;gt; a=1  &amp;lt;/math&amp;gt;'''&lt;br /&gt;
'''&amp;lt;math&amp;gt; a=4  &amp;lt;/math&amp;gt;'''&lt;br /&gt;
'''&amp;lt;math&amp;gt; a=10  &amp;lt;/math&amp;gt;'''&lt;br /&gt;
''&amp;lt;math&amp;gt; a=100  &amp;lt;/math&amp;gt;'''&lt;br /&gt;
&lt;br /&gt;
El procedimiento numérico volverá a seguir el método de '''diferencias finitas''':&lt;br /&gt;
&lt;br /&gt;
'''PROGRAMA:'''&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
clc;clear all;close all;&lt;br /&gt;
%Datos&lt;br /&gt;
dx=0.1;L=10;&lt;br /&gt;
dt=0.001;NT=40;&lt;br /&gt;
A=[0,1,4,10,100];&lt;br /&gt;
x=0:dx:L;&lt;br /&gt;
t=0:dt:NT;&lt;br /&gt;
ENE=zeros(5,length(t));&lt;br /&gt;
&lt;br /&gt;
%Condición de contorno: U(0,t)=U(L,t)=0;&lt;br /&gt;
&lt;br /&gt;
for k=1:5&lt;br /&gt;
&lt;br /&gt;
%Vector solución y derivada temporal de la solución&lt;br /&gt;
%t=0&amp;lt;&amp;gt;T(1) es donde se guardan las condiciones iniciales&lt;br /&gt;
&lt;br /&gt;
U=zeros(length(t),length(x));&lt;br /&gt;
Dt_U=zeros(length(t),length(x));&lt;br /&gt;
Dx_U=zeros(length(t),length(x));    &lt;br /&gt;
&lt;br /&gt;
%Condición inicial: Estiramos 2 m del centro&lt;br /&gt;
%Modelizado como dos rectas antisimétricas que se cortan en x=5 y&lt;br /&gt;
%sujetas en x=0 y x=L.&lt;br /&gt;
&lt;br /&gt;
U(1,:)=2*sin(x*pi/L);&lt;br /&gt;
Dt_U(1,:)=zeros(1,length(x))';&lt;br /&gt;
D2t_U=Ecuacion5(U(1,:),x,-1);&lt;br /&gt;
&lt;br /&gt;
%Inicio del esquema numérico&lt;br /&gt;
%empieza en 2 ya que el 1 es la cond. inicial&lt;br /&gt;
&lt;br /&gt;
%ESQUEMA NEWMARK&lt;br /&gt;
&lt;br /&gt;
 for i=2:length(t)&lt;br /&gt;
    iter=[k,i]&lt;br /&gt;
    Ua=U(i-1,:);&lt;br /&gt;
    Dt_Ua=Dt_U(i-1,:);&lt;br /&gt;
    D2t_Ua=D2t_U;&lt;br /&gt;
    %Derivada segunda respecto del tiempo en el instante t, se obtiene de&lt;br /&gt;
    %eq. diferencial u_tt=f(x,u,u_x,u_xx)&lt;br /&gt;
    D2t_U=Ecuacion5(U(i-1,:),x,t(i))-A(k)*Dt_Ua;&lt;br /&gt;
    %Derivada primera&lt;br /&gt;
    Dt_U(i,:)=Dt_Ua+0.5*dt*(D2t_Ua+D2t_U);&lt;br /&gt;
    %Ecuacion&lt;br /&gt;
    U(i,:) = Ua+Dt_Ua*dt+(1/6)*(D2t_Ua+D2t_U)*dt^2;&lt;br /&gt;
 end&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 %ENERGIA&lt;br /&gt;
 for i=1:length(t)&lt;br /&gt;
    Dx_U(i,:)=deriva(x,U(i,:),0);&lt;br /&gt;
 end&lt;br /&gt;
dE=zeros(length(t),1);&lt;br /&gt;
for i=1:length(x)&lt;br /&gt;
    dE=dE+(Dt_U(:,i).^2+Dx_U(:,i).^2)*dx;&lt;br /&gt;
end&lt;br /&gt;
 ENE(k,:)=dE;&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
 figure(1)&lt;br /&gt;
 hold on&lt;br /&gt;
 grid&lt;br /&gt;
 aa=find(x==L/4);&lt;br /&gt;
 ab=find(x==3*L/4);&lt;br /&gt;
 legend('A=0','A=1','A=4','A=10','A=100');&lt;br /&gt;
 plot(t,ENE(1,:),t,ENE(2,:),t,ENE(3,:),t,ENE(4,:),t,ENE(5,:));&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''FUNCIONES:'''&lt;br /&gt;
DERIVA:&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
function v = deriva(x,y,t)&lt;br /&gt;
n = length(x);&lt;br /&gt;
del=zeros(1,n);&lt;br /&gt;
if t==1&lt;br /&gt;
    i=1;&lt;br /&gt;
    del(1)=(y(i)-y(i+1))/(-x(i)+x(i+1));&lt;br /&gt;
    for i=2:n&lt;br /&gt;
    del(i)=(y(i)-y(i-1))/(x(i)-x(i-1));&lt;br /&gt;
    end &lt;br /&gt;
elseif t==-1&lt;br /&gt;
    for i=1:n-1&lt;br /&gt;
    del(i)=(y(i)-y(i+1))/(x(i)-x(i+1));&lt;br /&gt;
    end &lt;br /&gt;
    i=n;&lt;br /&gt;
    del(i)=(y(i)-y(i-1))/(x(i)-x(i-1));&lt;br /&gt;
elseif t==0&lt;br /&gt;
    i=1;&lt;br /&gt;
    del(1)=(y(i)-y(i+1))/(+x(i)-x(i+1));&lt;br /&gt;
    for i=2:n-1&lt;br /&gt;
    del(i)=(y(i+1)-y(i-1))/(2*(x(i)-x(i-1)));&lt;br /&gt;
    end &lt;br /&gt;
    i=n;&lt;br /&gt;
    del(n)=(y(i)-y(i-1))/(x(i)-x(i-1));  &lt;br /&gt;
end&lt;br /&gt;
v=del;&lt;br /&gt;
end&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
'''ECUACIÓN 5:'''&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
function [ V ] = Ecuacion5( u,x,t )&lt;br /&gt;
%se guarda aquí la ecuación diferencial del tipo u_tt=f(x,u,u_x,u_xx)&lt;br /&gt;
%INCLUIDAS LAS CC AQUÍ&lt;br /&gt;
%PARA u_tt=u_xx&lt;br /&gt;
%CC: u(0,t)=u(L,t)=0;&lt;br /&gt;
&lt;br /&gt;
Ax=x(2)-x(1);&lt;br /&gt;
n=length(u);&lt;br /&gt;
V=zeros(1,n);&lt;br /&gt;
&lt;br /&gt;
%Las condiciones de contorno vienen en x(1)=0 y x(Nx)=L&lt;br /&gt;
u(1)=0;&lt;br /&gt;
&lt;br /&gt;
if(t==-1)&lt;br /&gt;
    u(n)=0;&lt;br /&gt;
else&lt;br /&gt;
    u(n)=0;&lt;br /&gt;
    %u(n)=sin(2*pi*F0*t);&lt;br /&gt;
    %u(n)=(1/(b*Ax-1))*u(n-1);&lt;br /&gt;
end&lt;br /&gt;
for i=2:n-1&lt;br /&gt;
    &lt;br /&gt;
    V(i)=(1/Ax^2)*(u(i+1)-2*u(i)+u(i-1));&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
i=1;&lt;br /&gt;
V(i)=(1/Ax^2)*(u(i+2)-2*u(i+1));&lt;br /&gt;
i=n;&lt;br /&gt;
V(i)=(1/Ax^2)*(u(i)-2*u(i-1)+u(i-2));&lt;br /&gt;
end&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
La gráfica buscada es:&lt;br /&gt;
[[Archivo:Graficadelaenergiaenunmedioviscoso.png|700px|thumb|centre|Gráfica de la energía(ordenadas) del cable respecto del tiempo (Abcisas).]]&lt;br /&gt;
En la gráfica se aprecian cuatro curvas de distintos colores correspondientes a '''&amp;lt;math&amp;gt; a=0  &amp;lt;/math&amp;gt;''','''&amp;lt;math&amp;gt; a=1  &amp;lt;/math&amp;gt;''','''&amp;lt;math&amp;gt; a=4  &amp;lt;/math&amp;gt;''','''&amp;lt;math&amp;gt; a=10  &amp;lt;/math&amp;gt;''',''&amp;lt;math&amp;gt; a=100  &amp;lt;/math&amp;gt;'''.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Como podemos apreciar el valor de la energía disminuye a medida que aumentamos el valor de &amp;quot;a&amp;quot;. Esto es debido a que &amp;quot;a&amp;quot; define el coeficiente de amortiguamiento del líquido en el cual se encuentra la cuerda. Luego, dicha disminución de energía se produce por la disipación en el medio de gran parte de la energía inicial.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==== Sujeción a una estructura de vibración periódica. ====&lt;br /&gt;
&lt;br /&gt;
En este caso supondremos que el extremo derecho que sujeta el cable está sometido a una vibración periódica de frecuencia  &amp;lt;math&amp;gt; F_0 &amp;lt;/math&amp;gt; [Herzios]. Al haber una vibración externa que afecta directamente al cable la expresión de su movimiento y, por consecuencia, de su energía, se va a ver modificada. Nosotros incluiremos esta modificación en la función &amp;lt;math&amp;gt; f(t) &amp;lt;/math&amp;gt; de problema de valor inicial que venimos tratando. Esta función va a pasar a ser: &lt;br /&gt;
\begin{equation}&lt;br /&gt;
f(t)= sin(2 \pi F_0t)&lt;br /&gt;
\end{equation}&lt;br /&gt;
&lt;br /&gt;
El objetivo será el de ver cómo afecta esta alteración en el desarrollo de la energía del cable frente al tiempo.&lt;br /&gt;
Para nuestro cálculo numérico especificaremos para las siguientes situaciones:&lt;br /&gt;
En primer lugar, para: &amp;lt;math&amp;gt; F_0= \frac{1}{L} + 0,01 &amp;lt;/math&amp;gt;&lt;br /&gt;
Después,para: &amp;lt;math&amp;gt; F_0= \frac{1}{L} - 0,01 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Y para finalizar, lo estudiaremos en un intervalo de tiempo de '''t=0''' hasta '''t=60''' : &amp;lt;math&amp;gt;t \in (0,60)&amp;lt;/math&amp;gt; [segundos].&lt;br /&gt;
&lt;br /&gt;
El código matemático para matlab / octave:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''PROGRAMA:'''&lt;br /&gt;
{{matlab|codigo= &lt;br /&gt;
clc;clear all;close all;&lt;br /&gt;
&lt;br /&gt;
%Datos&lt;br /&gt;
&lt;br /&gt;
dx=0.1;L=10;dt=0.0001;NT=60;&lt;br /&gt;
A=[0,1,4,10,100];&lt;br /&gt;
x=0:dx:L;t=0:dt:NT;&lt;br /&gt;
ENE=zeros(5,length(t));&lt;br /&gt;
&lt;br /&gt;
%Condición de contorno: U(0,t)=U(L,t)=0;&lt;br /&gt;
for k=1&lt;br /&gt;
%Vector solución y derivada temporal de la solución&lt;br /&gt;
%t=0&amp;lt;&amp;gt;T(1) es donde se guardan las condiciones iniciales&lt;br /&gt;
&lt;br /&gt;
U=zeros(length(t),length(x));&lt;br /&gt;
Dt_U=zeros(length(t),length(x));&lt;br /&gt;
Dx_U=zeros(length(t),length(x));&lt;br /&gt;
&lt;br /&gt;
%Condición inicial: Estiramos 2 m del centro&lt;br /&gt;
%Modelizado como dos rectas antisimétricas que se cortan en x=5 y&lt;br /&gt;
%sujetas en x=0 y x=L.&lt;br /&gt;
&lt;br /&gt;
U(1,:)=2*sin(x*pi/L);&lt;br /&gt;
Dt_U(1,:)=zeros(1,length(x))';&lt;br /&gt;
D2t_U=Ecuacion6(U(1,:),x,-1);&lt;br /&gt;
&lt;br /&gt;
%Inicio del esquema numérico&lt;br /&gt;
%empieza en 2 ya que el 1 es la cond. inicial&lt;br /&gt;
&lt;br /&gt;
%ESQUEMA NEWMARK&lt;br /&gt;
&lt;br /&gt;
 for i=2:length(t)&lt;br /&gt;
    iter=[k,i]&lt;br /&gt;
    Ua=U(i-1,:);&lt;br /&gt;
    Dt_Ua=Dt_U(i-1,:);&lt;br /&gt;
    D2t_Ua=D2t_U;&lt;br /&gt;
    %Derivada segunda respecto del tiempo en el instante t, se obtiene de&lt;br /&gt;
    %eq. diferencial u_tt=f(x,u,u_x,u_xx)&lt;br /&gt;
    D2t_U=Ecuacion6(U(i-1,:),x,t(i))-A(k)*Dt_Ua;&lt;br /&gt;
    %Derivada primera&lt;br /&gt;
    Dt_U(i,:)=Dt_Ua+0.5*dt*(D2t_Ua+D2t_U);&lt;br /&gt;
    %Ecuacion&lt;br /&gt;
    U(i,:) = Ua+Dt_Ua*dt+(1/6)*(D2t_Ua+D2t_U)*dt^2;&lt;br /&gt;
 end&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 %ENERGIA&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 for i=1:length(t)&lt;br /&gt;
    Dx_U(i,:)=deriva(x,U(i,:),0);&lt;br /&gt;
 end&lt;br /&gt;
dE=zeros(length(t),1);&lt;br /&gt;
for i=1:length(x)&lt;br /&gt;
    dE=dE+(Dt_U(:,i).^2+Dx_U(:,i).^2)*dx;&lt;br /&gt;
end&lt;br /&gt;
 ENE(k,:)=dE;&lt;br /&gt;
end&lt;br /&gt;
 figure(1)&lt;br /&gt;
 hold on&lt;br /&gt;
 grid&lt;br /&gt;
 aa=find(x==L/4);&lt;br /&gt;
 ab=find(x==3*L/4);&lt;br /&gt;
 imagesc(U)&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''FUNCIONES:'''&lt;br /&gt;
&lt;br /&gt;
DERIVA:&lt;br /&gt;
{{matlab|codigo= &lt;br /&gt;
function v = deriva(x,y,t)&lt;br /&gt;
n = length(x);&lt;br /&gt;
del=zeros(1,n);&lt;br /&gt;
if t==1&lt;br /&gt;
    i=1;&lt;br /&gt;
    del(1)=(y(i)-y(i+1))/(-x(i)+x(i+1));&lt;br /&gt;
    for i=2:n&lt;br /&gt;
    del(i)=(y(i)-y(i-1))/(x(i)-x(i-1));&lt;br /&gt;
    end &lt;br /&gt;
elseif t==-1&lt;br /&gt;
    for i=1:n-1&lt;br /&gt;
    del(i)=(y(i)-y(i+1))/(x(i)-x(i+1));&lt;br /&gt;
    end &lt;br /&gt;
    i=n;&lt;br /&gt;
    del(i)=(y(i)-y(i-1))/(x(i)-x(i-1));&lt;br /&gt;
elseif t==0&lt;br /&gt;
    i=1;&lt;br /&gt;
    del(1)=(y(i)-y(i+1))/(+x(i)-x(i+1));&lt;br /&gt;
    for i=2:n-1&lt;br /&gt;
    del(i)=(y(i+1)-y(i-1))/(2*(x(i)-x(i-1)));&lt;br /&gt;
    end &lt;br /&gt;
    i=n;&lt;br /&gt;
    del(n)=(y(i)-y(i-1))/(x(i)-x(i-1));  &lt;br /&gt;
end&lt;br /&gt;
v=del;&lt;br /&gt;
end&lt;br /&gt;
}}&lt;br /&gt;
'''ECUACIÓN 6:'''&lt;br /&gt;
&lt;br /&gt;
function [ V ] = Ecuacion6( u,x,t )&lt;br /&gt;
{{matlab|codigo= &lt;br /&gt;
&lt;br /&gt;
%se guarda aquí la ecuación diferencial del tipo u_tt=f(x,u,u_x,u_xx)&lt;br /&gt;
%INCLUIDAS LAS CC AQUÍ!&lt;br /&gt;
%PARA u_tt=u_xx&lt;br /&gt;
%CC: u(0,t)=u(L,t)=0;&lt;br /&gt;
&lt;br /&gt;
Ax=x(2)-x(1);&lt;br /&gt;
n=length(u);&lt;br /&gt;
V=zeros(1,n);&lt;br /&gt;
F0=(1/x(n))+0.01;&lt;br /&gt;
b=-2;&lt;br /&gt;
&lt;br /&gt;
%Las condiciones de contorno vienen en x(1)=0 y x(Nx)=L&lt;br /&gt;
&lt;br /&gt;
u(1)=0;&lt;br /&gt;
if(t==-1)&lt;br /&gt;
    u(n)=0;&lt;br /&gt;
else&lt;br /&gt;
    %u(n)=0;&lt;br /&gt;
    u(n)=sin(2*pi*F0*t);&lt;br /&gt;
    %u(n)=(1/(b*Ax-1))*u(n-1);&lt;br /&gt;
end&lt;br /&gt;
for i=2:n-1&lt;br /&gt;
    V(i)=(1/Ax^2)*(u(i+1)-2*u(i)+u(i-1));&lt;br /&gt;
end&lt;br /&gt;
i=1;&lt;br /&gt;
V(i)=(1/Ax^2)*(u(i+2)-2*u(i+1));&lt;br /&gt;
i=n;&lt;br /&gt;
V(i)=(1/Ax^2)*(u(i)-2*u(i-1)+u(i-2));&lt;br /&gt;
end&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:6.1.png|700px|thumb|centre|Gráfica en tres dimensiones de la energía de un cable cuyo extremo derecho está sometido a una vibración externa periódica para F_0=1/L +0,1]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
En esta gráfica observamos las fluctuaciones de la energía al imponer la condición de contorno de carácter sinusoidal. Dichas fluctuaciones se diferencian ya que los tonos más cálidos corresponden a los máximos y los fríos a los mínimos.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''function [ V ] = Ecuacion6( u,x,t )'''&lt;br /&gt;
{{matlab|codigo= &lt;br /&gt;
%se guarda aquí la ecuación diferencial del tipo u_tt=f(x,u,u_x,u_xx)&lt;br /&gt;
%INCLUIDAS LAS CC AQUÍ!&lt;br /&gt;
%PARA u_tt=u_xx&lt;br /&gt;
%CC: u(0,t)=u(L,t)=0;&lt;br /&gt;
&lt;br /&gt;
Ax=x(2)-x(1);&lt;br /&gt;
n=length(u);&lt;br /&gt;
V=zeros(1,n);&lt;br /&gt;
F0=(1/x(n))-0.01;&lt;br /&gt;
b=-2;&lt;br /&gt;
&lt;br /&gt;
%Las condiciones de contorno vienen en x(1)=0 y x(Nx)=L&lt;br /&gt;
&lt;br /&gt;
u(1)=0;&lt;br /&gt;
if(t==-1)&lt;br /&gt;
    u(n)=0;&lt;br /&gt;
else&lt;br /&gt;
    %u(n)=0;&lt;br /&gt;
    u(n)=sin(2*pi*F0*t);&lt;br /&gt;
    %u(n)=(1/(b*Ax-1))*u(n-1);&lt;br /&gt;
end&lt;br /&gt;
for i=2:n-1&lt;br /&gt;
    V(i)=(1/Ax^2)*(u(i+1)-2*u(i)+u(i-1));&lt;br /&gt;
end&lt;br /&gt;
i=1;&lt;br /&gt;
V(i)=(1/Ax^2)*(u(i+2)-2*u(i+1));&lt;br /&gt;
i=n;&lt;br /&gt;
V(i)=(1/Ax^2)*(u(i)-2*u(i-1)+u(i-2));&lt;br /&gt;
end&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:6.2.png|700px|thumb|centre|Gráfica en tres dimensiones de la energía de un cable cuyo extremo derecho está sometido a una vibración externa periódica.]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
En esta gráfica observamos un caso prácticamente similar al anterior y vemos que únicamente lo que varían son las posiciones de los máximos y mínimos de la energía en la cuerda.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''function [ V ] = Ecuacion6( u,x,t )'''&lt;br /&gt;
{{matlab|codigo= &lt;br /&gt;
%se guarda aquí la ecuación diferencial del tipo u_tt=f(x,u,u_x,u_xx)&lt;br /&gt;
%INCLUIDAS LAS CC AQUÍ!&lt;br /&gt;
%PARA u_tt=u_xx&lt;br /&gt;
%CC: u(0,t)=u(L,t)=0;&lt;br /&gt;
&lt;br /&gt;
Ax=x(2)-x(1);&lt;br /&gt;
n=length(u);&lt;br /&gt;
V=zeros(1,n);&lt;br /&gt;
F0=(1/x(n));&lt;br /&gt;
b=-2;&lt;br /&gt;
&lt;br /&gt;
%Las condiciones de contorno vienen en x(1)=0 y x(Nx)=L&lt;br /&gt;
&lt;br /&gt;
u(1)=0;&lt;br /&gt;
if(t==-1)&lt;br /&gt;
    u(n)=0;&lt;br /&gt;
else&lt;br /&gt;
    %u(n)=0;&lt;br /&gt;
    u(n)=sin(2*pi*F0*t);&lt;br /&gt;
    %u(n)=(1/(b*Ax-1))*u(n-1);&lt;br /&gt;
end&lt;br /&gt;
for i=2:n-1&lt;br /&gt;
    V(i)=(1/Ax^2)*(u(i+1)-2*u(i)+u(i-1));&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
i=1;&lt;br /&gt;
V(i)=(1/Ax^2)*(u(i+2)-2*u(i+1));&lt;br /&gt;
i=n;&lt;br /&gt;
V(i)=(1/Ax^2)*(u(i)-2*u(i-1)+u(i-2));&lt;br /&gt;
end&lt;br /&gt;
}}&lt;br /&gt;
 &lt;br /&gt;
La gráfica resultante es la siguiente:&lt;br /&gt;
[[Archivo:6.3.png|700px|thumb|centre|Gráfica en tres dimensiones de la energía de un cable cuyo extremo derecho está sometido a una vibración externa periódica.]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
En este último ensayo se puede apreciar como la energía no presenta grandes variaciones, manteniéndose dichas fluctuaciones en valores próximos entre sí, estando la energía estabilizada y manteniéndose prácticamente constante.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==== Sujeción a un aparato que responde a una vibración externa. ====&lt;br /&gt;
&lt;br /&gt;
La siguiente situación que vamos a representar a modelar a través de ecuaciones diferenciales va a ser la siguiente: supondremos que el cable de la anterior situación (que recibía en su extremo derecho una vibración periódica de &amp;lt;math&amp;gt; F_0 &amp;lt;/math&amp;gt; [Herzios])envía una respuesta a la vibración que recibe. Esta situación la vamos a representar como un cambio en la condición de contorno; ésta va a pasar a ser: &amp;lt;math&amp;gt; u_x(L,t)=bu(L,t) &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
El objetivo, de nuevo será representar la evolución de la energía respecto del tiempo y ver si este cambio en el problema se ve reflejado en su representación. &lt;br /&gt;
En el código numérico, no obstante, la situación de &amp;lt;math&amp;gt; u_x(L,t)=bu(L,t) &amp;lt;/math&amp;gt; la vamos a aproximar por la siguiente expresión:&lt;br /&gt;
&amp;lt;math&amp;gt; u_x(L,t)-bu(L,t)  \cong  \frac{u_{N+1}(t)-u_{N-1}(t)}{2h-u_N(t)} &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
En la resolución del problema emplearemos de nuevo la condición inicial de sujetar el cable por el centro y elevarlo 2 m perpendicularmente: &lt;br /&gt;
&amp;lt;math&amp;gt; u(x,0)=g(x)= 2- |\frac{2}{5}x -2| &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Y además obtendremos el resultado para los dos valores siguientes de &amp;lt;math&amp;gt;b&amp;lt;/math&amp;gt; :&lt;br /&gt;
Para &amp;lt;math&amp;gt; b=2 &amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt; b=-2 &amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
El código numérico de matlab/octave es:&lt;br /&gt;
&lt;br /&gt;
'''PROGRAMA:'''&lt;br /&gt;
{{matlab|codigo= &lt;br /&gt;
clc;clear all;close all;&lt;br /&gt;
&lt;br /&gt;
%Datos&lt;br /&gt;
dx=0.1;L=10;dt=0.0001;NT=40;&lt;br /&gt;
A=[0,1,4,10,100];&lt;br /&gt;
x=0:dx:L;t=0:dt:NT;&lt;br /&gt;
ENE=zeros(5,length(t));&lt;br /&gt;
&lt;br /&gt;
%Condición de contorno: U(0,t)=U(L,t)=0;&lt;br /&gt;
for k=1&lt;br /&gt;
&lt;br /&gt;
%Vector solución y derivada temporal de la solución&lt;br /&gt;
%t=0&amp;lt;&amp;gt;T(1) es donde se guardan las condiciones iniciales&lt;br /&gt;
&lt;br /&gt;
U=zeros(length(t),length(x));&lt;br /&gt;
Dt_U=zeros(length(t),length(x));&lt;br /&gt;
Dx_U=zeros(length(t),length(x));    &lt;br /&gt;
&lt;br /&gt;
%Condición inicial: Estiramos 2 m del centro&lt;br /&gt;
%Modelizado como dos rectas antisimétricas que se cortan en x=5 y&lt;br /&gt;
%sujetas en x=0 y x=L.&lt;br /&gt;
&lt;br /&gt;
U(1,:)=2*sin(x*pi/L);&lt;br /&gt;
Dt_U(1,:)=zeros(1,length(x))';&lt;br /&gt;
D2t_U=Ecuacion7(U(1,:),x,-1);&lt;br /&gt;
&lt;br /&gt;
%Inicio del esquema numérico&lt;br /&gt;
%empieza en 2 ya que el 1 es la cond. inicial&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
%ESQUEMA NEWMARK&lt;br /&gt;
 for i=2:length(t)&lt;br /&gt;
    iter=[k,i]&lt;br /&gt;
    Ua=U(i-1,:);&lt;br /&gt;
    Dt_Ua=Dt_U(i-1,:);&lt;br /&gt;
    D2t_Ua=D2t_U;&lt;br /&gt;
&lt;br /&gt;
    %Derivada segunda respecto del tiempo en el instante t, se obtiene de&lt;br /&gt;
    %eq. diferencial u_tt=f(x,u,u_x,u_xx)&lt;br /&gt;
&lt;br /&gt;
    D2t_U=Ecuacion7(U(i-1,:),x,t(i))-A(k)*Dt_Ua;&lt;br /&gt;
&lt;br /&gt;
    %Derivada primera&lt;br /&gt;
    Dt_U(i,:)=Dt_Ua+0.5*dt*(D2t_Ua+D2t_U);&lt;br /&gt;
&lt;br /&gt;
    %Ecuacion&lt;br /&gt;
    U(i,:) = Ua+Dt_Ua*dt+(1/6)*(D2t_Ua+D2t_U)*dt^2;&lt;br /&gt;
 end&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 %ENERGIA&lt;br /&gt;
 for i=1:length(t)&lt;br /&gt;
    Dx_U(i,:)=deriva(x,U(i,:),0);&lt;br /&gt;
 end&lt;br /&gt;
dE=zeros(length(t),1);&lt;br /&gt;
for i=1:length(x)&lt;br /&gt;
    dE=dE+(Dt_U(:,i).^2+Dx_U(:,i).^2)*dx;&lt;br /&gt;
end&lt;br /&gt;
 ENE(k,:)=dE;&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
 figure(1)&lt;br /&gt;
 hold on&lt;br /&gt;
 grid&lt;br /&gt;
 aa=find(x==L/4);&lt;br /&gt;
 ab=find(x==3*L/4);&lt;br /&gt;
 plot(t,ENE(1,:))&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
'''FUNCIONES:'''&lt;br /&gt;
'''function v = deriva(x,y,t)'''&lt;br /&gt;
{{matlab|codigo= &lt;br /&gt;
n = length(x);&lt;br /&gt;
del=zeros(1,n);&lt;br /&gt;
if t==1&lt;br /&gt;
    i=1;&lt;br /&gt;
    del(1)=(y(i)-y(i+1))/(-x(i)+x(i+1));&lt;br /&gt;
    for i=2:n&lt;br /&gt;
    del(i)=(y(i)-y(i-1))/(x(i)-x(i-1));&lt;br /&gt;
    end &lt;br /&gt;
elseif t==-1&lt;br /&gt;
    for i=1:n-1&lt;br /&gt;
    del(i)=(y(i)-y(i+1))/(x(i)-x(i+1));&lt;br /&gt;
    end &lt;br /&gt;
    i=n;&lt;br /&gt;
    del(i)=(y(i)-y(i-1))/(x(i)-x(i-1));&lt;br /&gt;
elseif t==0&lt;br /&gt;
    i=1;&lt;br /&gt;
    del(1)=(y(i)-y(i+1))/(+x(i)-x(i+1));&lt;br /&gt;
    for i=2:n-1&lt;br /&gt;
    del(i)=(y(i+1)-y(i-1))/(2*(x(i)-x(i-1)));&lt;br /&gt;
    end &lt;br /&gt;
    i=n;&lt;br /&gt;
    del(n)=(y(i)-y(i-1))/(x(i)-x(i-1));  &lt;br /&gt;
end&lt;br /&gt;
v=del;&lt;br /&gt;
end&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
'''function [ V ] = Ecuacion7( u,x,t )'''&lt;br /&gt;
{{matlab|codigo= &lt;br /&gt;
%se guarda aquí la ecuación diferencial del tipo u_tt=f(x,u,u_x,u_xx)&lt;br /&gt;
%INCLUIDAS LAS CC AQUÍ!&lt;br /&gt;
%PARA u_tt=u_xx&lt;br /&gt;
%CC: u(0,t)=u(L,t)=0;&lt;br /&gt;
&lt;br /&gt;
Ax=x(2)-x(1);&lt;br /&gt;
n=length(u);&lt;br /&gt;
V=zeros(1,n);&lt;br /&gt;
F0=(1/x(n));&lt;br /&gt;
b=2;&lt;br /&gt;
&lt;br /&gt;
%Las condiciones de contorno vienen en x(1)=0 y x(Nx)=L&lt;br /&gt;
u(1)=0;&lt;br /&gt;
if(t==-1)&lt;br /&gt;
    u(n)=0;&lt;br /&gt;
else&lt;br /&gt;
    %u(n)=0;&lt;br /&gt;
    %u(n)=sin(2*pi*F0*t);&lt;br /&gt;
    u(n)=(1/(b*Ax-1))*u(n-1);&lt;br /&gt;
end&lt;br /&gt;
for i=2:n-1&lt;br /&gt;
    V(i)=(1/Ax^2)*(u(i+1)-2*u(i)+u(i-1));&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
i=1;&lt;br /&gt;
V(i)=(1/Ax^2)*(u(i+2)-2*u(i+1));&lt;br /&gt;
i=n;&lt;br /&gt;
V(i)=(1/Ax^2)*(u(i)-2*u(i-1)+u(i-2));&lt;br /&gt;
end&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:7.1.png|700px|thumb|centre|Gráfica de la energía (ordenadas) de un cable frente al tiempo (abcisas) que recibe una vibración en su extremo derecho y que responde a dicha vibración para b=2. ]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
La anterior gráfica muestra el comportamiento de la cuerda como respuesta a la vibración producida en uno de sus extremos así como el movimiento transversal del punto medio al comienzo. Podemos observar el movimiento transversal de cada punto de la cuerda a través de la expresión de la energía, así como que, a medida que transcurre el tiempo, ésta se va estabilizando. La forma de la función recuerda a una función sinusoidal debido a la forma de la condición de contorno impuesta. En este caso la fuerza aplicada en el apoyo del extremo derecho de la cuerda es en un sentido ascendente.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''function [ V ] = Ecuacion7( u,x,t )'''&lt;br /&gt;
{{matlab|codigo= &lt;br /&gt;
%se guarda aquí la ecuación diferencial del tipo u_tt=f(x,u,u_x,u_xx)&lt;br /&gt;
%INCLUIDAS LAS CC AQUÍ!&lt;br /&gt;
%PARA u_tt=u_xx&lt;br /&gt;
%CC: u(0,t)=u(L,t)=0;&lt;br /&gt;
&lt;br /&gt;
Ax=x(2)-x(1);&lt;br /&gt;
n=length(u);&lt;br /&gt;
V=zeros(1,n);&lt;br /&gt;
F0=(1/x(n));&lt;br /&gt;
b=-2;&lt;br /&gt;
&lt;br /&gt;
%Las condiciones de contorno vienen en x(1)=0 y x(Nx)=L&lt;br /&gt;
u(1)=0;&lt;br /&gt;
&lt;br /&gt;
if(t==-1)&lt;br /&gt;
    u(n)=0;&lt;br /&gt;
else&lt;br /&gt;
    %u(n)=0;&lt;br /&gt;
    %u(n)=sin(2*pi*F0*t);&lt;br /&gt;
    u(n)=(1/(b*Ax-1))*u(n-1);&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
for i=2:n-1&lt;br /&gt;
    V(i)=(1/Ax^2)*(u(i+1)-2*u(i)+u(i-1));&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
i=1;&lt;br /&gt;
V(i)=(1/Ax^2)*(u(i+2)-2*u(i+1));&lt;br /&gt;
i=n;&lt;br /&gt;
V(i)=(1/Ax^2)*(u(i)-2*u(i-1)+u(i-2));&lt;br /&gt;
end&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
La imagen resultante es:&lt;br /&gt;
[[Archivo:7.2.png|700px|thumb|centre|Gráfica de la energía (ordenadas) de un cable frente al tiempo (abcisas) que recibe una vibración en su extremo derecho y que responde a dicha vibración para b=-2. ]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
En esta última gráfica, se procede al estudio del caso anterior pero ésta vez la carga va aplicada en sentido descendente, como por ejemplo de si un peso se tratase. Apreciamos que la energía se comporta de forma análoga al caso anterior.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Categoría:Ecuaciones Diferentiales]]&lt;br /&gt;
 [[Categoría:ED13/14]]&lt;br /&gt;
 [[Categoría:Trabajos 2013-14]]&lt;/div&gt;</summary>
		<author><name>Lucia Lopez</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Ecuaci%C3%B3n_de_ondas_(grupo_2B)&amp;diff=13431</id>
		<title>Ecuación de ondas (grupo 2B)</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Ecuaci%C3%B3n_de_ondas_(grupo_2B)&amp;diff=13431"/>
				<updated>2014-05-19T22:39:17Z</updated>
		
		<summary type="html">&lt;p&gt;Lucia Lopez: /* Energía del Cable. */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{ TrabajoED | Ecuación de ondas. Grupo 2-B| [[:Categoría:Ecuaciones Diferenciales|Ecuaciones Diferenciales]]|[[:Categoría:ED13/14|Curso 2013-14]]| &lt;br /&gt;
Ignacio Díaz-Caneja Camblor&lt;br /&gt;
&lt;br /&gt;
Alberto Fernández Pérez&lt;br /&gt;
&lt;br /&gt;
Adela González Barbado&lt;br /&gt;
&lt;br /&gt;
Lucia López Sánchez&lt;br /&gt;
&lt;br /&gt;
Araceli Martín Candilejo&lt;br /&gt;
&lt;br /&gt;
Diego Solano López&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
== Modelización de los desplazamientos del Cable. ==&lt;br /&gt;
El problema que se tratará a continuación describe una ecuación de '''tipo hiperbólico''', una '''ecuación de ondas'''.&lt;br /&gt;
Consideramos un '''cable de 10 metros''' de longitud '''sujeto por sus extremos'''. Suponiendo que éste tiene una '''sección pequeña''' respecto a su longitud someteremos al cable a pequeñas vibraciones que estudiaremos con una modelización de la ecuación de ondas. &lt;br /&gt;
Se caracteriza al cable de una masa constante por unidad de volumen, es decir, será '''homogéneo'''. Éste, '''flexible''' a la tracción, únicamente ofrece resistencias en su dirección longitudinal, tangenciales, pero no a esfuerzos de flexión o cortes. Se supone, además, que es '''inextensible''' por lo que será lo suficientemente rígido longitudinalmente como para poder despreciar su extensibilidad.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Con esta modelización se estudiarán las '''pequeñas vibraciones''', desplazamientos transversales, a las que es sometido el cable. Para iniciar el movimiento del cable lo sujetaremos por el centro subiéndolo dos metros, lo que nos proporciona una primera condición inicial determinada por la función g(x), y soltándolo, con una velocidad inicial nula. &lt;br /&gt;
&lt;br /&gt;
&amp;lt;br/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Obtenemos la ecuación &amp;lt;math&amp;gt;u_{tt}-u_{xx}=0&amp;lt;/math&amp;gt; , de la cual se puede observar que tanto el '''módulo de la tensión''' como la '''densidad''' son '''constantes''' ya que el '''módulo de la elasticidad''' es constante, &amp;lt;math&amp;gt;c^2=1&amp;lt;/math&amp;gt; . Al ser ésta primera ecuación homogénea deducimos que transversalmente no actúa ninguna fuerza densidad espacial y temporal. Se deduce del enunciado anterior que las condiciones de frontera son '''homogéneas''', &amp;lt;math&amp;gt;u(0,t)=0&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;u(10,t)=0&amp;lt;/math&amp;gt; que nos indican que los extremos del cable no describen ningún tipo de movimiento en todo instante t al no estar sometidos a ningun tipo de fuerza. Finalmente, añadimos al sistema las condiciones iniciales, la primera de ellas, &amp;lt;math&amp;gt;u(x,0)=g(x)= 2- |\frac{2}{5}x -2|&amp;lt;/math&amp;gt;, define el '''movimiento descrito por la onda''' en el instante t=0 en cualquier punto del cable; y la segunda, &amp;lt;math&amp;gt;u_t(x,0)=0&amp;lt;/math&amp;gt;, que la onda parte de una '''velocidad inicial nula'''.&lt;br /&gt;
[[Image:DV.png|300px|thumb|right|Deslizamiento vertical del cable. ]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
\begin{cases}&lt;br /&gt;
&lt;br /&gt;
u_{tt}- u_{xx}=0  \  x∈[0,10] \ t&amp;gt;0\\&lt;br /&gt;
u(0,t)=0\\&lt;br /&gt;
u(10,t)=0\\&lt;br /&gt;
u(x,0)= 2- |\frac{2}{5}x -2|\\&lt;br /&gt;
u_t(x,0)=0&lt;br /&gt;
\end{cases}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
En los siguientes apartados se realizaran aproximaciones del sistema expuesto con tres métodos distintos de los que más tarde se hará una comparativa.  &lt;br /&gt;
&amp;lt;br/&amp;gt;&lt;br /&gt;
==== Aproximación por el método del trapecio. ====&lt;br /&gt;
El método del trapecio se basa en aproximar una función integrando. Para ello utilizamos un número N de trapecios (en la imagen inferior hemos aproximado mediante 4 trapecios). Las integrales a resolver para poder poder aproximar una función por este método tendrán la distancia de sus límites de integración constantes para todas las integrales, a esta distancia entre los límites de integración lo llamamos paso. En el desarrollo de este método se supone que la función es continua en el intervalo en que se quiere aproximar.&lt;br /&gt;
&amp;lt;br/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Image:Trapecio.png|300px|thumb|center|Función Y(x), el área bajo la curva, se puede aproximar mediante n trapecios]]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br/&amp;gt;&lt;br /&gt;
{{matlab|codigo= &lt;br /&gt;
%u_tt-u_xx=0&lt;br /&gt;
%u(0,t)=u(l,t)=0&lt;br /&gt;
%u(x,0)=2-abs(0.4x-2)&lt;br /&gt;
%ut(x,0)=0&lt;br /&gt;
clear all&lt;br /&gt;
&lt;br /&gt;
%Datos del problema&lt;br /&gt;
L=10;&lt;br /&gt;
T=40;&lt;br /&gt;
&lt;br /&gt;
%Discretización&lt;br /&gt;
h=0.1;&lt;br /&gt;
N=L/h;&lt;br /&gt;
x=0:h:L;&lt;br /&gt;
xint=h:h:L-h;&lt;br /&gt;
dt=h;&lt;br /&gt;
t=0:dt:T;&lt;br /&gt;
&lt;br /&gt;
%Aprox. de u_xx&lt;br /&gt;
K=2*diag(ones(1,N-1))-diag(ones(1,N-2),-1)-diag(ones(1,N-2),1);&lt;br /&gt;
K=K/h^2;&lt;br /&gt;
F=zeros(N-1,1);&lt;br /&gt;
&lt;br /&gt;
%Posición inicial.&lt;br /&gt;
u0=(2-abs(xint*2/5-2))';&lt;br /&gt;
v0=zeros(N-1,1);&lt;br /&gt;
&lt;br /&gt;
%Aprox. de u_tt&lt;br /&gt;
M=[zeros(N-1),eye(N-1);-K,zeros(N-1)];&lt;br /&gt;
G=[zeros(N-1,1);F];&lt;br /&gt;
&lt;br /&gt;
%Aproximación por el método del Trapecio&lt;br /&gt;
W0=[u0;v0];&lt;br /&gt;
WW=W0;&lt;br /&gt;
sol=zeros(length(t),N+1);&lt;br /&gt;
sol(1,:)=[0,W0(1:N-1)',0];&lt;br /&gt;
for j=1:length(t)-1&lt;br /&gt;
    WW=(eye(2*N-2)-dt/2*M)\(eye(2*N-2)+dt/2*M)*WW;&lt;br /&gt;
    sol(j+1,:)=[0,WW(1:N-1)',0];&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
%Dibujo de la solución&lt;br /&gt;
[xx,tt]=meshgrid(x,t);&lt;br /&gt;
surf(xx,tt,sol);&lt;br /&gt;
xlabel('Desplazamiento horizontal');&lt;br /&gt;
ylabel('Tiempo');&lt;br /&gt;
zlabel('Desplazamiento vertical');}}&lt;br /&gt;
&lt;br /&gt;
[[Image:klklk.jpg|700px|thumb|center|Aproximación por el método del Trapecio.]]&lt;br /&gt;
&lt;br /&gt;
Como el método del trapecio tiene '''orden de precisión 2''' sabemos que se trata de una buena aproximación, pero gráficamente también podemos observar que éste es bastante preciso.&lt;br /&gt;
&lt;br /&gt;
==== Aproximación por el método de Euler. ====&lt;br /&gt;
Se exponen en este apartado dos tipos de aproximaciones de Euler.&lt;br /&gt;
&lt;br /&gt;
Este método se basa en la posibilidad de aproximar una función original mediante rectas tangentes partiendo de un punto dado. Sabiendo que la recta tangente de una función en un punto es la derivada en dicho punto, este método consiste en calcular derivadas de la función en diferentes puntos pertenecientes a ella. Estos puntos serán tomados con la misma distancia a lo largo de la recta, a esta distancia la denominamos paso de discretización. &lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Image:Euler.png|300px|thumb|center|Aproximación de una función por el método de Euler]]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===== Euler Explícito. =====&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
%utt-uxx=0&lt;br /&gt;
%u(0,t)=u(l,t)=0&lt;br /&gt;
%u(x,0)=2-abs(0.4x-2)&lt;br /&gt;
%ut(x,0)=0&lt;br /&gt;
clear all&lt;br /&gt;
L=10;&lt;br /&gt;
T=40;&lt;br /&gt;
h=0.1;&lt;br /&gt;
N=L/h;&lt;br /&gt;
x=0:h:L;&lt;br /&gt;
xint=h:h:L-h;&lt;br /&gt;
dt=h;&lt;br /&gt;
t=0:dt:T;&lt;br /&gt;
K=2*diag(ones(1,N-1))-diag(ones(1,N-2),-1)-diag(ones(1,N-2),1);&lt;br /&gt;
K=K/h^2;&lt;br /&gt;
F=zeros(N-1,1);&lt;br /&gt;
u0=(2-abs(xint*2/5-2))';&lt;br /&gt;
v0=zeros(N-1,1);&lt;br /&gt;
M=[zeros(N-1),eye(N-1);-K,zeros(N-1)];&lt;br /&gt;
G=[zeros(N-1,1);F];&lt;br /&gt;
W0=[u0;v0];&lt;br /&gt;
WW=W0;&lt;br /&gt;
sol=zeros(length(t),N+1);&lt;br /&gt;
sol(1,:)=[0,W0(1:N-1)',0];&lt;br /&gt;
for j=1:length(t)-1&lt;br /&gt;
    k1=[zeros(N-1), eye(N-1); -K, -K.*dt];&lt;br /&gt;
    k2=[zeros(N-1), eye(N-1); -K, -K.*dt];&lt;br /&gt;
    WW=WW+(k1+k2)*WW.*(dt/2);&lt;br /&gt;
    sol(j+1,:)=[0,WW(1:N-1)',0];&lt;br /&gt;
end&lt;br /&gt;
[xx,tt]=meshgrid(x,t);&lt;br /&gt;
surf(xx,tt,sol);&lt;br /&gt;
xlabel('Desplazamiento horizontal');&lt;br /&gt;
ylabel('Tiempo');&lt;br /&gt;
zlabel('Desplazamiento vertical');}}&lt;br /&gt;
&lt;br /&gt;
[[Image:3a3a.png|700px|thumb|center|Aproximación de una función por el método de Euler Explícito]]&lt;br /&gt;
Antes de comentar las dos gráficas anteriores, se debe insistir en que el '''orden de precisión''' del método de Euler es '''1''', por tanto, será menos preciso que el primero.&lt;br /&gt;
&lt;br /&gt;
===== Euler Modificado. =====&lt;br /&gt;
&lt;br /&gt;
Este método se basa en la misma idea que el anterior, pero hace un refinamiento en la aproximación, tomando un promedio entre las pendientes, esto parece más razonable para la obtención de un valor más preciso.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
%utt-uxx=0&lt;br /&gt;
%u(0,t)=u(l,t)=0&lt;br /&gt;
%u(x,0)=2-abs(0.4x-2)&lt;br /&gt;
%ut(x,0)=0&lt;br /&gt;
clear all&lt;br /&gt;
L=10;&lt;br /&gt;
T=40;&lt;br /&gt;
h=0.1;&lt;br /&gt;
N=L/h;&lt;br /&gt;
x=0:h:L;&lt;br /&gt;
xint=h:h:L-h;&lt;br /&gt;
dt=h;&lt;br /&gt;
t=0:dt:T;&lt;br /&gt;
K=2*diag(ones(1,N-1))-diag(ones(1,N-2),-1)-diag(ones(1,N-2),1);&lt;br /&gt;
K=K/h^2;&lt;br /&gt;
F=zeros(N-1,1);&lt;br /&gt;
U=(2-abs(xint*2/5-2))';&lt;br /&gt;
V=zeros(N-1,1);&lt;br /&gt;
sol(1,:)=[0 U' 0];&lt;br /&gt;
for i=1:length(t)-1;&lt;br /&gt;
    U=U+dt*V;&lt;br /&gt;
    V=V-dt*K*U;&lt;br /&gt;
    sol(i+1,:)=[0 U' 0];&lt;br /&gt;
end&lt;br /&gt;
[xx,tt]=meshgrid(x,t);&lt;br /&gt;
surf(xx,tt,sol);&lt;br /&gt;
xlabel('Desplazamiento horizontal');&lt;br /&gt;
ylabel('Tiempo');&lt;br /&gt;
zlabel('Desplazamiento vertical');}}&lt;br /&gt;
[[Image:3b3b.png|700px|thumb|center|Aproximación de una función por el método de Euler Modificado]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Fijándonos en las gráficas, observamos que la obtenida mediante Euler modificado realiza una mejor aproximación, como ya habíamos anticipado al comentar que éste método se basa en mejorar la aproximación del método de Euler sencillo. Es decir, en precisión '''Euler Modificado &amp;gt; Trapecio &amp;gt; Euler Explícito''', por ello concluimos que se asemeja mejor que la obtenida mediante el método del Trapecio y que la primera aproximación de Euler.&lt;br /&gt;
&lt;br /&gt;
==== Aproximación por Fourier con diferentes términos de series. ====&lt;br /&gt;
En este apartado se ofrece una aproximación alternativa a las anteriores. Se muestran '''cinco iteraciones''' distintas del '''método del Fourier''' que se compararan entre sí y con los métodos anteriores, Trapecio y Euler. Este método de aproximación depende del número de términos de serie (lo denominamos con la letra Q) con los que se realice el programa de Fourier.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br/&amp;gt;&lt;br /&gt;
Puesto que la realización de este método es la misma sea cual sea el número de serie elegido, se han expuesto únicamente dos casos de Q para una mayor claridad del programa.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo= %utt-uxx=0&lt;br /&gt;
%u(0,t)=u(l,t)=0&lt;br /&gt;
%u(x,0)=2-abs(0.4x-2)&lt;br /&gt;
%ut(x,0)=0&lt;br /&gt;
&lt;br /&gt;
%1 iteracion&lt;br /&gt;
clear all&lt;br /&gt;
L=10;&lt;br /&gt;
T=40;&lt;br /&gt;
Q=1;&lt;br /&gt;
h=0.1;&lt;br /&gt;
N=L/h;&lt;br /&gt;
x=0:h:L;&lt;br /&gt;
dt=h;&lt;br /&gt;
t=0:dt:T;&lt;br /&gt;
sol=zeros(length(t),N+1);&lt;br /&gt;
for k=1:Q&lt;br /&gt;
    phi=sin(k/L*pi*x);&lt;br /&gt;
    a=trapz(x,(2-abs(2/5*x-2)).*phi)/(trapz(x,phi.^2));&lt;br /&gt;
    b=0;&lt;br /&gt;
    T=a.*cos(k*pi*t/L);&lt;br /&gt;
    sol=sol+T'*phi;&lt;br /&gt;
end&lt;br /&gt;
[xx,tt]=meshgrid(x,t);&lt;br /&gt;
figure (1)&lt;br /&gt;
surf(xx,tt,sol)&lt;br /&gt;
xlabel('Desplazamiento horizontal');&lt;br /&gt;
ylabel('Tiempo');&lt;br /&gt;
zlabel('Desplazamiento vertical');&lt;br /&gt;
&lt;br /&gt;
%3 iteracion&lt;br /&gt;
clear all&lt;br /&gt;
L=10;&lt;br /&gt;
T=40;&lt;br /&gt;
Q=3;&lt;br /&gt;
h=0.1;&lt;br /&gt;
N=L/h;&lt;br /&gt;
x=0:h:L;&lt;br /&gt;
dt=h;&lt;br /&gt;
t=0:dt:T;&lt;br /&gt;
sol=zeros(length(t),N+1);&lt;br /&gt;
for k=1:Q&lt;br /&gt;
    phi=sin(k/L*pi*x);&lt;br /&gt;
    a=trapz(x,(2-abs(2/5*x-2)).*phi)/(trapz(x,phi.^2));&lt;br /&gt;
    b=0;&lt;br /&gt;
    T=a.*cos(k*pi*t/L);&lt;br /&gt;
    sol=sol+T'*phi;&lt;br /&gt;
end&lt;br /&gt;
[xx,tt]=meshgrid(x,t);&lt;br /&gt;
figure (2)&lt;br /&gt;
surf(xx,tt,sol)&lt;br /&gt;
xlabel('Desplazamiento horizontal');&lt;br /&gt;
ylabel('Tiempo');&lt;br /&gt;
zlabel('Desplazamiento vertical');}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br/&amp;gt;&lt;br /&gt;
[[Image:81tF2.jpg|525px|thumb|left|Aproximación por el método del Trapecio con un término de serie.]]&lt;br /&gt;
[[Image:82tF.jpg|525px|thumb|center|Aproximación por el método del Trapecio con tres términos de serie.]]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br/&amp;gt; &lt;br /&gt;
&lt;br /&gt;
[[Image:83tF.jpg|525px|thumb|left|Aproximación por el método del Trapecio con cinco términos de serie.]]&lt;br /&gt;
[[Image:84tF.jpg|525px|thumb|center|Aproximación por el método del Trapecio con diez términos de serie.]]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Image:85tF.jpg|525px|thumb|center|Aproximación por el método del Trapecio con veinte términos de serie.]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
En este método podemos observar fijándonos en las gráficas que a mayor número de términos (mayor Q), mayor es la aproximación obtenida y más estable.&lt;br /&gt;
&lt;br /&gt;
Realizando una comparación con los otros métodos, se puede observar, fijándonos en las gráficas y en los órdenes de precisión, que el método que mejor aproxima  la ecuación del problema es el método del trapecio, seguido de Euler modificado y, por último, Euler, teniendo mayor orden el que mejor aproxima la función.&lt;br /&gt;
&lt;br /&gt;
Gráficamente podemos confirmar este hecho, dándonos cuenta que '''las gráficas más similares''' son '''Fourier con Q=20''' y el método del '''Euler Modificado'''.&lt;br /&gt;
&lt;br /&gt;
== Energía del Cable. ==&lt;br /&gt;
&lt;br /&gt;
La energía del cable que viene definida por la función: &lt;br /&gt;
\begin{equation}&lt;br /&gt;
E(t) = \int_{0}^{L} (u_{t}^{2}(x,t)+ u_{x}^{2}(x,t)) \cdot dx&lt;br /&gt;
\end{equation}&lt;br /&gt;
&lt;br /&gt;
El método utilizado en el desarrollo numérico de está expresión es el '''método de diferencias finitas'''&lt;br /&gt;
(Funciona calculando de manera aproximada las soluciones a las ecuaciones diferenciales usando ecuaciones diferenciales finitas para aproximar derivadas.).&lt;br /&gt;
&lt;br /&gt;
'''FUNCIÓN:'''&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
function v = deriva(x,y,t)&lt;br /&gt;
&lt;br /&gt;
n = length(x);&lt;br /&gt;
del=zeros(1,n);&lt;br /&gt;
&lt;br /&gt;
if t==1&lt;br /&gt;
    &lt;br /&gt;
    i=1;&lt;br /&gt;
    del(1)=(y(i)-y(i+1))/(-x(i)+x(i+1));&lt;br /&gt;
&lt;br /&gt;
    for i=2:n&lt;br /&gt;
    del(i)=(y(i)-y(i-1))/(x(i)-x(i-1));&lt;br /&gt;
    end &lt;br /&gt;
    &lt;br /&gt;
elseif t==-1&lt;br /&gt;
&lt;br /&gt;
    for i=1:n-1&lt;br /&gt;
    del(i)=(y(i)-y(i+1))/(x(i)-x(i+1));&lt;br /&gt;
    end &lt;br /&gt;
    &lt;br /&gt;
    i=n;&lt;br /&gt;
    del(i)=(y(i)-y(i-1))/(x(i)-x(i-1));&lt;br /&gt;
    &lt;br /&gt;
elseif t==0&lt;br /&gt;
    &lt;br /&gt;
    i=1;&lt;br /&gt;
    del(1)=(y(i)-y(i+1))/(+x(i)-x(i+1));&lt;br /&gt;
    &lt;br /&gt;
    for i=2:n-1&lt;br /&gt;
    del(i)=(y(i+1)-y(i-1))/(2*(x(i)-x(i-1)));&lt;br /&gt;
    end &lt;br /&gt;
    &lt;br /&gt;
    i=n;&lt;br /&gt;
    del(n)=(y(i)-y(i-1))/(x(i)-x(i-1));  &lt;br /&gt;
    &lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
v=del;&lt;br /&gt;
&lt;br /&gt;
end&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''PROGRAMA:'''&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
clc;clear all;&lt;br /&gt;
L=10;dx=0.1;N=L/dx;&lt;br /&gt;
x=dx:dx:L-dx;&lt;br /&gt;
xtot=0:dx:L;&lt;br /&gt;
T=40;dt=0.1;t=0:dt:T;&lt;br /&gt;
K=2*diag(ones(1,N-1))-diag(ones(1,N-2),1)-diag(ones(1,N-2),-1);&lt;br /&gt;
K=(1/dx^2)*K;&lt;br /&gt;
U=(2-abs((x*2/5-2)))';&lt;br /&gt;
V=(0*x)';&lt;br /&gt;
sol(1,:)=[0 U' 0];&lt;br /&gt;
for i=1:length(t)-1;&lt;br /&gt;
    U=U+dt*V;&lt;br /&gt;
    V=V-dt*K*U;&lt;br /&gt;
    sol(i+1,:)=[0 U' 0];&lt;br /&gt;
end&lt;br /&gt;
%DERIVAMOS LA SOLUCION EN x Y EN t:&lt;br /&gt;
dsol_dx=ones(size(sol));&lt;br /&gt;
for i=1:length(t)&lt;br /&gt;
    dsol_dx(i,:)=deriva(sol(i,:),xtot,0);&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
dsol_dt=ones(size(sol));&lt;br /&gt;
for i=1:length(xtot)&lt;br /&gt;
    dsol_dt(:,i)=deriva(sol(:,i),t,1); &lt;br /&gt;
end&lt;br /&gt;
%SUMAMOS LAS DERIVADAS AL CUADRADO E INTEGRAMOS:&lt;br /&gt;
dE=zeros(1,size(t,1));&lt;br /&gt;
for i=1:length(xtot)&lt;br /&gt;
    dE=dE+(dsol_dt(i,:).^2+dsol_dx(i,:).^2)*dx;&lt;br /&gt;
end&lt;br /&gt;
xtot=0:dx:L;&lt;br /&gt;
[xx,tt]=meshgrid(xtot,t);&lt;br /&gt;
figure(1)&lt;br /&gt;
surf(xx,tt,dsol_dx);&lt;br /&gt;
figure(2)&lt;br /&gt;
surf(xx,tt,dsol_dt);&lt;br /&gt;
plot(dE,t)&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
'''CÓDIGO PARA ENERGÍA CON TRAPECIO'''&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
clc;clear all;&lt;br /&gt;
L=10;dx=0.1;N=L/dx;&lt;br /&gt;
x=dx:dx:L-dx;&lt;br /&gt;
xtot=0:dx:L;&lt;br /&gt;
T=40;dt=0.1;t=0:dt:T;&lt;br /&gt;
K=2*diag(ones(1,N-1))-diag(ones(1,N-2),1)-diag(ones(1,N-2),-1);&lt;br /&gt;
K=(1/dx^2)*K;&lt;br /&gt;
u0=(2-abs(x*2/5-2))';&lt;br /&gt;
v0=zeros(N-1,1);&lt;br /&gt;
M=[zeros(N-1),eye(N-1);-K,zeros(N-1)];&lt;br /&gt;
G=[zeros(N-1,1);zeros(N-1,1)];&lt;br /&gt;
W0=[u0;v0];&lt;br /&gt;
WW=W0;&lt;br /&gt;
sol=zeros(length(t),N+1);&lt;br /&gt;
sol(1,:)=[0,W0(1:N-1)',0];&lt;br /&gt;
for j=1:length(t)-1&lt;br /&gt;
    WW=(eye(2*N-2)-dt/2*M)\(eye(2*N-2)+dt/2*M)*WW;&lt;br /&gt;
    sol(j+1,:)=[0,WW(1:N-1)',0];&lt;br /&gt;
end&lt;br /&gt;
%DERIVAMOS LA SOLUCION EN x Y EN t:&lt;br /&gt;
dsol_dx=ones(size(sol));&lt;br /&gt;
for i=1:length(t)&lt;br /&gt;
    dsol_dx(i,:)=deriva(sol(i,:),xtot,0);&lt;br /&gt;
end&lt;br /&gt;
 &lt;br /&gt;
dsol_dt=ones(size(sol));&lt;br /&gt;
for i=1:length(xtot)&lt;br /&gt;
    dsol_dt(:,i)=deriva(sol(:,i),t,1); &lt;br /&gt;
end&lt;br /&gt;
%SUMAMOS LAS DERIVADAS AL CUADRADO E INTEGRAMOS:&lt;br /&gt;
dE=zeros(1,size(t,1));&lt;br /&gt;
for i=1:length(xtot)&lt;br /&gt;
    dE=dE+(dsol_dt(i,:).^2+dsol_dx(i,:).^2)*dx;&lt;br /&gt;
end&lt;br /&gt;
xtot=0:dx:L;&lt;br /&gt;
[xx,tt]=meshgrid(xtot,t);&lt;br /&gt;
figure(1)&lt;br /&gt;
surf(xx,tt,dsol_dx);&lt;br /&gt;
figure(2)&lt;br /&gt;
surf(xx,tt,dsol_dt);&lt;br /&gt;
plot(dE,t)&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
'''CÓDIGO PARA ENERGÍA CON EULER MODIFICADOO'''&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
clc;clear all;&lt;br /&gt;
L=10;dx=0.1;N=L/dx;&lt;br /&gt;
x=dx:dx:L-dx;&lt;br /&gt;
xtot=0:dx:L;&lt;br /&gt;
T=40;dt=0.1;t=0:dt:T;&lt;br /&gt;
K=2*diag(ones(1,N-1))-diag(ones(1,N-2),1)-diag(ones(1,N-2),-1);&lt;br /&gt;
K=(1/dx^2)*K;&lt;br /&gt;
F=zeros(N-1,1);&lt;br /&gt;
u0=(2-abs(x*2/5-2))';&lt;br /&gt;
v0=zeros(N-1,1);&lt;br /&gt;
M=[zeros(N-1),eye(N-1);-K,zeros(N-1)];&lt;br /&gt;
G=[zeros(N-1,1);F];&lt;br /&gt;
W0=[u0;v0];&lt;br /&gt;
WW=W0;&lt;br /&gt;
sol=zeros(length(t),N+1);&lt;br /&gt;
sol(1,:)=[0,W0(1:N-1)',0];&lt;br /&gt;
for j=1:length(t)-1&lt;br /&gt;
    k1=[zeros(N-1), eye(N-1); -K, -K.*dt];&lt;br /&gt;
    k2=[zeros(N-1), eye(N-1); -K, -K.*dt];&lt;br /&gt;
    WW=WW+(k1+k2)*WW.*(dt/2);&lt;br /&gt;
    sol(j+1,:)=[0,WW(1:N-1)',0];&lt;br /&gt;
end&lt;br /&gt;
%DERIVAMOS LA SOLUCION EN x Y EN t:&lt;br /&gt;
dsol_dx=ones(size(sol));&lt;br /&gt;
for i=1:length(t)&lt;br /&gt;
    dsol_dx(i,:)=deriva(sol(i,:),xtot,0);&lt;br /&gt;
end&lt;br /&gt;
 &lt;br /&gt;
dsol_dt=ones(size(sol));&lt;br /&gt;
for i=1:length(xtot)&lt;br /&gt;
    dsol_dt(:,i)=deriva(sol(:,i),t,1); &lt;br /&gt;
end&lt;br /&gt;
%SUMAMOS LAS DERIVADAS AL CUADRADO E INTEGRAMOS:&lt;br /&gt;
dE=zeros(1,size(t,1));&lt;br /&gt;
for i=1:length(xtot)&lt;br /&gt;
    dE=dE+(dsol_dt(i,:).^2+dsol_dx(i,:).^2)*dx;&lt;br /&gt;
end&lt;br /&gt;
xtot=0:dx:L;&lt;br /&gt;
[xx,tt]=meshgrid(xtot,t);&lt;br /&gt;
figure(1)&lt;br /&gt;
surf(xx,tt,dsol_dx);&lt;br /&gt;
figure(2)&lt;br /&gt;
surf(xx,tt,dsol_dt);&lt;br /&gt;
plot(dE,t)&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
El resultado habría de ser una gráfica que representase la evolución de la energía de la cuerda frente al transcurso del tiempo. No obstante, en nuestra resolución aparece una gráfica en blanco que ajudicamos o a un posible error en el código, o que podemos interpretar como que la energía tiende a infinito.&lt;br /&gt;
Dicha gráfica representaría una energía constante debido a la ausencia de fuerzas externas y rozamientos viscosos.&lt;br /&gt;
&lt;br /&gt;
== Aplicaciones. ==&lt;br /&gt;
&lt;br /&gt;
==== Sumersión en un medio viscoso. ====&lt;br /&gt;
&lt;br /&gt;
Suponemos ahora la inmersión del cable en una medio viscoso. Este medio viscoso produce un amortiguamiento en el movimiento del cable, con lo que la anterior ecuación diferencial se convertiría en &lt;br /&gt;
\begin{equation}&lt;br /&gt;
u_{tt}-u_{xx}+au_{t}=0&lt;br /&gt;
\end{equation} &lt;br /&gt;
, siendo '''&amp;lt;math&amp;gt; a  &amp;lt;/math&amp;gt;''' una constante de amortiguamiento propia del medio viscoso.&lt;br /&gt;
Puesto que la función '''&amp;lt;math&amp;gt; u(x,t)  &amp;lt;/math&amp;gt;''' se ve afectada ahora por el medio viscoso, y más directamente, por la constante '''&amp;lt;math&amp;gt; a  &amp;lt;/math&amp;gt;''' que actúa en su nombre, la energía del cable ,que se expresaba como una integral en función de '''&amp;lt;math&amp;gt; u(x,t)  &amp;lt;/math&amp;gt;''' también se va a ver afectada:&lt;br /&gt;
\begin{equation}&lt;br /&gt;
E(t) = \int_{0}^{L} (u_{t}^{2}(x,t)+ u_{x}^{2}(x,t)) \cdot dx&lt;br /&gt;
\end{equation}&lt;br /&gt;
&lt;br /&gt;
El obetivo del siguiente código será hallar una representación de la evolución de la energía en función del tiempo a raíz de la modificación de la función '''&amp;lt;math&amp;gt; u(x,t)  &amp;lt;/math&amp;gt;'''. Para ello asignaremos distintos valores a la constante '''&amp;lt;math&amp;gt; a  &amp;lt;/math&amp;gt;'''. Éstos van a ser:&lt;br /&gt;
'''&amp;lt;math&amp;gt; a=0  &amp;lt;/math&amp;gt;''' (la energía para este valor resultará igual que la hallada en el apartado anterior)&lt;br /&gt;
'''&amp;lt;math&amp;gt; a=1  &amp;lt;/math&amp;gt;'''&lt;br /&gt;
'''&amp;lt;math&amp;gt; a=4  &amp;lt;/math&amp;gt;'''&lt;br /&gt;
'''&amp;lt;math&amp;gt; a=10  &amp;lt;/math&amp;gt;'''&lt;br /&gt;
''&amp;lt;math&amp;gt; a=100  &amp;lt;/math&amp;gt;'''&lt;br /&gt;
&lt;br /&gt;
El procedimiento numérico volverá a seguir el método de '''diferencias finitas''':&lt;br /&gt;
&lt;br /&gt;
'''PROGRAMA:'''&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
clc;clear all;close all;&lt;br /&gt;
%Datos&lt;br /&gt;
dx=0.1;L=10;&lt;br /&gt;
dt=0.001;NT=40;&lt;br /&gt;
A=[0,1,4,10,100];&lt;br /&gt;
x=0:dx:L;&lt;br /&gt;
t=0:dt:NT;&lt;br /&gt;
ENE=zeros(5,length(t));&lt;br /&gt;
&lt;br /&gt;
%Condición de contorno: U(0,t)=U(L,t)=0;&lt;br /&gt;
&lt;br /&gt;
for k=1:5&lt;br /&gt;
&lt;br /&gt;
%Vector solución y derivada temporal de la solución&lt;br /&gt;
%t=0&amp;lt;&amp;gt;T(1) es donde se guardan las condiciones iniciales&lt;br /&gt;
&lt;br /&gt;
U=zeros(length(t),length(x));&lt;br /&gt;
Dt_U=zeros(length(t),length(x));&lt;br /&gt;
Dx_U=zeros(length(t),length(x));    &lt;br /&gt;
&lt;br /&gt;
%Condición inicial: Estiramos 2 m del centro&lt;br /&gt;
%Modelizado como dos rectas antisimétricas que se cortan en x=5 y&lt;br /&gt;
%sujetas en x=0 y x=L.&lt;br /&gt;
&lt;br /&gt;
U(1,:)=2*sin(x*pi/L);&lt;br /&gt;
Dt_U(1,:)=zeros(1,length(x))';&lt;br /&gt;
D2t_U=Ecuacion5(U(1,:),x,-1);&lt;br /&gt;
&lt;br /&gt;
%Inicio del esquema numérico&lt;br /&gt;
%empieza en 2 ya que el 1 es la cond. inicial&lt;br /&gt;
&lt;br /&gt;
%ESQUEMA NEWMARK&lt;br /&gt;
&lt;br /&gt;
 for i=2:length(t)&lt;br /&gt;
    iter=[k,i]&lt;br /&gt;
    Ua=U(i-1,:);&lt;br /&gt;
    Dt_Ua=Dt_U(i-1,:);&lt;br /&gt;
    D2t_Ua=D2t_U;&lt;br /&gt;
    %Derivada segunda respecto del tiempo en el instante t, se obtiene de&lt;br /&gt;
    %eq. diferencial u_tt=f(x,u,u_x,u_xx)&lt;br /&gt;
    D2t_U=Ecuacion5(U(i-1,:),x,t(i))-A(k)*Dt_Ua;&lt;br /&gt;
    %Derivada primera&lt;br /&gt;
    Dt_U(i,:)=Dt_Ua+0.5*dt*(D2t_Ua+D2t_U);&lt;br /&gt;
    %Ecuacion&lt;br /&gt;
    U(i,:) = Ua+Dt_Ua*dt+(1/6)*(D2t_Ua+D2t_U)*dt^2;&lt;br /&gt;
 end&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 %ENERGIA&lt;br /&gt;
 for i=1:length(t)&lt;br /&gt;
    Dx_U(i,:)=deriva(x,U(i,:),0);&lt;br /&gt;
 end&lt;br /&gt;
dE=zeros(length(t),1);&lt;br /&gt;
for i=1:length(x)&lt;br /&gt;
    dE=dE+(Dt_U(:,i).^2+Dx_U(:,i).^2)*dx;&lt;br /&gt;
end&lt;br /&gt;
 ENE(k,:)=dE;&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
 figure(1)&lt;br /&gt;
 hold on&lt;br /&gt;
 grid&lt;br /&gt;
 aa=find(x==L/4);&lt;br /&gt;
 ab=find(x==3*L/4);&lt;br /&gt;
 legend('A=0','A=1','A=4','A=10','A=100');&lt;br /&gt;
 plot(t,ENE(1,:),t,ENE(2,:),t,ENE(3,:),t,ENE(4,:),t,ENE(5,:));&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''FUNCIONES:'''&lt;br /&gt;
DERIVA:&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
function v = deriva(x,y,t)&lt;br /&gt;
n = length(x);&lt;br /&gt;
del=zeros(1,n);&lt;br /&gt;
if t==1&lt;br /&gt;
    i=1;&lt;br /&gt;
    del(1)=(y(i)-y(i+1))/(-x(i)+x(i+1));&lt;br /&gt;
    for i=2:n&lt;br /&gt;
    del(i)=(y(i)-y(i-1))/(x(i)-x(i-1));&lt;br /&gt;
    end &lt;br /&gt;
elseif t==-1&lt;br /&gt;
    for i=1:n-1&lt;br /&gt;
    del(i)=(y(i)-y(i+1))/(x(i)-x(i+1));&lt;br /&gt;
    end &lt;br /&gt;
    i=n;&lt;br /&gt;
    del(i)=(y(i)-y(i-1))/(x(i)-x(i-1));&lt;br /&gt;
elseif t==0&lt;br /&gt;
    i=1;&lt;br /&gt;
    del(1)=(y(i)-y(i+1))/(+x(i)-x(i+1));&lt;br /&gt;
    for i=2:n-1&lt;br /&gt;
    del(i)=(y(i+1)-y(i-1))/(2*(x(i)-x(i-1)));&lt;br /&gt;
    end &lt;br /&gt;
    i=n;&lt;br /&gt;
    del(n)=(y(i)-y(i-1))/(x(i)-x(i-1));  &lt;br /&gt;
end&lt;br /&gt;
v=del;&lt;br /&gt;
end&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
'''ECUACIÓN 5:'''&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
function [ V ] = Ecuacion5( u,x,t )&lt;br /&gt;
%se guarda aquí la ecuación diferencial del tipo u_tt=f(x,u,u_x,u_xx)&lt;br /&gt;
%INCLUIDAS LAS CC AQUÍ&lt;br /&gt;
%PARA u_tt=u_xx&lt;br /&gt;
%CC: u(0,t)=u(L,t)=0;&lt;br /&gt;
&lt;br /&gt;
Ax=x(2)-x(1);&lt;br /&gt;
n=length(u);&lt;br /&gt;
V=zeros(1,n);&lt;br /&gt;
&lt;br /&gt;
%Las condiciones de contorno vienen en x(1)=0 y x(Nx)=L&lt;br /&gt;
u(1)=0;&lt;br /&gt;
&lt;br /&gt;
if(t==-1)&lt;br /&gt;
    u(n)=0;&lt;br /&gt;
else&lt;br /&gt;
    u(n)=0;&lt;br /&gt;
    %u(n)=sin(2*pi*F0*t);&lt;br /&gt;
    %u(n)=(1/(b*Ax-1))*u(n-1);&lt;br /&gt;
end&lt;br /&gt;
for i=2:n-1&lt;br /&gt;
    &lt;br /&gt;
    V(i)=(1/Ax^2)*(u(i+1)-2*u(i)+u(i-1));&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
i=1;&lt;br /&gt;
V(i)=(1/Ax^2)*(u(i+2)-2*u(i+1));&lt;br /&gt;
i=n;&lt;br /&gt;
V(i)=(1/Ax^2)*(u(i)-2*u(i-1)+u(i-2));&lt;br /&gt;
end&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
La gráfica buscada es:&lt;br /&gt;
[[Archivo:Graficadelaenergiaenunmedioviscoso.png|700px|thumb|centre|Gráfica de la energía(ordenadas) del cable respecto del tiempo (Abcisas).]]&lt;br /&gt;
En la gráfica se aprecian cuatro curvas de distintos colores correspondientes a '''&amp;lt;math&amp;gt; a=0  &amp;lt;/math&amp;gt;''','''&amp;lt;math&amp;gt; a=1  &amp;lt;/math&amp;gt;''','''&amp;lt;math&amp;gt; a=4  &amp;lt;/math&amp;gt;''','''&amp;lt;math&amp;gt; a=10  &amp;lt;/math&amp;gt;''',''&amp;lt;math&amp;gt; a=100  &amp;lt;/math&amp;gt;'''.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Como podemos apreciar el valor de la energía disminuye a medida que aumentamos el valor de &amp;quot;a&amp;quot;. Esto es debido a que &amp;quot;a&amp;quot; define el coeficiente de amortiguamiento del líquido en el cual se encuentra la cuerda. Luego, dicha disminución de energía se produce por la disipación en el medio de gran parte de la energía inicial.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==== Sujeción a una estructura de vibración periódica. ====&lt;br /&gt;
&lt;br /&gt;
En este caso supondremos que el extremo derecho que sujeta el cable está sometido a una vibración periódica de frecuencia  &amp;lt;math&amp;gt; F_0 &amp;lt;/math&amp;gt; [Herzios]. Al haber una vibración externa que afecta directamente al cable la expresión de su movimiento y, por consecuencia, de su energía, se va a ver modificada. Nosotros incluiremos esta modificación en la función &amp;lt;math&amp;gt; f(t) &amp;lt;/math&amp;gt; de problema de valor inicial que venimos tratando. Esta función va a pasar a ser: &lt;br /&gt;
\begin{equation}&lt;br /&gt;
f(t)= sin(2 \pi F_0t)&lt;br /&gt;
\end{equation}&lt;br /&gt;
&lt;br /&gt;
El objetivo será el de ver cómo afecta esta alteración en el desarrollo de la energía del cable frente al tiempo.&lt;br /&gt;
Para nuestro cálculo numérico especificaremos para las siguientes situaciones:&lt;br /&gt;
En primer lugar, para: &amp;lt;math&amp;gt; F_0= \frac{1}{L} + 0,01 &amp;lt;/math&amp;gt;&lt;br /&gt;
Después,para: &amp;lt;math&amp;gt; F_0= \frac{1}{L} - 0,01 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Y para finalizar, lo estudiaremos en un intervalo de tiempo de '''t=0''' hasta '''t=60''' : &amp;lt;math&amp;gt;t \in (0,60)&amp;lt;/math&amp;gt; [segundos].&lt;br /&gt;
&lt;br /&gt;
El código matemático para matlab / octave:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''PROGRAMA:'''&lt;br /&gt;
{{matlab|codigo= &lt;br /&gt;
clc;clear all;close all;&lt;br /&gt;
&lt;br /&gt;
%Datos&lt;br /&gt;
&lt;br /&gt;
dx=0.1;L=10;dt=0.0001;NT=60;&lt;br /&gt;
A=[0,1,4,10,100];&lt;br /&gt;
x=0:dx:L;t=0:dt:NT;&lt;br /&gt;
ENE=zeros(5,length(t));&lt;br /&gt;
&lt;br /&gt;
%Condición de contorno: U(0,t)=U(L,t)=0;&lt;br /&gt;
for k=1&lt;br /&gt;
%Vector solución y derivada temporal de la solución&lt;br /&gt;
%t=0&amp;lt;&amp;gt;T(1) es donde se guardan las condiciones iniciales&lt;br /&gt;
&lt;br /&gt;
U=zeros(length(t),length(x));&lt;br /&gt;
Dt_U=zeros(length(t),length(x));&lt;br /&gt;
Dx_U=zeros(length(t),length(x));&lt;br /&gt;
&lt;br /&gt;
%Condición inicial: Estiramos 2 m del centro&lt;br /&gt;
%Modelizado como dos rectas antisimétricas que se cortan en x=5 y&lt;br /&gt;
%sujetas en x=0 y x=L.&lt;br /&gt;
&lt;br /&gt;
U(1,:)=2*sin(x*pi/L);&lt;br /&gt;
Dt_U(1,:)=zeros(1,length(x))';&lt;br /&gt;
D2t_U=Ecuacion6(U(1,:),x,-1);&lt;br /&gt;
&lt;br /&gt;
%Inicio del esquema numérico&lt;br /&gt;
%empieza en 2 ya que el 1 es la cond. inicial&lt;br /&gt;
&lt;br /&gt;
%ESQUEMA NEWMARK&lt;br /&gt;
&lt;br /&gt;
 for i=2:length(t)&lt;br /&gt;
    iter=[k,i]&lt;br /&gt;
    Ua=U(i-1,:);&lt;br /&gt;
    Dt_Ua=Dt_U(i-1,:);&lt;br /&gt;
    D2t_Ua=D2t_U;&lt;br /&gt;
    %Derivada segunda respecto del tiempo en el instante t, se obtiene de&lt;br /&gt;
    %eq. diferencial u_tt=f(x,u,u_x,u_xx)&lt;br /&gt;
    D2t_U=Ecuacion6(U(i-1,:),x,t(i))-A(k)*Dt_Ua;&lt;br /&gt;
    %Derivada primera&lt;br /&gt;
    Dt_U(i,:)=Dt_Ua+0.5*dt*(D2t_Ua+D2t_U);&lt;br /&gt;
    %Ecuacion&lt;br /&gt;
    U(i,:) = Ua+Dt_Ua*dt+(1/6)*(D2t_Ua+D2t_U)*dt^2;&lt;br /&gt;
 end&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 %ENERGIA&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 for i=1:length(t)&lt;br /&gt;
    Dx_U(i,:)=deriva(x,U(i,:),0);&lt;br /&gt;
 end&lt;br /&gt;
dE=zeros(length(t),1);&lt;br /&gt;
for i=1:length(x)&lt;br /&gt;
    dE=dE+(Dt_U(:,i).^2+Dx_U(:,i).^2)*dx;&lt;br /&gt;
end&lt;br /&gt;
 ENE(k,:)=dE;&lt;br /&gt;
end&lt;br /&gt;
 figure(1)&lt;br /&gt;
 hold on&lt;br /&gt;
 grid&lt;br /&gt;
 aa=find(x==L/4);&lt;br /&gt;
 ab=find(x==3*L/4);&lt;br /&gt;
 imagesc(U)&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''FUNCIONES:'''&lt;br /&gt;
&lt;br /&gt;
DERIVA:&lt;br /&gt;
{{matlab|codigo= &lt;br /&gt;
function v = deriva(x,y,t)&lt;br /&gt;
n = length(x);&lt;br /&gt;
del=zeros(1,n);&lt;br /&gt;
if t==1&lt;br /&gt;
    i=1;&lt;br /&gt;
    del(1)=(y(i)-y(i+1))/(-x(i)+x(i+1));&lt;br /&gt;
    for i=2:n&lt;br /&gt;
    del(i)=(y(i)-y(i-1))/(x(i)-x(i-1));&lt;br /&gt;
    end &lt;br /&gt;
elseif t==-1&lt;br /&gt;
    for i=1:n-1&lt;br /&gt;
    del(i)=(y(i)-y(i+1))/(x(i)-x(i+1));&lt;br /&gt;
    end &lt;br /&gt;
    i=n;&lt;br /&gt;
    del(i)=(y(i)-y(i-1))/(x(i)-x(i-1));&lt;br /&gt;
elseif t==0&lt;br /&gt;
    i=1;&lt;br /&gt;
    del(1)=(y(i)-y(i+1))/(+x(i)-x(i+1));&lt;br /&gt;
    for i=2:n-1&lt;br /&gt;
    del(i)=(y(i+1)-y(i-1))/(2*(x(i)-x(i-1)));&lt;br /&gt;
    end &lt;br /&gt;
    i=n;&lt;br /&gt;
    del(n)=(y(i)-y(i-1))/(x(i)-x(i-1));  &lt;br /&gt;
end&lt;br /&gt;
v=del;&lt;br /&gt;
end&lt;br /&gt;
}}&lt;br /&gt;
'''ECUACIÓN 6:'''&lt;br /&gt;
&lt;br /&gt;
function [ V ] = Ecuacion6( u,x,t )&lt;br /&gt;
{{matlab|codigo= &lt;br /&gt;
&lt;br /&gt;
%se guarda aquí la ecuación diferencial del tipo u_tt=f(x,u,u_x,u_xx)&lt;br /&gt;
%INCLUIDAS LAS CC AQUÍ!&lt;br /&gt;
%PARA u_tt=u_xx&lt;br /&gt;
%CC: u(0,t)=u(L,t)=0;&lt;br /&gt;
&lt;br /&gt;
Ax=x(2)-x(1);&lt;br /&gt;
n=length(u);&lt;br /&gt;
V=zeros(1,n);&lt;br /&gt;
F0=(1/x(n))+0.01;&lt;br /&gt;
b=-2;&lt;br /&gt;
&lt;br /&gt;
%Las condiciones de contorno vienen en x(1)=0 y x(Nx)=L&lt;br /&gt;
&lt;br /&gt;
u(1)=0;&lt;br /&gt;
if(t==-1)&lt;br /&gt;
    u(n)=0;&lt;br /&gt;
else&lt;br /&gt;
    %u(n)=0;&lt;br /&gt;
    u(n)=sin(2*pi*F0*t);&lt;br /&gt;
    %u(n)=(1/(b*Ax-1))*u(n-1);&lt;br /&gt;
end&lt;br /&gt;
for i=2:n-1&lt;br /&gt;
    V(i)=(1/Ax^2)*(u(i+1)-2*u(i)+u(i-1));&lt;br /&gt;
end&lt;br /&gt;
i=1;&lt;br /&gt;
V(i)=(1/Ax^2)*(u(i+2)-2*u(i+1));&lt;br /&gt;
i=n;&lt;br /&gt;
V(i)=(1/Ax^2)*(u(i)-2*u(i-1)+u(i-2));&lt;br /&gt;
end&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:6.1.png|700px|thumb|centre|Gráfica en tres dimensiones de la energía de un cable cuyo extremo derecho está sometido a una vibración externa periódica para F_0=1/L +0,1]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
En esta gráfica observamos las fluctuaciones de la energía al imponer la condición de contorno de carácter sinusoidal. Dichas fluctuaciones se diferencian ya que los tonos más cálidos corresponden a los máximos y los fríos a los mínimos.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''function [ V ] = Ecuacion6( u,x,t )'''&lt;br /&gt;
{{matlab|codigo= &lt;br /&gt;
%se guarda aquí la ecuación diferencial del tipo u_tt=f(x,u,u_x,u_xx)&lt;br /&gt;
%INCLUIDAS LAS CC AQUÍ!&lt;br /&gt;
%PARA u_tt=u_xx&lt;br /&gt;
%CC: u(0,t)=u(L,t)=0;&lt;br /&gt;
&lt;br /&gt;
Ax=x(2)-x(1);&lt;br /&gt;
n=length(u);&lt;br /&gt;
V=zeros(1,n);&lt;br /&gt;
F0=(1/x(n))-0.01;&lt;br /&gt;
b=-2;&lt;br /&gt;
&lt;br /&gt;
%Las condiciones de contorno vienen en x(1)=0 y x(Nx)=L&lt;br /&gt;
&lt;br /&gt;
u(1)=0;&lt;br /&gt;
if(t==-1)&lt;br /&gt;
    u(n)=0;&lt;br /&gt;
else&lt;br /&gt;
    %u(n)=0;&lt;br /&gt;
    u(n)=sin(2*pi*F0*t);&lt;br /&gt;
    %u(n)=(1/(b*Ax-1))*u(n-1);&lt;br /&gt;
end&lt;br /&gt;
for i=2:n-1&lt;br /&gt;
    V(i)=(1/Ax^2)*(u(i+1)-2*u(i)+u(i-1));&lt;br /&gt;
end&lt;br /&gt;
i=1;&lt;br /&gt;
V(i)=(1/Ax^2)*(u(i+2)-2*u(i+1));&lt;br /&gt;
i=n;&lt;br /&gt;
V(i)=(1/Ax^2)*(u(i)-2*u(i-1)+u(i-2));&lt;br /&gt;
end&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:6.2.png|700px|thumb|centre|Gráfica en tres dimensiones de la energía de un cable cuyo extremo derecho está sometido a una vibración externa periódica.]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
En esta gráfica observamos un caso prácticamente similar al anterior y vemos que únicamente lo que varían son las posiciones de los máximos y mínimos de la energía en la cuerda.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''function [ V ] = Ecuacion6( u,x,t )'''&lt;br /&gt;
{{matlab|codigo= &lt;br /&gt;
%se guarda aquí la ecuación diferencial del tipo u_tt=f(x,u,u_x,u_xx)&lt;br /&gt;
%INCLUIDAS LAS CC AQUÍ!&lt;br /&gt;
%PARA u_tt=u_xx&lt;br /&gt;
%CC: u(0,t)=u(L,t)=0;&lt;br /&gt;
&lt;br /&gt;
Ax=x(2)-x(1);&lt;br /&gt;
n=length(u);&lt;br /&gt;
V=zeros(1,n);&lt;br /&gt;
F0=(1/x(n));&lt;br /&gt;
b=-2;&lt;br /&gt;
&lt;br /&gt;
%Las condiciones de contorno vienen en x(1)=0 y x(Nx)=L&lt;br /&gt;
&lt;br /&gt;
u(1)=0;&lt;br /&gt;
if(t==-1)&lt;br /&gt;
    u(n)=0;&lt;br /&gt;
else&lt;br /&gt;
    %u(n)=0;&lt;br /&gt;
    u(n)=sin(2*pi*F0*t);&lt;br /&gt;
    %u(n)=(1/(b*Ax-1))*u(n-1);&lt;br /&gt;
end&lt;br /&gt;
for i=2:n-1&lt;br /&gt;
    V(i)=(1/Ax^2)*(u(i+1)-2*u(i)+u(i-1));&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
i=1;&lt;br /&gt;
V(i)=(1/Ax^2)*(u(i+2)-2*u(i+1));&lt;br /&gt;
i=n;&lt;br /&gt;
V(i)=(1/Ax^2)*(u(i)-2*u(i-1)+u(i-2));&lt;br /&gt;
end&lt;br /&gt;
}}&lt;br /&gt;
 &lt;br /&gt;
La gráfica resultante es la siguiente:&lt;br /&gt;
[[Archivo:6.3.png|700px|thumb|centre|Gráfica en tres dimensiones de la energía de un cable cuyo extremo derecho está sometido a una vibración externa periódica.]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
En este último ensayo se puede apreciar como la energía no presenta grandes variaciones, manteniéndose dichas fluctuaciones en valores próximos entre sí, estando la energía estabilizada y manteniéndose prácticamente constante.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==== Sujeción a un aparato que responde a una vibración externa. ====&lt;br /&gt;
&lt;br /&gt;
La siguiente situación que vamos a representar a modelar a través de ecuaciones diferenciales va a ser la siguiente: supondremos que el cable de la anterior situación (que recibía en su extremo derecho una vibración periódica de &amp;lt;math&amp;gt; F_0 &amp;lt;/math&amp;gt; [Herzios])envía una respuesta a la vibración que recibe. Esta situación la vamos a representar como un cambio en la condición de contorno; ésta va a pasar a ser: &amp;lt;math&amp;gt; u_x(L,t)=bu(L,t) &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
El objetivo, de nuevo será representar la evolución de la energía respecto del tiempo y ver si este cambio en el problema se ve reflejado en su representación. &lt;br /&gt;
En el código numérico, no obstante, la situación de &amp;lt;math&amp;gt; u_x(L,t)=bu(L,t) &amp;lt;/math&amp;gt; la vamos a aproximar por la siguiente expresión:&lt;br /&gt;
&amp;lt;math&amp;gt; u_x(L,t)-bu(L,t)  \cong  \frac{u_{N+1}(t)-u_{N-1}(t)}{2h-u_N(t)} &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
En la resolución del problema emplearemos de nuevo la condición inicial de sujetar el cable por el centro y elevarlo 2 m perpendicularmente: &lt;br /&gt;
&amp;lt;math&amp;gt; u(x,0)=g(x)= 2- |\frac{2}{5}x -2| &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Y además obtendremos el resultado para los dos valores siguientes de &amp;lt;math&amp;gt;b&amp;lt;/math&amp;gt; :&lt;br /&gt;
Para &amp;lt;math&amp;gt; b=2 &amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt; b=-2 &amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
El código numérico de matlab/octave es:&lt;br /&gt;
&lt;br /&gt;
'''PROGRAMA:'''&lt;br /&gt;
{{matlab|codigo= &lt;br /&gt;
clc;clear all;close all;&lt;br /&gt;
&lt;br /&gt;
%Datos&lt;br /&gt;
dx=0.1;L=10;dt=0.0001;NT=40;&lt;br /&gt;
A=[0,1,4,10,100];&lt;br /&gt;
x=0:dx:L;t=0:dt:NT;&lt;br /&gt;
ENE=zeros(5,length(t));&lt;br /&gt;
&lt;br /&gt;
%Condición de contorno: U(0,t)=U(L,t)=0;&lt;br /&gt;
for k=1&lt;br /&gt;
&lt;br /&gt;
%Vector solución y derivada temporal de la solución&lt;br /&gt;
%t=0&amp;lt;&amp;gt;T(1) es donde se guardan las condiciones iniciales&lt;br /&gt;
&lt;br /&gt;
U=zeros(length(t),length(x));&lt;br /&gt;
Dt_U=zeros(length(t),length(x));&lt;br /&gt;
Dx_U=zeros(length(t),length(x));    &lt;br /&gt;
&lt;br /&gt;
%Condición inicial: Estiramos 2 m del centro&lt;br /&gt;
%Modelizado como dos rectas antisimétricas que se cortan en x=5 y&lt;br /&gt;
%sujetas en x=0 y x=L.&lt;br /&gt;
&lt;br /&gt;
U(1,:)=2*sin(x*pi/L);&lt;br /&gt;
Dt_U(1,:)=zeros(1,length(x))';&lt;br /&gt;
D2t_U=Ecuacion7(U(1,:),x,-1);&lt;br /&gt;
&lt;br /&gt;
%Inicio del esquema numérico&lt;br /&gt;
%empieza en 2 ya que el 1 es la cond. inicial&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
%ESQUEMA NEWMARK&lt;br /&gt;
 for i=2:length(t)&lt;br /&gt;
    iter=[k,i]&lt;br /&gt;
    Ua=U(i-1,:);&lt;br /&gt;
    Dt_Ua=Dt_U(i-1,:);&lt;br /&gt;
    D2t_Ua=D2t_U;&lt;br /&gt;
&lt;br /&gt;
    %Derivada segunda respecto del tiempo en el instante t, se obtiene de&lt;br /&gt;
    %eq. diferencial u_tt=f(x,u,u_x,u_xx)&lt;br /&gt;
&lt;br /&gt;
    D2t_U=Ecuacion7(U(i-1,:),x,t(i))-A(k)*Dt_Ua;&lt;br /&gt;
&lt;br /&gt;
    %Derivada primera&lt;br /&gt;
    Dt_U(i,:)=Dt_Ua+0.5*dt*(D2t_Ua+D2t_U);&lt;br /&gt;
&lt;br /&gt;
    %Ecuacion&lt;br /&gt;
    U(i,:) = Ua+Dt_Ua*dt+(1/6)*(D2t_Ua+D2t_U)*dt^2;&lt;br /&gt;
 end&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 %ENERGIA&lt;br /&gt;
 for i=1:length(t)&lt;br /&gt;
    Dx_U(i,:)=deriva(x,U(i,:),0);&lt;br /&gt;
 end&lt;br /&gt;
dE=zeros(length(t),1);&lt;br /&gt;
for i=1:length(x)&lt;br /&gt;
    dE=dE+(Dt_U(:,i).^2+Dx_U(:,i).^2)*dx;&lt;br /&gt;
end&lt;br /&gt;
 ENE(k,:)=dE;&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
 figure(1)&lt;br /&gt;
 hold on&lt;br /&gt;
 grid&lt;br /&gt;
 aa=find(x==L/4);&lt;br /&gt;
 ab=find(x==3*L/4);&lt;br /&gt;
 plot(t,ENE(1,:))&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
'''FUNCIONES:'''&lt;br /&gt;
'''function v = deriva(x,y,t)'''&lt;br /&gt;
{{matlab|codigo= &lt;br /&gt;
n = length(x);&lt;br /&gt;
del=zeros(1,n);&lt;br /&gt;
if t==1&lt;br /&gt;
    i=1;&lt;br /&gt;
    del(1)=(y(i)-y(i+1))/(-x(i)+x(i+1));&lt;br /&gt;
    for i=2:n&lt;br /&gt;
    del(i)=(y(i)-y(i-1))/(x(i)-x(i-1));&lt;br /&gt;
    end &lt;br /&gt;
elseif t==-1&lt;br /&gt;
    for i=1:n-1&lt;br /&gt;
    del(i)=(y(i)-y(i+1))/(x(i)-x(i+1));&lt;br /&gt;
    end &lt;br /&gt;
    i=n;&lt;br /&gt;
    del(i)=(y(i)-y(i-1))/(x(i)-x(i-1));&lt;br /&gt;
elseif t==0&lt;br /&gt;
    i=1;&lt;br /&gt;
    del(1)=(y(i)-y(i+1))/(+x(i)-x(i+1));&lt;br /&gt;
    for i=2:n-1&lt;br /&gt;
    del(i)=(y(i+1)-y(i-1))/(2*(x(i)-x(i-1)));&lt;br /&gt;
    end &lt;br /&gt;
    i=n;&lt;br /&gt;
    del(n)=(y(i)-y(i-1))/(x(i)-x(i-1));  &lt;br /&gt;
end&lt;br /&gt;
v=del;&lt;br /&gt;
end&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
'''function [ V ] = Ecuacion7( u,x,t )'''&lt;br /&gt;
{{matlab|codigo= &lt;br /&gt;
%se guarda aquí la ecuación diferencial del tipo u_tt=f(x,u,u_x,u_xx)&lt;br /&gt;
%INCLUIDAS LAS CC AQUÍ!&lt;br /&gt;
%PARA u_tt=u_xx&lt;br /&gt;
%CC: u(0,t)=u(L,t)=0;&lt;br /&gt;
&lt;br /&gt;
Ax=x(2)-x(1);&lt;br /&gt;
n=length(u);&lt;br /&gt;
V=zeros(1,n);&lt;br /&gt;
F0=(1/x(n));&lt;br /&gt;
b=2;&lt;br /&gt;
&lt;br /&gt;
%Las condiciones de contorno vienen en x(1)=0 y x(Nx)=L&lt;br /&gt;
u(1)=0;&lt;br /&gt;
if(t==-1)&lt;br /&gt;
    u(n)=0;&lt;br /&gt;
else&lt;br /&gt;
    %u(n)=0;&lt;br /&gt;
    %u(n)=sin(2*pi*F0*t);&lt;br /&gt;
    u(n)=(1/(b*Ax-1))*u(n-1);&lt;br /&gt;
end&lt;br /&gt;
for i=2:n-1&lt;br /&gt;
    V(i)=(1/Ax^2)*(u(i+1)-2*u(i)+u(i-1));&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
i=1;&lt;br /&gt;
V(i)=(1/Ax^2)*(u(i+2)-2*u(i+1));&lt;br /&gt;
i=n;&lt;br /&gt;
V(i)=(1/Ax^2)*(u(i)-2*u(i-1)+u(i-2));&lt;br /&gt;
end&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:7.1.png|700px|thumb|centre|Gráfica de la energía (ordenadas) de un cable frente al tiempo (abcisas) que recibe una vibración en su extremo derecho y que responde a dicha vibración para b=2. ]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
La anterior gráfica muestra el comportamiento de la cuerda como respuesta a la vibración producida en uno de sus extremos así como el movimiento transversal del punto medio al comienzo. Podemos observar el movimiento transversal de cada punto de la cuerda a través de la expresión de la energía, así como que, a medida que transcurre el tiempo, ésta se va estabilizando. La forma de la función recuerda a una función sinusoidal debido a la forma de la condición de contorno impuesta. En este caso la fuerza aplicada en el apoyo del extremo derecho de la cuerda es en un sentido ascendente.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''function [ V ] = Ecuacion7( u,x,t )'''&lt;br /&gt;
{{matlab|codigo= &lt;br /&gt;
%se guarda aquí la ecuación diferencial del tipo u_tt=f(x,u,u_x,u_xx)&lt;br /&gt;
%INCLUIDAS LAS CC AQUÍ!&lt;br /&gt;
%PARA u_tt=u_xx&lt;br /&gt;
%CC: u(0,t)=u(L,t)=0;&lt;br /&gt;
&lt;br /&gt;
Ax=x(2)-x(1);&lt;br /&gt;
n=length(u);&lt;br /&gt;
V=zeros(1,n);&lt;br /&gt;
F0=(1/x(n));&lt;br /&gt;
b=-2;&lt;br /&gt;
&lt;br /&gt;
%Las condiciones de contorno vienen en x(1)=0 y x(Nx)=L&lt;br /&gt;
u(1)=0;&lt;br /&gt;
&lt;br /&gt;
if(t==-1)&lt;br /&gt;
    u(n)=0;&lt;br /&gt;
else&lt;br /&gt;
    %u(n)=0;&lt;br /&gt;
    %u(n)=sin(2*pi*F0*t);&lt;br /&gt;
    u(n)=(1/(b*Ax-1))*u(n-1);&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
for i=2:n-1&lt;br /&gt;
    V(i)=(1/Ax^2)*(u(i+1)-2*u(i)+u(i-1));&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
i=1;&lt;br /&gt;
V(i)=(1/Ax^2)*(u(i+2)-2*u(i+1));&lt;br /&gt;
i=n;&lt;br /&gt;
V(i)=(1/Ax^2)*(u(i)-2*u(i-1)+u(i-2));&lt;br /&gt;
end&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
La imagen resultante es:&lt;br /&gt;
[[Archivo:7.2.png|700px|thumb|centre|Gráfica de la energía (ordenadas) de un cable frente al tiempo (abcisas) que recibe una vibración en su extremo derecho y que responde a dicha vibración para b=-2. ]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
En esta última gráfica, se procede al estudio del caso anterior pero ésta vez la carga va aplicada en sentido descendente, como por ejemplo de si un peso se tratase. Apreciamos que la energía se comporta de forma análoga al caso anterior.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Categoría:Ecuaciones Diferentiales]]&lt;br /&gt;
 [[Categoría:ED13/14]]&lt;br /&gt;
 [[Categoría:Trabajos 2013-14]]&lt;/div&gt;</summary>
		<author><name>Lucia Lopez</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Ecuaci%C3%B3n_de_ondas_(grupo_2B)&amp;diff=13399</id>
		<title>Ecuación de ondas (grupo 2B)</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Ecuaci%C3%B3n_de_ondas_(grupo_2B)&amp;diff=13399"/>
				<updated>2014-05-19T22:28:52Z</updated>
		
		<summary type="html">&lt;p&gt;Lucia Lopez: /* Energía del Cable. */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{ TrabajoED | Ecuación de ondas. Grupo 2-B| [[:Categoría:Ecuaciones Diferenciales|Ecuaciones Diferenciales]]|[[:Categoría:ED13/14|Curso 2013-14]]| &lt;br /&gt;
Ignacio Díaz-Caneja Camblor&lt;br /&gt;
&lt;br /&gt;
Alberto Fernández Pérez&lt;br /&gt;
&lt;br /&gt;
Adela González Barbado&lt;br /&gt;
&lt;br /&gt;
Lucia López Sánchez&lt;br /&gt;
&lt;br /&gt;
Araceli Martín Candilejo&lt;br /&gt;
&lt;br /&gt;
Diego Solano López&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
== Modelización de los desplazamientos del Cable. ==&lt;br /&gt;
El problema que se tratará a continuación describe una ecuación de '''tipo hiperbólico''', una '''ecuación de ondas'''.&lt;br /&gt;
Consideramos un '''cable de 10 metros''' de longitud '''sujeto por sus extremos'''. Suponiendo que éste tiene una '''sección pequeña''' respecto a su longitud someteremos al cable a pequeñas vibraciones que estudiaremos con una modelización de la ecuación de ondas. &lt;br /&gt;
Se caracteriza al cable de una masa constante por unidad de volumen, es decir, será '''homogéneo'''. Éste, '''flexible''' a la tracción, únicamente ofrece resistencias en su dirección longitudinal, tangenciales, pero no a esfuerzos de flexión o cortes. Se supone, además, que es '''inextensible''' por lo que será lo suficientemente rígido longitudinalmente como para poder despreciar su extensibilidad.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Con esta modelización se estudiarán las '''pequeñas vibraciones''', desplazamientos transversales, a las que es sometido el cable. Para iniciar el movimiento del cable lo sujetaremos por el centro subiéndolo dos metros, lo que nos proporciona una primera condición inicial determinada por la función g(x), y soltándolo, con una velocidad inicial nula. &lt;br /&gt;
&lt;br /&gt;
&amp;lt;br/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Obtenemos la ecuación &amp;lt;math&amp;gt;u_{tt}-u_{xx}=0&amp;lt;/math&amp;gt; , de la cual se puede observar que tanto el '''módulo de la tensión''' como la '''densidad''' son '''constantes''' ya que el '''módulo de la elasticidad''' es constante, &amp;lt;math&amp;gt;c^2=1&amp;lt;/math&amp;gt; . Al ser ésta primera ecuación homogénea deducimos que transversalmente no actúa ninguna fuerza densidad espacial y temporal. Se deduce del enunciado anterior que las condiciones de frontera son '''homogéneas''', &amp;lt;math&amp;gt;u(0,t)=0&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;u(10,t)=0&amp;lt;/math&amp;gt; que nos indican que los extremos del cable no describen ningún tipo de movimiento en todo instante t al no estar sometidos a ningun tipo de fuerza. Finalmente, añadimos al sistema las condiciones iniciales, la primera de ellas, &amp;lt;math&amp;gt;u(x,0)=g(x)= 2- |\frac{2}{5}x -2|&amp;lt;/math&amp;gt;, define el '''movimiento descrito por la onda''' en el instante t=0 en cualquier punto del cable; y la segunda, &amp;lt;math&amp;gt;u_t(x,0)=0&amp;lt;/math&amp;gt;, que la onda parte de una '''velocidad inicial nula'''.&lt;br /&gt;
[[Image:DV.png|300px|thumb|right|Deslizamiento vertical del cable. ]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
\begin{cases}&lt;br /&gt;
&lt;br /&gt;
u_{tt}- u_{xx}=0  \  x∈[0,10] \ t&amp;gt;0\\&lt;br /&gt;
u(0,t)=0\\&lt;br /&gt;
u(10,t)=0\\&lt;br /&gt;
u(x,0)= 2- |\frac{2}{5}x -2|\\&lt;br /&gt;
u_t(x,0)=0&lt;br /&gt;
\end{cases}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
En los siguientes apartados se realizaran aproximaciones del sistema expuesto con tres métodos distintos de los que más tarde se hará una comparativa.  &lt;br /&gt;
&amp;lt;br/&amp;gt;&lt;br /&gt;
==== Aproximación por el método del trapecio. ====&lt;br /&gt;
El método del trapecio se basa en aproximar una función integrando. Para ello utilizamos un número N de trapecios (en la imagen inferior hemos aproximado mediante 4 trapecios). Las integrales a resolver para poder poder aproximar una función por este método tendrán la distancia de sus límites de integración constantes para todas las integrales, a esta distancia entre los límites de integración lo llamamos paso. En el desarrollo de este método se supone que la función es continua en el intervalo en que se quiere aproximar.&lt;br /&gt;
&amp;lt;br/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Image:Trapecio.png|300px|thumb|center|Función Y(x), el área bajo la curva, se puede aproximar mediante n trapecios]]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br/&amp;gt;&lt;br /&gt;
{{matlab|codigo= &lt;br /&gt;
%u_tt-u_xx=0&lt;br /&gt;
%u(0,t)=u(l,t)=0&lt;br /&gt;
%u(x,0)=2-abs(0.4x-2)&lt;br /&gt;
%ut(x,0)=0&lt;br /&gt;
clear all&lt;br /&gt;
&lt;br /&gt;
%Datos del problema&lt;br /&gt;
L=10;&lt;br /&gt;
T=40;&lt;br /&gt;
&lt;br /&gt;
%Discretización&lt;br /&gt;
h=0.1;&lt;br /&gt;
N=L/h;&lt;br /&gt;
x=0:h:L;&lt;br /&gt;
xint=h:h:L-h;&lt;br /&gt;
dt=h;&lt;br /&gt;
t=0:dt:T;&lt;br /&gt;
&lt;br /&gt;
%Aprox. de u_xx&lt;br /&gt;
K=2*diag(ones(1,N-1))-diag(ones(1,N-2),-1)-diag(ones(1,N-2),1);&lt;br /&gt;
K=K/h^2;&lt;br /&gt;
F=zeros(N-1,1);&lt;br /&gt;
&lt;br /&gt;
%Posición inicial.&lt;br /&gt;
u0=(2-abs(xint*2/5-2))';&lt;br /&gt;
v0=zeros(N-1,1);&lt;br /&gt;
&lt;br /&gt;
%Aprox. de u_tt&lt;br /&gt;
M=[zeros(N-1),eye(N-1);-K,zeros(N-1)];&lt;br /&gt;
G=[zeros(N-1,1);F];&lt;br /&gt;
&lt;br /&gt;
%Aproximación por el método del Trapecio&lt;br /&gt;
W0=[u0;v0];&lt;br /&gt;
WW=W0;&lt;br /&gt;
sol=zeros(length(t),N+1);&lt;br /&gt;
sol(1,:)=[0,W0(1:N-1)',0];&lt;br /&gt;
for j=1:length(t)-1&lt;br /&gt;
    WW=(eye(2*N-2)-dt/2*M)\(eye(2*N-2)+dt/2*M)*WW;&lt;br /&gt;
    sol(j+1,:)=[0,WW(1:N-1)',0];&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
%Dibujo de la solución&lt;br /&gt;
[xx,tt]=meshgrid(x,t);&lt;br /&gt;
surf(xx,tt,sol);&lt;br /&gt;
xlabel('Desplazamiento horizontal');&lt;br /&gt;
ylabel('Tiempo');&lt;br /&gt;
zlabel('Desplazamiento vertical');}}&lt;br /&gt;
&lt;br /&gt;
[[Image:klklk.jpg|700px|thumb|center|Aproximación por el método del Trapecio.]]&lt;br /&gt;
&lt;br /&gt;
Como el método del trapecio tiene '''orden de precisión 2''' sabemos que se trata de una buena aproximación, pero gráficamente también podemos observar que éste es bastante preciso.&lt;br /&gt;
&lt;br /&gt;
==== Aproximación por el método de Euler. ====&lt;br /&gt;
Se exponen en este apartado dos tipos de aproximaciones de Euler.&lt;br /&gt;
&lt;br /&gt;
Este método se basa en la posibilidad de aproximar una función original mediante rectas tangentes partiendo de un punto dado. Sabiendo que la recta tangente de una función en un punto es la derivada en dicho punto, este método consiste en calcular derivadas de la función en diferentes puntos pertenecientes a ella. Estos puntos serán tomados con la misma distancia a lo largo de la recta, a esta distancia la denominamos paso de discretización. &lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Image:Euler.png|300px|thumb|center|Aproximación de una función por el método de Euler]]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===== Euler Explícito. =====&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
%utt-uxx=0&lt;br /&gt;
%u(0,t)=u(l,t)=0&lt;br /&gt;
%u(x,0)=2-abs(0.4x-2)&lt;br /&gt;
%ut(x,0)=0&lt;br /&gt;
clear all&lt;br /&gt;
L=10;&lt;br /&gt;
T=40;&lt;br /&gt;
h=0.1;&lt;br /&gt;
N=L/h;&lt;br /&gt;
x=0:h:L;&lt;br /&gt;
xint=h:h:L-h;&lt;br /&gt;
dt=h;&lt;br /&gt;
t=0:dt:T;&lt;br /&gt;
K=2*diag(ones(1,N-1))-diag(ones(1,N-2),-1)-diag(ones(1,N-2),1);&lt;br /&gt;
K=K/h^2;&lt;br /&gt;
F=zeros(N-1,1);&lt;br /&gt;
u0=(2-abs(xint*2/5-2))';&lt;br /&gt;
v0=zeros(N-1,1);&lt;br /&gt;
M=[zeros(N-1),eye(N-1);-K,zeros(N-1)];&lt;br /&gt;
G=[zeros(N-1,1);F];&lt;br /&gt;
W0=[u0;v0];&lt;br /&gt;
WW=W0;&lt;br /&gt;
sol=zeros(length(t),N+1);&lt;br /&gt;
sol(1,:)=[0,W0(1:N-1)',0];&lt;br /&gt;
for j=1:length(t)-1&lt;br /&gt;
    k1=[zeros(N-1), eye(N-1); -K, -K.*dt];&lt;br /&gt;
    k2=[zeros(N-1), eye(N-1); -K, -K.*dt];&lt;br /&gt;
    WW=WW+(k1+k2)*WW.*(dt/2);&lt;br /&gt;
    sol(j+1,:)=[0,WW(1:N-1)',0];&lt;br /&gt;
end&lt;br /&gt;
[xx,tt]=meshgrid(x,t);&lt;br /&gt;
surf(xx,tt,sol);&lt;br /&gt;
xlabel('Desplazamiento horizontal');&lt;br /&gt;
ylabel('Tiempo');&lt;br /&gt;
zlabel('Desplazamiento vertical');}}&lt;br /&gt;
&lt;br /&gt;
[[Image:3a3a.png|700px|thumb|center|Aproximación de una función por el método de Euler Explícito]]&lt;br /&gt;
&lt;br /&gt;
===== Euler Modificado. =====&lt;br /&gt;
&lt;br /&gt;
Este método se basa en la misma idea que el anterior, pero hace un refinamiento en la aproximación, tomando un promedio entre las pendientes, esto parece más razonable para la obtención de un valor más preciso.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
%utt-uxx=0&lt;br /&gt;
%u(0,t)=u(l,t)=0&lt;br /&gt;
%u(x,0)=2-abs(0.4x-2)&lt;br /&gt;
%ut(x,0)=0&lt;br /&gt;
clear all&lt;br /&gt;
L=10;&lt;br /&gt;
T=40;&lt;br /&gt;
h=0.1;&lt;br /&gt;
N=L/h;&lt;br /&gt;
x=0:h:L;&lt;br /&gt;
xint=h:h:L-h;&lt;br /&gt;
dt=h;&lt;br /&gt;
t=0:dt:T;&lt;br /&gt;
K=2*diag(ones(1,N-1))-diag(ones(1,N-2),-1)-diag(ones(1,N-2),1);&lt;br /&gt;
K=K/h^2;&lt;br /&gt;
F=zeros(N-1,1);&lt;br /&gt;
U=(2-abs(xint*2/5-2))';&lt;br /&gt;
V=zeros(N-1,1);&lt;br /&gt;
sol(1,:)=[0 U' 0];&lt;br /&gt;
for i=1:length(t)-1;&lt;br /&gt;
    U=U+dt*V;&lt;br /&gt;
    V=V-dt*K*U;&lt;br /&gt;
    sol(i+1,:)=[0 U' 0];&lt;br /&gt;
end&lt;br /&gt;
[xx,tt]=meshgrid(x,t);&lt;br /&gt;
surf(xx,tt,sol);&lt;br /&gt;
xlabel('Desplazamiento horizontal');&lt;br /&gt;
ylabel('Tiempo');&lt;br /&gt;
zlabel('Desplazamiento vertical');}}&lt;br /&gt;
[[Image:3b3b.png|700px|thumb|center|Aproximación de una función por el método de Euler Modificado]]&lt;br /&gt;
&lt;br /&gt;
Antes de comentar las dos gráficas anteriores, se debe insistir en que el '''orden de precisión''' del método de Euler es '''1''', por tanto, será menos preciso que el primero.&lt;br /&gt;
&lt;br /&gt;
Fijándonos en las gráficas, observamos que la gráfica obtenida mediante Euler modificado realiza una mejor aproximación, como ya habíamos anticipado al comentar que éste método se basa en mejorar la aproximación del método de Euler sencillo. Por tanto, se asemeja mejor a la obtenida mediante el método del Trapecio que la primera aproximación de Euler.&lt;br /&gt;
&lt;br /&gt;
==== Aproximación por Fourier con diferentes términos de series. ====&lt;br /&gt;
En este apartado se ofrece una aproximación alternativa a las anteriores. Se muestran '''cinco iteraciones''' distintas del '''método del Fourier''' que se compararan entre sí y con los métodos anteriores, Trapecio y Euler. Este método de aproximación depende del número de términos de serie (lo denominamos con la letra Q) con los que se realice el programa de Fourier.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br/&amp;gt;&lt;br /&gt;
Puesto que la realización de este método es la misma sea cual sea el número de serie elegido, se han expuesto únicamente dos casos de Q para una mayor claridad del programa.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo= %utt-uxx=0&lt;br /&gt;
%u(0,t)=u(l,t)=0&lt;br /&gt;
%u(x,0)=2-abs(0.4x-2)&lt;br /&gt;
%ut(x,0)=0&lt;br /&gt;
&lt;br /&gt;
%1 iteracion&lt;br /&gt;
clear all&lt;br /&gt;
L=10;&lt;br /&gt;
T=40;&lt;br /&gt;
Q=1;&lt;br /&gt;
h=0.1;&lt;br /&gt;
N=L/h;&lt;br /&gt;
x=0:h:L;&lt;br /&gt;
dt=h;&lt;br /&gt;
t=0:dt:T;&lt;br /&gt;
sol=zeros(length(t),N+1);&lt;br /&gt;
for k=1:Q&lt;br /&gt;
    phi=sin(k/L*pi*x);&lt;br /&gt;
    a=trapz(x,(2-abs(2/5*x-2)).*phi)/(trapz(x,phi.^2));&lt;br /&gt;
    b=0;&lt;br /&gt;
    T=a.*cos(k*pi*t/L);&lt;br /&gt;
    sol=sol+T'*phi;&lt;br /&gt;
end&lt;br /&gt;
[xx,tt]=meshgrid(x,t);&lt;br /&gt;
figure (1)&lt;br /&gt;
surf(xx,tt,sol)&lt;br /&gt;
xlabel('Desplazamiento horizontal');&lt;br /&gt;
ylabel('Tiempo');&lt;br /&gt;
zlabel('Desplazamiento vertical');&lt;br /&gt;
&lt;br /&gt;
%3 iteracion&lt;br /&gt;
clear all&lt;br /&gt;
L=10;&lt;br /&gt;
T=40;&lt;br /&gt;
Q=3;&lt;br /&gt;
h=0.1;&lt;br /&gt;
N=L/h;&lt;br /&gt;
x=0:h:L;&lt;br /&gt;
dt=h;&lt;br /&gt;
t=0:dt:T;&lt;br /&gt;
sol=zeros(length(t),N+1);&lt;br /&gt;
for k=1:Q&lt;br /&gt;
    phi=sin(k/L*pi*x);&lt;br /&gt;
    a=trapz(x,(2-abs(2/5*x-2)).*phi)/(trapz(x,phi.^2));&lt;br /&gt;
    b=0;&lt;br /&gt;
    T=a.*cos(k*pi*t/L);&lt;br /&gt;
    sol=sol+T'*phi;&lt;br /&gt;
end&lt;br /&gt;
[xx,tt]=meshgrid(x,t);&lt;br /&gt;
figure (2)&lt;br /&gt;
surf(xx,tt,sol)&lt;br /&gt;
xlabel('Desplazamiento horizontal');&lt;br /&gt;
ylabel('Tiempo');&lt;br /&gt;
zlabel('Desplazamiento vertical');}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br/&amp;gt;&lt;br /&gt;
[[Image:81tF2.jpg|525px|thumb|left|Aproximación por el método del Trapecio con un término de serie.]]&lt;br /&gt;
[[Image:82tF.jpg|525px|thumb|center|Aproximación por el método del Trapecio con tres términos de serie.]]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br/&amp;gt; &lt;br /&gt;
&lt;br /&gt;
[[Image:83tF.jpg|525px|thumb|left|Aproximación por el método del Trapecio con cinco términos de serie.]]&lt;br /&gt;
[[Image:84tF.jpg|525px|thumb|center|Aproximación por el método del Trapecio con diez términos de serie.]]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Image:85tF.jpg|525px|thumb|center|Aproximación por el método del Trapecio con veinte términos de serie.]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
En este método podemos observar fijándonos en las gráficas que a mayor número de términos (mayor Q), mayor es la aproximación obtenida y más estable.&lt;br /&gt;
&lt;br /&gt;
Realizando una comparación con los otros métodos, se puede observar, fijándonos en las gráficas y en los órdenes de precisión, que el método que mejor aproxima  la ecuación del problema es el método del trapecio, seguido de Euler modificado y, por último, Euler, teniendo mayor orden el que mejor aproxima la función.&lt;br /&gt;
&lt;br /&gt;
Gráficamente podemos confirmar este hecho, dándonos cuenta que las gráficas más similares son fourier con Q=20 y el método del trapecio.&lt;br /&gt;
&lt;br /&gt;
== Energía del Cable. ==&lt;br /&gt;
&lt;br /&gt;
La energía del cable que viene definida por la función: &lt;br /&gt;
\begin{equation}&lt;br /&gt;
E(t) = \int_{0}^{L} (u_{t}^{2}(x,t)+ u_{x}^{2}(x,t)) \cdot dx&lt;br /&gt;
\end{equation}&lt;br /&gt;
&lt;br /&gt;
El método utilizado en el desarrollo numérico de está expresión es el '''método de diferencias finitas'''&lt;br /&gt;
(Funciona calculando de manera aproximada las soluciones a las ecuaciones diferenciales usando ecuaciones diferenciales finitas para aproximar derivadas.).&lt;br /&gt;
&lt;br /&gt;
'''FUNCIÓN:'''&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
function v = deriva(x,y,t)&lt;br /&gt;
&lt;br /&gt;
n = length(x);&lt;br /&gt;
del=zeros(1,n);&lt;br /&gt;
&lt;br /&gt;
if t==1&lt;br /&gt;
    &lt;br /&gt;
    i=1;&lt;br /&gt;
    del(1)=(y(i)-y(i+1))/(-x(i)+x(i+1));&lt;br /&gt;
&lt;br /&gt;
    for i=2:n&lt;br /&gt;
    del(i)=(y(i)-y(i-1))/(x(i)-x(i-1));&lt;br /&gt;
    end &lt;br /&gt;
    &lt;br /&gt;
elseif t==-1&lt;br /&gt;
&lt;br /&gt;
    for i=1:n-1&lt;br /&gt;
    del(i)=(y(i)-y(i+1))/(x(i)-x(i+1));&lt;br /&gt;
    end &lt;br /&gt;
    &lt;br /&gt;
    i=n;&lt;br /&gt;
    del(i)=(y(i)-y(i-1))/(x(i)-x(i-1));&lt;br /&gt;
    &lt;br /&gt;
elseif t==0&lt;br /&gt;
    &lt;br /&gt;
    i=1;&lt;br /&gt;
    del(1)=(y(i)-y(i+1))/(+x(i)-x(i+1));&lt;br /&gt;
    &lt;br /&gt;
    for i=2:n-1&lt;br /&gt;
    del(i)=(y(i+1)-y(i-1))/(2*(x(i)-x(i-1)));&lt;br /&gt;
    end &lt;br /&gt;
    &lt;br /&gt;
    i=n;&lt;br /&gt;
    del(n)=(y(i)-y(i-1))/(x(i)-x(i-1));  &lt;br /&gt;
    &lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
v=del;&lt;br /&gt;
&lt;br /&gt;
end&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''PROGRAMA:'''&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
clc;clear all;&lt;br /&gt;
L=10;dx=0.1;N=L/dx;&lt;br /&gt;
x=dx:dx:L-dx;&lt;br /&gt;
xtot=0:dx:L;&lt;br /&gt;
T=40;dt=0.1;t=0:dt:T;&lt;br /&gt;
K=2*diag(ones(1,N-1))-diag(ones(1,N-2),1)-diag(ones(1,N-2),-1);&lt;br /&gt;
K=(1/dx^2)*K;&lt;br /&gt;
U=(2-abs((x*2/5-2)))';&lt;br /&gt;
V=(0*x)';&lt;br /&gt;
sol(1,:)=[0 U' 0];&lt;br /&gt;
for i=1:length(t)-1;&lt;br /&gt;
    U=U+dt*V;&lt;br /&gt;
    V=V-dt*K*U;&lt;br /&gt;
    sol(i+1,:)=[0 U' 0];&lt;br /&gt;
end&lt;br /&gt;
%DERIVAMOS LA SOLUCION EN x Y EN t:&lt;br /&gt;
dsol_dx=ones(size(sol));&lt;br /&gt;
for i=1:length(t)&lt;br /&gt;
    dsol_dx(i,:)=deriva(sol(i,:),xtot,0);&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
dsol_dt=ones(size(sol));&lt;br /&gt;
for i=1:length(xtot)&lt;br /&gt;
    dsol_dt(:,i)=deriva(sol(:,i),t,1); &lt;br /&gt;
end&lt;br /&gt;
%SUMAMOS LAS DERIVADAS AL CUADRADO E INTEGRAMOS:&lt;br /&gt;
dE=zeros(1,size(t,1));&lt;br /&gt;
for i=1:length(xtot)&lt;br /&gt;
    dE=dE+(dsol_dt(i,:).^2+dsol_dx(i,:).^2)*dx;&lt;br /&gt;
end&lt;br /&gt;
xtot=0:dx:L;&lt;br /&gt;
[xx,tt]=meshgrid(xtot,t);&lt;br /&gt;
figure(1)&lt;br /&gt;
surf(xx,tt,dsol_dx);&lt;br /&gt;
figure(2)&lt;br /&gt;
surf(xx,tt,dsol_dt);&lt;br /&gt;
plot(dE,t)&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
'''CÓDIGO PARA ENERGÍA CON EULER MODIFICADO Y TRAPECIO'''&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
clc;clear all;&lt;br /&gt;
L=10;dx=0.1;N=L/dx;&lt;br /&gt;
x=dx:dx:L-dx;&lt;br /&gt;
xtot=0:dx:L;&lt;br /&gt;
T=40;dt=0.1;t=0:dt:T;&lt;br /&gt;
K=2*diag(ones(1,N-1))-diag(ones(1,N-2),1)-diag(ones(1,N-2),-1);&lt;br /&gt;
K=(1/dx^2)*K;&lt;br /&gt;
u0=(2-abs(x*2/5-2))';&lt;br /&gt;
v0=zeros(N-1,1);&lt;br /&gt;
M=[zeros(N-1),eye(N-1);-K,zeros(N-1)];&lt;br /&gt;
G=[zeros(N-1,1);zeros(N-1,1)];&lt;br /&gt;
W0=[u0;v0];&lt;br /&gt;
WW=W0;&lt;br /&gt;
sol=zeros(length(t),N+1);&lt;br /&gt;
sol(1,:)=[0,W0(1:N-1)',0];&lt;br /&gt;
for j=1:length(t)-1&lt;br /&gt;
    WW=(eye(2*N-2)-dt/2*M)\(eye(2*N-2)+dt/2*M)*WW;&lt;br /&gt;
    sol(j+1,:)=[0,WW(1:N-1)',0];&lt;br /&gt;
end&lt;br /&gt;
%DERIVAMOS LA SOLUCION EN x Y EN t:&lt;br /&gt;
dsol_dx=ones(size(sol));&lt;br /&gt;
for i=1:length(t)&lt;br /&gt;
    dsol_dx(i,:)=deriva(sol(i,:),xtot,0);&lt;br /&gt;
end&lt;br /&gt;
 &lt;br /&gt;
dsol_dt=ones(size(sol));&lt;br /&gt;
for i=1:length(xtot)&lt;br /&gt;
    dsol_dt(:,i)=deriva(sol(:,i),t,1); &lt;br /&gt;
end&lt;br /&gt;
%SUMAMOS LAS DERIVADAS AL CUADRADO E INTEGRAMOS:&lt;br /&gt;
dE=zeros(1,size(t,1));&lt;br /&gt;
for i=1:length(xtot)&lt;br /&gt;
    dE=dE+(dsol_dt(i,:).^2+dsol_dx(i,:).^2)*dx;&lt;br /&gt;
end&lt;br /&gt;
xtot=0:dx:L;&lt;br /&gt;
[xx,tt]=meshgrid(xtot,t);&lt;br /&gt;
figure(1)&lt;br /&gt;
surf(xx,tt,dsol_dx);&lt;br /&gt;
figure(2)&lt;br /&gt;
surf(xx,tt,dsol_dt);&lt;br /&gt;
plot(dE,t)&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
El resultado habría de ser una gráfica que representase la evolución de la energía de la cuerda frente al transcurso del tiempo. No obstante, en nuestra resolución aparece una gráfica en blanco que ajudicamos o a un posible error en el código, o que podemos interpretar como que la energía tiende a infinito.&lt;br /&gt;
&lt;br /&gt;
== Aplicaciones. ==&lt;br /&gt;
&lt;br /&gt;
==== Sumersión en un medio viscoso. ====&lt;br /&gt;
&lt;br /&gt;
Suponemos ahora la inmersión del cable en una medio viscoso. Este medio viscoso produce un amortiguamiento en el movimiento del cable, con lo que la anterior ecuación diferencial se convertiría en &lt;br /&gt;
\begin{equation}&lt;br /&gt;
u_{tt}-u_{xx}+au_{t}=0&lt;br /&gt;
\end{equation} &lt;br /&gt;
, siendo '''&amp;lt;math&amp;gt; a  &amp;lt;/math&amp;gt;''' una constante de amortiguamiento propia del medio viscoso.&lt;br /&gt;
Puesto que la función '''&amp;lt;math&amp;gt; u(x,t)  &amp;lt;/math&amp;gt;''' se ve afectada ahora por el medio viscoso, y más directamente, por la constante '''&amp;lt;math&amp;gt; a  &amp;lt;/math&amp;gt;''' que actúa en su nombre, la energía del cable ,que se expresaba como una integral en función de '''&amp;lt;math&amp;gt; u(x,t)  &amp;lt;/math&amp;gt;''' también se va a ver afectada:&lt;br /&gt;
\begin{equation}&lt;br /&gt;
E(t) = \int_{0}^{L} (u_{t}^{2}(x,t)+ u_{x}^{2}(x,t)) \cdot dx&lt;br /&gt;
\end{equation}&lt;br /&gt;
&lt;br /&gt;
El obetivo del siguiente código será hallar una representación de la evolución de la energía en función del tiempo a raíz de la modificación de la función '''&amp;lt;math&amp;gt; u(x,t)  &amp;lt;/math&amp;gt;'''. Para ello asignaremos distintos valores a la constante '''&amp;lt;math&amp;gt; a  &amp;lt;/math&amp;gt;'''. Éstos van a ser:&lt;br /&gt;
'''&amp;lt;math&amp;gt; a=0  &amp;lt;/math&amp;gt;''' (la energía para este valor resultará igual que la hallada en el apartado anterior)&lt;br /&gt;
'''&amp;lt;math&amp;gt; a=1  &amp;lt;/math&amp;gt;'''&lt;br /&gt;
'''&amp;lt;math&amp;gt; a=4  &amp;lt;/math&amp;gt;'''&lt;br /&gt;
'''&amp;lt;math&amp;gt; a=10  &amp;lt;/math&amp;gt;'''&lt;br /&gt;
''&amp;lt;math&amp;gt; a=100  &amp;lt;/math&amp;gt;'''&lt;br /&gt;
&lt;br /&gt;
El procedimiento numérico volverá a seguir el método de '''diferencias finitas''':&lt;br /&gt;
&lt;br /&gt;
'''PROGRAMA:'''&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
clc;clear all;close all;&lt;br /&gt;
%Datos&lt;br /&gt;
dx=0.1;L=10;&lt;br /&gt;
dt=0.001;NT=40;&lt;br /&gt;
A=[0,1,4,10,100];&lt;br /&gt;
x=0:dx:L;&lt;br /&gt;
t=0:dt:NT;&lt;br /&gt;
ENE=zeros(5,length(t));&lt;br /&gt;
&lt;br /&gt;
%Condición de contorno: U(0,t)=U(L,t)=0;&lt;br /&gt;
&lt;br /&gt;
for k=1:5&lt;br /&gt;
&lt;br /&gt;
%Vector solución y derivada temporal de la solución&lt;br /&gt;
%t=0&amp;lt;&amp;gt;T(1) es donde se guardan las condiciones iniciales&lt;br /&gt;
&lt;br /&gt;
U=zeros(length(t),length(x));&lt;br /&gt;
Dt_U=zeros(length(t),length(x));&lt;br /&gt;
Dx_U=zeros(length(t),length(x));    &lt;br /&gt;
&lt;br /&gt;
%Condición inicial: Estiramos 2 m del centro&lt;br /&gt;
%Modelizado como dos rectas antisimétricas que se cortan en x=5 y&lt;br /&gt;
%sujetas en x=0 y x=L.&lt;br /&gt;
&lt;br /&gt;
U(1,:)=2*sin(x*pi/L);&lt;br /&gt;
Dt_U(1,:)=zeros(1,length(x))';&lt;br /&gt;
D2t_U=Ecuacion5(U(1,:),x,-1);&lt;br /&gt;
&lt;br /&gt;
%Inicio del esquema numérico&lt;br /&gt;
%empieza en 2 ya que el 1 es la cond. inicial&lt;br /&gt;
&lt;br /&gt;
%ESQUEMA NEWMARK&lt;br /&gt;
&lt;br /&gt;
 for i=2:length(t)&lt;br /&gt;
    iter=[k,i]&lt;br /&gt;
    Ua=U(i-1,:);&lt;br /&gt;
    Dt_Ua=Dt_U(i-1,:);&lt;br /&gt;
    D2t_Ua=D2t_U;&lt;br /&gt;
    %Derivada segunda respecto del tiempo en el instante t, se obtiene de&lt;br /&gt;
    %eq. diferencial u_tt=f(x,u,u_x,u_xx)&lt;br /&gt;
    D2t_U=Ecuacion5(U(i-1,:),x,t(i))-A(k)*Dt_Ua;&lt;br /&gt;
    %Derivada primera&lt;br /&gt;
    Dt_U(i,:)=Dt_Ua+0.5*dt*(D2t_Ua+D2t_U);&lt;br /&gt;
    %Ecuacion&lt;br /&gt;
    U(i,:) = Ua+Dt_Ua*dt+(1/6)*(D2t_Ua+D2t_U)*dt^2;&lt;br /&gt;
 end&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 %ENERGIA&lt;br /&gt;
 for i=1:length(t)&lt;br /&gt;
    Dx_U(i,:)=deriva(x,U(i,:),0);&lt;br /&gt;
 end&lt;br /&gt;
dE=zeros(length(t),1);&lt;br /&gt;
for i=1:length(x)&lt;br /&gt;
    dE=dE+(Dt_U(:,i).^2+Dx_U(:,i).^2)*dx;&lt;br /&gt;
end&lt;br /&gt;
 ENE(k,:)=dE;&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
 figure(1)&lt;br /&gt;
 hold on&lt;br /&gt;
 grid&lt;br /&gt;
 aa=find(x==L/4);&lt;br /&gt;
 ab=find(x==3*L/4);&lt;br /&gt;
 legend('A=0','A=1','A=4','A=10','A=100');&lt;br /&gt;
 plot(t,ENE(1,:),t,ENE(2,:),t,ENE(3,:),t,ENE(4,:),t,ENE(5,:));&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''FUNCIONES:'''&lt;br /&gt;
DERIVA:&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
function v = deriva(x,y,t)&lt;br /&gt;
n = length(x);&lt;br /&gt;
del=zeros(1,n);&lt;br /&gt;
if t==1&lt;br /&gt;
    i=1;&lt;br /&gt;
    del(1)=(y(i)-y(i+1))/(-x(i)+x(i+1));&lt;br /&gt;
    for i=2:n&lt;br /&gt;
    del(i)=(y(i)-y(i-1))/(x(i)-x(i-1));&lt;br /&gt;
    end &lt;br /&gt;
elseif t==-1&lt;br /&gt;
    for i=1:n-1&lt;br /&gt;
    del(i)=(y(i)-y(i+1))/(x(i)-x(i+1));&lt;br /&gt;
    end &lt;br /&gt;
    i=n;&lt;br /&gt;
    del(i)=(y(i)-y(i-1))/(x(i)-x(i-1));&lt;br /&gt;
elseif t==0&lt;br /&gt;
    i=1;&lt;br /&gt;
    del(1)=(y(i)-y(i+1))/(+x(i)-x(i+1));&lt;br /&gt;
    for i=2:n-1&lt;br /&gt;
    del(i)=(y(i+1)-y(i-1))/(2*(x(i)-x(i-1)));&lt;br /&gt;
    end &lt;br /&gt;
    i=n;&lt;br /&gt;
    del(n)=(y(i)-y(i-1))/(x(i)-x(i-1));  &lt;br /&gt;
end&lt;br /&gt;
v=del;&lt;br /&gt;
end&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
'''ECUACIÓN 5:'''&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
function [ V ] = Ecuacion5( u,x,t )&lt;br /&gt;
%se guarda aquí la ecuación diferencial del tipo u_tt=f(x,u,u_x,u_xx)&lt;br /&gt;
%INCLUIDAS LAS CC AQUÍ&lt;br /&gt;
%PARA u_tt=u_xx&lt;br /&gt;
%CC: u(0,t)=u(L,t)=0;&lt;br /&gt;
&lt;br /&gt;
Ax=x(2)-x(1);&lt;br /&gt;
n=length(u);&lt;br /&gt;
V=zeros(1,n);&lt;br /&gt;
&lt;br /&gt;
%Las condiciones de contorno vienen en x(1)=0 y x(Nx)=L&lt;br /&gt;
u(1)=0;&lt;br /&gt;
&lt;br /&gt;
if(t==-1)&lt;br /&gt;
    u(n)=0;&lt;br /&gt;
else&lt;br /&gt;
    u(n)=0;&lt;br /&gt;
    %u(n)=sin(2*pi*F0*t);&lt;br /&gt;
    %u(n)=(1/(b*Ax-1))*u(n-1);&lt;br /&gt;
end&lt;br /&gt;
for i=2:n-1&lt;br /&gt;
    &lt;br /&gt;
    V(i)=(1/Ax^2)*(u(i+1)-2*u(i)+u(i-1));&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
i=1;&lt;br /&gt;
V(i)=(1/Ax^2)*(u(i+2)-2*u(i+1));&lt;br /&gt;
i=n;&lt;br /&gt;
V(i)=(1/Ax^2)*(u(i)-2*u(i-1)+u(i-2));&lt;br /&gt;
end&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
La gráfica buscada es:&lt;br /&gt;
[[Archivo:Graficadelaenergiaenunmedioviscoso.png|700px|thumb|centre|Gráfica de la energía(ordenadas) del cable respecto del tiempo (Abcisas).]]&lt;br /&gt;
En la gráfica se aprecian cuatro curvas de distintos colores correspondientes a '''&amp;lt;math&amp;gt; a=0  &amp;lt;/math&amp;gt;''','''&amp;lt;math&amp;gt; a=1  &amp;lt;/math&amp;gt;''','''&amp;lt;math&amp;gt; a=4  &amp;lt;/math&amp;gt;''','''&amp;lt;math&amp;gt; a=10  &amp;lt;/math&amp;gt;''',''&amp;lt;math&amp;gt; a=100  &amp;lt;/math&amp;gt;'''.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Como podemos apreciar el valor de la energía disminuye a medida que aumentamos el valor de &amp;quot;a&amp;quot;. Esto es debido a que &amp;quot;a&amp;quot; define el coeficiente de amortiguamiento del líquido en el cual se encuentra la cuerda. Luego, dicha disminución de energía se produce por la disipación en el medio de gran parte de la energía inicial.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==== Sujeción a una estructura de vibración periódica. ====&lt;br /&gt;
&lt;br /&gt;
En este caso supondremos que el extremo derecho que sujeta el cable está sometido a una vibración periódica de frecuencia  &amp;lt;math&amp;gt; F_0 &amp;lt;/math&amp;gt; [Herzios]. Al haber una vibración externa que afecta directamente al cable la expresión de su movimiento y, por consecuencia, de su energía, se va a ver modificada. Nosotros incluiremos esta modificación en la función &amp;lt;math&amp;gt; f(t) &amp;lt;/math&amp;gt; de problema de valor inicial que venimos tratando. Esta función va a pasar a ser: &lt;br /&gt;
\begin{equation}&lt;br /&gt;
f(t)= sin(2 \pi F_0t)&lt;br /&gt;
\end{equation}&lt;br /&gt;
&lt;br /&gt;
El objetivo será el de ver cómo afecta esta alteración en el desarrollo de la energía del cable frente al tiempo.&lt;br /&gt;
Para nuestro cálculo numérico especificaremos para las siguientes situaciones:&lt;br /&gt;
En primer lugar, para: &amp;lt;math&amp;gt; F_0= \frac{1}{L} + 0,01 &amp;lt;/math&amp;gt;&lt;br /&gt;
Después,para: &amp;lt;math&amp;gt; F_0= \frac{1}{L} - 0,01 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Y para finalizar, lo estudiaremos en un intervalo de tiempo de '''t=0''' hasta '''t=60''' : &amp;lt;math&amp;gt;t \in (0,60)&amp;lt;/math&amp;gt; [segundos].&lt;br /&gt;
&lt;br /&gt;
El código matemático para matlab / octave:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''PROGRAMA:'''&lt;br /&gt;
{{matlab|codigo= &lt;br /&gt;
clc;clear all;close all;&lt;br /&gt;
&lt;br /&gt;
%Datos&lt;br /&gt;
&lt;br /&gt;
dx=0.1;L=10;dt=0.0001;NT=60;&lt;br /&gt;
A=[0,1,4,10,100];&lt;br /&gt;
x=0:dx:L;t=0:dt:NT;&lt;br /&gt;
ENE=zeros(5,length(t));&lt;br /&gt;
&lt;br /&gt;
%Condición de contorno: U(0,t)=U(L,t)=0;&lt;br /&gt;
for k=1&lt;br /&gt;
%Vector solución y derivada temporal de la solución&lt;br /&gt;
%t=0&amp;lt;&amp;gt;T(1) es donde se guardan las condiciones iniciales&lt;br /&gt;
&lt;br /&gt;
U=zeros(length(t),length(x));&lt;br /&gt;
Dt_U=zeros(length(t),length(x));&lt;br /&gt;
Dx_U=zeros(length(t),length(x));&lt;br /&gt;
&lt;br /&gt;
%Condición inicial: Estiramos 2 m del centro&lt;br /&gt;
%Modelizado como dos rectas antisimétricas que se cortan en x=5 y&lt;br /&gt;
%sujetas en x=0 y x=L.&lt;br /&gt;
&lt;br /&gt;
U(1,:)=2*sin(x*pi/L);&lt;br /&gt;
Dt_U(1,:)=zeros(1,length(x))';&lt;br /&gt;
D2t_U=Ecuacion6(U(1,:),x,-1);&lt;br /&gt;
&lt;br /&gt;
%Inicio del esquema numérico&lt;br /&gt;
%empieza en 2 ya que el 1 es la cond. inicial&lt;br /&gt;
&lt;br /&gt;
%ESQUEMA NEWMARK&lt;br /&gt;
&lt;br /&gt;
 for i=2:length(t)&lt;br /&gt;
    iter=[k,i]&lt;br /&gt;
    Ua=U(i-1,:);&lt;br /&gt;
    Dt_Ua=Dt_U(i-1,:);&lt;br /&gt;
    D2t_Ua=D2t_U;&lt;br /&gt;
    %Derivada segunda respecto del tiempo en el instante t, se obtiene de&lt;br /&gt;
    %eq. diferencial u_tt=f(x,u,u_x,u_xx)&lt;br /&gt;
    D2t_U=Ecuacion6(U(i-1,:),x,t(i))-A(k)*Dt_Ua;&lt;br /&gt;
    %Derivada primera&lt;br /&gt;
    Dt_U(i,:)=Dt_Ua+0.5*dt*(D2t_Ua+D2t_U);&lt;br /&gt;
    %Ecuacion&lt;br /&gt;
    U(i,:) = Ua+Dt_Ua*dt+(1/6)*(D2t_Ua+D2t_U)*dt^2;&lt;br /&gt;
 end&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 %ENERGIA&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 for i=1:length(t)&lt;br /&gt;
    Dx_U(i,:)=deriva(x,U(i,:),0);&lt;br /&gt;
 end&lt;br /&gt;
dE=zeros(length(t),1);&lt;br /&gt;
for i=1:length(x)&lt;br /&gt;
    dE=dE+(Dt_U(:,i).^2+Dx_U(:,i).^2)*dx;&lt;br /&gt;
end&lt;br /&gt;
 ENE(k,:)=dE;&lt;br /&gt;
end&lt;br /&gt;
 figure(1)&lt;br /&gt;
 hold on&lt;br /&gt;
 grid&lt;br /&gt;
 aa=find(x==L/4);&lt;br /&gt;
 ab=find(x==3*L/4);&lt;br /&gt;
 imagesc(U)&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''FUNCIONES:'''&lt;br /&gt;
&lt;br /&gt;
DERIVA:&lt;br /&gt;
{{matlab|codigo= &lt;br /&gt;
function v = deriva(x,y,t)&lt;br /&gt;
n = length(x);&lt;br /&gt;
del=zeros(1,n);&lt;br /&gt;
if t==1&lt;br /&gt;
    i=1;&lt;br /&gt;
    del(1)=(y(i)-y(i+1))/(-x(i)+x(i+1));&lt;br /&gt;
    for i=2:n&lt;br /&gt;
    del(i)=(y(i)-y(i-1))/(x(i)-x(i-1));&lt;br /&gt;
    end &lt;br /&gt;
elseif t==-1&lt;br /&gt;
    for i=1:n-1&lt;br /&gt;
    del(i)=(y(i)-y(i+1))/(x(i)-x(i+1));&lt;br /&gt;
    end &lt;br /&gt;
    i=n;&lt;br /&gt;
    del(i)=(y(i)-y(i-1))/(x(i)-x(i-1));&lt;br /&gt;
elseif t==0&lt;br /&gt;
    i=1;&lt;br /&gt;
    del(1)=(y(i)-y(i+1))/(+x(i)-x(i+1));&lt;br /&gt;
    for i=2:n-1&lt;br /&gt;
    del(i)=(y(i+1)-y(i-1))/(2*(x(i)-x(i-1)));&lt;br /&gt;
    end &lt;br /&gt;
    i=n;&lt;br /&gt;
    del(n)=(y(i)-y(i-1))/(x(i)-x(i-1));  &lt;br /&gt;
end&lt;br /&gt;
v=del;&lt;br /&gt;
end&lt;br /&gt;
}}&lt;br /&gt;
'''ECUACIÓN 6:'''&lt;br /&gt;
&lt;br /&gt;
function [ V ] = Ecuacion6( u,x,t )&lt;br /&gt;
{{matlab|codigo= &lt;br /&gt;
&lt;br /&gt;
%se guarda aquí la ecuación diferencial del tipo u_tt=f(x,u,u_x,u_xx)&lt;br /&gt;
%INCLUIDAS LAS CC AQUÍ!&lt;br /&gt;
%PARA u_tt=u_xx&lt;br /&gt;
%CC: u(0,t)=u(L,t)=0;&lt;br /&gt;
&lt;br /&gt;
Ax=x(2)-x(1);&lt;br /&gt;
n=length(u);&lt;br /&gt;
V=zeros(1,n);&lt;br /&gt;
F0=(1/x(n))+0.01;&lt;br /&gt;
b=-2;&lt;br /&gt;
&lt;br /&gt;
%Las condiciones de contorno vienen en x(1)=0 y x(Nx)=L&lt;br /&gt;
&lt;br /&gt;
u(1)=0;&lt;br /&gt;
if(t==-1)&lt;br /&gt;
    u(n)=0;&lt;br /&gt;
else&lt;br /&gt;
    %u(n)=0;&lt;br /&gt;
    u(n)=sin(2*pi*F0*t);&lt;br /&gt;
    %u(n)=(1/(b*Ax-1))*u(n-1);&lt;br /&gt;
end&lt;br /&gt;
for i=2:n-1&lt;br /&gt;
    V(i)=(1/Ax^2)*(u(i+1)-2*u(i)+u(i-1));&lt;br /&gt;
end&lt;br /&gt;
i=1;&lt;br /&gt;
V(i)=(1/Ax^2)*(u(i+2)-2*u(i+1));&lt;br /&gt;
i=n;&lt;br /&gt;
V(i)=(1/Ax^2)*(u(i)-2*u(i-1)+u(i-2));&lt;br /&gt;
end&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:6.1.png|700px|thumb|centre|Gráfica en tres dimensiones de la energía de un cable cuyo extremo derecho está sometido a una vibración externa periódica para F_0=1/L +0,1]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
En esta gráfica observamos las fluctuaciones de la energía al imponer la condición de contorno de carácter sinusoidal. Dichas fluctuaciones se diferencian ya que los tonos más cálidos corresponden a los máximos y los fríos a los mínimos.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''function [ V ] = Ecuacion6( u,x,t )'''&lt;br /&gt;
{{matlab|codigo= &lt;br /&gt;
%se guarda aquí la ecuación diferencial del tipo u_tt=f(x,u,u_x,u_xx)&lt;br /&gt;
%INCLUIDAS LAS CC AQUÍ!&lt;br /&gt;
%PARA u_tt=u_xx&lt;br /&gt;
%CC: u(0,t)=u(L,t)=0;&lt;br /&gt;
&lt;br /&gt;
Ax=x(2)-x(1);&lt;br /&gt;
n=length(u);&lt;br /&gt;
V=zeros(1,n);&lt;br /&gt;
F0=(1/x(n))-0.01;&lt;br /&gt;
b=-2;&lt;br /&gt;
&lt;br /&gt;
%Las condiciones de contorno vienen en x(1)=0 y x(Nx)=L&lt;br /&gt;
&lt;br /&gt;
u(1)=0;&lt;br /&gt;
if(t==-1)&lt;br /&gt;
    u(n)=0;&lt;br /&gt;
else&lt;br /&gt;
    %u(n)=0;&lt;br /&gt;
    u(n)=sin(2*pi*F0*t);&lt;br /&gt;
    %u(n)=(1/(b*Ax-1))*u(n-1);&lt;br /&gt;
end&lt;br /&gt;
for i=2:n-1&lt;br /&gt;
    V(i)=(1/Ax^2)*(u(i+1)-2*u(i)+u(i-1));&lt;br /&gt;
end&lt;br /&gt;
i=1;&lt;br /&gt;
V(i)=(1/Ax^2)*(u(i+2)-2*u(i+1));&lt;br /&gt;
i=n;&lt;br /&gt;
V(i)=(1/Ax^2)*(u(i)-2*u(i-1)+u(i-2));&lt;br /&gt;
end&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:6.2.png|700px|thumb|centre|Gráfica en tres dimensiones de la energía de un cable cuyo extremo derecho está sometido a una vibración externa periódica.]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
En esta gráfica observamos un caso prácticamente similar al anterior y vemos que únicamente lo que varían son las posiciones de los máximos y mínimos de la energía en la cuerda.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''function [ V ] = Ecuacion6( u,x,t )'''&lt;br /&gt;
{{matlab|codigo= &lt;br /&gt;
%se guarda aquí la ecuación diferencial del tipo u_tt=f(x,u,u_x,u_xx)&lt;br /&gt;
%INCLUIDAS LAS CC AQUÍ!&lt;br /&gt;
%PARA u_tt=u_xx&lt;br /&gt;
%CC: u(0,t)=u(L,t)=0;&lt;br /&gt;
&lt;br /&gt;
Ax=x(2)-x(1);&lt;br /&gt;
n=length(u);&lt;br /&gt;
V=zeros(1,n);&lt;br /&gt;
F0=(1/x(n));&lt;br /&gt;
b=-2;&lt;br /&gt;
&lt;br /&gt;
%Las condiciones de contorno vienen en x(1)=0 y x(Nx)=L&lt;br /&gt;
&lt;br /&gt;
u(1)=0;&lt;br /&gt;
if(t==-1)&lt;br /&gt;
    u(n)=0;&lt;br /&gt;
else&lt;br /&gt;
    %u(n)=0;&lt;br /&gt;
    u(n)=sin(2*pi*F0*t);&lt;br /&gt;
    %u(n)=(1/(b*Ax-1))*u(n-1);&lt;br /&gt;
end&lt;br /&gt;
for i=2:n-1&lt;br /&gt;
    V(i)=(1/Ax^2)*(u(i+1)-2*u(i)+u(i-1));&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
i=1;&lt;br /&gt;
V(i)=(1/Ax^2)*(u(i+2)-2*u(i+1));&lt;br /&gt;
i=n;&lt;br /&gt;
V(i)=(1/Ax^2)*(u(i)-2*u(i-1)+u(i-2));&lt;br /&gt;
end&lt;br /&gt;
}}&lt;br /&gt;
 &lt;br /&gt;
La gráfica resultante es la siguiente:&lt;br /&gt;
[[Archivo:6.3.png|700px|thumb|centre|Gráfica en tres dimensiones de la energía de un cable cuyo extremo derecho está sometido a una vibración externa periódica.]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
En este último ensayo se puede apreciar como la energía no presenta grandes variaciones, manteniéndose dichas fluctuaciones en valores próximos entre sí, estando la energía estabilizada y manteniéndose prácticamente constante.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==== Sujeción a un aparato que responde a una vibración externa. ====&lt;br /&gt;
&lt;br /&gt;
La siguiente situación que vamos a representar a modelar a través de ecuaciones diferenciales va a ser la siguiente: supondremos que el cable de la anterior situación (que recibía en su extremo derecho una vibración periódica de &amp;lt;math&amp;gt; F_0 &amp;lt;/math&amp;gt; [Herzios])envía una respuesta a la vibración que recibe. Esta situación la vamos a representar como un cambio en la condición de contorno; ésta va a pasar a ser: &amp;lt;math&amp;gt; u_x(L,t)=bu(L,t) &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
El objetivo, de nuevo será representar la evolución de la energía respecto del tiempo y ver si este cambio en el problema se ve reflejado en su representación. &lt;br /&gt;
En el código numérico, no obstante, la situación de &amp;lt;math&amp;gt; u_x(L,t)=bu(L,t) &amp;lt;/math&amp;gt; la vamos a aproximar por la siguiente expresión:&lt;br /&gt;
&amp;lt;math&amp;gt; u_x(L,t)-bu(L,t)  \cong  \frac{u_{N+1}(t)-u_{N-1}(t)}{2h-u_N(t)} &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
En la resolución del problema emplearemos de nuevo la condición inicial de sujetar el cable por el centro y elevarlo 2 m perpendicularmente: &lt;br /&gt;
&amp;lt;math&amp;gt; u(x,0)=g(x)= 2- |\frac{2}{5}x -2| &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Y además obtendremos el resultado para los dos valores siguientes de &amp;lt;math&amp;gt;b&amp;lt;/math&amp;gt; :&lt;br /&gt;
Para &amp;lt;math&amp;gt; b=2 &amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt; b=-2 &amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
El código numérico de matlab/octave es:&lt;br /&gt;
&lt;br /&gt;
'''PROGRAMA:'''&lt;br /&gt;
{{matlab|codigo= &lt;br /&gt;
clc;clear all;close all;&lt;br /&gt;
&lt;br /&gt;
%Datos&lt;br /&gt;
dx=0.1;L=10;dt=0.0001;NT=40;&lt;br /&gt;
A=[0,1,4,10,100];&lt;br /&gt;
x=0:dx:L;t=0:dt:NT;&lt;br /&gt;
ENE=zeros(5,length(t));&lt;br /&gt;
&lt;br /&gt;
%Condición de contorno: U(0,t)=U(L,t)=0;&lt;br /&gt;
for k=1&lt;br /&gt;
&lt;br /&gt;
%Vector solución y derivada temporal de la solución&lt;br /&gt;
%t=0&amp;lt;&amp;gt;T(1) es donde se guardan las condiciones iniciales&lt;br /&gt;
&lt;br /&gt;
U=zeros(length(t),length(x));&lt;br /&gt;
Dt_U=zeros(length(t),length(x));&lt;br /&gt;
Dx_U=zeros(length(t),length(x));    &lt;br /&gt;
&lt;br /&gt;
%Condición inicial: Estiramos 2 m del centro&lt;br /&gt;
%Modelizado como dos rectas antisimétricas que se cortan en x=5 y&lt;br /&gt;
%sujetas en x=0 y x=L.&lt;br /&gt;
&lt;br /&gt;
U(1,:)=2*sin(x*pi/L);&lt;br /&gt;
Dt_U(1,:)=zeros(1,length(x))';&lt;br /&gt;
D2t_U=Ecuacion7(U(1,:),x,-1);&lt;br /&gt;
&lt;br /&gt;
%Inicio del esquema numérico&lt;br /&gt;
%empieza en 2 ya que el 1 es la cond. inicial&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
%ESQUEMA NEWMARK&lt;br /&gt;
 for i=2:length(t)&lt;br /&gt;
    iter=[k,i]&lt;br /&gt;
    Ua=U(i-1,:);&lt;br /&gt;
    Dt_Ua=Dt_U(i-1,:);&lt;br /&gt;
    D2t_Ua=D2t_U;&lt;br /&gt;
&lt;br /&gt;
    %Derivada segunda respecto del tiempo en el instante t, se obtiene de&lt;br /&gt;
    %eq. diferencial u_tt=f(x,u,u_x,u_xx)&lt;br /&gt;
&lt;br /&gt;
    D2t_U=Ecuacion7(U(i-1,:),x,t(i))-A(k)*Dt_Ua;&lt;br /&gt;
&lt;br /&gt;
    %Derivada primera&lt;br /&gt;
    Dt_U(i,:)=Dt_Ua+0.5*dt*(D2t_Ua+D2t_U);&lt;br /&gt;
&lt;br /&gt;
    %Ecuacion&lt;br /&gt;
    U(i,:) = Ua+Dt_Ua*dt+(1/6)*(D2t_Ua+D2t_U)*dt^2;&lt;br /&gt;
 end&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 %ENERGIA&lt;br /&gt;
 for i=1:length(t)&lt;br /&gt;
    Dx_U(i,:)=deriva(x,U(i,:),0);&lt;br /&gt;
 end&lt;br /&gt;
dE=zeros(length(t),1);&lt;br /&gt;
for i=1:length(x)&lt;br /&gt;
    dE=dE+(Dt_U(:,i).^2+Dx_U(:,i).^2)*dx;&lt;br /&gt;
end&lt;br /&gt;
 ENE(k,:)=dE;&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
 figure(1)&lt;br /&gt;
 hold on&lt;br /&gt;
 grid&lt;br /&gt;
 aa=find(x==L/4);&lt;br /&gt;
 ab=find(x==3*L/4);&lt;br /&gt;
 plot(t,ENE(1,:))&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
'''FUNCIONES:'''&lt;br /&gt;
'''function v = deriva(x,y,t)'''&lt;br /&gt;
{{matlab|codigo= &lt;br /&gt;
n = length(x);&lt;br /&gt;
del=zeros(1,n);&lt;br /&gt;
if t==1&lt;br /&gt;
    i=1;&lt;br /&gt;
    del(1)=(y(i)-y(i+1))/(-x(i)+x(i+1));&lt;br /&gt;
    for i=2:n&lt;br /&gt;
    del(i)=(y(i)-y(i-1))/(x(i)-x(i-1));&lt;br /&gt;
    end &lt;br /&gt;
elseif t==-1&lt;br /&gt;
    for i=1:n-1&lt;br /&gt;
    del(i)=(y(i)-y(i+1))/(x(i)-x(i+1));&lt;br /&gt;
    end &lt;br /&gt;
    i=n;&lt;br /&gt;
    del(i)=(y(i)-y(i-1))/(x(i)-x(i-1));&lt;br /&gt;
elseif t==0&lt;br /&gt;
    i=1;&lt;br /&gt;
    del(1)=(y(i)-y(i+1))/(+x(i)-x(i+1));&lt;br /&gt;
    for i=2:n-1&lt;br /&gt;
    del(i)=(y(i+1)-y(i-1))/(2*(x(i)-x(i-1)));&lt;br /&gt;
    end &lt;br /&gt;
    i=n;&lt;br /&gt;
    del(n)=(y(i)-y(i-1))/(x(i)-x(i-1));  &lt;br /&gt;
end&lt;br /&gt;
v=del;&lt;br /&gt;
end&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
'''function [ V ] = Ecuacion7( u,x,t )'''&lt;br /&gt;
{{matlab|codigo= &lt;br /&gt;
%se guarda aquí la ecuación diferencial del tipo u_tt=f(x,u,u_x,u_xx)&lt;br /&gt;
%INCLUIDAS LAS CC AQUÍ!&lt;br /&gt;
%PARA u_tt=u_xx&lt;br /&gt;
%CC: u(0,t)=u(L,t)=0;&lt;br /&gt;
&lt;br /&gt;
Ax=x(2)-x(1);&lt;br /&gt;
n=length(u);&lt;br /&gt;
V=zeros(1,n);&lt;br /&gt;
F0=(1/x(n));&lt;br /&gt;
b=2;&lt;br /&gt;
&lt;br /&gt;
%Las condiciones de contorno vienen en x(1)=0 y x(Nx)=L&lt;br /&gt;
u(1)=0;&lt;br /&gt;
if(t==-1)&lt;br /&gt;
    u(n)=0;&lt;br /&gt;
else&lt;br /&gt;
    %u(n)=0;&lt;br /&gt;
    %u(n)=sin(2*pi*F0*t);&lt;br /&gt;
    u(n)=(1/(b*Ax-1))*u(n-1);&lt;br /&gt;
end&lt;br /&gt;
for i=2:n-1&lt;br /&gt;
    V(i)=(1/Ax^2)*(u(i+1)-2*u(i)+u(i-1));&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
i=1;&lt;br /&gt;
V(i)=(1/Ax^2)*(u(i+2)-2*u(i+1));&lt;br /&gt;
i=n;&lt;br /&gt;
V(i)=(1/Ax^2)*(u(i)-2*u(i-1)+u(i-2));&lt;br /&gt;
end&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:7.1.png|700px|thumb|centre|Gráfica de la energía (ordenadas) de un cable frente al tiempo (abcisas) que recibe una vibración en su extremo derecho y que responde a dicha vibración para b=2. ]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
La anterior gráfica muestra el comportamiento de la cuerda como respuesta a la vibración producida en uno de sus extremos así como el movimiento transversal del punto medio al comienzo. Podemos observar el movimiento transversal de cada punto de la cuerda a través de la expresión de la energía, así como que, a medida que transcurre el tiempo, ésta se va estabilizando. La forma de la función recuerda a una función sinusoidal debido a la forma de la condición de contorno impuesta. En este caso la fuerza aplicada en el apoyo del extremo derecho de la cuerda es en un sentido ascendente.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''function [ V ] = Ecuacion7( u,x,t )'''&lt;br /&gt;
{{matlab|codigo= &lt;br /&gt;
%se guarda aquí la ecuación diferencial del tipo u_tt=f(x,u,u_x,u_xx)&lt;br /&gt;
%INCLUIDAS LAS CC AQUÍ!&lt;br /&gt;
%PARA u_tt=u_xx&lt;br /&gt;
%CC: u(0,t)=u(L,t)=0;&lt;br /&gt;
&lt;br /&gt;
Ax=x(2)-x(1);&lt;br /&gt;
n=length(u);&lt;br /&gt;
V=zeros(1,n);&lt;br /&gt;
F0=(1/x(n));&lt;br /&gt;
b=-2;&lt;br /&gt;
&lt;br /&gt;
%Las condiciones de contorno vienen en x(1)=0 y x(Nx)=L&lt;br /&gt;
u(1)=0;&lt;br /&gt;
&lt;br /&gt;
if(t==-1)&lt;br /&gt;
    u(n)=0;&lt;br /&gt;
else&lt;br /&gt;
    %u(n)=0;&lt;br /&gt;
    %u(n)=sin(2*pi*F0*t);&lt;br /&gt;
    u(n)=(1/(b*Ax-1))*u(n-1);&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
for i=2:n-1&lt;br /&gt;
    V(i)=(1/Ax^2)*(u(i+1)-2*u(i)+u(i-1));&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
i=1;&lt;br /&gt;
V(i)=(1/Ax^2)*(u(i+2)-2*u(i+1));&lt;br /&gt;
i=n;&lt;br /&gt;
V(i)=(1/Ax^2)*(u(i)-2*u(i-1)+u(i-2));&lt;br /&gt;
end&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
La imagen resultante es:&lt;br /&gt;
[[Archivo:7.2.png|700px|thumb|centre|Gráfica de la energía (ordenadas) de un cable frente al tiempo (abcisas) que recibe una vibración en su extremo derecho y que responde a dicha vibración para b=-2. ]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
En esta última gráfica, se procede al estudio del caso anterior pero ésta vez la carga va aplicada en sentido descendente, como por ejemplo de si un peso se tratase. Apreciamos que la energía se comporta de forma análoga al caso anterior.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Categoría:Ecuaciones Diferentiales]]&lt;br /&gt;
 [[Categoría:ED13/14]]&lt;br /&gt;
 [[Categoría:Trabajos 2013-14]]&lt;/div&gt;</summary>
		<author><name>Lucia Lopez</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Ecuaci%C3%B3n_de_ondas_(grupo_2B)&amp;diff=13242</id>
		<title>Ecuación de ondas (grupo 2B)</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Ecuaci%C3%B3n_de_ondas_(grupo_2B)&amp;diff=13242"/>
				<updated>2014-05-19T21:28:09Z</updated>
		
		<summary type="html">&lt;p&gt;Lucia Lopez: /* Euler Modificado. */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{ TrabajoED | Ecuación de ondas. Grupo 2-B| [[:Categoría:Ecuaciones Diferenciales|Ecuaciones Diferenciales]]|[[:Categoría:ED13/14|Curso 2013-14]]| &lt;br /&gt;
Ignacio Díaz-Caneja Camblor&lt;br /&gt;
&lt;br /&gt;
Alberto Fernández Pérez&lt;br /&gt;
&lt;br /&gt;
Adela González Barbado&lt;br /&gt;
&lt;br /&gt;
Lucia López Sánchez&lt;br /&gt;
&lt;br /&gt;
Araceli Martín Candilejo&lt;br /&gt;
&lt;br /&gt;
Diego Solano López&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
== Modelización de los desplazamientos del Cable. ==&lt;br /&gt;
El problema que se tratará a continuación describe una ecuación de '''tipo hiperbólico''', una '''ecuación de ondas'''.&lt;br /&gt;
Consideramos un '''cable de 10 metros''' de longitud '''sujeto por sus extremos'''. Suponiendo que éste tiene una '''sección pequeña''' respecto a su longitud someteremos al cable a pequeñas vibraciones que estudiaremos con una modelización de la ecuación de ondas. &lt;br /&gt;
Se caracteriza al cable de una masa constante por unidad de volumen, es decir, será '''homogéneo'''. Éste, '''flexible''' a la tracción, únicamente ofrece resistencias en su dirección longitudinal, tangenciales, pero no a esfuerzos de flexión o cortes. Se supone, además, que es '''inextensible''' por lo que será lo suficientemente rígido longitudinalmente como para poder despreciar su extensibilidad.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Con esta modelización se estudiarán las '''pequeñas vibraciones''', desplazamientos transversales, a las que es sometido el cable. Para iniciar el movimiento del cable lo sujetaremos por el centro subiéndolo dos metros, lo que nos proporciona una primera condición inicial determinada por la función g(x), y soltándolo, con una velocidad inicial nula. &lt;br /&gt;
&lt;br /&gt;
&amp;lt;br/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Obtenemos la ecuación &amp;lt;math&amp;gt;u_{tt}-u_{xx}=0&amp;lt;/math&amp;gt; , de la cual se puede observar que tanto el '''módulo de la tensión''' como la '''densidad''' son '''constantes''' ya que el '''módulo de la elasticidad''' es constante, &amp;lt;math&amp;gt;c^2=1&amp;lt;/math&amp;gt; . Al ser ésta primera ecuación homogénea deducimos que transversalmente no actúa ninguna fuerza densidad espacial y temporal. Se deduce del enunciado anterior que las condiciones de frontera son '''homogéneas''', &amp;lt;math&amp;gt;u(0,t)=0&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;u(10,t)=0&amp;lt;/math&amp;gt; que nos indican que los extremos del cable no describen ningún tipo de movimiento en todo instante t al no estar sometidos a ningun tipo de fuerza. Finalmente, añadimos al sistema las condiciones iniciales, la primera de ellas, &amp;lt;math&amp;gt;u(x,0)=g(x)= 2- |\frac{2}{5}x -2|&amp;lt;/math&amp;gt;, define el '''movimiento descrito por la onda''' en el instante t=0 en cualquier punto del cable; y la segunda, &amp;lt;math&amp;gt;u_t(x,0)=0&amp;lt;/math&amp;gt;, que la onda parte de una '''velocidad inicial nula'''.&lt;br /&gt;
[[Image:DV.png|300px|thumb|right|Deslizamiento vertical del cable. ]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
\begin{cases}&lt;br /&gt;
&lt;br /&gt;
u_{tt}- u_{xx}=0  \  x∈[0,10] \ t&amp;gt;0\\&lt;br /&gt;
u(0,t)=0\\&lt;br /&gt;
u(10,t)=0\\&lt;br /&gt;
u(x,0)= 2- |\frac{2}{5}x -2|\\&lt;br /&gt;
u_t(x,0)=0&lt;br /&gt;
\end{cases}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
En los siguientes apartados se realizaran aproximaciones del sistema expuesto con tres métodos distintos de los que más tarde se hará una comparativa. Para esto último nos ayudaremos del error por lo que necesitaremos la solución analítica.&lt;br /&gt;
Como el problema consta de condiciones de frontera homogéneas, aplicamos directamente el método de separación de variables para su resolución analítica. &lt;br /&gt;
&amp;lt;br/&amp;gt;&lt;br /&gt;
==== Aproximación por el método del trapecio. ====&lt;br /&gt;
El método del trapecio se basa en aproximar una función integrando. Para ello utilizamos un número N de trapecios (en la imagen inferior hemos aproximado mediante 4 trapecios). Las integrales a resolver para poder poder aproximar una función por este método tendrán la distancia de sus límites de integración constantes para todas las integrales, a esta distancia entre los límites de integración lo llamamos paso. En el desarrollo de este método se supone que la función es continua en el intervalo en que se quiere aproximar.&lt;br /&gt;
&amp;lt;br/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Image:Trapecio.png|300px|thumb|center|Función Y(x), el área bajo la curva, se puede aproximar mediante n trapecios]]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br/&amp;gt;&lt;br /&gt;
{{matlab|codigo= &lt;br /&gt;
%u_tt-u_xx=0&lt;br /&gt;
%u(0,t)=u(l,t)=0&lt;br /&gt;
%u(x,0)=2-abs(0.4x-2)&lt;br /&gt;
%ut(x,0)=0&lt;br /&gt;
clear all&lt;br /&gt;
&lt;br /&gt;
%Datos del problema&lt;br /&gt;
L=10;&lt;br /&gt;
T=40;&lt;br /&gt;
&lt;br /&gt;
%Discretización&lt;br /&gt;
h=0.1;&lt;br /&gt;
N=L/h;&lt;br /&gt;
x=0:h:L;&lt;br /&gt;
xint=h:h:L-h;&lt;br /&gt;
dt=h;&lt;br /&gt;
t=0:dt:T;&lt;br /&gt;
&lt;br /&gt;
%Aprox. de u_xx&lt;br /&gt;
K=2*diag(ones(1,N-1))-diag(ones(1,N-2),-1)-diag(ones(1,N-2),1);&lt;br /&gt;
K=K/h^2;&lt;br /&gt;
F=zeros(N-1,1);&lt;br /&gt;
&lt;br /&gt;
%Posición inicial.&lt;br /&gt;
u0=(2-abs(xint*2/5-2))';&lt;br /&gt;
v0=zeros(N-1,1);&lt;br /&gt;
&lt;br /&gt;
%Aprox. de u_tt&lt;br /&gt;
M=[zeros(N-1),eye(N-1);-K,zeros(N-1)];&lt;br /&gt;
G=[zeros(N-1,1);F];&lt;br /&gt;
&lt;br /&gt;
%Aproximación por el método del Trapecio&lt;br /&gt;
W0=[u0;v0];&lt;br /&gt;
WW=W0;&lt;br /&gt;
sol=zeros(length(t),N+1);&lt;br /&gt;
sol(1,:)=[0,W0(1:N-1)',0];&lt;br /&gt;
for j=1:length(t)-1&lt;br /&gt;
    WW=(eye(2*N-2)-dt/2*M)\(eye(2*N-2)+dt/2*M)*WW;&lt;br /&gt;
    sol(j+1,:)=[0,WW(1:N-1)',0];&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
%Dibujo de la solución&lt;br /&gt;
[xx,tt]=meshgrid(x,t);&lt;br /&gt;
surf(xx,tt,sol);&lt;br /&gt;
xlabel('Desplazamiento horizontal');&lt;br /&gt;
ylabel('Tiempo');&lt;br /&gt;
zlabel('Desplazamiento vertical');}}&lt;br /&gt;
&lt;br /&gt;
[[Image:klklk.jpg|700px|thumb|center|Aproximación por el método del Trapecio.]]&lt;br /&gt;
&lt;br /&gt;
Además de saber que el método del trapecio tiene orden de precisión 2 y, por tanto, es un buen método a la hora de aproximar, gráficamente también podemos observar que este método es bastante preciso.&lt;br /&gt;
&lt;br /&gt;
==== Aproximación por el método de Euler. ====&lt;br /&gt;
Se exponen en este apartados dos tipos de aproximaciones de Euler.&lt;br /&gt;
&lt;br /&gt;
Este método se basa en la posibilidad de aproximar una función original mediante rectas tangentes partiendo de un punto dado. Sabiendo que la recta tangente de una función en un punto es la derivada en dicho punto, este método consiste en calcular derivadas de la función en diferentes puntos pertenecientes a ella. Estos puntos serán tomados con la misma distancia a lo largo de la recta, a esta distancia la denominamos paso de discretización. &lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Image:Euler.png|300px|thumb|center|Aproximación de una función por el método de Euler]]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===== Euler Explícito. =====&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
%utt-uxx=0&lt;br /&gt;
%u(0,t)=u(l,t)=0&lt;br /&gt;
%u(x,0)=2-abs(0.4x-2)&lt;br /&gt;
%ut(x,0)=0&lt;br /&gt;
clear all&lt;br /&gt;
L=10;&lt;br /&gt;
T=40;&lt;br /&gt;
h=0.1;&lt;br /&gt;
N=L/h;&lt;br /&gt;
x=0:h:L;&lt;br /&gt;
xint=h:h:L-h;&lt;br /&gt;
dt=h;&lt;br /&gt;
t=0:dt:T;&lt;br /&gt;
K=2*diag(ones(1,N-1))-diag(ones(1,N-2),-1)-diag(ones(1,N-2),1);&lt;br /&gt;
K=K/h^2;&lt;br /&gt;
F=zeros(N-1,1);&lt;br /&gt;
u0=2-abs((xint*2/5-2))';&lt;br /&gt;
v0=zeros(N-1,1);&lt;br /&gt;
M=[zeros(N-1),eye(N-1);-K,zeros(N-1)];&lt;br /&gt;
G=[zeros(N-1,1);F];&lt;br /&gt;
W0=[u0;v0];&lt;br /&gt;
WW=W0;&lt;br /&gt;
sol=zeros(length(t),N+1);&lt;br /&gt;
sol(1,:)=[0,W0(1:N-1)',0];&lt;br /&gt;
for j=1:length(t)-1&lt;br /&gt;
    WW=WW+dt*M*WW;&lt;br /&gt;
    sol(j+1,:)=[0,WW(1:N-1)',0];&lt;br /&gt;
end&lt;br /&gt;
[xx,tt]=meshgrid(x,t);&lt;br /&gt;
surf(xx,tt,sol);}}&lt;br /&gt;
===== Euler Modificado. =====&lt;br /&gt;
&lt;br /&gt;
Este método se basa en la misma idea que el anterior, pero hace un refinamiento en la aproximación, tomando un promedio entre las pendientes, esto parece más razonable para la obtención de un valor más preciso.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
%utt-uxx=0&lt;br /&gt;
%u(0,t)=u(l,t)=0&lt;br /&gt;
%u(x,0)=2-abs(0.4x-2)&lt;br /&gt;
%ut(x,0)=0&lt;br /&gt;
clear all&lt;br /&gt;
L=10;&lt;br /&gt;
T=40;&lt;br /&gt;
h=0.1;&lt;br /&gt;
N=L/h;&lt;br /&gt;
x=0:h:L;&lt;br /&gt;
xint=h:h:L-h;&lt;br /&gt;
dt=h;&lt;br /&gt;
t=0:dt:T;&lt;br /&gt;
K=2*diag(ones(1,N-1))-diag(ones(1,N-2),-1)-diag(ones(1,N-2),1);&lt;br /&gt;
K=K/h^2;&lt;br /&gt;
F=zeros(N-1,1);&lt;br /&gt;
u0=2-abs((xint*2/5-2))';&lt;br /&gt;
v0=zeros(N-1,1);&lt;br /&gt;
M=[zeros(N-1),eye(N-1);-K,zeros(N-1)];&lt;br /&gt;
G=[zeros(N-1,1);F];&lt;br /&gt;
W0=[u0;v0];&lt;br /&gt;
WW=W0;&lt;br /&gt;
sol=zeros(length(t),N+1);&lt;br /&gt;
sol(1,:)=[0,W0(1:N-1)',0];&lt;br /&gt;
for j=1:length(t)-1&lt;br /&gt;
    k1=M*WW;&lt;br /&gt;
    WW=(eye(2*N-2)+dt*M/2)*WW+(dt/2)*k1+(dt^2)*M*k1/2;&lt;br /&gt;
    sol(j+1,:)=[0,WW(1:N-1)',0];&lt;br /&gt;
end&lt;br /&gt;
[xx,tt]=meshgrid(x,t);&lt;br /&gt;
surf(xx,tt,sol);}}&lt;br /&gt;
&lt;br /&gt;
Antes de comentar las dos gráficas anteriores se debe insistir en que el orden de precisión del método de Euler es 1, por tanto, este método será menos preciso que el método del trapecio.&lt;br /&gt;
&lt;br /&gt;
Además de ya haber comentado anteriormente que Euler modificado se basa en mejorar la aproximación mediante el método de Euler sencillo, fijándonos en las gráficas podemos observar que la gráfica obtenida mediante el método de Euler modificado realiza una mejor aproximación y se asemeja mejor a la gráfica obtenida mediante el método del trapecio que la gráfica obtenida mediante Euler.&lt;br /&gt;
&lt;br /&gt;
==== Aproximación por Fourier con diferentes términos de series. ====&lt;br /&gt;
En este apartado se ofrece una aproximación alternativa a las anteriores. Se muestran '''cinco iteraciones''' distintas del '''método del Fourier''' que se compararan entre sí y con los métodos anteriores, Trapecio y Euler. Este método de aproximación depende del número de términos de serie (lo denominamos con la letra Q) con los que se realice el programa de Fourier.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br/&amp;gt;&lt;br /&gt;
Puesto que la realización de este método es la misma sea cual sea el número de serie elegido, se han expuesto únicamente dos casos de Q para una mayor claridad del programa.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo= %utt-uxx=0&lt;br /&gt;
%u(0,t)=u(l,t)=0&lt;br /&gt;
%u(x,0)=2-abs(0.4x-2)&lt;br /&gt;
%ut(x,0)=0&lt;br /&gt;
&lt;br /&gt;
%1 iteracion&lt;br /&gt;
clear all&lt;br /&gt;
L=10;&lt;br /&gt;
T=40;&lt;br /&gt;
Q=1;&lt;br /&gt;
h=0.1;&lt;br /&gt;
N=L/h;&lt;br /&gt;
x=0:h:L;&lt;br /&gt;
dt=h;&lt;br /&gt;
t=0:dt:T;&lt;br /&gt;
sol=zeros(length(t),N+1);&lt;br /&gt;
for k=1:Q&lt;br /&gt;
    phi=sin(k/L*pi*x);&lt;br /&gt;
    a=trapz(x,(2-abs(2/5*x-2)).*phi)/(trapz(x,phi.^2));&lt;br /&gt;
    b=0;&lt;br /&gt;
    T=a.*cos(k*pi*t/L);&lt;br /&gt;
    sol=sol+T'*phi;&lt;br /&gt;
end&lt;br /&gt;
[xx,tt]=meshgrid(x,t);&lt;br /&gt;
figure (1)&lt;br /&gt;
surf(xx,tt,sol)&lt;br /&gt;
xlabel('Desplazamiento horizontal');&lt;br /&gt;
ylabel('Tiempo');&lt;br /&gt;
zlabel('Desplazamiento vertical');&lt;br /&gt;
&lt;br /&gt;
%3 iteracion&lt;br /&gt;
clear all&lt;br /&gt;
L=10;&lt;br /&gt;
T=40;&lt;br /&gt;
Q=3;&lt;br /&gt;
h=0.1;&lt;br /&gt;
N=L/h;&lt;br /&gt;
x=0:h:L;&lt;br /&gt;
dt=h;&lt;br /&gt;
t=0:dt:T;&lt;br /&gt;
sol=zeros(length(t),N+1);&lt;br /&gt;
for k=1:Q&lt;br /&gt;
    phi=sin(k/L*pi*x);&lt;br /&gt;
    a=trapz(x,(2-abs(2/5*x-2)).*phi)/(trapz(x,phi.^2));&lt;br /&gt;
    b=0;&lt;br /&gt;
    T=a.*cos(k*pi*t/L);&lt;br /&gt;
    sol=sol+T'*phi;&lt;br /&gt;
end&lt;br /&gt;
[xx,tt]=meshgrid(x,t);&lt;br /&gt;
figure (2)&lt;br /&gt;
surf(xx,tt,sol)&lt;br /&gt;
xlabel('Desplazamiento horizontal');&lt;br /&gt;
ylabel('Tiempo');&lt;br /&gt;
zlabel('Desplazamiento vertical');}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br/&amp;gt;&lt;br /&gt;
[[Image:81tF2.jpg|525px|thumb|left|Aproximación por el método del Trapecio con un término de serie.]]&lt;br /&gt;
[[Image:82tF.jpg|525px|thumb|center|Aproximación por el método del Trapecio con tres términos de serie.]]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br/&amp;gt; &lt;br /&gt;
&lt;br /&gt;
[[Image:83tF.jpg|525px|thumb|left|Aproximación por el método del Trapecio con cinco términos de serie.]]&lt;br /&gt;
[[Image:84tF.jpg|525px|thumb|center|Aproximación por el método del Trapecio con diez términos de serie.]]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Image:85tF.jpg|525px|thumb|center|Aproximación por el método del Trapecio con veinte términos de serie.]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
En este método podemos observar fijándonos en las gráficas que a mayor número de términos (mayor Q), mayor es la aproximación obtenida y más estable.&lt;br /&gt;
&lt;br /&gt;
Realizando una comparación con los otros métodos, se puede observar, fijándonos en las gráficas y en los órdenes de precisión, que el método que mejor aproxima  la ecuación del problema es el método del trapecio, seguido de Euler modificado y, por último, Euler, teniendo mayor orden el que mejor aproxima la función.&lt;br /&gt;
&lt;br /&gt;
Gráficamente podemos confirmar este hecho, dándonos cuenta que las gráficas más similares son fourier con Q=20 y el método del trapecio.&lt;br /&gt;
&lt;br /&gt;
== Energía del Cable. ==&lt;br /&gt;
&lt;br /&gt;
La energía del cable que viene definida por la función: &lt;br /&gt;
\begin{equation}&lt;br /&gt;
E(t) = \int_{0}^{L} (u_{t}^{2}(x,t)+ u_{x}^{2}(x,t)) \cdot dx&lt;br /&gt;
\end{equation}&lt;br /&gt;
&lt;br /&gt;
El método utilizado en el desarrollo numérico de está expresión es el '''método de diferencias finitas'''&lt;br /&gt;
(Funciona calculando de manera aproximada las soluciones a las ecuaciones diferenciales usando ecuaciones diferenciales finitas para aproximar derivadas.).&lt;br /&gt;
&lt;br /&gt;
'''FUNCIÓN:'''&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
function v = deriva(x,y,t)&lt;br /&gt;
&lt;br /&gt;
n = length(x);&lt;br /&gt;
del=zeros(1,n);&lt;br /&gt;
&lt;br /&gt;
if t==1&lt;br /&gt;
    &lt;br /&gt;
    i=1;&lt;br /&gt;
    del(1)=(y(i)-y(i+1))/(-x(i)+x(i+1));&lt;br /&gt;
&lt;br /&gt;
    for i=2:n&lt;br /&gt;
    del(i)=(y(i)-y(i-1))/(x(i)-x(i-1));&lt;br /&gt;
    end &lt;br /&gt;
    &lt;br /&gt;
elseif t==-1&lt;br /&gt;
&lt;br /&gt;
    for i=1:n-1&lt;br /&gt;
    del(i)=(y(i)-y(i+1))/(x(i)-x(i+1));&lt;br /&gt;
    end &lt;br /&gt;
    &lt;br /&gt;
    i=n;&lt;br /&gt;
    del(i)=(y(i)-y(i-1))/(x(i)-x(i-1));&lt;br /&gt;
    &lt;br /&gt;
elseif t==0&lt;br /&gt;
    &lt;br /&gt;
    i=1;&lt;br /&gt;
    del(1)=(y(i)-y(i+1))/(+x(i)-x(i+1));&lt;br /&gt;
    &lt;br /&gt;
    for i=2:n-1&lt;br /&gt;
    del(i)=(y(i+1)-y(i-1))/(2*(x(i)-x(i-1)));&lt;br /&gt;
    end &lt;br /&gt;
    &lt;br /&gt;
    i=n;&lt;br /&gt;
    del(n)=(y(i)-y(i-1))/(x(i)-x(i-1));  &lt;br /&gt;
    &lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
v=del;&lt;br /&gt;
&lt;br /&gt;
end&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''PROGRAMA:'''&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
clc;clear all;&lt;br /&gt;
L=10;dx=0.1;N=L/dx;&lt;br /&gt;
x=dx:dx:L-dx;&lt;br /&gt;
xtot=0:dx:L;&lt;br /&gt;
T=40;dt=0.1;t=0:dt:T;&lt;br /&gt;
K=2*diag(ones(1,N-1))-diag(ones(1,N-2),1)-diag(ones(1,N-2),-1);&lt;br /&gt;
K=(1/dx^2)*K;&lt;br /&gt;
U=(2-abs((x*2/5-2)))';&lt;br /&gt;
V=(0*x)';&lt;br /&gt;
sol(1,:)=[0 U' 0];&lt;br /&gt;
for i=1:length(t)-1;&lt;br /&gt;
    U=U+dt*V;&lt;br /&gt;
    V=V-dt*K*U;&lt;br /&gt;
    sol(i+1,:)=[0 U' 0];&lt;br /&gt;
end&lt;br /&gt;
%DERIVAMOS LA SOLUCION EN x Y EN t:&lt;br /&gt;
dsol_dx=ones(size(sol));&lt;br /&gt;
for i=1:length(t)&lt;br /&gt;
    dsol_dx(i,:)=deriva(sol(i,:),xtot,0);&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
dsol_dt=ones(size(sol));&lt;br /&gt;
for i=1:length(xtot)&lt;br /&gt;
    dsol_dt(:,i)=deriva(sol(:,i),t,1); &lt;br /&gt;
end&lt;br /&gt;
%SUMAMOS LAS DERIVADAS AL CUADRADO E INTEGRAMOS:&lt;br /&gt;
dE=zeros(1,size(t,1));&lt;br /&gt;
for i=1:length(xtot)&lt;br /&gt;
    dE=dE+(dsol_dt(i,:).^2+dsol_dx(i,:).^2)*dx;&lt;br /&gt;
end&lt;br /&gt;
xtot=0:dx:L;&lt;br /&gt;
[xx,tt]=meshgrid(xtot,t);&lt;br /&gt;
figure(1)&lt;br /&gt;
surf(xx,tt,dsol_dx);&lt;br /&gt;
figure(2)&lt;br /&gt;
surf(xx,tt,dsol_dt);&lt;br /&gt;
plot(dE,t)&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
El resultado habría de ser una gráfica que representase la evolución de la energía de la cuerda frente al transcurso del tiempo. No obstante, en nuestra resolución aparece una gráfica en blanco que ajudicamos o a un posible error en el código, o que podemos interpretar como que la energía tiende a infinito.&lt;br /&gt;
&lt;br /&gt;
== Aplicaciones. ==&lt;br /&gt;
&lt;br /&gt;
==== Sumersión en un medio viscoso. ====&lt;br /&gt;
&lt;br /&gt;
Suponemos ahora la inmersión del cable en una medio viscoso. Este medio viscoso produce un amortiguamiento en el movimiento del cable, con lo que la anterior ecuación diferencial se convertiría en &lt;br /&gt;
\begin{equation}&lt;br /&gt;
u_{tt}-u_{xx}+au_{t}=0&lt;br /&gt;
\end{equation} &lt;br /&gt;
, siendo '''&amp;lt;math&amp;gt; a  &amp;lt;/math&amp;gt;''' una constante de amortiguamiento propia del medio viscoso.&lt;br /&gt;
Puesto que la función '''&amp;lt;math&amp;gt; u(x,t)  &amp;lt;/math&amp;gt;''' se ve afectada ahora por el medio viscoso, y más directamente, por la constante '''&amp;lt;math&amp;gt; a  &amp;lt;/math&amp;gt;''' que actúa en su nombre, la energía del cable ,que se expresaba como una integral en función de '''&amp;lt;math&amp;gt; u(x,t)  &amp;lt;/math&amp;gt;''' también se va a ver afectada:&lt;br /&gt;
\begin{equation}&lt;br /&gt;
E(t) = \int_{0}^{L} (u_{t}^{2}(x,t)+ u_{x}^{2}(x,t)) \cdot dx&lt;br /&gt;
\end{equation}&lt;br /&gt;
&lt;br /&gt;
El obetivo del siguiente código será hallar una representación de la evolución de la energía en función del tiempo a raíz de la modificación de la función '''&amp;lt;math&amp;gt; u(x,t)  &amp;lt;/math&amp;gt;'''. Para ello asignaremos distintos valores a la constante '''&amp;lt;math&amp;gt; a  &amp;lt;/math&amp;gt;'''. Éstos van a ser:&lt;br /&gt;
'''&amp;lt;math&amp;gt; a=0  &amp;lt;/math&amp;gt;''' (la energía para este valor resultará igual que la hallada en el apartado anterior)&lt;br /&gt;
'''&amp;lt;math&amp;gt; a=1  &amp;lt;/math&amp;gt;'''&lt;br /&gt;
'''&amp;lt;math&amp;gt; a=4  &amp;lt;/math&amp;gt;'''&lt;br /&gt;
'''&amp;lt;math&amp;gt; a=10  &amp;lt;/math&amp;gt;'''&lt;br /&gt;
''&amp;lt;math&amp;gt; a=100  &amp;lt;/math&amp;gt;'''&lt;br /&gt;
&lt;br /&gt;
El procedimiento numérico volverá a seguir el método de '''diferencias finitas''':&lt;br /&gt;
&lt;br /&gt;
'''PROGRAMA:'''&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
clc;clear all;close all;&lt;br /&gt;
%Datos&lt;br /&gt;
dx=0.1;L=10;&lt;br /&gt;
dt=0.001;NT=40;&lt;br /&gt;
A=[0,1,4,10,100];&lt;br /&gt;
x=0:dx:L;&lt;br /&gt;
t=0:dt:NT;&lt;br /&gt;
ENE=zeros(5,length(t));&lt;br /&gt;
&lt;br /&gt;
%Condición de contorno: U(0,t)=U(L,t)=0;&lt;br /&gt;
&lt;br /&gt;
for k=1:5&lt;br /&gt;
&lt;br /&gt;
%Vector solución y derivada temporal de la solución&lt;br /&gt;
%t=0&amp;lt;&amp;gt;T(1) es donde se guardan las condiciones iniciales&lt;br /&gt;
&lt;br /&gt;
U=zeros(length(t),length(x));&lt;br /&gt;
Dt_U=zeros(length(t),length(x));&lt;br /&gt;
Dx_U=zeros(length(t),length(x));    &lt;br /&gt;
&lt;br /&gt;
%Condición inicial: Estiramos 2 m del centro&lt;br /&gt;
%Modelizado como dos rectas antisimétricas que se cortan en x=5 y&lt;br /&gt;
%sujetas en x=0 y x=L.&lt;br /&gt;
&lt;br /&gt;
U(1,:)=2*sin(x*pi/L);&lt;br /&gt;
Dt_U(1,:)=zeros(1,length(x))';&lt;br /&gt;
D2t_U=Ecuacion5(U(1,:),x,-1);&lt;br /&gt;
&lt;br /&gt;
%Inicio del esquema numérico&lt;br /&gt;
%empieza en 2 ya que el 1 es la cond. inicial&lt;br /&gt;
&lt;br /&gt;
%ESQUEMA NEWMARK&lt;br /&gt;
&lt;br /&gt;
 for i=2:length(t)&lt;br /&gt;
    iter=[k,i]&lt;br /&gt;
    Ua=U(i-1,:);&lt;br /&gt;
    Dt_Ua=Dt_U(i-1,:);&lt;br /&gt;
    D2t_Ua=D2t_U;&lt;br /&gt;
    %Derivada segunda respecto del tiempo en el instante t, se obtiene de&lt;br /&gt;
    %eq. diferencial u_tt=f(x,u,u_x,u_xx)&lt;br /&gt;
    D2t_U=Ecuacion5(U(i-1,:),x,t(i))-A(k)*Dt_Ua;&lt;br /&gt;
    %Derivada primera&lt;br /&gt;
    Dt_U(i,:)=Dt_Ua+0.5*dt*(D2t_Ua+D2t_U);&lt;br /&gt;
    %Ecuacion&lt;br /&gt;
    U(i,:) = Ua+Dt_Ua*dt+(1/6)*(D2t_Ua+D2t_U)*dt^2;&lt;br /&gt;
 end&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 %ENERGIA&lt;br /&gt;
 for i=1:length(t)&lt;br /&gt;
    Dx_U(i,:)=deriva(x,U(i,:),0);&lt;br /&gt;
 end&lt;br /&gt;
dE=zeros(length(t),1);&lt;br /&gt;
for i=1:length(x)&lt;br /&gt;
    dE=dE+(Dt_U(:,i).^2+Dx_U(:,i).^2)*dx;&lt;br /&gt;
end&lt;br /&gt;
 ENE(k,:)=dE;&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
 figure(1)&lt;br /&gt;
 hold on&lt;br /&gt;
 grid&lt;br /&gt;
 aa=find(x==L/4);&lt;br /&gt;
 ab=find(x==3*L/4);&lt;br /&gt;
 legend('A=0','A=1','A=4','A=10','A=100');&lt;br /&gt;
 plot(t,ENE(1,:),t,ENE(2,:),t,ENE(3,:),t,ENE(4,:),t,ENE(5,:));&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''FUNCIONES:'''&lt;br /&gt;
DERIVA:&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
function v = deriva(x,y,t)&lt;br /&gt;
n = length(x);&lt;br /&gt;
del=zeros(1,n);&lt;br /&gt;
if t==1&lt;br /&gt;
    i=1;&lt;br /&gt;
    del(1)=(y(i)-y(i+1))/(-x(i)+x(i+1));&lt;br /&gt;
    for i=2:n&lt;br /&gt;
    del(i)=(y(i)-y(i-1))/(x(i)-x(i-1));&lt;br /&gt;
    end &lt;br /&gt;
elseif t==-1&lt;br /&gt;
    for i=1:n-1&lt;br /&gt;
    del(i)=(y(i)-y(i+1))/(x(i)-x(i+1));&lt;br /&gt;
    end &lt;br /&gt;
    i=n;&lt;br /&gt;
    del(i)=(y(i)-y(i-1))/(x(i)-x(i-1));&lt;br /&gt;
elseif t==0&lt;br /&gt;
    i=1;&lt;br /&gt;
    del(1)=(y(i)-y(i+1))/(+x(i)-x(i+1));&lt;br /&gt;
    for i=2:n-1&lt;br /&gt;
    del(i)=(y(i+1)-y(i-1))/(2*(x(i)-x(i-1)));&lt;br /&gt;
    end &lt;br /&gt;
    i=n;&lt;br /&gt;
    del(n)=(y(i)-y(i-1))/(x(i)-x(i-1));  &lt;br /&gt;
end&lt;br /&gt;
v=del;&lt;br /&gt;
end&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
'''ECUACIÓN 5:'''&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
function [ V ] = Ecuacion5( u,x,t )&lt;br /&gt;
%se guarda aquí la ecuación diferencial del tipo u_tt=f(x,u,u_x,u_xx)&lt;br /&gt;
%INCLUIDAS LAS CC AQUÍ&lt;br /&gt;
%PARA u_tt=u_xx&lt;br /&gt;
%CC: u(0,t)=u(L,t)=0;&lt;br /&gt;
&lt;br /&gt;
Ax=x(2)-x(1);&lt;br /&gt;
n=length(u);&lt;br /&gt;
V=zeros(1,n);&lt;br /&gt;
&lt;br /&gt;
%Las condiciones de contorno vienen en x(1)=0 y x(Nx)=L&lt;br /&gt;
u(1)=0;&lt;br /&gt;
&lt;br /&gt;
if(t==-1)&lt;br /&gt;
    u(n)=0;&lt;br /&gt;
else&lt;br /&gt;
    u(n)=0;&lt;br /&gt;
    %u(n)=sin(2*pi*F0*t);&lt;br /&gt;
    %u(n)=(1/(b*Ax-1))*u(n-1);&lt;br /&gt;
end&lt;br /&gt;
for i=2:n-1&lt;br /&gt;
    &lt;br /&gt;
    V(i)=(1/Ax^2)*(u(i+1)-2*u(i)+u(i-1));&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
i=1;&lt;br /&gt;
V(i)=(1/Ax^2)*(u(i+2)-2*u(i+1));&lt;br /&gt;
i=n;&lt;br /&gt;
V(i)=(1/Ax^2)*(u(i)-2*u(i-1)+u(i-2));&lt;br /&gt;
end&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
La gráfica buscada es:&lt;br /&gt;
[[Archivo:Graficadelaenergiaenunmedioviscoso.png|700px|thumb|centre|Gráfica de la energía(ordenadas) del cable respecto del tiempo (Abcisas).]]&lt;br /&gt;
En la gráfica se aprecian cuatro curvas de distintos colores correspondientes a '''&amp;lt;math&amp;gt; a=0  &amp;lt;/math&amp;gt;''','''&amp;lt;math&amp;gt; a=1  &amp;lt;/math&amp;gt;''','''&amp;lt;math&amp;gt; a=4  &amp;lt;/math&amp;gt;''','''&amp;lt;math&amp;gt; a=10  &amp;lt;/math&amp;gt;''',''&amp;lt;math&amp;gt; a=100  &amp;lt;/math&amp;gt;'''.&lt;br /&gt;
&lt;br /&gt;
Como podemos apreciar el valor de la energía disminuye a medida que aumentamos el valor de &amp;quot;a&amp;quot;. Esto es debido a que &amp;quot;a&amp;quot; define el coeficiente de amortiguamiento del líquido en el cual se encuentra la cuerda. Luego, dicha disminución de energía se produce por la disipación en el medio de gran parte de la energía inicial.&lt;br /&gt;
&lt;br /&gt;
==== Sujeción a una estructura de vibración periódica. ====&lt;br /&gt;
&lt;br /&gt;
En este caso supondremos que el extremo derecho que sujeta el cable está sometido a una vibración periódica de frecuencia  &amp;lt;math&amp;gt; F_0 &amp;lt;/math&amp;gt; [Herzios]. Al haber una vibración externa que afecta directamente al cable la expresión de su movimiento y, por consecuencia, de su energía, se va a ver modificada. Nosotros incluiremos esta modificación en la función &amp;lt;math&amp;gt; f(t) &amp;lt;/math&amp;gt; de problema de valor inicial que venimos tratando. Esta función va a pasar a ser: &lt;br /&gt;
\begin{equation}&lt;br /&gt;
f(t)= sin(2 \pi F_0t)&lt;br /&gt;
\end{equation}&lt;br /&gt;
&lt;br /&gt;
El objetivo será el de ver cómo afecta esta alteración en el desarrollo de la energía del cable frente al tiempo.&lt;br /&gt;
Para nuestro cálculo numérico especificaremos para las siguientes situaciones:&lt;br /&gt;
En primer lugar, para: &amp;lt;math&amp;gt; F_0= \frac{1}{L} + 0,01 &amp;lt;/math&amp;gt;&lt;br /&gt;
Después,para: &amp;lt;math&amp;gt; F_0= \frac{1}{L} - 0,01 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Y para finalizar, lo estudiaremos en un intervalo de tiempo de '''t=0''' hasta '''t=60''' : &amp;lt;math&amp;gt;t \in (0,60)&amp;lt;/math&amp;gt; [segundos].&lt;br /&gt;
&lt;br /&gt;
El código matemático para matlab / octave:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''PROGRAMA:'''&lt;br /&gt;
{{matlab|codigo= &lt;br /&gt;
clc;clear all;close all;&lt;br /&gt;
&lt;br /&gt;
%Datos&lt;br /&gt;
&lt;br /&gt;
dx=0.1;L=10;dt=0.0001;NT=60;&lt;br /&gt;
A=[0,1,4,10,100];&lt;br /&gt;
x=0:dx:L;t=0:dt:NT;&lt;br /&gt;
ENE=zeros(5,length(t));&lt;br /&gt;
&lt;br /&gt;
%Condición de contorno: U(0,t)=U(L,t)=0;&lt;br /&gt;
for k=1&lt;br /&gt;
%Vector solución y derivada temporal de la solución&lt;br /&gt;
%t=0&amp;lt;&amp;gt;T(1) es donde se guardan las condiciones iniciales&lt;br /&gt;
&lt;br /&gt;
U=zeros(length(t),length(x));&lt;br /&gt;
Dt_U=zeros(length(t),length(x));&lt;br /&gt;
Dx_U=zeros(length(t),length(x));&lt;br /&gt;
&lt;br /&gt;
%Condición inicial: Estiramos 2 m del centro&lt;br /&gt;
%Modelizado como dos rectas antisimétricas que se cortan en x=5 y&lt;br /&gt;
%sujetas en x=0 y x=L.&lt;br /&gt;
&lt;br /&gt;
U(1,:)=2*sin(x*pi/L);&lt;br /&gt;
Dt_U(1,:)=zeros(1,length(x))';&lt;br /&gt;
D2t_U=Ecuacion6(U(1,:),x,-1);&lt;br /&gt;
&lt;br /&gt;
%Inicio del esquema numérico&lt;br /&gt;
%empieza en 2 ya que el 1 es la cond. inicial&lt;br /&gt;
&lt;br /&gt;
%ESQUEMA NEWMARK&lt;br /&gt;
&lt;br /&gt;
 for i=2:length(t)&lt;br /&gt;
    iter=[k,i]&lt;br /&gt;
    Ua=U(i-1,:);&lt;br /&gt;
    Dt_Ua=Dt_U(i-1,:);&lt;br /&gt;
    D2t_Ua=D2t_U;&lt;br /&gt;
    %Derivada segunda respecto del tiempo en el instante t, se obtiene de&lt;br /&gt;
    %eq. diferencial u_tt=f(x,u,u_x,u_xx)&lt;br /&gt;
    D2t_U=Ecuacion6(U(i-1,:),x,t(i))-A(k)*Dt_Ua;&lt;br /&gt;
    %Derivada primera&lt;br /&gt;
    Dt_U(i,:)=Dt_Ua+0.5*dt*(D2t_Ua+D2t_U);&lt;br /&gt;
    %Ecuacion&lt;br /&gt;
    U(i,:) = Ua+Dt_Ua*dt+(1/6)*(D2t_Ua+D2t_U)*dt^2;&lt;br /&gt;
 end&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 %ENERGIA&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 for i=1:length(t)&lt;br /&gt;
    Dx_U(i,:)=deriva(x,U(i,:),0);&lt;br /&gt;
 end&lt;br /&gt;
dE=zeros(length(t),1);&lt;br /&gt;
for i=1:length(x)&lt;br /&gt;
    dE=dE+(Dt_U(:,i).^2+Dx_U(:,i).^2)*dx;&lt;br /&gt;
end&lt;br /&gt;
 ENE(k,:)=dE;&lt;br /&gt;
end&lt;br /&gt;
 figure(1)&lt;br /&gt;
 hold on&lt;br /&gt;
 grid&lt;br /&gt;
 aa=find(x==L/4);&lt;br /&gt;
 ab=find(x==3*L/4);&lt;br /&gt;
 imagesc(U)&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''FUNCIONES:'''&lt;br /&gt;
&lt;br /&gt;
DERIVA:&lt;br /&gt;
{{matlab|codigo= &lt;br /&gt;
function v = deriva(x,y,t)&lt;br /&gt;
n = length(x);&lt;br /&gt;
del=zeros(1,n);&lt;br /&gt;
if t==1&lt;br /&gt;
    i=1;&lt;br /&gt;
    del(1)=(y(i)-y(i+1))/(-x(i)+x(i+1));&lt;br /&gt;
    for i=2:n&lt;br /&gt;
    del(i)=(y(i)-y(i-1))/(x(i)-x(i-1));&lt;br /&gt;
    end &lt;br /&gt;
elseif t==-1&lt;br /&gt;
    for i=1:n-1&lt;br /&gt;
    del(i)=(y(i)-y(i+1))/(x(i)-x(i+1));&lt;br /&gt;
    end &lt;br /&gt;
    i=n;&lt;br /&gt;
    del(i)=(y(i)-y(i-1))/(x(i)-x(i-1));&lt;br /&gt;
elseif t==0&lt;br /&gt;
    i=1;&lt;br /&gt;
    del(1)=(y(i)-y(i+1))/(+x(i)-x(i+1));&lt;br /&gt;
    for i=2:n-1&lt;br /&gt;
    del(i)=(y(i+1)-y(i-1))/(2*(x(i)-x(i-1)));&lt;br /&gt;
    end &lt;br /&gt;
    i=n;&lt;br /&gt;
    del(n)=(y(i)-y(i-1))/(x(i)-x(i-1));  &lt;br /&gt;
end&lt;br /&gt;
v=del;&lt;br /&gt;
end&lt;br /&gt;
}}&lt;br /&gt;
'''ECUACIÓN 6:'''&lt;br /&gt;
&lt;br /&gt;
function [ V ] = Ecuacion6( u,x,t )&lt;br /&gt;
{{matlab|codigo= &lt;br /&gt;
&lt;br /&gt;
%se guarda aquí la ecuación diferencial del tipo u_tt=f(x,u,u_x,u_xx)&lt;br /&gt;
%INCLUIDAS LAS CC AQUÍ!&lt;br /&gt;
%PARA u_tt=u_xx&lt;br /&gt;
%CC: u(0,t)=u(L,t)=0;&lt;br /&gt;
&lt;br /&gt;
Ax=x(2)-x(1);&lt;br /&gt;
n=length(u);&lt;br /&gt;
V=zeros(1,n);&lt;br /&gt;
F0=(1/x(n))+0.01;&lt;br /&gt;
b=-2;&lt;br /&gt;
&lt;br /&gt;
%Las condiciones de contorno vienen en x(1)=0 y x(Nx)=L&lt;br /&gt;
&lt;br /&gt;
u(1)=0;&lt;br /&gt;
if(t==-1)&lt;br /&gt;
    u(n)=0;&lt;br /&gt;
else&lt;br /&gt;
    %u(n)=0;&lt;br /&gt;
    u(n)=sin(2*pi*F0*t);&lt;br /&gt;
    %u(n)=(1/(b*Ax-1))*u(n-1);&lt;br /&gt;
end&lt;br /&gt;
for i=2:n-1&lt;br /&gt;
    V(i)=(1/Ax^2)*(u(i+1)-2*u(i)+u(i-1));&lt;br /&gt;
end&lt;br /&gt;
i=1;&lt;br /&gt;
V(i)=(1/Ax^2)*(u(i+2)-2*u(i+1));&lt;br /&gt;
i=n;&lt;br /&gt;
V(i)=(1/Ax^2)*(u(i)-2*u(i-1)+u(i-2));&lt;br /&gt;
end&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:6.1.png|700px|thumb|centre|Gráfica en tres dimensiones de la energía de un cable cuyo extremo derecho está sometido a una vibración externa periódica para F_0=1/L +0,1]]&lt;br /&gt;
'''function [ V ] = Ecuacion6( u,x,t )'''&lt;br /&gt;
{{matlab|codigo= &lt;br /&gt;
%se guarda aquí la ecuación diferencial del tipo u_tt=f(x,u,u_x,u_xx)&lt;br /&gt;
%INCLUIDAS LAS CC AQUÍ!&lt;br /&gt;
%PARA u_tt=u_xx&lt;br /&gt;
%CC: u(0,t)=u(L,t)=0;&lt;br /&gt;
&lt;br /&gt;
Ax=x(2)-x(1);&lt;br /&gt;
n=length(u);&lt;br /&gt;
V=zeros(1,n);&lt;br /&gt;
F0=(1/x(n))-0.01;&lt;br /&gt;
b=-2;&lt;br /&gt;
&lt;br /&gt;
%Las condiciones de contorno vienen en x(1)=0 y x(Nx)=L&lt;br /&gt;
&lt;br /&gt;
u(1)=0;&lt;br /&gt;
if(t==-1)&lt;br /&gt;
    u(n)=0;&lt;br /&gt;
else&lt;br /&gt;
    %u(n)=0;&lt;br /&gt;
    u(n)=sin(2*pi*F0*t);&lt;br /&gt;
    %u(n)=(1/(b*Ax-1))*u(n-1);&lt;br /&gt;
end&lt;br /&gt;
for i=2:n-1&lt;br /&gt;
    V(i)=(1/Ax^2)*(u(i+1)-2*u(i)+u(i-1));&lt;br /&gt;
end&lt;br /&gt;
i=1;&lt;br /&gt;
V(i)=(1/Ax^2)*(u(i+2)-2*u(i+1));&lt;br /&gt;
i=n;&lt;br /&gt;
V(i)=(1/Ax^2)*(u(i)-2*u(i-1)+u(i-2));&lt;br /&gt;
end&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:6.2.png|700px|thumb|centre|Gráfica en tres dimensiones de la energía de un cable cuyo extremo derecho está sometido a una vibración externa periódica.]]&lt;br /&gt;
&lt;br /&gt;
'''function [ V ] = Ecuacion6( u,x,t )'''&lt;br /&gt;
{{matlab|codigo= &lt;br /&gt;
%se guarda aquí la ecuación diferencial del tipo u_tt=f(x,u,u_x,u_xx)&lt;br /&gt;
%INCLUIDAS LAS CC AQUÍ!&lt;br /&gt;
%PARA u_tt=u_xx&lt;br /&gt;
%CC: u(0,t)=u(L,t)=0;&lt;br /&gt;
&lt;br /&gt;
Ax=x(2)-x(1);&lt;br /&gt;
n=length(u);&lt;br /&gt;
V=zeros(1,n);&lt;br /&gt;
F0=(1/x(n));&lt;br /&gt;
b=-2;&lt;br /&gt;
&lt;br /&gt;
%Las condiciones de contorno vienen en x(1)=0 y x(Nx)=L&lt;br /&gt;
&lt;br /&gt;
u(1)=0;&lt;br /&gt;
if(t==-1)&lt;br /&gt;
    u(n)=0;&lt;br /&gt;
else&lt;br /&gt;
    %u(n)=0;&lt;br /&gt;
    u(n)=sin(2*pi*F0*t);&lt;br /&gt;
    %u(n)=(1/(b*Ax-1))*u(n-1);&lt;br /&gt;
end&lt;br /&gt;
for i=2:n-1&lt;br /&gt;
    V(i)=(1/Ax^2)*(u(i+1)-2*u(i)+u(i-1));&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
i=1;&lt;br /&gt;
V(i)=(1/Ax^2)*(u(i+2)-2*u(i+1));&lt;br /&gt;
i=n;&lt;br /&gt;
V(i)=(1/Ax^2)*(u(i)-2*u(i-1)+u(i-2));&lt;br /&gt;
end&lt;br /&gt;
}}&lt;br /&gt;
 &lt;br /&gt;
La gráfica resultante es la siguiente:&lt;br /&gt;
[[Archivo:6.3.png|700px|thumb|centre|Gráfica en tres dimensiones de la energía de un cable cuyo extremo derecho está sometido a una vibración externa periódica.]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
En dicha gráfica, se puede observar que la forma de la función o la energía se ve alterada por la condición impuesta de tal manera que ésta adquiere una forma también sinusoidal, y que su estabilización dependería del tiempo transcurrido entre vibración y vibración.&lt;br /&gt;
&lt;br /&gt;
==== Sujeción a un aparato que responde a una vibración externa. ====&lt;br /&gt;
&lt;br /&gt;
La siguiente situación que vamos a representar a modelar a través de ecuaciones diferenciales va a ser la siguiente: supondremos que el cable de la anterior situación (que recibía en su extremo derecho una vibración periódica de &amp;lt;math&amp;gt; F_0 &amp;lt;/math&amp;gt; [Herzios])envía una respuesta a la vibración que recibe. Esta situación la vamos a representar como un cambio en la condición de contorno; ésta va a pasar a ser: &amp;lt;math&amp;gt; u_x(L,t)=bu(L,t) &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
El objetivo, de nuevo será representar la evolución de la energía respecto del tiempo y ver si este cambio en el problema se ve reflejado en su representación. &lt;br /&gt;
En el código numérico, no obstante, la situación de &amp;lt;math&amp;gt; u_x(L,t)=bu(L,t) &amp;lt;/math&amp;gt; la vamos a aproximar por la siguiente expresión:&lt;br /&gt;
&amp;lt;math&amp;gt; u_x(L,t)-bu(L,t)  \cong  \frac{u_{N+1}(t)-u_{N-1}(t)}{2h-u_N(t)} &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
En la resolución del problema emplearemos de nuevo la condición inicial de sujetar el cable por el centro y elevarlo 2 m perpendicularmente: &lt;br /&gt;
&amp;lt;math&amp;gt; u(x,0)=g(x)= 2- |\frac{2}{5}x -2| &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Y además obtendremos el resultado para los dos valores siguientes de &amp;lt;math&amp;gt;b&amp;lt;/math&amp;gt; :&lt;br /&gt;
Para &amp;lt;math&amp;gt; b=2 &amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt; b=-2 &amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
El código numérico de matlab/octave es:&lt;br /&gt;
&lt;br /&gt;
'''PROGRAMA:'''&lt;br /&gt;
{{matlab|codigo= &lt;br /&gt;
clc;clear all;close all;&lt;br /&gt;
&lt;br /&gt;
%Datos&lt;br /&gt;
dx=0.1;L=10;dt=0.0001;NT=40;&lt;br /&gt;
A=[0,1,4,10,100];&lt;br /&gt;
x=0:dx:L;t=0:dt:NT;&lt;br /&gt;
ENE=zeros(5,length(t));&lt;br /&gt;
&lt;br /&gt;
%Condición de contorno: U(0,t)=U(L,t)=0;&lt;br /&gt;
for k=1&lt;br /&gt;
&lt;br /&gt;
%Vector solución y derivada temporal de la solución&lt;br /&gt;
%t=0&amp;lt;&amp;gt;T(1) es donde se guardan las condiciones iniciales&lt;br /&gt;
&lt;br /&gt;
U=zeros(length(t),length(x));&lt;br /&gt;
Dt_U=zeros(length(t),length(x));&lt;br /&gt;
Dx_U=zeros(length(t),length(x));    &lt;br /&gt;
&lt;br /&gt;
%Condición inicial: Estiramos 2 m del centro&lt;br /&gt;
%Modelizado como dos rectas antisimétricas que se cortan en x=5 y&lt;br /&gt;
%sujetas en x=0 y x=L.&lt;br /&gt;
&lt;br /&gt;
U(1,:)=2*sin(x*pi/L);&lt;br /&gt;
Dt_U(1,:)=zeros(1,length(x))';&lt;br /&gt;
D2t_U=Ecuacion7(U(1,:),x,-1);&lt;br /&gt;
&lt;br /&gt;
%Inicio del esquema numérico&lt;br /&gt;
%empieza en 2 ya que el 1 es la cond. inicial&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
%ESQUEMA NEWMARK&lt;br /&gt;
 for i=2:length(t)&lt;br /&gt;
    iter=[k,i]&lt;br /&gt;
    Ua=U(i-1,:);&lt;br /&gt;
    Dt_Ua=Dt_U(i-1,:);&lt;br /&gt;
    D2t_Ua=D2t_U;&lt;br /&gt;
&lt;br /&gt;
    %Derivada segunda respecto del tiempo en el instante t, se obtiene de&lt;br /&gt;
    %eq. diferencial u_tt=f(x,u,u_x,u_xx)&lt;br /&gt;
&lt;br /&gt;
    D2t_U=Ecuacion7(U(i-1,:),x,t(i))-A(k)*Dt_Ua;&lt;br /&gt;
&lt;br /&gt;
    %Derivada primera&lt;br /&gt;
    Dt_U(i,:)=Dt_Ua+0.5*dt*(D2t_Ua+D2t_U);&lt;br /&gt;
&lt;br /&gt;
    %Ecuacion&lt;br /&gt;
    U(i,:) = Ua+Dt_Ua*dt+(1/6)*(D2t_Ua+D2t_U)*dt^2;&lt;br /&gt;
 end&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 %ENERGIA&lt;br /&gt;
 for i=1:length(t)&lt;br /&gt;
    Dx_U(i,:)=deriva(x,U(i,:),0);&lt;br /&gt;
 end&lt;br /&gt;
dE=zeros(length(t),1);&lt;br /&gt;
for i=1:length(x)&lt;br /&gt;
    dE=dE+(Dt_U(:,i).^2+Dx_U(:,i).^2)*dx;&lt;br /&gt;
end&lt;br /&gt;
 ENE(k,:)=dE;&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
 figure(1)&lt;br /&gt;
 hold on&lt;br /&gt;
 grid&lt;br /&gt;
 aa=find(x==L/4);&lt;br /&gt;
 ab=find(x==3*L/4);&lt;br /&gt;
 plot(t,ENE(1,:))&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
'''FUNCIONES:'''&lt;br /&gt;
'''function v = deriva(x,y,t)'''&lt;br /&gt;
{{matlab|codigo= &lt;br /&gt;
n = length(x);&lt;br /&gt;
del=zeros(1,n);&lt;br /&gt;
if t==1&lt;br /&gt;
    i=1;&lt;br /&gt;
    del(1)=(y(i)-y(i+1))/(-x(i)+x(i+1));&lt;br /&gt;
    for i=2:n&lt;br /&gt;
    del(i)=(y(i)-y(i-1))/(x(i)-x(i-1));&lt;br /&gt;
    end &lt;br /&gt;
elseif t==-1&lt;br /&gt;
    for i=1:n-1&lt;br /&gt;
    del(i)=(y(i)-y(i+1))/(x(i)-x(i+1));&lt;br /&gt;
    end &lt;br /&gt;
    i=n;&lt;br /&gt;
    del(i)=(y(i)-y(i-1))/(x(i)-x(i-1));&lt;br /&gt;
elseif t==0&lt;br /&gt;
    i=1;&lt;br /&gt;
    del(1)=(y(i)-y(i+1))/(+x(i)-x(i+1));&lt;br /&gt;
    for i=2:n-1&lt;br /&gt;
    del(i)=(y(i+1)-y(i-1))/(2*(x(i)-x(i-1)));&lt;br /&gt;
    end &lt;br /&gt;
    i=n;&lt;br /&gt;
    del(n)=(y(i)-y(i-1))/(x(i)-x(i-1));  &lt;br /&gt;
end&lt;br /&gt;
v=del;&lt;br /&gt;
end&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
'''function [ V ] = Ecuacion7( u,x,t )'''&lt;br /&gt;
{{matlab|codigo= &lt;br /&gt;
%se guarda aquí la ecuación diferencial del tipo u_tt=f(x,u,u_x,u_xx)&lt;br /&gt;
%INCLUIDAS LAS CC AQUÍ!&lt;br /&gt;
%PARA u_tt=u_xx&lt;br /&gt;
%CC: u(0,t)=u(L,t)=0;&lt;br /&gt;
&lt;br /&gt;
Ax=x(2)-x(1);&lt;br /&gt;
n=length(u);&lt;br /&gt;
V=zeros(1,n);&lt;br /&gt;
F0=(1/x(n));&lt;br /&gt;
b=2;&lt;br /&gt;
&lt;br /&gt;
%Las condiciones de contorno vienen en x(1)=0 y x(Nx)=L&lt;br /&gt;
u(1)=0;&lt;br /&gt;
if(t==-1)&lt;br /&gt;
    u(n)=0;&lt;br /&gt;
else&lt;br /&gt;
    %u(n)=0;&lt;br /&gt;
    %u(n)=sin(2*pi*F0*t);&lt;br /&gt;
    u(n)=(1/(b*Ax-1))*u(n-1);&lt;br /&gt;
end&lt;br /&gt;
for i=2:n-1&lt;br /&gt;
    V(i)=(1/Ax^2)*(u(i+1)-2*u(i)+u(i-1));&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
i=1;&lt;br /&gt;
V(i)=(1/Ax^2)*(u(i+2)-2*u(i+1));&lt;br /&gt;
i=n;&lt;br /&gt;
V(i)=(1/Ax^2)*(u(i)-2*u(i-1)+u(i-2));&lt;br /&gt;
end&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:7.1.png|700px|thumb|centre|Gráfica de la energía (ordenadas) de un cable frente al tiempo (abcisas) que recibe una vibración en su extremo derecho y que responde a dicha vibración para b=2. ]]&lt;br /&gt;
'''function [ V ] = Ecuacion7( u,x,t )'''&lt;br /&gt;
{{matlab|codigo= &lt;br /&gt;
%se guarda aquí la ecuación diferencial del tipo u_tt=f(x,u,u_x,u_xx)&lt;br /&gt;
%INCLUIDAS LAS CC AQUÍ!&lt;br /&gt;
%PARA u_tt=u_xx&lt;br /&gt;
%CC: u(0,t)=u(L,t)=0;&lt;br /&gt;
&lt;br /&gt;
Ax=x(2)-x(1);&lt;br /&gt;
n=length(u);&lt;br /&gt;
V=zeros(1,n);&lt;br /&gt;
F0=(1/x(n));&lt;br /&gt;
b=-2;&lt;br /&gt;
&lt;br /&gt;
%Las condiciones de contorno vienen en x(1)=0 y x(Nx)=L&lt;br /&gt;
u(1)=0;&lt;br /&gt;
&lt;br /&gt;
if(t==-1)&lt;br /&gt;
    u(n)=0;&lt;br /&gt;
else&lt;br /&gt;
    %u(n)=0;&lt;br /&gt;
    %u(n)=sin(2*pi*F0*t);&lt;br /&gt;
    u(n)=(1/(b*Ax-1))*u(n-1);&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
for i=2:n-1&lt;br /&gt;
    V(i)=(1/Ax^2)*(u(i+1)-2*u(i)+u(i-1));&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
i=1;&lt;br /&gt;
V(i)=(1/Ax^2)*(u(i+2)-2*u(i+1));&lt;br /&gt;
i=n;&lt;br /&gt;
V(i)=(1/Ax^2)*(u(i)-2*u(i-1)+u(i-2));&lt;br /&gt;
end&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
La imagen resultante es:&lt;br /&gt;
[[Archivo:7.2.png|700px|thumb|centre|Gráfica de la energía (ordenadas) de un cable frente al tiempo (abcisas) que recibe una vibración en su extremo derecho y que responde a dicha vibración para b=-2. ]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
La anterior gráfica muestra el comportamiento de la cuerda como respuesta a la vibración producida en uno de sus extremos así como el movimiento transversal del punto medio al comienzo. Podemos observar el movimiento transversal de cada punto de la cuerda a través de la expresión de la energía, así como que, a medida que transcurre el tiempo, ésta se va estabilizando. La forma de la función recuerda a una función sinusoidal debido a la forma de la condición de contorno impuesta.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Categoría:Ecuaciones Diferentiales]]&lt;br /&gt;
 [[Categoría:ED13/14]]&lt;br /&gt;
 [[Categoría:Trabajos 2013-14]]&lt;/div&gt;</summary>
		<author><name>Lucia Lopez</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Ecuaci%C3%B3n_de_ondas_(grupo_2B)&amp;diff=13234</id>
		<title>Ecuación de ondas (grupo 2B)</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Ecuaci%C3%B3n_de_ondas_(grupo_2B)&amp;diff=13234"/>
				<updated>2014-05-19T21:25:58Z</updated>
		
		<summary type="html">&lt;p&gt;Lucia Lopez: /* Modelización de los desplazamientos del Cable. */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{ TrabajoED | Ecuación de ondas. Grupo 2-B| [[:Categoría:Ecuaciones Diferenciales|Ecuaciones Diferenciales]]|[[:Categoría:ED13/14|Curso 2013-14]]| &lt;br /&gt;
Ignacio Díaz-Caneja Camblor&lt;br /&gt;
&lt;br /&gt;
Alberto Fernández Pérez&lt;br /&gt;
&lt;br /&gt;
Adela González Barbado&lt;br /&gt;
&lt;br /&gt;
Lucia López Sánchez&lt;br /&gt;
&lt;br /&gt;
Araceli Martín Candilejo&lt;br /&gt;
&lt;br /&gt;
Diego Solano López&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
== Modelización de los desplazamientos del Cable. ==&lt;br /&gt;
El problema que se tratará a continuación describe una ecuación de '''tipo hiperbólico''', una '''ecuación de ondas'''.&lt;br /&gt;
Consideramos un '''cable de 10 metros''' de longitud '''sujeto por sus extremos'''. Suponiendo que éste tiene una '''sección pequeña''' respecto a su longitud someteremos al cable a pequeñas vibraciones que estudiaremos con una modelización de la ecuación de ondas. &lt;br /&gt;
Se caracteriza al cable de una masa constante por unidad de volumen, es decir, será '''homogéneo'''. Éste, '''flexible''' a la tracción, únicamente ofrece resistencias en su dirección longitudinal, tangenciales, pero no a esfuerzos de flexión o cortes. Se supone, además, que es '''inextensible''' por lo que será lo suficientemente rígido longitudinalmente como para poder despreciar su extensibilidad.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Con esta modelización se estudiarán las '''pequeñas vibraciones''', desplazamientos transversales, a las que es sometido el cable. Para iniciar el movimiento del cable lo sujetaremos por el centro subiéndolo dos metros, lo que nos proporciona una primera condición inicial determinada por la función g(x), y soltándolo, con una velocidad inicial nula. &lt;br /&gt;
&lt;br /&gt;
&amp;lt;br/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Obtenemos la ecuación &amp;lt;math&amp;gt;u_{tt}-u_{xx}=0&amp;lt;/math&amp;gt; , de la cual se puede observar que tanto el '''módulo de la tensión''' como la '''densidad''' son '''constantes''' ya que el '''módulo de la elasticidad''' es constante, &amp;lt;math&amp;gt;c^2=1&amp;lt;/math&amp;gt; . Al ser ésta primera ecuación homogénea deducimos que transversalmente no actúa ninguna fuerza densidad espacial y temporal. Se deduce del enunciado anterior que las condiciones de frontera son '''homogéneas''', &amp;lt;math&amp;gt;u(0,t)=0&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;u(10,t)=0&amp;lt;/math&amp;gt; que nos indican que los extremos del cable no describen ningún tipo de movimiento en todo instante t al no estar sometidos a ningun tipo de fuerza. Finalmente, añadimos al sistema las condiciones iniciales, la primera de ellas, &amp;lt;math&amp;gt;u(x,0)=g(x)= 2- |\frac{2}{5}x -2|&amp;lt;/math&amp;gt;, define el '''movimiento descrito por la onda''' en el instante t=0 en cualquier punto del cable; y la segunda, &amp;lt;math&amp;gt;u_t(x,0)=0&amp;lt;/math&amp;gt;, que la onda parte de una '''velocidad inicial nula'''.&lt;br /&gt;
[[Image:DV.png|300px|thumb|right|Deslizamiento vertical del cable. ]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
\begin{cases}&lt;br /&gt;
&lt;br /&gt;
u_{tt}- u_{xx}=0  \  x∈[0,10] \ t&amp;gt;0\\&lt;br /&gt;
u(0,t)=0\\&lt;br /&gt;
u(10,t)=0\\&lt;br /&gt;
u(x,0)= 2- |\frac{2}{5}x -2|\\&lt;br /&gt;
u_t(x,0)=0&lt;br /&gt;
\end{cases}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
En los siguientes apartados se realizaran aproximaciones del sistema expuesto con tres métodos distintos de los que más tarde se hará una comparativa. Para esto último nos ayudaremos del error por lo que necesitaremos la solución analítica.&lt;br /&gt;
Como el problema consta de condiciones de frontera homogéneas, aplicamos directamente el método de separación de variables para su resolución analítica. &lt;br /&gt;
&amp;lt;br/&amp;gt;&lt;br /&gt;
==== Aproximación por el método del trapecio. ====&lt;br /&gt;
El método del trapecio se basa en aproximar una función integrando. Para ello utilizamos un número N de trapecios (en la imagen inferior hemos aproximado mediante 4 trapecios). Las integrales a resolver para poder poder aproximar una función por este método tendrán la distancia de sus límites de integración constantes para todas las integrales, a esta distancia entre los límites de integración lo llamamos paso. En el desarrollo de este método se supone que la función es continua en el intervalo en que se quiere aproximar.&lt;br /&gt;
&amp;lt;br/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Image:Trapecio.png|300px|thumb|center|Función Y(x), el área bajo la curva, se puede aproximar mediante n trapecios]]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br/&amp;gt;&lt;br /&gt;
{{matlab|codigo= &lt;br /&gt;
%u_tt-u_xx=0&lt;br /&gt;
%u(0,t)=u(l,t)=0&lt;br /&gt;
%u(x,0)=2-abs(0.4x-2)&lt;br /&gt;
%ut(x,0)=0&lt;br /&gt;
clear all&lt;br /&gt;
&lt;br /&gt;
%Datos del problema&lt;br /&gt;
L=10;&lt;br /&gt;
T=40;&lt;br /&gt;
&lt;br /&gt;
%Discretización&lt;br /&gt;
h=0.1;&lt;br /&gt;
N=L/h;&lt;br /&gt;
x=0:h:L;&lt;br /&gt;
xint=h:h:L-h;&lt;br /&gt;
dt=h;&lt;br /&gt;
t=0:dt:T;&lt;br /&gt;
&lt;br /&gt;
%Aprox. de u_xx&lt;br /&gt;
K=2*diag(ones(1,N-1))-diag(ones(1,N-2),-1)-diag(ones(1,N-2),1);&lt;br /&gt;
K=K/h^2;&lt;br /&gt;
F=zeros(N-1,1);&lt;br /&gt;
&lt;br /&gt;
%Posición inicial.&lt;br /&gt;
u0=(2-abs(xint*2/5-2))';&lt;br /&gt;
v0=zeros(N-1,1);&lt;br /&gt;
&lt;br /&gt;
%Aprox. de u_tt&lt;br /&gt;
M=[zeros(N-1),eye(N-1);-K,zeros(N-1)];&lt;br /&gt;
G=[zeros(N-1,1);F];&lt;br /&gt;
&lt;br /&gt;
%Aproximación por el método del Trapecio&lt;br /&gt;
W0=[u0;v0];&lt;br /&gt;
WW=W0;&lt;br /&gt;
sol=zeros(length(t),N+1);&lt;br /&gt;
sol(1,:)=[0,W0(1:N-1)',0];&lt;br /&gt;
for j=1:length(t)-1&lt;br /&gt;
    WW=(eye(2*N-2)-dt/2*M)\(eye(2*N-2)+dt/2*M)*WW;&lt;br /&gt;
    sol(j+1,:)=[0,WW(1:N-1)',0];&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
%Dibujo de la solución&lt;br /&gt;
[xx,tt]=meshgrid(x,t);&lt;br /&gt;
surf(xx,tt,sol);&lt;br /&gt;
xlabel('Desplazamiento horizontal');&lt;br /&gt;
ylabel('Tiempo');&lt;br /&gt;
zlabel('Desplazamiento vertical');}}&lt;br /&gt;
&lt;br /&gt;
[[Image:klklk.jpg|700px|thumb|center|Aproximación por el método del Trapecio.]]&lt;br /&gt;
&lt;br /&gt;
Además de saber que el método del trapecio tiene orden de precisión 2 y, por tanto, es un buen método a la hora de aproximar, gráficamente también podemos observar que este método es bastante preciso.&lt;br /&gt;
&lt;br /&gt;
==== Aproximación por el método de Euler. ====&lt;br /&gt;
Se exponen en este apartados dos tipos de aproximaciones de Euler.&lt;br /&gt;
&lt;br /&gt;
Este método se basa en la posibilidad de aproximar una función original mediante rectas tangentes partiendo de un punto dado. Sabiendo que la recta tangente de una función en un punto es la derivada en dicho punto, este método consiste en calcular derivadas de la función en diferentes puntos pertenecientes a ella. Estos puntos serán tomados con la misma distancia a lo largo de la recta, a esta distancia la denominamos paso de discretización. &lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Image:Euler.png|300px|thumb|center|Aproximación de una función por el método de Euler]]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===== Euler Explícito. =====&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
%utt-uxx=0&lt;br /&gt;
%u(0,t)=u(l,t)=0&lt;br /&gt;
%u(x,0)=2-abs(0.4x-2)&lt;br /&gt;
%ut(x,0)=0&lt;br /&gt;
clear all&lt;br /&gt;
L=10;&lt;br /&gt;
T=40;&lt;br /&gt;
h=0.1;&lt;br /&gt;
N=L/h;&lt;br /&gt;
x=0:h:L;&lt;br /&gt;
xint=h:h:L-h;&lt;br /&gt;
dt=h;&lt;br /&gt;
t=0:dt:T;&lt;br /&gt;
K=2*diag(ones(1,N-1))-diag(ones(1,N-2),-1)-diag(ones(1,N-2),1);&lt;br /&gt;
K=K/h^2;&lt;br /&gt;
F=zeros(N-1,1);&lt;br /&gt;
u0=2-abs((xint*2/5-2))';&lt;br /&gt;
v0=zeros(N-1,1);&lt;br /&gt;
M=[zeros(N-1),eye(N-1);-K,zeros(N-1)];&lt;br /&gt;
G=[zeros(N-1,1);F];&lt;br /&gt;
W0=[u0;v0];&lt;br /&gt;
WW=W0;&lt;br /&gt;
sol=zeros(length(t),N+1);&lt;br /&gt;
sol(1,:)=[0,W0(1:N-1)',0];&lt;br /&gt;
for j=1:length(t)-1&lt;br /&gt;
    WW=WW+dt*M*WW;&lt;br /&gt;
    sol(j+1,:)=[0,WW(1:N-1)',0];&lt;br /&gt;
end&lt;br /&gt;
[xx,tt]=meshgrid(x,t);&lt;br /&gt;
surf(xx,tt,sol);}}&lt;br /&gt;
===== Euler Modificado. =====&lt;br /&gt;
&lt;br /&gt;
Este método se basa en la misma idea que el anterior, pero hace un refinamiento en la aproximación, tomando un promedio entre las pendientes pues esto parece más razonable para la obtención de un valor más preciso.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
%utt-uxx=0&lt;br /&gt;
%u(0,t)=u(l,t)=0&lt;br /&gt;
%u(x,0)=2-abs(0.4x-2)&lt;br /&gt;
%ut(x,0)=0&lt;br /&gt;
clear all&lt;br /&gt;
L=10;&lt;br /&gt;
T=40;&lt;br /&gt;
h=0.1;&lt;br /&gt;
N=L/h;&lt;br /&gt;
x=0:h:L;&lt;br /&gt;
xint=h:h:L-h;&lt;br /&gt;
dt=h;&lt;br /&gt;
t=0:dt:T;&lt;br /&gt;
K=2*diag(ones(1,N-1))-diag(ones(1,N-2),-1)-diag(ones(1,N-2),1);&lt;br /&gt;
K=K/h^2;&lt;br /&gt;
F=zeros(N-1,1);&lt;br /&gt;
u0=2-abs((xint*2/5-2))';&lt;br /&gt;
v0=zeros(N-1,1);&lt;br /&gt;
M=[zeros(N-1),eye(N-1);-K,zeros(N-1)];&lt;br /&gt;
G=[zeros(N-1,1);F];&lt;br /&gt;
W0=[u0;v0];&lt;br /&gt;
WW=W0;&lt;br /&gt;
sol=zeros(length(t),N+1);&lt;br /&gt;
sol(1,:)=[0,W0(1:N-1)',0];&lt;br /&gt;
for j=1:length(t)-1&lt;br /&gt;
    k1=M*WW;&lt;br /&gt;
    WW=(eye(2*N-2)+dt*M/2)*WW+(dt/2)*k1+(dt^2)*M*k1/2;&lt;br /&gt;
    sol(j+1,:)=[0,WW(1:N-1)',0];&lt;br /&gt;
end&lt;br /&gt;
[xx,tt]=meshgrid(x,t);&lt;br /&gt;
surf(xx,tt,sol);}}&lt;br /&gt;
&lt;br /&gt;
Antes de comentar las dos gráficas anteriores se debe insistir en que el orden de precisión del método de Euler es 1, por tanto, este método será menos preciso que el método del trapecio.&lt;br /&gt;
&lt;br /&gt;
Además de ya haber comentado anteriormente que Euler modificado se basa en mejorar la aproximación mediante el método de Euler sencillo, fijándonos en las gráficas podemos observar que la gráfica obtenida mediante el método de Euler modificado realiza una mejor aproximación y se asemeja mejor a la gráfica obtenida mediante el método del trapecio que la gráfica obtenida mediante Euler.&lt;br /&gt;
&lt;br /&gt;
==== Aproximación por Fourier con diferentes términos de series. ====&lt;br /&gt;
En este apartado se ofrece una aproximación alternativa a las anteriores. Se muestran '''cinco iteraciones''' distintas del '''método del Fourier''' que se compararan entre sí y con los métodos anteriores, Trapecio y Euler. Este método de aproximación depende del número de términos de serie (lo denominamos con la letra Q) con los que se realice el programa de Fourier.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br/&amp;gt;&lt;br /&gt;
Puesto que la realización de este método es la misma sea cual sea el número de serie elegido, se han expuesto únicamente dos casos de Q para una mayor claridad del programa.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo= %utt-uxx=0&lt;br /&gt;
%u(0,t)=u(l,t)=0&lt;br /&gt;
%u(x,0)=2-abs(0.4x-2)&lt;br /&gt;
%ut(x,0)=0&lt;br /&gt;
&lt;br /&gt;
%1 iteracion&lt;br /&gt;
clear all&lt;br /&gt;
L=10;&lt;br /&gt;
T=40;&lt;br /&gt;
Q=1;&lt;br /&gt;
h=0.1;&lt;br /&gt;
N=L/h;&lt;br /&gt;
x=0:h:L;&lt;br /&gt;
dt=h;&lt;br /&gt;
t=0:dt:T;&lt;br /&gt;
sol=zeros(length(t),N+1);&lt;br /&gt;
for k=1:Q&lt;br /&gt;
    phi=sin(k/L*pi*x);&lt;br /&gt;
    a=trapz(x,(2-abs(2/5*x-2)).*phi)/(trapz(x,phi.^2));&lt;br /&gt;
    b=0;&lt;br /&gt;
    T=a.*cos(k*pi*t/L);&lt;br /&gt;
    sol=sol+T'*phi;&lt;br /&gt;
end&lt;br /&gt;
[xx,tt]=meshgrid(x,t);&lt;br /&gt;
figure (1)&lt;br /&gt;
surf(xx,tt,sol)&lt;br /&gt;
xlabel('Desplazamiento horizontal');&lt;br /&gt;
ylabel('Tiempo');&lt;br /&gt;
zlabel('Desplazamiento vertical');&lt;br /&gt;
&lt;br /&gt;
%3 iteracion&lt;br /&gt;
clear all&lt;br /&gt;
L=10;&lt;br /&gt;
T=40;&lt;br /&gt;
Q=3;&lt;br /&gt;
h=0.1;&lt;br /&gt;
N=L/h;&lt;br /&gt;
x=0:h:L;&lt;br /&gt;
dt=h;&lt;br /&gt;
t=0:dt:T;&lt;br /&gt;
sol=zeros(length(t),N+1);&lt;br /&gt;
for k=1:Q&lt;br /&gt;
    phi=sin(k/L*pi*x);&lt;br /&gt;
    a=trapz(x,(2-abs(2/5*x-2)).*phi)/(trapz(x,phi.^2));&lt;br /&gt;
    b=0;&lt;br /&gt;
    T=a.*cos(k*pi*t/L);&lt;br /&gt;
    sol=sol+T'*phi;&lt;br /&gt;
end&lt;br /&gt;
[xx,tt]=meshgrid(x,t);&lt;br /&gt;
figure (2)&lt;br /&gt;
surf(xx,tt,sol)&lt;br /&gt;
xlabel('Desplazamiento horizontal');&lt;br /&gt;
ylabel('Tiempo');&lt;br /&gt;
zlabel('Desplazamiento vertical');}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br/&amp;gt;&lt;br /&gt;
[[Image:81tF2.jpg|525px|thumb|left|Aproximación por el método del Trapecio con un término de serie.]]&lt;br /&gt;
[[Image:82tF.jpg|525px|thumb|center|Aproximación por el método del Trapecio con tres términos de serie.]]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br/&amp;gt; &lt;br /&gt;
&lt;br /&gt;
[[Image:83tF.jpg|525px|thumb|left|Aproximación por el método del Trapecio con cinco términos de serie.]]&lt;br /&gt;
[[Image:84tF.jpg|525px|thumb|center|Aproximación por el método del Trapecio con diez términos de serie.]]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Image:85tF.jpg|525px|thumb|center|Aproximación por el método del Trapecio con veinte términos de serie.]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
En este método podemos observar fijándonos en las gráficas que a mayor número de términos (mayor Q), mayor es la aproximación obtenida y más estable.&lt;br /&gt;
&lt;br /&gt;
Realizando una comparación con los otros métodos, se puede observar, fijándonos en las gráficas y en los órdenes de precisión, que el método que mejor aproxima  la ecuación del problema es el método del trapecio, seguido de Euler modificado y, por último, Euler, teniendo mayor orden el que mejor aproxima la función.&lt;br /&gt;
&lt;br /&gt;
Gráficamente podemos confirmar este hecho, dándonos cuenta que las gráficas más similares son fourier con Q=20 y el método del trapecio.&lt;br /&gt;
&lt;br /&gt;
== Energía del Cable. ==&lt;br /&gt;
&lt;br /&gt;
La energía del cable que viene definida por la función: &lt;br /&gt;
\begin{equation}&lt;br /&gt;
E(t) = \int_{0}^{L} (u_{t}^{2}(x,t)+ u_{x}^{2}(x,t)) \cdot dx&lt;br /&gt;
\end{equation}&lt;br /&gt;
&lt;br /&gt;
El método utilizado en el desarrollo numérico de está expresión es el '''método de diferencias finitas'''&lt;br /&gt;
(Funciona calculando de manera aproximada las soluciones a las ecuaciones diferenciales usando ecuaciones diferenciales finitas para aproximar derivadas.).&lt;br /&gt;
&lt;br /&gt;
'''FUNCIÓN:'''&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
function v = deriva(x,y,t)&lt;br /&gt;
&lt;br /&gt;
n = length(x);&lt;br /&gt;
del=zeros(1,n);&lt;br /&gt;
&lt;br /&gt;
if t==1&lt;br /&gt;
    &lt;br /&gt;
    i=1;&lt;br /&gt;
    del(1)=(y(i)-y(i+1))/(-x(i)+x(i+1));&lt;br /&gt;
&lt;br /&gt;
    for i=2:n&lt;br /&gt;
    del(i)=(y(i)-y(i-1))/(x(i)-x(i-1));&lt;br /&gt;
    end &lt;br /&gt;
    &lt;br /&gt;
elseif t==-1&lt;br /&gt;
&lt;br /&gt;
    for i=1:n-1&lt;br /&gt;
    del(i)=(y(i)-y(i+1))/(x(i)-x(i+1));&lt;br /&gt;
    end &lt;br /&gt;
    &lt;br /&gt;
    i=n;&lt;br /&gt;
    del(i)=(y(i)-y(i-1))/(x(i)-x(i-1));&lt;br /&gt;
    &lt;br /&gt;
elseif t==0&lt;br /&gt;
    &lt;br /&gt;
    i=1;&lt;br /&gt;
    del(1)=(y(i)-y(i+1))/(+x(i)-x(i+1));&lt;br /&gt;
    &lt;br /&gt;
    for i=2:n-1&lt;br /&gt;
    del(i)=(y(i+1)-y(i-1))/(2*(x(i)-x(i-1)));&lt;br /&gt;
    end &lt;br /&gt;
    &lt;br /&gt;
    i=n;&lt;br /&gt;
    del(n)=(y(i)-y(i-1))/(x(i)-x(i-1));  &lt;br /&gt;
    &lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
v=del;&lt;br /&gt;
&lt;br /&gt;
end&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''PROGRAMA:'''&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
clc;clear all;&lt;br /&gt;
L=10;dx=0.1;N=L/dx;&lt;br /&gt;
x=dx:dx:L-dx;&lt;br /&gt;
xtot=0:dx:L;&lt;br /&gt;
T=40;dt=0.1;t=0:dt:T;&lt;br /&gt;
K=2*diag(ones(1,N-1))-diag(ones(1,N-2),1)-diag(ones(1,N-2),-1);&lt;br /&gt;
K=(1/dx^2)*K;&lt;br /&gt;
U=(2-abs((x*2/5-2)))';&lt;br /&gt;
V=(0*x)';&lt;br /&gt;
sol(1,:)=[0 U' 0];&lt;br /&gt;
for i=1:length(t)-1;&lt;br /&gt;
    U=U+dt*V;&lt;br /&gt;
    V=V-dt*K*U;&lt;br /&gt;
    sol(i+1,:)=[0 U' 0];&lt;br /&gt;
end&lt;br /&gt;
%DERIVAMOS LA SOLUCION EN x Y EN t:&lt;br /&gt;
dsol_dx=ones(size(sol));&lt;br /&gt;
for i=1:length(t)&lt;br /&gt;
    dsol_dx(i,:)=deriva(sol(i,:),xtot,0);&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
dsol_dt=ones(size(sol));&lt;br /&gt;
for i=1:length(xtot)&lt;br /&gt;
    dsol_dt(:,i)=deriva(sol(:,i),t,1); &lt;br /&gt;
end&lt;br /&gt;
%SUMAMOS LAS DERIVADAS AL CUADRADO E INTEGRAMOS:&lt;br /&gt;
dE=zeros(1,size(t,1));&lt;br /&gt;
for i=1:length(xtot)&lt;br /&gt;
    dE=dE+(dsol_dt(i,:).^2+dsol_dx(i,:).^2)*dx;&lt;br /&gt;
end&lt;br /&gt;
xtot=0:dx:L;&lt;br /&gt;
[xx,tt]=meshgrid(xtot,t);&lt;br /&gt;
figure(1)&lt;br /&gt;
surf(xx,tt,dsol_dx);&lt;br /&gt;
figure(2)&lt;br /&gt;
surf(xx,tt,dsol_dt);&lt;br /&gt;
plot(dE,t)&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
El resultado habría de ser una gráfica que representase la evolución de la energía de la cuerda frente al transcurso del tiempo. No obstante, en nuestra resolución aparece una gráfica en blanco que ajudicamos o a un posible error en el código, o que podemos interpretar como que la energía tiende a infinito.&lt;br /&gt;
&lt;br /&gt;
== Aplicaciones. ==&lt;br /&gt;
&lt;br /&gt;
==== Sumersión en un medio viscoso. ====&lt;br /&gt;
&lt;br /&gt;
Suponemos ahora la inmersión del cable en una medio viscoso. Este medio viscoso produce un amortiguamiento en el movimiento del cable, con lo que la anterior ecuación diferencial se convertiría en &lt;br /&gt;
\begin{equation}&lt;br /&gt;
u_{tt}-u_{xx}+au_{t}=0&lt;br /&gt;
\end{equation} &lt;br /&gt;
, siendo '''&amp;lt;math&amp;gt; a  &amp;lt;/math&amp;gt;''' una constante de amortiguamiento propia del medio viscoso.&lt;br /&gt;
Puesto que la función '''&amp;lt;math&amp;gt; u(x,t)  &amp;lt;/math&amp;gt;''' se ve afectada ahora por el medio viscoso, y más directamente, por la constante '''&amp;lt;math&amp;gt; a  &amp;lt;/math&amp;gt;''' que actúa en su nombre, la energía del cable ,que se expresaba como una integral en función de '''&amp;lt;math&amp;gt; u(x,t)  &amp;lt;/math&amp;gt;''' también se va a ver afectada:&lt;br /&gt;
\begin{equation}&lt;br /&gt;
E(t) = \int_{0}^{L} (u_{t}^{2}(x,t)+ u_{x}^{2}(x,t)) \cdot dx&lt;br /&gt;
\end{equation}&lt;br /&gt;
&lt;br /&gt;
El obetivo del siguiente código será hallar una representación de la evolución de la energía en función del tiempo a raíz de la modificación de la función '''&amp;lt;math&amp;gt; u(x,t)  &amp;lt;/math&amp;gt;'''. Para ello asignaremos distintos valores a la constante '''&amp;lt;math&amp;gt; a  &amp;lt;/math&amp;gt;'''. Éstos van a ser:&lt;br /&gt;
'''&amp;lt;math&amp;gt; a=0  &amp;lt;/math&amp;gt;''' (la energía para este valor resultará igual que la hallada en el apartado anterior)&lt;br /&gt;
'''&amp;lt;math&amp;gt; a=1  &amp;lt;/math&amp;gt;'''&lt;br /&gt;
'''&amp;lt;math&amp;gt; a=4  &amp;lt;/math&amp;gt;'''&lt;br /&gt;
'''&amp;lt;math&amp;gt; a=10  &amp;lt;/math&amp;gt;'''&lt;br /&gt;
''&amp;lt;math&amp;gt; a=100  &amp;lt;/math&amp;gt;'''&lt;br /&gt;
&lt;br /&gt;
El procedimiento numérico volverá a seguir el método de '''diferencias finitas''':&lt;br /&gt;
&lt;br /&gt;
'''PROGRAMA:'''&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
clc;clear all;close all;&lt;br /&gt;
%Datos&lt;br /&gt;
dx=0.1;L=10;&lt;br /&gt;
dt=0.001;NT=40;&lt;br /&gt;
A=[0,1,4,10,100];&lt;br /&gt;
x=0:dx:L;&lt;br /&gt;
t=0:dt:NT;&lt;br /&gt;
ENE=zeros(5,length(t));&lt;br /&gt;
&lt;br /&gt;
%Condición de contorno: U(0,t)=U(L,t)=0;&lt;br /&gt;
&lt;br /&gt;
for k=1:5&lt;br /&gt;
&lt;br /&gt;
%Vector solución y derivada temporal de la solución&lt;br /&gt;
%t=0&amp;lt;&amp;gt;T(1) es donde se guardan las condiciones iniciales&lt;br /&gt;
&lt;br /&gt;
U=zeros(length(t),length(x));&lt;br /&gt;
Dt_U=zeros(length(t),length(x));&lt;br /&gt;
Dx_U=zeros(length(t),length(x));    &lt;br /&gt;
&lt;br /&gt;
%Condición inicial: Estiramos 2 m del centro&lt;br /&gt;
%Modelizado como dos rectas antisimétricas que se cortan en x=5 y&lt;br /&gt;
%sujetas en x=0 y x=L.&lt;br /&gt;
&lt;br /&gt;
U(1,:)=2*sin(x*pi/L);&lt;br /&gt;
Dt_U(1,:)=zeros(1,length(x))';&lt;br /&gt;
D2t_U=Ecuacion5(U(1,:),x,-1);&lt;br /&gt;
&lt;br /&gt;
%Inicio del esquema numérico&lt;br /&gt;
%empieza en 2 ya que el 1 es la cond. inicial&lt;br /&gt;
&lt;br /&gt;
%ESQUEMA NEWMARK&lt;br /&gt;
&lt;br /&gt;
 for i=2:length(t)&lt;br /&gt;
    iter=[k,i]&lt;br /&gt;
    Ua=U(i-1,:);&lt;br /&gt;
    Dt_Ua=Dt_U(i-1,:);&lt;br /&gt;
    D2t_Ua=D2t_U;&lt;br /&gt;
    %Derivada segunda respecto del tiempo en el instante t, se obtiene de&lt;br /&gt;
    %eq. diferencial u_tt=f(x,u,u_x,u_xx)&lt;br /&gt;
    D2t_U=Ecuacion5(U(i-1,:),x,t(i))-A(k)*Dt_Ua;&lt;br /&gt;
    %Derivada primera&lt;br /&gt;
    Dt_U(i,:)=Dt_Ua+0.5*dt*(D2t_Ua+D2t_U);&lt;br /&gt;
    %Ecuacion&lt;br /&gt;
    U(i,:) = Ua+Dt_Ua*dt+(1/6)*(D2t_Ua+D2t_U)*dt^2;&lt;br /&gt;
 end&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 %ENERGIA&lt;br /&gt;
 for i=1:length(t)&lt;br /&gt;
    Dx_U(i,:)=deriva(x,U(i,:),0);&lt;br /&gt;
 end&lt;br /&gt;
dE=zeros(length(t),1);&lt;br /&gt;
for i=1:length(x)&lt;br /&gt;
    dE=dE+(Dt_U(:,i).^2+Dx_U(:,i).^2)*dx;&lt;br /&gt;
end&lt;br /&gt;
 ENE(k,:)=dE;&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
 figure(1)&lt;br /&gt;
 hold on&lt;br /&gt;
 grid&lt;br /&gt;
 aa=find(x==L/4);&lt;br /&gt;
 ab=find(x==3*L/4);&lt;br /&gt;
 legend('A=0','A=1','A=4','A=10','A=100');&lt;br /&gt;
 plot(t,ENE(1,:),t,ENE(2,:),t,ENE(3,:),t,ENE(4,:),t,ENE(5,:));&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''FUNCIONES:'''&lt;br /&gt;
DERIVA:&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
function v = deriva(x,y,t)&lt;br /&gt;
n = length(x);&lt;br /&gt;
del=zeros(1,n);&lt;br /&gt;
if t==1&lt;br /&gt;
    i=1;&lt;br /&gt;
    del(1)=(y(i)-y(i+1))/(-x(i)+x(i+1));&lt;br /&gt;
    for i=2:n&lt;br /&gt;
    del(i)=(y(i)-y(i-1))/(x(i)-x(i-1));&lt;br /&gt;
    end &lt;br /&gt;
elseif t==-1&lt;br /&gt;
    for i=1:n-1&lt;br /&gt;
    del(i)=(y(i)-y(i+1))/(x(i)-x(i+1));&lt;br /&gt;
    end &lt;br /&gt;
    i=n;&lt;br /&gt;
    del(i)=(y(i)-y(i-1))/(x(i)-x(i-1));&lt;br /&gt;
elseif t==0&lt;br /&gt;
    i=1;&lt;br /&gt;
    del(1)=(y(i)-y(i+1))/(+x(i)-x(i+1));&lt;br /&gt;
    for i=2:n-1&lt;br /&gt;
    del(i)=(y(i+1)-y(i-1))/(2*(x(i)-x(i-1)));&lt;br /&gt;
    end &lt;br /&gt;
    i=n;&lt;br /&gt;
    del(n)=(y(i)-y(i-1))/(x(i)-x(i-1));  &lt;br /&gt;
end&lt;br /&gt;
v=del;&lt;br /&gt;
end&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
'''ECUACIÓN 5:'''&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
function [ V ] = Ecuacion5( u,x,t )&lt;br /&gt;
%se guarda aquí la ecuación diferencial del tipo u_tt=f(x,u,u_x,u_xx)&lt;br /&gt;
%INCLUIDAS LAS CC AQUÍ&lt;br /&gt;
%PARA u_tt=u_xx&lt;br /&gt;
%CC: u(0,t)=u(L,t)=0;&lt;br /&gt;
&lt;br /&gt;
Ax=x(2)-x(1);&lt;br /&gt;
n=length(u);&lt;br /&gt;
V=zeros(1,n);&lt;br /&gt;
&lt;br /&gt;
%Las condiciones de contorno vienen en x(1)=0 y x(Nx)=L&lt;br /&gt;
u(1)=0;&lt;br /&gt;
&lt;br /&gt;
if(t==-1)&lt;br /&gt;
    u(n)=0;&lt;br /&gt;
else&lt;br /&gt;
    u(n)=0;&lt;br /&gt;
    %u(n)=sin(2*pi*F0*t);&lt;br /&gt;
    %u(n)=(1/(b*Ax-1))*u(n-1);&lt;br /&gt;
end&lt;br /&gt;
for i=2:n-1&lt;br /&gt;
    &lt;br /&gt;
    V(i)=(1/Ax^2)*(u(i+1)-2*u(i)+u(i-1));&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
i=1;&lt;br /&gt;
V(i)=(1/Ax^2)*(u(i+2)-2*u(i+1));&lt;br /&gt;
i=n;&lt;br /&gt;
V(i)=(1/Ax^2)*(u(i)-2*u(i-1)+u(i-2));&lt;br /&gt;
end&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
La gráfica buscada es:&lt;br /&gt;
[[Archivo:Graficadelaenergiaenunmedioviscoso.png|700px|thumb|centre|Gráfica de la energía(ordenadas) del cable respecto del tiempo (Abcisas).]]&lt;br /&gt;
En la gráfica se aprecian cuatro curvas de distintos colores correspondientes a '''&amp;lt;math&amp;gt; a=0  &amp;lt;/math&amp;gt;''','''&amp;lt;math&amp;gt; a=1  &amp;lt;/math&amp;gt;''','''&amp;lt;math&amp;gt; a=4  &amp;lt;/math&amp;gt;''','''&amp;lt;math&amp;gt; a=10  &amp;lt;/math&amp;gt;''',''&amp;lt;math&amp;gt; a=100  &amp;lt;/math&amp;gt;'''.&lt;br /&gt;
&lt;br /&gt;
Como podemos apreciar el valor de la energía disminuye a medida que aumentamos el valor de &amp;quot;a&amp;quot;. Esto es debido a que &amp;quot;a&amp;quot; define el coeficiente de amortiguamiento del líquido en el cual se encuentra la cuerda. Luego, dicha disminución de energía se produce por la disipación en el medio de gran parte de la energía inicial.&lt;br /&gt;
&lt;br /&gt;
==== Sujeción a una estructura de vibración periódica. ====&lt;br /&gt;
&lt;br /&gt;
En este caso supondremos que el extremo derecho que sujeta el cable está sometido a una vibración periódica de frecuencia  &amp;lt;math&amp;gt; F_0 &amp;lt;/math&amp;gt; [Herzios]. Al haber una vibración externa que afecta directamente al cable la expresión de su movimiento y, por consecuencia, de su energía, se va a ver modificada. Nosotros incluiremos esta modificación en la función &amp;lt;math&amp;gt; f(t) &amp;lt;/math&amp;gt; de problema de valor inicial que venimos tratando. Esta función va a pasar a ser: &lt;br /&gt;
\begin{equation}&lt;br /&gt;
f(t)= sin(2 \pi F_0t)&lt;br /&gt;
\end{equation}&lt;br /&gt;
&lt;br /&gt;
El objetivo será el de ver cómo afecta esta alteración en el desarrollo de la energía del cable frente al tiempo.&lt;br /&gt;
Para nuestro cálculo numérico especificaremos para las siguientes situaciones:&lt;br /&gt;
En primer lugar, para: &amp;lt;math&amp;gt; F_0= \frac{1}{L} + 0,01 &amp;lt;/math&amp;gt;&lt;br /&gt;
Después,para: &amp;lt;math&amp;gt; F_0= \frac{1}{L} - 0,01 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Y para finalizar, lo estudiaremos en un intervalo de tiempo de '''t=0''' hasta '''t=60''' : &amp;lt;math&amp;gt;t \in (0,60)&amp;lt;/math&amp;gt; [segundos].&lt;br /&gt;
&lt;br /&gt;
El código matemático para matlab / octave:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''PROGRAMA:'''&lt;br /&gt;
{{matlab|codigo= &lt;br /&gt;
clc;clear all;close all;&lt;br /&gt;
&lt;br /&gt;
%Datos&lt;br /&gt;
&lt;br /&gt;
dx=0.1;L=10;dt=0.0001;NT=60;&lt;br /&gt;
A=[0,1,4,10,100];&lt;br /&gt;
x=0:dx:L;t=0:dt:NT;&lt;br /&gt;
ENE=zeros(5,length(t));&lt;br /&gt;
&lt;br /&gt;
%Condición de contorno: U(0,t)=U(L,t)=0;&lt;br /&gt;
for k=1&lt;br /&gt;
%Vector solución y derivada temporal de la solución&lt;br /&gt;
%t=0&amp;lt;&amp;gt;T(1) es donde se guardan las condiciones iniciales&lt;br /&gt;
&lt;br /&gt;
U=zeros(length(t),length(x));&lt;br /&gt;
Dt_U=zeros(length(t),length(x));&lt;br /&gt;
Dx_U=zeros(length(t),length(x));&lt;br /&gt;
&lt;br /&gt;
%Condición inicial: Estiramos 2 m del centro&lt;br /&gt;
%Modelizado como dos rectas antisimétricas que se cortan en x=5 y&lt;br /&gt;
%sujetas en x=0 y x=L.&lt;br /&gt;
&lt;br /&gt;
U(1,:)=2*sin(x*pi/L);&lt;br /&gt;
Dt_U(1,:)=zeros(1,length(x))';&lt;br /&gt;
D2t_U=Ecuacion6(U(1,:),x,-1);&lt;br /&gt;
&lt;br /&gt;
%Inicio del esquema numérico&lt;br /&gt;
%empieza en 2 ya que el 1 es la cond. inicial&lt;br /&gt;
&lt;br /&gt;
%ESQUEMA NEWMARK&lt;br /&gt;
&lt;br /&gt;
 for i=2:length(t)&lt;br /&gt;
    iter=[k,i]&lt;br /&gt;
    Ua=U(i-1,:);&lt;br /&gt;
    Dt_Ua=Dt_U(i-1,:);&lt;br /&gt;
    D2t_Ua=D2t_U;&lt;br /&gt;
    %Derivada segunda respecto del tiempo en el instante t, se obtiene de&lt;br /&gt;
    %eq. diferencial u_tt=f(x,u,u_x,u_xx)&lt;br /&gt;
    D2t_U=Ecuacion6(U(i-1,:),x,t(i))-A(k)*Dt_Ua;&lt;br /&gt;
    %Derivada primera&lt;br /&gt;
    Dt_U(i,:)=Dt_Ua+0.5*dt*(D2t_Ua+D2t_U);&lt;br /&gt;
    %Ecuacion&lt;br /&gt;
    U(i,:) = Ua+Dt_Ua*dt+(1/6)*(D2t_Ua+D2t_U)*dt^2;&lt;br /&gt;
 end&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 %ENERGIA&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 for i=1:length(t)&lt;br /&gt;
    Dx_U(i,:)=deriva(x,U(i,:),0);&lt;br /&gt;
 end&lt;br /&gt;
dE=zeros(length(t),1);&lt;br /&gt;
for i=1:length(x)&lt;br /&gt;
    dE=dE+(Dt_U(:,i).^2+Dx_U(:,i).^2)*dx;&lt;br /&gt;
end&lt;br /&gt;
 ENE(k,:)=dE;&lt;br /&gt;
end&lt;br /&gt;
 figure(1)&lt;br /&gt;
 hold on&lt;br /&gt;
 grid&lt;br /&gt;
 aa=find(x==L/4);&lt;br /&gt;
 ab=find(x==3*L/4);&lt;br /&gt;
 imagesc(U)&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''FUNCIONES:'''&lt;br /&gt;
&lt;br /&gt;
DERIVA:&lt;br /&gt;
{{matlab|codigo= &lt;br /&gt;
function v = deriva(x,y,t)&lt;br /&gt;
n = length(x);&lt;br /&gt;
del=zeros(1,n);&lt;br /&gt;
if t==1&lt;br /&gt;
    i=1;&lt;br /&gt;
    del(1)=(y(i)-y(i+1))/(-x(i)+x(i+1));&lt;br /&gt;
    for i=2:n&lt;br /&gt;
    del(i)=(y(i)-y(i-1))/(x(i)-x(i-1));&lt;br /&gt;
    end &lt;br /&gt;
elseif t==-1&lt;br /&gt;
    for i=1:n-1&lt;br /&gt;
    del(i)=(y(i)-y(i+1))/(x(i)-x(i+1));&lt;br /&gt;
    end &lt;br /&gt;
    i=n;&lt;br /&gt;
    del(i)=(y(i)-y(i-1))/(x(i)-x(i-1));&lt;br /&gt;
elseif t==0&lt;br /&gt;
    i=1;&lt;br /&gt;
    del(1)=(y(i)-y(i+1))/(+x(i)-x(i+1));&lt;br /&gt;
    for i=2:n-1&lt;br /&gt;
    del(i)=(y(i+1)-y(i-1))/(2*(x(i)-x(i-1)));&lt;br /&gt;
    end &lt;br /&gt;
    i=n;&lt;br /&gt;
    del(n)=(y(i)-y(i-1))/(x(i)-x(i-1));  &lt;br /&gt;
end&lt;br /&gt;
v=del;&lt;br /&gt;
end&lt;br /&gt;
}}&lt;br /&gt;
'''ECUACIÓN 6:'''&lt;br /&gt;
&lt;br /&gt;
function [ V ] = Ecuacion6( u,x,t )&lt;br /&gt;
{{matlab|codigo= &lt;br /&gt;
&lt;br /&gt;
%se guarda aquí la ecuación diferencial del tipo u_tt=f(x,u,u_x,u_xx)&lt;br /&gt;
%INCLUIDAS LAS CC AQUÍ!&lt;br /&gt;
%PARA u_tt=u_xx&lt;br /&gt;
%CC: u(0,t)=u(L,t)=0;&lt;br /&gt;
&lt;br /&gt;
Ax=x(2)-x(1);&lt;br /&gt;
n=length(u);&lt;br /&gt;
V=zeros(1,n);&lt;br /&gt;
F0=(1/x(n))+0.01;&lt;br /&gt;
b=-2;&lt;br /&gt;
&lt;br /&gt;
%Las condiciones de contorno vienen en x(1)=0 y x(Nx)=L&lt;br /&gt;
&lt;br /&gt;
u(1)=0;&lt;br /&gt;
if(t==-1)&lt;br /&gt;
    u(n)=0;&lt;br /&gt;
else&lt;br /&gt;
    %u(n)=0;&lt;br /&gt;
    u(n)=sin(2*pi*F0*t);&lt;br /&gt;
    %u(n)=(1/(b*Ax-1))*u(n-1);&lt;br /&gt;
end&lt;br /&gt;
for i=2:n-1&lt;br /&gt;
    V(i)=(1/Ax^2)*(u(i+1)-2*u(i)+u(i-1));&lt;br /&gt;
end&lt;br /&gt;
i=1;&lt;br /&gt;
V(i)=(1/Ax^2)*(u(i+2)-2*u(i+1));&lt;br /&gt;
i=n;&lt;br /&gt;
V(i)=(1/Ax^2)*(u(i)-2*u(i-1)+u(i-2));&lt;br /&gt;
end&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:6.1.png|700px|thumb|centre|Gráfica en tres dimensiones de la energía de un cable cuyo extremo derecho está sometido a una vibración externa periódica para F_0=1/L +0,1]]&lt;br /&gt;
'''function [ V ] = Ecuacion6( u,x,t )'''&lt;br /&gt;
{{matlab|codigo= &lt;br /&gt;
%se guarda aquí la ecuación diferencial del tipo u_tt=f(x,u,u_x,u_xx)&lt;br /&gt;
%INCLUIDAS LAS CC AQUÍ!&lt;br /&gt;
%PARA u_tt=u_xx&lt;br /&gt;
%CC: u(0,t)=u(L,t)=0;&lt;br /&gt;
&lt;br /&gt;
Ax=x(2)-x(1);&lt;br /&gt;
n=length(u);&lt;br /&gt;
V=zeros(1,n);&lt;br /&gt;
F0=(1/x(n))-0.01;&lt;br /&gt;
b=-2;&lt;br /&gt;
&lt;br /&gt;
%Las condiciones de contorno vienen en x(1)=0 y x(Nx)=L&lt;br /&gt;
&lt;br /&gt;
u(1)=0;&lt;br /&gt;
if(t==-1)&lt;br /&gt;
    u(n)=0;&lt;br /&gt;
else&lt;br /&gt;
    %u(n)=0;&lt;br /&gt;
    u(n)=sin(2*pi*F0*t);&lt;br /&gt;
    %u(n)=(1/(b*Ax-1))*u(n-1);&lt;br /&gt;
end&lt;br /&gt;
for i=2:n-1&lt;br /&gt;
    V(i)=(1/Ax^2)*(u(i+1)-2*u(i)+u(i-1));&lt;br /&gt;
end&lt;br /&gt;
i=1;&lt;br /&gt;
V(i)=(1/Ax^2)*(u(i+2)-2*u(i+1));&lt;br /&gt;
i=n;&lt;br /&gt;
V(i)=(1/Ax^2)*(u(i)-2*u(i-1)+u(i-2));&lt;br /&gt;
end&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:6.2.png|700px|thumb|centre|Gráfica en tres dimensiones de la energía de un cable cuyo extremo derecho está sometido a una vibración externa periódica.]]&lt;br /&gt;
&lt;br /&gt;
'''function [ V ] = Ecuacion6( u,x,t )'''&lt;br /&gt;
{{matlab|codigo= &lt;br /&gt;
%se guarda aquí la ecuación diferencial del tipo u_tt=f(x,u,u_x,u_xx)&lt;br /&gt;
%INCLUIDAS LAS CC AQUÍ!&lt;br /&gt;
%PARA u_tt=u_xx&lt;br /&gt;
%CC: u(0,t)=u(L,t)=0;&lt;br /&gt;
&lt;br /&gt;
Ax=x(2)-x(1);&lt;br /&gt;
n=length(u);&lt;br /&gt;
V=zeros(1,n);&lt;br /&gt;
F0=(1/x(n));&lt;br /&gt;
b=-2;&lt;br /&gt;
&lt;br /&gt;
%Las condiciones de contorno vienen en x(1)=0 y x(Nx)=L&lt;br /&gt;
&lt;br /&gt;
u(1)=0;&lt;br /&gt;
if(t==-1)&lt;br /&gt;
    u(n)=0;&lt;br /&gt;
else&lt;br /&gt;
    %u(n)=0;&lt;br /&gt;
    u(n)=sin(2*pi*F0*t);&lt;br /&gt;
    %u(n)=(1/(b*Ax-1))*u(n-1);&lt;br /&gt;
end&lt;br /&gt;
for i=2:n-1&lt;br /&gt;
    V(i)=(1/Ax^2)*(u(i+1)-2*u(i)+u(i-1));&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
i=1;&lt;br /&gt;
V(i)=(1/Ax^2)*(u(i+2)-2*u(i+1));&lt;br /&gt;
i=n;&lt;br /&gt;
V(i)=(1/Ax^2)*(u(i)-2*u(i-1)+u(i-2));&lt;br /&gt;
end&lt;br /&gt;
}}&lt;br /&gt;
 &lt;br /&gt;
La gráfica resultante es la siguiente:&lt;br /&gt;
[[Archivo:6.3.png|700px|thumb|centre|Gráfica en tres dimensiones de la energía de un cable cuyo extremo derecho está sometido a una vibración externa periódica.]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
En dicha gráfica, se puede observar que la forma de la función o la energía se ve alterada por la condición impuesta de tal manera que ésta adquiere una forma también sinusoidal, y que su estabilización dependería del tiempo transcurrido entre vibración y vibración.&lt;br /&gt;
&lt;br /&gt;
==== Sujeción a un aparato que responde a una vibración externa. ====&lt;br /&gt;
&lt;br /&gt;
La siguiente situación que vamos a representar a modelar a través de ecuaciones diferenciales va a ser la siguiente: supondremos que el cable de la anterior situación (que recibía en su extremo derecho una vibración periódica de &amp;lt;math&amp;gt; F_0 &amp;lt;/math&amp;gt; [Herzios])envía una respuesta a la vibración que recibe. Esta situación la vamos a representar como un cambio en la condición de contorno; ésta va a pasar a ser: &amp;lt;math&amp;gt; u_x(L,t)=bu(L,t) &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
El objetivo, de nuevo será representar la evolución de la energía respecto del tiempo y ver si este cambio en el problema se ve reflejado en su representación. &lt;br /&gt;
En el código numérico, no obstante, la situación de &amp;lt;math&amp;gt; u_x(L,t)=bu(L,t) &amp;lt;/math&amp;gt; la vamos a aproximar por la siguiente expresión:&lt;br /&gt;
&amp;lt;math&amp;gt; u_x(L,t)-bu(L,t)  \cong  \frac{u_{N+1}(t)-u_{N-1}(t)}{2h-u_N(t)} &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
En la resolución del problema emplearemos de nuevo la condición inicial de sujetar el cable por el centro y elevarlo 2 m perpendicularmente: &lt;br /&gt;
&amp;lt;math&amp;gt; u(x,0)=g(x)= 2- |\frac{2}{5}x -2| &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Y además obtendremos el resultado para los dos valores siguientes de &amp;lt;math&amp;gt;b&amp;lt;/math&amp;gt; :&lt;br /&gt;
Para &amp;lt;math&amp;gt; b=2 &amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt; b=-2 &amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
El código numérico de matlab/octave es:&lt;br /&gt;
&lt;br /&gt;
'''PROGRAMA:'''&lt;br /&gt;
{{matlab|codigo= &lt;br /&gt;
clc;clear all;close all;&lt;br /&gt;
&lt;br /&gt;
%Datos&lt;br /&gt;
dx=0.1;L=10;dt=0.0001;NT=40;&lt;br /&gt;
A=[0,1,4,10,100];&lt;br /&gt;
x=0:dx:L;t=0:dt:NT;&lt;br /&gt;
ENE=zeros(5,length(t));&lt;br /&gt;
&lt;br /&gt;
%Condición de contorno: U(0,t)=U(L,t)=0;&lt;br /&gt;
for k=1&lt;br /&gt;
&lt;br /&gt;
%Vector solución y derivada temporal de la solución&lt;br /&gt;
%t=0&amp;lt;&amp;gt;T(1) es donde se guardan las condiciones iniciales&lt;br /&gt;
&lt;br /&gt;
U=zeros(length(t),length(x));&lt;br /&gt;
Dt_U=zeros(length(t),length(x));&lt;br /&gt;
Dx_U=zeros(length(t),length(x));    &lt;br /&gt;
&lt;br /&gt;
%Condición inicial: Estiramos 2 m del centro&lt;br /&gt;
%Modelizado como dos rectas antisimétricas que se cortan en x=5 y&lt;br /&gt;
%sujetas en x=0 y x=L.&lt;br /&gt;
&lt;br /&gt;
U(1,:)=2*sin(x*pi/L);&lt;br /&gt;
Dt_U(1,:)=zeros(1,length(x))';&lt;br /&gt;
D2t_U=Ecuacion7(U(1,:),x,-1);&lt;br /&gt;
&lt;br /&gt;
%Inicio del esquema numérico&lt;br /&gt;
%empieza en 2 ya que el 1 es la cond. inicial&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
%ESQUEMA NEWMARK&lt;br /&gt;
 for i=2:length(t)&lt;br /&gt;
    iter=[k,i]&lt;br /&gt;
    Ua=U(i-1,:);&lt;br /&gt;
    Dt_Ua=Dt_U(i-1,:);&lt;br /&gt;
    D2t_Ua=D2t_U;&lt;br /&gt;
&lt;br /&gt;
    %Derivada segunda respecto del tiempo en el instante t, se obtiene de&lt;br /&gt;
    %eq. diferencial u_tt=f(x,u,u_x,u_xx)&lt;br /&gt;
&lt;br /&gt;
    D2t_U=Ecuacion7(U(i-1,:),x,t(i))-A(k)*Dt_Ua;&lt;br /&gt;
&lt;br /&gt;
    %Derivada primera&lt;br /&gt;
    Dt_U(i,:)=Dt_Ua+0.5*dt*(D2t_Ua+D2t_U);&lt;br /&gt;
&lt;br /&gt;
    %Ecuacion&lt;br /&gt;
    U(i,:) = Ua+Dt_Ua*dt+(1/6)*(D2t_Ua+D2t_U)*dt^2;&lt;br /&gt;
 end&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 %ENERGIA&lt;br /&gt;
 for i=1:length(t)&lt;br /&gt;
    Dx_U(i,:)=deriva(x,U(i,:),0);&lt;br /&gt;
 end&lt;br /&gt;
dE=zeros(length(t),1);&lt;br /&gt;
for i=1:length(x)&lt;br /&gt;
    dE=dE+(Dt_U(:,i).^2+Dx_U(:,i).^2)*dx;&lt;br /&gt;
end&lt;br /&gt;
 ENE(k,:)=dE;&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
 figure(1)&lt;br /&gt;
 hold on&lt;br /&gt;
 grid&lt;br /&gt;
 aa=find(x==L/4);&lt;br /&gt;
 ab=find(x==3*L/4);&lt;br /&gt;
 plot(t,ENE(1,:))&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
'''FUNCIONES:'''&lt;br /&gt;
'''function v = deriva(x,y,t)'''&lt;br /&gt;
{{matlab|codigo= &lt;br /&gt;
n = length(x);&lt;br /&gt;
del=zeros(1,n);&lt;br /&gt;
if t==1&lt;br /&gt;
    i=1;&lt;br /&gt;
    del(1)=(y(i)-y(i+1))/(-x(i)+x(i+1));&lt;br /&gt;
    for i=2:n&lt;br /&gt;
    del(i)=(y(i)-y(i-1))/(x(i)-x(i-1));&lt;br /&gt;
    end &lt;br /&gt;
elseif t==-1&lt;br /&gt;
    for i=1:n-1&lt;br /&gt;
    del(i)=(y(i)-y(i+1))/(x(i)-x(i+1));&lt;br /&gt;
    end &lt;br /&gt;
    i=n;&lt;br /&gt;
    del(i)=(y(i)-y(i-1))/(x(i)-x(i-1));&lt;br /&gt;
elseif t==0&lt;br /&gt;
    i=1;&lt;br /&gt;
    del(1)=(y(i)-y(i+1))/(+x(i)-x(i+1));&lt;br /&gt;
    for i=2:n-1&lt;br /&gt;
    del(i)=(y(i+1)-y(i-1))/(2*(x(i)-x(i-1)));&lt;br /&gt;
    end &lt;br /&gt;
    i=n;&lt;br /&gt;
    del(n)=(y(i)-y(i-1))/(x(i)-x(i-1));  &lt;br /&gt;
end&lt;br /&gt;
v=del;&lt;br /&gt;
end&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
'''function [ V ] = Ecuacion7( u,x,t )'''&lt;br /&gt;
{{matlab|codigo= &lt;br /&gt;
%se guarda aquí la ecuación diferencial del tipo u_tt=f(x,u,u_x,u_xx)&lt;br /&gt;
%INCLUIDAS LAS CC AQUÍ!&lt;br /&gt;
%PARA u_tt=u_xx&lt;br /&gt;
%CC: u(0,t)=u(L,t)=0;&lt;br /&gt;
&lt;br /&gt;
Ax=x(2)-x(1);&lt;br /&gt;
n=length(u);&lt;br /&gt;
V=zeros(1,n);&lt;br /&gt;
F0=(1/x(n));&lt;br /&gt;
b=2;&lt;br /&gt;
&lt;br /&gt;
%Las condiciones de contorno vienen en x(1)=0 y x(Nx)=L&lt;br /&gt;
u(1)=0;&lt;br /&gt;
if(t==-1)&lt;br /&gt;
    u(n)=0;&lt;br /&gt;
else&lt;br /&gt;
    %u(n)=0;&lt;br /&gt;
    %u(n)=sin(2*pi*F0*t);&lt;br /&gt;
    u(n)=(1/(b*Ax-1))*u(n-1);&lt;br /&gt;
end&lt;br /&gt;
for i=2:n-1&lt;br /&gt;
    V(i)=(1/Ax^2)*(u(i+1)-2*u(i)+u(i-1));&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
i=1;&lt;br /&gt;
V(i)=(1/Ax^2)*(u(i+2)-2*u(i+1));&lt;br /&gt;
i=n;&lt;br /&gt;
V(i)=(1/Ax^2)*(u(i)-2*u(i-1)+u(i-2));&lt;br /&gt;
end&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:7.1.png|700px|thumb|centre|Gráfica de la energía (ordenadas) de un cable frente al tiempo (abcisas) que recibe una vibración en su extremo derecho y que responde a dicha vibración para b=2. ]]&lt;br /&gt;
'''function [ V ] = Ecuacion7( u,x,t )'''&lt;br /&gt;
{{matlab|codigo= &lt;br /&gt;
%se guarda aquí la ecuación diferencial del tipo u_tt=f(x,u,u_x,u_xx)&lt;br /&gt;
%INCLUIDAS LAS CC AQUÍ!&lt;br /&gt;
%PARA u_tt=u_xx&lt;br /&gt;
%CC: u(0,t)=u(L,t)=0;&lt;br /&gt;
&lt;br /&gt;
Ax=x(2)-x(1);&lt;br /&gt;
n=length(u);&lt;br /&gt;
V=zeros(1,n);&lt;br /&gt;
F0=(1/x(n));&lt;br /&gt;
b=-2;&lt;br /&gt;
&lt;br /&gt;
%Las condiciones de contorno vienen en x(1)=0 y x(Nx)=L&lt;br /&gt;
u(1)=0;&lt;br /&gt;
&lt;br /&gt;
if(t==-1)&lt;br /&gt;
    u(n)=0;&lt;br /&gt;
else&lt;br /&gt;
    %u(n)=0;&lt;br /&gt;
    %u(n)=sin(2*pi*F0*t);&lt;br /&gt;
    u(n)=(1/(b*Ax-1))*u(n-1);&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
for i=2:n-1&lt;br /&gt;
    V(i)=(1/Ax^2)*(u(i+1)-2*u(i)+u(i-1));&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
i=1;&lt;br /&gt;
V(i)=(1/Ax^2)*(u(i+2)-2*u(i+1));&lt;br /&gt;
i=n;&lt;br /&gt;
V(i)=(1/Ax^2)*(u(i)-2*u(i-1)+u(i-2));&lt;br /&gt;
end&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
La imagen resultante es:&lt;br /&gt;
[[Archivo:7.2.png|700px|thumb|centre|Gráfica de la energía (ordenadas) de un cable frente al tiempo (abcisas) que recibe una vibración en su extremo derecho y que responde a dicha vibración para b=-2. ]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
La anterior gráfica muestra el comportamiento de la cuerda como respuesta a la vibración producida en uno de sus extremos así como el movimiento transversal del punto medio al comienzo. Podemos observar el movimiento transversal de cada punto de la cuerda a través de la expresión de la energía, así como que, a medida que transcurre el tiempo, ésta se va estabilizando. La forma de la función recuerda a una función sinusoidal debido a la forma de la condición de contorno impuesta.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Categoría:Ecuaciones Diferentiales]]&lt;br /&gt;
 [[Categoría:ED13/14]]&lt;br /&gt;
 [[Categoría:Trabajos 2013-14]]&lt;/div&gt;</summary>
		<author><name>Lucia Lopez</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Ecuaci%C3%B3n_de_ondas_(grupo_2B)&amp;diff=13193</id>
		<title>Ecuación de ondas (grupo 2B)</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Ecuaci%C3%B3n_de_ondas_(grupo_2B)&amp;diff=13193"/>
				<updated>2014-05-19T21:15:16Z</updated>
		
		<summary type="html">&lt;p&gt;Lucia Lopez: /* Euler Modificado. */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{ TrabajoED | Ecuación de ondas. Grupo 2-B| [[:Categoría:Ecuaciones Diferenciales|Ecuaciones Diferenciales]]|[[:Categoría:ED13/14|Curso 2013-14]]| &lt;br /&gt;
Ignacio Díaz-Caneja Camblor&lt;br /&gt;
&lt;br /&gt;
Alberto Fernández Pérez&lt;br /&gt;
&lt;br /&gt;
Adela González Barbado&lt;br /&gt;
&lt;br /&gt;
Lucia López Sánchez&lt;br /&gt;
&lt;br /&gt;
Araceli Martín Candilejo&lt;br /&gt;
&lt;br /&gt;
Diego Solano López&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
== Modelización de los desplazamientos del Cable. ==&lt;br /&gt;
El problema que se tratará a continuación describe una ecuación de '''tipo hiperbólico''', una '''ecuación de ondas'''.&lt;br /&gt;
Consideramos un '''cable de 10 metros''' de longitud '''sujeto por sus extremos'''. Suponiendo que éste tiene una '''sección pequeña''' respecto a su longitud someteremos al cable a pequeñas vibraciones que estudiaremos con una modelización de la ecuación de ondas. &lt;br /&gt;
Se caracteriza al cable de una masa constante por unidad de volumen, es decir, será '''homogéneo'''. Éste, '''flexible''' a la tracción, únicamente ofrece resistencias en su dirección longitudinal, tangenciales, pero no a esfuerzos de flexión o cortes. Se supone, además, que es '''inextensible''' por lo que será lo suficientemente rígido longitudinalmente como para poder despreciar su extensibilidad.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Con esta modelización se estudiarán las '''pequeñas vibraciones''', desplazamientos transversales, a las que es sometido el cable. Para iniciar el movimiento del cable lo sujetaremos por el centro subiéndolo dos metros, lo que nos proporciona una primera condición inicial determinada por la función g(x), y soltándolo con una velocidad nula. &lt;br /&gt;
&lt;br /&gt;
&amp;lt;br/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Obtenemos la ecuación &amp;lt;math&amp;gt;u_{tt}-u_{xx}=0&amp;lt;/math&amp;gt; , de la cual se puede observar que tanto el '''módulo de la tensión''' como la '''densidad''' son '''constantes''' ya que el '''módulo de la elasticidad''' es constante, &amp;lt;math&amp;gt;c^2=1&amp;lt;/math&amp;gt; . Al ser ésta primera ecuación homogénea deducimos que transversalmente no actúa ninguna fuerza densidad espacial y temporal. Se deduce del enunciado anterior que las condiciones de frontera son '''homogéneas''', &amp;lt;math&amp;gt;u(0,t)=0&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;u(10,t)=0&amp;lt;/math&amp;gt; que nos indican que los extremos del cable no describen ningún tipo de movimiento en todo instante t al no estar sometidos a ningun tipo de fuerza. Finalmente, añadimos al sistema las condiciones iniciales, la primera de ellas, &amp;lt;math&amp;gt;u(x,0)=g(x)= 2- |\frac{2}{5}x -2|&amp;lt;/math&amp;gt;, define el '''movimiento descrito por la onda''' en el instante t=0 en cualquier punto del cable; y la segunda, &amp;lt;math&amp;gt;u_t(x,0)=0&amp;lt;/math&amp;gt;, que la onda parte de una '''velocidad inicial nula'''.&lt;br /&gt;
[[Image:DV.png|300px|thumb|right|Deslizamiento vertical del cable. ]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
\begin{cases}&lt;br /&gt;
&lt;br /&gt;
u_{tt}- u_{xx}=0  \  x∈[0,10] \ t&amp;gt;0\\&lt;br /&gt;
u(0,t)=0\\&lt;br /&gt;
u(10,t)=0\\&lt;br /&gt;
u(x,0)= 2- |\frac{2}{5}x -2|\\&lt;br /&gt;
u_t(x,0)=0&lt;br /&gt;
\end{cases}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
En los siguientes apartados se realizaran aproximaciones del sistema expuesto con tres métodos distintos de los que más tarde se hará una comparativa. Para esto último nos ayudaremos del error por lo que necesitaremos la solución analítica.&lt;br /&gt;
Como el problema consta de condiciones de frontera homogéneas, aplicamos directamente el método de separación de variables para su resolución analítica. &lt;br /&gt;
&amp;lt;br/&amp;gt;&lt;br /&gt;
==== Aproximación por el método del trapecio. ====&lt;br /&gt;
El método del trapecio se basa en aproximar una función integrando. Para ello utilizamos un número N de trapecios (en la imagen inferior hemos aproximado mediante 4 trapecios). Las integrales a resolver para poder poder aproximar una función por este método tendrán la distancia de sus límites de integración constantes para todas las integrales, a esta distancia entre los límites de integración lo llamamos paso. En el desarrollo de este método se supone que la función es continua en el intervalo en que se quiere aproximar.&lt;br /&gt;
&amp;lt;br/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Image:Trapecio.png|300px|thumb|center|Función Y(x), el área bajo la curva, se puede aproximar mediante n trapecios]]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br/&amp;gt;&lt;br /&gt;
{{matlab|codigo= &lt;br /&gt;
%u_tt-u_xx=0&lt;br /&gt;
%u(0,t)=u(l,t)=0&lt;br /&gt;
%u(x,0)=2-abs(0.4x-2)&lt;br /&gt;
%ut(x,0)=0&lt;br /&gt;
clear all&lt;br /&gt;
&lt;br /&gt;
%Datos del problema&lt;br /&gt;
L=10;&lt;br /&gt;
T=40;&lt;br /&gt;
&lt;br /&gt;
%Discretización&lt;br /&gt;
h=0.1;&lt;br /&gt;
N=L/h;&lt;br /&gt;
x=0:h:L;&lt;br /&gt;
xint=h:h:L-h;&lt;br /&gt;
dt=h;&lt;br /&gt;
t=0:dt:T;&lt;br /&gt;
&lt;br /&gt;
%Aprox. de u_xx&lt;br /&gt;
K=2*diag(ones(1,N-1))-diag(ones(1,N-2),-1)-diag(ones(1,N-2),1);&lt;br /&gt;
K=K/h^2;&lt;br /&gt;
F=zeros(N-1,1);&lt;br /&gt;
&lt;br /&gt;
%Posición inicial.&lt;br /&gt;
u0=(2-abs(xint*2/5-2))';&lt;br /&gt;
v0=zeros(N-1,1);&lt;br /&gt;
&lt;br /&gt;
%Aprox. de u_tt&lt;br /&gt;
M=[zeros(N-1),eye(N-1);-K,zeros(N-1)];&lt;br /&gt;
G=[zeros(N-1,1);F];&lt;br /&gt;
&lt;br /&gt;
%Aproximación por el método del Trapecio&lt;br /&gt;
W0=[u0;v0];&lt;br /&gt;
WW=W0;&lt;br /&gt;
sol=zeros(length(t),N+1);&lt;br /&gt;
sol(1,:)=[0,W0(1:N-1)',0];&lt;br /&gt;
for j=1:length(t)-1&lt;br /&gt;
    WW=(eye(2*N-2)-dt/2*M)\(eye(2*N-2)+dt/2*M)*WW;&lt;br /&gt;
    sol(j+1,:)=[0,WW(1:N-1)',0];&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
%Dibujo de la solución&lt;br /&gt;
[xx,tt]=meshgrid(x,t);&lt;br /&gt;
surf(xx,tt,sol);&lt;br /&gt;
xlabel('Desplazamiento horizontal');&lt;br /&gt;
ylabel('Tiempo');&lt;br /&gt;
zlabel('Desplazamiento vertical');}}&lt;br /&gt;
&lt;br /&gt;
[[Image:klklk.jpg|700px|thumb|center|Aproximación por el método del Trapecio.]]&lt;br /&gt;
&lt;br /&gt;
Además de saber que el método del trapecio tiene orden de precisión 2 y, por tanto, es un buen método a la hora de aproximar, gráficamente también podemos observar que este método es bastante preciso.&lt;br /&gt;
&lt;br /&gt;
==== Aproximación por el método de Euler. ====&lt;br /&gt;
Se exponen en este apartados dos tipos de aproximaciones de Euler.&lt;br /&gt;
&lt;br /&gt;
Este método se basa en la posibilidad de aproximar una función original mediante rectas tangentes partiendo de un punto dado. Sabiendo que la recta tangente de una función en un punto es la derivada en dicho punto, este método consiste en calcular derivadas de la función en diferentes puntos pertenecientes a ella. Estos puntos serán tomados con la misma distancia a lo largo de la recta, a esta distancia la denominamos paso de discretización. &lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Image:Euler.png|300px|thumb|center|Aproximación de una función por el método de Euler]]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===== Euler Explícito. =====&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
%utt-uxx=0&lt;br /&gt;
%u(0,t)=u(l,t)=0&lt;br /&gt;
%u(x,0)=2-abs(0.4x-2)&lt;br /&gt;
%ut(x,0)=0&lt;br /&gt;
clear all&lt;br /&gt;
L=10;&lt;br /&gt;
T=40;&lt;br /&gt;
h=0.1;&lt;br /&gt;
N=L/h;&lt;br /&gt;
x=0:h:L;&lt;br /&gt;
xint=h:h:L-h;&lt;br /&gt;
dt=h;&lt;br /&gt;
t=0:dt:T;&lt;br /&gt;
K=2*diag(ones(1,N-1))-diag(ones(1,N-2),-1)-diag(ones(1,N-2),1);&lt;br /&gt;
K=K/h^2;&lt;br /&gt;
F=zeros(N-1,1);&lt;br /&gt;
u0=2-abs((xint*2/5-2))';&lt;br /&gt;
v0=zeros(N-1,1);&lt;br /&gt;
M=[zeros(N-1),eye(N-1);-K,zeros(N-1)];&lt;br /&gt;
G=[zeros(N-1,1);F];&lt;br /&gt;
W0=[u0;v0];&lt;br /&gt;
WW=W0;&lt;br /&gt;
sol=zeros(length(t),N+1);&lt;br /&gt;
sol(1,:)=[0,W0(1:N-1)',0];&lt;br /&gt;
for j=1:length(t)-1&lt;br /&gt;
    WW=WW+dt*M*WW;&lt;br /&gt;
    sol(j+1,:)=[0,WW(1:N-1)',0];&lt;br /&gt;
end&lt;br /&gt;
[xx,tt]=meshgrid(x,t);&lt;br /&gt;
surf(xx,tt,sol);}}&lt;br /&gt;
===== Euler Modificado. =====&lt;br /&gt;
&lt;br /&gt;
Este método se basa en la misma idea que el anterior, pero hace un refinamiento en la aproximación, tomando un promedio entre las pendientes pues esto parece más razonable para la obtención de un valor más preciso.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
%utt-uxx=0&lt;br /&gt;
%u(0,t)=u(l,t)=0&lt;br /&gt;
%u(x,0)=2-abs(0.4x-2)&lt;br /&gt;
%ut(x,0)=0&lt;br /&gt;
clear all&lt;br /&gt;
L=10;&lt;br /&gt;
T=40;&lt;br /&gt;
h=0.1;&lt;br /&gt;
N=L/h;&lt;br /&gt;
x=0:h:L;&lt;br /&gt;
xint=h:h:L-h;&lt;br /&gt;
dt=h;&lt;br /&gt;
t=0:dt:T;&lt;br /&gt;
K=2*diag(ones(1,N-1))-diag(ones(1,N-2),-1)-diag(ones(1,N-2),1);&lt;br /&gt;
K=K/h^2;&lt;br /&gt;
F=zeros(N-1,1);&lt;br /&gt;
u0=2-abs((xint*2/5-2))';&lt;br /&gt;
v0=zeros(N-1,1);&lt;br /&gt;
M=[zeros(N-1),eye(N-1);-K,zeros(N-1)];&lt;br /&gt;
G=[zeros(N-1,1);F];&lt;br /&gt;
W0=[u0;v0];&lt;br /&gt;
WW=W0;&lt;br /&gt;
sol=zeros(length(t),N+1);&lt;br /&gt;
sol(1,:)=[0,W0(1:N-1)',0];&lt;br /&gt;
for j=1:length(t)-1&lt;br /&gt;
    k1=M*WW;&lt;br /&gt;
    WW=(eye(2*N-2)+dt*M/2)*WW+(dt/2)*k1+(dt^2)*M*k1/2;&lt;br /&gt;
    sol(j+1,:)=[0,WW(1:N-1)',0];&lt;br /&gt;
end&lt;br /&gt;
[xx,tt]=meshgrid(x,t);&lt;br /&gt;
surf(xx,tt,sol);}}&lt;br /&gt;
&lt;br /&gt;
Antes de comentar las dos gráficas anteriores se debe insistir en que el orden de precisión del método de Euler es 1, por tanto, este método será menos preciso que el método del trapecio.&lt;br /&gt;
&lt;br /&gt;
Además de ya haber comentado anteriormente que Euler modificado se basa en mejorar la aproximación mediante el método de Euler sencillo, fijándonos en las gráficas podemos observar que la gráfica obtenida mediante el método de Euler modificado realiza una mejor aproximación y se asemeja mejor a la gráfica obtenida mediante el método del trapecio que la gráfica obtenida mediante Euler.&lt;br /&gt;
&lt;br /&gt;
==== Aproximación por Fourier con diferentes términos de series. ====&lt;br /&gt;
En este apartado se ofrece una aproximación alternativa a las anteriores. Se muestran '''cinco iteraciones''' distintas del '''método del Fourier''' que se compararan entre sí y con los métodos anteriores, Trapecio y Euler. Este método de aproximación depende del número de términos de serie (lo denominamos con la letra Q) con los que se realice el programa de Fourier.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br/&amp;gt;&lt;br /&gt;
Puesto que la realización de este método es la misma sea cual sea el número de serie elegido, se han expuesto únicamente dos casos de Q para una mayor claridad del programa.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo= %utt-uxx=0&lt;br /&gt;
%u(0,t)=u(l,t)=0&lt;br /&gt;
%u(x,0)=2-abs(0.4x-2)&lt;br /&gt;
%ut(x,0)=0&lt;br /&gt;
&lt;br /&gt;
%1 iteracion&lt;br /&gt;
clear all&lt;br /&gt;
L=10;&lt;br /&gt;
T=40;&lt;br /&gt;
Q=1;&lt;br /&gt;
h=0.1;&lt;br /&gt;
N=L/h;&lt;br /&gt;
x=0:h:L;&lt;br /&gt;
dt=h;&lt;br /&gt;
t=0:dt:T;&lt;br /&gt;
sol=zeros(length(t),N+1);&lt;br /&gt;
for k=1:Q&lt;br /&gt;
    phi=sin(k/L*pi*x);&lt;br /&gt;
    a=trapz(x,(2-abs(2/5*x-2)).*phi)/(trapz(x,phi.^2));&lt;br /&gt;
    b=0;&lt;br /&gt;
    T=a.*cos(k*pi*t/L);&lt;br /&gt;
    sol=sol+T'*phi;&lt;br /&gt;
end&lt;br /&gt;
[xx,tt]=meshgrid(x,t);&lt;br /&gt;
figure (1)&lt;br /&gt;
surf(xx,tt,sol)&lt;br /&gt;
xlabel('Desplazamiento horizontal');&lt;br /&gt;
ylabel('Tiempo');&lt;br /&gt;
zlabel('Desplazamiento vertical');&lt;br /&gt;
&lt;br /&gt;
%3 iteracion&lt;br /&gt;
clear all&lt;br /&gt;
L=10;&lt;br /&gt;
T=40;&lt;br /&gt;
Q=3;&lt;br /&gt;
h=0.1;&lt;br /&gt;
N=L/h;&lt;br /&gt;
x=0:h:L;&lt;br /&gt;
dt=h;&lt;br /&gt;
t=0:dt:T;&lt;br /&gt;
sol=zeros(length(t),N+1);&lt;br /&gt;
for k=1:Q&lt;br /&gt;
    phi=sin(k/L*pi*x);&lt;br /&gt;
    a=trapz(x,(2-abs(2/5*x-2)).*phi)/(trapz(x,phi.^2));&lt;br /&gt;
    b=0;&lt;br /&gt;
    T=a.*cos(k*pi*t/L);&lt;br /&gt;
    sol=sol+T'*phi;&lt;br /&gt;
end&lt;br /&gt;
[xx,tt]=meshgrid(x,t);&lt;br /&gt;
figure (2)&lt;br /&gt;
surf(xx,tt,sol)&lt;br /&gt;
xlabel('Desplazamiento horizontal');&lt;br /&gt;
ylabel('Tiempo');&lt;br /&gt;
zlabel('Desplazamiento vertical');}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br/&amp;gt;&lt;br /&gt;
[[Image:81tF2.jpg|525px|thumb|left|Aproximación por el método del Trapecio con un término de serie.]]&lt;br /&gt;
[[Image:82tF.jpg|525px|thumb|center|Aproximación por el método del Trapecio con tres términos de serie.]]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br/&amp;gt; &lt;br /&gt;
&lt;br /&gt;
[[Image:83tF.jpg|525px|thumb|left|Aproximación por el método del Trapecio con cinco términos de serie.]]&lt;br /&gt;
[[Image:84tF.jpg|525px|thumb|center|Aproximación por el método del Trapecio con diez términos de serie.]]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Image:85tF.jpg|525px|thumb|center|Aproximación por el método del Trapecio con veinte términos de serie.]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
En este método podemos observar fijándonos en las gráficas que a mayor número de términos (mayor Q), mayor es la aproximación obtenida y más estable.&lt;br /&gt;
&lt;br /&gt;
Realizando una comparación con los otros métodos, se puede observar, fijándonos en las gráficas y en los órdenes de precisión, que el método que mejor aproxima  la ecuación del problema es el método del trapecio, seguido de Euler modificado y, por último, Euler, teniendo mayor orden el que mejor aproxima la función.&lt;br /&gt;
&lt;br /&gt;
Gráficamente podemos confirmar este hecho, dándonos cuenta que las gráficas más similares son fourier con Q=20 y el método del trapecio.&lt;br /&gt;
&lt;br /&gt;
== Energía del Cable. ==&lt;br /&gt;
&lt;br /&gt;
La energía del cable que viene definida por la función: &lt;br /&gt;
\begin{equation}&lt;br /&gt;
E(t) = \int_{0}^{L} (u_{t}^{2}(x,t)+ u_{x}^{2}(x,t)) \cdot dx&lt;br /&gt;
\end{equation}&lt;br /&gt;
&lt;br /&gt;
El método utilizado en el desarrollo numérico de está expresión es el '''método de diferencias finitas'''&lt;br /&gt;
(Funciona calculando de manera aproximada las soluciones a las ecuaciones diferenciales usando ecuaciones diferenciales finitas para aproximar derivadas.).&lt;br /&gt;
&lt;br /&gt;
'''FUNCIÓN:'''&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
function v = deriva(x,y,t)&lt;br /&gt;
&lt;br /&gt;
n = length(x);&lt;br /&gt;
del=zeros(1,n);&lt;br /&gt;
&lt;br /&gt;
if t==1&lt;br /&gt;
    &lt;br /&gt;
    i=1;&lt;br /&gt;
    del(1)=(y(i)-y(i+1))/(-x(i)+x(i+1));&lt;br /&gt;
&lt;br /&gt;
    for i=2:n&lt;br /&gt;
    del(i)=(y(i)-y(i-1))/(x(i)-x(i-1));&lt;br /&gt;
    end &lt;br /&gt;
    &lt;br /&gt;
elseif t==-1&lt;br /&gt;
&lt;br /&gt;
    for i=1:n-1&lt;br /&gt;
    del(i)=(y(i)-y(i+1))/(x(i)-x(i+1));&lt;br /&gt;
    end &lt;br /&gt;
    &lt;br /&gt;
    i=n;&lt;br /&gt;
    del(i)=(y(i)-y(i-1))/(x(i)-x(i-1));&lt;br /&gt;
    &lt;br /&gt;
elseif t==0&lt;br /&gt;
    &lt;br /&gt;
    i=1;&lt;br /&gt;
    del(1)=(y(i)-y(i+1))/(+x(i)-x(i+1));&lt;br /&gt;
    &lt;br /&gt;
    for i=2:n-1&lt;br /&gt;
    del(i)=(y(i+1)-y(i-1))/(2*(x(i)-x(i-1)));&lt;br /&gt;
    end &lt;br /&gt;
    &lt;br /&gt;
    i=n;&lt;br /&gt;
    del(n)=(y(i)-y(i-1))/(x(i)-x(i-1));  &lt;br /&gt;
    &lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
v=del;&lt;br /&gt;
&lt;br /&gt;
end&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''PROGRAMA:'''&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
clc;clear all;&lt;br /&gt;
L=10;dx=0.1;N=L/dx;&lt;br /&gt;
x=dx:dx:L-dx;&lt;br /&gt;
xtot=0:dx:L;&lt;br /&gt;
T=40;dt=0.1;t=0:dt:T;&lt;br /&gt;
K=2*diag(ones(1,N-1))-diag(ones(1,N-2),1)-diag(ones(1,N-2),-1);&lt;br /&gt;
K=(1/dx^2)*K;&lt;br /&gt;
U=(2-abs((x*2/5-2)))';&lt;br /&gt;
V=(0*x)';&lt;br /&gt;
sol(1,:)=[0 U' 0];&lt;br /&gt;
for i=1:length(t)-1;&lt;br /&gt;
    U=U+dt*V;&lt;br /&gt;
    V=V-dt*K*U;&lt;br /&gt;
    sol(i+1,:)=[0 U' 0];&lt;br /&gt;
end&lt;br /&gt;
%DERIVAMOS LA SOLUCION EN x Y EN t:&lt;br /&gt;
dsol_dx=ones(size(sol));&lt;br /&gt;
for i=1:length(t)&lt;br /&gt;
    dsol_dx(i,:)=deriva(sol(i,:),xtot,0);&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
dsol_dt=ones(size(sol));&lt;br /&gt;
for i=1:length(xtot)&lt;br /&gt;
    dsol_dt(:,i)=deriva(sol(:,i),t,1); &lt;br /&gt;
end&lt;br /&gt;
%SUMAMOS LAS DERIVADAS AL CUADRADO E INTEGRAMOS:&lt;br /&gt;
dE=zeros(1,size(t,1));&lt;br /&gt;
for i=1:length(xtot)&lt;br /&gt;
    dE=dE+(dsol_dt(i,:).^2+dsol_dx(i,:).^2)*dx;&lt;br /&gt;
end&lt;br /&gt;
xtot=0:dx:L;&lt;br /&gt;
[xx,tt]=meshgrid(xtot,t);&lt;br /&gt;
figure(1)&lt;br /&gt;
surf(xx,tt,dsol_dx);&lt;br /&gt;
figure(2)&lt;br /&gt;
surf(xx,tt,dsol_dt);&lt;br /&gt;
plot(dE,t)&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
El resultado habría de ser una gráfica que representase la evolución de la energía de la cuerda frente al transcurso del tiempo. No obstante, en nuestra resolución aparece una gráfica en blanco que ajudicamos o a un posible error en el código, o que podemos interpretar como que la energía tiende a infinito.&lt;br /&gt;
&lt;br /&gt;
== Aplicaciones. ==&lt;br /&gt;
&lt;br /&gt;
==== Sumersión en un medio viscoso. ====&lt;br /&gt;
&lt;br /&gt;
Suponemos ahora la inmersión del cable en una medio viscoso. Este medio viscoso produce un amortiguamiento en el movimiento del cable, con lo que la anterior ecuación diferencial se convertiría en &lt;br /&gt;
\begin{equation}&lt;br /&gt;
u_{tt}-u_{xx}+au_{t}=0&lt;br /&gt;
\end{equation} &lt;br /&gt;
, siendo '''&amp;lt;math&amp;gt; a  &amp;lt;/math&amp;gt;''' una constante de amortiguamiento propia del medio viscoso.&lt;br /&gt;
Puesto que la función '''&amp;lt;math&amp;gt; u(x,t)  &amp;lt;/math&amp;gt;''' se ve afectada ahora por el medio viscoso, y más directamente, por la constante '''&amp;lt;math&amp;gt; a  &amp;lt;/math&amp;gt;''' que actúa en su nombre, la energía del cable ,que se expresaba como una integral en función de '''&amp;lt;math&amp;gt; u(x,t)  &amp;lt;/math&amp;gt;''' también se va a ver afectada:&lt;br /&gt;
\begin{equation}&lt;br /&gt;
E(t) = \int_{0}^{L} (u_{t}^{2}(x,t)+ u_{x}^{2}(x,t)) \cdot dx&lt;br /&gt;
\end{equation}&lt;br /&gt;
&lt;br /&gt;
El obetivo del siguiente código será hallar una representación de la evolución de la energía en función del tiempo a raíz de la modificación de la función '''&amp;lt;math&amp;gt; u(x,t)  &amp;lt;/math&amp;gt;'''. Para ello asignaremos distintos valores a la constante '''&amp;lt;math&amp;gt; a  &amp;lt;/math&amp;gt;'''. Éstos van a ser:&lt;br /&gt;
'''&amp;lt;math&amp;gt; a=0  &amp;lt;/math&amp;gt;''' (la energía para este valor resultará igual que la hallada en el apartado anterior)&lt;br /&gt;
'''&amp;lt;math&amp;gt; a=1  &amp;lt;/math&amp;gt;'''&lt;br /&gt;
'''&amp;lt;math&amp;gt; a=4  &amp;lt;/math&amp;gt;'''&lt;br /&gt;
'''&amp;lt;math&amp;gt; a=10  &amp;lt;/math&amp;gt;'''&lt;br /&gt;
''&amp;lt;math&amp;gt; a=100  &amp;lt;/math&amp;gt;'''&lt;br /&gt;
&lt;br /&gt;
El procedimiento numérico volverá a seguir el método de '''diferencias finitas''':&lt;br /&gt;
&lt;br /&gt;
'''PROGRAMA:'''&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
clc;clear all;close all;&lt;br /&gt;
%Datos&lt;br /&gt;
dx=0.1;L=10;&lt;br /&gt;
dt=0.001;NT=40;&lt;br /&gt;
A=[0,1,4,10,100];&lt;br /&gt;
x=0:dx:L;&lt;br /&gt;
t=0:dt:NT;&lt;br /&gt;
ENE=zeros(5,length(t));&lt;br /&gt;
&lt;br /&gt;
%Condición de contorno: U(0,t)=U(L,t)=0;&lt;br /&gt;
&lt;br /&gt;
for k=1:5&lt;br /&gt;
&lt;br /&gt;
%Vector solución y derivada temporal de la solución&lt;br /&gt;
%t=0&amp;lt;&amp;gt;T(1) es donde se guardan las condiciones iniciales&lt;br /&gt;
&lt;br /&gt;
U=zeros(length(t),length(x));&lt;br /&gt;
Dt_U=zeros(length(t),length(x));&lt;br /&gt;
Dx_U=zeros(length(t),length(x));    &lt;br /&gt;
&lt;br /&gt;
%Condición inicial: Estiramos 2 m del centro&lt;br /&gt;
%Modelizado como dos rectas antisimétricas que se cortan en x=5 y&lt;br /&gt;
%sujetas en x=0 y x=L.&lt;br /&gt;
&lt;br /&gt;
U(1,:)=2*sin(x*pi/L);&lt;br /&gt;
Dt_U(1,:)=zeros(1,length(x))';&lt;br /&gt;
D2t_U=Ecuacion5(U(1,:),x,-1);&lt;br /&gt;
&lt;br /&gt;
%Inicio del esquema numérico&lt;br /&gt;
%empieza en 2 ya que el 1 es la cond. inicial&lt;br /&gt;
&lt;br /&gt;
%ESQUEMA NEWMARK&lt;br /&gt;
&lt;br /&gt;
 for i=2:length(t)&lt;br /&gt;
    iter=[k,i]&lt;br /&gt;
    Ua=U(i-1,:);&lt;br /&gt;
    Dt_Ua=Dt_U(i-1,:);&lt;br /&gt;
    D2t_Ua=D2t_U;&lt;br /&gt;
    %Derivada segunda respecto del tiempo en el instante t, se obtiene de&lt;br /&gt;
    %eq. diferencial u_tt=f(x,u,u_x,u_xx)&lt;br /&gt;
    D2t_U=Ecuacion5(U(i-1,:),x,t(i))-A(k)*Dt_Ua;&lt;br /&gt;
    %Derivada primera&lt;br /&gt;
    Dt_U(i,:)=Dt_Ua+0.5*dt*(D2t_Ua+D2t_U);&lt;br /&gt;
    %Ecuacion&lt;br /&gt;
    U(i,:) = Ua+Dt_Ua*dt+(1/6)*(D2t_Ua+D2t_U)*dt^2;&lt;br /&gt;
 end&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 %ENERGIA&lt;br /&gt;
 for i=1:length(t)&lt;br /&gt;
    Dx_U(i,:)=deriva(x,U(i,:),0);&lt;br /&gt;
 end&lt;br /&gt;
dE=zeros(length(t),1);&lt;br /&gt;
for i=1:length(x)&lt;br /&gt;
    dE=dE+(Dt_U(:,i).^2+Dx_U(:,i).^2)*dx;&lt;br /&gt;
end&lt;br /&gt;
 ENE(k,:)=dE;&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
 figure(1)&lt;br /&gt;
 hold on&lt;br /&gt;
 grid&lt;br /&gt;
 aa=find(x==L/4);&lt;br /&gt;
 ab=find(x==3*L/4);&lt;br /&gt;
 legend('A=0','A=1','A=4','A=10','A=100');&lt;br /&gt;
 plot(t,ENE(1,:),t,ENE(2,:),t,ENE(3,:),t,ENE(4,:),t,ENE(5,:));&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''FUNCIONES:'''&lt;br /&gt;
DERIVA:&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
function v = deriva(x,y,t)&lt;br /&gt;
n = length(x);&lt;br /&gt;
del=zeros(1,n);&lt;br /&gt;
if t==1&lt;br /&gt;
    i=1;&lt;br /&gt;
    del(1)=(y(i)-y(i+1))/(-x(i)+x(i+1));&lt;br /&gt;
    for i=2:n&lt;br /&gt;
    del(i)=(y(i)-y(i-1))/(x(i)-x(i-1));&lt;br /&gt;
    end &lt;br /&gt;
elseif t==-1&lt;br /&gt;
    for i=1:n-1&lt;br /&gt;
    del(i)=(y(i)-y(i+1))/(x(i)-x(i+1));&lt;br /&gt;
    end &lt;br /&gt;
    i=n;&lt;br /&gt;
    del(i)=(y(i)-y(i-1))/(x(i)-x(i-1));&lt;br /&gt;
elseif t==0&lt;br /&gt;
    i=1;&lt;br /&gt;
    del(1)=(y(i)-y(i+1))/(+x(i)-x(i+1));&lt;br /&gt;
    for i=2:n-1&lt;br /&gt;
    del(i)=(y(i+1)-y(i-1))/(2*(x(i)-x(i-1)));&lt;br /&gt;
    end &lt;br /&gt;
    i=n;&lt;br /&gt;
    del(n)=(y(i)-y(i-1))/(x(i)-x(i-1));  &lt;br /&gt;
end&lt;br /&gt;
v=del;&lt;br /&gt;
end&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
'''ECUACIÓN 5:'''&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
function [ V ] = Ecuacion5( u,x,t )&lt;br /&gt;
%se guarda aquí la ecuación diferencial del tipo u_tt=f(x,u,u_x,u_xx)&lt;br /&gt;
%INCLUIDAS LAS CC AQUÍ&lt;br /&gt;
%PARA u_tt=u_xx&lt;br /&gt;
%CC: u(0,t)=u(L,t)=0;&lt;br /&gt;
&lt;br /&gt;
Ax=x(2)-x(1);&lt;br /&gt;
n=length(u);&lt;br /&gt;
V=zeros(1,n);&lt;br /&gt;
&lt;br /&gt;
%Las condiciones de contorno vienen en x(1)=0 y x(Nx)=L&lt;br /&gt;
u(1)=0;&lt;br /&gt;
&lt;br /&gt;
if(t==-1)&lt;br /&gt;
    u(n)=0;&lt;br /&gt;
else&lt;br /&gt;
    u(n)=0;&lt;br /&gt;
    %u(n)=sin(2*pi*F0*t);&lt;br /&gt;
    %u(n)=(1/(b*Ax-1))*u(n-1);&lt;br /&gt;
end&lt;br /&gt;
for i=2:n-1&lt;br /&gt;
    &lt;br /&gt;
    V(i)=(1/Ax^2)*(u(i+1)-2*u(i)+u(i-1));&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
i=1;&lt;br /&gt;
V(i)=(1/Ax^2)*(u(i+2)-2*u(i+1));&lt;br /&gt;
i=n;&lt;br /&gt;
V(i)=(1/Ax^2)*(u(i)-2*u(i-1)+u(i-2));&lt;br /&gt;
end&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
La gráfica buscada es:&lt;br /&gt;
[[Archivo:Graficadelaenergiaenunmedioviscoso.png|700px|thumb|centre|Gráfica de la energía(ordenadas) del cable respecto del tiempo (Abcisas).]]&lt;br /&gt;
En la gráfica se aprecian cuatro curvas de distintos colores correspondientes a '''&amp;lt;math&amp;gt; a=0  &amp;lt;/math&amp;gt;''','''&amp;lt;math&amp;gt; a=1  &amp;lt;/math&amp;gt;''','''&amp;lt;math&amp;gt; a=4  &amp;lt;/math&amp;gt;''','''&amp;lt;math&amp;gt; a=10  &amp;lt;/math&amp;gt;''',''&amp;lt;math&amp;gt; a=100  &amp;lt;/math&amp;gt;'''.&lt;br /&gt;
&lt;br /&gt;
Como podemos apreciar el valor de la energía disminuye a medida que aumentamos el valor de &amp;quot;a&amp;quot;. Esto es debido a que &amp;quot;a&amp;quot; define el coeficiente de amortiguamiento del líquido en el cual se encuentra la cuerda. Luego, dicha disminución de energía se produce por la disipación en el medio de gran parte de la energía inicial.&lt;br /&gt;
&lt;br /&gt;
==== Sujeción a una estructura de vibración periódica. ====&lt;br /&gt;
&lt;br /&gt;
En este caso supondremos que el extremo derecho que sujeta el cable está sometido a una vibración periódica de frecuencia  &amp;lt;math&amp;gt; F_0 &amp;lt;/math&amp;gt; [Herzios]. Al haber una vibración externa que afecta directamente al cable la expresión de su movimiento y, por consecuencia, de su energía, se va a ver modificada. Nosotros incluiremos esta modificación en la función &amp;lt;math&amp;gt; f(t) &amp;lt;/math&amp;gt; de problema de valor inicial que venimos tratando. Esta función va a pasar a ser: &lt;br /&gt;
\begin{equation}&lt;br /&gt;
f(t)= sin(2 \pi F_0t)&lt;br /&gt;
\end{equation}&lt;br /&gt;
&lt;br /&gt;
El objetivo será el de ver cómo afecta esta alteración en el desarrollo de la energía del cable frente al tiempo.&lt;br /&gt;
Para nuestro cálculo numérico especificaremos para las siguientes situaciones:&lt;br /&gt;
En primer lugar, para: &amp;lt;math&amp;gt; F_0= \frac{1}{L} + 0,01 &amp;lt;/math&amp;gt;&lt;br /&gt;
Después,para: &amp;lt;math&amp;gt; F_0= \frac{1}{L} - 0,01 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Y para finalizar, lo estudiaremos en un intervalo de tiempo de '''t=0''' hasta '''t=60''' : &amp;lt;math&amp;gt;t \in (0,60)&amp;lt;/math&amp;gt; [segundos].&lt;br /&gt;
&lt;br /&gt;
El código matemático para matlab / octave:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''PROGRAMA:'''&lt;br /&gt;
{{matlab|codigo= &lt;br /&gt;
clc;clear all;close all;&lt;br /&gt;
&lt;br /&gt;
%Datos&lt;br /&gt;
&lt;br /&gt;
dx=0.1;L=10;dt=0.0001;NT=60;&lt;br /&gt;
A=[0,1,4,10,100];&lt;br /&gt;
x=0:dx:L;t=0:dt:NT;&lt;br /&gt;
ENE=zeros(5,length(t));&lt;br /&gt;
&lt;br /&gt;
%Condición de contorno: U(0,t)=U(L,t)=0;&lt;br /&gt;
for k=1&lt;br /&gt;
%Vector solución y derivada temporal de la solución&lt;br /&gt;
%t=0&amp;lt;&amp;gt;T(1) es donde se guardan las condiciones iniciales&lt;br /&gt;
&lt;br /&gt;
U=zeros(length(t),length(x));&lt;br /&gt;
Dt_U=zeros(length(t),length(x));&lt;br /&gt;
Dx_U=zeros(length(t),length(x));&lt;br /&gt;
&lt;br /&gt;
%Condición inicial: Estiramos 2 m del centro&lt;br /&gt;
%Modelizado como dos rectas antisimétricas que se cortan en x=5 y&lt;br /&gt;
%sujetas en x=0 y x=L.&lt;br /&gt;
&lt;br /&gt;
U(1,:)=2*sin(x*pi/L);&lt;br /&gt;
Dt_U(1,:)=zeros(1,length(x))';&lt;br /&gt;
D2t_U=Ecuacion6(U(1,:),x,-1);&lt;br /&gt;
&lt;br /&gt;
%Inicio del esquema numérico&lt;br /&gt;
%empieza en 2 ya que el 1 es la cond. inicial&lt;br /&gt;
&lt;br /&gt;
%ESQUEMA NEWMARK&lt;br /&gt;
&lt;br /&gt;
 for i=2:length(t)&lt;br /&gt;
    iter=[k,i]&lt;br /&gt;
    Ua=U(i-1,:);&lt;br /&gt;
    Dt_Ua=Dt_U(i-1,:);&lt;br /&gt;
    D2t_Ua=D2t_U;&lt;br /&gt;
    %Derivada segunda respecto del tiempo en el instante t, se obtiene de&lt;br /&gt;
    %eq. diferencial u_tt=f(x,u,u_x,u_xx)&lt;br /&gt;
    D2t_U=Ecuacion6(U(i-1,:),x,t(i))-A(k)*Dt_Ua;&lt;br /&gt;
    %Derivada primera&lt;br /&gt;
    Dt_U(i,:)=Dt_Ua+0.5*dt*(D2t_Ua+D2t_U);&lt;br /&gt;
    %Ecuacion&lt;br /&gt;
    U(i,:) = Ua+Dt_Ua*dt+(1/6)*(D2t_Ua+D2t_U)*dt^2;&lt;br /&gt;
 end&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 %ENERGIA&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 for i=1:length(t)&lt;br /&gt;
    Dx_U(i,:)=deriva(x,U(i,:),0);&lt;br /&gt;
 end&lt;br /&gt;
dE=zeros(length(t),1);&lt;br /&gt;
for i=1:length(x)&lt;br /&gt;
    dE=dE+(Dt_U(:,i).^2+Dx_U(:,i).^2)*dx;&lt;br /&gt;
end&lt;br /&gt;
 ENE(k,:)=dE;&lt;br /&gt;
end&lt;br /&gt;
 figure(1)&lt;br /&gt;
 hold on&lt;br /&gt;
 grid&lt;br /&gt;
 aa=find(x==L/4);&lt;br /&gt;
 ab=find(x==3*L/4);&lt;br /&gt;
 imagesc(U)&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''FUNCIONES:'''&lt;br /&gt;
&lt;br /&gt;
DERIVA:&lt;br /&gt;
{{matlab|codigo= &lt;br /&gt;
function v = deriva(x,y,t)&lt;br /&gt;
n = length(x);&lt;br /&gt;
del=zeros(1,n);&lt;br /&gt;
if t==1&lt;br /&gt;
    i=1;&lt;br /&gt;
    del(1)=(y(i)-y(i+1))/(-x(i)+x(i+1));&lt;br /&gt;
    for i=2:n&lt;br /&gt;
    del(i)=(y(i)-y(i-1))/(x(i)-x(i-1));&lt;br /&gt;
    end &lt;br /&gt;
elseif t==-1&lt;br /&gt;
    for i=1:n-1&lt;br /&gt;
    del(i)=(y(i)-y(i+1))/(x(i)-x(i+1));&lt;br /&gt;
    end &lt;br /&gt;
    i=n;&lt;br /&gt;
    del(i)=(y(i)-y(i-1))/(x(i)-x(i-1));&lt;br /&gt;
elseif t==0&lt;br /&gt;
    i=1;&lt;br /&gt;
    del(1)=(y(i)-y(i+1))/(+x(i)-x(i+1));&lt;br /&gt;
    for i=2:n-1&lt;br /&gt;
    del(i)=(y(i+1)-y(i-1))/(2*(x(i)-x(i-1)));&lt;br /&gt;
    end &lt;br /&gt;
    i=n;&lt;br /&gt;
    del(n)=(y(i)-y(i-1))/(x(i)-x(i-1));  &lt;br /&gt;
end&lt;br /&gt;
v=del;&lt;br /&gt;
end&lt;br /&gt;
}}&lt;br /&gt;
'''ECUACIÓN 6:'''&lt;br /&gt;
&lt;br /&gt;
function [ V ] = Ecuacion6( u,x,t )&lt;br /&gt;
{{matlab|codigo= &lt;br /&gt;
&lt;br /&gt;
%se guarda aquí la ecuación diferencial del tipo u_tt=f(x,u,u_x,u_xx)&lt;br /&gt;
%INCLUIDAS LAS CC AQUÍ!&lt;br /&gt;
%PARA u_tt=u_xx&lt;br /&gt;
%CC: u(0,t)=u(L,t)=0;&lt;br /&gt;
&lt;br /&gt;
Ax=x(2)-x(1);&lt;br /&gt;
n=length(u);&lt;br /&gt;
V=zeros(1,n);&lt;br /&gt;
F0=(1/x(n))+0.01;&lt;br /&gt;
b=-2;&lt;br /&gt;
&lt;br /&gt;
%Las condiciones de contorno vienen en x(1)=0 y x(Nx)=L&lt;br /&gt;
&lt;br /&gt;
u(1)=0;&lt;br /&gt;
if(t==-1)&lt;br /&gt;
    u(n)=0;&lt;br /&gt;
else&lt;br /&gt;
    %u(n)=0;&lt;br /&gt;
    u(n)=sin(2*pi*F0*t);&lt;br /&gt;
    %u(n)=(1/(b*Ax-1))*u(n-1);&lt;br /&gt;
end&lt;br /&gt;
for i=2:n-1&lt;br /&gt;
    V(i)=(1/Ax^2)*(u(i+1)-2*u(i)+u(i-1));&lt;br /&gt;
end&lt;br /&gt;
i=1;&lt;br /&gt;
V(i)=(1/Ax^2)*(u(i+2)-2*u(i+1));&lt;br /&gt;
i=n;&lt;br /&gt;
V(i)=(1/Ax^2)*(u(i)-2*u(i-1)+u(i-2));&lt;br /&gt;
end&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:6.1.png|700px|thumb|centre|Gráfica en tres dimensiones de la energía de un cable cuyo extremo derecho está sometido a una vibración externa periódica para F_0=1/L +0,1]]&lt;br /&gt;
'''function [ V ] = Ecuacion6( u,x,t )'''&lt;br /&gt;
{{matlab|codigo= &lt;br /&gt;
%se guarda aquí la ecuación diferencial del tipo u_tt=f(x,u,u_x,u_xx)&lt;br /&gt;
%INCLUIDAS LAS CC AQUÍ!&lt;br /&gt;
%PARA u_tt=u_xx&lt;br /&gt;
%CC: u(0,t)=u(L,t)=0;&lt;br /&gt;
&lt;br /&gt;
Ax=x(2)-x(1);&lt;br /&gt;
n=length(u);&lt;br /&gt;
V=zeros(1,n);&lt;br /&gt;
F0=(1/x(n))-0.01;&lt;br /&gt;
b=-2;&lt;br /&gt;
&lt;br /&gt;
%Las condiciones de contorno vienen en x(1)=0 y x(Nx)=L&lt;br /&gt;
&lt;br /&gt;
u(1)=0;&lt;br /&gt;
if(t==-1)&lt;br /&gt;
    u(n)=0;&lt;br /&gt;
else&lt;br /&gt;
    %u(n)=0;&lt;br /&gt;
    u(n)=sin(2*pi*F0*t);&lt;br /&gt;
    %u(n)=(1/(b*Ax-1))*u(n-1);&lt;br /&gt;
end&lt;br /&gt;
for i=2:n-1&lt;br /&gt;
    V(i)=(1/Ax^2)*(u(i+1)-2*u(i)+u(i-1));&lt;br /&gt;
end&lt;br /&gt;
i=1;&lt;br /&gt;
V(i)=(1/Ax^2)*(u(i+2)-2*u(i+1));&lt;br /&gt;
i=n;&lt;br /&gt;
V(i)=(1/Ax^2)*(u(i)-2*u(i-1)+u(i-2));&lt;br /&gt;
end&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:6.2.png|700px|thumb|centre|Gráfica en tres dimensiones de la energía de un cable cuyo extremo derecho está sometido a una vibración externa periódica.]]&lt;br /&gt;
&lt;br /&gt;
'''function [ V ] = Ecuacion6( u,x,t )'''&lt;br /&gt;
{{matlab|codigo= &lt;br /&gt;
%se guarda aquí la ecuación diferencial del tipo u_tt=f(x,u,u_x,u_xx)&lt;br /&gt;
%INCLUIDAS LAS CC AQUÍ!&lt;br /&gt;
%PARA u_tt=u_xx&lt;br /&gt;
%CC: u(0,t)=u(L,t)=0;&lt;br /&gt;
&lt;br /&gt;
Ax=x(2)-x(1);&lt;br /&gt;
n=length(u);&lt;br /&gt;
V=zeros(1,n);&lt;br /&gt;
F0=(1/x(n));&lt;br /&gt;
b=-2;&lt;br /&gt;
&lt;br /&gt;
%Las condiciones de contorno vienen en x(1)=0 y x(Nx)=L&lt;br /&gt;
&lt;br /&gt;
u(1)=0;&lt;br /&gt;
if(t==-1)&lt;br /&gt;
    u(n)=0;&lt;br /&gt;
else&lt;br /&gt;
    %u(n)=0;&lt;br /&gt;
    u(n)=sin(2*pi*F0*t);&lt;br /&gt;
    %u(n)=(1/(b*Ax-1))*u(n-1);&lt;br /&gt;
end&lt;br /&gt;
for i=2:n-1&lt;br /&gt;
    V(i)=(1/Ax^2)*(u(i+1)-2*u(i)+u(i-1));&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
i=1;&lt;br /&gt;
V(i)=(1/Ax^2)*(u(i+2)-2*u(i+1));&lt;br /&gt;
i=n;&lt;br /&gt;
V(i)=(1/Ax^2)*(u(i)-2*u(i-1)+u(i-2));&lt;br /&gt;
end&lt;br /&gt;
}}&lt;br /&gt;
 &lt;br /&gt;
La gráfica resultante es la siguiente:&lt;br /&gt;
[[Archivo:6.3.png|700px|thumb|centre|Gráfica en tres dimensiones de la energía de un cable cuyo extremo derecho está sometido a una vibración externa periódica.]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
En dicha gráfica, se puede observar que la forma de la función o la energía se ve alterada por la condición impuesta de tal manera que ésta adquiere una forma también sinusoidal, y que su estabilización dependería del tiempo transcurrido entre vibración y vibración.&lt;br /&gt;
&lt;br /&gt;
==== Sujeción a un aparato que responde a una vibración externa. ====&lt;br /&gt;
&lt;br /&gt;
La siguiente situación que vamos a representar a modelar a través de ecuaciones diferenciales va a ser la siguiente: supondremos que el cable de la anterior situación (que recibía en su extremo derecho una vibración periódica de &amp;lt;math&amp;gt; F_0 &amp;lt;/math&amp;gt; [Herzios])envía una respuesta a la vibración que recibe. Esta situación la vamos a representar como un cambio en la condición de contorno; ésta va a pasar a ser: &amp;lt;math&amp;gt; u_x(L,t)=bu(L,t) &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
El objetivo, de nuevo será representar la evolución de la energía respecto del tiempo y ver si este cambio en el problema se ve reflejado en su representación. &lt;br /&gt;
En el código numérico, no obstante, la situación de &amp;lt;math&amp;gt; u_x(L,t)=bu(L,t) &amp;lt;/math&amp;gt; la vamos a aproximar por la siguiente expresión:&lt;br /&gt;
&amp;lt;math&amp;gt; u_x(L,t)-bu(L,t)  \cong  \frac{u_{N+1}(t)-u_{N-1}(t)}{2h-u_N(t)} &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
En la resolución del problema emplearemos de nuevo la condición inicial de sujetar el cable por el centro y elevarlo 2 m perpendicularmente: &lt;br /&gt;
&amp;lt;math&amp;gt; u(x,0)=g(x)= 2- |\frac{2}{5}x -2| &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Y además obtendremos el resultado para los dos valores siguientes de &amp;lt;math&amp;gt;b&amp;lt;/math&amp;gt; :&lt;br /&gt;
Para &amp;lt;math&amp;gt; b=2 &amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt; b=-2 &amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
El código numérico de matlab/octave es:&lt;br /&gt;
&lt;br /&gt;
'''PROGRAMA:'''&lt;br /&gt;
{{matlab|codigo= &lt;br /&gt;
clc;clear all;close all;&lt;br /&gt;
&lt;br /&gt;
%Datos&lt;br /&gt;
dx=0.1;L=10;dt=0.0001;NT=40;&lt;br /&gt;
A=[0,1,4,10,100];&lt;br /&gt;
x=0:dx:L;t=0:dt:NT;&lt;br /&gt;
ENE=zeros(5,length(t));&lt;br /&gt;
&lt;br /&gt;
%Condición de contorno: U(0,t)=U(L,t)=0;&lt;br /&gt;
for k=1&lt;br /&gt;
&lt;br /&gt;
%Vector solución y derivada temporal de la solución&lt;br /&gt;
%t=0&amp;lt;&amp;gt;T(1) es donde se guardan las condiciones iniciales&lt;br /&gt;
&lt;br /&gt;
U=zeros(length(t),length(x));&lt;br /&gt;
Dt_U=zeros(length(t),length(x));&lt;br /&gt;
Dx_U=zeros(length(t),length(x));    &lt;br /&gt;
&lt;br /&gt;
%Condición inicial: Estiramos 2 m del centro&lt;br /&gt;
%Modelizado como dos rectas antisimétricas que se cortan en x=5 y&lt;br /&gt;
%sujetas en x=0 y x=L.&lt;br /&gt;
&lt;br /&gt;
U(1,:)=2*sin(x*pi/L);&lt;br /&gt;
Dt_U(1,:)=zeros(1,length(x))';&lt;br /&gt;
D2t_U=Ecuacion7(U(1,:),x,-1);&lt;br /&gt;
&lt;br /&gt;
%Inicio del esquema numérico&lt;br /&gt;
%empieza en 2 ya que el 1 es la cond. inicial&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
%ESQUEMA NEWMARK&lt;br /&gt;
 for i=2:length(t)&lt;br /&gt;
    iter=[k,i]&lt;br /&gt;
    Ua=U(i-1,:);&lt;br /&gt;
    Dt_Ua=Dt_U(i-1,:);&lt;br /&gt;
    D2t_Ua=D2t_U;&lt;br /&gt;
&lt;br /&gt;
    %Derivada segunda respecto del tiempo en el instante t, se obtiene de&lt;br /&gt;
    %eq. diferencial u_tt=f(x,u,u_x,u_xx)&lt;br /&gt;
&lt;br /&gt;
    D2t_U=Ecuacion7(U(i-1,:),x,t(i))-A(k)*Dt_Ua;&lt;br /&gt;
&lt;br /&gt;
    %Derivada primera&lt;br /&gt;
    Dt_U(i,:)=Dt_Ua+0.5*dt*(D2t_Ua+D2t_U);&lt;br /&gt;
&lt;br /&gt;
    %Ecuacion&lt;br /&gt;
    U(i,:) = Ua+Dt_Ua*dt+(1/6)*(D2t_Ua+D2t_U)*dt^2;&lt;br /&gt;
 end&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 %ENERGIA&lt;br /&gt;
 for i=1:length(t)&lt;br /&gt;
    Dx_U(i,:)=deriva(x,U(i,:),0);&lt;br /&gt;
 end&lt;br /&gt;
dE=zeros(length(t),1);&lt;br /&gt;
for i=1:length(x)&lt;br /&gt;
    dE=dE+(Dt_U(:,i).^2+Dx_U(:,i).^2)*dx;&lt;br /&gt;
end&lt;br /&gt;
 ENE(k,:)=dE;&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
 figure(1)&lt;br /&gt;
 hold on&lt;br /&gt;
 grid&lt;br /&gt;
 aa=find(x==L/4);&lt;br /&gt;
 ab=find(x==3*L/4);&lt;br /&gt;
 plot(t,ENE(1,:))&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
'''FUNCIONES:'''&lt;br /&gt;
'''function v = deriva(x,y,t)'''&lt;br /&gt;
{{matlab|codigo= &lt;br /&gt;
n = length(x);&lt;br /&gt;
del=zeros(1,n);&lt;br /&gt;
if t==1&lt;br /&gt;
    i=1;&lt;br /&gt;
    del(1)=(y(i)-y(i+1))/(-x(i)+x(i+1));&lt;br /&gt;
    for i=2:n&lt;br /&gt;
    del(i)=(y(i)-y(i-1))/(x(i)-x(i-1));&lt;br /&gt;
    end &lt;br /&gt;
elseif t==-1&lt;br /&gt;
    for i=1:n-1&lt;br /&gt;
    del(i)=(y(i)-y(i+1))/(x(i)-x(i+1));&lt;br /&gt;
    end &lt;br /&gt;
    i=n;&lt;br /&gt;
    del(i)=(y(i)-y(i-1))/(x(i)-x(i-1));&lt;br /&gt;
elseif t==0&lt;br /&gt;
    i=1;&lt;br /&gt;
    del(1)=(y(i)-y(i+1))/(+x(i)-x(i+1));&lt;br /&gt;
    for i=2:n-1&lt;br /&gt;
    del(i)=(y(i+1)-y(i-1))/(2*(x(i)-x(i-1)));&lt;br /&gt;
    end &lt;br /&gt;
    i=n;&lt;br /&gt;
    del(n)=(y(i)-y(i-1))/(x(i)-x(i-1));  &lt;br /&gt;
end&lt;br /&gt;
v=del;&lt;br /&gt;
end&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
'''function [ V ] = Ecuacion7( u,x,t )'''&lt;br /&gt;
{{matlab|codigo= &lt;br /&gt;
%se guarda aquí la ecuación diferencial del tipo u_tt=f(x,u,u_x,u_xx)&lt;br /&gt;
%INCLUIDAS LAS CC AQUÍ!&lt;br /&gt;
%PARA u_tt=u_xx&lt;br /&gt;
%CC: u(0,t)=u(L,t)=0;&lt;br /&gt;
&lt;br /&gt;
Ax=x(2)-x(1);&lt;br /&gt;
n=length(u);&lt;br /&gt;
V=zeros(1,n);&lt;br /&gt;
F0=(1/x(n));&lt;br /&gt;
b=2;&lt;br /&gt;
&lt;br /&gt;
%Las condiciones de contorno vienen en x(1)=0 y x(Nx)=L&lt;br /&gt;
u(1)=0;&lt;br /&gt;
if(t==-1)&lt;br /&gt;
    u(n)=0;&lt;br /&gt;
else&lt;br /&gt;
    %u(n)=0;&lt;br /&gt;
    %u(n)=sin(2*pi*F0*t);&lt;br /&gt;
    u(n)=(1/(b*Ax-1))*u(n-1);&lt;br /&gt;
end&lt;br /&gt;
for i=2:n-1&lt;br /&gt;
    V(i)=(1/Ax^2)*(u(i+1)-2*u(i)+u(i-1));&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
i=1;&lt;br /&gt;
V(i)=(1/Ax^2)*(u(i+2)-2*u(i+1));&lt;br /&gt;
i=n;&lt;br /&gt;
V(i)=(1/Ax^2)*(u(i)-2*u(i-1)+u(i-2));&lt;br /&gt;
end&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:7.1.png|700px|thumb|centre|Gráfica de la energía (ordenadas) de un cable frente al tiempo (abcisas) que recibe una vibración en su extremo derecho y que responde a dicha vibración para b=2. ]]&lt;br /&gt;
'''function [ V ] = Ecuacion7( u,x,t )'''&lt;br /&gt;
{{matlab|codigo= &lt;br /&gt;
%se guarda aquí la ecuación diferencial del tipo u_tt=f(x,u,u_x,u_xx)&lt;br /&gt;
%INCLUIDAS LAS CC AQUÍ!&lt;br /&gt;
%PARA u_tt=u_xx&lt;br /&gt;
%CC: u(0,t)=u(L,t)=0;&lt;br /&gt;
&lt;br /&gt;
Ax=x(2)-x(1);&lt;br /&gt;
n=length(u);&lt;br /&gt;
V=zeros(1,n);&lt;br /&gt;
F0=(1/x(n));&lt;br /&gt;
b=-2;&lt;br /&gt;
&lt;br /&gt;
%Las condiciones de contorno vienen en x(1)=0 y x(Nx)=L&lt;br /&gt;
u(1)=0;&lt;br /&gt;
&lt;br /&gt;
if(t==-1)&lt;br /&gt;
    u(n)=0;&lt;br /&gt;
else&lt;br /&gt;
    %u(n)=0;&lt;br /&gt;
    %u(n)=sin(2*pi*F0*t);&lt;br /&gt;
    u(n)=(1/(b*Ax-1))*u(n-1);&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
for i=2:n-1&lt;br /&gt;
    V(i)=(1/Ax^2)*(u(i+1)-2*u(i)+u(i-1));&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
i=1;&lt;br /&gt;
V(i)=(1/Ax^2)*(u(i+2)-2*u(i+1));&lt;br /&gt;
i=n;&lt;br /&gt;
V(i)=(1/Ax^2)*(u(i)-2*u(i-1)+u(i-2));&lt;br /&gt;
end&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
La imagen resultante es:&lt;br /&gt;
[[Archivo:7.2.png|700px|thumb|centre|Gráfica de la energía (ordenadas) de un cable frente al tiempo (abcisas) que recibe una vibración en su extremo derecho y que responde a dicha vibración para b=-2. ]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
La anterior gráfica muestra el comportamiento de la cuerda como respuesta a la vibración producida en uno de sus extremos así como el movimiento transversal del punto medio al comienzo. Podemos observar el movimiento transversal de cada punto de la cuerda a través de la expresión de la energía, así como que, a medida que transcurre el tiempo, ésta se va estabilizando. La forma de la función recuerda a una función sinusoidal debido a la forma de la condición de contorno impuesta.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Categoría:Ecuaciones Diferentiales]]&lt;br /&gt;
 [[Categoría:ED13/14]]&lt;br /&gt;
 [[Categoría:Trabajos 2013-14]]&lt;/div&gt;</summary>
		<author><name>Lucia Lopez</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Ecuaci%C3%B3n_de_ondas_(grupo_2B)&amp;diff=13191</id>
		<title>Ecuación de ondas (grupo 2B)</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Ecuaci%C3%B3n_de_ondas_(grupo_2B)&amp;diff=13191"/>
				<updated>2014-05-19T21:14:05Z</updated>
		
		<summary type="html">&lt;p&gt;Lucia Lopez: /* Euler Modificado. */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{ TrabajoED | Ecuación de ondas. Grupo 2-B| [[:Categoría:Ecuaciones Diferenciales|Ecuaciones Diferenciales]]|[[:Categoría:ED13/14|Curso 2013-14]]| &lt;br /&gt;
Ignacio Díaz-Caneja Camblor&lt;br /&gt;
&lt;br /&gt;
Alberto Fernández Pérez&lt;br /&gt;
&lt;br /&gt;
Adela González Barbado&lt;br /&gt;
&lt;br /&gt;
Lucia López Sánchez&lt;br /&gt;
&lt;br /&gt;
Araceli Martín Candilejo&lt;br /&gt;
&lt;br /&gt;
Diego Solano López&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
== Modelización de los desplazamientos del Cable. ==&lt;br /&gt;
El problema que se tratará a continuación describe una ecuación de '''tipo hiperbólico''', una '''ecuación de ondas'''.&lt;br /&gt;
Consideramos un '''cable de 10 metros''' de longitud '''sujeto por sus extremos'''. Suponiendo que éste tiene una '''sección pequeña''' respecto a su longitud someteremos al cable a pequeñas vibraciones que estudiaremos con una modelización de la ecuación de ondas. &lt;br /&gt;
Se caracteriza al cable de una masa constante por unidad de volumen, es decir, será '''homogéneo'''. Éste, '''flexible''' a la tracción, únicamente ofrece resistencias en su dirección longitudinal, tangenciales, pero no a esfuerzos de flexión o cortes. Se supone, además, que es '''inextensible''' por lo que será lo suficientemente rígido longitudinalmente como para poder despreciar su extensibilidad.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Con esta modelización se estudiarán las '''pequeñas vibraciones''', desplazamientos transversales, a las que es sometido el cable. Para iniciar el movimiento del cable lo sujetaremos por el centro subiéndolo dos metros, lo que nos proporciona una primera condición inicial determinada por la función g(x), y soltándolo con una velocidad nula. &lt;br /&gt;
&lt;br /&gt;
&amp;lt;br/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Obtenemos la ecuación &amp;lt;math&amp;gt;u_{tt}-u_{xx}=0&amp;lt;/math&amp;gt; , de la cual se puede observar que tanto el '''módulo de la tensión''' como la '''densidad''' son '''constantes''' ya que el '''módulo de la elasticidad''' es constante, &amp;lt;math&amp;gt;c^2=1&amp;lt;/math&amp;gt; . Al ser ésta primera ecuación homogénea deducimos que transversalmente no actúa ninguna fuerza densidad espacial y temporal. Se deduce del enunciado anterior que las condiciones de frontera son '''homogéneas''', &amp;lt;math&amp;gt;u(0,t)=0&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;u(10,t)=0&amp;lt;/math&amp;gt; que nos indican que los extremos del cable no describen ningún tipo de movimiento en todo instante t al no estar sometidos a ningun tipo de fuerza. Finalmente, añadimos al sistema las condiciones iniciales, la primera de ellas, &amp;lt;math&amp;gt;u(x,0)=g(x)= 2- |\frac{2}{5}x -2|&amp;lt;/math&amp;gt;, define el '''movimiento descrito por la onda''' en el instante t=0 en cualquier punto del cable; y la segunda, &amp;lt;math&amp;gt;u_t(x,0)=0&amp;lt;/math&amp;gt;, que la onda parte de una '''velocidad inicial nula'''.&lt;br /&gt;
[[Image:DV.png|300px|thumb|right|Deslizamiento vertical del cable. ]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
\begin{cases}&lt;br /&gt;
&lt;br /&gt;
u_{tt}- u_{xx}=0  \  x∈[0,10] \ t&amp;gt;0\\&lt;br /&gt;
u(0,t)=0\\&lt;br /&gt;
u(10,t)=0\\&lt;br /&gt;
u(x,0)= 2- |\frac{2}{5}x -2|\\&lt;br /&gt;
u_t(x,0)=0&lt;br /&gt;
\end{cases}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
En los siguientes apartados se realizaran aproximaciones del sistema expuesto con tres métodos distintos de los que más tarde se hará una comparativa. Para esto último nos ayudaremos del error por lo que necesitaremos la solución analítica.&lt;br /&gt;
Como el problema consta de condiciones de frontera homogéneas, aplicamos directamente el método de separación de variables para su resolución analítica. &lt;br /&gt;
&amp;lt;br/&amp;gt;&lt;br /&gt;
==== Aproximación por el método del trapecio. ====&lt;br /&gt;
El método del trapecio se basa en aproximar una función integrando. Para ello utilizamos un número N de trapecios (en la imagen inferior hemos aproximado mediante 4 trapecios). Las integrales a resolver para poder poder aproximar una función por este método tendrán la distancia de sus límites de integración constantes para todas las integrales, a esta distancia entre los límites de integración lo llamamos paso. En el desarrollo de este método se supone que la función es continua en el intervalo en que se quiere aproximar.&lt;br /&gt;
&amp;lt;br/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Image:Trapecio.png|300px|thumb|center|Función Y(x), el área bajo la curva, se puede aproximar mediante n trapecios]]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br/&amp;gt;&lt;br /&gt;
{{matlab|codigo= &lt;br /&gt;
%u_tt-u_xx=0&lt;br /&gt;
%u(0,t)=u(l,t)=0&lt;br /&gt;
%u(x,0)=2-abs(0.4x-2)&lt;br /&gt;
%ut(x,0)=0&lt;br /&gt;
clear all&lt;br /&gt;
&lt;br /&gt;
%Datos del problema&lt;br /&gt;
L=10;&lt;br /&gt;
T=40;&lt;br /&gt;
&lt;br /&gt;
%Discretización&lt;br /&gt;
h=0.1;&lt;br /&gt;
N=L/h;&lt;br /&gt;
x=0:h:L;&lt;br /&gt;
xint=h:h:L-h;&lt;br /&gt;
dt=h;&lt;br /&gt;
t=0:dt:T;&lt;br /&gt;
&lt;br /&gt;
%Aprox. de u_xx&lt;br /&gt;
K=2*diag(ones(1,N-1))-diag(ones(1,N-2),-1)-diag(ones(1,N-2),1);&lt;br /&gt;
K=K/h^2;&lt;br /&gt;
F=zeros(N-1,1);&lt;br /&gt;
&lt;br /&gt;
%Posición inicial.&lt;br /&gt;
u0=(2-abs(xint*2/5-2))';&lt;br /&gt;
v0=zeros(N-1,1);&lt;br /&gt;
&lt;br /&gt;
%Aprox. de u_tt&lt;br /&gt;
M=[zeros(N-1),eye(N-1);-K,zeros(N-1)];&lt;br /&gt;
G=[zeros(N-1,1);F];&lt;br /&gt;
&lt;br /&gt;
%Aproximación por el método del Trapecio&lt;br /&gt;
W0=[u0;v0];&lt;br /&gt;
WW=W0;&lt;br /&gt;
sol=zeros(length(t),N+1);&lt;br /&gt;
sol(1,:)=[0,W0(1:N-1)',0];&lt;br /&gt;
for j=1:length(t)-1&lt;br /&gt;
    WW=(eye(2*N-2)-dt/2*M)\(eye(2*N-2)+dt/2*M)*WW;&lt;br /&gt;
    sol(j+1,:)=[0,WW(1:N-1)',0];&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
%Dibujo de la solución&lt;br /&gt;
[xx,tt]=meshgrid(x,t);&lt;br /&gt;
surf(xx,tt,sol);&lt;br /&gt;
xlabel('Desplazamiento horizontal');&lt;br /&gt;
ylabel('Tiempo');&lt;br /&gt;
zlabel('Desplazamiento vertical');}}&lt;br /&gt;
&lt;br /&gt;
[[Image:klklk.jpg|700px|thumb|center|Aproximación por el método del Trapecio.]]&lt;br /&gt;
&lt;br /&gt;
Además de saber que el método del trapecio tiene orden de precisión 2 y, por tanto, es un buen método a la hora de aproximar, gráficamente también podemos observar que este método es bastante preciso.&lt;br /&gt;
&lt;br /&gt;
==== Aproximación por el método de Euler. ====&lt;br /&gt;
Se exponen en este apartados dos tipos de aproximaciones de Euler.&lt;br /&gt;
&lt;br /&gt;
Este método se basa en la posibilidad de aproximar una función original mediante rectas tangentes partiendo de un punto dado. Sabiendo que la recta tangente de una función en un punto es la derivada en dicho punto, este método consiste en calcular derivadas de la función en diferentes puntos pertenecientes a ella. Estos puntos serán tomados con la misma distancia a lo largo de la recta, a esta distancia la denominamos paso de discretización. &lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Image:Euler.png|300px|thumb|center|Aproximación de una función por el método de Euler]]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===== Euler Explícito. =====&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
%utt-uxx=0&lt;br /&gt;
%u(0,t)=u(l,t)=0&lt;br /&gt;
%u(x,0)=2-abs(0.4x-2)&lt;br /&gt;
%ut(x,0)=0&lt;br /&gt;
clear all&lt;br /&gt;
L=10;&lt;br /&gt;
T=40;&lt;br /&gt;
h=0.1;&lt;br /&gt;
N=L/h;&lt;br /&gt;
x=0:h:L;&lt;br /&gt;
xint=h:h:L-h;&lt;br /&gt;
dt=h;&lt;br /&gt;
t=0:dt:T;&lt;br /&gt;
K=2*diag(ones(1,N-1))-diag(ones(1,N-2),-1)-diag(ones(1,N-2),1);&lt;br /&gt;
K=K/h^2;&lt;br /&gt;
F=zeros(N-1,1);&lt;br /&gt;
u0=2-abs((xint*2/5-2))';&lt;br /&gt;
v0=zeros(N-1,1);&lt;br /&gt;
M=[zeros(N-1),eye(N-1);-K,zeros(N-1)];&lt;br /&gt;
G=[zeros(N-1,1);F];&lt;br /&gt;
W0=[u0;v0];&lt;br /&gt;
WW=W0;&lt;br /&gt;
sol=zeros(length(t),N+1);&lt;br /&gt;
sol(1,:)=[0,W0(1:N-1)',0];&lt;br /&gt;
for j=1:length(t)-1&lt;br /&gt;
    WW=WW+dt*M*WW;&lt;br /&gt;
    sol(j+1,:)=[0,WW(1:N-1)',0];&lt;br /&gt;
end&lt;br /&gt;
[xx,tt]=meshgrid(x,t);&lt;br /&gt;
surf(xx,tt,sol);}}&lt;br /&gt;
===== Euler Modificado. =====&lt;br /&gt;
&lt;br /&gt;
Este método se basa en la misma idea que el anterior, pero hace un refinamiento en la aproximación, tomando un promedio entre las pendientes pues esto parece más razonable para la obtención de un valor más preciso.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
%utt-uxx=0&lt;br /&gt;
%u(0,t)=u(l,t)=0&lt;br /&gt;
%u(x,0)=2-abs(0.4x-2)&lt;br /&gt;
%ut(x,0)=0&lt;br /&gt;
clear all&lt;br /&gt;
L=10;&lt;br /&gt;
T=40;&lt;br /&gt;
h=0.1;&lt;br /&gt;
N=L/h;&lt;br /&gt;
x=0:h:L;&lt;br /&gt;
xint=h:h:L-h;&lt;br /&gt;
dt=h;&lt;br /&gt;
t=0:dt:T;&lt;br /&gt;
K=2*diag(ones(1,N-1))-diag(ones(1,N-2),-1)-diag(ones(1,N-2),1);&lt;br /&gt;
K=K/h^2;&lt;br /&gt;
F=zeros(N-1,1);&lt;br /&gt;
u0=2-abs((xint*2/5-2))';&lt;br /&gt;
v0=zeros(N-1,1);&lt;br /&gt;
M=[zeros(N-1),eye(N-1);-K,zeros(N-1)];&lt;br /&gt;
G=[zeros(N-1,1);F];&lt;br /&gt;
W0=[u0;v0];&lt;br /&gt;
WW=W0;&lt;br /&gt;
sol=zeros(length(t),N+1);&lt;br /&gt;
sol(1,:)=[0,W0(1:N-1)',0];&lt;br /&gt;
for j=1:length(t)-1&lt;br /&gt;
    k1=M*WW;&lt;br /&gt;
    WW=(eye(2*N-2)+dt*M/2)*WW+(dt/2)*k1+(dt^2)*M*k1/2;&lt;br /&gt;
    sol(j+1,:)=[0,WW(1:N-1)',0];&lt;br /&gt;
end&lt;br /&gt;
[xx,tt]=meshgrid(x,t);&lt;br /&gt;
surf(xx,tt,sol);}}&lt;br /&gt;
&lt;br /&gt;
Antes de comentar las dos gráficas anteriores se debe comentar que el orden de precisión del método de Euler es 1, por tanto, este método será menos preciso que el método del trapecio.&lt;br /&gt;
&lt;br /&gt;
Además de ya haber comentado anteriormente que Euler modificado se basa en mejorar la aproximación mediante el método de Euler sencillo, fijándonos en las gráficas podemos observar que la gráfica obtenida mediante el método de Euler modificado realiza una mejor aproximación y se asemeja mejor a la gráfica obtenida mediante el método del trapecio que la gráfica obtenida mediante Euler.&lt;br /&gt;
&lt;br /&gt;
==== Aproximación por Fourier con diferentes términos de series. ====&lt;br /&gt;
En este apartado se ofrece una aproximación alternativa a las anteriores. Se muestran '''cinco iteraciones''' distintas del '''método del Fourier''' que se compararan entre sí y con los métodos anteriores, Trapecio y Euler. Este método de aproximación depende del número de términos de serie (lo denominamos con la letra Q) con los que se realice el programa de Fourier.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br/&amp;gt;&lt;br /&gt;
Puesto que la realización de este método es la misma sea cual sea el número de serie elegido, se han expuesto únicamente dos casos de Q para una mayor claridad del programa.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo= %utt-uxx=0&lt;br /&gt;
%u(0,t)=u(l,t)=0&lt;br /&gt;
%u(x,0)=2-abs(0.4x-2)&lt;br /&gt;
%ut(x,0)=0&lt;br /&gt;
&lt;br /&gt;
%1 iteracion&lt;br /&gt;
clear all&lt;br /&gt;
L=10;&lt;br /&gt;
T=40;&lt;br /&gt;
Q=1;&lt;br /&gt;
h=0.1;&lt;br /&gt;
N=L/h;&lt;br /&gt;
x=0:h:L;&lt;br /&gt;
dt=h;&lt;br /&gt;
t=0:dt:T;&lt;br /&gt;
sol=zeros(length(t),N+1);&lt;br /&gt;
for k=1:Q&lt;br /&gt;
    phi=sin(k/L*pi*x);&lt;br /&gt;
    a=trapz(x,(2-abs(2/5*x-2)).*phi)/(trapz(x,phi.^2));&lt;br /&gt;
    b=0;&lt;br /&gt;
    T=a.*cos(k*pi*t/L);&lt;br /&gt;
    sol=sol+T'*phi;&lt;br /&gt;
end&lt;br /&gt;
[xx,tt]=meshgrid(x,t);&lt;br /&gt;
figure (1)&lt;br /&gt;
surf(xx,tt,sol)&lt;br /&gt;
xlabel('Desplazamiento horizontal');&lt;br /&gt;
ylabel('Tiempo');&lt;br /&gt;
zlabel('Desplazamiento vertical');&lt;br /&gt;
&lt;br /&gt;
%3 iteracion&lt;br /&gt;
clear all&lt;br /&gt;
L=10;&lt;br /&gt;
T=40;&lt;br /&gt;
Q=3;&lt;br /&gt;
h=0.1;&lt;br /&gt;
N=L/h;&lt;br /&gt;
x=0:h:L;&lt;br /&gt;
dt=h;&lt;br /&gt;
t=0:dt:T;&lt;br /&gt;
sol=zeros(length(t),N+1);&lt;br /&gt;
for k=1:Q&lt;br /&gt;
    phi=sin(k/L*pi*x);&lt;br /&gt;
    a=trapz(x,(2-abs(2/5*x-2)).*phi)/(trapz(x,phi.^2));&lt;br /&gt;
    b=0;&lt;br /&gt;
    T=a.*cos(k*pi*t/L);&lt;br /&gt;
    sol=sol+T'*phi;&lt;br /&gt;
end&lt;br /&gt;
[xx,tt]=meshgrid(x,t);&lt;br /&gt;
figure (2)&lt;br /&gt;
surf(xx,tt,sol)&lt;br /&gt;
xlabel('Desplazamiento horizontal');&lt;br /&gt;
ylabel('Tiempo');&lt;br /&gt;
zlabel('Desplazamiento vertical');}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br/&amp;gt;&lt;br /&gt;
[[Image:81tF2.jpg|525px|thumb|left|Aproximación por el método del Trapecio con un término de serie.]]&lt;br /&gt;
[[Image:82tF.jpg|525px|thumb|center|Aproximación por el método del Trapecio con tres términos de serie.]]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br/&amp;gt; &lt;br /&gt;
&lt;br /&gt;
[[Image:83tF.jpg|525px|thumb|left|Aproximación por el método del Trapecio con cinco términos de serie.]]&lt;br /&gt;
[[Image:84tF.jpg|525px|thumb|center|Aproximación por el método del Trapecio con diez términos de serie.]]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Image:85tF.jpg|525px|thumb|center|Aproximación por el método del Trapecio con veinte términos de serie.]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
En este método podemos observar fijándonos en las gráficas que a mayor número de términos (mayor Q), mayor es la aproximación obtenida y más estable.&lt;br /&gt;
&lt;br /&gt;
Realizando una comparación con los otros métodos, se puede observar, fijándonos en las gráficas y en los órdenes de precisión, que el método que mejor aproxima  la ecuación del problema es el método del trapecio, seguido de Euler modificado y, por último, Euler, teniendo mayor orden el que mejor aproxima la función.&lt;br /&gt;
&lt;br /&gt;
Gráficamente podemos confirmar este hecho, dándonos cuenta que las gráficas más similares son fourier con Q=20 y el método del trapecio.&lt;br /&gt;
&lt;br /&gt;
== Energía del Cable. ==&lt;br /&gt;
&lt;br /&gt;
La energía del cable que viene definida por la función: &lt;br /&gt;
\begin{equation}&lt;br /&gt;
E(t) = \int_{0}^{L} (u_{t}^{2}(x,t)+ u_{x}^{2}(x,t)) \cdot dx&lt;br /&gt;
\end{equation}&lt;br /&gt;
&lt;br /&gt;
El método utilizado en el desarrollo numérico de está expresión es el '''método de diferencias finitas'''&lt;br /&gt;
(Funciona calculando de manera aproximada las soluciones a las ecuaciones diferenciales usando ecuaciones diferenciales finitas para aproximar derivadas.).&lt;br /&gt;
&lt;br /&gt;
'''FUNCIÓN:'''&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
function v = deriva(x,y,t)&lt;br /&gt;
&lt;br /&gt;
n = length(x);&lt;br /&gt;
del=zeros(1,n);&lt;br /&gt;
&lt;br /&gt;
if t==1&lt;br /&gt;
    &lt;br /&gt;
    i=1;&lt;br /&gt;
    del(1)=(y(i)-y(i+1))/(-x(i)+x(i+1));&lt;br /&gt;
&lt;br /&gt;
    for i=2:n&lt;br /&gt;
    del(i)=(y(i)-y(i-1))/(x(i)-x(i-1));&lt;br /&gt;
    end &lt;br /&gt;
    &lt;br /&gt;
elseif t==-1&lt;br /&gt;
&lt;br /&gt;
    for i=1:n-1&lt;br /&gt;
    del(i)=(y(i)-y(i+1))/(x(i)-x(i+1));&lt;br /&gt;
    end &lt;br /&gt;
    &lt;br /&gt;
    i=n;&lt;br /&gt;
    del(i)=(y(i)-y(i-1))/(x(i)-x(i-1));&lt;br /&gt;
    &lt;br /&gt;
elseif t==0&lt;br /&gt;
    &lt;br /&gt;
    i=1;&lt;br /&gt;
    del(1)=(y(i)-y(i+1))/(+x(i)-x(i+1));&lt;br /&gt;
    &lt;br /&gt;
    for i=2:n-1&lt;br /&gt;
    del(i)=(y(i+1)-y(i-1))/(2*(x(i)-x(i-1)));&lt;br /&gt;
    end &lt;br /&gt;
    &lt;br /&gt;
    i=n;&lt;br /&gt;
    del(n)=(y(i)-y(i-1))/(x(i)-x(i-1));  &lt;br /&gt;
    &lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
v=del;&lt;br /&gt;
&lt;br /&gt;
end&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''PROGRAMA:'''&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
clc;clear all;&lt;br /&gt;
L=10;dx=0.1;N=L/dx;&lt;br /&gt;
x=dx:dx:L-dx;&lt;br /&gt;
xtot=0:dx:L;&lt;br /&gt;
T=40;dt=0.1;t=0:dt:T;&lt;br /&gt;
K=2*diag(ones(1,N-1))-diag(ones(1,N-2),1)-diag(ones(1,N-2),-1);&lt;br /&gt;
K=(1/dx^2)*K;&lt;br /&gt;
U=(2-abs((x*2/5-2)))';&lt;br /&gt;
V=(0*x)';&lt;br /&gt;
sol(1,:)=[0 U' 0];&lt;br /&gt;
for i=1:length(t)-1;&lt;br /&gt;
    U=U+dt*V;&lt;br /&gt;
    V=V-dt*K*U;&lt;br /&gt;
    sol(i+1,:)=[0 U' 0];&lt;br /&gt;
end&lt;br /&gt;
%DERIVAMOS LA SOLUCION EN x Y EN t:&lt;br /&gt;
dsol_dx=ones(size(sol));&lt;br /&gt;
for i=1:length(t)&lt;br /&gt;
    dsol_dx(i,:)=deriva(sol(i,:),xtot,0);&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
dsol_dt=ones(size(sol));&lt;br /&gt;
for i=1:length(xtot)&lt;br /&gt;
    dsol_dt(:,i)=deriva(sol(:,i),t,1); &lt;br /&gt;
end&lt;br /&gt;
%SUMAMOS LAS DERIVADAS AL CUADRADO E INTEGRAMOS:&lt;br /&gt;
dE=zeros(1,size(t,1));&lt;br /&gt;
for i=1:length(xtot)&lt;br /&gt;
    dE=dE+(dsol_dt(i,:).^2+dsol_dx(i,:).^2)*dx;&lt;br /&gt;
end&lt;br /&gt;
xtot=0:dx:L;&lt;br /&gt;
[xx,tt]=meshgrid(xtot,t);&lt;br /&gt;
figure(1)&lt;br /&gt;
surf(xx,tt,dsol_dx);&lt;br /&gt;
figure(2)&lt;br /&gt;
surf(xx,tt,dsol_dt);&lt;br /&gt;
plot(dE,t)&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
El resultado habría de ser una gráfica que representase la evolución de la energía de la cuerda frente al transcurso del tiempo. No obstante, en nuestra resolución aparece una gráfica en blanco que ajudicamos o a un posible error en el código, o que podemos interpretar como que la energía tiende a infinito.&lt;br /&gt;
&lt;br /&gt;
== Aplicaciones. ==&lt;br /&gt;
&lt;br /&gt;
==== Sumersión en un medio viscoso. ====&lt;br /&gt;
&lt;br /&gt;
Suponemos ahora la inmersión del cable en una medio viscoso. Este medio viscoso produce un amortiguamiento en el movimiento del cable, con lo que la anterior ecuación diferencial se convertiría en &lt;br /&gt;
\begin{equation}&lt;br /&gt;
u_{tt}-u_{xx}+au_{t}=0&lt;br /&gt;
\end{equation} &lt;br /&gt;
, siendo '''&amp;lt;math&amp;gt; a  &amp;lt;/math&amp;gt;''' una constante de amortiguamiento propia del medio viscoso.&lt;br /&gt;
Puesto que la función '''&amp;lt;math&amp;gt; u(x,t)  &amp;lt;/math&amp;gt;''' se ve afectada ahora por el medio viscoso, y más directamente, por la constante '''&amp;lt;math&amp;gt; a  &amp;lt;/math&amp;gt;''' que actúa en su nombre, la energía del cable ,que se expresaba como una integral en función de '''&amp;lt;math&amp;gt; u(x,t)  &amp;lt;/math&amp;gt;''' también se va a ver afectada:&lt;br /&gt;
\begin{equation}&lt;br /&gt;
E(t) = \int_{0}^{L} (u_{t}^{2}(x,t)+ u_{x}^{2}(x,t)) \cdot dx&lt;br /&gt;
\end{equation}&lt;br /&gt;
&lt;br /&gt;
El obetivo del siguiente código será hallar una representación de la evolución de la energía en función del tiempo a raíz de la modificación de la función '''&amp;lt;math&amp;gt; u(x,t)  &amp;lt;/math&amp;gt;'''. Para ello asignaremos distintos valores a la constante '''&amp;lt;math&amp;gt; a  &amp;lt;/math&amp;gt;'''. Éstos van a ser:&lt;br /&gt;
'''&amp;lt;math&amp;gt; a=0  &amp;lt;/math&amp;gt;''' (la energía para este valor resultará igual que la hallada en el apartado anterior)&lt;br /&gt;
'''&amp;lt;math&amp;gt; a=1  &amp;lt;/math&amp;gt;'''&lt;br /&gt;
'''&amp;lt;math&amp;gt; a=4  &amp;lt;/math&amp;gt;'''&lt;br /&gt;
'''&amp;lt;math&amp;gt; a=10  &amp;lt;/math&amp;gt;'''&lt;br /&gt;
''&amp;lt;math&amp;gt; a=100  &amp;lt;/math&amp;gt;'''&lt;br /&gt;
&lt;br /&gt;
El procedimiento numérico volverá a seguir el método de '''diferencias finitas''':&lt;br /&gt;
&lt;br /&gt;
'''PROGRAMA:'''&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
clc;clear all;close all;&lt;br /&gt;
%Datos&lt;br /&gt;
dx=0.1;L=10;&lt;br /&gt;
dt=0.001;NT=40;&lt;br /&gt;
A=[0,1,4,10,100];&lt;br /&gt;
x=0:dx:L;&lt;br /&gt;
t=0:dt:NT;&lt;br /&gt;
ENE=zeros(5,length(t));&lt;br /&gt;
&lt;br /&gt;
%Condición de contorno: U(0,t)=U(L,t)=0;&lt;br /&gt;
&lt;br /&gt;
for k=1:5&lt;br /&gt;
&lt;br /&gt;
%Vector solución y derivada temporal de la solución&lt;br /&gt;
%t=0&amp;lt;&amp;gt;T(1) es donde se guardan las condiciones iniciales&lt;br /&gt;
&lt;br /&gt;
U=zeros(length(t),length(x));&lt;br /&gt;
Dt_U=zeros(length(t),length(x));&lt;br /&gt;
Dx_U=zeros(length(t),length(x));    &lt;br /&gt;
&lt;br /&gt;
%Condición inicial: Estiramos 2 m del centro&lt;br /&gt;
%Modelizado como dos rectas antisimétricas que se cortan en x=5 y&lt;br /&gt;
%sujetas en x=0 y x=L.&lt;br /&gt;
&lt;br /&gt;
U(1,:)=2*sin(x*pi/L);&lt;br /&gt;
Dt_U(1,:)=zeros(1,length(x))';&lt;br /&gt;
D2t_U=Ecuacion5(U(1,:),x,-1);&lt;br /&gt;
&lt;br /&gt;
%Inicio del esquema numérico&lt;br /&gt;
%empieza en 2 ya que el 1 es la cond. inicial&lt;br /&gt;
&lt;br /&gt;
%ESQUEMA NEWMARK&lt;br /&gt;
&lt;br /&gt;
 for i=2:length(t)&lt;br /&gt;
    iter=[k,i]&lt;br /&gt;
    Ua=U(i-1,:);&lt;br /&gt;
    Dt_Ua=Dt_U(i-1,:);&lt;br /&gt;
    D2t_Ua=D2t_U;&lt;br /&gt;
    %Derivada segunda respecto del tiempo en el instante t, se obtiene de&lt;br /&gt;
    %eq. diferencial u_tt=f(x,u,u_x,u_xx)&lt;br /&gt;
    D2t_U=Ecuacion5(U(i-1,:),x,t(i))-A(k)*Dt_Ua;&lt;br /&gt;
    %Derivada primera&lt;br /&gt;
    Dt_U(i,:)=Dt_Ua+0.5*dt*(D2t_Ua+D2t_U);&lt;br /&gt;
    %Ecuacion&lt;br /&gt;
    U(i,:) = Ua+Dt_Ua*dt+(1/6)*(D2t_Ua+D2t_U)*dt^2;&lt;br /&gt;
 end&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 %ENERGIA&lt;br /&gt;
 for i=1:length(t)&lt;br /&gt;
    Dx_U(i,:)=deriva(x,U(i,:),0);&lt;br /&gt;
 end&lt;br /&gt;
dE=zeros(length(t),1);&lt;br /&gt;
for i=1:length(x)&lt;br /&gt;
    dE=dE+(Dt_U(:,i).^2+Dx_U(:,i).^2)*dx;&lt;br /&gt;
end&lt;br /&gt;
 ENE(k,:)=dE;&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
 figure(1)&lt;br /&gt;
 hold on&lt;br /&gt;
 grid&lt;br /&gt;
 aa=find(x==L/4);&lt;br /&gt;
 ab=find(x==3*L/4);&lt;br /&gt;
 legend('A=0','A=1','A=4','A=10','A=100');&lt;br /&gt;
 plot(t,ENE(1,:),t,ENE(2,:),t,ENE(3,:),t,ENE(4,:),t,ENE(5,:));&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''FUNCIONES:'''&lt;br /&gt;
DERIVA:&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
function v = deriva(x,y,t)&lt;br /&gt;
n = length(x);&lt;br /&gt;
del=zeros(1,n);&lt;br /&gt;
if t==1&lt;br /&gt;
    i=1;&lt;br /&gt;
    del(1)=(y(i)-y(i+1))/(-x(i)+x(i+1));&lt;br /&gt;
    for i=2:n&lt;br /&gt;
    del(i)=(y(i)-y(i-1))/(x(i)-x(i-1));&lt;br /&gt;
    end &lt;br /&gt;
elseif t==-1&lt;br /&gt;
    for i=1:n-1&lt;br /&gt;
    del(i)=(y(i)-y(i+1))/(x(i)-x(i+1));&lt;br /&gt;
    end &lt;br /&gt;
    i=n;&lt;br /&gt;
    del(i)=(y(i)-y(i-1))/(x(i)-x(i-1));&lt;br /&gt;
elseif t==0&lt;br /&gt;
    i=1;&lt;br /&gt;
    del(1)=(y(i)-y(i+1))/(+x(i)-x(i+1));&lt;br /&gt;
    for i=2:n-1&lt;br /&gt;
    del(i)=(y(i+1)-y(i-1))/(2*(x(i)-x(i-1)));&lt;br /&gt;
    end &lt;br /&gt;
    i=n;&lt;br /&gt;
    del(n)=(y(i)-y(i-1))/(x(i)-x(i-1));  &lt;br /&gt;
end&lt;br /&gt;
v=del;&lt;br /&gt;
end&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
'''ECUACIÓN 5:'''&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
function [ V ] = Ecuacion5( u,x,t )&lt;br /&gt;
%se guarda aquí la ecuación diferencial del tipo u_tt=f(x,u,u_x,u_xx)&lt;br /&gt;
%INCLUIDAS LAS CC AQUÍ&lt;br /&gt;
%PARA u_tt=u_xx&lt;br /&gt;
%CC: u(0,t)=u(L,t)=0;&lt;br /&gt;
&lt;br /&gt;
Ax=x(2)-x(1);&lt;br /&gt;
n=length(u);&lt;br /&gt;
V=zeros(1,n);&lt;br /&gt;
&lt;br /&gt;
%Las condiciones de contorno vienen en x(1)=0 y x(Nx)=L&lt;br /&gt;
u(1)=0;&lt;br /&gt;
&lt;br /&gt;
if(t==-1)&lt;br /&gt;
    u(n)=0;&lt;br /&gt;
else&lt;br /&gt;
    u(n)=0;&lt;br /&gt;
    %u(n)=sin(2*pi*F0*t);&lt;br /&gt;
    %u(n)=(1/(b*Ax-1))*u(n-1);&lt;br /&gt;
end&lt;br /&gt;
for i=2:n-1&lt;br /&gt;
    &lt;br /&gt;
    V(i)=(1/Ax^2)*(u(i+1)-2*u(i)+u(i-1));&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
i=1;&lt;br /&gt;
V(i)=(1/Ax^2)*(u(i+2)-2*u(i+1));&lt;br /&gt;
i=n;&lt;br /&gt;
V(i)=(1/Ax^2)*(u(i)-2*u(i-1)+u(i-2));&lt;br /&gt;
end&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
La gráfica buscada es:&lt;br /&gt;
[[Archivo:Graficadelaenergiaenunmedioviscoso.png|700px|thumb|centre|Gráfica de la energía(ordenadas) del cable respecto del tiempo (Abcisas).]]&lt;br /&gt;
En la gráfica se aprecian cuatro curvas de distintos colores correspondientes a '''&amp;lt;math&amp;gt; a=0  &amp;lt;/math&amp;gt;''','''&amp;lt;math&amp;gt; a=1  &amp;lt;/math&amp;gt;''','''&amp;lt;math&amp;gt; a=4  &amp;lt;/math&amp;gt;''','''&amp;lt;math&amp;gt; a=10  &amp;lt;/math&amp;gt;''',''&amp;lt;math&amp;gt; a=100  &amp;lt;/math&amp;gt;'''.&lt;br /&gt;
&lt;br /&gt;
Como podemos apreciar el valor de la energía disminuye a medida que aumentamos el valor de &amp;quot;a&amp;quot;. Esto es debido a que &amp;quot;a&amp;quot; define el coeficiente de amortiguamiento del líquido en el cual se encuentra la cuerda. Luego, dicha disminución de energía se produce por la disipación en el medio de gran parte de la energía inicial.&lt;br /&gt;
&lt;br /&gt;
==== Sujeción a una estructura de vibración periódica. ====&lt;br /&gt;
&lt;br /&gt;
En este caso supondremos que el extremo derecho que sujeta el cable está sometido a una vibración periódica de frecuencia  &amp;lt;math&amp;gt; F_0 &amp;lt;/math&amp;gt; [Herzios]. Al haber una vibración externa que afecta directamente al cable la expresión de su movimiento y, por consecuencia, de su energía, se va a ver modificada. Nosotros incluiremos esta modificación en la función &amp;lt;math&amp;gt; f(t) &amp;lt;/math&amp;gt; de problema de valor inicial que venimos tratando. Esta función va a pasar a ser: &lt;br /&gt;
\begin{equation}&lt;br /&gt;
f(t)= sin(2 \pi F_0t)&lt;br /&gt;
\end{equation}&lt;br /&gt;
&lt;br /&gt;
El objetivo será el de ver cómo afecta esta alteración en el desarrollo de la energía del cable frente al tiempo.&lt;br /&gt;
Para nuestro cálculo numérico especificaremos para las siguientes situaciones:&lt;br /&gt;
En primer lugar, para: &amp;lt;math&amp;gt; F_0= \frac{1}{L} + 0,01 &amp;lt;/math&amp;gt;&lt;br /&gt;
Después,para: &amp;lt;math&amp;gt; F_0= \frac{1}{L} - 0,01 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Y para finalizar, lo estudiaremos en un intervalo de tiempo de '''t=0''' hasta '''t=60''' : &amp;lt;math&amp;gt;t \in (0,60)&amp;lt;/math&amp;gt; [segundos].&lt;br /&gt;
&lt;br /&gt;
El código matemático para matlab / octave:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''PROGRAMA:'''&lt;br /&gt;
{{matlab|codigo= &lt;br /&gt;
clc;clear all;close all;&lt;br /&gt;
&lt;br /&gt;
%Datos&lt;br /&gt;
&lt;br /&gt;
dx=0.1;L=10;dt=0.0001;NT=60;&lt;br /&gt;
A=[0,1,4,10,100];&lt;br /&gt;
x=0:dx:L;t=0:dt:NT;&lt;br /&gt;
ENE=zeros(5,length(t));&lt;br /&gt;
&lt;br /&gt;
%Condición de contorno: U(0,t)=U(L,t)=0;&lt;br /&gt;
for k=1&lt;br /&gt;
%Vector solución y derivada temporal de la solución&lt;br /&gt;
%t=0&amp;lt;&amp;gt;T(1) es donde se guardan las condiciones iniciales&lt;br /&gt;
&lt;br /&gt;
U=zeros(length(t),length(x));&lt;br /&gt;
Dt_U=zeros(length(t),length(x));&lt;br /&gt;
Dx_U=zeros(length(t),length(x));&lt;br /&gt;
&lt;br /&gt;
%Condición inicial: Estiramos 2 m del centro&lt;br /&gt;
%Modelizado como dos rectas antisimétricas que se cortan en x=5 y&lt;br /&gt;
%sujetas en x=0 y x=L.&lt;br /&gt;
&lt;br /&gt;
U(1,:)=2*sin(x*pi/L);&lt;br /&gt;
Dt_U(1,:)=zeros(1,length(x))';&lt;br /&gt;
D2t_U=Ecuacion6(U(1,:),x,-1);&lt;br /&gt;
&lt;br /&gt;
%Inicio del esquema numérico&lt;br /&gt;
%empieza en 2 ya que el 1 es la cond. inicial&lt;br /&gt;
&lt;br /&gt;
%ESQUEMA NEWMARK&lt;br /&gt;
&lt;br /&gt;
 for i=2:length(t)&lt;br /&gt;
    iter=[k,i]&lt;br /&gt;
    Ua=U(i-1,:);&lt;br /&gt;
    Dt_Ua=Dt_U(i-1,:);&lt;br /&gt;
    D2t_Ua=D2t_U;&lt;br /&gt;
    %Derivada segunda respecto del tiempo en el instante t, se obtiene de&lt;br /&gt;
    %eq. diferencial u_tt=f(x,u,u_x,u_xx)&lt;br /&gt;
    D2t_U=Ecuacion6(U(i-1,:),x,t(i))-A(k)*Dt_Ua;&lt;br /&gt;
    %Derivada primera&lt;br /&gt;
    Dt_U(i,:)=Dt_Ua+0.5*dt*(D2t_Ua+D2t_U);&lt;br /&gt;
    %Ecuacion&lt;br /&gt;
    U(i,:) = Ua+Dt_Ua*dt+(1/6)*(D2t_Ua+D2t_U)*dt^2;&lt;br /&gt;
 end&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 %ENERGIA&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 for i=1:length(t)&lt;br /&gt;
    Dx_U(i,:)=deriva(x,U(i,:),0);&lt;br /&gt;
 end&lt;br /&gt;
dE=zeros(length(t),1);&lt;br /&gt;
for i=1:length(x)&lt;br /&gt;
    dE=dE+(Dt_U(:,i).^2+Dx_U(:,i).^2)*dx;&lt;br /&gt;
end&lt;br /&gt;
 ENE(k,:)=dE;&lt;br /&gt;
end&lt;br /&gt;
 figure(1)&lt;br /&gt;
 hold on&lt;br /&gt;
 grid&lt;br /&gt;
 aa=find(x==L/4);&lt;br /&gt;
 ab=find(x==3*L/4);&lt;br /&gt;
 imagesc(U)&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''FUNCIONES:'''&lt;br /&gt;
&lt;br /&gt;
DERIVA:&lt;br /&gt;
{{matlab|codigo= &lt;br /&gt;
function v = deriva(x,y,t)&lt;br /&gt;
n = length(x);&lt;br /&gt;
del=zeros(1,n);&lt;br /&gt;
if t==1&lt;br /&gt;
    i=1;&lt;br /&gt;
    del(1)=(y(i)-y(i+1))/(-x(i)+x(i+1));&lt;br /&gt;
    for i=2:n&lt;br /&gt;
    del(i)=(y(i)-y(i-1))/(x(i)-x(i-1));&lt;br /&gt;
    end &lt;br /&gt;
elseif t==-1&lt;br /&gt;
    for i=1:n-1&lt;br /&gt;
    del(i)=(y(i)-y(i+1))/(x(i)-x(i+1));&lt;br /&gt;
    end &lt;br /&gt;
    i=n;&lt;br /&gt;
    del(i)=(y(i)-y(i-1))/(x(i)-x(i-1));&lt;br /&gt;
elseif t==0&lt;br /&gt;
    i=1;&lt;br /&gt;
    del(1)=(y(i)-y(i+1))/(+x(i)-x(i+1));&lt;br /&gt;
    for i=2:n-1&lt;br /&gt;
    del(i)=(y(i+1)-y(i-1))/(2*(x(i)-x(i-1)));&lt;br /&gt;
    end &lt;br /&gt;
    i=n;&lt;br /&gt;
    del(n)=(y(i)-y(i-1))/(x(i)-x(i-1));  &lt;br /&gt;
end&lt;br /&gt;
v=del;&lt;br /&gt;
end&lt;br /&gt;
}}&lt;br /&gt;
'''ECUACIÓN 6:'''&lt;br /&gt;
&lt;br /&gt;
function [ V ] = Ecuacion6( u,x,t )&lt;br /&gt;
{{matlab|codigo= &lt;br /&gt;
&lt;br /&gt;
%se guarda aquí la ecuación diferencial del tipo u_tt=f(x,u,u_x,u_xx)&lt;br /&gt;
%INCLUIDAS LAS CC AQUÍ!&lt;br /&gt;
%PARA u_tt=u_xx&lt;br /&gt;
%CC: u(0,t)=u(L,t)=0;&lt;br /&gt;
&lt;br /&gt;
Ax=x(2)-x(1);&lt;br /&gt;
n=length(u);&lt;br /&gt;
V=zeros(1,n);&lt;br /&gt;
F0=(1/x(n))+0.01;&lt;br /&gt;
b=-2;&lt;br /&gt;
&lt;br /&gt;
%Las condiciones de contorno vienen en x(1)=0 y x(Nx)=L&lt;br /&gt;
&lt;br /&gt;
u(1)=0;&lt;br /&gt;
if(t==-1)&lt;br /&gt;
    u(n)=0;&lt;br /&gt;
else&lt;br /&gt;
    %u(n)=0;&lt;br /&gt;
    u(n)=sin(2*pi*F0*t);&lt;br /&gt;
    %u(n)=(1/(b*Ax-1))*u(n-1);&lt;br /&gt;
end&lt;br /&gt;
for i=2:n-1&lt;br /&gt;
    V(i)=(1/Ax^2)*(u(i+1)-2*u(i)+u(i-1));&lt;br /&gt;
end&lt;br /&gt;
i=1;&lt;br /&gt;
V(i)=(1/Ax^2)*(u(i+2)-2*u(i+1));&lt;br /&gt;
i=n;&lt;br /&gt;
V(i)=(1/Ax^2)*(u(i)-2*u(i-1)+u(i-2));&lt;br /&gt;
end&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:6.1.png|700px|thumb|centre|Gráfica en tres dimensiones de la energía de un cable cuyo extremo derecho está sometido a una vibración externa periódica para F_0=1/L +0,1]]&lt;br /&gt;
'''function [ V ] = Ecuacion6( u,x,t )'''&lt;br /&gt;
{{matlab|codigo= &lt;br /&gt;
%se guarda aquí la ecuación diferencial del tipo u_tt=f(x,u,u_x,u_xx)&lt;br /&gt;
%INCLUIDAS LAS CC AQUÍ!&lt;br /&gt;
%PARA u_tt=u_xx&lt;br /&gt;
%CC: u(0,t)=u(L,t)=0;&lt;br /&gt;
&lt;br /&gt;
Ax=x(2)-x(1);&lt;br /&gt;
n=length(u);&lt;br /&gt;
V=zeros(1,n);&lt;br /&gt;
F0=(1/x(n))-0.01;&lt;br /&gt;
b=-2;&lt;br /&gt;
&lt;br /&gt;
%Las condiciones de contorno vienen en x(1)=0 y x(Nx)=L&lt;br /&gt;
&lt;br /&gt;
u(1)=0;&lt;br /&gt;
if(t==-1)&lt;br /&gt;
    u(n)=0;&lt;br /&gt;
else&lt;br /&gt;
    %u(n)=0;&lt;br /&gt;
    u(n)=sin(2*pi*F0*t);&lt;br /&gt;
    %u(n)=(1/(b*Ax-1))*u(n-1);&lt;br /&gt;
end&lt;br /&gt;
for i=2:n-1&lt;br /&gt;
    V(i)=(1/Ax^2)*(u(i+1)-2*u(i)+u(i-1));&lt;br /&gt;
end&lt;br /&gt;
i=1;&lt;br /&gt;
V(i)=(1/Ax^2)*(u(i+2)-2*u(i+1));&lt;br /&gt;
i=n;&lt;br /&gt;
V(i)=(1/Ax^2)*(u(i)-2*u(i-1)+u(i-2));&lt;br /&gt;
end&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:6.2.png|700px|thumb|centre|Gráfica en tres dimensiones de la energía de un cable cuyo extremo derecho está sometido a una vibración externa periódica.]]&lt;br /&gt;
&lt;br /&gt;
'''function [ V ] = Ecuacion6( u,x,t )'''&lt;br /&gt;
{{matlab|codigo= &lt;br /&gt;
%se guarda aquí la ecuación diferencial del tipo u_tt=f(x,u,u_x,u_xx)&lt;br /&gt;
%INCLUIDAS LAS CC AQUÍ!&lt;br /&gt;
%PARA u_tt=u_xx&lt;br /&gt;
%CC: u(0,t)=u(L,t)=0;&lt;br /&gt;
&lt;br /&gt;
Ax=x(2)-x(1);&lt;br /&gt;
n=length(u);&lt;br /&gt;
V=zeros(1,n);&lt;br /&gt;
F0=(1/x(n));&lt;br /&gt;
b=-2;&lt;br /&gt;
&lt;br /&gt;
%Las condiciones de contorno vienen en x(1)=0 y x(Nx)=L&lt;br /&gt;
&lt;br /&gt;
u(1)=0;&lt;br /&gt;
if(t==-1)&lt;br /&gt;
    u(n)=0;&lt;br /&gt;
else&lt;br /&gt;
    %u(n)=0;&lt;br /&gt;
    u(n)=sin(2*pi*F0*t);&lt;br /&gt;
    %u(n)=(1/(b*Ax-1))*u(n-1);&lt;br /&gt;
end&lt;br /&gt;
for i=2:n-1&lt;br /&gt;
    V(i)=(1/Ax^2)*(u(i+1)-2*u(i)+u(i-1));&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
i=1;&lt;br /&gt;
V(i)=(1/Ax^2)*(u(i+2)-2*u(i+1));&lt;br /&gt;
i=n;&lt;br /&gt;
V(i)=(1/Ax^2)*(u(i)-2*u(i-1)+u(i-2));&lt;br /&gt;
end&lt;br /&gt;
}}&lt;br /&gt;
 &lt;br /&gt;
La gráfica resultante es la siguiente:&lt;br /&gt;
[[Archivo:6.3.png|700px|thumb|centre|Gráfica en tres dimensiones de la energía de un cable cuyo extremo derecho está sometido a una vibración externa periódica.]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
En dicha gráfica, se puede observar que la forma de la función o la energía se ve alterada por la condición impuesta de tal manera que ésta adquiere una forma también sinusoidal, y que su estabilización dependería del tiempo transcurrido entre vibración y vibración.&lt;br /&gt;
&lt;br /&gt;
==== Sujeción a un aparato que responde a una vibración externa. ====&lt;br /&gt;
&lt;br /&gt;
La siguiente situación que vamos a representar a modelar a través de ecuaciones diferenciales va a ser la siguiente: supondremos que el cable de la anterior situación (que recibía en su extremo derecho una vibración periódica de &amp;lt;math&amp;gt; F_0 &amp;lt;/math&amp;gt; [Herzios])envía una respuesta a la vibración que recibe. Esta situación la vamos a representar como un cambio en la condición de contorno; ésta va a pasar a ser: &amp;lt;math&amp;gt; u_x(L,t)=bu(L,t) &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
El objetivo, de nuevo será representar la evolución de la energía respecto del tiempo y ver si este cambio en el problema se ve reflejado en su representación. &lt;br /&gt;
En el código numérico, no obstante, la situación de &amp;lt;math&amp;gt; u_x(L,t)=bu(L,t) &amp;lt;/math&amp;gt; la vamos a aproximar por la siguiente expresión:&lt;br /&gt;
&amp;lt;math&amp;gt; u_x(L,t)-bu(L,t)  \cong  \frac{u_{N+1}(t)-u_{N-1}(t)}{2h-u_N(t)} &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
En la resolución del problema emplearemos de nuevo la condición inicial de sujetar el cable por el centro y elevarlo 2 m perpendicularmente: &lt;br /&gt;
&amp;lt;math&amp;gt; u(x,0)=g(x)= 2- |\frac{2}{5}x -2| &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Y además obtendremos el resultado para los dos valores siguientes de &amp;lt;math&amp;gt;b&amp;lt;/math&amp;gt; :&lt;br /&gt;
Para &amp;lt;math&amp;gt; b=2 &amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt; b=-2 &amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
El código numérico de matlab/octave es:&lt;br /&gt;
&lt;br /&gt;
'''PROGRAMA:'''&lt;br /&gt;
{{matlab|codigo= &lt;br /&gt;
clc;clear all;close all;&lt;br /&gt;
&lt;br /&gt;
%Datos&lt;br /&gt;
dx=0.1;L=10;dt=0.0001;NT=40;&lt;br /&gt;
A=[0,1,4,10,100];&lt;br /&gt;
x=0:dx:L;t=0:dt:NT;&lt;br /&gt;
ENE=zeros(5,length(t));&lt;br /&gt;
&lt;br /&gt;
%Condición de contorno: U(0,t)=U(L,t)=0;&lt;br /&gt;
for k=1&lt;br /&gt;
&lt;br /&gt;
%Vector solución y derivada temporal de la solución&lt;br /&gt;
%t=0&amp;lt;&amp;gt;T(1) es donde se guardan las condiciones iniciales&lt;br /&gt;
&lt;br /&gt;
U=zeros(length(t),length(x));&lt;br /&gt;
Dt_U=zeros(length(t),length(x));&lt;br /&gt;
Dx_U=zeros(length(t),length(x));    &lt;br /&gt;
&lt;br /&gt;
%Condición inicial: Estiramos 2 m del centro&lt;br /&gt;
%Modelizado como dos rectas antisimétricas que se cortan en x=5 y&lt;br /&gt;
%sujetas en x=0 y x=L.&lt;br /&gt;
&lt;br /&gt;
U(1,:)=2*sin(x*pi/L);&lt;br /&gt;
Dt_U(1,:)=zeros(1,length(x))';&lt;br /&gt;
D2t_U=Ecuacion7(U(1,:),x,-1);&lt;br /&gt;
&lt;br /&gt;
%Inicio del esquema numérico&lt;br /&gt;
%empieza en 2 ya que el 1 es la cond. inicial&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
%ESQUEMA NEWMARK&lt;br /&gt;
 for i=2:length(t)&lt;br /&gt;
    iter=[k,i]&lt;br /&gt;
    Ua=U(i-1,:);&lt;br /&gt;
    Dt_Ua=Dt_U(i-1,:);&lt;br /&gt;
    D2t_Ua=D2t_U;&lt;br /&gt;
&lt;br /&gt;
    %Derivada segunda respecto del tiempo en el instante t, se obtiene de&lt;br /&gt;
    %eq. diferencial u_tt=f(x,u,u_x,u_xx)&lt;br /&gt;
&lt;br /&gt;
    D2t_U=Ecuacion7(U(i-1,:),x,t(i))-A(k)*Dt_Ua;&lt;br /&gt;
&lt;br /&gt;
    %Derivada primera&lt;br /&gt;
    Dt_U(i,:)=Dt_Ua+0.5*dt*(D2t_Ua+D2t_U);&lt;br /&gt;
&lt;br /&gt;
    %Ecuacion&lt;br /&gt;
    U(i,:) = Ua+Dt_Ua*dt+(1/6)*(D2t_Ua+D2t_U)*dt^2;&lt;br /&gt;
 end&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 %ENERGIA&lt;br /&gt;
 for i=1:length(t)&lt;br /&gt;
    Dx_U(i,:)=deriva(x,U(i,:),0);&lt;br /&gt;
 end&lt;br /&gt;
dE=zeros(length(t),1);&lt;br /&gt;
for i=1:length(x)&lt;br /&gt;
    dE=dE+(Dt_U(:,i).^2+Dx_U(:,i).^2)*dx;&lt;br /&gt;
end&lt;br /&gt;
 ENE(k,:)=dE;&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
 figure(1)&lt;br /&gt;
 hold on&lt;br /&gt;
 grid&lt;br /&gt;
 aa=find(x==L/4);&lt;br /&gt;
 ab=find(x==3*L/4);&lt;br /&gt;
 plot(t,ENE(1,:))&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
'''FUNCIONES:'''&lt;br /&gt;
'''function v = deriva(x,y,t)'''&lt;br /&gt;
{{matlab|codigo= &lt;br /&gt;
n = length(x);&lt;br /&gt;
del=zeros(1,n);&lt;br /&gt;
if t==1&lt;br /&gt;
    i=1;&lt;br /&gt;
    del(1)=(y(i)-y(i+1))/(-x(i)+x(i+1));&lt;br /&gt;
    for i=2:n&lt;br /&gt;
    del(i)=(y(i)-y(i-1))/(x(i)-x(i-1));&lt;br /&gt;
    end &lt;br /&gt;
elseif t==-1&lt;br /&gt;
    for i=1:n-1&lt;br /&gt;
    del(i)=(y(i)-y(i+1))/(x(i)-x(i+1));&lt;br /&gt;
    end &lt;br /&gt;
    i=n;&lt;br /&gt;
    del(i)=(y(i)-y(i-1))/(x(i)-x(i-1));&lt;br /&gt;
elseif t==0&lt;br /&gt;
    i=1;&lt;br /&gt;
    del(1)=(y(i)-y(i+1))/(+x(i)-x(i+1));&lt;br /&gt;
    for i=2:n-1&lt;br /&gt;
    del(i)=(y(i+1)-y(i-1))/(2*(x(i)-x(i-1)));&lt;br /&gt;
    end &lt;br /&gt;
    i=n;&lt;br /&gt;
    del(n)=(y(i)-y(i-1))/(x(i)-x(i-1));  &lt;br /&gt;
end&lt;br /&gt;
v=del;&lt;br /&gt;
end&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
'''function [ V ] = Ecuacion7( u,x,t )'''&lt;br /&gt;
{{matlab|codigo= &lt;br /&gt;
%se guarda aquí la ecuación diferencial del tipo u_tt=f(x,u,u_x,u_xx)&lt;br /&gt;
%INCLUIDAS LAS CC AQUÍ!&lt;br /&gt;
%PARA u_tt=u_xx&lt;br /&gt;
%CC: u(0,t)=u(L,t)=0;&lt;br /&gt;
&lt;br /&gt;
Ax=x(2)-x(1);&lt;br /&gt;
n=length(u);&lt;br /&gt;
V=zeros(1,n);&lt;br /&gt;
F0=(1/x(n));&lt;br /&gt;
b=2;&lt;br /&gt;
&lt;br /&gt;
%Las condiciones de contorno vienen en x(1)=0 y x(Nx)=L&lt;br /&gt;
u(1)=0;&lt;br /&gt;
if(t==-1)&lt;br /&gt;
    u(n)=0;&lt;br /&gt;
else&lt;br /&gt;
    %u(n)=0;&lt;br /&gt;
    %u(n)=sin(2*pi*F0*t);&lt;br /&gt;
    u(n)=(1/(b*Ax-1))*u(n-1);&lt;br /&gt;
end&lt;br /&gt;
for i=2:n-1&lt;br /&gt;
    V(i)=(1/Ax^2)*(u(i+1)-2*u(i)+u(i-1));&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
i=1;&lt;br /&gt;
V(i)=(1/Ax^2)*(u(i+2)-2*u(i+1));&lt;br /&gt;
i=n;&lt;br /&gt;
V(i)=(1/Ax^2)*(u(i)-2*u(i-1)+u(i-2));&lt;br /&gt;
end&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:7.1.png|700px|thumb|centre|Gráfica de la energía (ordenadas) de un cable frente al tiempo (abcisas) que recibe una vibración en su extremo derecho y que responde a dicha vibración para b=2. ]]&lt;br /&gt;
'''function [ V ] = Ecuacion7( u,x,t )'''&lt;br /&gt;
{{matlab|codigo= &lt;br /&gt;
%se guarda aquí la ecuación diferencial del tipo u_tt=f(x,u,u_x,u_xx)&lt;br /&gt;
%INCLUIDAS LAS CC AQUÍ!&lt;br /&gt;
%PARA u_tt=u_xx&lt;br /&gt;
%CC: u(0,t)=u(L,t)=0;&lt;br /&gt;
&lt;br /&gt;
Ax=x(2)-x(1);&lt;br /&gt;
n=length(u);&lt;br /&gt;
V=zeros(1,n);&lt;br /&gt;
F0=(1/x(n));&lt;br /&gt;
b=-2;&lt;br /&gt;
&lt;br /&gt;
%Las condiciones de contorno vienen en x(1)=0 y x(Nx)=L&lt;br /&gt;
u(1)=0;&lt;br /&gt;
&lt;br /&gt;
if(t==-1)&lt;br /&gt;
    u(n)=0;&lt;br /&gt;
else&lt;br /&gt;
    %u(n)=0;&lt;br /&gt;
    %u(n)=sin(2*pi*F0*t);&lt;br /&gt;
    u(n)=(1/(b*Ax-1))*u(n-1);&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
for i=2:n-1&lt;br /&gt;
    V(i)=(1/Ax^2)*(u(i+1)-2*u(i)+u(i-1));&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
i=1;&lt;br /&gt;
V(i)=(1/Ax^2)*(u(i+2)-2*u(i+1));&lt;br /&gt;
i=n;&lt;br /&gt;
V(i)=(1/Ax^2)*(u(i)-2*u(i-1)+u(i-2));&lt;br /&gt;
end&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
La imagen resultante es:&lt;br /&gt;
[[Archivo:7.2.png|700px|thumb|centre|Gráfica de la energía (ordenadas) de un cable frente al tiempo (abcisas) que recibe una vibración en su extremo derecho y que responde a dicha vibración para b=-2. ]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
La anterior gráfica muestra el comportamiento de la cuerda como respuesta a la vibración producida en uno de sus extremos así como el movimiento transversal del punto medio al comienzo. Podemos observar el movimiento transversal de cada punto de la cuerda a través de la expresión de la energía, así como que, a medida que transcurre el tiempo, ésta se va estabilizando. La forma de la función recuerda a una función sinusoidal debido a la forma de la condición de contorno impuesta.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Categoría:Ecuaciones Diferentiales]]&lt;br /&gt;
 [[Categoría:ED13/14]]&lt;br /&gt;
 [[Categoría:Trabajos 2013-14]]&lt;/div&gt;</summary>
		<author><name>Lucia Lopez</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Ecuaci%C3%B3n_de_ondas_(grupo_2B)&amp;diff=13174</id>
		<title>Ecuación de ondas (grupo 2B)</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Ecuaci%C3%B3n_de_ondas_(grupo_2B)&amp;diff=13174"/>
				<updated>2014-05-19T21:03:24Z</updated>
		
		<summary type="html">&lt;p&gt;Lucia Lopez: /* Aproximación por Fourier con diferentes términos de series. */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{ TrabajoED | Ecuación de ondas. Grupo 2-B| [[:Categoría:Ecuaciones Diferenciales|Ecuaciones Diferenciales]]|[[:Categoría:ED13/14|Curso 2013-14]]| &lt;br /&gt;
Ignacio Díaz-Caneja Camblor&lt;br /&gt;
&lt;br /&gt;
Alberto Fernández Pérez&lt;br /&gt;
&lt;br /&gt;
Adela González Barbado&lt;br /&gt;
&lt;br /&gt;
Lucia López Sánchez&lt;br /&gt;
&lt;br /&gt;
Araceli Martín Candilejo&lt;br /&gt;
&lt;br /&gt;
Diego Solano López&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
== Modelización de los desplazamientos del Cable. ==&lt;br /&gt;
El problema que se tratará a continuación describe una ecuación de '''tipo hiperbólico''', una '''ecuación de ondas'''.&lt;br /&gt;
Consideramos un '''cable de 10 metros''' de longitud '''sujeto por sus extremos'''. Suponiendo que éste tiene una '''sección pequeña''' respecto a su longitud someteremos al cable a pequeñas vibraciones que estudiaremos con una modelización de la ecuación de ondas. &lt;br /&gt;
Se caracteriza al cable de una masa constante por unidad de volumen, es decir, será '''homogéneo'''. Éste, '''flexible''' a la tracción, únicamente ofrece resistencias en su dirección longitudinal, tangenciales, pero no a esfuerzos de flexión o cortes. Se supone, además, que es '''inextensible''' por lo que será lo suficientemente rígido longitudinalmente como para poder despreciar su extensibilidad.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Con esta modelización se estudiarán las '''pequeñas vibraciones''', desplazamientos transversales, a las que es sometido el cable. Para iniciar el movimiento del cable lo sujetaremos por el centro subiéndolo dos metros, lo que nos proporciona una primera condición inicial determinada por la función g(x), y soltándolo con una velocidad nula. &lt;br /&gt;
&lt;br /&gt;
&amp;lt;br/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Obtenemos la ecuación &amp;lt;math&amp;gt;u_{tt}-u_{xx}=0&amp;lt;/math&amp;gt; , de la cual se puede observar que tanto el '''módulo de la tensión''' como la '''densidad''' son '''constantes''' ya que el '''módulo de la elasticidad''' es constante, &amp;lt;math&amp;gt;c^2=1&amp;lt;/math&amp;gt; . Al ser ésta primera ecuación homogénea deducimos que transversalmente no actúa ninguna fuerza densidad espacial y temporal. Se deduce del enunciado anterior que las condiciones de frontera son '''homogéneas''', &amp;lt;math&amp;gt;u(0,t)=0&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;u(10,t)=0&amp;lt;/math&amp;gt; que nos indican que los extremos del cable no describen ningún tipo de movimiento en todo instante t al no estar sometidos a ningun tipo de fuerza. Finalmente, añadimos al sistema las condiciones iniciales, la primera de ellas, &amp;lt;math&amp;gt;u(x,0)=g(x)= 2- |\frac{2}{5}x -2|&amp;lt;/math&amp;gt;, define el '''movimiento descrito por la onda''' en el instante t=0 en cualquier punto del cable; y la segunda, &amp;lt;math&amp;gt;u_t(x,0)=0&amp;lt;/math&amp;gt;, que la onda parte de una '''velocidad inicial nula'''.&lt;br /&gt;
[[Image:DV.png|300px|thumb|right|Deslizamiento vertical del cable. ]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
\begin{cases}&lt;br /&gt;
&lt;br /&gt;
u_{tt}- u_{xx}=0  \  x∈[0,10] \ t&amp;gt;0\\&lt;br /&gt;
u(0,t)=0\\&lt;br /&gt;
u(10,t)=0\\&lt;br /&gt;
u(x,0)= 2- |\frac{2}{5}x -2|\\&lt;br /&gt;
u_t(x,0)=0&lt;br /&gt;
\end{cases}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
En los siguientes apartados se realizaran aproximaciones del sistema expuesto con tres métodos distintos de los que más tarde se hará una comparativa. Para esto último nos ayudaremos del error por lo que necesitaremos la solución analítica.&lt;br /&gt;
Como el problema consta de condiciones de frontera homogéneas, aplicamos directamente el método de separación de variables para su resolución analítica. &lt;br /&gt;
&amp;lt;br/&amp;gt;&lt;br /&gt;
==== Aproximación por el método del trapecio. ====&lt;br /&gt;
El método del trapecio se basa en aproximar una función integrando. Para ello utilizamos un número N de trapecios (en la imagen inferior hemos aproximado mediante 4 trapecios). Las integrales a resolver para poder poder aproximar una función por este método tendrán la distancia de sus límites de integración constantes para todas las integrales, a esta distancia entre los límites de integración lo llamamos paso. En el desarrollo de este método se supone que la función es continua en el intervalo en que se quiere aproximar.&lt;br /&gt;
&amp;lt;br/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Image:Trapecio.png|300px|thumb|center|Función Y(x), el área bajo la curva, se puede aproximar mediante n trapecios]]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br/&amp;gt;&lt;br /&gt;
{{matlab|codigo= &lt;br /&gt;
%u_tt-u_xx=0&lt;br /&gt;
%u(0,t)=u(l,t)=0&lt;br /&gt;
%u(x,0)=2-abs(0.4x-2)&lt;br /&gt;
%ut(x,0)=0&lt;br /&gt;
clear all&lt;br /&gt;
&lt;br /&gt;
%Datos del problema&lt;br /&gt;
L=10;&lt;br /&gt;
T=40;&lt;br /&gt;
&lt;br /&gt;
%Discretización&lt;br /&gt;
h=0.1;&lt;br /&gt;
N=L/h;&lt;br /&gt;
x=0:h:L;&lt;br /&gt;
xint=h:h:L-h;&lt;br /&gt;
dt=h;&lt;br /&gt;
t=0:dt:T;&lt;br /&gt;
&lt;br /&gt;
%Aprox. de u_xx&lt;br /&gt;
K=2*diag(ones(1,N-1))-diag(ones(1,N-2),-1)-diag(ones(1,N-2),1);&lt;br /&gt;
K=K/h^2;&lt;br /&gt;
F=zeros(N-1,1);&lt;br /&gt;
&lt;br /&gt;
%Posición inicial.&lt;br /&gt;
u0=(2-abs(xint*2/5-2))';&lt;br /&gt;
v0=zeros(N-1,1);&lt;br /&gt;
&lt;br /&gt;
%Aprox. de u_tt&lt;br /&gt;
M=[zeros(N-1),eye(N-1);-K,zeros(N-1)];&lt;br /&gt;
G=[zeros(N-1,1);F];&lt;br /&gt;
&lt;br /&gt;
%Aproximación por el método del Trapecio&lt;br /&gt;
W0=[u0;v0];&lt;br /&gt;
WW=W0;&lt;br /&gt;
sol=zeros(length(t),N+1);&lt;br /&gt;
sol(1,:)=[0,W0(1:N-1)',0];&lt;br /&gt;
for j=1:length(t)-1&lt;br /&gt;
    WW=(eye(2*N-2)-dt/2*M)\(eye(2*N-2)+dt/2*M)*WW;&lt;br /&gt;
    sol(j+1,:)=[0,WW(1:N-1)',0];&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
%Dibujo de la solución&lt;br /&gt;
[xx,tt]=meshgrid(x,t);&lt;br /&gt;
surf(xx,tt,sol);&lt;br /&gt;
xlabel('Desplazamiento horizontal');&lt;br /&gt;
ylabel('Tiempo');&lt;br /&gt;
zlabel('Desplazamiento vertical');}}&lt;br /&gt;
&lt;br /&gt;
[[Image:klklk.jpg|700px|thumb|center|Aproximación por el método del Trapecio.]]&lt;br /&gt;
&lt;br /&gt;
Además de saber que el método del trapecio tiene orden de precisión 2 y, por tanto, es un buen método a la hora de aproximar, gráficamente también podemos observar que este método es bastante preciso.&lt;br /&gt;
&lt;br /&gt;
==== Aproximación por el método de Euler. ====&lt;br /&gt;
Se exponen en este apartados dos tipos de aproximaciones de Euler.&lt;br /&gt;
&lt;br /&gt;
Este método se basa en la posibilidad de aproximar una función original mediante rectas tangentes partiendo de un punto dado. Sabiendo que la recta tangente de una función en un punto es la derivada en dicho punto, este método consiste en calcular derivadas de la función en diferentes puntos pertenecientes a ella. Estos puntos serán tomados con la misma distancia a lo largo de la recta, a esta distancia la denominamos paso de discretización. &lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Image:Euler.png|300px|thumb|center|Aproximación de una función por el método de Euler]]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===== Euler Explícito. =====&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
%utt-uxx=0&lt;br /&gt;
%u(0,t)=u(l,t)=0&lt;br /&gt;
%u(x,0)=2-abs(0.4x-2)&lt;br /&gt;
%ut(x,0)=0&lt;br /&gt;
clear all&lt;br /&gt;
L=10;&lt;br /&gt;
T=40;&lt;br /&gt;
h=0.1;&lt;br /&gt;
N=L/h;&lt;br /&gt;
x=0:h:L;&lt;br /&gt;
xint=h:h:L-h;&lt;br /&gt;
dt=h;&lt;br /&gt;
t=0:dt:T;&lt;br /&gt;
K=2*diag(ones(1,N-1))-diag(ones(1,N-2),-1)-diag(ones(1,N-2),1);&lt;br /&gt;
K=K/h^2;&lt;br /&gt;
F=zeros(N-1,1);&lt;br /&gt;
u0=2-abs((xint*2/5-2))';&lt;br /&gt;
v0=zeros(N-1,1);&lt;br /&gt;
M=[zeros(N-1),eye(N-1);-K,zeros(N-1)];&lt;br /&gt;
G=[zeros(N-1,1);F];&lt;br /&gt;
W0=[u0;v0];&lt;br /&gt;
WW=W0;&lt;br /&gt;
sol=zeros(length(t),N+1);&lt;br /&gt;
sol(1,:)=[0,W0(1:N-1)',0];&lt;br /&gt;
for j=1:length(t)-1&lt;br /&gt;
    WW=WW+dt*M*WW;&lt;br /&gt;
    sol(j+1,:)=[0,WW(1:N-1)',0];&lt;br /&gt;
end&lt;br /&gt;
[xx,tt]=meshgrid(x,t);&lt;br /&gt;
surf(xx,tt,sol);}}&lt;br /&gt;
===== Euler Modificado. =====&lt;br /&gt;
&lt;br /&gt;
Este método se basa en la misma idea que el anterior, pero hace un refinamiento en la aproximación, tomando un promedio entre las pendientes pues esto parece más razonable para la obtención de un valor más preciso.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
%utt-uxx=0&lt;br /&gt;
%u(0,t)=u(l,t)=0&lt;br /&gt;
%u(x,0)=2-abs(0.4x-2)&lt;br /&gt;
%ut(x,0)=0&lt;br /&gt;
clear all&lt;br /&gt;
L=10;&lt;br /&gt;
T=40;&lt;br /&gt;
h=0.1;&lt;br /&gt;
N=L/h;&lt;br /&gt;
x=0:h:L;&lt;br /&gt;
xint=h:h:L-h;&lt;br /&gt;
dt=h;&lt;br /&gt;
t=0:dt:T;&lt;br /&gt;
K=2*diag(ones(1,N-1))-diag(ones(1,N-2),-1)-diag(ones(1,N-2),1);&lt;br /&gt;
K=K/h^2;&lt;br /&gt;
F=zeros(N-1,1);&lt;br /&gt;
u0=2-abs((xint*2/5-2))';&lt;br /&gt;
v0=zeros(N-1,1);&lt;br /&gt;
M=[zeros(N-1),eye(N-1);-K,zeros(N-1)];&lt;br /&gt;
G=[zeros(N-1,1);F];&lt;br /&gt;
W0=[u0;v0];&lt;br /&gt;
WW=W0;&lt;br /&gt;
sol=zeros(length(t),N+1);&lt;br /&gt;
sol(1,:)=[0,W0(1:N-1)',0];&lt;br /&gt;
for j=1:length(t)-1&lt;br /&gt;
    k1=M*WW;&lt;br /&gt;
    WW=(eye(2*N-2)+dt*M/2)*WW+(dt/2)*k1+(dt^2)*M*k1/2;&lt;br /&gt;
    sol(j+1,:)=[0,WW(1:N-1)',0];&lt;br /&gt;
end&lt;br /&gt;
[xx,tt]=meshgrid(x,t);&lt;br /&gt;
surf(xx,tt,sol);}}&lt;br /&gt;
&lt;br /&gt;
==== Aproximación por Fourier con diferentes términos de series. ====&lt;br /&gt;
En este apartado se ofrece una aproximación alternativa a las anteriores. Se muestran '''cinco iteraciones''' distintas del '''método del Fourier''' que se compararan entre sí y con los métodos anteriores, Trapecio y Euler. Este método de aproximación depende del número de términos de serie (lo denominamos con la letra Q) con los que se realice el programa de Fourier.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br/&amp;gt;&lt;br /&gt;
Puesto que la realización de este método es la misma sea cual sea el número de serie elegido, se han expuesto únicamente dos casos de Q para una mayor claridad del programa.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo= %utt-uxx=0&lt;br /&gt;
%u(0,t)=u(l,t)=0&lt;br /&gt;
%u(x,0)=2-abs(0.4x-2)&lt;br /&gt;
%ut(x,0)=0&lt;br /&gt;
&lt;br /&gt;
%1 iteracion&lt;br /&gt;
clear all&lt;br /&gt;
L=10;&lt;br /&gt;
T=40;&lt;br /&gt;
Q=1;&lt;br /&gt;
h=0.1;&lt;br /&gt;
N=L/h;&lt;br /&gt;
x=0:h:L;&lt;br /&gt;
dt=h;&lt;br /&gt;
t=0:dt:T;&lt;br /&gt;
sol=zeros(length(t),N+1);&lt;br /&gt;
for k=1:Q&lt;br /&gt;
    phi=sin(k/L*pi*x);&lt;br /&gt;
    a=trapz(x,(2-abs(2/5*x-2)).*phi)/(trapz(x,phi.^2));&lt;br /&gt;
    b=0;&lt;br /&gt;
    T=a.*cos(k*pi*t/L);&lt;br /&gt;
    sol=sol+T'*phi;&lt;br /&gt;
end&lt;br /&gt;
[xx,tt]=meshgrid(x,t);&lt;br /&gt;
figure (1)&lt;br /&gt;
surf(xx,tt,sol)&lt;br /&gt;
xlabel('Desplazamiento horizontal');&lt;br /&gt;
ylabel('Tiempo');&lt;br /&gt;
zlabel('Desplazamiento vertical');&lt;br /&gt;
&lt;br /&gt;
%3 iteracion&lt;br /&gt;
clear all&lt;br /&gt;
L=10;&lt;br /&gt;
T=40;&lt;br /&gt;
Q=3;&lt;br /&gt;
h=0.1;&lt;br /&gt;
N=L/h;&lt;br /&gt;
x=0:h:L;&lt;br /&gt;
dt=h;&lt;br /&gt;
t=0:dt:T;&lt;br /&gt;
sol=zeros(length(t),N+1);&lt;br /&gt;
for k=1:Q&lt;br /&gt;
    phi=sin(k/L*pi*x);&lt;br /&gt;
    a=trapz(x,(2-abs(2/5*x-2)).*phi)/(trapz(x,phi.^2));&lt;br /&gt;
    b=0;&lt;br /&gt;
    T=a.*cos(k*pi*t/L);&lt;br /&gt;
    sol=sol+T'*phi;&lt;br /&gt;
end&lt;br /&gt;
[xx,tt]=meshgrid(x,t);&lt;br /&gt;
figure (2)&lt;br /&gt;
surf(xx,tt,sol)&lt;br /&gt;
xlabel('Desplazamiento horizontal');&lt;br /&gt;
ylabel('Tiempo');&lt;br /&gt;
zlabel('Desplazamiento vertical');}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br/&amp;gt;&lt;br /&gt;
[[Image:81tF2.jpg|525px|thumb|left|Aproximación por el método del Trapecio con un término de serie.]]&lt;br /&gt;
[[Image:82tF.jpg|525px|thumb|center|Aproximación por el método del Trapecio con tres términos de serie.]]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br/&amp;gt; &lt;br /&gt;
&lt;br /&gt;
[[Image:83tF.jpg|525px|thumb|left|Aproximación por el método del Trapecio con cinco términos de serie.]]&lt;br /&gt;
[[Image:84tF.jpg|525px|thumb|center|Aproximación por el método del Trapecio con diez términos de serie.]]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Image:85tF.jpg|525px|thumb|center|Aproximación por el método del Trapecio con veinte términos de serie.]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
En este método podemos observar fijándonos en las gráficas que a mayor número de términos (mayor Q), mayor es la aproximación obtenida y más estable.&lt;br /&gt;
&lt;br /&gt;
Realizando una comparación con los otros métodos, se puede observar, fijándonos en las gráficas y en los órdenes de precisión, que el método que mejor aproxima  la ecuación del problema es el método del trapecio, seguido de Euler modificado y, por último, Euler, teniendo mayor orden el que mejor aproxima la función.&lt;br /&gt;
&lt;br /&gt;
Gráficamente podemos confirmar este hecho, dándonos cuenta que las gráficas más similares son fourier con Q=20 y el método del trapecio.&lt;br /&gt;
&lt;br /&gt;
== Energía del Cable. ==&lt;br /&gt;
&lt;br /&gt;
La energía del cable que viene definida por la función: &lt;br /&gt;
\begin{equation}&lt;br /&gt;
E(t) = \int_{0}^{L} (u_{t}^{2}(x,t)+ u_{x}^{2}(x,t)) \cdot dx&lt;br /&gt;
\end{equation}&lt;br /&gt;
&lt;br /&gt;
El método utilizado en el desarrollo numérico de está expresión es el '''método de diferencias finitas'''&lt;br /&gt;
(Funciona calculando de manera aproximada las soluciones a las ecuaciones diferenciales usando ecuaciones diferenciales finitas para aproximar derivadas.).&lt;br /&gt;
&lt;br /&gt;
'''FUNCIÓN:'''&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
function v = deriva(x,y,t)&lt;br /&gt;
&lt;br /&gt;
n = length(x);&lt;br /&gt;
del=zeros(1,n);&lt;br /&gt;
&lt;br /&gt;
if t==1&lt;br /&gt;
    &lt;br /&gt;
    i=1;&lt;br /&gt;
    del(1)=(y(i)-y(i+1))/(-x(i)+x(i+1));&lt;br /&gt;
&lt;br /&gt;
    for i=2:n&lt;br /&gt;
    del(i)=(y(i)-y(i-1))/(x(i)-x(i-1));&lt;br /&gt;
    end &lt;br /&gt;
    &lt;br /&gt;
elseif t==-1&lt;br /&gt;
&lt;br /&gt;
    for i=1:n-1&lt;br /&gt;
    del(i)=(y(i)-y(i+1))/(x(i)-x(i+1));&lt;br /&gt;
    end &lt;br /&gt;
    &lt;br /&gt;
    i=n;&lt;br /&gt;
    del(i)=(y(i)-y(i-1))/(x(i)-x(i-1));&lt;br /&gt;
    &lt;br /&gt;
elseif t==0&lt;br /&gt;
    &lt;br /&gt;
    i=1;&lt;br /&gt;
    del(1)=(y(i)-y(i+1))/(+x(i)-x(i+1));&lt;br /&gt;
    &lt;br /&gt;
    for i=2:n-1&lt;br /&gt;
    del(i)=(y(i+1)-y(i-1))/(2*(x(i)-x(i-1)));&lt;br /&gt;
    end &lt;br /&gt;
    &lt;br /&gt;
    i=n;&lt;br /&gt;
    del(n)=(y(i)-y(i-1))/(x(i)-x(i-1));  &lt;br /&gt;
    &lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
v=del;&lt;br /&gt;
&lt;br /&gt;
end&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''PROGRAMA:'''&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
clc;clear all;&lt;br /&gt;
L=10;dx=0.1;N=L/dx;&lt;br /&gt;
x=dx:dx:L-dx;&lt;br /&gt;
xtot=0:dx:L;&lt;br /&gt;
T=40;dt=0.1;t=0:dt:T;&lt;br /&gt;
K=2*diag(ones(1,N-1))-diag(ones(1,N-2),1)-diag(ones(1,N-2),-1);&lt;br /&gt;
K=(1/dx^2)*K;&lt;br /&gt;
U=(2-abs((x*2/5-2)))';&lt;br /&gt;
V=(0*x)';&lt;br /&gt;
sol(1,:)=[0 U' 0];&lt;br /&gt;
for i=1:length(t)-1;&lt;br /&gt;
    U=U+dt*V;&lt;br /&gt;
    V=V-dt*K*U;&lt;br /&gt;
    sol(i+1,:)=[0 U' 0];&lt;br /&gt;
end&lt;br /&gt;
%DERIVAMOS LA SOLUCION EN x Y EN t:&lt;br /&gt;
dsol_dx=ones(size(sol));&lt;br /&gt;
for i=1:length(t)&lt;br /&gt;
    dsol_dx(i,:)=deriva(sol(i,:),xtot,0);&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
dsol_dt=ones(size(sol));&lt;br /&gt;
for i=1:length(xtot)&lt;br /&gt;
    dsol_dt(:,i)=deriva(sol(:,i),t,1); &lt;br /&gt;
end&lt;br /&gt;
%SUMAMOS LAS DERIVADAS AL CUADRADO E INTEGRAMOS:&lt;br /&gt;
dE=zeros(1,size(t,1));&lt;br /&gt;
for i=1:length(xtot)&lt;br /&gt;
    dE=dE+(dsol_dt(i,:).^2+dsol_dx(i,:).^2)*dx;&lt;br /&gt;
end&lt;br /&gt;
xtot=0:dx:L;&lt;br /&gt;
[xx,tt]=meshgrid(xtot,t);&lt;br /&gt;
figure(1)&lt;br /&gt;
surf(xx,tt,dsol_dx);&lt;br /&gt;
figure(2)&lt;br /&gt;
surf(xx,tt,dsol_dt);&lt;br /&gt;
plot(dE,t)&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
El resultado habría de ser una gráfica que representase la evolución de la energía de la cuerda frente al transcurso del tiempo. No obstante, en nuestra resolución aparece una gráfica en blanco que ajudicamos o a un posible error en el código, o que podemos interpretar como que la energía tiende a infinito.&lt;br /&gt;
&lt;br /&gt;
== Aplicaciones. ==&lt;br /&gt;
&lt;br /&gt;
==== Sumersión en un medio viscoso. ====&lt;br /&gt;
&lt;br /&gt;
Suponemos ahora la inmersión del cable en una medio viscoso. Este medio viscoso produce un amortiguamiento en el movimiento del cable, con lo que la anterior ecuación diferencial se convertiría en &lt;br /&gt;
\begin{equation}&lt;br /&gt;
u_{tt}-u_{xx}+au_{t}=0&lt;br /&gt;
\end{equation} &lt;br /&gt;
, siendo '''&amp;lt;math&amp;gt; a  &amp;lt;/math&amp;gt;''' una constante de amortiguamiento propia del medio viscoso.&lt;br /&gt;
Puesto que la función '''&amp;lt;math&amp;gt; u(x,t)  &amp;lt;/math&amp;gt;''' se ve afectada ahora por el medio viscoso, y más directamente, por la constante '''&amp;lt;math&amp;gt; a  &amp;lt;/math&amp;gt;''' que actúa en su nombre, la energía del cable ,que se expresaba como una integral en función de '''&amp;lt;math&amp;gt; u(x,t)  &amp;lt;/math&amp;gt;''' también se va a ver afectada:&lt;br /&gt;
\begin{equation}&lt;br /&gt;
E(t) = \int_{0}^{L} (u_{t}^{2}(x,t)+ u_{x}^{2}(x,t)) \cdot dx&lt;br /&gt;
\end{equation}&lt;br /&gt;
&lt;br /&gt;
El obetivo del siguiente código será hallar una representación de la evolución de la energía en función del tiempo a raíz de la modificación de la función '''&amp;lt;math&amp;gt; u(x,t)  &amp;lt;/math&amp;gt;'''. Para ello asignaremos distintos valores a la constante '''&amp;lt;math&amp;gt; a  &amp;lt;/math&amp;gt;'''. Éstos van a ser:&lt;br /&gt;
'''&amp;lt;math&amp;gt; a=0  &amp;lt;/math&amp;gt;''' (la energía para este valor resultará igual que la hallada en el apartado anterior)&lt;br /&gt;
'''&amp;lt;math&amp;gt; a=1  &amp;lt;/math&amp;gt;'''&lt;br /&gt;
'''&amp;lt;math&amp;gt; a=4  &amp;lt;/math&amp;gt;'''&lt;br /&gt;
'''&amp;lt;math&amp;gt; a=10  &amp;lt;/math&amp;gt;'''&lt;br /&gt;
''&amp;lt;math&amp;gt; a=100  &amp;lt;/math&amp;gt;'''&lt;br /&gt;
&lt;br /&gt;
El procedimiento numérico volverá a seguir el método de '''diferencias finitas''':&lt;br /&gt;
&lt;br /&gt;
'''PROGRAMA:'''&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
clc;clear all;close all;&lt;br /&gt;
%Datos&lt;br /&gt;
dx=0.1;L=10;&lt;br /&gt;
dt=0.001;NT=40;&lt;br /&gt;
A=[0,1,4,10,100];&lt;br /&gt;
x=0:dx:L;&lt;br /&gt;
t=0:dt:NT;&lt;br /&gt;
ENE=zeros(5,length(t));&lt;br /&gt;
&lt;br /&gt;
%Condición de contorno: U(0,t)=U(L,t)=0;&lt;br /&gt;
&lt;br /&gt;
for k=1:5&lt;br /&gt;
&lt;br /&gt;
%Vector solución y derivada temporal de la solución&lt;br /&gt;
%t=0&amp;lt;&amp;gt;T(1) es donde se guardan las condiciones iniciales&lt;br /&gt;
&lt;br /&gt;
U=zeros(length(t),length(x));&lt;br /&gt;
Dt_U=zeros(length(t),length(x));&lt;br /&gt;
Dx_U=zeros(length(t),length(x));    &lt;br /&gt;
&lt;br /&gt;
%Condición inicial: Estiramos 2 m del centro&lt;br /&gt;
%Modelizado como dos rectas antisimétricas que se cortan en x=5 y&lt;br /&gt;
%sujetas en x=0 y x=L.&lt;br /&gt;
&lt;br /&gt;
U(1,:)=2*sin(x*pi/L);&lt;br /&gt;
Dt_U(1,:)=zeros(1,length(x))';&lt;br /&gt;
D2t_U=Ecuacion5(U(1,:),x,-1);&lt;br /&gt;
&lt;br /&gt;
%Inicio del esquema numérico&lt;br /&gt;
%empieza en 2 ya que el 1 es la cond. inicial&lt;br /&gt;
&lt;br /&gt;
%ESQUEMA NEWMARK&lt;br /&gt;
&lt;br /&gt;
 for i=2:length(t)&lt;br /&gt;
    iter=[k,i]&lt;br /&gt;
    Ua=U(i-1,:);&lt;br /&gt;
    Dt_Ua=Dt_U(i-1,:);&lt;br /&gt;
    D2t_Ua=D2t_U;&lt;br /&gt;
    %Derivada segunda respecto del tiempo en el instante t, se obtiene de&lt;br /&gt;
    %eq. diferencial u_tt=f(x,u,u_x,u_xx)&lt;br /&gt;
    D2t_U=Ecuacion5(U(i-1,:),x,t(i))-A(k)*Dt_Ua;&lt;br /&gt;
    %Derivada primera&lt;br /&gt;
    Dt_U(i,:)=Dt_Ua+0.5*dt*(D2t_Ua+D2t_U);&lt;br /&gt;
    %Ecuacion&lt;br /&gt;
    U(i,:) = Ua+Dt_Ua*dt+(1/6)*(D2t_Ua+D2t_U)*dt^2;&lt;br /&gt;
 end&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 %ENERGIA&lt;br /&gt;
 for i=1:length(t)&lt;br /&gt;
    Dx_U(i,:)=deriva(x,U(i,:),0);&lt;br /&gt;
 end&lt;br /&gt;
dE=zeros(length(t),1);&lt;br /&gt;
for i=1:length(x)&lt;br /&gt;
    dE=dE+(Dt_U(:,i).^2+Dx_U(:,i).^2)*dx;&lt;br /&gt;
end&lt;br /&gt;
 ENE(k,:)=dE;&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
 figure(1)&lt;br /&gt;
 hold on&lt;br /&gt;
 grid&lt;br /&gt;
 aa=find(x==L/4);&lt;br /&gt;
 ab=find(x==3*L/4);&lt;br /&gt;
 legend('A=0','A=1','A=4','A=10','A=100');&lt;br /&gt;
 plot(t,ENE(1,:),t,ENE(2,:),t,ENE(3,:),t,ENE(4,:),t,ENE(5,:));&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''FUNCIONES:'''&lt;br /&gt;
DERIVA:&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
function v = deriva(x,y,t)&lt;br /&gt;
n = length(x);&lt;br /&gt;
del=zeros(1,n);&lt;br /&gt;
if t==1&lt;br /&gt;
    i=1;&lt;br /&gt;
    del(1)=(y(i)-y(i+1))/(-x(i)+x(i+1));&lt;br /&gt;
    for i=2:n&lt;br /&gt;
    del(i)=(y(i)-y(i-1))/(x(i)-x(i-1));&lt;br /&gt;
    end &lt;br /&gt;
elseif t==-1&lt;br /&gt;
    for i=1:n-1&lt;br /&gt;
    del(i)=(y(i)-y(i+1))/(x(i)-x(i+1));&lt;br /&gt;
    end &lt;br /&gt;
    i=n;&lt;br /&gt;
    del(i)=(y(i)-y(i-1))/(x(i)-x(i-1));&lt;br /&gt;
elseif t==0&lt;br /&gt;
    i=1;&lt;br /&gt;
    del(1)=(y(i)-y(i+1))/(+x(i)-x(i+1));&lt;br /&gt;
    for i=2:n-1&lt;br /&gt;
    del(i)=(y(i+1)-y(i-1))/(2*(x(i)-x(i-1)));&lt;br /&gt;
    end &lt;br /&gt;
    i=n;&lt;br /&gt;
    del(n)=(y(i)-y(i-1))/(x(i)-x(i-1));  &lt;br /&gt;
end&lt;br /&gt;
v=del;&lt;br /&gt;
end&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
'''ECUACIÓN 5:'''&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
function [ V ] = Ecuacion5( u,x,t )&lt;br /&gt;
%se guarda aquí la ecuación diferencial del tipo u_tt=f(x,u,u_x,u_xx)&lt;br /&gt;
%INCLUIDAS LAS CC AQUÍ&lt;br /&gt;
%PARA u_tt=u_xx&lt;br /&gt;
%CC: u(0,t)=u(L,t)=0;&lt;br /&gt;
&lt;br /&gt;
Ax=x(2)-x(1);&lt;br /&gt;
n=length(u);&lt;br /&gt;
V=zeros(1,n);&lt;br /&gt;
&lt;br /&gt;
%Las condiciones de contorno vienen en x(1)=0 y x(Nx)=L&lt;br /&gt;
u(1)=0;&lt;br /&gt;
&lt;br /&gt;
if(t==-1)&lt;br /&gt;
    u(n)=0;&lt;br /&gt;
else&lt;br /&gt;
    u(n)=0;&lt;br /&gt;
    %u(n)=sin(2*pi*F0*t);&lt;br /&gt;
    %u(n)=(1/(b*Ax-1))*u(n-1);&lt;br /&gt;
end&lt;br /&gt;
for i=2:n-1&lt;br /&gt;
    &lt;br /&gt;
    V(i)=(1/Ax^2)*(u(i+1)-2*u(i)+u(i-1));&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
i=1;&lt;br /&gt;
V(i)=(1/Ax^2)*(u(i+2)-2*u(i+1));&lt;br /&gt;
i=n;&lt;br /&gt;
V(i)=(1/Ax^2)*(u(i)-2*u(i-1)+u(i-2));&lt;br /&gt;
end&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
La gráfica buscada es:&lt;br /&gt;
[[Archivo:Graficadelaenergiaenunmedioviscoso.png|700px|thumb|centre|Gráfica de la energía(ordenadas) del cable respecto del tiempo (Abcisas).]]&lt;br /&gt;
En la gráfica se aprecian cuatro curvas de distintos colores correspondientes a '''&amp;lt;math&amp;gt; a=0  &amp;lt;/math&amp;gt;''','''&amp;lt;math&amp;gt; a=1  &amp;lt;/math&amp;gt;''','''&amp;lt;math&amp;gt; a=4  &amp;lt;/math&amp;gt;''','''&amp;lt;math&amp;gt; a=10  &amp;lt;/math&amp;gt;''',''&amp;lt;math&amp;gt; a=100  &amp;lt;/math&amp;gt;'''.&lt;br /&gt;
&lt;br /&gt;
Como podemos apreciar el valor de la energía disminuye a medida que aumentamos el valor de &amp;quot;a&amp;quot;. Esto es debido a que &amp;quot;a&amp;quot; define el coeficiente de amortiguamiento del líquido en el cual se encuentra la cuerda. Luego, dicha disminución de energía se produce por la disipación en el medio de gran parte de la energía inicial.&lt;br /&gt;
&lt;br /&gt;
==== Sujeción a una estructura de vibración periódica. ====&lt;br /&gt;
&lt;br /&gt;
En este caso supondremos que el extremo derecho que sujeta el cable está sometido a una vibración periódica de frecuencia  &amp;lt;math&amp;gt; F_0 &amp;lt;/math&amp;gt; [Herzios]. Al haber una vibración externa que afecta directamente al cable la expresión de su movimiento y, por consecuencia, de su energía, se va a ver modificada. Nosotros incluiremos esta modificación en la función &amp;lt;math&amp;gt; f(t) &amp;lt;/math&amp;gt; de problema de valor inicial que venimos tratando. Esta función va a pasar a ser: &lt;br /&gt;
\begin{equation}&lt;br /&gt;
f(t)= sin(2 \pi F_0t)&lt;br /&gt;
\end{equation}&lt;br /&gt;
&lt;br /&gt;
El objetivo será el de ver cómo afecta esta alteración en el desarrollo de la energía del cable frente al tiempo.&lt;br /&gt;
Para nuestro cálculo numérico especificaremos para las siguientes situaciones:&lt;br /&gt;
En primer lugar, para: &amp;lt;math&amp;gt; F_0= \frac{1}{L} + 0,01 &amp;lt;/math&amp;gt;&lt;br /&gt;
Después,para: &amp;lt;math&amp;gt; F_0= \frac{1}{L} - 0,01 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Y para finalizar, lo estudiaremos en un intervalo de tiempo de '''t=0''' hasta '''t=60''' : &amp;lt;math&amp;gt;t \in (0,60)&amp;lt;/math&amp;gt; [segundos].&lt;br /&gt;
&lt;br /&gt;
El código matemático para matlab / octave:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''PROGRAMA:'''&lt;br /&gt;
{{matlab|codigo= &lt;br /&gt;
clc;clear all;close all;&lt;br /&gt;
&lt;br /&gt;
%Datos&lt;br /&gt;
&lt;br /&gt;
dx=0.1;L=10;dt=0.0001;NT=60;&lt;br /&gt;
A=[0,1,4,10,100];&lt;br /&gt;
x=0:dx:L;t=0:dt:NT;&lt;br /&gt;
ENE=zeros(5,length(t));&lt;br /&gt;
&lt;br /&gt;
%Condición de contorno: U(0,t)=U(L,t)=0;&lt;br /&gt;
for k=1&lt;br /&gt;
%Vector solución y derivada temporal de la solución&lt;br /&gt;
%t=0&amp;lt;&amp;gt;T(1) es donde se guardan las condiciones iniciales&lt;br /&gt;
&lt;br /&gt;
U=zeros(length(t),length(x));&lt;br /&gt;
Dt_U=zeros(length(t),length(x));&lt;br /&gt;
Dx_U=zeros(length(t),length(x));&lt;br /&gt;
&lt;br /&gt;
%Condición inicial: Estiramos 2 m del centro&lt;br /&gt;
%Modelizado como dos rectas antisimétricas que se cortan en x=5 y&lt;br /&gt;
%sujetas en x=0 y x=L.&lt;br /&gt;
&lt;br /&gt;
U(1,:)=2*sin(x*pi/L);&lt;br /&gt;
Dt_U(1,:)=zeros(1,length(x))';&lt;br /&gt;
D2t_U=Ecuacion6(U(1,:),x,-1);&lt;br /&gt;
&lt;br /&gt;
%Inicio del esquema numérico&lt;br /&gt;
%empieza en 2 ya que el 1 es la cond. inicial&lt;br /&gt;
&lt;br /&gt;
%ESQUEMA NEWMARK&lt;br /&gt;
&lt;br /&gt;
 for i=2:length(t)&lt;br /&gt;
    iter=[k,i]&lt;br /&gt;
    Ua=U(i-1,:);&lt;br /&gt;
    Dt_Ua=Dt_U(i-1,:);&lt;br /&gt;
    D2t_Ua=D2t_U;&lt;br /&gt;
    %Derivada segunda respecto del tiempo en el instante t, se obtiene de&lt;br /&gt;
    %eq. diferencial u_tt=f(x,u,u_x,u_xx)&lt;br /&gt;
    D2t_U=Ecuacion6(U(i-1,:),x,t(i))-A(k)*Dt_Ua;&lt;br /&gt;
    %Derivada primera&lt;br /&gt;
    Dt_U(i,:)=Dt_Ua+0.5*dt*(D2t_Ua+D2t_U);&lt;br /&gt;
    %Ecuacion&lt;br /&gt;
    U(i,:) = Ua+Dt_Ua*dt+(1/6)*(D2t_Ua+D2t_U)*dt^2;&lt;br /&gt;
 end&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 %ENERGIA&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 for i=1:length(t)&lt;br /&gt;
    Dx_U(i,:)=deriva(x,U(i,:),0);&lt;br /&gt;
 end&lt;br /&gt;
dE=zeros(length(t),1);&lt;br /&gt;
for i=1:length(x)&lt;br /&gt;
    dE=dE+(Dt_U(:,i).^2+Dx_U(:,i).^2)*dx;&lt;br /&gt;
end&lt;br /&gt;
 ENE(k,:)=dE;&lt;br /&gt;
end&lt;br /&gt;
 figure(1)&lt;br /&gt;
 hold on&lt;br /&gt;
 grid&lt;br /&gt;
 aa=find(x==L/4);&lt;br /&gt;
 ab=find(x==3*L/4);&lt;br /&gt;
 imagesc(U)&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''FUNCIONES:'''&lt;br /&gt;
&lt;br /&gt;
DERIVA:&lt;br /&gt;
{{matlab|codigo= &lt;br /&gt;
function v = deriva(x,y,t)&lt;br /&gt;
n = length(x);&lt;br /&gt;
del=zeros(1,n);&lt;br /&gt;
if t==1&lt;br /&gt;
    i=1;&lt;br /&gt;
    del(1)=(y(i)-y(i+1))/(-x(i)+x(i+1));&lt;br /&gt;
    for i=2:n&lt;br /&gt;
    del(i)=(y(i)-y(i-1))/(x(i)-x(i-1));&lt;br /&gt;
    end &lt;br /&gt;
elseif t==-1&lt;br /&gt;
    for i=1:n-1&lt;br /&gt;
    del(i)=(y(i)-y(i+1))/(x(i)-x(i+1));&lt;br /&gt;
    end &lt;br /&gt;
    i=n;&lt;br /&gt;
    del(i)=(y(i)-y(i-1))/(x(i)-x(i-1));&lt;br /&gt;
elseif t==0&lt;br /&gt;
    i=1;&lt;br /&gt;
    del(1)=(y(i)-y(i+1))/(+x(i)-x(i+1));&lt;br /&gt;
    for i=2:n-1&lt;br /&gt;
    del(i)=(y(i+1)-y(i-1))/(2*(x(i)-x(i-1)));&lt;br /&gt;
    end &lt;br /&gt;
    i=n;&lt;br /&gt;
    del(n)=(y(i)-y(i-1))/(x(i)-x(i-1));  &lt;br /&gt;
end&lt;br /&gt;
v=del;&lt;br /&gt;
end&lt;br /&gt;
}}&lt;br /&gt;
'''ECUACIÓN 6:'''&lt;br /&gt;
&lt;br /&gt;
function [ V ] = Ecuacion6( u,x,t )&lt;br /&gt;
{{matlab|codigo= &lt;br /&gt;
&lt;br /&gt;
%se guarda aquí la ecuación diferencial del tipo u_tt=f(x,u,u_x,u_xx)&lt;br /&gt;
%INCLUIDAS LAS CC AQUÍ!&lt;br /&gt;
%PARA u_tt=u_xx&lt;br /&gt;
%CC: u(0,t)=u(L,t)=0;&lt;br /&gt;
&lt;br /&gt;
Ax=x(2)-x(1);&lt;br /&gt;
n=length(u);&lt;br /&gt;
V=zeros(1,n);&lt;br /&gt;
F0=(1/x(n))+0.01;&lt;br /&gt;
b=-2;&lt;br /&gt;
&lt;br /&gt;
%Las condiciones de contorno vienen en x(1)=0 y x(Nx)=L&lt;br /&gt;
&lt;br /&gt;
u(1)=0;&lt;br /&gt;
if(t==-1)&lt;br /&gt;
    u(n)=0;&lt;br /&gt;
else&lt;br /&gt;
    %u(n)=0;&lt;br /&gt;
    u(n)=sin(2*pi*F0*t);&lt;br /&gt;
    %u(n)=(1/(b*Ax-1))*u(n-1);&lt;br /&gt;
end&lt;br /&gt;
for i=2:n-1&lt;br /&gt;
    V(i)=(1/Ax^2)*(u(i+1)-2*u(i)+u(i-1));&lt;br /&gt;
end&lt;br /&gt;
i=1;&lt;br /&gt;
V(i)=(1/Ax^2)*(u(i+2)-2*u(i+1));&lt;br /&gt;
i=n;&lt;br /&gt;
V(i)=(1/Ax^2)*(u(i)-2*u(i-1)+u(i-2));&lt;br /&gt;
end&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:6.1.png|700px|thumb|centre|Gráfica en tres dimensiones de la energía de un cable cuyo extremo derecho está sometido a una vibración externa periódica para F_0=1/L +0,1]]&lt;br /&gt;
'''function [ V ] = Ecuacion6( u,x,t )'''&lt;br /&gt;
{{matlab|codigo= &lt;br /&gt;
%se guarda aquí la ecuación diferencial del tipo u_tt=f(x,u,u_x,u_xx)&lt;br /&gt;
%INCLUIDAS LAS CC AQUÍ!&lt;br /&gt;
%PARA u_tt=u_xx&lt;br /&gt;
%CC: u(0,t)=u(L,t)=0;&lt;br /&gt;
&lt;br /&gt;
Ax=x(2)-x(1);&lt;br /&gt;
n=length(u);&lt;br /&gt;
V=zeros(1,n);&lt;br /&gt;
F0=(1/x(n))-0.01;&lt;br /&gt;
b=-2;&lt;br /&gt;
&lt;br /&gt;
%Las condiciones de contorno vienen en x(1)=0 y x(Nx)=L&lt;br /&gt;
&lt;br /&gt;
u(1)=0;&lt;br /&gt;
if(t==-1)&lt;br /&gt;
    u(n)=0;&lt;br /&gt;
else&lt;br /&gt;
    %u(n)=0;&lt;br /&gt;
    u(n)=sin(2*pi*F0*t);&lt;br /&gt;
    %u(n)=(1/(b*Ax-1))*u(n-1);&lt;br /&gt;
end&lt;br /&gt;
for i=2:n-1&lt;br /&gt;
    V(i)=(1/Ax^2)*(u(i+1)-2*u(i)+u(i-1));&lt;br /&gt;
end&lt;br /&gt;
i=1;&lt;br /&gt;
V(i)=(1/Ax^2)*(u(i+2)-2*u(i+1));&lt;br /&gt;
i=n;&lt;br /&gt;
V(i)=(1/Ax^2)*(u(i)-2*u(i-1)+u(i-2));&lt;br /&gt;
end&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:6.2.png|700px|thumb|centre|Gráfica en tres dimensiones de la energía de un cable cuyo extremo derecho está sometido a una vibración externa periódica.]]&lt;br /&gt;
&lt;br /&gt;
'''function [ V ] = Ecuacion6( u,x,t )'''&lt;br /&gt;
{{matlab|codigo= &lt;br /&gt;
%se guarda aquí la ecuación diferencial del tipo u_tt=f(x,u,u_x,u_xx)&lt;br /&gt;
%INCLUIDAS LAS CC AQUÍ!&lt;br /&gt;
%PARA u_tt=u_xx&lt;br /&gt;
%CC: u(0,t)=u(L,t)=0;&lt;br /&gt;
&lt;br /&gt;
Ax=x(2)-x(1);&lt;br /&gt;
n=length(u);&lt;br /&gt;
V=zeros(1,n);&lt;br /&gt;
F0=(1/x(n));&lt;br /&gt;
b=-2;&lt;br /&gt;
&lt;br /&gt;
%Las condiciones de contorno vienen en x(1)=0 y x(Nx)=L&lt;br /&gt;
&lt;br /&gt;
u(1)=0;&lt;br /&gt;
if(t==-1)&lt;br /&gt;
    u(n)=0;&lt;br /&gt;
else&lt;br /&gt;
    %u(n)=0;&lt;br /&gt;
    u(n)=sin(2*pi*F0*t);&lt;br /&gt;
    %u(n)=(1/(b*Ax-1))*u(n-1);&lt;br /&gt;
end&lt;br /&gt;
for i=2:n-1&lt;br /&gt;
    V(i)=(1/Ax^2)*(u(i+1)-2*u(i)+u(i-1));&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
i=1;&lt;br /&gt;
V(i)=(1/Ax^2)*(u(i+2)-2*u(i+1));&lt;br /&gt;
i=n;&lt;br /&gt;
V(i)=(1/Ax^2)*(u(i)-2*u(i-1)+u(i-2));&lt;br /&gt;
end&lt;br /&gt;
}}&lt;br /&gt;
 &lt;br /&gt;
La gráfica resultante es la siguiente:&lt;br /&gt;
[[Archivo:6.3.png|700px|thumb|centre|Gráfica en tres dimensiones de la energía de un cable cuyo extremo derecho está sometido a una vibración externa periódica.]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
En dicha gráfica, se puede observar que la forma de la función o la energía se ve alterada por la condición impuesta de tal manera que ésta adquiere una forma también sinusoidal, y que su estabilización dependería del tiempo transcurrido entre vibración y vibración.&lt;br /&gt;
&lt;br /&gt;
==== Sujeción a un aparato que responde a una vibración externa. ====&lt;br /&gt;
&lt;br /&gt;
La siguiente situación que vamos a representar a modelar a través de ecuaciones diferenciales va a ser la siguiente: supondremos que el cable de la anterior situación (que recibía en su extremo derecho una vibración periódica de &amp;lt;math&amp;gt; F_0 &amp;lt;/math&amp;gt; [Herzios])envía una respuesta a la vibración que recibe. Esta situación la vamos a representar como un cambio en la condición de contorno; ésta va a pasar a ser: &amp;lt;math&amp;gt; u_x(L,t)=bu(L,t) &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
El objetivo, de nuevo será representar la evolución de la energía respecto del tiempo y ver si este cambio en el problema se ve reflejado en su representación. &lt;br /&gt;
En el código numérico, no obstante, la situación de &amp;lt;math&amp;gt; u_x(L,t)=bu(L,t) &amp;lt;/math&amp;gt; la vamos a aproximar por la siguiente expresión:&lt;br /&gt;
&amp;lt;math&amp;gt; u_x(L,t)-bu(L,t)  \cong  \frac{u_{N+1}(t)-u_{N-1}(t)}{2h-u_N(t)} &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
En la resolución del problema emplearemos de nuevo la condición inicial de sujetar el cable por el centro y elevarlo 2 m perpendicularmente: &lt;br /&gt;
&amp;lt;math&amp;gt; u(x,0)=g(x)= 2- |\frac{2}{5}x -2| &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Y además obtendremos el resultado para los dos valores siguientes de &amp;lt;math&amp;gt;b&amp;lt;/math&amp;gt; :&lt;br /&gt;
Para &amp;lt;math&amp;gt; b=2 &amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt; b=-2 &amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
El código numérico de matlab/octave es:&lt;br /&gt;
&lt;br /&gt;
'''PROGRAMA:'''&lt;br /&gt;
{{matlab|codigo= &lt;br /&gt;
clc;clear all;close all;&lt;br /&gt;
&lt;br /&gt;
%Datos&lt;br /&gt;
dx=0.1;L=10;dt=0.0001;NT=40;&lt;br /&gt;
A=[0,1,4,10,100];&lt;br /&gt;
x=0:dx:L;t=0:dt:NT;&lt;br /&gt;
ENE=zeros(5,length(t));&lt;br /&gt;
&lt;br /&gt;
%Condición de contorno: U(0,t)=U(L,t)=0;&lt;br /&gt;
for k=1&lt;br /&gt;
&lt;br /&gt;
%Vector solución y derivada temporal de la solución&lt;br /&gt;
%t=0&amp;lt;&amp;gt;T(1) es donde se guardan las condiciones iniciales&lt;br /&gt;
&lt;br /&gt;
U=zeros(length(t),length(x));&lt;br /&gt;
Dt_U=zeros(length(t),length(x));&lt;br /&gt;
Dx_U=zeros(length(t),length(x));    &lt;br /&gt;
&lt;br /&gt;
%Condición inicial: Estiramos 2 m del centro&lt;br /&gt;
%Modelizado como dos rectas antisimétricas que se cortan en x=5 y&lt;br /&gt;
%sujetas en x=0 y x=L.&lt;br /&gt;
&lt;br /&gt;
U(1,:)=2*sin(x*pi/L);&lt;br /&gt;
Dt_U(1,:)=zeros(1,length(x))';&lt;br /&gt;
D2t_U=Ecuacion7(U(1,:),x,-1);&lt;br /&gt;
&lt;br /&gt;
%Inicio del esquema numérico&lt;br /&gt;
%empieza en 2 ya que el 1 es la cond. inicial&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
%ESQUEMA NEWMARK&lt;br /&gt;
 for i=2:length(t)&lt;br /&gt;
    iter=[k,i]&lt;br /&gt;
    Ua=U(i-1,:);&lt;br /&gt;
    Dt_Ua=Dt_U(i-1,:);&lt;br /&gt;
    D2t_Ua=D2t_U;&lt;br /&gt;
&lt;br /&gt;
    %Derivada segunda respecto del tiempo en el instante t, se obtiene de&lt;br /&gt;
    %eq. diferencial u_tt=f(x,u,u_x,u_xx)&lt;br /&gt;
&lt;br /&gt;
    D2t_U=Ecuacion7(U(i-1,:),x,t(i))-A(k)*Dt_Ua;&lt;br /&gt;
&lt;br /&gt;
    %Derivada primera&lt;br /&gt;
    Dt_U(i,:)=Dt_Ua+0.5*dt*(D2t_Ua+D2t_U);&lt;br /&gt;
&lt;br /&gt;
    %Ecuacion&lt;br /&gt;
    U(i,:) = Ua+Dt_Ua*dt+(1/6)*(D2t_Ua+D2t_U)*dt^2;&lt;br /&gt;
 end&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 %ENERGIA&lt;br /&gt;
 for i=1:length(t)&lt;br /&gt;
    Dx_U(i,:)=deriva(x,U(i,:),0);&lt;br /&gt;
 end&lt;br /&gt;
dE=zeros(length(t),1);&lt;br /&gt;
for i=1:length(x)&lt;br /&gt;
    dE=dE+(Dt_U(:,i).^2+Dx_U(:,i).^2)*dx;&lt;br /&gt;
end&lt;br /&gt;
 ENE(k,:)=dE;&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
 figure(1)&lt;br /&gt;
 hold on&lt;br /&gt;
 grid&lt;br /&gt;
 aa=find(x==L/4);&lt;br /&gt;
 ab=find(x==3*L/4);&lt;br /&gt;
 plot(t,ENE(1,:))&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
'''FUNCIONES:'''&lt;br /&gt;
'''function v = deriva(x,y,t)'''&lt;br /&gt;
{{matlab|codigo= &lt;br /&gt;
n = length(x);&lt;br /&gt;
del=zeros(1,n);&lt;br /&gt;
if t==1&lt;br /&gt;
    i=1;&lt;br /&gt;
    del(1)=(y(i)-y(i+1))/(-x(i)+x(i+1));&lt;br /&gt;
    for i=2:n&lt;br /&gt;
    del(i)=(y(i)-y(i-1))/(x(i)-x(i-1));&lt;br /&gt;
    end &lt;br /&gt;
elseif t==-1&lt;br /&gt;
    for i=1:n-1&lt;br /&gt;
    del(i)=(y(i)-y(i+1))/(x(i)-x(i+1));&lt;br /&gt;
    end &lt;br /&gt;
    i=n;&lt;br /&gt;
    del(i)=(y(i)-y(i-1))/(x(i)-x(i-1));&lt;br /&gt;
elseif t==0&lt;br /&gt;
    i=1;&lt;br /&gt;
    del(1)=(y(i)-y(i+1))/(+x(i)-x(i+1));&lt;br /&gt;
    for i=2:n-1&lt;br /&gt;
    del(i)=(y(i+1)-y(i-1))/(2*(x(i)-x(i-1)));&lt;br /&gt;
    end &lt;br /&gt;
    i=n;&lt;br /&gt;
    del(n)=(y(i)-y(i-1))/(x(i)-x(i-1));  &lt;br /&gt;
end&lt;br /&gt;
v=del;&lt;br /&gt;
end&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
'''function [ V ] = Ecuacion7( u,x,t )'''&lt;br /&gt;
{{matlab|codigo= &lt;br /&gt;
%se guarda aquí la ecuación diferencial del tipo u_tt=f(x,u,u_x,u_xx)&lt;br /&gt;
%INCLUIDAS LAS CC AQUÍ!&lt;br /&gt;
%PARA u_tt=u_xx&lt;br /&gt;
%CC: u(0,t)=u(L,t)=0;&lt;br /&gt;
&lt;br /&gt;
Ax=x(2)-x(1);&lt;br /&gt;
n=length(u);&lt;br /&gt;
V=zeros(1,n);&lt;br /&gt;
F0=(1/x(n));&lt;br /&gt;
b=2;&lt;br /&gt;
&lt;br /&gt;
%Las condiciones de contorno vienen en x(1)=0 y x(Nx)=L&lt;br /&gt;
u(1)=0;&lt;br /&gt;
if(t==-1)&lt;br /&gt;
    u(n)=0;&lt;br /&gt;
else&lt;br /&gt;
    %u(n)=0;&lt;br /&gt;
    %u(n)=sin(2*pi*F0*t);&lt;br /&gt;
    u(n)=(1/(b*Ax-1))*u(n-1);&lt;br /&gt;
end&lt;br /&gt;
for i=2:n-1&lt;br /&gt;
    V(i)=(1/Ax^2)*(u(i+1)-2*u(i)+u(i-1));&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
i=1;&lt;br /&gt;
V(i)=(1/Ax^2)*(u(i+2)-2*u(i+1));&lt;br /&gt;
i=n;&lt;br /&gt;
V(i)=(1/Ax^2)*(u(i)-2*u(i-1)+u(i-2));&lt;br /&gt;
end&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:7.1.png|700px|thumb|centre|Gráfica de la energía (ordenadas) de un cable frente al tiempo (abcisas) que recibe una vibración en su extremo derecho y que responde a dicha vibración para b=2. ]]&lt;br /&gt;
'''function [ V ] = Ecuacion7( u,x,t )'''&lt;br /&gt;
{{matlab|codigo= &lt;br /&gt;
%se guarda aquí la ecuación diferencial del tipo u_tt=f(x,u,u_x,u_xx)&lt;br /&gt;
%INCLUIDAS LAS CC AQUÍ!&lt;br /&gt;
%PARA u_tt=u_xx&lt;br /&gt;
%CC: u(0,t)=u(L,t)=0;&lt;br /&gt;
&lt;br /&gt;
Ax=x(2)-x(1);&lt;br /&gt;
n=length(u);&lt;br /&gt;
V=zeros(1,n);&lt;br /&gt;
F0=(1/x(n));&lt;br /&gt;
b=-2;&lt;br /&gt;
&lt;br /&gt;
%Las condiciones de contorno vienen en x(1)=0 y x(Nx)=L&lt;br /&gt;
u(1)=0;&lt;br /&gt;
&lt;br /&gt;
if(t==-1)&lt;br /&gt;
    u(n)=0;&lt;br /&gt;
else&lt;br /&gt;
    %u(n)=0;&lt;br /&gt;
    %u(n)=sin(2*pi*F0*t);&lt;br /&gt;
    u(n)=(1/(b*Ax-1))*u(n-1);&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
for i=2:n-1&lt;br /&gt;
    V(i)=(1/Ax^2)*(u(i+1)-2*u(i)+u(i-1));&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
i=1;&lt;br /&gt;
V(i)=(1/Ax^2)*(u(i+2)-2*u(i+1));&lt;br /&gt;
i=n;&lt;br /&gt;
V(i)=(1/Ax^2)*(u(i)-2*u(i-1)+u(i-2));&lt;br /&gt;
end&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
La imagen resultante es:&lt;br /&gt;
[[Archivo:7.2.png|700px|thumb|centre|Gráfica de la energía (ordenadas) de un cable frente al tiempo (abcisas) que recibe una vibración en su extremo derecho y que responde a dicha vibración para b=-2. ]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
La anterior gráfica muestra el comportamiento de la cuerda como respuesta a la vibración producida en uno de sus extremos así como el movimiento transversal del punto medio al comienzo. Podemos observar el movimiento transversal de cada punto de la cuerda a través de la expresión de la energía, así como que, a medida que transcurre el tiempo, ésta se va estabilizando. La forma de la función recuerda a una función sinusoidal debido a la forma de la condición de contorno impuesta.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Categoría:Ecuaciones Diferentiales]]&lt;br /&gt;
 [[Categoría:ED13/14]]&lt;br /&gt;
 [[Categoría:Trabajos 2013-14]]&lt;/div&gt;</summary>
		<author><name>Lucia Lopez</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Ecuaci%C3%B3n_de_ondas_(grupo_2B)&amp;diff=13168</id>
		<title>Ecuación de ondas (grupo 2B)</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Ecuaci%C3%B3n_de_ondas_(grupo_2B)&amp;diff=13168"/>
				<updated>2014-05-19T21:00:44Z</updated>
		
		<summary type="html">&lt;p&gt;Lucia Lopez: /* Aproximación por el método del trapecio. */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{ TrabajoED | Ecuación de ondas. Grupo 2-B| [[:Categoría:Ecuaciones Diferenciales|Ecuaciones Diferenciales]]|[[:Categoría:ED13/14|Curso 2013-14]]| &lt;br /&gt;
Ignacio Díaz-Caneja Camblor&lt;br /&gt;
&lt;br /&gt;
Alberto Fernández Pérez&lt;br /&gt;
&lt;br /&gt;
Adela González Barbado&lt;br /&gt;
&lt;br /&gt;
Lucia López Sánchez&lt;br /&gt;
&lt;br /&gt;
Araceli Martín Candilejo&lt;br /&gt;
&lt;br /&gt;
Diego Solano López&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
== Modelización de los desplazamientos del Cable. ==&lt;br /&gt;
El problema que se tratará a continuación describe una ecuación de '''tipo hiperbólico''', una '''ecuación de ondas'''.&lt;br /&gt;
Consideramos un '''cable de 10 metros''' de longitud '''sujeto por sus extremos'''. Suponiendo que éste tiene una '''sección pequeña''' respecto a su longitud someteremos al cable a pequeñas vibraciones que estudiaremos con una modelización de la ecuación de ondas. &lt;br /&gt;
Se caracteriza al cable de una masa constante por unidad de volumen, es decir, será '''homogéneo'''. Éste, '''flexible''' a la tracción, únicamente ofrece resistencias en su dirección longitudinal, tangenciales, pero no a esfuerzos de flexión o cortes. Se supone, además, que es '''inextensible''' por lo que será lo suficientemente rígido longitudinalmente como para poder despreciar su extensibilidad.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Con esta modelización se estudiarán las '''pequeñas vibraciones''', desplazamientos transversales, a las que es sometido el cable. Para iniciar el movimiento del cable lo sujetaremos por el centro subiéndolo dos metros, lo que nos proporciona una primera condición inicial determinada por la función g(x), y soltándolo con una velocidad nula. &lt;br /&gt;
&lt;br /&gt;
&amp;lt;br/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Obtenemos la ecuación &amp;lt;math&amp;gt;u_{tt}-u_{xx}=0&amp;lt;/math&amp;gt; , de la cual se puede observar que tanto el '''módulo de la tensión''' como la '''densidad''' son '''constantes''' ya que el '''módulo de la elasticidad''' es constante, &amp;lt;math&amp;gt;c^2=1&amp;lt;/math&amp;gt; . Al ser ésta primera ecuación homogénea deducimos que transversalmente no actúa ninguna fuerza densidad espacial y temporal. Se deduce del enunciado anterior que las condiciones de frontera son '''homogéneas''', &amp;lt;math&amp;gt;u(0,t)=0&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;u(10,t)=0&amp;lt;/math&amp;gt; que nos indican que los extremos del cable no describen ningún tipo de movimiento en todo instante t al no estar sometidos a ningun tipo de fuerza. Finalmente, añadimos al sistema las condiciones iniciales, la primera de ellas, &amp;lt;math&amp;gt;u(x,0)=g(x)= 2- |\frac{2}{5}x -2|&amp;lt;/math&amp;gt;, define el '''movimiento descrito por la onda''' en el instante t=0 en cualquier punto del cable; y la segunda, &amp;lt;math&amp;gt;u_t(x,0)=0&amp;lt;/math&amp;gt;, que la onda parte de una '''velocidad inicial nula'''.&lt;br /&gt;
[[Image:DV.png|300px|thumb|right|Deslizamiento vertical del cable. ]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
\begin{cases}&lt;br /&gt;
&lt;br /&gt;
u_{tt}- u_{xx}=0  \  x∈[0,10] \ t&amp;gt;0\\&lt;br /&gt;
u(0,t)=0\\&lt;br /&gt;
u(10,t)=0\\&lt;br /&gt;
u(x,0)= 2- |\frac{2}{5}x -2|\\&lt;br /&gt;
u_t(x,0)=0&lt;br /&gt;
\end{cases}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
En los siguientes apartados se realizaran aproximaciones del sistema expuesto con tres métodos distintos de los que más tarde se hará una comparativa. Para esto último nos ayudaremos del error por lo que necesitaremos la solución analítica.&lt;br /&gt;
Como el problema consta de condiciones de frontera homogéneas, aplicamos directamente el método de separación de variables para su resolución analítica. &lt;br /&gt;
&amp;lt;br/&amp;gt;&lt;br /&gt;
==== Aproximación por el método del trapecio. ====&lt;br /&gt;
El método del trapecio se basa en aproximar una función integrando. Para ello utilizamos un número N de trapecios (en la imagen inferior hemos aproximado mediante 4 trapecios). Las integrales a resolver para poder poder aproximar una función por este método tendrán la distancia de sus límites de integración constantes para todas las integrales, a esta distancia entre los límites de integración lo llamamos paso. En el desarrollo de este método se supone que la función es continua en el intervalo en que se quiere aproximar.&lt;br /&gt;
&amp;lt;br/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Image:Trapecio.png|300px|thumb|center|Función Y(x), el área bajo la curva, se puede aproximar mediante n trapecios]]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br/&amp;gt;&lt;br /&gt;
{{matlab|codigo= &lt;br /&gt;
%u_tt-u_xx=0&lt;br /&gt;
%u(0,t)=u(l,t)=0&lt;br /&gt;
%u(x,0)=2-abs(0.4x-2)&lt;br /&gt;
%ut(x,0)=0&lt;br /&gt;
clear all&lt;br /&gt;
&lt;br /&gt;
%Datos del problema&lt;br /&gt;
L=10;&lt;br /&gt;
T=40;&lt;br /&gt;
&lt;br /&gt;
%Discretización&lt;br /&gt;
h=0.1;&lt;br /&gt;
N=L/h;&lt;br /&gt;
x=0:h:L;&lt;br /&gt;
xint=h:h:L-h;&lt;br /&gt;
dt=h;&lt;br /&gt;
t=0:dt:T;&lt;br /&gt;
&lt;br /&gt;
%Aprox. de u_xx&lt;br /&gt;
K=2*diag(ones(1,N-1))-diag(ones(1,N-2),-1)-diag(ones(1,N-2),1);&lt;br /&gt;
K=K/h^2;&lt;br /&gt;
F=zeros(N-1,1);&lt;br /&gt;
&lt;br /&gt;
%Posición inicial.&lt;br /&gt;
u0=(2-abs(xint*2/5-2))';&lt;br /&gt;
v0=zeros(N-1,1);&lt;br /&gt;
&lt;br /&gt;
%Aprox. de u_tt&lt;br /&gt;
M=[zeros(N-1),eye(N-1);-K,zeros(N-1)];&lt;br /&gt;
G=[zeros(N-1,1);F];&lt;br /&gt;
&lt;br /&gt;
%Aproximación por el método del Trapecio&lt;br /&gt;
W0=[u0;v0];&lt;br /&gt;
WW=W0;&lt;br /&gt;
sol=zeros(length(t),N+1);&lt;br /&gt;
sol(1,:)=[0,W0(1:N-1)',0];&lt;br /&gt;
for j=1:length(t)-1&lt;br /&gt;
    WW=(eye(2*N-2)-dt/2*M)\(eye(2*N-2)+dt/2*M)*WW;&lt;br /&gt;
    sol(j+1,:)=[0,WW(1:N-1)',0];&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
%Dibujo de la solución&lt;br /&gt;
[xx,tt]=meshgrid(x,t);&lt;br /&gt;
surf(xx,tt,sol);&lt;br /&gt;
xlabel('Desplazamiento horizontal');&lt;br /&gt;
ylabel('Tiempo');&lt;br /&gt;
zlabel('Desplazamiento vertical');}}&lt;br /&gt;
&lt;br /&gt;
[[Image:klklk.jpg|700px|thumb|center|Aproximación por el método del Trapecio.]]&lt;br /&gt;
&lt;br /&gt;
Además de saber que el método del trapecio tiene orden de precisión 2 y, por tanto, es un buen método a la hora de aproximar, gráficamente también podemos observar que este método es bastante preciso.&lt;br /&gt;
&lt;br /&gt;
==== Aproximación por el método de Euler. ====&lt;br /&gt;
Se exponen en este apartados dos tipos de aproximaciones de Euler.&lt;br /&gt;
&lt;br /&gt;
Este método se basa en la posibilidad de aproximar una función original mediante rectas tangentes partiendo de un punto dado. Sabiendo que la recta tangente de una función en un punto es la derivada en dicho punto, este método consiste en calcular derivadas de la función en diferentes puntos pertenecientes a ella. Estos puntos serán tomados con la misma distancia a lo largo de la recta, a esta distancia la denominamos paso de discretización. &lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Image:Euler.png|300px|thumb|center|Aproximación de una función por el método de Euler]]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===== Euler Explícito. =====&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
%utt-uxx=0&lt;br /&gt;
%u(0,t)=u(l,t)=0&lt;br /&gt;
%u(x,0)=2-abs(0.4x-2)&lt;br /&gt;
%ut(x,0)=0&lt;br /&gt;
clear all&lt;br /&gt;
L=10;&lt;br /&gt;
T=40;&lt;br /&gt;
h=0.1;&lt;br /&gt;
N=L/h;&lt;br /&gt;
x=0:h:L;&lt;br /&gt;
xint=h:h:L-h;&lt;br /&gt;
dt=h;&lt;br /&gt;
t=0:dt:T;&lt;br /&gt;
K=2*diag(ones(1,N-1))-diag(ones(1,N-2),-1)-diag(ones(1,N-2),1);&lt;br /&gt;
K=K/h^2;&lt;br /&gt;
F=zeros(N-1,1);&lt;br /&gt;
u0=2-abs((xint*2/5-2))';&lt;br /&gt;
v0=zeros(N-1,1);&lt;br /&gt;
M=[zeros(N-1),eye(N-1);-K,zeros(N-1)];&lt;br /&gt;
G=[zeros(N-1,1);F];&lt;br /&gt;
W0=[u0;v0];&lt;br /&gt;
WW=W0;&lt;br /&gt;
sol=zeros(length(t),N+1);&lt;br /&gt;
sol(1,:)=[0,W0(1:N-1)',0];&lt;br /&gt;
for j=1:length(t)-1&lt;br /&gt;
    WW=WW+dt*M*WW;&lt;br /&gt;
    sol(j+1,:)=[0,WW(1:N-1)',0];&lt;br /&gt;
end&lt;br /&gt;
[xx,tt]=meshgrid(x,t);&lt;br /&gt;
surf(xx,tt,sol);}}&lt;br /&gt;
===== Euler Modificado. =====&lt;br /&gt;
&lt;br /&gt;
Este método se basa en la misma idea que el anterior, pero hace un refinamiento en la aproximación, tomando un promedio entre las pendientes pues esto parece más razonable para la obtención de un valor más preciso.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
%utt-uxx=0&lt;br /&gt;
%u(0,t)=u(l,t)=0&lt;br /&gt;
%u(x,0)=2-abs(0.4x-2)&lt;br /&gt;
%ut(x,0)=0&lt;br /&gt;
clear all&lt;br /&gt;
L=10;&lt;br /&gt;
T=40;&lt;br /&gt;
h=0.1;&lt;br /&gt;
N=L/h;&lt;br /&gt;
x=0:h:L;&lt;br /&gt;
xint=h:h:L-h;&lt;br /&gt;
dt=h;&lt;br /&gt;
t=0:dt:T;&lt;br /&gt;
K=2*diag(ones(1,N-1))-diag(ones(1,N-2),-1)-diag(ones(1,N-2),1);&lt;br /&gt;
K=K/h^2;&lt;br /&gt;
F=zeros(N-1,1);&lt;br /&gt;
u0=2-abs((xint*2/5-2))';&lt;br /&gt;
v0=zeros(N-1,1);&lt;br /&gt;
M=[zeros(N-1),eye(N-1);-K,zeros(N-1)];&lt;br /&gt;
G=[zeros(N-1,1);F];&lt;br /&gt;
W0=[u0;v0];&lt;br /&gt;
WW=W0;&lt;br /&gt;
sol=zeros(length(t),N+1);&lt;br /&gt;
sol(1,:)=[0,W0(1:N-1)',0];&lt;br /&gt;
for j=1:length(t)-1&lt;br /&gt;
    k1=M*WW;&lt;br /&gt;
    WW=(eye(2*N-2)+dt*M/2)*WW+(dt/2)*k1+(dt^2)*M*k1/2;&lt;br /&gt;
    sol(j+1,:)=[0,WW(1:N-1)',0];&lt;br /&gt;
end&lt;br /&gt;
[xx,tt]=meshgrid(x,t);&lt;br /&gt;
surf(xx,tt,sol);}}&lt;br /&gt;
&lt;br /&gt;
==== Aproximación por Fourier con diferentes términos de series. ====&lt;br /&gt;
En este apartado se ofrece una aproximación alternativa a las anteriores. Se muestran '''cinco iteraciones''' distintas del '''método del Fourier''' que se compararan entre sí y con los métodos anteriores, Trapecio y Euler. Este método de aproximación depende del número de términos de serie (lo denominamos con la letra Q) con los que se realice el programa de Fourier.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br/&amp;gt;&lt;br /&gt;
Puesto que la realización de este método es la misma sea cual sea el número de serie elegido, se han expuesto únicamente dos casos de Q para una mayor claridad del programa.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo= %utt-uxx=0&lt;br /&gt;
%u(0,t)=u(l,t)=0&lt;br /&gt;
%u(x,0)=2-abs(0.4x-2)&lt;br /&gt;
%ut(x,0)=0&lt;br /&gt;
&lt;br /&gt;
%1 iteracion&lt;br /&gt;
clear all&lt;br /&gt;
L=10;&lt;br /&gt;
T=40;&lt;br /&gt;
Q=1;&lt;br /&gt;
h=0.1;&lt;br /&gt;
N=L/h;&lt;br /&gt;
x=0:h:L;&lt;br /&gt;
dt=h;&lt;br /&gt;
t=0:dt:T;&lt;br /&gt;
sol=zeros(length(t),N+1);&lt;br /&gt;
for k=1:Q&lt;br /&gt;
    phi=sin(k/L*pi*x);&lt;br /&gt;
    a=trapz(x,(2-abs(2/5*x-2)).*phi)/(trapz(x,phi.^2));&lt;br /&gt;
    b=0;&lt;br /&gt;
    T=a.*cos(k*pi*t/L);&lt;br /&gt;
    sol=sol+T'*phi;&lt;br /&gt;
end&lt;br /&gt;
[xx,tt]=meshgrid(x,t);&lt;br /&gt;
figure (1)&lt;br /&gt;
surf(xx,tt,sol)&lt;br /&gt;
xlabel('Desplazamiento horizontal');&lt;br /&gt;
ylabel('Tiempo');&lt;br /&gt;
zlabel('Desplazamiento vertical');&lt;br /&gt;
&lt;br /&gt;
%3 iteracion&lt;br /&gt;
clear all&lt;br /&gt;
L=10;&lt;br /&gt;
T=40;&lt;br /&gt;
Q=3;&lt;br /&gt;
h=0.1;&lt;br /&gt;
N=L/h;&lt;br /&gt;
x=0:h:L;&lt;br /&gt;
dt=h;&lt;br /&gt;
t=0:dt:T;&lt;br /&gt;
sol=zeros(length(t),N+1);&lt;br /&gt;
for k=1:Q&lt;br /&gt;
    phi=sin(k/L*pi*x);&lt;br /&gt;
    a=trapz(x,(2-abs(2/5*x-2)).*phi)/(trapz(x,phi.^2));&lt;br /&gt;
    b=0;&lt;br /&gt;
    T=a.*cos(k*pi*t/L);&lt;br /&gt;
    sol=sol+T'*phi;&lt;br /&gt;
end&lt;br /&gt;
[xx,tt]=meshgrid(x,t);&lt;br /&gt;
figure (2)&lt;br /&gt;
surf(xx,tt,sol)&lt;br /&gt;
xlabel('Desplazamiento horizontal');&lt;br /&gt;
ylabel('Tiempo');&lt;br /&gt;
zlabel('Desplazamiento vertical');}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br/&amp;gt;&lt;br /&gt;
[[Image:81tF2.jpg|525px|thumb|left|Aproximación por el método del Trapecio con un término de serie.]]&lt;br /&gt;
[[Image:82tF.jpg|525px|thumb|center|Aproximación por el método del Trapecio con tres términos de serie.]]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br/&amp;gt; &lt;br /&gt;
&lt;br /&gt;
[[Image:83tF.jpg|525px|thumb|left|Aproximación por el método del Trapecio con cinco términos de serie.]]&lt;br /&gt;
[[Image:84tF.jpg|525px|thumb|center|Aproximación por el método del Trapecio con diez términos de serie.]]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Image:85tF.jpg|525px|thumb|center|Aproximación por el método del Trapecio con veinte términos de serie.]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
En este método podemos observar fijándonos en las gráficas que a mayor número de términos (mayor Q), mayor es la aproximación obtenida.&lt;br /&gt;
&lt;br /&gt;
Realizando una comparación con los otros métodos, se puede observar, fijándonos en las gráficas y en los órdenes de precisión, que el método que mejor aproxima  la ecuación del problema es el método del trapecio, seguido de Euler modificado y, por último, Euler, teniendo mayor orden el que mejor aproxima la función.&lt;br /&gt;
&lt;br /&gt;
Gráficamente podemos confirmar este hecho, dándonos cuenta que las gráficas más similares son fourier con Q=20 y el método del trapecio.&lt;br /&gt;
&lt;br /&gt;
== Energía del Cable. ==&lt;br /&gt;
&lt;br /&gt;
La energía del cable que viene definida por la función: &lt;br /&gt;
\begin{equation}&lt;br /&gt;
E(t) = \int_{0}^{L} (u_{t}^{2}(x,t)+ u_{x}^{2}(x,t)) \cdot dx&lt;br /&gt;
\end{equation}&lt;br /&gt;
&lt;br /&gt;
El método utilizado en el desarrollo numérico de está expresión es el '''método de diferencias finitas'''&lt;br /&gt;
(Funciona calculando de manera aproximada las soluciones a las ecuaciones diferenciales usando ecuaciones diferenciales finitas para aproximar derivadas.).&lt;br /&gt;
&lt;br /&gt;
'''FUNCIÓN:'''&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
function v = deriva(x,y,t)&lt;br /&gt;
&lt;br /&gt;
n = length(x);&lt;br /&gt;
del=zeros(1,n);&lt;br /&gt;
&lt;br /&gt;
if t==1&lt;br /&gt;
    &lt;br /&gt;
    i=1;&lt;br /&gt;
    del(1)=(y(i)-y(i+1))/(-x(i)+x(i+1));&lt;br /&gt;
&lt;br /&gt;
    for i=2:n&lt;br /&gt;
    del(i)=(y(i)-y(i-1))/(x(i)-x(i-1));&lt;br /&gt;
    end &lt;br /&gt;
    &lt;br /&gt;
elseif t==-1&lt;br /&gt;
&lt;br /&gt;
    for i=1:n-1&lt;br /&gt;
    del(i)=(y(i)-y(i+1))/(x(i)-x(i+1));&lt;br /&gt;
    end &lt;br /&gt;
    &lt;br /&gt;
    i=n;&lt;br /&gt;
    del(i)=(y(i)-y(i-1))/(x(i)-x(i-1));&lt;br /&gt;
    &lt;br /&gt;
elseif t==0&lt;br /&gt;
    &lt;br /&gt;
    i=1;&lt;br /&gt;
    del(1)=(y(i)-y(i+1))/(+x(i)-x(i+1));&lt;br /&gt;
    &lt;br /&gt;
    for i=2:n-1&lt;br /&gt;
    del(i)=(y(i+1)-y(i-1))/(2*(x(i)-x(i-1)));&lt;br /&gt;
    end &lt;br /&gt;
    &lt;br /&gt;
    i=n;&lt;br /&gt;
    del(n)=(y(i)-y(i-1))/(x(i)-x(i-1));  &lt;br /&gt;
    &lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
v=del;&lt;br /&gt;
&lt;br /&gt;
end&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''PROGRAMA:'''&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
clc;clear all;&lt;br /&gt;
L=10;dx=0.1;N=L/dx;&lt;br /&gt;
x=dx:dx:L-dx;&lt;br /&gt;
xtot=0:dx:L;&lt;br /&gt;
T=40;dt=0.1;t=0:dt:T;&lt;br /&gt;
K=2*diag(ones(1,N-1))-diag(ones(1,N-2),1)-diag(ones(1,N-2),-1);&lt;br /&gt;
K=(1/dx^2)*K;&lt;br /&gt;
U=(2-abs((x*2/5-2)))';&lt;br /&gt;
V=(0*x)';&lt;br /&gt;
sol(1,:)=[0 U' 0];&lt;br /&gt;
for i=1:length(t)-1;&lt;br /&gt;
    U=U+dt*V;&lt;br /&gt;
    V=V-dt*K*U;&lt;br /&gt;
    sol(i+1,:)=[0 U' 0];&lt;br /&gt;
end&lt;br /&gt;
%DERIVAMOS LA SOLUCION EN x Y EN t:&lt;br /&gt;
dsol_dx=ones(size(sol));&lt;br /&gt;
for i=1:length(t)&lt;br /&gt;
    dsol_dx(i,:)=deriva(sol(i,:),xtot,0);&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
dsol_dt=ones(size(sol));&lt;br /&gt;
for i=1:length(xtot)&lt;br /&gt;
    dsol_dt(:,i)=deriva(sol(:,i),t,1); &lt;br /&gt;
end&lt;br /&gt;
%SUMAMOS LAS DERIVADAS AL CUADRADO E INTEGRAMOS:&lt;br /&gt;
dE=zeros(1,size(t,1));&lt;br /&gt;
for i=1:length(xtot)&lt;br /&gt;
    dE=dE+(dsol_dt(i,:).^2+dsol_dx(i,:).^2)*dx;&lt;br /&gt;
end&lt;br /&gt;
xtot=0:dx:L;&lt;br /&gt;
[xx,tt]=meshgrid(xtot,t);&lt;br /&gt;
figure(1)&lt;br /&gt;
surf(xx,tt,dsol_dx);&lt;br /&gt;
figure(2)&lt;br /&gt;
surf(xx,tt,dsol_dt);&lt;br /&gt;
plot(dE,t)&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
El resultado habría de ser una gráfica que representase la evolución de la energía de la cuerda frente al transcurso del tiempo. No obstante, en nuestra resolución aparece una gráfica en blanco que ajudicamos o a un posible error en el código, o que podemos interpretar como que la energía tiende a infinito.&lt;br /&gt;
&lt;br /&gt;
== Aplicaciones. ==&lt;br /&gt;
&lt;br /&gt;
==== Sumersión en un medio viscoso. ====&lt;br /&gt;
&lt;br /&gt;
Suponemos ahora la inmersión del cable en una medio viscoso. Este medio viscoso produce un amortiguamiento en el movimiento del cable, con lo que la anterior ecuación diferencial se convertiría en &lt;br /&gt;
\begin{equation}&lt;br /&gt;
u_{tt}-u_{xx}+au_{t}=0&lt;br /&gt;
\end{equation} &lt;br /&gt;
, siendo '''&amp;lt;math&amp;gt; a  &amp;lt;/math&amp;gt;''' una constante de amortiguamiento propia del medio viscoso.&lt;br /&gt;
Puesto que la función '''&amp;lt;math&amp;gt; u(x,t)  &amp;lt;/math&amp;gt;''' se ve afectada ahora por el medio viscoso, y más directamente, por la constante '''&amp;lt;math&amp;gt; a  &amp;lt;/math&amp;gt;''' que actúa en su nombre, la energía del cable ,que se expresaba como una integral en función de '''&amp;lt;math&amp;gt; u(x,t)  &amp;lt;/math&amp;gt;''' también se va a ver afectada:&lt;br /&gt;
\begin{equation}&lt;br /&gt;
E(t) = \int_{0}^{L} (u_{t}^{2}(x,t)+ u_{x}^{2}(x,t)) \cdot dx&lt;br /&gt;
\end{equation}&lt;br /&gt;
&lt;br /&gt;
El obetivo del siguiente código será hallar una representación de la evolución de la energía en función del tiempo a raíz de la modificación de la función '''&amp;lt;math&amp;gt; u(x,t)  &amp;lt;/math&amp;gt;'''. Para ello asignaremos distintos valores a la constante '''&amp;lt;math&amp;gt; a  &amp;lt;/math&amp;gt;'''. Éstos van a ser:&lt;br /&gt;
'''&amp;lt;math&amp;gt; a=0  &amp;lt;/math&amp;gt;''' (la energía para este valor resultará igual que la hallada en el apartado anterior)&lt;br /&gt;
'''&amp;lt;math&amp;gt; a=1  &amp;lt;/math&amp;gt;'''&lt;br /&gt;
'''&amp;lt;math&amp;gt; a=4  &amp;lt;/math&amp;gt;'''&lt;br /&gt;
'''&amp;lt;math&amp;gt; a=10  &amp;lt;/math&amp;gt;'''&lt;br /&gt;
''&amp;lt;math&amp;gt; a=100  &amp;lt;/math&amp;gt;'''&lt;br /&gt;
&lt;br /&gt;
El procedimiento numérico volverá a seguir el método de '''diferencias finitas''':&lt;br /&gt;
&lt;br /&gt;
'''PROGRAMA:'''&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
clc;clear all;close all;&lt;br /&gt;
%Datos&lt;br /&gt;
dx=0.1;L=10;&lt;br /&gt;
dt=0.001;NT=40;&lt;br /&gt;
A=[0,1,4,10,100];&lt;br /&gt;
x=0:dx:L;&lt;br /&gt;
t=0:dt:NT;&lt;br /&gt;
ENE=zeros(5,length(t));&lt;br /&gt;
&lt;br /&gt;
%Condición de contorno: U(0,t)=U(L,t)=0;&lt;br /&gt;
&lt;br /&gt;
for k=1:5&lt;br /&gt;
&lt;br /&gt;
%Vector solución y derivada temporal de la solución&lt;br /&gt;
%t=0&amp;lt;&amp;gt;T(1) es donde se guardan las condiciones iniciales&lt;br /&gt;
&lt;br /&gt;
U=zeros(length(t),length(x));&lt;br /&gt;
Dt_U=zeros(length(t),length(x));&lt;br /&gt;
Dx_U=zeros(length(t),length(x));    &lt;br /&gt;
&lt;br /&gt;
%Condición inicial: Estiramos 2 m del centro&lt;br /&gt;
%Modelizado como dos rectas antisimétricas que se cortan en x=5 y&lt;br /&gt;
%sujetas en x=0 y x=L.&lt;br /&gt;
&lt;br /&gt;
U(1,:)=2*sin(x*pi/L);&lt;br /&gt;
Dt_U(1,:)=zeros(1,length(x))';&lt;br /&gt;
D2t_U=Ecuacion5(U(1,:),x,-1);&lt;br /&gt;
&lt;br /&gt;
%Inicio del esquema numérico&lt;br /&gt;
%empieza en 2 ya que el 1 es la cond. inicial&lt;br /&gt;
&lt;br /&gt;
%ESQUEMA NEWMARK&lt;br /&gt;
&lt;br /&gt;
 for i=2:length(t)&lt;br /&gt;
    iter=[k,i]&lt;br /&gt;
    Ua=U(i-1,:);&lt;br /&gt;
    Dt_Ua=Dt_U(i-1,:);&lt;br /&gt;
    D2t_Ua=D2t_U;&lt;br /&gt;
    %Derivada segunda respecto del tiempo en el instante t, se obtiene de&lt;br /&gt;
    %eq. diferencial u_tt=f(x,u,u_x,u_xx)&lt;br /&gt;
    D2t_U=Ecuacion5(U(i-1,:),x,t(i))-A(k)*Dt_Ua;&lt;br /&gt;
    %Derivada primera&lt;br /&gt;
    Dt_U(i,:)=Dt_Ua+0.5*dt*(D2t_Ua+D2t_U);&lt;br /&gt;
    %Ecuacion&lt;br /&gt;
    U(i,:) = Ua+Dt_Ua*dt+(1/6)*(D2t_Ua+D2t_U)*dt^2;&lt;br /&gt;
 end&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 %ENERGIA&lt;br /&gt;
 for i=1:length(t)&lt;br /&gt;
    Dx_U(i,:)=deriva(x,U(i,:),0);&lt;br /&gt;
 end&lt;br /&gt;
dE=zeros(length(t),1);&lt;br /&gt;
for i=1:length(x)&lt;br /&gt;
    dE=dE+(Dt_U(:,i).^2+Dx_U(:,i).^2)*dx;&lt;br /&gt;
end&lt;br /&gt;
 ENE(k,:)=dE;&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
 figure(1)&lt;br /&gt;
 hold on&lt;br /&gt;
 grid&lt;br /&gt;
 aa=find(x==L/4);&lt;br /&gt;
 ab=find(x==3*L/4);&lt;br /&gt;
 legend('A=0','A=1','A=4','A=10','A=100');&lt;br /&gt;
 plot(t,ENE(1,:),t,ENE(2,:),t,ENE(3,:),t,ENE(4,:),t,ENE(5,:));&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''FUNCIONES:'''&lt;br /&gt;
DERIVA:&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
function v = deriva(x,y,t)&lt;br /&gt;
n = length(x);&lt;br /&gt;
del=zeros(1,n);&lt;br /&gt;
if t==1&lt;br /&gt;
    i=1;&lt;br /&gt;
    del(1)=(y(i)-y(i+1))/(-x(i)+x(i+1));&lt;br /&gt;
    for i=2:n&lt;br /&gt;
    del(i)=(y(i)-y(i-1))/(x(i)-x(i-1));&lt;br /&gt;
    end &lt;br /&gt;
elseif t==-1&lt;br /&gt;
    for i=1:n-1&lt;br /&gt;
    del(i)=(y(i)-y(i+1))/(x(i)-x(i+1));&lt;br /&gt;
    end &lt;br /&gt;
    i=n;&lt;br /&gt;
    del(i)=(y(i)-y(i-1))/(x(i)-x(i-1));&lt;br /&gt;
elseif t==0&lt;br /&gt;
    i=1;&lt;br /&gt;
    del(1)=(y(i)-y(i+1))/(+x(i)-x(i+1));&lt;br /&gt;
    for i=2:n-1&lt;br /&gt;
    del(i)=(y(i+1)-y(i-1))/(2*(x(i)-x(i-1)));&lt;br /&gt;
    end &lt;br /&gt;
    i=n;&lt;br /&gt;
    del(n)=(y(i)-y(i-1))/(x(i)-x(i-1));  &lt;br /&gt;
end&lt;br /&gt;
v=del;&lt;br /&gt;
end&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
'''ECUACIÓN 5:'''&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
function [ V ] = Ecuacion5( u,x,t )&lt;br /&gt;
%se guarda aquí la ecuación diferencial del tipo u_tt=f(x,u,u_x,u_xx)&lt;br /&gt;
%INCLUIDAS LAS CC AQUÍ&lt;br /&gt;
%PARA u_tt=u_xx&lt;br /&gt;
%CC: u(0,t)=u(L,t)=0;&lt;br /&gt;
&lt;br /&gt;
Ax=x(2)-x(1);&lt;br /&gt;
n=length(u);&lt;br /&gt;
V=zeros(1,n);&lt;br /&gt;
&lt;br /&gt;
%Las condiciones de contorno vienen en x(1)=0 y x(Nx)=L&lt;br /&gt;
u(1)=0;&lt;br /&gt;
&lt;br /&gt;
if(t==-1)&lt;br /&gt;
    u(n)=0;&lt;br /&gt;
else&lt;br /&gt;
    u(n)=0;&lt;br /&gt;
    %u(n)=sin(2*pi*F0*t);&lt;br /&gt;
    %u(n)=(1/(b*Ax-1))*u(n-1);&lt;br /&gt;
end&lt;br /&gt;
for i=2:n-1&lt;br /&gt;
    &lt;br /&gt;
    V(i)=(1/Ax^2)*(u(i+1)-2*u(i)+u(i-1));&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
i=1;&lt;br /&gt;
V(i)=(1/Ax^2)*(u(i+2)-2*u(i+1));&lt;br /&gt;
i=n;&lt;br /&gt;
V(i)=(1/Ax^2)*(u(i)-2*u(i-1)+u(i-2));&lt;br /&gt;
end&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
La gráfica buscada es:&lt;br /&gt;
[[Archivo:Graficadelaenergiaenunmedioviscoso.png|700px|thumb|centre|Gráfica de la energía(ordenadas) del cable respecto del tiempo (Abcisas).]]&lt;br /&gt;
En la gráfica se aprecian cuatro curvas de distintos colores correspondientes a '''&amp;lt;math&amp;gt; a=0  &amp;lt;/math&amp;gt;''','''&amp;lt;math&amp;gt; a=1  &amp;lt;/math&amp;gt;''','''&amp;lt;math&amp;gt; a=4  &amp;lt;/math&amp;gt;''','''&amp;lt;math&amp;gt; a=10  &amp;lt;/math&amp;gt;''',''&amp;lt;math&amp;gt; a=100  &amp;lt;/math&amp;gt;'''.&lt;br /&gt;
&lt;br /&gt;
Como podemos apreciar el valor de la energía disminuye a medida que aumentamos el valor de &amp;quot;a&amp;quot;. Esto es debido a que &amp;quot;a&amp;quot; define el coeficiente de amortiguamiento del líquido en el cual se encuentra la cuerda. Luego, dicha disminución de energía se produce por la disipación en el medio de gran parte de la energía inicial.&lt;br /&gt;
&lt;br /&gt;
==== Sujeción a una estructura de vibración periódica. ====&lt;br /&gt;
&lt;br /&gt;
En este caso supondremos que el extremo derecho que sujeta el cable está sometido a una vibración periódica de frecuencia  &amp;lt;math&amp;gt; F_0 &amp;lt;/math&amp;gt; [Herzios]. Al haber una vibración externa que afecta directamente al cable la expresión de su movimiento y, por consecuencia, de su energía, se va a ver modificada. Nosotros incluiremos esta modificación en la función &amp;lt;math&amp;gt; f(t) &amp;lt;/math&amp;gt; de problema de valor inicial que venimos tratando. Esta función va a pasar a ser: &lt;br /&gt;
\begin{equation}&lt;br /&gt;
f(t)= sin(2 \pi F_0t)&lt;br /&gt;
\end{equation}&lt;br /&gt;
&lt;br /&gt;
El objetivo será el de ver cómo afecta esta alteración en el desarrollo de la energía del cable frente al tiempo.&lt;br /&gt;
Para nuestro cálculo numérico especificaremos para las siguientes situaciones:&lt;br /&gt;
En primer lugar, para: &amp;lt;math&amp;gt; F_0= \frac{1}{L} + 0,01 &amp;lt;/math&amp;gt;&lt;br /&gt;
Después,para: &amp;lt;math&amp;gt; F_0= \frac{1}{L} - 0,01 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Y para finalizar, lo estudiaremos en un intervalo de tiempo de '''t=0''' hasta '''t=60''' : &amp;lt;math&amp;gt;t \in (0,60)&amp;lt;/math&amp;gt; [segundos].&lt;br /&gt;
&lt;br /&gt;
El código matemático para matlab / octave:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''PROGRAMA:'''&lt;br /&gt;
{{matlab|codigo= &lt;br /&gt;
clc;clear all;close all;&lt;br /&gt;
&lt;br /&gt;
%Datos&lt;br /&gt;
&lt;br /&gt;
dx=0.1;L=10;dt=0.0001;NT=60;&lt;br /&gt;
A=[0,1,4,10,100];&lt;br /&gt;
x=0:dx:L;t=0:dt:NT;&lt;br /&gt;
ENE=zeros(5,length(t));&lt;br /&gt;
&lt;br /&gt;
%Condición de contorno: U(0,t)=U(L,t)=0;&lt;br /&gt;
for k=1&lt;br /&gt;
%Vector solución y derivada temporal de la solución&lt;br /&gt;
%t=0&amp;lt;&amp;gt;T(1) es donde se guardan las condiciones iniciales&lt;br /&gt;
&lt;br /&gt;
U=zeros(length(t),length(x));&lt;br /&gt;
Dt_U=zeros(length(t),length(x));&lt;br /&gt;
Dx_U=zeros(length(t),length(x));&lt;br /&gt;
&lt;br /&gt;
%Condición inicial: Estiramos 2 m del centro&lt;br /&gt;
%Modelizado como dos rectas antisimétricas que se cortan en x=5 y&lt;br /&gt;
%sujetas en x=0 y x=L.&lt;br /&gt;
&lt;br /&gt;
U(1,:)=2*sin(x*pi/L);&lt;br /&gt;
Dt_U(1,:)=zeros(1,length(x))';&lt;br /&gt;
D2t_U=Ecuacion6(U(1,:),x,-1);&lt;br /&gt;
&lt;br /&gt;
%Inicio del esquema numérico&lt;br /&gt;
%empieza en 2 ya que el 1 es la cond. inicial&lt;br /&gt;
&lt;br /&gt;
%ESQUEMA NEWMARK&lt;br /&gt;
&lt;br /&gt;
 for i=2:length(t)&lt;br /&gt;
    iter=[k,i]&lt;br /&gt;
    Ua=U(i-1,:);&lt;br /&gt;
    Dt_Ua=Dt_U(i-1,:);&lt;br /&gt;
    D2t_Ua=D2t_U;&lt;br /&gt;
    %Derivada segunda respecto del tiempo en el instante t, se obtiene de&lt;br /&gt;
    %eq. diferencial u_tt=f(x,u,u_x,u_xx)&lt;br /&gt;
    D2t_U=Ecuacion6(U(i-1,:),x,t(i))-A(k)*Dt_Ua;&lt;br /&gt;
    %Derivada primera&lt;br /&gt;
    Dt_U(i,:)=Dt_Ua+0.5*dt*(D2t_Ua+D2t_U);&lt;br /&gt;
    %Ecuacion&lt;br /&gt;
    U(i,:) = Ua+Dt_Ua*dt+(1/6)*(D2t_Ua+D2t_U)*dt^2;&lt;br /&gt;
 end&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 %ENERGIA&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 for i=1:length(t)&lt;br /&gt;
    Dx_U(i,:)=deriva(x,U(i,:),0);&lt;br /&gt;
 end&lt;br /&gt;
dE=zeros(length(t),1);&lt;br /&gt;
for i=1:length(x)&lt;br /&gt;
    dE=dE+(Dt_U(:,i).^2+Dx_U(:,i).^2)*dx;&lt;br /&gt;
end&lt;br /&gt;
 ENE(k,:)=dE;&lt;br /&gt;
end&lt;br /&gt;
 figure(1)&lt;br /&gt;
 hold on&lt;br /&gt;
 grid&lt;br /&gt;
 aa=find(x==L/4);&lt;br /&gt;
 ab=find(x==3*L/4);&lt;br /&gt;
 imagesc(U)&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''FUNCIONES:'''&lt;br /&gt;
&lt;br /&gt;
DERIVA:&lt;br /&gt;
{{matlab|codigo= &lt;br /&gt;
function v = deriva(x,y,t)&lt;br /&gt;
n = length(x);&lt;br /&gt;
del=zeros(1,n);&lt;br /&gt;
if t==1&lt;br /&gt;
    i=1;&lt;br /&gt;
    del(1)=(y(i)-y(i+1))/(-x(i)+x(i+1));&lt;br /&gt;
    for i=2:n&lt;br /&gt;
    del(i)=(y(i)-y(i-1))/(x(i)-x(i-1));&lt;br /&gt;
    end &lt;br /&gt;
elseif t==-1&lt;br /&gt;
    for i=1:n-1&lt;br /&gt;
    del(i)=(y(i)-y(i+1))/(x(i)-x(i+1));&lt;br /&gt;
    end &lt;br /&gt;
    i=n;&lt;br /&gt;
    del(i)=(y(i)-y(i-1))/(x(i)-x(i-1));&lt;br /&gt;
elseif t==0&lt;br /&gt;
    i=1;&lt;br /&gt;
    del(1)=(y(i)-y(i+1))/(+x(i)-x(i+1));&lt;br /&gt;
    for i=2:n-1&lt;br /&gt;
    del(i)=(y(i+1)-y(i-1))/(2*(x(i)-x(i-1)));&lt;br /&gt;
    end &lt;br /&gt;
    i=n;&lt;br /&gt;
    del(n)=(y(i)-y(i-1))/(x(i)-x(i-1));  &lt;br /&gt;
end&lt;br /&gt;
v=del;&lt;br /&gt;
end&lt;br /&gt;
}}&lt;br /&gt;
'''ECUACIÓN 6:'''&lt;br /&gt;
&lt;br /&gt;
function [ V ] = Ecuacion6( u,x,t )&lt;br /&gt;
{{matlab|codigo= &lt;br /&gt;
&lt;br /&gt;
%se guarda aquí la ecuación diferencial del tipo u_tt=f(x,u,u_x,u_xx)&lt;br /&gt;
%INCLUIDAS LAS CC AQUÍ!&lt;br /&gt;
%PARA u_tt=u_xx&lt;br /&gt;
%CC: u(0,t)=u(L,t)=0;&lt;br /&gt;
&lt;br /&gt;
Ax=x(2)-x(1);&lt;br /&gt;
n=length(u);&lt;br /&gt;
V=zeros(1,n);&lt;br /&gt;
F0=(1/x(n))+0.01;&lt;br /&gt;
b=-2;&lt;br /&gt;
&lt;br /&gt;
%Las condiciones de contorno vienen en x(1)=0 y x(Nx)=L&lt;br /&gt;
&lt;br /&gt;
u(1)=0;&lt;br /&gt;
if(t==-1)&lt;br /&gt;
    u(n)=0;&lt;br /&gt;
else&lt;br /&gt;
    %u(n)=0;&lt;br /&gt;
    u(n)=sin(2*pi*F0*t);&lt;br /&gt;
    %u(n)=(1/(b*Ax-1))*u(n-1);&lt;br /&gt;
end&lt;br /&gt;
for i=2:n-1&lt;br /&gt;
    V(i)=(1/Ax^2)*(u(i+1)-2*u(i)+u(i-1));&lt;br /&gt;
end&lt;br /&gt;
i=1;&lt;br /&gt;
V(i)=(1/Ax^2)*(u(i+2)-2*u(i+1));&lt;br /&gt;
i=n;&lt;br /&gt;
V(i)=(1/Ax^2)*(u(i)-2*u(i-1)+u(i-2));&lt;br /&gt;
end&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:6.1.png|700px|thumb|centre|Gráfica en tres dimensiones de la energía de un cable cuyo extremo derecho está sometido a una vibración externa periódica para F_0=1/L +0,1]]&lt;br /&gt;
'''function [ V ] = Ecuacion6( u,x,t )'''&lt;br /&gt;
{{matlab|codigo= &lt;br /&gt;
%se guarda aquí la ecuación diferencial del tipo u_tt=f(x,u,u_x,u_xx)&lt;br /&gt;
%INCLUIDAS LAS CC AQUÍ!&lt;br /&gt;
%PARA u_tt=u_xx&lt;br /&gt;
%CC: u(0,t)=u(L,t)=0;&lt;br /&gt;
&lt;br /&gt;
Ax=x(2)-x(1);&lt;br /&gt;
n=length(u);&lt;br /&gt;
V=zeros(1,n);&lt;br /&gt;
F0=(1/x(n))-0.01;&lt;br /&gt;
b=-2;&lt;br /&gt;
&lt;br /&gt;
%Las condiciones de contorno vienen en x(1)=0 y x(Nx)=L&lt;br /&gt;
&lt;br /&gt;
u(1)=0;&lt;br /&gt;
if(t==-1)&lt;br /&gt;
    u(n)=0;&lt;br /&gt;
else&lt;br /&gt;
    %u(n)=0;&lt;br /&gt;
    u(n)=sin(2*pi*F0*t);&lt;br /&gt;
    %u(n)=(1/(b*Ax-1))*u(n-1);&lt;br /&gt;
end&lt;br /&gt;
for i=2:n-1&lt;br /&gt;
    V(i)=(1/Ax^2)*(u(i+1)-2*u(i)+u(i-1));&lt;br /&gt;
end&lt;br /&gt;
i=1;&lt;br /&gt;
V(i)=(1/Ax^2)*(u(i+2)-2*u(i+1));&lt;br /&gt;
i=n;&lt;br /&gt;
V(i)=(1/Ax^2)*(u(i)-2*u(i-1)+u(i-2));&lt;br /&gt;
end&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:6.2.png|700px|thumb|centre|Gráfica en tres dimensiones de la energía de un cable cuyo extremo derecho está sometido a una vibración externa periódica.]]&lt;br /&gt;
&lt;br /&gt;
'''function [ V ] = Ecuacion6( u,x,t )'''&lt;br /&gt;
{{matlab|codigo= &lt;br /&gt;
%se guarda aquí la ecuación diferencial del tipo u_tt=f(x,u,u_x,u_xx)&lt;br /&gt;
%INCLUIDAS LAS CC AQUÍ!&lt;br /&gt;
%PARA u_tt=u_xx&lt;br /&gt;
%CC: u(0,t)=u(L,t)=0;&lt;br /&gt;
&lt;br /&gt;
Ax=x(2)-x(1);&lt;br /&gt;
n=length(u);&lt;br /&gt;
V=zeros(1,n);&lt;br /&gt;
F0=(1/x(n));&lt;br /&gt;
b=-2;&lt;br /&gt;
&lt;br /&gt;
%Las condiciones de contorno vienen en x(1)=0 y x(Nx)=L&lt;br /&gt;
&lt;br /&gt;
u(1)=0;&lt;br /&gt;
if(t==-1)&lt;br /&gt;
    u(n)=0;&lt;br /&gt;
else&lt;br /&gt;
    %u(n)=0;&lt;br /&gt;
    u(n)=sin(2*pi*F0*t);&lt;br /&gt;
    %u(n)=(1/(b*Ax-1))*u(n-1);&lt;br /&gt;
end&lt;br /&gt;
for i=2:n-1&lt;br /&gt;
    V(i)=(1/Ax^2)*(u(i+1)-2*u(i)+u(i-1));&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
i=1;&lt;br /&gt;
V(i)=(1/Ax^2)*(u(i+2)-2*u(i+1));&lt;br /&gt;
i=n;&lt;br /&gt;
V(i)=(1/Ax^2)*(u(i)-2*u(i-1)+u(i-2));&lt;br /&gt;
end&lt;br /&gt;
}}&lt;br /&gt;
 &lt;br /&gt;
La gráfica resultante es la siguiente:&lt;br /&gt;
[[Archivo:6.3.png|700px|thumb|centre|Gráfica en tres dimensiones de la energía de un cable cuyo extremo derecho está sometido a una vibración externa periódica.]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
En dicha gráfica, se puede observar que la forma de la función o la energía se ve alterada por la condición impuesta de tal manera que ésta adquiere una forma también sinusoidal, y que su estabilización dependería del tiempo transcurrido entre vibración y vibración.&lt;br /&gt;
&lt;br /&gt;
==== Sujeción a un aparato que responde a una vibración externa. ====&lt;br /&gt;
&lt;br /&gt;
La siguiente situación que vamos a representar a modelar a través de ecuaciones diferenciales va a ser la siguiente: supondremos que el cable de la anterior situación (que recibía en su extremo derecho una vibración periódica de &amp;lt;math&amp;gt; F_0 &amp;lt;/math&amp;gt; [Herzios])envía una respuesta a la vibración que recibe. Esta situación la vamos a representar como un cambio en la condición de contorno; ésta va a pasar a ser: &amp;lt;math&amp;gt; u_x(L,t)=bu(L,t) &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
El objetivo, de nuevo será representar la evolución de la energía respecto del tiempo y ver si este cambio en el problema se ve reflejado en su representación. &lt;br /&gt;
En el código numérico, no obstante, la situación de &amp;lt;math&amp;gt; u_x(L,t)=bu(L,t) &amp;lt;/math&amp;gt; la vamos a aproximar por la siguiente expresión:&lt;br /&gt;
&amp;lt;math&amp;gt; u_x(L,t)-bu(L,t)  \cong  \frac{u_{N+1}(t)-u_{N-1}(t)}{2h-u_N(t)} &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
En la resolución del problema emplearemos de nuevo la condición inicial de sujetar el cable por el centro y elevarlo 2 m perpendicularmente: &lt;br /&gt;
&amp;lt;math&amp;gt; u(x,0)=g(x)= 2- |\frac{2}{5}x -2| &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Y además obtendremos el resultado para los dos valores siguientes de &amp;lt;math&amp;gt;b&amp;lt;/math&amp;gt; :&lt;br /&gt;
Para &amp;lt;math&amp;gt; b=2 &amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt; b=-2 &amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
El código numérico de matlab/octave es:&lt;br /&gt;
&lt;br /&gt;
'''PROGRAMA:'''&lt;br /&gt;
{{matlab|codigo= &lt;br /&gt;
clc;clear all;close all;&lt;br /&gt;
&lt;br /&gt;
%Datos&lt;br /&gt;
dx=0.1;L=10;dt=0.0001;NT=40;&lt;br /&gt;
A=[0,1,4,10,100];&lt;br /&gt;
x=0:dx:L;t=0:dt:NT;&lt;br /&gt;
ENE=zeros(5,length(t));&lt;br /&gt;
&lt;br /&gt;
%Condición de contorno: U(0,t)=U(L,t)=0;&lt;br /&gt;
for k=1&lt;br /&gt;
&lt;br /&gt;
%Vector solución y derivada temporal de la solución&lt;br /&gt;
%t=0&amp;lt;&amp;gt;T(1) es donde se guardan las condiciones iniciales&lt;br /&gt;
&lt;br /&gt;
U=zeros(length(t),length(x));&lt;br /&gt;
Dt_U=zeros(length(t),length(x));&lt;br /&gt;
Dx_U=zeros(length(t),length(x));    &lt;br /&gt;
&lt;br /&gt;
%Condición inicial: Estiramos 2 m del centro&lt;br /&gt;
%Modelizado como dos rectas antisimétricas que se cortan en x=5 y&lt;br /&gt;
%sujetas en x=0 y x=L.&lt;br /&gt;
&lt;br /&gt;
U(1,:)=2*sin(x*pi/L);&lt;br /&gt;
Dt_U(1,:)=zeros(1,length(x))';&lt;br /&gt;
D2t_U=Ecuacion7(U(1,:),x,-1);&lt;br /&gt;
&lt;br /&gt;
%Inicio del esquema numérico&lt;br /&gt;
%empieza en 2 ya que el 1 es la cond. inicial&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
%ESQUEMA NEWMARK&lt;br /&gt;
 for i=2:length(t)&lt;br /&gt;
    iter=[k,i]&lt;br /&gt;
    Ua=U(i-1,:);&lt;br /&gt;
    Dt_Ua=Dt_U(i-1,:);&lt;br /&gt;
    D2t_Ua=D2t_U;&lt;br /&gt;
&lt;br /&gt;
    %Derivada segunda respecto del tiempo en el instante t, se obtiene de&lt;br /&gt;
    %eq. diferencial u_tt=f(x,u,u_x,u_xx)&lt;br /&gt;
&lt;br /&gt;
    D2t_U=Ecuacion7(U(i-1,:),x,t(i))-A(k)*Dt_Ua;&lt;br /&gt;
&lt;br /&gt;
    %Derivada primera&lt;br /&gt;
    Dt_U(i,:)=Dt_Ua+0.5*dt*(D2t_Ua+D2t_U);&lt;br /&gt;
&lt;br /&gt;
    %Ecuacion&lt;br /&gt;
    U(i,:) = Ua+Dt_Ua*dt+(1/6)*(D2t_Ua+D2t_U)*dt^2;&lt;br /&gt;
 end&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 %ENERGIA&lt;br /&gt;
 for i=1:length(t)&lt;br /&gt;
    Dx_U(i,:)=deriva(x,U(i,:),0);&lt;br /&gt;
 end&lt;br /&gt;
dE=zeros(length(t),1);&lt;br /&gt;
for i=1:length(x)&lt;br /&gt;
    dE=dE+(Dt_U(:,i).^2+Dx_U(:,i).^2)*dx;&lt;br /&gt;
end&lt;br /&gt;
 ENE(k,:)=dE;&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
 figure(1)&lt;br /&gt;
 hold on&lt;br /&gt;
 grid&lt;br /&gt;
 aa=find(x==L/4);&lt;br /&gt;
 ab=find(x==3*L/4);&lt;br /&gt;
 plot(t,ENE(1,:))&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
'''FUNCIONES:'''&lt;br /&gt;
'''function v = deriva(x,y,t)'''&lt;br /&gt;
{{matlab|codigo= &lt;br /&gt;
n = length(x);&lt;br /&gt;
del=zeros(1,n);&lt;br /&gt;
if t==1&lt;br /&gt;
    i=1;&lt;br /&gt;
    del(1)=(y(i)-y(i+1))/(-x(i)+x(i+1));&lt;br /&gt;
    for i=2:n&lt;br /&gt;
    del(i)=(y(i)-y(i-1))/(x(i)-x(i-1));&lt;br /&gt;
    end &lt;br /&gt;
elseif t==-1&lt;br /&gt;
    for i=1:n-1&lt;br /&gt;
    del(i)=(y(i)-y(i+1))/(x(i)-x(i+1));&lt;br /&gt;
    end &lt;br /&gt;
    i=n;&lt;br /&gt;
    del(i)=(y(i)-y(i-1))/(x(i)-x(i-1));&lt;br /&gt;
elseif t==0&lt;br /&gt;
    i=1;&lt;br /&gt;
    del(1)=(y(i)-y(i+1))/(+x(i)-x(i+1));&lt;br /&gt;
    for i=2:n-1&lt;br /&gt;
    del(i)=(y(i+1)-y(i-1))/(2*(x(i)-x(i-1)));&lt;br /&gt;
    end &lt;br /&gt;
    i=n;&lt;br /&gt;
    del(n)=(y(i)-y(i-1))/(x(i)-x(i-1));  &lt;br /&gt;
end&lt;br /&gt;
v=del;&lt;br /&gt;
end&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
'''function [ V ] = Ecuacion7( u,x,t )'''&lt;br /&gt;
{{matlab|codigo= &lt;br /&gt;
%se guarda aquí la ecuación diferencial del tipo u_tt=f(x,u,u_x,u_xx)&lt;br /&gt;
%INCLUIDAS LAS CC AQUÍ!&lt;br /&gt;
%PARA u_tt=u_xx&lt;br /&gt;
%CC: u(0,t)=u(L,t)=0;&lt;br /&gt;
&lt;br /&gt;
Ax=x(2)-x(1);&lt;br /&gt;
n=length(u);&lt;br /&gt;
V=zeros(1,n);&lt;br /&gt;
F0=(1/x(n));&lt;br /&gt;
b=2;&lt;br /&gt;
&lt;br /&gt;
%Las condiciones de contorno vienen en x(1)=0 y x(Nx)=L&lt;br /&gt;
u(1)=0;&lt;br /&gt;
if(t==-1)&lt;br /&gt;
    u(n)=0;&lt;br /&gt;
else&lt;br /&gt;
    %u(n)=0;&lt;br /&gt;
    %u(n)=sin(2*pi*F0*t);&lt;br /&gt;
    u(n)=(1/(b*Ax-1))*u(n-1);&lt;br /&gt;
end&lt;br /&gt;
for i=2:n-1&lt;br /&gt;
    V(i)=(1/Ax^2)*(u(i+1)-2*u(i)+u(i-1));&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
i=1;&lt;br /&gt;
V(i)=(1/Ax^2)*(u(i+2)-2*u(i+1));&lt;br /&gt;
i=n;&lt;br /&gt;
V(i)=(1/Ax^2)*(u(i)-2*u(i-1)+u(i-2));&lt;br /&gt;
end&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:7.1.png|700px|thumb|centre|Gráfica de la energía (ordenadas) de un cable frente al tiempo (abcisas) que recibe una vibración en su extremo derecho y que responde a dicha vibración para b=2. ]]&lt;br /&gt;
'''function [ V ] = Ecuacion7( u,x,t )'''&lt;br /&gt;
{{matlab|codigo= &lt;br /&gt;
%se guarda aquí la ecuación diferencial del tipo u_tt=f(x,u,u_x,u_xx)&lt;br /&gt;
%INCLUIDAS LAS CC AQUÍ!&lt;br /&gt;
%PARA u_tt=u_xx&lt;br /&gt;
%CC: u(0,t)=u(L,t)=0;&lt;br /&gt;
&lt;br /&gt;
Ax=x(2)-x(1);&lt;br /&gt;
n=length(u);&lt;br /&gt;
V=zeros(1,n);&lt;br /&gt;
F0=(1/x(n));&lt;br /&gt;
b=-2;&lt;br /&gt;
&lt;br /&gt;
%Las condiciones de contorno vienen en x(1)=0 y x(Nx)=L&lt;br /&gt;
u(1)=0;&lt;br /&gt;
&lt;br /&gt;
if(t==-1)&lt;br /&gt;
    u(n)=0;&lt;br /&gt;
else&lt;br /&gt;
    %u(n)=0;&lt;br /&gt;
    %u(n)=sin(2*pi*F0*t);&lt;br /&gt;
    u(n)=(1/(b*Ax-1))*u(n-1);&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
for i=2:n-1&lt;br /&gt;
    V(i)=(1/Ax^2)*(u(i+1)-2*u(i)+u(i-1));&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
i=1;&lt;br /&gt;
V(i)=(1/Ax^2)*(u(i+2)-2*u(i+1));&lt;br /&gt;
i=n;&lt;br /&gt;
V(i)=(1/Ax^2)*(u(i)-2*u(i-1)+u(i-2));&lt;br /&gt;
end&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
La imagen resultante es:&lt;br /&gt;
[[Archivo:7.2.png|700px|thumb|centre|Gráfica de la energía (ordenadas) de un cable frente al tiempo (abcisas) que recibe una vibración en su extremo derecho y que responde a dicha vibración para b=-2. ]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
La anterior gráfica muestra el comportamiento de la cuerda como respuesta a la vibración producida en uno de sus extremos así como el movimiento transversal del punto medio al comienzo. Podemos observar el movimiento transversal de cada punto de la cuerda a través de la expresión de la energía, así como que, a medida que transcurre el tiempo, ésta se va estabilizando. La forma de la función recuerda a una función sinusoidal debido a la forma de la condición de contorno impuesta.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Categoría:Ecuaciones Diferentiales]]&lt;br /&gt;
 [[Categoría:ED13/14]]&lt;br /&gt;
 [[Categoría:Trabajos 2013-14]]&lt;/div&gt;</summary>
		<author><name>Lucia Lopez</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Ecuaci%C3%B3n_de_ondas_(grupo_2B)&amp;diff=13156</id>
		<title>Ecuación de ondas (grupo 2B)</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Ecuaci%C3%B3n_de_ondas_(grupo_2B)&amp;diff=13156"/>
				<updated>2014-05-19T20:57:26Z</updated>
		
		<summary type="html">&lt;p&gt;Lucia Lopez: /* Aproximación por el método del trapecio. */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{ TrabajoED | Ecuación de ondas. Grupo 2-B| [[:Categoría:Ecuaciones Diferenciales|Ecuaciones Diferenciales]]|[[:Categoría:ED13/14|Curso 2013-14]]| &lt;br /&gt;
Ignacio Díaz-Caneja Camblor&lt;br /&gt;
&lt;br /&gt;
Alberto Fernández Pérez&lt;br /&gt;
&lt;br /&gt;
Adela González Barbado&lt;br /&gt;
&lt;br /&gt;
Lucia López Sánchez&lt;br /&gt;
&lt;br /&gt;
Araceli Martín Candilejo&lt;br /&gt;
&lt;br /&gt;
Diego Solano López&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
== Modelización de los desplazamientos del Cable. ==&lt;br /&gt;
El problema que se tratará a continuación describe una ecuación de '''tipo hiperbólico''', una '''ecuación de ondas'''.&lt;br /&gt;
Consideramos un '''cable de 10 metros''' de longitud '''sujeto por sus extremos'''. Suponiendo que éste tiene una '''sección pequeña''' respecto a su longitud someteremos al cable a pequeñas vibraciones que estudiaremos con una modelización de la ecuación de ondas. &lt;br /&gt;
Se caracteriza al cable de una masa constante por unidad de volumen, es decir, será '''homogéneo'''. Éste, '''flexible''' a la tracción, únicamente ofrece resistencias en su dirección longitudinal, tangenciales, pero no a esfuerzos de flexión o cortes. Se supone, además, que es '''inextensible''' por lo que será lo suficientemente rígido longitudinalmente como para poder despreciar su extensibilidad.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Con esta modelización se estudiarán las '''pequeñas vibraciones''', desplazamientos transversales, a las que es sometido el cable. Para iniciar el movimiento del cable lo sujetaremos por el centro subiéndolo dos metros, lo que nos proporciona una primera condición inicial determinada por la función g(x), y soltándolo con una velocidad nula. &lt;br /&gt;
&lt;br /&gt;
&amp;lt;br/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Obtenemos la ecuación &amp;lt;math&amp;gt;u_{tt}-u_{xx}=0&amp;lt;/math&amp;gt; , de la cual se puede observar que tanto el '''módulo de la tensión''' como la '''densidad''' son '''constantes''' ya que el '''módulo de la elasticidad''' es constante, &amp;lt;math&amp;gt;c^2=1&amp;lt;/math&amp;gt; . Al ser ésta primera ecuación homogénea deducimos que transversalmente no actúa ninguna fuerza densidad espacial y temporal. Se deduce del enunciado anterior que las condiciones de frontera son '''homogéneas''', &amp;lt;math&amp;gt;u(0,t)=0&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;u(10,t)=0&amp;lt;/math&amp;gt; que nos indican que los extremos del cable no describen ningún tipo de movimiento en todo instante t al no estar sometidos a ningun tipo de fuerza. Finalmente, añadimos al sistema las condiciones iniciales, la primera de ellas, &amp;lt;math&amp;gt;u(x,0)=g(x)= 2- |\frac{2}{5}x -2|&amp;lt;/math&amp;gt;, define el '''movimiento descrito por la onda''' en el instante t=0 en cualquier punto del cable; y la segunda, &amp;lt;math&amp;gt;u_t(x,0)=0&amp;lt;/math&amp;gt;, que la onda parte de una '''velocidad inicial nula'''.&lt;br /&gt;
[[Image:DV.png|300px|thumb|right|Deslizamiento vertical del cable. ]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
\begin{cases}&lt;br /&gt;
&lt;br /&gt;
u_{tt}- u_{xx}=0  \  x∈[0,10] \ t&amp;gt;0\\&lt;br /&gt;
u(0,t)=0\\&lt;br /&gt;
u(10,t)=0\\&lt;br /&gt;
u(x,0)= 2- |\frac{2}{5}x -2|\\&lt;br /&gt;
u_t(x,0)=0&lt;br /&gt;
\end{cases}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
En los siguientes apartados se realizaran aproximaciones del sistema expuesto con tres métodos distintos de los que más tarde se hará una comparativa. Para esto último nos ayudaremos del error por lo que necesitaremos la solución analítica.&lt;br /&gt;
Como el problema consta de condiciones de frontera homogéneas, aplicamos directamente el método de separación de variables para su resolución analítica. &lt;br /&gt;
&amp;lt;br/&amp;gt;&lt;br /&gt;
==== Aproximación por el método del trapecio. ====&lt;br /&gt;
El método del trapecio se basa en aproximar una función integrando. Para ello utilizamos un número N de trapecios (en la imagen inferior hemos aproximado mediante 4 trapecios). Las integrales a resolver para poder poder aproximar una función por este método tendrán la distancia de sus límites de integración constantes para todas las integrales, a esta distancia entre los límites de integración lo llamamos paso. En el desarrollo de este método se supone que la función es continua en el intervalo en que se quiere aproximar.&lt;br /&gt;
&amp;lt;br/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Image:Trapecio.png|300px|thumb|center|Función Y(x), el área bajo la curva, se puede aproximar mediante n trapecios]]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br/&amp;gt;&lt;br /&gt;
{{matlab|codigo= &lt;br /&gt;
%u_tt-u_xx=0&lt;br /&gt;
%u(0,t)=u(l,t)=0&lt;br /&gt;
%u(x,0)=2-abs(0.4x-2)&lt;br /&gt;
%ut(x,0)=0&lt;br /&gt;
clear all&lt;br /&gt;
&lt;br /&gt;
%Datos del problema&lt;br /&gt;
L=10;&lt;br /&gt;
T=40;&lt;br /&gt;
&lt;br /&gt;
%Discretización&lt;br /&gt;
h=0.1;&lt;br /&gt;
N=L/h;&lt;br /&gt;
x=0:h:L;&lt;br /&gt;
xint=h:h:L-h;&lt;br /&gt;
dt=h;&lt;br /&gt;
t=0:dt:T;&lt;br /&gt;
&lt;br /&gt;
%Aprox. de u_xx&lt;br /&gt;
K=2*diag(ones(1,N-1))-diag(ones(1,N-2),-1)-diag(ones(1,N-2),1);&lt;br /&gt;
K=K/h^2;&lt;br /&gt;
F=zeros(N-1,1);&lt;br /&gt;
&lt;br /&gt;
%Posición inicial.&lt;br /&gt;
u0=(2-abs(xint*2/5-2))';&lt;br /&gt;
v0=zeros(N-1,1);&lt;br /&gt;
&lt;br /&gt;
%Aprox. de u_tt&lt;br /&gt;
M=[zeros(N-1),eye(N-1);-K,zeros(N-1)];&lt;br /&gt;
G=[zeros(N-1,1);F];&lt;br /&gt;
&lt;br /&gt;
%Aproximación por el método del Trapecio&lt;br /&gt;
W0=[u0;v0];&lt;br /&gt;
WW=W0;&lt;br /&gt;
sol=zeros(length(t),N+1);&lt;br /&gt;
sol(1,:)=[0,W0(1:N-1)',0];&lt;br /&gt;
for j=1:length(t)-1&lt;br /&gt;
    WW=(eye(2*N-2)-dt/2*M)\(eye(2*N-2)+dt/2*M)*WW;&lt;br /&gt;
    sol(j+1,:)=[0,WW(1:N-1)',0];&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
%Dibujo de la solución&lt;br /&gt;
[xx,tt]=meshgrid(x,t);&lt;br /&gt;
surf(xx,tt,sol);&lt;br /&gt;
xlabel('Desplazamiento horizontal');&lt;br /&gt;
ylabel('Tiempo');&lt;br /&gt;
zlabel('Desplazamiento vertical');}}&lt;br /&gt;
&lt;br /&gt;
[[Image:klklk.jpg|700px|thumb|center|Aproximación por el método del Trapecio.]]&lt;br /&gt;
&lt;br /&gt;
==== Aproximación por el método de Euler. ====&lt;br /&gt;
Se exponen en este apartados dos tipos de aproximaciones de Euler.&lt;br /&gt;
&lt;br /&gt;
Este método se basa en la posibilidad de aproximar una función original mediante rectas tangentes partiendo de un punto dado. Sabiendo que la recta tangente de una función en un punto es la derivada en dicho punto, este método consiste en calcular derivadas de la función en diferentes puntos pertenecientes a ella. Estos puntos serán tomados con la misma distancia a lo largo de la recta, a esta distancia la denominamos paso de discretización. &lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Image:Euler.png|300px|thumb|center|Aproximación de una función por el método de Euler]]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===== Euler Explícito. =====&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
%utt-uxx=0&lt;br /&gt;
%u(0,t)=u(l,t)=0&lt;br /&gt;
%u(x,0)=2-abs(0.4x-2)&lt;br /&gt;
%ut(x,0)=0&lt;br /&gt;
clear all&lt;br /&gt;
L=10;&lt;br /&gt;
T=40;&lt;br /&gt;
h=0.1;&lt;br /&gt;
N=L/h;&lt;br /&gt;
x=0:h:L;&lt;br /&gt;
xint=h:h:L-h;&lt;br /&gt;
dt=h;&lt;br /&gt;
t=0:dt:T;&lt;br /&gt;
K=2*diag(ones(1,N-1))-diag(ones(1,N-2),-1)-diag(ones(1,N-2),1);&lt;br /&gt;
K=K/h^2;&lt;br /&gt;
F=zeros(N-1,1);&lt;br /&gt;
u0=2-abs((xint*2/5-2))';&lt;br /&gt;
v0=zeros(N-1,1);&lt;br /&gt;
M=[zeros(N-1),eye(N-1);-K,zeros(N-1)];&lt;br /&gt;
G=[zeros(N-1,1);F];&lt;br /&gt;
W0=[u0;v0];&lt;br /&gt;
WW=W0;&lt;br /&gt;
sol=zeros(length(t),N+1);&lt;br /&gt;
sol(1,:)=[0,W0(1:N-1)',0];&lt;br /&gt;
for j=1:length(t)-1&lt;br /&gt;
    WW=WW+dt*M*WW;&lt;br /&gt;
    sol(j+1,:)=[0,WW(1:N-1)',0];&lt;br /&gt;
end&lt;br /&gt;
[xx,tt]=meshgrid(x,t);&lt;br /&gt;
surf(xx,tt,sol);}}&lt;br /&gt;
===== Euler Modificado. =====&lt;br /&gt;
&lt;br /&gt;
Este método se basa en la misma idea que el anterior, pero hace un refinamiento en la aproximación, tomando un promedio entre las pendientes pues esto parece más razonable para la obtención de un valor más preciso.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
%utt-uxx=0&lt;br /&gt;
%u(0,t)=u(l,t)=0&lt;br /&gt;
%u(x,0)=2-abs(0.4x-2)&lt;br /&gt;
%ut(x,0)=0&lt;br /&gt;
clear all&lt;br /&gt;
L=10;&lt;br /&gt;
T=40;&lt;br /&gt;
h=0.1;&lt;br /&gt;
N=L/h;&lt;br /&gt;
x=0:h:L;&lt;br /&gt;
xint=h:h:L-h;&lt;br /&gt;
dt=h;&lt;br /&gt;
t=0:dt:T;&lt;br /&gt;
K=2*diag(ones(1,N-1))-diag(ones(1,N-2),-1)-diag(ones(1,N-2),1);&lt;br /&gt;
K=K/h^2;&lt;br /&gt;
F=zeros(N-1,1);&lt;br /&gt;
u0=2-abs((xint*2/5-2))';&lt;br /&gt;
v0=zeros(N-1,1);&lt;br /&gt;
M=[zeros(N-1),eye(N-1);-K,zeros(N-1)];&lt;br /&gt;
G=[zeros(N-1,1);F];&lt;br /&gt;
W0=[u0;v0];&lt;br /&gt;
WW=W0;&lt;br /&gt;
sol=zeros(length(t),N+1);&lt;br /&gt;
sol(1,:)=[0,W0(1:N-1)',0];&lt;br /&gt;
for j=1:length(t)-1&lt;br /&gt;
    k1=M*WW;&lt;br /&gt;
    WW=(eye(2*N-2)+dt*M/2)*WW+(dt/2)*k1+(dt^2)*M*k1/2;&lt;br /&gt;
    sol(j+1,:)=[0,WW(1:N-1)',0];&lt;br /&gt;
end&lt;br /&gt;
[xx,tt]=meshgrid(x,t);&lt;br /&gt;
surf(xx,tt,sol);}}&lt;br /&gt;
&lt;br /&gt;
==== Aproximación por Fourier con diferentes términos de series. ====&lt;br /&gt;
En este apartado se ofrece una aproximación alternativa a las anteriores. Se muestran '''cinco iteraciones''' distintas del '''método del Fourier''' que se compararan entre sí y con los métodos anteriores, Trapecio y Euler. Este método de aproximación depende del número de términos de serie (lo denominamos con la letra Q) con los que se realice el programa de Fourier.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br/&amp;gt;&lt;br /&gt;
Puesto que la realización de este método es la misma sea cual sea el número de serie elegido, se han expuesto únicamente dos casos de Q para una mayor claridad del programa.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo= %utt-uxx=0&lt;br /&gt;
%u(0,t)=u(l,t)=0&lt;br /&gt;
%u(x,0)=2-abs(0.4x-2)&lt;br /&gt;
%ut(x,0)=0&lt;br /&gt;
&lt;br /&gt;
%1 iteracion&lt;br /&gt;
clear all&lt;br /&gt;
L=10;&lt;br /&gt;
T=40;&lt;br /&gt;
Q=1;&lt;br /&gt;
h=0.1;&lt;br /&gt;
N=L/h;&lt;br /&gt;
x=0:h:L;&lt;br /&gt;
dt=h;&lt;br /&gt;
t=0:dt:T;&lt;br /&gt;
sol=zeros(length(t),N+1);&lt;br /&gt;
for k=1:Q&lt;br /&gt;
    phi=sin(k/L*pi*x);&lt;br /&gt;
    a=trapz(x,(2-abs(2/5*x-2)).*phi)/(trapz(x,phi.^2));&lt;br /&gt;
    b=0;&lt;br /&gt;
    T=a.*cos(k*pi*t/L);&lt;br /&gt;
    sol=sol+T'*phi;&lt;br /&gt;
end&lt;br /&gt;
[xx,tt]=meshgrid(x,t);&lt;br /&gt;
figure (1)&lt;br /&gt;
surf(xx,tt,sol)&lt;br /&gt;
xlabel('Desplazamiento horizontal');&lt;br /&gt;
ylabel('Tiempo');&lt;br /&gt;
zlabel('Desplazamiento vertical');&lt;br /&gt;
&lt;br /&gt;
%3 iteracion&lt;br /&gt;
clear all&lt;br /&gt;
L=10;&lt;br /&gt;
T=40;&lt;br /&gt;
Q=3;&lt;br /&gt;
h=0.1;&lt;br /&gt;
N=L/h;&lt;br /&gt;
x=0:h:L;&lt;br /&gt;
dt=h;&lt;br /&gt;
t=0:dt:T;&lt;br /&gt;
sol=zeros(length(t),N+1);&lt;br /&gt;
for k=1:Q&lt;br /&gt;
    phi=sin(k/L*pi*x);&lt;br /&gt;
    a=trapz(x,(2-abs(2/5*x-2)).*phi)/(trapz(x,phi.^2));&lt;br /&gt;
    b=0;&lt;br /&gt;
    T=a.*cos(k*pi*t/L);&lt;br /&gt;
    sol=sol+T'*phi;&lt;br /&gt;
end&lt;br /&gt;
[xx,tt]=meshgrid(x,t);&lt;br /&gt;
figure (2)&lt;br /&gt;
surf(xx,tt,sol)&lt;br /&gt;
xlabel('Desplazamiento horizontal');&lt;br /&gt;
ylabel('Tiempo');&lt;br /&gt;
zlabel('Desplazamiento vertical');}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br/&amp;gt;&lt;br /&gt;
[[Image:81tF2.jpg|525px|thumb|left|Aproximación por el método del Trapecio con un término de serie.]]&lt;br /&gt;
[[Image:82tF.jpg|525px|thumb|center|Aproximación por el método del Trapecio con tres términos de serie.]]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br/&amp;gt; &lt;br /&gt;
&lt;br /&gt;
[[Image:83tF.jpg|525px|thumb|left|Aproximación por el método del Trapecio con cinco términos de serie.]]&lt;br /&gt;
[[Image:84tF.jpg|525px|thumb|center|Aproximación por el método del Trapecio con diez términos de serie.]]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Image:85tF.jpg|525px|thumb|center|Aproximación por el método del Trapecio con veinte términos de serie.]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
En este método podemos observar fijándonos en las gráficas que a mayor número de términos (mayor Q), mayor es la aproximación obtenida.&lt;br /&gt;
&lt;br /&gt;
Realizando una comparación con los otros métodos, se puede observar, fijándonos en las gráficas y en los órdenes de precisión, que el método que mejor aproxima  la ecuación del problema es el método del trapecio, seguido de Euler modificado y, por último, Euler, teniendo mayor orden el que mejor aproxima la función.&lt;br /&gt;
&lt;br /&gt;
Gráficamente podemos confirmar este hecho, dándonos cuenta que las gráficas más similares son fourier con Q=20 y el método del trapecio.&lt;br /&gt;
&lt;br /&gt;
== Energía del Cable. ==&lt;br /&gt;
&lt;br /&gt;
La energía del cable que viene definida por la función: &lt;br /&gt;
\begin{equation}&lt;br /&gt;
E(t) = \int_{0}^{L} (u_{t}^{2}(x,t)+ u_{x}^{2}(x,t)) \cdot dx&lt;br /&gt;
\end{equation}&lt;br /&gt;
&lt;br /&gt;
El método utilizado en el desarrollo numérico de está expresión es el '''método de diferencias finitas'''&lt;br /&gt;
(Funciona calculando de manera aproximada las soluciones a las ecuaciones diferenciales usando ecuaciones diferenciales finitas para aproximar derivadas.).&lt;br /&gt;
&lt;br /&gt;
'''FUNCIÓN:'''&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
function v = deriva(x,y,t)&lt;br /&gt;
&lt;br /&gt;
n = length(x);&lt;br /&gt;
del=zeros(1,n);&lt;br /&gt;
&lt;br /&gt;
if t==1&lt;br /&gt;
    &lt;br /&gt;
    i=1;&lt;br /&gt;
    del(1)=(y(i)-y(i+1))/(-x(i)+x(i+1));&lt;br /&gt;
&lt;br /&gt;
    for i=2:n&lt;br /&gt;
    del(i)=(y(i)-y(i-1))/(x(i)-x(i-1));&lt;br /&gt;
    end &lt;br /&gt;
    &lt;br /&gt;
elseif t==-1&lt;br /&gt;
&lt;br /&gt;
    for i=1:n-1&lt;br /&gt;
    del(i)=(y(i)-y(i+1))/(x(i)-x(i+1));&lt;br /&gt;
    end &lt;br /&gt;
    &lt;br /&gt;
    i=n;&lt;br /&gt;
    del(i)=(y(i)-y(i-1))/(x(i)-x(i-1));&lt;br /&gt;
    &lt;br /&gt;
elseif t==0&lt;br /&gt;
    &lt;br /&gt;
    i=1;&lt;br /&gt;
    del(1)=(y(i)-y(i+1))/(+x(i)-x(i+1));&lt;br /&gt;
    &lt;br /&gt;
    for i=2:n-1&lt;br /&gt;
    del(i)=(y(i+1)-y(i-1))/(2*(x(i)-x(i-1)));&lt;br /&gt;
    end &lt;br /&gt;
    &lt;br /&gt;
    i=n;&lt;br /&gt;
    del(n)=(y(i)-y(i-1))/(x(i)-x(i-1));  &lt;br /&gt;
    &lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
v=del;&lt;br /&gt;
&lt;br /&gt;
end&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''PROGRAMA:'''&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
clc;clear all;&lt;br /&gt;
L=10;dx=0.1;N=L/dx;&lt;br /&gt;
x=dx:dx:L-dx;&lt;br /&gt;
xtot=0:dx:L;&lt;br /&gt;
T=40;dt=0.1;t=0:dt:T;&lt;br /&gt;
K=2*diag(ones(1,N-1))-diag(ones(1,N-2),1)-diag(ones(1,N-2),-1);&lt;br /&gt;
K=(1/dx^2)*K;&lt;br /&gt;
U=(2-abs((x*2/5-2)))';&lt;br /&gt;
V=(0*x)';&lt;br /&gt;
sol(1,:)=[0 U' 0];&lt;br /&gt;
for i=1:length(t)-1;&lt;br /&gt;
    U=U+dt*V;&lt;br /&gt;
    V=V-dt*K*U;&lt;br /&gt;
    sol(i+1,:)=[0 U' 0];&lt;br /&gt;
end&lt;br /&gt;
%DERIVAMOS LA SOLUCION EN x Y EN t:&lt;br /&gt;
dsol_dx=ones(size(sol));&lt;br /&gt;
for i=1:length(t)&lt;br /&gt;
    dsol_dx(i,:)=deriva(sol(i,:),xtot,0);&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
dsol_dt=ones(size(sol));&lt;br /&gt;
for i=1:length(xtot)&lt;br /&gt;
    dsol_dt(:,i)=deriva(sol(:,i),t,1); &lt;br /&gt;
end&lt;br /&gt;
%SUMAMOS LAS DERIVADAS AL CUADRADO E INTEGRAMOS:&lt;br /&gt;
dE=zeros(1,size(t,1));&lt;br /&gt;
for i=1:length(xtot)&lt;br /&gt;
    dE=dE+(dsol_dt(i,:).^2+dsol_dx(i,:).^2)*dx;&lt;br /&gt;
end&lt;br /&gt;
xtot=0:dx:L;&lt;br /&gt;
[xx,tt]=meshgrid(xtot,t);&lt;br /&gt;
figure(1)&lt;br /&gt;
surf(xx,tt,dsol_dx);&lt;br /&gt;
figure(2)&lt;br /&gt;
surf(xx,tt,dsol_dt);&lt;br /&gt;
plot(dE,t)&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
El resultado habría de ser una gráfica que representase la evolución de la energía de la cuerda frente al transcurso del tiempo. No obstante, en nuestra resolución aparece una gráfica en blanco que ajudicamos o a un posible error en el código, o que podemos interpretar como que la energía tiende a infinito.&lt;br /&gt;
&lt;br /&gt;
== Aplicaciones. ==&lt;br /&gt;
&lt;br /&gt;
==== Sumersión en un medio viscoso. ====&lt;br /&gt;
&lt;br /&gt;
Suponemos ahora la inmersión del cable en una medio viscoso. Este medio viscoso produce un amortiguamiento en el movimiento del cable, con lo que la anterior ecuación diferencial se convertiría en &lt;br /&gt;
\begin{equation}&lt;br /&gt;
u_{tt}-u_{xx}+au_{t}=0&lt;br /&gt;
\end{equation} &lt;br /&gt;
, siendo '''&amp;lt;math&amp;gt; a  &amp;lt;/math&amp;gt;''' una constante de amortiguamiento propia del medio viscoso.&lt;br /&gt;
Puesto que la función '''&amp;lt;math&amp;gt; u(x,t)  &amp;lt;/math&amp;gt;''' se ve afectada ahora por el medio viscoso, y más directamente, por la constante '''&amp;lt;math&amp;gt; a  &amp;lt;/math&amp;gt;''' que actúa en su nombre, la energía del cable ,que se expresaba como una integral en función de '''&amp;lt;math&amp;gt; u(x,t)  &amp;lt;/math&amp;gt;''' también se va a ver afectada:&lt;br /&gt;
\begin{equation}&lt;br /&gt;
E(t) = \int_{0}^{L} (u_{t}^{2}(x,t)+ u_{x}^{2}(x,t)) \cdot dx&lt;br /&gt;
\end{equation}&lt;br /&gt;
&lt;br /&gt;
El obetivo del siguiente código será hallar una representación de la evolución de la energía en función del tiempo a raíz de la modificación de la función '''&amp;lt;math&amp;gt; u(x,t)  &amp;lt;/math&amp;gt;'''. Para ello asignaremos distintos valores a la constante '''&amp;lt;math&amp;gt; a  &amp;lt;/math&amp;gt;'''. Éstos van a ser:&lt;br /&gt;
'''&amp;lt;math&amp;gt; a=0  &amp;lt;/math&amp;gt;''' (la energía para este valor resultará igual que la hallada en el apartado anterior)&lt;br /&gt;
'''&amp;lt;math&amp;gt; a=1  &amp;lt;/math&amp;gt;'''&lt;br /&gt;
'''&amp;lt;math&amp;gt; a=4  &amp;lt;/math&amp;gt;'''&lt;br /&gt;
'''&amp;lt;math&amp;gt; a=10  &amp;lt;/math&amp;gt;'''&lt;br /&gt;
''&amp;lt;math&amp;gt; a=100  &amp;lt;/math&amp;gt;'''&lt;br /&gt;
&lt;br /&gt;
El procedimiento numérico volverá a seguir el método de '''diferencias finitas''':&lt;br /&gt;
&lt;br /&gt;
'''PROGRAMA:'''&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
clc;clear all;close all;&lt;br /&gt;
%Datos&lt;br /&gt;
dx=0.1;L=10;&lt;br /&gt;
dt=0.001;NT=40;&lt;br /&gt;
A=[0,1,4,10,100];&lt;br /&gt;
x=0:dx:L;&lt;br /&gt;
t=0:dt:NT;&lt;br /&gt;
ENE=zeros(5,length(t));&lt;br /&gt;
&lt;br /&gt;
%Condición de contorno: U(0,t)=U(L,t)=0;&lt;br /&gt;
&lt;br /&gt;
for k=1:5&lt;br /&gt;
&lt;br /&gt;
%Vector solución y derivada temporal de la solución&lt;br /&gt;
%t=0&amp;lt;&amp;gt;T(1) es donde se guardan las condiciones iniciales&lt;br /&gt;
&lt;br /&gt;
U=zeros(length(t),length(x));&lt;br /&gt;
Dt_U=zeros(length(t),length(x));&lt;br /&gt;
Dx_U=zeros(length(t),length(x));    &lt;br /&gt;
&lt;br /&gt;
%Condición inicial: Estiramos 2 m del centro&lt;br /&gt;
%Modelizado como dos rectas antisimétricas que se cortan en x=5 y&lt;br /&gt;
%sujetas en x=0 y x=L.&lt;br /&gt;
&lt;br /&gt;
U(1,:)=2*sin(x*pi/L);&lt;br /&gt;
Dt_U(1,:)=zeros(1,length(x))';&lt;br /&gt;
D2t_U=Ecuacion5(U(1,:),x,-1);&lt;br /&gt;
&lt;br /&gt;
%Inicio del esquema numérico&lt;br /&gt;
%empieza en 2 ya que el 1 es la cond. inicial&lt;br /&gt;
&lt;br /&gt;
%ESQUEMA NEWMARK&lt;br /&gt;
&lt;br /&gt;
 for i=2:length(t)&lt;br /&gt;
    iter=[k,i]&lt;br /&gt;
    Ua=U(i-1,:);&lt;br /&gt;
    Dt_Ua=Dt_U(i-1,:);&lt;br /&gt;
    D2t_Ua=D2t_U;&lt;br /&gt;
    %Derivada segunda respecto del tiempo en el instante t, se obtiene de&lt;br /&gt;
    %eq. diferencial u_tt=f(x,u,u_x,u_xx)&lt;br /&gt;
    D2t_U=Ecuacion5(U(i-1,:),x,t(i))-A(k)*Dt_Ua;&lt;br /&gt;
    %Derivada primera&lt;br /&gt;
    Dt_U(i,:)=Dt_Ua+0.5*dt*(D2t_Ua+D2t_U);&lt;br /&gt;
    %Ecuacion&lt;br /&gt;
    U(i,:) = Ua+Dt_Ua*dt+(1/6)*(D2t_Ua+D2t_U)*dt^2;&lt;br /&gt;
 end&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 %ENERGIA&lt;br /&gt;
 for i=1:length(t)&lt;br /&gt;
    Dx_U(i,:)=deriva(x,U(i,:),0);&lt;br /&gt;
 end&lt;br /&gt;
dE=zeros(length(t),1);&lt;br /&gt;
for i=1:length(x)&lt;br /&gt;
    dE=dE+(Dt_U(:,i).^2+Dx_U(:,i).^2)*dx;&lt;br /&gt;
end&lt;br /&gt;
 ENE(k,:)=dE;&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
 figure(1)&lt;br /&gt;
 hold on&lt;br /&gt;
 grid&lt;br /&gt;
 aa=find(x==L/4);&lt;br /&gt;
 ab=find(x==3*L/4);&lt;br /&gt;
 legend('A=0','A=1','A=4','A=10','A=100');&lt;br /&gt;
 plot(t,ENE(1,:),t,ENE(2,:),t,ENE(3,:),t,ENE(4,:),t,ENE(5,:));&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''FUNCIONES:'''&lt;br /&gt;
DERIVA:&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
function v = deriva(x,y,t)&lt;br /&gt;
n = length(x);&lt;br /&gt;
del=zeros(1,n);&lt;br /&gt;
if t==1&lt;br /&gt;
    i=1;&lt;br /&gt;
    del(1)=(y(i)-y(i+1))/(-x(i)+x(i+1));&lt;br /&gt;
    for i=2:n&lt;br /&gt;
    del(i)=(y(i)-y(i-1))/(x(i)-x(i-1));&lt;br /&gt;
    end &lt;br /&gt;
elseif t==-1&lt;br /&gt;
    for i=1:n-1&lt;br /&gt;
    del(i)=(y(i)-y(i+1))/(x(i)-x(i+1));&lt;br /&gt;
    end &lt;br /&gt;
    i=n;&lt;br /&gt;
    del(i)=(y(i)-y(i-1))/(x(i)-x(i-1));&lt;br /&gt;
elseif t==0&lt;br /&gt;
    i=1;&lt;br /&gt;
    del(1)=(y(i)-y(i+1))/(+x(i)-x(i+1));&lt;br /&gt;
    for i=2:n-1&lt;br /&gt;
    del(i)=(y(i+1)-y(i-1))/(2*(x(i)-x(i-1)));&lt;br /&gt;
    end &lt;br /&gt;
    i=n;&lt;br /&gt;
    del(n)=(y(i)-y(i-1))/(x(i)-x(i-1));  &lt;br /&gt;
end&lt;br /&gt;
v=del;&lt;br /&gt;
end&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
'''ECUACIÓN 5:'''&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
function [ V ] = Ecuacion5( u,x,t )&lt;br /&gt;
%se guarda aquí la ecuación diferencial del tipo u_tt=f(x,u,u_x,u_xx)&lt;br /&gt;
%INCLUIDAS LAS CC AQUÍ&lt;br /&gt;
%PARA u_tt=u_xx&lt;br /&gt;
%CC: u(0,t)=u(L,t)=0;&lt;br /&gt;
&lt;br /&gt;
Ax=x(2)-x(1);&lt;br /&gt;
n=length(u);&lt;br /&gt;
V=zeros(1,n);&lt;br /&gt;
&lt;br /&gt;
%Las condiciones de contorno vienen en x(1)=0 y x(Nx)=L&lt;br /&gt;
u(1)=0;&lt;br /&gt;
&lt;br /&gt;
if(t==-1)&lt;br /&gt;
    u(n)=0;&lt;br /&gt;
else&lt;br /&gt;
    u(n)=0;&lt;br /&gt;
    %u(n)=sin(2*pi*F0*t);&lt;br /&gt;
    %u(n)=(1/(b*Ax-1))*u(n-1);&lt;br /&gt;
end&lt;br /&gt;
for i=2:n-1&lt;br /&gt;
    &lt;br /&gt;
    V(i)=(1/Ax^2)*(u(i+1)-2*u(i)+u(i-1));&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
i=1;&lt;br /&gt;
V(i)=(1/Ax^2)*(u(i+2)-2*u(i+1));&lt;br /&gt;
i=n;&lt;br /&gt;
V(i)=(1/Ax^2)*(u(i)-2*u(i-1)+u(i-2));&lt;br /&gt;
end&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
La gráfica buscada es:&lt;br /&gt;
[[Archivo:Graficadelaenergiaenunmedioviscoso.png|700px|thumb|centre|Gráfica de la energía(ordenadas) del cable respecto del tiempo (Abcisas).]]&lt;br /&gt;
En la gráfica se aprecian cuatro curvas de distintos colores correspondientes a '''&amp;lt;math&amp;gt; a=0  &amp;lt;/math&amp;gt;''','''&amp;lt;math&amp;gt; a=1  &amp;lt;/math&amp;gt;''','''&amp;lt;math&amp;gt; a=4  &amp;lt;/math&amp;gt;''','''&amp;lt;math&amp;gt; a=10  &amp;lt;/math&amp;gt;''',''&amp;lt;math&amp;gt; a=100  &amp;lt;/math&amp;gt;'''.&lt;br /&gt;
&lt;br /&gt;
Como podemos apreciar el valor de la energía disminuye a medida que aumentamos el valor de &amp;quot;a&amp;quot;. Esto es debido a que &amp;quot;a&amp;quot; define el coeficiente de amortiguamiento del líquido en el cual se encuentra la cuerda. Luego, dicha disminución de energía se produce por la disipación en el medio de gran parte de la energía inicial.&lt;br /&gt;
&lt;br /&gt;
==== Sujeción a una estructura de vibración periódica. ====&lt;br /&gt;
&lt;br /&gt;
En este caso supondremos que el extremo derecho que sujeta el cable está sometido a una vibración periódica de frecuencia  &amp;lt;math&amp;gt; F_0 &amp;lt;/math&amp;gt; [Herzios]. Al haber una vibración externa que afecta directamente al cable la expresión de su movimiento y, por consecuencia, de su energía, se va a ver modificada. Nosotros incluiremos esta modificación en la función &amp;lt;math&amp;gt; f(t) &amp;lt;/math&amp;gt; de problema de valor inicial que venimos tratando. Esta función va a pasar a ser: &lt;br /&gt;
\begin{equation}&lt;br /&gt;
f(t)= sin(2 \pi F_0t)&lt;br /&gt;
\end{equation}&lt;br /&gt;
&lt;br /&gt;
El objetivo será el de ver cómo afecta esta alteración en el desarrollo de la energía del cable frente al tiempo.&lt;br /&gt;
Para nuestro cálculo numérico especificaremos para las siguientes situaciones:&lt;br /&gt;
En primer lugar, para: &amp;lt;math&amp;gt; F_0= \frac{1}{L} + 0,01 &amp;lt;/math&amp;gt;&lt;br /&gt;
Después,para: &amp;lt;math&amp;gt; F_0= \frac{1}{L} - 0,01 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Y para finalizar, lo estudiaremos en un intervalo de tiempo de '''t=0''' hasta '''t=60''' : &amp;lt;math&amp;gt;t \in (0,60)&amp;lt;/math&amp;gt; [segundos].&lt;br /&gt;
&lt;br /&gt;
El código matemático para matlab / octave:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''PROGRAMA:'''&lt;br /&gt;
{{matlab|codigo= &lt;br /&gt;
clc;clear all;close all;&lt;br /&gt;
&lt;br /&gt;
%Datos&lt;br /&gt;
&lt;br /&gt;
dx=0.1;L=10;dt=0.0001;NT=60;&lt;br /&gt;
A=[0,1,4,10,100];&lt;br /&gt;
x=0:dx:L;t=0:dt:NT;&lt;br /&gt;
ENE=zeros(5,length(t));&lt;br /&gt;
&lt;br /&gt;
%Condición de contorno: U(0,t)=U(L,t)=0;&lt;br /&gt;
for k=1&lt;br /&gt;
%Vector solución y derivada temporal de la solución&lt;br /&gt;
%t=0&amp;lt;&amp;gt;T(1) es donde se guardan las condiciones iniciales&lt;br /&gt;
&lt;br /&gt;
U=zeros(length(t),length(x));&lt;br /&gt;
Dt_U=zeros(length(t),length(x));&lt;br /&gt;
Dx_U=zeros(length(t),length(x));&lt;br /&gt;
&lt;br /&gt;
%Condición inicial: Estiramos 2 m del centro&lt;br /&gt;
%Modelizado como dos rectas antisimétricas que se cortan en x=5 y&lt;br /&gt;
%sujetas en x=0 y x=L.&lt;br /&gt;
&lt;br /&gt;
U(1,:)=2*sin(x*pi/L);&lt;br /&gt;
Dt_U(1,:)=zeros(1,length(x))';&lt;br /&gt;
D2t_U=Ecuacion6(U(1,:),x,-1);&lt;br /&gt;
&lt;br /&gt;
%Inicio del esquema numérico&lt;br /&gt;
%empieza en 2 ya que el 1 es la cond. inicial&lt;br /&gt;
&lt;br /&gt;
%ESQUEMA NEWMARK&lt;br /&gt;
&lt;br /&gt;
 for i=2:length(t)&lt;br /&gt;
    iter=[k,i]&lt;br /&gt;
    Ua=U(i-1,:);&lt;br /&gt;
    Dt_Ua=Dt_U(i-1,:);&lt;br /&gt;
    D2t_Ua=D2t_U;&lt;br /&gt;
    %Derivada segunda respecto del tiempo en el instante t, se obtiene de&lt;br /&gt;
    %eq. diferencial u_tt=f(x,u,u_x,u_xx)&lt;br /&gt;
    D2t_U=Ecuacion6(U(i-1,:),x,t(i))-A(k)*Dt_Ua;&lt;br /&gt;
    %Derivada primera&lt;br /&gt;
    Dt_U(i,:)=Dt_Ua+0.5*dt*(D2t_Ua+D2t_U);&lt;br /&gt;
    %Ecuacion&lt;br /&gt;
    U(i,:) = Ua+Dt_Ua*dt+(1/6)*(D2t_Ua+D2t_U)*dt^2;&lt;br /&gt;
 end&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 %ENERGIA&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 for i=1:length(t)&lt;br /&gt;
    Dx_U(i,:)=deriva(x,U(i,:),0);&lt;br /&gt;
 end&lt;br /&gt;
dE=zeros(length(t),1);&lt;br /&gt;
for i=1:length(x)&lt;br /&gt;
    dE=dE+(Dt_U(:,i).^2+Dx_U(:,i).^2)*dx;&lt;br /&gt;
end&lt;br /&gt;
 ENE(k,:)=dE;&lt;br /&gt;
end&lt;br /&gt;
 figure(1)&lt;br /&gt;
 hold on&lt;br /&gt;
 grid&lt;br /&gt;
 aa=find(x==L/4);&lt;br /&gt;
 ab=find(x==3*L/4);&lt;br /&gt;
 imagesc(U)&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''FUNCIONES:'''&lt;br /&gt;
&lt;br /&gt;
DERIVA:&lt;br /&gt;
{{matlab|codigo= &lt;br /&gt;
function v = deriva(x,y,t)&lt;br /&gt;
n = length(x);&lt;br /&gt;
del=zeros(1,n);&lt;br /&gt;
if t==1&lt;br /&gt;
    i=1;&lt;br /&gt;
    del(1)=(y(i)-y(i+1))/(-x(i)+x(i+1));&lt;br /&gt;
    for i=2:n&lt;br /&gt;
    del(i)=(y(i)-y(i-1))/(x(i)-x(i-1));&lt;br /&gt;
    end &lt;br /&gt;
elseif t==-1&lt;br /&gt;
    for i=1:n-1&lt;br /&gt;
    del(i)=(y(i)-y(i+1))/(x(i)-x(i+1));&lt;br /&gt;
    end &lt;br /&gt;
    i=n;&lt;br /&gt;
    del(i)=(y(i)-y(i-1))/(x(i)-x(i-1));&lt;br /&gt;
elseif t==0&lt;br /&gt;
    i=1;&lt;br /&gt;
    del(1)=(y(i)-y(i+1))/(+x(i)-x(i+1));&lt;br /&gt;
    for i=2:n-1&lt;br /&gt;
    del(i)=(y(i+1)-y(i-1))/(2*(x(i)-x(i-1)));&lt;br /&gt;
    end &lt;br /&gt;
    i=n;&lt;br /&gt;
    del(n)=(y(i)-y(i-1))/(x(i)-x(i-1));  &lt;br /&gt;
end&lt;br /&gt;
v=del;&lt;br /&gt;
end&lt;br /&gt;
}}&lt;br /&gt;
'''ECUACIÓN 6:'''&lt;br /&gt;
&lt;br /&gt;
function [ V ] = Ecuacion6( u,x,t )&lt;br /&gt;
{{matlab|codigo= &lt;br /&gt;
&lt;br /&gt;
%se guarda aquí la ecuación diferencial del tipo u_tt=f(x,u,u_x,u_xx)&lt;br /&gt;
%INCLUIDAS LAS CC AQUÍ!&lt;br /&gt;
%PARA u_tt=u_xx&lt;br /&gt;
%CC: u(0,t)=u(L,t)=0;&lt;br /&gt;
&lt;br /&gt;
Ax=x(2)-x(1);&lt;br /&gt;
n=length(u);&lt;br /&gt;
V=zeros(1,n);&lt;br /&gt;
F0=(1/x(n))+0.01;&lt;br /&gt;
b=-2;&lt;br /&gt;
&lt;br /&gt;
%Las condiciones de contorno vienen en x(1)=0 y x(Nx)=L&lt;br /&gt;
&lt;br /&gt;
u(1)=0;&lt;br /&gt;
if(t==-1)&lt;br /&gt;
    u(n)=0;&lt;br /&gt;
else&lt;br /&gt;
    %u(n)=0;&lt;br /&gt;
    u(n)=sin(2*pi*F0*t);&lt;br /&gt;
    %u(n)=(1/(b*Ax-1))*u(n-1);&lt;br /&gt;
end&lt;br /&gt;
for i=2:n-1&lt;br /&gt;
    V(i)=(1/Ax^2)*(u(i+1)-2*u(i)+u(i-1));&lt;br /&gt;
end&lt;br /&gt;
i=1;&lt;br /&gt;
V(i)=(1/Ax^2)*(u(i+2)-2*u(i+1));&lt;br /&gt;
i=n;&lt;br /&gt;
V(i)=(1/Ax^2)*(u(i)-2*u(i-1)+u(i-2));&lt;br /&gt;
end&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:6.1.png|700px|thumb|centre|Gráfica en tres dimensiones de la energía de un cable cuyo extremo derecho está sometido a una vibración externa periódica para F_0=1/L +0,1]]&lt;br /&gt;
'''function [ V ] = Ecuacion6( u,x,t )'''&lt;br /&gt;
{{matlab|codigo= &lt;br /&gt;
%se guarda aquí la ecuación diferencial del tipo u_tt=f(x,u,u_x,u_xx)&lt;br /&gt;
%INCLUIDAS LAS CC AQUÍ!&lt;br /&gt;
%PARA u_tt=u_xx&lt;br /&gt;
%CC: u(0,t)=u(L,t)=0;&lt;br /&gt;
&lt;br /&gt;
Ax=x(2)-x(1);&lt;br /&gt;
n=length(u);&lt;br /&gt;
V=zeros(1,n);&lt;br /&gt;
F0=(1/x(n))-0.01;&lt;br /&gt;
b=-2;&lt;br /&gt;
&lt;br /&gt;
%Las condiciones de contorno vienen en x(1)=0 y x(Nx)=L&lt;br /&gt;
&lt;br /&gt;
u(1)=0;&lt;br /&gt;
if(t==-1)&lt;br /&gt;
    u(n)=0;&lt;br /&gt;
else&lt;br /&gt;
    %u(n)=0;&lt;br /&gt;
    u(n)=sin(2*pi*F0*t);&lt;br /&gt;
    %u(n)=(1/(b*Ax-1))*u(n-1);&lt;br /&gt;
end&lt;br /&gt;
for i=2:n-1&lt;br /&gt;
    V(i)=(1/Ax^2)*(u(i+1)-2*u(i)+u(i-1));&lt;br /&gt;
end&lt;br /&gt;
i=1;&lt;br /&gt;
V(i)=(1/Ax^2)*(u(i+2)-2*u(i+1));&lt;br /&gt;
i=n;&lt;br /&gt;
V(i)=(1/Ax^2)*(u(i)-2*u(i-1)+u(i-2));&lt;br /&gt;
end&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:6.2.png|700px|thumb|centre|Gráfica en tres dimensiones de la energía de un cable cuyo extremo derecho está sometido a una vibración externa periódica.]]&lt;br /&gt;
&lt;br /&gt;
'''function [ V ] = Ecuacion6( u,x,t )'''&lt;br /&gt;
{{matlab|codigo= &lt;br /&gt;
%se guarda aquí la ecuación diferencial del tipo u_tt=f(x,u,u_x,u_xx)&lt;br /&gt;
%INCLUIDAS LAS CC AQUÍ!&lt;br /&gt;
%PARA u_tt=u_xx&lt;br /&gt;
%CC: u(0,t)=u(L,t)=0;&lt;br /&gt;
&lt;br /&gt;
Ax=x(2)-x(1);&lt;br /&gt;
n=length(u);&lt;br /&gt;
V=zeros(1,n);&lt;br /&gt;
F0=(1/x(n));&lt;br /&gt;
b=-2;&lt;br /&gt;
&lt;br /&gt;
%Las condiciones de contorno vienen en x(1)=0 y x(Nx)=L&lt;br /&gt;
&lt;br /&gt;
u(1)=0;&lt;br /&gt;
if(t==-1)&lt;br /&gt;
    u(n)=0;&lt;br /&gt;
else&lt;br /&gt;
    %u(n)=0;&lt;br /&gt;
    u(n)=sin(2*pi*F0*t);&lt;br /&gt;
    %u(n)=(1/(b*Ax-1))*u(n-1);&lt;br /&gt;
end&lt;br /&gt;
for i=2:n-1&lt;br /&gt;
    V(i)=(1/Ax^2)*(u(i+1)-2*u(i)+u(i-1));&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
i=1;&lt;br /&gt;
V(i)=(1/Ax^2)*(u(i+2)-2*u(i+1));&lt;br /&gt;
i=n;&lt;br /&gt;
V(i)=(1/Ax^2)*(u(i)-2*u(i-1)+u(i-2));&lt;br /&gt;
end&lt;br /&gt;
}}&lt;br /&gt;
 &lt;br /&gt;
La gráfica resultante es la siguiente:&lt;br /&gt;
[[Archivo:6.3.png|700px|thumb|centre|Gráfica en tres dimensiones de la energía de un cable cuyo extremo derecho está sometido a una vibración externa periódica.]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
En dicha gráfica, se puede observar que la forma de la función o la energía se ve alterada por la condición impuesta de tal manera que ésta adquiere una forma también sinusoidal, y que su estabilización dependería del tiempo transcurrido entre vibración y vibración.&lt;br /&gt;
&lt;br /&gt;
==== Sujeción a un aparato que responde a una vibración externa. ====&lt;br /&gt;
&lt;br /&gt;
La siguiente situación que vamos a representar a modelar a través de ecuaciones diferenciales va a ser la siguiente: supondremos que el cable de la anterior situación (que recibía en su extremo derecho una vibración periódica de &amp;lt;math&amp;gt; F_0 &amp;lt;/math&amp;gt; [Herzios])envía una respuesta a la vibración que recibe. Esta situación la vamos a representar como un cambio en la condición de contorno; ésta va a pasar a ser: &amp;lt;math&amp;gt; u_x(L,t)=bu(L,t) &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
El objetivo, de nuevo será representar la evolución de la energía respecto del tiempo y ver si este cambio en el problema se ve reflejado en su representación. &lt;br /&gt;
En el código numérico, no obstante, la situación de &amp;lt;math&amp;gt; u_x(L,t)=bu(L,t) &amp;lt;/math&amp;gt; la vamos a aproximar por la siguiente expresión:&lt;br /&gt;
&amp;lt;math&amp;gt; u_x(L,t)-bu(L,t)  \cong  \frac{u_{N+1}(t)-u_{N-1}(t)}{2h-u_N(t)} &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
En la resolución del problema emplearemos de nuevo la condición inicial de sujetar el cable por el centro y elevarlo 2 m perpendicularmente: &lt;br /&gt;
&amp;lt;math&amp;gt; u(x,0)=g(x)= 2- |\frac{2}{5}x -2| &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Y además obtendremos el resultado para los dos valores siguientes de &amp;lt;math&amp;gt;b&amp;lt;/math&amp;gt; :&lt;br /&gt;
Para &amp;lt;math&amp;gt; b=2 &amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt; b=-2 &amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
El código numérico de matlab/octave es:&lt;br /&gt;
&lt;br /&gt;
'''PROGRAMA:'''&lt;br /&gt;
{{matlab|codigo= &lt;br /&gt;
clc;clear all;close all;&lt;br /&gt;
&lt;br /&gt;
%Datos&lt;br /&gt;
dx=0.1;L=10;dt=0.0001;NT=40;&lt;br /&gt;
A=[0,1,4,10,100];&lt;br /&gt;
x=0:dx:L;t=0:dt:NT;&lt;br /&gt;
ENE=zeros(5,length(t));&lt;br /&gt;
&lt;br /&gt;
%Condición de contorno: U(0,t)=U(L,t)=0;&lt;br /&gt;
for k=1&lt;br /&gt;
&lt;br /&gt;
%Vector solución y derivada temporal de la solución&lt;br /&gt;
%t=0&amp;lt;&amp;gt;T(1) es donde se guardan las condiciones iniciales&lt;br /&gt;
&lt;br /&gt;
U=zeros(length(t),length(x));&lt;br /&gt;
Dt_U=zeros(length(t),length(x));&lt;br /&gt;
Dx_U=zeros(length(t),length(x));    &lt;br /&gt;
&lt;br /&gt;
%Condición inicial: Estiramos 2 m del centro&lt;br /&gt;
%Modelizado como dos rectas antisimétricas que se cortan en x=5 y&lt;br /&gt;
%sujetas en x=0 y x=L.&lt;br /&gt;
&lt;br /&gt;
U(1,:)=2*sin(x*pi/L);&lt;br /&gt;
Dt_U(1,:)=zeros(1,length(x))';&lt;br /&gt;
D2t_U=Ecuacion7(U(1,:),x,-1);&lt;br /&gt;
&lt;br /&gt;
%Inicio del esquema numérico&lt;br /&gt;
%empieza en 2 ya que el 1 es la cond. inicial&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
%ESQUEMA NEWMARK&lt;br /&gt;
 for i=2:length(t)&lt;br /&gt;
    iter=[k,i]&lt;br /&gt;
    Ua=U(i-1,:);&lt;br /&gt;
    Dt_Ua=Dt_U(i-1,:);&lt;br /&gt;
    D2t_Ua=D2t_U;&lt;br /&gt;
&lt;br /&gt;
    %Derivada segunda respecto del tiempo en el instante t, se obtiene de&lt;br /&gt;
    %eq. diferencial u_tt=f(x,u,u_x,u_xx)&lt;br /&gt;
&lt;br /&gt;
    D2t_U=Ecuacion7(U(i-1,:),x,t(i))-A(k)*Dt_Ua;&lt;br /&gt;
&lt;br /&gt;
    %Derivada primera&lt;br /&gt;
    Dt_U(i,:)=Dt_Ua+0.5*dt*(D2t_Ua+D2t_U);&lt;br /&gt;
&lt;br /&gt;
    %Ecuacion&lt;br /&gt;
    U(i,:) = Ua+Dt_Ua*dt+(1/6)*(D2t_Ua+D2t_U)*dt^2;&lt;br /&gt;
 end&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 %ENERGIA&lt;br /&gt;
 for i=1:length(t)&lt;br /&gt;
    Dx_U(i,:)=deriva(x,U(i,:),0);&lt;br /&gt;
 end&lt;br /&gt;
dE=zeros(length(t),1);&lt;br /&gt;
for i=1:length(x)&lt;br /&gt;
    dE=dE+(Dt_U(:,i).^2+Dx_U(:,i).^2)*dx;&lt;br /&gt;
end&lt;br /&gt;
 ENE(k,:)=dE;&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
 figure(1)&lt;br /&gt;
 hold on&lt;br /&gt;
 grid&lt;br /&gt;
 aa=find(x==L/4);&lt;br /&gt;
 ab=find(x==3*L/4);&lt;br /&gt;
 plot(t,ENE(1,:))&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
'''FUNCIONES:'''&lt;br /&gt;
'''function v = deriva(x,y,t)'''&lt;br /&gt;
{{matlab|codigo= &lt;br /&gt;
n = length(x);&lt;br /&gt;
del=zeros(1,n);&lt;br /&gt;
if t==1&lt;br /&gt;
    i=1;&lt;br /&gt;
    del(1)=(y(i)-y(i+1))/(-x(i)+x(i+1));&lt;br /&gt;
    for i=2:n&lt;br /&gt;
    del(i)=(y(i)-y(i-1))/(x(i)-x(i-1));&lt;br /&gt;
    end &lt;br /&gt;
elseif t==-1&lt;br /&gt;
    for i=1:n-1&lt;br /&gt;
    del(i)=(y(i)-y(i+1))/(x(i)-x(i+1));&lt;br /&gt;
    end &lt;br /&gt;
    i=n;&lt;br /&gt;
    del(i)=(y(i)-y(i-1))/(x(i)-x(i-1));&lt;br /&gt;
elseif t==0&lt;br /&gt;
    i=1;&lt;br /&gt;
    del(1)=(y(i)-y(i+1))/(+x(i)-x(i+1));&lt;br /&gt;
    for i=2:n-1&lt;br /&gt;
    del(i)=(y(i+1)-y(i-1))/(2*(x(i)-x(i-1)));&lt;br /&gt;
    end &lt;br /&gt;
    i=n;&lt;br /&gt;
    del(n)=(y(i)-y(i-1))/(x(i)-x(i-1));  &lt;br /&gt;
end&lt;br /&gt;
v=del;&lt;br /&gt;
end&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
'''function [ V ] = Ecuacion7( u,x,t )'''&lt;br /&gt;
{{matlab|codigo= &lt;br /&gt;
%se guarda aquí la ecuación diferencial del tipo u_tt=f(x,u,u_x,u_xx)&lt;br /&gt;
%INCLUIDAS LAS CC AQUÍ!&lt;br /&gt;
%PARA u_tt=u_xx&lt;br /&gt;
%CC: u(0,t)=u(L,t)=0;&lt;br /&gt;
&lt;br /&gt;
Ax=x(2)-x(1);&lt;br /&gt;
n=length(u);&lt;br /&gt;
V=zeros(1,n);&lt;br /&gt;
F0=(1/x(n));&lt;br /&gt;
b=2;&lt;br /&gt;
&lt;br /&gt;
%Las condiciones de contorno vienen en x(1)=0 y x(Nx)=L&lt;br /&gt;
u(1)=0;&lt;br /&gt;
if(t==-1)&lt;br /&gt;
    u(n)=0;&lt;br /&gt;
else&lt;br /&gt;
    %u(n)=0;&lt;br /&gt;
    %u(n)=sin(2*pi*F0*t);&lt;br /&gt;
    u(n)=(1/(b*Ax-1))*u(n-1);&lt;br /&gt;
end&lt;br /&gt;
for i=2:n-1&lt;br /&gt;
    V(i)=(1/Ax^2)*(u(i+1)-2*u(i)+u(i-1));&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
i=1;&lt;br /&gt;
V(i)=(1/Ax^2)*(u(i+2)-2*u(i+1));&lt;br /&gt;
i=n;&lt;br /&gt;
V(i)=(1/Ax^2)*(u(i)-2*u(i-1)+u(i-2));&lt;br /&gt;
end&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:7.1.png|700px|thumb|centre|Gráfica de la energía (ordenadas) de un cable frente al tiempo (abcisas) que recibe una vibración en su extremo derecho y que responde a dicha vibración para b=2. ]]&lt;br /&gt;
'''function [ V ] = Ecuacion7( u,x,t )'''&lt;br /&gt;
{{matlab|codigo= &lt;br /&gt;
%se guarda aquí la ecuación diferencial del tipo u_tt=f(x,u,u_x,u_xx)&lt;br /&gt;
%INCLUIDAS LAS CC AQUÍ!&lt;br /&gt;
%PARA u_tt=u_xx&lt;br /&gt;
%CC: u(0,t)=u(L,t)=0;&lt;br /&gt;
&lt;br /&gt;
Ax=x(2)-x(1);&lt;br /&gt;
n=length(u);&lt;br /&gt;
V=zeros(1,n);&lt;br /&gt;
F0=(1/x(n));&lt;br /&gt;
b=-2;&lt;br /&gt;
&lt;br /&gt;
%Las condiciones de contorno vienen en x(1)=0 y x(Nx)=L&lt;br /&gt;
u(1)=0;&lt;br /&gt;
&lt;br /&gt;
if(t==-1)&lt;br /&gt;
    u(n)=0;&lt;br /&gt;
else&lt;br /&gt;
    %u(n)=0;&lt;br /&gt;
    %u(n)=sin(2*pi*F0*t);&lt;br /&gt;
    u(n)=(1/(b*Ax-1))*u(n-1);&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
for i=2:n-1&lt;br /&gt;
    V(i)=(1/Ax^2)*(u(i+1)-2*u(i)+u(i-1));&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
i=1;&lt;br /&gt;
V(i)=(1/Ax^2)*(u(i+2)-2*u(i+1));&lt;br /&gt;
i=n;&lt;br /&gt;
V(i)=(1/Ax^2)*(u(i)-2*u(i-1)+u(i-2));&lt;br /&gt;
end&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
La imagen resultante es:&lt;br /&gt;
[[Archivo:7.2.png|700px|thumb|centre|Gráfica de la energía (ordenadas) de un cable frente al tiempo (abcisas) que recibe una vibración en su extremo derecho y que responde a dicha vibración para b=-2. ]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
La anterior gráfica muestra el comportamiento de la cuerda como respuesta a la vibración producida en uno de sus extremos así como el movimiento transversal del punto medio al comienzo. Podemos observar el movimiento transversal de cada punto de la cuerda a través de la expresión de la energía, así como que, a medida que transcurre el tiempo, ésta se va estabilizando. La forma de la función recuerda a una función sinusoidal debido a la forma de la condición de contorno impuesta.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Categoría:Ecuaciones Diferentiales]]&lt;br /&gt;
 [[Categoría:ED13/14]]&lt;br /&gt;
 [[Categoría:Trabajos 2013-14]]&lt;/div&gt;</summary>
		<author><name>Lucia Lopez</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Ecuaci%C3%B3n_de_ondas_(grupo_2B)&amp;diff=13128</id>
		<title>Ecuación de ondas (grupo 2B)</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Ecuaci%C3%B3n_de_ondas_(grupo_2B)&amp;diff=13128"/>
				<updated>2014-05-19T20:48:27Z</updated>
		
		<summary type="html">&lt;p&gt;Lucia Lopez: /* Aproximación por Fourier con diferentes términos de series. */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{ TrabajoED | Ecuación de ondas. Grupo 2-B| [[:Categoría:Ecuaciones Diferenciales|Ecuaciones Diferenciales]]|[[:Categoría:ED13/14|Curso 2013-14]]| &lt;br /&gt;
Ignacio Díaz-Caneja Camblor&lt;br /&gt;
&lt;br /&gt;
Alberto Fernández Pérez&lt;br /&gt;
&lt;br /&gt;
Adela González Barbado&lt;br /&gt;
&lt;br /&gt;
Lucia López Sánchez&lt;br /&gt;
&lt;br /&gt;
Araceli Martín Candilejo&lt;br /&gt;
&lt;br /&gt;
Diego Solano López&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
== Modelización de los desplazamientos del Cable. ==&lt;br /&gt;
El problema que se tratará a continuación describe una ecuación de '''tipo hiperbólico''', una '''ecuación de ondas'''.&lt;br /&gt;
Consideramos un '''cable de 10 metros''' de longitud '''sujeto por sus extremos'''. Suponiendo que éste tiene una '''sección pequeña''' respecto a su longitud someteremos al cable a pequeñas vibraciones que estudiaremos con una modelización de la ecuación de ondas. &lt;br /&gt;
Se caracteriza al cable de una masa constante por unidad de volumen, es decir, será '''homogéneo'''. Éste, '''flexible''' a la tracción, únicamente ofrece resistencias en su dirección longitudinal, tangenciales, pero no a esfuerzos de flexión o cortes. Se supone, además, que es '''inextensible''' por lo que será lo suficientemente rígido longitudinalmente como para poder despreciar su extensibilidad.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Con esta modelización se estudiarán las '''pequeñas vibraciones''', desplazamientos transversales, a las que es sometido el cable. Para iniciar el movimiento del cable lo sujetaremos por el centro subiéndolo dos metros, lo que nos proporciona una primera condición inicial determinada por la función g(x), y soltándolo con una velocidad nula. &lt;br /&gt;
&lt;br /&gt;
&amp;lt;br/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Obtenemos la ecuación &amp;lt;math&amp;gt;u_{tt}-u_{xx}=0&amp;lt;/math&amp;gt; , de la cual se puede observar que tanto el '''módulo de la tensión''' como la '''densidad''' son '''constantes''' ya que el '''módulo de la elasticidad''' es constante, &amp;lt;math&amp;gt;c^2=1&amp;lt;/math&amp;gt; . Al ser ésta primera ecuación homogénea deducimos que transversalmente no actúa ninguna fuerza densidad espacial y temporal. Se deduce del enunciado anterior que las condiciones de frontera son '''homogéneas''', &amp;lt;math&amp;gt;u(0,t)=0&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;u(10,t)=0&amp;lt;/math&amp;gt; que nos indican que los extremos del cable no describen ningún tipo de movimiento en todo instante t al no estar sometidos a ningun tipo de fuerza. Finalmente, añadimos al sistema las condiciones iniciales, la primera de ellas, &amp;lt;math&amp;gt;u(x,0)=g(x)= 2- |\frac{2}{5}x -2|&amp;lt;/math&amp;gt;, define el '''movimiento descrito por la onda''' en el instante t=0 en cualquier punto del cable; y la segunda, &amp;lt;math&amp;gt;u_t(x,0)=0&amp;lt;/math&amp;gt;, que la onda parte de una '''velocidad inicial nula'''.&lt;br /&gt;
[[Image:DV.png|300px|thumb|right|Deslizamiento vertical del cable. ]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
\begin{cases}&lt;br /&gt;
&lt;br /&gt;
u_{tt}- u_{xx}=0  \  x∈[0,10] \ t&amp;gt;0\\&lt;br /&gt;
u(0,t)=0\\&lt;br /&gt;
u(10,t)=0\\&lt;br /&gt;
u(x,0)= 2- |\frac{2}{5}x -2|\\&lt;br /&gt;
u_t(x,0)=0&lt;br /&gt;
\end{cases}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
En los siguientes apartados se realizaran aproximaciones del sistema expuesto con tres métodos distintos de los que más tarde se hará una comparativa. Para esto último nos ayudaremos del error por lo que necesitaremos la solución analítica.&lt;br /&gt;
Como el problema consta de condiciones de frontera homogéneas, aplicamos directamente el método de separación de variables para su resolución analítica. &lt;br /&gt;
&amp;lt;br/&amp;gt;&lt;br /&gt;
==== Aproximación por el método del trapecio. ====&lt;br /&gt;
El primer método que usaremos será el del Trapecio que consiste en RELLENAR&lt;br /&gt;
{{matlab|codigo= &lt;br /&gt;
%u_tt-u_xx=0&lt;br /&gt;
%u(0,t)=u(l,t)=0&lt;br /&gt;
%u(x,0)=2-abs(0.4x-2)&lt;br /&gt;
%ut(x,0)=0&lt;br /&gt;
clear all&lt;br /&gt;
&lt;br /&gt;
%Datos del problema&lt;br /&gt;
L=10;&lt;br /&gt;
T=40;&lt;br /&gt;
&lt;br /&gt;
%Discretización&lt;br /&gt;
h=0.1;&lt;br /&gt;
N=L/h;&lt;br /&gt;
x=0:h:L;&lt;br /&gt;
xint=h:h:L-h;&lt;br /&gt;
dt=h;&lt;br /&gt;
t=0:dt:T;&lt;br /&gt;
&lt;br /&gt;
%Aprox. de u_xx&lt;br /&gt;
K=2*diag(ones(1,N-1))-diag(ones(1,N-2),-1)-diag(ones(1,N-2),1);&lt;br /&gt;
K=K/h^2;&lt;br /&gt;
F=zeros(N-1,1);&lt;br /&gt;
&lt;br /&gt;
%Posición inicial.&lt;br /&gt;
u0=(2-abs(xint*2/5-2))';&lt;br /&gt;
v0=zeros(N-1,1);&lt;br /&gt;
&lt;br /&gt;
%Aprox. de u_tt&lt;br /&gt;
M=[zeros(N-1),eye(N-1);-K,zeros(N-1)];&lt;br /&gt;
G=[zeros(N-1,1);F];&lt;br /&gt;
&lt;br /&gt;
%Aproximación por el método del Trapecio&lt;br /&gt;
W0=[u0;v0];&lt;br /&gt;
WW=W0;&lt;br /&gt;
sol=zeros(length(t),N+1);&lt;br /&gt;
sol(1,:)=[0,W0(1:N-1)',0];&lt;br /&gt;
for j=1:length(t)-1&lt;br /&gt;
    WW=(eye(2*N-2)-dt/2*M)\(eye(2*N-2)+dt/2*M)*WW;&lt;br /&gt;
    sol(j+1,:)=[0,WW(1:N-1)',0];&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
%Dibujo de la solución&lt;br /&gt;
[xx,tt]=meshgrid(x,t);&lt;br /&gt;
surf(xx,tt,sol);&lt;br /&gt;
xlabel('Desplazamiento horizontal');&lt;br /&gt;
ylabel('Tiempo');&lt;br /&gt;
zlabel('Desplazamiento vertical');}}&lt;br /&gt;
&lt;br /&gt;
[[Image:klklk.jpg|700px|thumb|center|Aproximación por el método del Trapecio.]]&lt;br /&gt;
&lt;br /&gt;
==== Aproximación por el método de Euler. ====&lt;br /&gt;
Se exponen en este apartados dos tipos de aproximaciones de Euler.&lt;br /&gt;
&lt;br /&gt;
Este método se basa en la posibilidad de aproximar una función original mediante rectas tangentes partiendo de un punto dado. Sabiendo que la recta tangente de una función en un punto es la derivada en dicho punto, este método consiste en calcular derivadas de la función en diferentes puntos pertenecientes a ella. Estos puntos serán tomados con la misma distancia a lo largo de la recta, a esta distancia la denominamos paso de discretización. &lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Image:Euler.png|300px|thumb|center|Aproximación de una función por el método de Euler]]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===== Euler Explícito. =====&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
%utt-uxx=0&lt;br /&gt;
%u(0,t)=u(l,t)=0&lt;br /&gt;
%u(x,0)=2-abs(0.4x-2)&lt;br /&gt;
%ut(x,0)=0&lt;br /&gt;
clear all&lt;br /&gt;
L=10;&lt;br /&gt;
T=40;&lt;br /&gt;
h=0.1;&lt;br /&gt;
N=L/h;&lt;br /&gt;
x=0:h:L;&lt;br /&gt;
xint=h:h:L-h;&lt;br /&gt;
dt=h;&lt;br /&gt;
t=0:dt:T;&lt;br /&gt;
K=2*diag(ones(1,N-1))-diag(ones(1,N-2),-1)-diag(ones(1,N-2),1);&lt;br /&gt;
K=K/h^2;&lt;br /&gt;
F=zeros(N-1,1);&lt;br /&gt;
u0=2-abs((xint*2/5-2))';&lt;br /&gt;
v0=zeros(N-1,1);&lt;br /&gt;
M=[zeros(N-1),eye(N-1);-K,zeros(N-1)];&lt;br /&gt;
G=[zeros(N-1,1);F];&lt;br /&gt;
W0=[u0;v0];&lt;br /&gt;
WW=W0;&lt;br /&gt;
sol=zeros(length(t),N+1);&lt;br /&gt;
sol(1,:)=[0,W0(1:N-1)',0];&lt;br /&gt;
for j=1:length(t)-1&lt;br /&gt;
    WW=WW+dt*M*WW;&lt;br /&gt;
    sol(j+1,:)=[0,WW(1:N-1)',0];&lt;br /&gt;
end&lt;br /&gt;
[xx,tt]=meshgrid(x,t);&lt;br /&gt;
surf(xx,tt,sol);}}&lt;br /&gt;
===== Euler Modificado. =====&lt;br /&gt;
&lt;br /&gt;
ELEGIR UNA DE LAS DOS DEFINICIONES &lt;br /&gt;
&lt;br /&gt;
Este método se basa en la misma idea del método anterior, pero hace un refinamiento en la aproximación, tomando un promedio entre las pendientes.&lt;br /&gt;
&lt;br /&gt;
El método de Euler modificado toma como base que es más razonable pensar que obtendríamos un valor más preciso si aproximáramos tomando un promedio entre las pendientes, en vez de tomarla igual a su valor como en el método anterior de Euler explícito.&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
%utt-uxx=0&lt;br /&gt;
%u(0,t)=u(l,t)=0&lt;br /&gt;
%u(x,0)=2-abs(0.4x-2)&lt;br /&gt;
%ut(x,0)=0&lt;br /&gt;
clear all&lt;br /&gt;
L=10;&lt;br /&gt;
T=40;&lt;br /&gt;
h=0.1;&lt;br /&gt;
N=L/h;&lt;br /&gt;
x=0:h:L;&lt;br /&gt;
xint=h:h:L-h;&lt;br /&gt;
dt=h;&lt;br /&gt;
t=0:dt:T;&lt;br /&gt;
K=2*diag(ones(1,N-1))-diag(ones(1,N-2),-1)-diag(ones(1,N-2),1);&lt;br /&gt;
K=K/h^2;&lt;br /&gt;
F=zeros(N-1,1);&lt;br /&gt;
u0=2-abs((xint*2/5-2))';&lt;br /&gt;
v0=zeros(N-1,1);&lt;br /&gt;
M=[zeros(N-1),eye(N-1);-K,zeros(N-1)];&lt;br /&gt;
G=[zeros(N-1,1);F];&lt;br /&gt;
W0=[u0;v0];&lt;br /&gt;
WW=W0;&lt;br /&gt;
sol=zeros(length(t),N+1);&lt;br /&gt;
sol(1,:)=[0,W0(1:N-1)',0];&lt;br /&gt;
for j=1:length(t)-1&lt;br /&gt;
    k1=M*WW;&lt;br /&gt;
    WW=(eye(2*N-2)+dt*M/2)*WW+(dt/2)*k1+(dt^2)*M*k1/2;&lt;br /&gt;
    sol(j+1,:)=[0,WW(1:N-1)',0];&lt;br /&gt;
end&lt;br /&gt;
[xx,tt]=meshgrid(x,t);&lt;br /&gt;
surf(xx,tt,sol);}}&lt;br /&gt;
&lt;br /&gt;
==== Aproximación por Fourier con diferentes términos de series. ====&lt;br /&gt;
En este apartado se ofrece una aproximación alternativa a las anteriores. Se muestran '''cinco iteraciones''' distintas del '''método del Fourier''' que se compararan entre sí y con los métodos anteriores, Trapecio y Euler.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br/&amp;gt;&lt;br /&gt;
Puesto que la realización de este método es la misma sea cual sea el número de serie elegido, se han expuesto únicamente dos casos de Q para una mayor claridad del programa.&lt;br /&gt;
&lt;br /&gt;
Este método de aproximación depende de los términos de la serie de fourier que se piden al programa que calcule (al número de términos en el programa lo denamonimos con la letra Q).&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo= %utt-uxx=0&lt;br /&gt;
%u(0,t)=u(l,t)=0&lt;br /&gt;
%u(x,0)=2-abs(0.4x-2)&lt;br /&gt;
%ut(x,0)=0&lt;br /&gt;
&lt;br /&gt;
%1 iteracion&lt;br /&gt;
clear all&lt;br /&gt;
L=10;&lt;br /&gt;
T=40;&lt;br /&gt;
Q=1;&lt;br /&gt;
h=0.1;&lt;br /&gt;
N=L/h;&lt;br /&gt;
x=0:h:L;&lt;br /&gt;
dt=h;&lt;br /&gt;
t=0:dt:T;&lt;br /&gt;
sol=zeros(length(t),N+1);&lt;br /&gt;
for k=1:Q&lt;br /&gt;
    phi=sin(k/L*pi*x);&lt;br /&gt;
    a=trapz(x,(2-abs(2/5*x-2)).*phi)/(trapz(x,phi.^2));&lt;br /&gt;
    b=0;&lt;br /&gt;
    T=a.*cos(k*pi*t/L);&lt;br /&gt;
    sol=sol+T'*phi;&lt;br /&gt;
end&lt;br /&gt;
[xx,tt]=meshgrid(x,t);&lt;br /&gt;
figure (1)&lt;br /&gt;
surf(xx,tt,sol)&lt;br /&gt;
xlabel('Desplazamiento horizontal');&lt;br /&gt;
ylabel('Tiempo');&lt;br /&gt;
zlabel('Desplazamiento vertical');&lt;br /&gt;
&lt;br /&gt;
%3 iteracion&lt;br /&gt;
clear all&lt;br /&gt;
L=10;&lt;br /&gt;
T=40;&lt;br /&gt;
Q=3;&lt;br /&gt;
h=0.1;&lt;br /&gt;
N=L/h;&lt;br /&gt;
x=0:h:L;&lt;br /&gt;
dt=h;&lt;br /&gt;
t=0:dt:T;&lt;br /&gt;
sol=zeros(length(t),N+1);&lt;br /&gt;
for k=1:Q&lt;br /&gt;
    phi=sin(k/L*pi*x);&lt;br /&gt;
    a=trapz(x,(2-abs(2/5*x-2)).*phi)/(trapz(x,phi.^2));&lt;br /&gt;
    b=0;&lt;br /&gt;
    T=a.*cos(k*pi*t/L);&lt;br /&gt;
    sol=sol+T'*phi;&lt;br /&gt;
end&lt;br /&gt;
[xx,tt]=meshgrid(x,t);&lt;br /&gt;
figure (2)&lt;br /&gt;
surf(xx,tt,sol)&lt;br /&gt;
xlabel('Desplazamiento horizontal');&lt;br /&gt;
ylabel('Tiempo');&lt;br /&gt;
zlabel('Desplazamiento vertical');}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br/&amp;gt;&lt;br /&gt;
[[Image:81tF2.jpg|525px|thumb|left|Aproximación por el método del Trapecio con un término de serie.]]&lt;br /&gt;
[[Image:82tF.jpg|525px|thumb|center|Aproximación por el método del Trapecio con tres términos de serie.]]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br/&amp;gt; &lt;br /&gt;
&lt;br /&gt;
[[Image:83tF.jpg|525px|thumb|left|Aproximación por el método del Trapecio con cinco términos de serie.]]&lt;br /&gt;
[[Image:84tF.jpg|525px|thumb|center|Aproximación por el método del Trapecio con diez términos de serie.]]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Image:85tF.jpg|525px|thumb|center|Aproximación por el método del Trapecio con veinte términos de serie.]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
En este método podemos observar fijándonos en las gráficas que a mayor número de términos (mayor Q), mayor es la aproximación obtenida.&lt;br /&gt;
&lt;br /&gt;
Realizando una comparación con los otros métodos, se puede observar, fijándonos en las gráficas y en los órdenes de precisión, que el método que mejor aproxima  la ecuación del problema es el método del trapecio, seguido de Euler modificado y, por último, Euler, teniendo mayor orden el que mejor aproxima la función.&lt;br /&gt;
&lt;br /&gt;
Gráficamente podemos confirmar este hecho, dándonos cuenta que las gráficas más similares son fourier con Q=20 y el método del trapecio.&lt;br /&gt;
&lt;br /&gt;
== Energía del Cable. ==&lt;br /&gt;
&lt;br /&gt;
La energía del cable que viene definida por la función: &lt;br /&gt;
\begin{equation}&lt;br /&gt;
E(t) = \int_{0}^{L} (u_{t}^{2}(x,t)+ u_{x}^{2}(x,t)) \cdot dx&lt;br /&gt;
\end{equation}&lt;br /&gt;
&lt;br /&gt;
El método utilizado en el desarrollo numérico de está expresión es el '''método de diferencias finitas'''&lt;br /&gt;
(Funciona calculando de manera aproximada las soluciones a las ecuaciones diferenciales usando ecuaciones diferenciales finitas para aproximar derivadas.).&lt;br /&gt;
&lt;br /&gt;
'''FUNCIÓN:'''&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
function v = deriva(x,y,t)&lt;br /&gt;
&lt;br /&gt;
n = length(x);&lt;br /&gt;
del=zeros(1,n);&lt;br /&gt;
&lt;br /&gt;
if t==1&lt;br /&gt;
    &lt;br /&gt;
    i=1;&lt;br /&gt;
    del(1)=(y(i)-y(i+1))/(-x(i)+x(i+1));&lt;br /&gt;
&lt;br /&gt;
    for i=2:n&lt;br /&gt;
    del(i)=(y(i)-y(i-1))/(x(i)-x(i-1));&lt;br /&gt;
    end &lt;br /&gt;
    &lt;br /&gt;
elseif t==-1&lt;br /&gt;
&lt;br /&gt;
    for i=1:n-1&lt;br /&gt;
    del(i)=(y(i)-y(i+1))/(x(i)-x(i+1));&lt;br /&gt;
    end &lt;br /&gt;
    &lt;br /&gt;
    i=n;&lt;br /&gt;
    del(i)=(y(i)-y(i-1))/(x(i)-x(i-1));&lt;br /&gt;
    &lt;br /&gt;
elseif t==0&lt;br /&gt;
    &lt;br /&gt;
    i=1;&lt;br /&gt;
    del(1)=(y(i)-y(i+1))/(+x(i)-x(i+1));&lt;br /&gt;
    &lt;br /&gt;
    for i=2:n-1&lt;br /&gt;
    del(i)=(y(i+1)-y(i-1))/(2*(x(i)-x(i-1)));&lt;br /&gt;
    end &lt;br /&gt;
    &lt;br /&gt;
    i=n;&lt;br /&gt;
    del(n)=(y(i)-y(i-1))/(x(i)-x(i-1));  &lt;br /&gt;
    &lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
v=del;&lt;br /&gt;
&lt;br /&gt;
end&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''PROGRAMA:'''&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
clc;clear all;&lt;br /&gt;
L=10;dx=0.1;N=L/dx;&lt;br /&gt;
x=dx:dx:L-dx;&lt;br /&gt;
xtot=0:dx:L;&lt;br /&gt;
T=40;dt=0.1;t=0:dt:T;&lt;br /&gt;
K=2*diag(ones(1,N-1))-diag(ones(1,N-2),1)-diag(ones(1,N-2),-1);&lt;br /&gt;
K=(1/dx^2)*K;&lt;br /&gt;
U=(2-abs((x*2/5-2)))';&lt;br /&gt;
V=(0*x)';&lt;br /&gt;
sol(1,:)=[0 U' 0];&lt;br /&gt;
for i=1:length(t)-1;&lt;br /&gt;
    U=U+dt*V;&lt;br /&gt;
    V=V-dt*K*U;&lt;br /&gt;
    sol(i+1,:)=[0 U' 0];&lt;br /&gt;
end&lt;br /&gt;
%DERIVAMOS LA SOLUCION EN x Y EN t:&lt;br /&gt;
dsol_dx=ones(size(sol));&lt;br /&gt;
for i=1:length(t)&lt;br /&gt;
    dsol_dx(i,:)=deriva(sol(i,:),xtot,0);&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
dsol_dt=ones(size(sol));&lt;br /&gt;
for i=1:length(xtot)&lt;br /&gt;
    dsol_dt(:,i)=deriva(sol(:,i),t,1); &lt;br /&gt;
end&lt;br /&gt;
%SUMAMOS LAS DERIVADAS AL CUADRADO E INTEGRAMOS:&lt;br /&gt;
dE=zeros(1,size(t,1));&lt;br /&gt;
for i=1:length(xtot)&lt;br /&gt;
    dE=dE+(dsol_dt(i,:).^2+dsol_dx(i,:).^2)*dx;&lt;br /&gt;
end&lt;br /&gt;
xtot=0:dx:L;&lt;br /&gt;
[xx,tt]=meshgrid(xtot,t);&lt;br /&gt;
figure(1)&lt;br /&gt;
surf(xx,tt,dsol_dx);&lt;br /&gt;
figure(2)&lt;br /&gt;
surf(xx,tt,dsol_dt);&lt;br /&gt;
plot(dE,t)&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
El resultado habría de ser una gráfica que representase la evolución de la energía de la cuerda frente al transcurso del tiempo. No obstante, en nuestra resolución aparece una gráfica en blanco que ajudicamos o a un posible error en el código, o que podemos interpretar como que la energía tiende a infinito.&lt;br /&gt;
&lt;br /&gt;
== Aplicaciones. ==&lt;br /&gt;
&lt;br /&gt;
==== Sumersión en un medio viscoso. ====&lt;br /&gt;
&lt;br /&gt;
Suponemos ahora la inmersión del cable en una medio viscoso. Este medio viscoso produce un amortiguamiento en el movimiento del cable, con lo que la anterior ecuación diferencial se convertiría en &lt;br /&gt;
\begin{equation}&lt;br /&gt;
u_{tt}-u_{xx}+au_{t}=0&lt;br /&gt;
\end{equation} &lt;br /&gt;
, siendo '''&amp;lt;math&amp;gt; a  &amp;lt;/math&amp;gt;''' una constante de amortiguamiento propia del medio viscoso.&lt;br /&gt;
Puesto que la función '''&amp;lt;math&amp;gt; u(x,t)  &amp;lt;/math&amp;gt;''' se ve afectada ahora por el medio viscoso, y más directamente, por la constante '''&amp;lt;math&amp;gt; a  &amp;lt;/math&amp;gt;''' que actúa en su nombre, la energía del cable ,que se expresaba como una integral en función de '''&amp;lt;math&amp;gt; u(x,t)  &amp;lt;/math&amp;gt;''' también se va a ver afectada:&lt;br /&gt;
\begin{equation}&lt;br /&gt;
E(t) = \int_{0}^{L} (u_{t}^{2}(x,t)+ u_{x}^{2}(x,t)) \cdot dx&lt;br /&gt;
\end{equation}&lt;br /&gt;
&lt;br /&gt;
El obetivo del siguiente código será hallar una representación de la evolución de la energía en función del tiempo a raíz de la modificación de la función '''&amp;lt;math&amp;gt; u(x,t)  &amp;lt;/math&amp;gt;'''. Para ello asignaremos distintos valores a la constante '''&amp;lt;math&amp;gt; a  &amp;lt;/math&amp;gt;'''. Éstos van a ser:&lt;br /&gt;
'''&amp;lt;math&amp;gt; a=0  &amp;lt;/math&amp;gt;''' (la energía para este valor resultará igual que la hallada en el apartado anterior)&lt;br /&gt;
'''&amp;lt;math&amp;gt; a=1  &amp;lt;/math&amp;gt;'''&lt;br /&gt;
'''&amp;lt;math&amp;gt; a=4  &amp;lt;/math&amp;gt;'''&lt;br /&gt;
'''&amp;lt;math&amp;gt; a=10  &amp;lt;/math&amp;gt;'''&lt;br /&gt;
''&amp;lt;math&amp;gt; a=100  &amp;lt;/math&amp;gt;'''&lt;br /&gt;
&lt;br /&gt;
El procedimiento numérico volverá a seguir el método de '''diferencias finitas''':&lt;br /&gt;
&lt;br /&gt;
'''PROGRAMA:'''&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
clc;clear all;close all;&lt;br /&gt;
%Datos&lt;br /&gt;
dx=0.1;L=10;&lt;br /&gt;
dt=0.001;NT=40;&lt;br /&gt;
A=[0,1,4,10,100];&lt;br /&gt;
x=0:dx:L;&lt;br /&gt;
t=0:dt:NT;&lt;br /&gt;
ENE=zeros(5,length(t));&lt;br /&gt;
&lt;br /&gt;
%Condición de contorno: U(0,t)=U(L,t)=0;&lt;br /&gt;
&lt;br /&gt;
for k=1:5&lt;br /&gt;
&lt;br /&gt;
%Vector solución y derivada temporal de la solución&lt;br /&gt;
%t=0&amp;lt;&amp;gt;T(1) es donde se guardan las condiciones iniciales&lt;br /&gt;
&lt;br /&gt;
U=zeros(length(t),length(x));&lt;br /&gt;
Dt_U=zeros(length(t),length(x));&lt;br /&gt;
Dx_U=zeros(length(t),length(x));    &lt;br /&gt;
&lt;br /&gt;
%Condición inicial: Estiramos 2 m del centro&lt;br /&gt;
%Modelizado como dos rectas antisimétricas que se cortan en x=5 y&lt;br /&gt;
%sujetas en x=0 y x=L.&lt;br /&gt;
&lt;br /&gt;
U(1,:)=2*sin(x*pi/L);&lt;br /&gt;
Dt_U(1,:)=zeros(1,length(x))';&lt;br /&gt;
D2t_U=Ecuacion5(U(1,:),x,-1);&lt;br /&gt;
&lt;br /&gt;
%Inicio del esquema numérico&lt;br /&gt;
%empieza en 2 ya que el 1 es la cond. inicial&lt;br /&gt;
&lt;br /&gt;
%ESQUEMA NEWMARK&lt;br /&gt;
&lt;br /&gt;
 for i=2:length(t)&lt;br /&gt;
    iter=[k,i]&lt;br /&gt;
    Ua=U(i-1,:);&lt;br /&gt;
    Dt_Ua=Dt_U(i-1,:);&lt;br /&gt;
    D2t_Ua=D2t_U;&lt;br /&gt;
    %Derivada segunda respecto del tiempo en el instante t, se obtiene de&lt;br /&gt;
    %eq. diferencial u_tt=f(x,u,u_x,u_xx)&lt;br /&gt;
    D2t_U=Ecuacion5(U(i-1,:),x,t(i))-A(k)*Dt_Ua;&lt;br /&gt;
    %Derivada primera&lt;br /&gt;
    Dt_U(i,:)=Dt_Ua+0.5*dt*(D2t_Ua+D2t_U);&lt;br /&gt;
    %Ecuacion&lt;br /&gt;
    U(i,:) = Ua+Dt_Ua*dt+(1/6)*(D2t_Ua+D2t_U)*dt^2;&lt;br /&gt;
 end&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 %ENERGIA&lt;br /&gt;
 for i=1:length(t)&lt;br /&gt;
    Dx_U(i,:)=deriva(x,U(i,:),0);&lt;br /&gt;
 end&lt;br /&gt;
dE=zeros(length(t),1);&lt;br /&gt;
for i=1:length(x)&lt;br /&gt;
    dE=dE+(Dt_U(:,i).^2+Dx_U(:,i).^2)*dx;&lt;br /&gt;
end&lt;br /&gt;
 ENE(k,:)=dE;&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
 figure(1)&lt;br /&gt;
 hold on&lt;br /&gt;
 grid&lt;br /&gt;
 aa=find(x==L/4);&lt;br /&gt;
 ab=find(x==3*L/4);&lt;br /&gt;
 legend('A=0','A=1','A=4','A=10','A=100');&lt;br /&gt;
 plot(t,ENE(1,:),t,ENE(2,:),t,ENE(3,:),t,ENE(4,:),t,ENE(5,:));&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''FUNCIONES:'''&lt;br /&gt;
DERIVA:&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
function v = deriva(x,y,t)&lt;br /&gt;
n = length(x);&lt;br /&gt;
del=zeros(1,n);&lt;br /&gt;
if t==1&lt;br /&gt;
    i=1;&lt;br /&gt;
    del(1)=(y(i)-y(i+1))/(-x(i)+x(i+1));&lt;br /&gt;
    for i=2:n&lt;br /&gt;
    del(i)=(y(i)-y(i-1))/(x(i)-x(i-1));&lt;br /&gt;
    end &lt;br /&gt;
elseif t==-1&lt;br /&gt;
    for i=1:n-1&lt;br /&gt;
    del(i)=(y(i)-y(i+1))/(x(i)-x(i+1));&lt;br /&gt;
    end &lt;br /&gt;
    i=n;&lt;br /&gt;
    del(i)=(y(i)-y(i-1))/(x(i)-x(i-1));&lt;br /&gt;
elseif t==0&lt;br /&gt;
    i=1;&lt;br /&gt;
    del(1)=(y(i)-y(i+1))/(+x(i)-x(i+1));&lt;br /&gt;
    for i=2:n-1&lt;br /&gt;
    del(i)=(y(i+1)-y(i-1))/(2*(x(i)-x(i-1)));&lt;br /&gt;
    end &lt;br /&gt;
    i=n;&lt;br /&gt;
    del(n)=(y(i)-y(i-1))/(x(i)-x(i-1));  &lt;br /&gt;
end&lt;br /&gt;
v=del;&lt;br /&gt;
end&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
'''ECUACIÓN 5:'''&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
function [ V ] = Ecuacion5( u,x,t )&lt;br /&gt;
%se guarda aquí la ecuación diferencial del tipo u_tt=f(x,u,u_x,u_xx)&lt;br /&gt;
%INCLUIDAS LAS CC AQUÍ&lt;br /&gt;
%PARA u_tt=u_xx&lt;br /&gt;
%CC: u(0,t)=u(L,t)=0;&lt;br /&gt;
&lt;br /&gt;
Ax=x(2)-x(1);&lt;br /&gt;
n=length(u);&lt;br /&gt;
V=zeros(1,n);&lt;br /&gt;
&lt;br /&gt;
%Las condiciones de contorno vienen en x(1)=0 y x(Nx)=L&lt;br /&gt;
u(1)=0;&lt;br /&gt;
&lt;br /&gt;
if(t==-1)&lt;br /&gt;
    u(n)=0;&lt;br /&gt;
else&lt;br /&gt;
    u(n)=0;&lt;br /&gt;
    %u(n)=sin(2*pi*F0*t);&lt;br /&gt;
    %u(n)=(1/(b*Ax-1))*u(n-1);&lt;br /&gt;
end&lt;br /&gt;
for i=2:n-1&lt;br /&gt;
    &lt;br /&gt;
    V(i)=(1/Ax^2)*(u(i+1)-2*u(i)+u(i-1));&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
i=1;&lt;br /&gt;
V(i)=(1/Ax^2)*(u(i+2)-2*u(i+1));&lt;br /&gt;
i=n;&lt;br /&gt;
V(i)=(1/Ax^2)*(u(i)-2*u(i-1)+u(i-2));&lt;br /&gt;
end&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
La gráfica buscada es:&lt;br /&gt;
[[Archivo:Graficadelaenergiaenunmedioviscoso.png|700px|thumb|centre|Gráfica de la energía(ordenadas) del cable respecto del tiempo (Abcisas).]]&lt;br /&gt;
En la gráfica se aprecian cuatro curvas de distintos colores correspondientes a '''&amp;lt;math&amp;gt; a=0  &amp;lt;/math&amp;gt;''','''&amp;lt;math&amp;gt; a=1  &amp;lt;/math&amp;gt;''','''&amp;lt;math&amp;gt; a=4  &amp;lt;/math&amp;gt;''','''&amp;lt;math&amp;gt; a=10  &amp;lt;/math&amp;gt;''',''&amp;lt;math&amp;gt; a=100  &amp;lt;/math&amp;gt;'''.&lt;br /&gt;
&lt;br /&gt;
Como podemos apreciar el valor de la energía disminuye a medida que aumentamos el valor de &amp;quot;a&amp;quot;. Esto es debido a que &amp;quot;a&amp;quot; define el coeficiente de amortiguamiento del líquido en el cual se encuentra la cuerda. Luego, dicha disminución de energía se produce por la disipación en el medio de gran parte de la energía inicial.&lt;br /&gt;
&lt;br /&gt;
==== Sujeción a una estructura de vibración periódica. ====&lt;br /&gt;
&lt;br /&gt;
En este caso supondremos que el extremo derecho que sujeta el cable está sometido a una vibración periódica de frecuencia  &amp;lt;math&amp;gt; F_0 &amp;lt;/math&amp;gt; [Herzios]. Al haber una vibración externa que afecta directamente al cable la expresión de su movimiento y, por consecuencia, de su energía, se va a ver modificada. Nosotros incluiremos esta modificación en la función &amp;lt;math&amp;gt; f(t) &amp;lt;/math&amp;gt; de problema de valor inicial que venimos tratando. Esta función va a pasar a ser: &lt;br /&gt;
\begin{equation}&lt;br /&gt;
f(t)= sin(2 \pi F_0t)&lt;br /&gt;
\end{equation}&lt;br /&gt;
&lt;br /&gt;
El objetivo será el de ver cómo afecta esta alteración en el desarrollo de la energía del cable frente al tiempo.&lt;br /&gt;
Para nuestro cálculo numérico especificaremos para las siguientes situaciones:&lt;br /&gt;
En primer lugar, para: &amp;lt;math&amp;gt; F_0= \frac{1}{L} + 0,01 &amp;lt;/math&amp;gt;&lt;br /&gt;
Después,para: &amp;lt;math&amp;gt; F_0= \frac{1}{L} - 0,01 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Y para finalizar, lo estudiaremos en un intervalo de tiempo de '''t=0''' hasta '''t=60''' : &amp;lt;math&amp;gt;t \in (0,60)&amp;lt;/math&amp;gt; [segundos].&lt;br /&gt;
&lt;br /&gt;
El código matemático para matlab / octave:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''PROGRAMA:'''&lt;br /&gt;
{{matlab|codigo= &lt;br /&gt;
clc;clear all;close all;&lt;br /&gt;
&lt;br /&gt;
%Datos&lt;br /&gt;
&lt;br /&gt;
dx=0.1;L=10;dt=0.0001;NT=60;&lt;br /&gt;
A=[0,1,4,10,100];&lt;br /&gt;
x=0:dx:L;t=0:dt:NT;&lt;br /&gt;
ENE=zeros(5,length(t));&lt;br /&gt;
&lt;br /&gt;
%Condición de contorno: U(0,t)=U(L,t)=0;&lt;br /&gt;
for k=1&lt;br /&gt;
%Vector solución y derivada temporal de la solución&lt;br /&gt;
%t=0&amp;lt;&amp;gt;T(1) es donde se guardan las condiciones iniciales&lt;br /&gt;
&lt;br /&gt;
U=zeros(length(t),length(x));&lt;br /&gt;
Dt_U=zeros(length(t),length(x));&lt;br /&gt;
Dx_U=zeros(length(t),length(x));&lt;br /&gt;
&lt;br /&gt;
%Condición inicial: Estiramos 2 m del centro&lt;br /&gt;
%Modelizado como dos rectas antisimétricas que se cortan en x=5 y&lt;br /&gt;
%sujetas en x=0 y x=L.&lt;br /&gt;
&lt;br /&gt;
U(1,:)=2*sin(x*pi/L);&lt;br /&gt;
Dt_U(1,:)=zeros(1,length(x))';&lt;br /&gt;
D2t_U=Ecuacion6(U(1,:),x,-1);&lt;br /&gt;
&lt;br /&gt;
%Inicio del esquema numérico&lt;br /&gt;
%empieza en 2 ya que el 1 es la cond. inicial&lt;br /&gt;
&lt;br /&gt;
%ESQUEMA NEWMARK&lt;br /&gt;
&lt;br /&gt;
 for i=2:length(t)&lt;br /&gt;
    iter=[k,i]&lt;br /&gt;
    Ua=U(i-1,:);&lt;br /&gt;
    Dt_Ua=Dt_U(i-1,:);&lt;br /&gt;
    D2t_Ua=D2t_U;&lt;br /&gt;
    %Derivada segunda respecto del tiempo en el instante t, se obtiene de&lt;br /&gt;
    %eq. diferencial u_tt=f(x,u,u_x,u_xx)&lt;br /&gt;
    D2t_U=Ecuacion6(U(i-1,:),x,t(i))-A(k)*Dt_Ua;&lt;br /&gt;
    %Derivada primera&lt;br /&gt;
    Dt_U(i,:)=Dt_Ua+0.5*dt*(D2t_Ua+D2t_U);&lt;br /&gt;
    %Ecuacion&lt;br /&gt;
    U(i,:) = Ua+Dt_Ua*dt+(1/6)*(D2t_Ua+D2t_U)*dt^2;&lt;br /&gt;
 end&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 %ENERGIA&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 for i=1:length(t)&lt;br /&gt;
    Dx_U(i,:)=deriva(x,U(i,:),0);&lt;br /&gt;
 end&lt;br /&gt;
dE=zeros(length(t),1);&lt;br /&gt;
for i=1:length(x)&lt;br /&gt;
    dE=dE+(Dt_U(:,i).^2+Dx_U(:,i).^2)*dx;&lt;br /&gt;
end&lt;br /&gt;
 ENE(k,:)=dE;&lt;br /&gt;
end&lt;br /&gt;
 figure(1)&lt;br /&gt;
 hold on&lt;br /&gt;
 grid&lt;br /&gt;
 aa=find(x==L/4);&lt;br /&gt;
 ab=find(x==3*L/4);&lt;br /&gt;
 imagesc(U)&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''FUNCIONES:'''&lt;br /&gt;
&lt;br /&gt;
DERIVA:&lt;br /&gt;
{{matlab|codigo= &lt;br /&gt;
function v = deriva(x,y,t)&lt;br /&gt;
n = length(x);&lt;br /&gt;
del=zeros(1,n);&lt;br /&gt;
if t==1&lt;br /&gt;
    i=1;&lt;br /&gt;
    del(1)=(y(i)-y(i+1))/(-x(i)+x(i+1));&lt;br /&gt;
    for i=2:n&lt;br /&gt;
    del(i)=(y(i)-y(i-1))/(x(i)-x(i-1));&lt;br /&gt;
    end &lt;br /&gt;
elseif t==-1&lt;br /&gt;
    for i=1:n-1&lt;br /&gt;
    del(i)=(y(i)-y(i+1))/(x(i)-x(i+1));&lt;br /&gt;
    end &lt;br /&gt;
    i=n;&lt;br /&gt;
    del(i)=(y(i)-y(i-1))/(x(i)-x(i-1));&lt;br /&gt;
elseif t==0&lt;br /&gt;
    i=1;&lt;br /&gt;
    del(1)=(y(i)-y(i+1))/(+x(i)-x(i+1));&lt;br /&gt;
    for i=2:n-1&lt;br /&gt;
    del(i)=(y(i+1)-y(i-1))/(2*(x(i)-x(i-1)));&lt;br /&gt;
    end &lt;br /&gt;
    i=n;&lt;br /&gt;
    del(n)=(y(i)-y(i-1))/(x(i)-x(i-1));  &lt;br /&gt;
end&lt;br /&gt;
v=del;&lt;br /&gt;
end&lt;br /&gt;
}}&lt;br /&gt;
'''ECUACIÓN 6:'''&lt;br /&gt;
&lt;br /&gt;
function [ V ] = Ecuacion6( u,x,t )&lt;br /&gt;
{{matlab|codigo= &lt;br /&gt;
&lt;br /&gt;
%se guarda aquí la ecuación diferencial del tipo u_tt=f(x,u,u_x,u_xx)&lt;br /&gt;
%INCLUIDAS LAS CC AQUÍ!&lt;br /&gt;
%PARA u_tt=u_xx&lt;br /&gt;
%CC: u(0,t)=u(L,t)=0;&lt;br /&gt;
&lt;br /&gt;
Ax=x(2)-x(1);&lt;br /&gt;
n=length(u);&lt;br /&gt;
V=zeros(1,n);&lt;br /&gt;
F0=(1/x(n))+0.01;&lt;br /&gt;
b=-2;&lt;br /&gt;
&lt;br /&gt;
%Las condiciones de contorno vienen en x(1)=0 y x(Nx)=L&lt;br /&gt;
&lt;br /&gt;
u(1)=0;&lt;br /&gt;
if(t==-1)&lt;br /&gt;
    u(n)=0;&lt;br /&gt;
else&lt;br /&gt;
    %u(n)=0;&lt;br /&gt;
    u(n)=sin(2*pi*F0*t);&lt;br /&gt;
    %u(n)=(1/(b*Ax-1))*u(n-1);&lt;br /&gt;
end&lt;br /&gt;
for i=2:n-1&lt;br /&gt;
    V(i)=(1/Ax^2)*(u(i+1)-2*u(i)+u(i-1));&lt;br /&gt;
end&lt;br /&gt;
i=1;&lt;br /&gt;
V(i)=(1/Ax^2)*(u(i+2)-2*u(i+1));&lt;br /&gt;
i=n;&lt;br /&gt;
V(i)=(1/Ax^2)*(u(i)-2*u(i-1)+u(i-2));&lt;br /&gt;
end&lt;br /&gt;
}}&lt;br /&gt;
[[Archivo:6.1.png|700px|thumb|centre|Gráfica en tres dimensiones de la energía de un cable cuyo extremo derecho está sometido a una vibración externa periódica para F_0=1/L +0,1]]&lt;br /&gt;
'''function [ V ] = Ecuacion6( u,x,t )'''&lt;br /&gt;
{{matlab|codigo= &lt;br /&gt;
%se guarda aquí la ecuación diferencial del tipo u_tt=f(x,u,u_x,u_xx)&lt;br /&gt;
%INCLUIDAS LAS CC AQUÍ!&lt;br /&gt;
%PARA u_tt=u_xx&lt;br /&gt;
%CC: u(0,t)=u(L,t)=0;&lt;br /&gt;
&lt;br /&gt;
Ax=x(2)-x(1);&lt;br /&gt;
n=length(u);&lt;br /&gt;
V=zeros(1,n);&lt;br /&gt;
F0=(1/x(n))-0.01;&lt;br /&gt;
b=-2;&lt;br /&gt;
&lt;br /&gt;
%Las condiciones de contorno vienen en x(1)=0 y x(Nx)=L&lt;br /&gt;
&lt;br /&gt;
u(1)=0;&lt;br /&gt;
if(t==-1)&lt;br /&gt;
    u(n)=0;&lt;br /&gt;
else&lt;br /&gt;
    %u(n)=0;&lt;br /&gt;
    u(n)=sin(2*pi*F0*t);&lt;br /&gt;
    %u(n)=(1/(b*Ax-1))*u(n-1);&lt;br /&gt;
end&lt;br /&gt;
for i=2:n-1&lt;br /&gt;
    V(i)=(1/Ax^2)*(u(i+1)-2*u(i)+u(i-1));&lt;br /&gt;
end&lt;br /&gt;
i=1;&lt;br /&gt;
V(i)=(1/Ax^2)*(u(i+2)-2*u(i+1));&lt;br /&gt;
i=n;&lt;br /&gt;
V(i)=(1/Ax^2)*(u(i)-2*u(i-1)+u(i-2));&lt;br /&gt;
end&lt;br /&gt;
}}&lt;br /&gt;
[[Archivo:6.2.png|700px|thumb|centre|Gráfica en tres dimensiones de la energía de un cable cuyo extremo derecho está sometido a una vibración externa periódica.]]&lt;br /&gt;
&lt;br /&gt;
'''function [ V ] = Ecuacion6( u,x,t )'''&lt;br /&gt;
{{matlab|codigo= &lt;br /&gt;
%se guarda aquí la ecuación diferencial del tipo u_tt=f(x,u,u_x,u_xx)&lt;br /&gt;
%INCLUIDAS LAS CC AQUÍ!&lt;br /&gt;
%PARA u_tt=u_xx&lt;br /&gt;
%CC: u(0,t)=u(L,t)=0;&lt;br /&gt;
&lt;br /&gt;
Ax=x(2)-x(1);&lt;br /&gt;
n=length(u);&lt;br /&gt;
V=zeros(1,n);&lt;br /&gt;
F0=(1/x(n));&lt;br /&gt;
b=-2;&lt;br /&gt;
&lt;br /&gt;
%Las condiciones de contorno vienen en x(1)=0 y x(Nx)=L&lt;br /&gt;
&lt;br /&gt;
u(1)=0;&lt;br /&gt;
if(t==-1)&lt;br /&gt;
    u(n)=0;&lt;br /&gt;
else&lt;br /&gt;
    %u(n)=0;&lt;br /&gt;
    u(n)=sin(2*pi*F0*t);&lt;br /&gt;
    %u(n)=(1/(b*Ax-1))*u(n-1);&lt;br /&gt;
end&lt;br /&gt;
for i=2:n-1&lt;br /&gt;
    V(i)=(1/Ax^2)*(u(i+1)-2*u(i)+u(i-1));&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
i=1;&lt;br /&gt;
V(i)=(1/Ax^2)*(u(i+2)-2*u(i+1));&lt;br /&gt;
i=n;&lt;br /&gt;
V(i)=(1/Ax^2)*(u(i)-2*u(i-1)+u(i-2));&lt;br /&gt;
end&lt;br /&gt;
}}&lt;br /&gt;
 &lt;br /&gt;
La gráfica resultante es la siguiente:&lt;br /&gt;
[[Archivo:6.3.png|700px|thumb|centre|Gráfica en tres dimensiones de la energía de un cable cuyo extremo derecho está sometido a una vibración externa periódica.]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
En dicha gráfica, se puede observar que la forma de la función o la energía se ve alterada por la condición impuesta de tal manera que ésta adquiere una forma también sinusoidal, y que su estabilización dependería del tiempo transcurrido entre vibración y vibración.&lt;br /&gt;
&lt;br /&gt;
==== Sujeción a un aparato que responde a una vibración externa. ====&lt;br /&gt;
&lt;br /&gt;
La siguiente situación que vamos a representar a modelar a través de ecuaciones diferenciales va a ser la siguiente: supondremos que el cable de la anterior situación (que recibía en su extremo derecho una vibración periódica de &amp;lt;math&amp;gt; F_0 &amp;lt;/math&amp;gt; [Herzios])envía una respuesta a la vibración que recibe. Esta situación la vamos a representar como un cambio en la condición de contorno; ésta va a pasar a ser: &amp;lt;math&amp;gt; u_x(L,t)=bu(L,t) &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
El objetivo, de nuevo será representar la evolución de la energía respecto del tiempo y ver si este cambio en el problema se ve reflejado en su representación. &lt;br /&gt;
En el código numérico, no obstante, la situación de &amp;lt;math&amp;gt; u_x(L,t)=bu(L,t) &amp;lt;/math&amp;gt; la vamos a aproximar por la siguiente expresión:&lt;br /&gt;
&amp;lt;math&amp;gt; u_x(L,t)-bu(L,t)  \cong  \frac{u_{N+1}(t)-u_{N-1}(t)}{2h-u_N(t)} &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
En la resolución del problema emplearemos de nuevo la condición inicial de sujetar el cable por el centro y elevarlo 2 m perpendicularmente: &lt;br /&gt;
&amp;lt;math&amp;gt; u(x,0)=g(x)= 2- |\frac{2}{5}x -2| &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Y además obtendremos el resultado para los dos valores siguientes de &amp;lt;math&amp;gt;b&amp;lt;/math&amp;gt; :&lt;br /&gt;
Para &amp;lt;math&amp;gt; b=2 &amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt; b=-2 &amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
El código numérico de matlab/octave es:&lt;br /&gt;
&lt;br /&gt;
'''PROGRAMA:'''&lt;br /&gt;
{{matlab|codigo= &lt;br /&gt;
clc;clear all;close all;&lt;br /&gt;
&lt;br /&gt;
%Datos&lt;br /&gt;
dx=0.1;L=10;dt=0.0001;NT=40;&lt;br /&gt;
A=[0,1,4,10,100];&lt;br /&gt;
x=0:dx:L;t=0:dt:NT;&lt;br /&gt;
ENE=zeros(5,length(t));&lt;br /&gt;
&lt;br /&gt;
%Condición de contorno: U(0,t)=U(L,t)=0;&lt;br /&gt;
for k=1&lt;br /&gt;
&lt;br /&gt;
%Vector solución y derivada temporal de la solución&lt;br /&gt;
%t=0&amp;lt;&amp;gt;T(1) es donde se guardan las condiciones iniciales&lt;br /&gt;
&lt;br /&gt;
U=zeros(length(t),length(x));&lt;br /&gt;
Dt_U=zeros(length(t),length(x));&lt;br /&gt;
Dx_U=zeros(length(t),length(x));    &lt;br /&gt;
&lt;br /&gt;
%Condición inicial: Estiramos 2 m del centro&lt;br /&gt;
%Modelizado como dos rectas antisimétricas que se cortan en x=5 y&lt;br /&gt;
%sujetas en x=0 y x=L.&lt;br /&gt;
&lt;br /&gt;
U(1,:)=2*sin(x*pi/L);&lt;br /&gt;
Dt_U(1,:)=zeros(1,length(x))';&lt;br /&gt;
D2t_U=Ecuacion7(U(1,:),x,-1);&lt;br /&gt;
&lt;br /&gt;
%Inicio del esquema numérico&lt;br /&gt;
%empieza en 2 ya que el 1 es la cond. inicial&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
%ESQUEMA NEWMARK&lt;br /&gt;
 for i=2:length(t)&lt;br /&gt;
    iter=[k,i]&lt;br /&gt;
    Ua=U(i-1,:);&lt;br /&gt;
    Dt_Ua=Dt_U(i-1,:);&lt;br /&gt;
    D2t_Ua=D2t_U;&lt;br /&gt;
&lt;br /&gt;
    %Derivada segunda respecto del tiempo en el instante t, se obtiene de&lt;br /&gt;
    %eq. diferencial u_tt=f(x,u,u_x,u_xx)&lt;br /&gt;
&lt;br /&gt;
    D2t_U=Ecuacion7(U(i-1,:),x,t(i))-A(k)*Dt_Ua;&lt;br /&gt;
&lt;br /&gt;
    %Derivada primera&lt;br /&gt;
    Dt_U(i,:)=Dt_Ua+0.5*dt*(D2t_Ua+D2t_U);&lt;br /&gt;
&lt;br /&gt;
    %Ecuacion&lt;br /&gt;
    U(i,:) = Ua+Dt_Ua*dt+(1/6)*(D2t_Ua+D2t_U)*dt^2;&lt;br /&gt;
 end&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 %ENERGIA&lt;br /&gt;
 for i=1:length(t)&lt;br /&gt;
    Dx_U(i,:)=deriva(x,U(i,:),0);&lt;br /&gt;
 end&lt;br /&gt;
dE=zeros(length(t),1);&lt;br /&gt;
for i=1:length(x)&lt;br /&gt;
    dE=dE+(Dt_U(:,i).^2+Dx_U(:,i).^2)*dx;&lt;br /&gt;
end&lt;br /&gt;
 ENE(k,:)=dE;&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
 figure(1)&lt;br /&gt;
 hold on&lt;br /&gt;
 grid&lt;br /&gt;
 aa=find(x==L/4);&lt;br /&gt;
 ab=find(x==3*L/4);&lt;br /&gt;
 plot(t,ENE(1,:))&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
'''FUNCIONES:'''&lt;br /&gt;
'''function v = deriva(x,y,t)'''&lt;br /&gt;
{{matlab|codigo= &lt;br /&gt;
n = length(x);&lt;br /&gt;
del=zeros(1,n);&lt;br /&gt;
if t==1&lt;br /&gt;
    i=1;&lt;br /&gt;
    del(1)=(y(i)-y(i+1))/(-x(i)+x(i+1));&lt;br /&gt;
    for i=2:n&lt;br /&gt;
    del(i)=(y(i)-y(i-1))/(x(i)-x(i-1));&lt;br /&gt;
    end &lt;br /&gt;
elseif t==-1&lt;br /&gt;
    for i=1:n-1&lt;br /&gt;
    del(i)=(y(i)-y(i+1))/(x(i)-x(i+1));&lt;br /&gt;
    end &lt;br /&gt;
    i=n;&lt;br /&gt;
    del(i)=(y(i)-y(i-1))/(x(i)-x(i-1));&lt;br /&gt;
elseif t==0&lt;br /&gt;
    i=1;&lt;br /&gt;
    del(1)=(y(i)-y(i+1))/(+x(i)-x(i+1));&lt;br /&gt;
    for i=2:n-1&lt;br /&gt;
    del(i)=(y(i+1)-y(i-1))/(2*(x(i)-x(i-1)));&lt;br /&gt;
    end &lt;br /&gt;
    i=n;&lt;br /&gt;
    del(n)=(y(i)-y(i-1))/(x(i)-x(i-1));  &lt;br /&gt;
end&lt;br /&gt;
v=del;&lt;br /&gt;
end&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
'''function [ V ] = Ecuacion7( u,x,t )'''&lt;br /&gt;
{{matlab|codigo= &lt;br /&gt;
%se guarda aquí la ecuación diferencial del tipo u_tt=f(x,u,u_x,u_xx)&lt;br /&gt;
%INCLUIDAS LAS CC AQUÍ!&lt;br /&gt;
%PARA u_tt=u_xx&lt;br /&gt;
%CC: u(0,t)=u(L,t)=0;&lt;br /&gt;
&lt;br /&gt;
Ax=x(2)-x(1);&lt;br /&gt;
n=length(u);&lt;br /&gt;
V=zeros(1,n);&lt;br /&gt;
F0=(1/x(n));&lt;br /&gt;
b=2;&lt;br /&gt;
&lt;br /&gt;
%Las condiciones de contorno vienen en x(1)=0 y x(Nx)=L&lt;br /&gt;
u(1)=0;&lt;br /&gt;
if(t==-1)&lt;br /&gt;
    u(n)=0;&lt;br /&gt;
else&lt;br /&gt;
    %u(n)=0;&lt;br /&gt;
    %u(n)=sin(2*pi*F0*t);&lt;br /&gt;
    u(n)=(1/(b*Ax-1))*u(n-1);&lt;br /&gt;
end&lt;br /&gt;
for i=2:n-1&lt;br /&gt;
    V(i)=(1/Ax^2)*(u(i+1)-2*u(i)+u(i-1));&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
i=1;&lt;br /&gt;
V(i)=(1/Ax^2)*(u(i+2)-2*u(i+1));&lt;br /&gt;
i=n;&lt;br /&gt;
V(i)=(1/Ax^2)*(u(i)-2*u(i-1)+u(i-2));&lt;br /&gt;
end&lt;br /&gt;
}}&lt;br /&gt;
[[Archivo:7.1.png|700px|thumb|centre|Gráfica de la energía (ordenadas) de un cable frente al tiempo (abcisas) que recibe una vibración en su extremo derecho y que responde a dicha vibración para b=2. ]]&lt;br /&gt;
'''function [ V ] = Ecuacion7( u,x,t )'''&lt;br /&gt;
{{matlab|codigo= &lt;br /&gt;
%se guarda aquí la ecuación diferencial del tipo u_tt=f(x,u,u_x,u_xx)&lt;br /&gt;
%INCLUIDAS LAS CC AQUÍ!&lt;br /&gt;
%PARA u_tt=u_xx&lt;br /&gt;
%CC: u(0,t)=u(L,t)=0;&lt;br /&gt;
&lt;br /&gt;
Ax=x(2)-x(1);&lt;br /&gt;
n=length(u);&lt;br /&gt;
V=zeros(1,n);&lt;br /&gt;
F0=(1/x(n));&lt;br /&gt;
b=-2;&lt;br /&gt;
&lt;br /&gt;
%Las condiciones de contorno vienen en x(1)=0 y x(Nx)=L&lt;br /&gt;
u(1)=0;&lt;br /&gt;
&lt;br /&gt;
if(t==-1)&lt;br /&gt;
    u(n)=0;&lt;br /&gt;
else&lt;br /&gt;
    %u(n)=0;&lt;br /&gt;
    %u(n)=sin(2*pi*F0*t);&lt;br /&gt;
    u(n)=(1/(b*Ax-1))*u(n-1);&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
for i=2:n-1&lt;br /&gt;
    V(i)=(1/Ax^2)*(u(i+1)-2*u(i)+u(i-1));&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
i=1;&lt;br /&gt;
V(i)=(1/Ax^2)*(u(i+2)-2*u(i+1));&lt;br /&gt;
i=n;&lt;br /&gt;
V(i)=(1/Ax^2)*(u(i)-2*u(i-1)+u(i-2));&lt;br /&gt;
end&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
La imagen resultante es:&lt;br /&gt;
[[Archivo:7.2.png|700px|thumb|centre|Gráfica de la energía (ordenadas) de un cable frente al tiempo (abcisas) que recibe una vibración en su extremo derecho y que responde a dicha vibración para b=-2. ]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
La anterior gráfica muestra el comportamiento de la cuerda como respuesta a la vibración producida en uno de sus extremos así como el movimiento transversal del punto medio al comienzo. Podemos observar el movimiento transversal de cada punto de la cuerda a través de la expresión de la energía, así como que, a medida que transcurre el tiempo, ésta se va estabilizando. La forma de la función recuerda a una función sinusoidal debido a la forma de la condición de contorno impuesta.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Categoría:Ecuaciones Diferentiales]]&lt;br /&gt;
 [[Categoría:ED13/14]]&lt;br /&gt;
 [[Categoría:Trabajos 2013-14]]&lt;/div&gt;</summary>
		<author><name>Lucia Lopez</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Ecuaci%C3%B3n_de_ondas_(grupo_2B)&amp;diff=13110</id>
		<title>Ecuación de ondas (grupo 2B)</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Ecuaci%C3%B3n_de_ondas_(grupo_2B)&amp;diff=13110"/>
				<updated>2014-05-19T20:43:45Z</updated>
		
		<summary type="html">&lt;p&gt;Lucia Lopez: /* Aproximación por Fourier con diferentes términos de series. */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{ TrabajoED | Ecuación de ondas. Grupo 2-B| [[:Categoría:Ecuaciones Diferenciales|Ecuaciones Diferenciales]]|[[:Categoría:ED13/14|Curso 2013-14]]| &lt;br /&gt;
Ignacio Díaz-Caneja Camblor&lt;br /&gt;
&lt;br /&gt;
Alberto Fernández Pérez&lt;br /&gt;
&lt;br /&gt;
Adela González Barbado&lt;br /&gt;
&lt;br /&gt;
Lucia López Sánchez&lt;br /&gt;
&lt;br /&gt;
Araceli Martín Candilejo&lt;br /&gt;
&lt;br /&gt;
Diego Solano López&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
== Modelización de los desplazamientos del Cable. ==&lt;br /&gt;
El problema que se tratará a continuación describe una ecuación de '''tipo hiperbólico''', una '''ecuación de ondas'''.&lt;br /&gt;
Consideramos un '''cable de 10 metros''' de longitud '''sujeto por sus extremos'''. Suponiendo que éste tiene una '''sección pequeña''' respecto a su longitud someteremos al cable a pequeñas vibraciones que estudiaremos con una modelización de la ecuación de ondas. &lt;br /&gt;
Se caracteriza al cable de una masa constante por unidad de volumen, es decir, será '''homogéneo'''. Éste, '''flexible''' a la tracción, únicamente ofrece resistencias en su dirección longitudinal, tangenciales, pero no a esfuerzos de flexión o cortes. Se supone, además, que es '''inextensible''' por lo que será lo suficientemente rígido longitudinalmente como para poder despreciar su extensibilidad.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Con esta modelización se estudiarán las '''pequeñas vibraciones''', desplazamientos transversales, a las que es sometido el cable. Para iniciar el movimiento del cable lo sujetaremos por el centro subiéndolo dos metros, lo que nos proporciona una primera condición inicial determinada por la función g(x), y soltándolo con una velocidad nula. &lt;br /&gt;
&lt;br /&gt;
&amp;lt;br/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Obtenemos la ecuación &amp;lt;math&amp;gt;u_{tt}-u_{xx}=0&amp;lt;/math&amp;gt; , de la cual se puede observar que tanto el '''módulo de la tensión''' como la '''densidad''' son '''constantes''' ya que el '''módulo de la elasticidad''' es constante, &amp;lt;math&amp;gt;c^2=1&amp;lt;/math&amp;gt; . Al ser ésta primera ecuación homogénea deducimos que transversalmente no actúa ninguna fuerza densidad espacial y temporal. Se deduce del enunciado anterior que las condiciones de frontera son '''homogéneas''', &amp;lt;math&amp;gt;u(0,t)=0&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;u(10,t)=0&amp;lt;/math&amp;gt; que nos indican que los extremos del cable no describen ningún tipo de movimiento en todo instante t al no estar sometidos a ningun tipo de fuerza. Finalmente, añadimos al sistema las condiciones iniciales, la primera de ellas, &amp;lt;math&amp;gt;u(x,0)=g(x)= 2- |\frac{2}{5}x -2|&amp;lt;/math&amp;gt;, define el '''movimiento descrito por la onda''' en el instante t=0 en cualquier punto del cable; y la segunda, &amp;lt;math&amp;gt;u_t(x,0)=0&amp;lt;/math&amp;gt;, que la onda parte de una '''velocidad inicial nula'''.&lt;br /&gt;
[[Image:DV.png|300px|thumb|right|Deslizamiento vertical del cable. ]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
\begin{cases}&lt;br /&gt;
&lt;br /&gt;
u_{tt}- u_{xx}=0  \  x∈[0,10] \ t&amp;gt;0\\&lt;br /&gt;
u(0,t)=0\\&lt;br /&gt;
u(10,t)=0\\&lt;br /&gt;
u(x,0)= 2- |\frac{2}{5}x -2|\\&lt;br /&gt;
u_t(x,0)=0&lt;br /&gt;
\end{cases}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
En los siguientes apartados se realizaran aproximaciones del sistema expuesto con tres métodos distintos de los que más tarde se hará una comparativa. Para esto último nos ayudaremos del error por lo que necesitaremos la solución analítica.&lt;br /&gt;
Como el problema consta de condiciones de frontera homogéneas, aplicamos directamente el método de separación de variables para su resolución analítica. &lt;br /&gt;
&amp;lt;br/&amp;gt;&lt;br /&gt;
==== Aproximación por el método del trapecio. ====&lt;br /&gt;
El primer método que usaremos será el del Trapecio que consiste en RELLENAR&lt;br /&gt;
{{matlab|codigo= &lt;br /&gt;
%u_tt-u_xx=0&lt;br /&gt;
%u(0,t)=u(l,t)=0&lt;br /&gt;
%u(x,0)=2-abs(0.4x-2)&lt;br /&gt;
%ut(x,0)=0&lt;br /&gt;
clear all&lt;br /&gt;
&lt;br /&gt;
%Datos del problema&lt;br /&gt;
L=10;&lt;br /&gt;
T=40;&lt;br /&gt;
&lt;br /&gt;
%Discretización&lt;br /&gt;
h=0.1;&lt;br /&gt;
N=L/h;&lt;br /&gt;
x=0:h:L;&lt;br /&gt;
xint=h:h:L-h;&lt;br /&gt;
dt=h;&lt;br /&gt;
t=0:dt:T;&lt;br /&gt;
&lt;br /&gt;
%Aprox. de u_xx&lt;br /&gt;
K=2*diag(ones(1,N-1))-diag(ones(1,N-2),-1)-diag(ones(1,N-2),1);&lt;br /&gt;
K=K/h^2;&lt;br /&gt;
F=zeros(N-1,1);&lt;br /&gt;
&lt;br /&gt;
%Posición inicial.&lt;br /&gt;
u0=(2-abs(xint*2/5-2))';&lt;br /&gt;
v0=zeros(N-1,1);&lt;br /&gt;
&lt;br /&gt;
%Aprox. de u_tt&lt;br /&gt;
M=[zeros(N-1),eye(N-1);-K,zeros(N-1)];&lt;br /&gt;
G=[zeros(N-1,1);F];&lt;br /&gt;
&lt;br /&gt;
%Aproximación por el método del Trapecio&lt;br /&gt;
W0=[u0;v0];&lt;br /&gt;
WW=W0;&lt;br /&gt;
sol=zeros(length(t),N+1);&lt;br /&gt;
sol(1,:)=[0,W0(1:N-1)',0];&lt;br /&gt;
for j=1:length(t)-1&lt;br /&gt;
    WW=(eye(2*N-2)-dt/2*M)\(eye(2*N-2)+dt/2*M)*WW;&lt;br /&gt;
    sol(j+1,:)=[0,WW(1:N-1)',0];&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
%Dibujo de la solución&lt;br /&gt;
[xx,tt]=meshgrid(x,t);&lt;br /&gt;
surf(xx,tt,sol);&lt;br /&gt;
xlabel('Desplazamiento horizontal');&lt;br /&gt;
ylabel('Tiempo');&lt;br /&gt;
zlabel('Desplazamiento vertical');}}&lt;br /&gt;
&lt;br /&gt;
[[Image:klklk.jpg|700px|thumb|center|Aproximación por el método del Trapecio.]]&lt;br /&gt;
&lt;br /&gt;
==== Aproximación por el método de Euler. ====&lt;br /&gt;
Se exponen en este apartados dos tipos de aproximaciones de Euler.&lt;br /&gt;
&lt;br /&gt;
Este método se basa en la posibilidad de aproximar una función original mediante rectas tangentes partiendo de un punto dado. Sabiendo que la recta tangente de una función en un punto es la derivada en dicho punto, este método consiste en calcular derivadas de la función en diferentes puntos pertenecientes a ella. Estos puntos serán tomados con la misma distancia a lo largo de la recta, a esta distancia la denominamos paso de discretización. &lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Image:Euler.png|300px|thumb|center|Aproximación de una función por el método de Euler]]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===== Euler Explícito. =====&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
%utt-uxx=0&lt;br /&gt;
%u(0,t)=u(l,t)=0&lt;br /&gt;
%u(x,0)=2-abs(0.4x-2)&lt;br /&gt;
%ut(x,0)=0&lt;br /&gt;
clear all&lt;br /&gt;
L=10;&lt;br /&gt;
T=40;&lt;br /&gt;
h=0.1;&lt;br /&gt;
N=L/h;&lt;br /&gt;
x=0:h:L;&lt;br /&gt;
xint=h:h:L-h;&lt;br /&gt;
dt=h;&lt;br /&gt;
t=0:dt:T;&lt;br /&gt;
K=2*diag(ones(1,N-1))-diag(ones(1,N-2),-1)-diag(ones(1,N-2),1);&lt;br /&gt;
K=K/h^2;&lt;br /&gt;
F=zeros(N-1,1);&lt;br /&gt;
u0=2-abs((xint*2/5-2))';&lt;br /&gt;
v0=zeros(N-1,1);&lt;br /&gt;
M=[zeros(N-1),eye(N-1);-K,zeros(N-1)];&lt;br /&gt;
G=[zeros(N-1,1);F];&lt;br /&gt;
W0=[u0;v0];&lt;br /&gt;
WW=W0;&lt;br /&gt;
sol=zeros(length(t),N+1);&lt;br /&gt;
sol(1,:)=[0,W0(1:N-1)',0];&lt;br /&gt;
for j=1:length(t)-1&lt;br /&gt;
    WW=WW+dt*M*WW;&lt;br /&gt;
    sol(j+1,:)=[0,WW(1:N-1)',0];&lt;br /&gt;
end&lt;br /&gt;
[xx,tt]=meshgrid(x,t);&lt;br /&gt;
surf(xx,tt,sol);}}&lt;br /&gt;
===== Euler Modificado. =====&lt;br /&gt;
&lt;br /&gt;
ELEGIR UNA DE LAS DOS DEFINICIONES &lt;br /&gt;
&lt;br /&gt;
Este método se basa en la misma idea del método anterior, pero hace un refinamiento en la aproximación, tomando un promedio entre las pendientes.&lt;br /&gt;
&lt;br /&gt;
El método de Euler modificado toma como base que es más razonable pensar que obtendríamos un valor más preciso si aproximáramos tomando un promedio entre las pendientes, en vez de tomarla igual a su valor como en el método anterior de Euler explícito.&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
%utt-uxx=0&lt;br /&gt;
%u(0,t)=u(l,t)=0&lt;br /&gt;
%u(x,0)=2-abs(0.4x-2)&lt;br /&gt;
%ut(x,0)=0&lt;br /&gt;
clear all&lt;br /&gt;
L=10;&lt;br /&gt;
T=40;&lt;br /&gt;
h=0.1;&lt;br /&gt;
N=L/h;&lt;br /&gt;
x=0:h:L;&lt;br /&gt;
xint=h:h:L-h;&lt;br /&gt;
dt=h;&lt;br /&gt;
t=0:dt:T;&lt;br /&gt;
K=2*diag(ones(1,N-1))-diag(ones(1,N-2),-1)-diag(ones(1,N-2),1);&lt;br /&gt;
K=K/h^2;&lt;br /&gt;
F=zeros(N-1,1);&lt;br /&gt;
u0=2-abs((xint*2/5-2))';&lt;br /&gt;
v0=zeros(N-1,1);&lt;br /&gt;
M=[zeros(N-1),eye(N-1);-K,zeros(N-1)];&lt;br /&gt;
G=[zeros(N-1,1);F];&lt;br /&gt;
W0=[u0;v0];&lt;br /&gt;
WW=W0;&lt;br /&gt;
sol=zeros(length(t),N+1);&lt;br /&gt;
sol(1,:)=[0,W0(1:N-1)',0];&lt;br /&gt;
for j=1:length(t)-1&lt;br /&gt;
    k1=M*WW;&lt;br /&gt;
    WW=(eye(2*N-2)+dt*M/2)*WW+(dt/2)*k1+(dt^2)*M*k1/2;&lt;br /&gt;
    sol(j+1,:)=[0,WW(1:N-1)',0];&lt;br /&gt;
end&lt;br /&gt;
[xx,tt]=meshgrid(x,t);&lt;br /&gt;
surf(xx,tt,sol);}}&lt;br /&gt;
&lt;br /&gt;
==== Aproximación por Fourier con diferentes términos de series. ====&lt;br /&gt;
En este apartado se ofrece una aproximación alternativa a las anteriores. Se muestran '''cinco iteraciones''' distintas del '''método del Fourier''' que se compararan entre sí y con los métodos anteriores, Trapecio y Euler.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br/&amp;gt;&lt;br /&gt;
Puesto que la realización de este método es la misma sea cual sea el número de serie elegido, se han expuesto únicamente dos casos de Q para una mayor claridad del programa.&lt;br /&gt;
&lt;br /&gt;
Este método de aproximación depende de los términos de la serie de fourier que se piden al programa que calcule (al número de términos en el programa lo denamonimos con la letra Q).&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo= %utt-uxx=0&lt;br /&gt;
%u(0,t)=u(l,t)=0&lt;br /&gt;
%u(x,0)=2-abs(0.4x-2)&lt;br /&gt;
%ut(x,0)=0&lt;br /&gt;
&lt;br /&gt;
%1 iteracion&lt;br /&gt;
clear all&lt;br /&gt;
L=10;&lt;br /&gt;
T=40;&lt;br /&gt;
Q=1;&lt;br /&gt;
h=0.1;&lt;br /&gt;
N=L/h;&lt;br /&gt;
x=0:h:L;&lt;br /&gt;
dt=h;&lt;br /&gt;
t=0:dt:T;&lt;br /&gt;
sol=zeros(length(t),N+1);&lt;br /&gt;
for k=1:Q&lt;br /&gt;
    phi=sin(k/L*pi*x);&lt;br /&gt;
    a=trapz(x,(2-abs(2/5*x-2)).*phi)/(trapz(x,phi.^2));&lt;br /&gt;
    b=0;&lt;br /&gt;
    T=a.*cos(k*pi*t/L);&lt;br /&gt;
    sol=sol+T'*phi;&lt;br /&gt;
end&lt;br /&gt;
[xx,tt]=meshgrid(x,t);&lt;br /&gt;
figure (1)&lt;br /&gt;
surf(xx,tt,sol)&lt;br /&gt;
xlabel('Desplazamiento horizontal');&lt;br /&gt;
ylabel('Tiempo');&lt;br /&gt;
zlabel('Desplazamiento vertical');&lt;br /&gt;
&lt;br /&gt;
%3 iteracion&lt;br /&gt;
clear all&lt;br /&gt;
L=10;&lt;br /&gt;
T=40;&lt;br /&gt;
Q=3;&lt;br /&gt;
h=0.1;&lt;br /&gt;
N=L/h;&lt;br /&gt;
x=0:h:L;&lt;br /&gt;
dt=h;&lt;br /&gt;
t=0:dt:T;&lt;br /&gt;
sol=zeros(length(t),N+1);&lt;br /&gt;
for k=1:Q&lt;br /&gt;
    phi=sin(k/L*pi*x);&lt;br /&gt;
    a=trapz(x,(2-abs(2/5*x-2)).*phi)/(trapz(x,phi.^2));&lt;br /&gt;
    b=0;&lt;br /&gt;
    T=a.*cos(k*pi*t/L);&lt;br /&gt;
    sol=sol+T'*phi;&lt;br /&gt;
end&lt;br /&gt;
[xx,tt]=meshgrid(x,t);&lt;br /&gt;
figure (2)&lt;br /&gt;
surf(xx,tt,sol)&lt;br /&gt;
xlabel('Desplazamiento horizontal');&lt;br /&gt;
ylabel('Tiempo');&lt;br /&gt;
zlabel('Desplazamiento vertical');}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br/&amp;gt;&lt;br /&gt;
[[Image:81tF2.jpg|525px|thumb|left|Aproximación por el método del Trapecio con un término de serie.]]&lt;br /&gt;
[[Image:82tF.jpg|525px|thumb|center|Aproximación por el método del Trapecio con tres términos de serie.]]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br/&amp;gt; &lt;br /&gt;
&lt;br /&gt;
[[Image:83tF.jpg|525px|thumb|left|Aproximación por el método del Trapecio con cinco términos de serie.]]&lt;br /&gt;
[[Image:84tF.jpg|525px|thumb|center|Aproximación por el método del Trapecio con diez términos de serie.]]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Image:85tF.jpg|525px|thumb|center|Aproximación por el método del Trapecio con veinte términos de serie.]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
En este método podemos observar fijándonos en las gráficas que a mayor número de términos (mayor Q), mayor es la aproximación obtenida.&lt;br /&gt;
&lt;br /&gt;
Realizando una comparación con los otros métodos, se puede observar, fijándonos en las gráficas y en los órdenes de precisión, que el método que mejor aproxima  la ecuación del problema es el método del trapecio, seguido de Euler modificado y, por último, Euler.&lt;br /&gt;
&lt;br /&gt;
== Energía del Cable. ==&lt;br /&gt;
&lt;br /&gt;
La energía del cable que viene definida por la función: &lt;br /&gt;
\begin{equation}&lt;br /&gt;
E(t) = \int_{0}^{L} (u_{t}^{2}(x,t)+ u_{x}^{2}(x,t)) \cdot dx&lt;br /&gt;
\end{equation}&lt;br /&gt;
&lt;br /&gt;
El método utilizado en el desarrollo numérico de está expresión es el '''método de diferencias finitas'''&lt;br /&gt;
(Funciona calculando de manera aproximada las soluciones a las ecuaciones diferenciales usando ecuaciones diferenciales finitas para aproximar derivadas.).&lt;br /&gt;
&lt;br /&gt;
'''FUNCIÓN:'''&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
function v = deriva(x,y,t)&lt;br /&gt;
&lt;br /&gt;
n = length(x);&lt;br /&gt;
del=zeros(1,n);&lt;br /&gt;
&lt;br /&gt;
if t==1&lt;br /&gt;
    &lt;br /&gt;
    i=1;&lt;br /&gt;
    del(1)=(y(i)-y(i+1))/(-x(i)+x(i+1));&lt;br /&gt;
&lt;br /&gt;
    for i=2:n&lt;br /&gt;
    del(i)=(y(i)-y(i-1))/(x(i)-x(i-1));&lt;br /&gt;
    end &lt;br /&gt;
    &lt;br /&gt;
elseif t==-1&lt;br /&gt;
&lt;br /&gt;
    for i=1:n-1&lt;br /&gt;
    del(i)=(y(i)-y(i+1))/(x(i)-x(i+1));&lt;br /&gt;
    end &lt;br /&gt;
    &lt;br /&gt;
    i=n;&lt;br /&gt;
    del(i)=(y(i)-y(i-1))/(x(i)-x(i-1));&lt;br /&gt;
    &lt;br /&gt;
elseif t==0&lt;br /&gt;
    &lt;br /&gt;
    i=1;&lt;br /&gt;
    del(1)=(y(i)-y(i+1))/(+x(i)-x(i+1));&lt;br /&gt;
    &lt;br /&gt;
    for i=2:n-1&lt;br /&gt;
    del(i)=(y(i+1)-y(i-1))/(2*(x(i)-x(i-1)));&lt;br /&gt;
    end &lt;br /&gt;
    &lt;br /&gt;
    i=n;&lt;br /&gt;
    del(n)=(y(i)-y(i-1))/(x(i)-x(i-1));  &lt;br /&gt;
    &lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
v=del;&lt;br /&gt;
&lt;br /&gt;
end&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''PROGRAMA:'''&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
clc;clear all;&lt;br /&gt;
L=10;dx=0.1;N=L/dx;&lt;br /&gt;
x=dx:dx:L-dx;&lt;br /&gt;
xtot=0:dx:L;&lt;br /&gt;
T=40;dt=0.1;t=0:dt:T;&lt;br /&gt;
K=2*diag(ones(1,N-1))-diag(ones(1,N-2),1)-diag(ones(1,N-2),-1);&lt;br /&gt;
K=(1/dx^2)*K;&lt;br /&gt;
U=(2-abs((x*2/5-2)))';&lt;br /&gt;
V=(0*x)';&lt;br /&gt;
sol(1,:)=[0 U' 0];&lt;br /&gt;
for i=1:length(t)-1;&lt;br /&gt;
    U=U+dt*V;&lt;br /&gt;
    V=V-dt*K*U;&lt;br /&gt;
    sol(i+1,:)=[0 U' 0];&lt;br /&gt;
end&lt;br /&gt;
%DERIVAMOS LA SOLUCION EN x Y EN t:&lt;br /&gt;
dsol_dx=ones(size(sol));&lt;br /&gt;
for i=1:length(t)&lt;br /&gt;
    dsol_dx(i,:)=deriva(sol(i,:),xtot,0);&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
dsol_dt=ones(size(sol));&lt;br /&gt;
for i=1:length(xtot)&lt;br /&gt;
    dsol_dt(:,i)=deriva(sol(:,i),t,1); &lt;br /&gt;
end&lt;br /&gt;
%SUMAMOS LAS DERIVADAS AL CUADRADO E INTEGRAMOS:&lt;br /&gt;
dE=zeros(1,size(t,1));&lt;br /&gt;
for i=1:length(xtot)&lt;br /&gt;
    dE=dE+(dsol_dt(i,:).^2+dsol_dx(i,:).^2)*dx;&lt;br /&gt;
end&lt;br /&gt;
xtot=0:dx:L;&lt;br /&gt;
[xx,tt]=meshgrid(xtot,t);&lt;br /&gt;
figure(1)&lt;br /&gt;
surf(xx,tt,dsol_dx);&lt;br /&gt;
figure(2)&lt;br /&gt;
surf(xx,tt,dsol_dt);&lt;br /&gt;
plot(dE,t)&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
El resultado habría de ser una gráfica que representase la evolución de la energía de la cuerda frente al transcurso del tiempo. No obstante, en nuestra resolución aparece una gráfica en blanco que ajudicamos o a un posible error en el código, o que podemos interpretar como que la energía tiende a infinito.&lt;br /&gt;
&lt;br /&gt;
== Aplicaciones. ==&lt;br /&gt;
&lt;br /&gt;
==== Sumersión en un medio viscoso. ====&lt;br /&gt;
&lt;br /&gt;
Suponemos ahora la inmersión del cable en una medio viscoso. Este medio viscoso produce un amortiguamiento en el movimiento del cable, con lo que la anterior ecuación diferencial se convertiría en &lt;br /&gt;
\begin{equation}&lt;br /&gt;
u_{tt}-u_{xx}+au_{t}=0&lt;br /&gt;
\end{equation} &lt;br /&gt;
, siendo '''&amp;lt;math&amp;gt; a  &amp;lt;/math&amp;gt;''' una constante de amortiguamiento propia del medio viscoso.&lt;br /&gt;
Puesto que la función '''&amp;lt;math&amp;gt; u(x,t)  &amp;lt;/math&amp;gt;''' se ve afectada ahora por el medio viscoso, y más directamente, por la constante '''&amp;lt;math&amp;gt; a  &amp;lt;/math&amp;gt;''' que actúa en su nombre, la energía del cable ,que se expresaba como una integral en función de '''&amp;lt;math&amp;gt; u(x,t)  &amp;lt;/math&amp;gt;''' también se va a ver afectada:&lt;br /&gt;
\begin{equation}&lt;br /&gt;
E(t) = \int_{0}^{L} (u_{t}^{2}(x,t)+ u_{x}^{2}(x,t)) \cdot dx&lt;br /&gt;
\end{equation}&lt;br /&gt;
&lt;br /&gt;
El obetivo del siguiente código será hallar una representación de la evolución de la energía en función del tiempo a raíz de la modificación de la función '''&amp;lt;math&amp;gt; u(x,t)  &amp;lt;/math&amp;gt;'''. Para ello asignaremos distintos valores a la constante '''&amp;lt;math&amp;gt; a  &amp;lt;/math&amp;gt;'''. Éstos van a ser:&lt;br /&gt;
'''&amp;lt;math&amp;gt; a=0  &amp;lt;/math&amp;gt;''' (la energía para este valor resultará igual que la hallada en el apartado anterior)&lt;br /&gt;
'''&amp;lt;math&amp;gt; a=1  &amp;lt;/math&amp;gt;'''&lt;br /&gt;
'''&amp;lt;math&amp;gt; a=4  &amp;lt;/math&amp;gt;'''&lt;br /&gt;
'''&amp;lt;math&amp;gt; a=10  &amp;lt;/math&amp;gt;'''&lt;br /&gt;
''&amp;lt;math&amp;gt; a=100  &amp;lt;/math&amp;gt;'''&lt;br /&gt;
&lt;br /&gt;
El procedimiento numérico volverá a seguir el método de '''diferencias finitas''':&lt;br /&gt;
&lt;br /&gt;
'''PROGRAMA:'''&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
clc;clear all;close all;&lt;br /&gt;
%Datos&lt;br /&gt;
dx=0.1;L=10;&lt;br /&gt;
dt=0.001;NT=40;&lt;br /&gt;
A=[0,1,4,10,100];&lt;br /&gt;
x=0:dx:L;&lt;br /&gt;
t=0:dt:NT;&lt;br /&gt;
ENE=zeros(5,length(t));&lt;br /&gt;
&lt;br /&gt;
%Condición de contorno: U(0,t)=U(L,t)=0;&lt;br /&gt;
&lt;br /&gt;
for k=1:5&lt;br /&gt;
&lt;br /&gt;
%Vector solución y derivada temporal de la solución&lt;br /&gt;
%t=0&amp;lt;&amp;gt;T(1) es donde se guardan las condiciones iniciales&lt;br /&gt;
&lt;br /&gt;
U=zeros(length(t),length(x));&lt;br /&gt;
Dt_U=zeros(length(t),length(x));&lt;br /&gt;
Dx_U=zeros(length(t),length(x));    &lt;br /&gt;
&lt;br /&gt;
%Condición inicial: Estiramos 2 m del centro&lt;br /&gt;
%Modelizado como dos rectas antisimétricas que se cortan en x=5 y&lt;br /&gt;
%sujetas en x=0 y x=L.&lt;br /&gt;
&lt;br /&gt;
U(1,:)=2*sin(x*pi/L);&lt;br /&gt;
Dt_U(1,:)=zeros(1,length(x))';&lt;br /&gt;
D2t_U=Ecuacion5(U(1,:),x,-1);&lt;br /&gt;
&lt;br /&gt;
%Inicio del esquema numérico&lt;br /&gt;
%empieza en 2 ya que el 1 es la cond. inicial&lt;br /&gt;
&lt;br /&gt;
%ESQUEMA NEWMARK&lt;br /&gt;
&lt;br /&gt;
 for i=2:length(t)&lt;br /&gt;
    iter=[k,i]&lt;br /&gt;
    Ua=U(i-1,:);&lt;br /&gt;
    Dt_Ua=Dt_U(i-1,:);&lt;br /&gt;
    D2t_Ua=D2t_U;&lt;br /&gt;
    %Derivada segunda respecto del tiempo en el instante t, se obtiene de&lt;br /&gt;
    %eq. diferencial u_tt=f(x,u,u_x,u_xx)&lt;br /&gt;
    D2t_U=Ecuacion5(U(i-1,:),x,t(i))-A(k)*Dt_Ua;&lt;br /&gt;
    %Derivada primera&lt;br /&gt;
    Dt_U(i,:)=Dt_Ua+0.5*dt*(D2t_Ua+D2t_U);&lt;br /&gt;
    %Ecuacion&lt;br /&gt;
    U(i,:) = Ua+Dt_Ua*dt+(1/6)*(D2t_Ua+D2t_U)*dt^2;&lt;br /&gt;
 end&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 %ENERGIA&lt;br /&gt;
 for i=1:length(t)&lt;br /&gt;
    Dx_U(i,:)=deriva(x,U(i,:),0);&lt;br /&gt;
 end&lt;br /&gt;
dE=zeros(length(t),1);&lt;br /&gt;
for i=1:length(x)&lt;br /&gt;
    dE=dE+(Dt_U(:,i).^2+Dx_U(:,i).^2)*dx;&lt;br /&gt;
end&lt;br /&gt;
 ENE(k,:)=dE;&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
 figure(1)&lt;br /&gt;
 hold on&lt;br /&gt;
 grid&lt;br /&gt;
 aa=find(x==L/4);&lt;br /&gt;
 ab=find(x==3*L/4);&lt;br /&gt;
 legend('A=0','A=1','A=4','A=10','A=100');&lt;br /&gt;
 plot(t,ENE(1,:),t,ENE(2,:),t,ENE(3,:),t,ENE(4,:),t,ENE(5,:));&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''FUNCIONES:'''&lt;br /&gt;
DERIVA:&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
function v = deriva(x,y,t)&lt;br /&gt;
n = length(x);&lt;br /&gt;
del=zeros(1,n);&lt;br /&gt;
if t==1&lt;br /&gt;
    i=1;&lt;br /&gt;
    del(1)=(y(i)-y(i+1))/(-x(i)+x(i+1));&lt;br /&gt;
    for i=2:n&lt;br /&gt;
    del(i)=(y(i)-y(i-1))/(x(i)-x(i-1));&lt;br /&gt;
    end &lt;br /&gt;
elseif t==-1&lt;br /&gt;
    for i=1:n-1&lt;br /&gt;
    del(i)=(y(i)-y(i+1))/(x(i)-x(i+1));&lt;br /&gt;
    end &lt;br /&gt;
    i=n;&lt;br /&gt;
    del(i)=(y(i)-y(i-1))/(x(i)-x(i-1));&lt;br /&gt;
elseif t==0&lt;br /&gt;
    i=1;&lt;br /&gt;
    del(1)=(y(i)-y(i+1))/(+x(i)-x(i+1));&lt;br /&gt;
    for i=2:n-1&lt;br /&gt;
    del(i)=(y(i+1)-y(i-1))/(2*(x(i)-x(i-1)));&lt;br /&gt;
    end &lt;br /&gt;
    i=n;&lt;br /&gt;
    del(n)=(y(i)-y(i-1))/(x(i)-x(i-1));  &lt;br /&gt;
end&lt;br /&gt;
v=del;&lt;br /&gt;
end&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
'''ECUACIÓN 5:'''&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
function [ V ] = Ecuacion5( u,x,t )&lt;br /&gt;
%se guarda aquí la ecuación diferencial del tipo u_tt=f(x,u,u_x,u_xx)&lt;br /&gt;
%INCLUIDAS LAS CC AQUÍ&lt;br /&gt;
%PARA u_tt=u_xx&lt;br /&gt;
%CC: u(0,t)=u(L,t)=0;&lt;br /&gt;
&lt;br /&gt;
Ax=x(2)-x(1);&lt;br /&gt;
n=length(u);&lt;br /&gt;
V=zeros(1,n);&lt;br /&gt;
&lt;br /&gt;
%Las condiciones de contorno vienen en x(1)=0 y x(Nx)=L&lt;br /&gt;
u(1)=0;&lt;br /&gt;
&lt;br /&gt;
if(t==-1)&lt;br /&gt;
    u(n)=0;&lt;br /&gt;
else&lt;br /&gt;
    u(n)=0;&lt;br /&gt;
    %u(n)=sin(2*pi*F0*t);&lt;br /&gt;
    %u(n)=(1/(b*Ax-1))*u(n-1);&lt;br /&gt;
end&lt;br /&gt;
for i=2:n-1&lt;br /&gt;
    &lt;br /&gt;
    V(i)=(1/Ax^2)*(u(i+1)-2*u(i)+u(i-1));&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
i=1;&lt;br /&gt;
V(i)=(1/Ax^2)*(u(i+2)-2*u(i+1));&lt;br /&gt;
i=n;&lt;br /&gt;
V(i)=(1/Ax^2)*(u(i)-2*u(i-1)+u(i-2));&lt;br /&gt;
end&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
La gráfica buscada es:&lt;br /&gt;
[[Archivo:Graficadelaenergiaenunmedioviscoso.png|700px|thumb|centre|Gráfica de la energía(ordenadas) del cable respecto del tiempo (Abcisas).]]&lt;br /&gt;
En la gráfica se aprecian cuatro curvas de distintos colores correspondientes a '''&amp;lt;math&amp;gt; a=0  &amp;lt;/math&amp;gt;''','''&amp;lt;math&amp;gt; a=1  &amp;lt;/math&amp;gt;''','''&amp;lt;math&amp;gt; a=4  &amp;lt;/math&amp;gt;''','''&amp;lt;math&amp;gt; a=10  &amp;lt;/math&amp;gt;''',''&amp;lt;math&amp;gt; a=100  &amp;lt;/math&amp;gt;'''.&lt;br /&gt;
&lt;br /&gt;
Como podemos apreciar el valor de la energía disminuye a medida que aumentamos el valor de &amp;quot;a&amp;quot;. Esto es debido a que &amp;quot;a&amp;quot; define el coeficiente de amortiguamiento del líquido en el cual se encuentra la cuerda. Luego, dicha disminución de energía se produce por la disipación en el medio de gran parte de la energía inicial.&lt;br /&gt;
&lt;br /&gt;
==== Sujeción a una estructura de vibración periódica. ====&lt;br /&gt;
&lt;br /&gt;
En este caso supondremos que el extremo derecho que sujeta el cable está sometido a una vibración periódica de frecuencia  &amp;lt;math&amp;gt; F_0 &amp;lt;/math&amp;gt; [Herzios]. Al haber una vibración externa que afecta directamente al cable la expresión de su movimiento y, por consecuencia, de su energía, se va a ver modificada. Nosotros incluiremos esta modificación en la función &amp;lt;math&amp;gt; f(t) &amp;lt;/math&amp;gt; de problema de valor inicial que venimos tratando. Esta función va a pasar a ser: &lt;br /&gt;
\begin{equation}&lt;br /&gt;
f(t)= sin(2 \pi F_0t)&lt;br /&gt;
\end{equation}&lt;br /&gt;
&lt;br /&gt;
El objetivo será el de ver cómo afecta esta alteración en el desarrollo de la energía del cable frente al tiempo.&lt;br /&gt;
Para nuestro cálculo numérico especificaremos para las siguientes situaciones:&lt;br /&gt;
En primer lugar, para: &amp;lt;math&amp;gt; F_0= \frac{1}{L} + 0,01 &amp;lt;/math&amp;gt;&lt;br /&gt;
Después,para: &amp;lt;math&amp;gt; F_0= \frac{1}{L} - 0,01 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Y para finalizar, lo estudiaremos en un intervalo de tiempo de '''t=0''' hasta '''t=60''' : &amp;lt;math&amp;gt;t \in (0,60)&amp;lt;/math&amp;gt; [segundos].&lt;br /&gt;
&lt;br /&gt;
El código matemático para matlab / octave:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''PROGRAMA:'''&lt;br /&gt;
{{matlab|codigo= &lt;br /&gt;
clc;clear all;close all;&lt;br /&gt;
&lt;br /&gt;
%Datos&lt;br /&gt;
&lt;br /&gt;
dx=0.1;L=10;dt=0.0001;NT=60;&lt;br /&gt;
A=[0,1,4,10,100];&lt;br /&gt;
x=0:dx:L;t=0:dt:NT;&lt;br /&gt;
ENE=zeros(5,length(t));&lt;br /&gt;
&lt;br /&gt;
%Condición de contorno: U(0,t)=U(L,t)=0;&lt;br /&gt;
for k=1&lt;br /&gt;
%Vector solución y derivada temporal de la solución&lt;br /&gt;
%t=0&amp;lt;&amp;gt;T(1) es donde se guardan las condiciones iniciales&lt;br /&gt;
&lt;br /&gt;
U=zeros(length(t),length(x));&lt;br /&gt;
Dt_U=zeros(length(t),length(x));&lt;br /&gt;
Dx_U=zeros(length(t),length(x));&lt;br /&gt;
&lt;br /&gt;
%Condición inicial: Estiramos 2 m del centro&lt;br /&gt;
%Modelizado como dos rectas antisimétricas que se cortan en x=5 y&lt;br /&gt;
%sujetas en x=0 y x=L.&lt;br /&gt;
&lt;br /&gt;
U(1,:)=2*sin(x*pi/L);&lt;br /&gt;
Dt_U(1,:)=zeros(1,length(x))';&lt;br /&gt;
D2t_U=Ecuacion6(U(1,:),x,-1);&lt;br /&gt;
&lt;br /&gt;
%Inicio del esquema numérico&lt;br /&gt;
%empieza en 2 ya que el 1 es la cond. inicial&lt;br /&gt;
&lt;br /&gt;
%ESQUEMA NEWMARK&lt;br /&gt;
&lt;br /&gt;
 for i=2:length(t)&lt;br /&gt;
    iter=[k,i]&lt;br /&gt;
    Ua=U(i-1,:);&lt;br /&gt;
    Dt_Ua=Dt_U(i-1,:);&lt;br /&gt;
    D2t_Ua=D2t_U;&lt;br /&gt;
    %Derivada segunda respecto del tiempo en el instante t, se obtiene de&lt;br /&gt;
    %eq. diferencial u_tt=f(x,u,u_x,u_xx)&lt;br /&gt;
    D2t_U=Ecuacion6(U(i-1,:),x,t(i))-A(k)*Dt_Ua;&lt;br /&gt;
    %Derivada primera&lt;br /&gt;
    Dt_U(i,:)=Dt_Ua+0.5*dt*(D2t_Ua+D2t_U);&lt;br /&gt;
    %Ecuacion&lt;br /&gt;
    U(i,:) = Ua+Dt_Ua*dt+(1/6)*(D2t_Ua+D2t_U)*dt^2;&lt;br /&gt;
 end&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 %ENERGIA&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 for i=1:length(t)&lt;br /&gt;
    Dx_U(i,:)=deriva(x,U(i,:),0);&lt;br /&gt;
 end&lt;br /&gt;
dE=zeros(length(t),1);&lt;br /&gt;
for i=1:length(x)&lt;br /&gt;
    dE=dE+(Dt_U(:,i).^2+Dx_U(:,i).^2)*dx;&lt;br /&gt;
end&lt;br /&gt;
 ENE(k,:)=dE;&lt;br /&gt;
end&lt;br /&gt;
 figure(1)&lt;br /&gt;
 hold on&lt;br /&gt;
 grid&lt;br /&gt;
 aa=find(x==L/4);&lt;br /&gt;
 ab=find(x==3*L/4);&lt;br /&gt;
 imagesc(U)&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''FUNCIONES:'''&lt;br /&gt;
&lt;br /&gt;
DERIVA:&lt;br /&gt;
{{matlab|codigo= &lt;br /&gt;
function v = deriva(x,y,t)&lt;br /&gt;
n = length(x);&lt;br /&gt;
del=zeros(1,n);&lt;br /&gt;
if t==1&lt;br /&gt;
    i=1;&lt;br /&gt;
    del(1)=(y(i)-y(i+1))/(-x(i)+x(i+1));&lt;br /&gt;
    for i=2:n&lt;br /&gt;
    del(i)=(y(i)-y(i-1))/(x(i)-x(i-1));&lt;br /&gt;
    end &lt;br /&gt;
elseif t==-1&lt;br /&gt;
    for i=1:n-1&lt;br /&gt;
    del(i)=(y(i)-y(i+1))/(x(i)-x(i+1));&lt;br /&gt;
    end &lt;br /&gt;
    i=n;&lt;br /&gt;
    del(i)=(y(i)-y(i-1))/(x(i)-x(i-1));&lt;br /&gt;
elseif t==0&lt;br /&gt;
    i=1;&lt;br /&gt;
    del(1)=(y(i)-y(i+1))/(+x(i)-x(i+1));&lt;br /&gt;
    for i=2:n-1&lt;br /&gt;
    del(i)=(y(i+1)-y(i-1))/(2*(x(i)-x(i-1)));&lt;br /&gt;
    end &lt;br /&gt;
    i=n;&lt;br /&gt;
    del(n)=(y(i)-y(i-1))/(x(i)-x(i-1));  &lt;br /&gt;
end&lt;br /&gt;
v=del;&lt;br /&gt;
end&lt;br /&gt;
}}&lt;br /&gt;
'''ECUACIÓN 6:'''&lt;br /&gt;
&lt;br /&gt;
function [ V ] = Ecuacion6( u,x,t )&lt;br /&gt;
{{matlab|codigo= &lt;br /&gt;
&lt;br /&gt;
%se guarda aquí la ecuación diferencial del tipo u_tt=f(x,u,u_x,u_xx)&lt;br /&gt;
%INCLUIDAS LAS CC AQUÍ!&lt;br /&gt;
%PARA u_tt=u_xx&lt;br /&gt;
%CC: u(0,t)=u(L,t)=0;&lt;br /&gt;
&lt;br /&gt;
Ax=x(2)-x(1);&lt;br /&gt;
n=length(u);&lt;br /&gt;
V=zeros(1,n);&lt;br /&gt;
F0=(1/x(n))+0.01;&lt;br /&gt;
b=-2;&lt;br /&gt;
&lt;br /&gt;
%Las condiciones de contorno vienen en x(1)=0 y x(Nx)=L&lt;br /&gt;
&lt;br /&gt;
u(1)=0;&lt;br /&gt;
if(t==-1)&lt;br /&gt;
    u(n)=0;&lt;br /&gt;
else&lt;br /&gt;
    %u(n)=0;&lt;br /&gt;
    u(n)=sin(2*pi*F0*t);&lt;br /&gt;
    %u(n)=(1/(b*Ax-1))*u(n-1);&lt;br /&gt;
end&lt;br /&gt;
for i=2:n-1&lt;br /&gt;
    V(i)=(1/Ax^2)*(u(i+1)-2*u(i)+u(i-1));&lt;br /&gt;
end&lt;br /&gt;
i=1;&lt;br /&gt;
V(i)=(1/Ax^2)*(u(i+2)-2*u(i+1));&lt;br /&gt;
i=n;&lt;br /&gt;
V(i)=(1/Ax^2)*(u(i)-2*u(i-1)+u(i-2));&lt;br /&gt;
end&lt;br /&gt;
}}&lt;br /&gt;
[[Archivo:6.3.png|700px|thumb|centre|Gráfica en tres dimensiones de la energía de un cable cuyo extremo derecho está sometido a una vibración externa periódica.]]&lt;br /&gt;
'''function [ V ] = Ecuacion6( u,x,t )'''&lt;br /&gt;
{{matlab|codigo= &lt;br /&gt;
%se guarda aquí la ecuación diferencial del tipo u_tt=f(x,u,u_x,u_xx)&lt;br /&gt;
%INCLUIDAS LAS CC AQUÍ!&lt;br /&gt;
%PARA u_tt=u_xx&lt;br /&gt;
%CC: u(0,t)=u(L,t)=0;&lt;br /&gt;
&lt;br /&gt;
Ax=x(2)-x(1);&lt;br /&gt;
n=length(u);&lt;br /&gt;
V=zeros(1,n);&lt;br /&gt;
F0=(1/x(n))-0.01;&lt;br /&gt;
b=-2;&lt;br /&gt;
&lt;br /&gt;
%Las condiciones de contorno vienen en x(1)=0 y x(Nx)=L&lt;br /&gt;
&lt;br /&gt;
u(1)=0;&lt;br /&gt;
if(t==-1)&lt;br /&gt;
    u(n)=0;&lt;br /&gt;
else&lt;br /&gt;
    %u(n)=0;&lt;br /&gt;
    u(n)=sin(2*pi*F0*t);&lt;br /&gt;
    %u(n)=(1/(b*Ax-1))*u(n-1);&lt;br /&gt;
end&lt;br /&gt;
for i=2:n-1&lt;br /&gt;
    V(i)=(1/Ax^2)*(u(i+1)-2*u(i)+u(i-1));&lt;br /&gt;
end&lt;br /&gt;
i=1;&lt;br /&gt;
V(i)=(1/Ax^2)*(u(i+2)-2*u(i+1));&lt;br /&gt;
i=n;&lt;br /&gt;
V(i)=(1/Ax^2)*(u(i)-2*u(i-1)+u(i-2));&lt;br /&gt;
end&lt;br /&gt;
}}&lt;br /&gt;
[[Archivo:6.2.png|700px|thumb|centre|Gráfica en tres dimensiones de la energía de un cable cuyo extremo derecho está sometido a una vibración externa periódica.]]&lt;br /&gt;
&lt;br /&gt;
'''function [ V ] = Ecuacion6( u,x,t )'''&lt;br /&gt;
{{matlab|codigo= &lt;br /&gt;
%se guarda aquí la ecuación diferencial del tipo u_tt=f(x,u,u_x,u_xx)&lt;br /&gt;
%INCLUIDAS LAS CC AQUÍ!&lt;br /&gt;
%PARA u_tt=u_xx&lt;br /&gt;
%CC: u(0,t)=u(L,t)=0;&lt;br /&gt;
&lt;br /&gt;
Ax=x(2)-x(1);&lt;br /&gt;
n=length(u);&lt;br /&gt;
V=zeros(1,n);&lt;br /&gt;
F0=(1/x(n));&lt;br /&gt;
b=-2;&lt;br /&gt;
&lt;br /&gt;
%Las condiciones de contorno vienen en x(1)=0 y x(Nx)=L&lt;br /&gt;
&lt;br /&gt;
u(1)=0;&lt;br /&gt;
if(t==-1)&lt;br /&gt;
    u(n)=0;&lt;br /&gt;
else&lt;br /&gt;
    %u(n)=0;&lt;br /&gt;
    u(n)=sin(2*pi*F0*t);&lt;br /&gt;
    %u(n)=(1/(b*Ax-1))*u(n-1);&lt;br /&gt;
end&lt;br /&gt;
for i=2:n-1&lt;br /&gt;
    V(i)=(1/Ax^2)*(u(i+1)-2*u(i)+u(i-1));&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
i=1;&lt;br /&gt;
V(i)=(1/Ax^2)*(u(i+2)-2*u(i+1));&lt;br /&gt;
i=n;&lt;br /&gt;
V(i)=(1/Ax^2)*(u(i)-2*u(i-1)+u(i-2));&lt;br /&gt;
end&lt;br /&gt;
}}&lt;br /&gt;
 &lt;br /&gt;
La gráfica resultante es la siguiente:&lt;br /&gt;
[[Archivo:6.3.png|700px|thumb|centre|Gráfica en tres dimensiones de la energía de un cable cuyo extremo derecho está sometido a una vibración externa periódica.]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
En dicha gráfica, se puede observar que la forma de la función o la energía se ve alterada por la condición impuesta de tal manera que ésta adquiere una forma también sinusoidal, y que su estabilización dependería del tiempo transcurrido entre vibración y vibración.&lt;br /&gt;
&lt;br /&gt;
==== Sujeción a un aparato que responde a una vibración externa. ====&lt;br /&gt;
&lt;br /&gt;
La siguiente situación que vamos a representar a modelar a través de ecuaciones diferenciales va a ser la siguiente: supondremos que el cable de la anterior situación (que recibía en su extremo derecho una vibración periódica de &amp;lt;math&amp;gt; F_0 &amp;lt;/math&amp;gt; [Herzios])envía una respuesta a la vibración que recibe. Esta situación la vamos a representar como un cambio en la condición de contorno; ésta va a pasar a ser: &amp;lt;math&amp;gt; u_x(L,t)=bu(L,t) &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
El objetivo, de nuevo será representar la evolución de la energía respecto del tiempo y ver si este cambio en el problema se ve reflejado en su representación. &lt;br /&gt;
En el código numérico, no obstante, la situación de &amp;lt;math&amp;gt; u_x(L,t)=bu(L,t) &amp;lt;/math&amp;gt; la vamos a aproximar por la siguiente expresión:&lt;br /&gt;
&amp;lt;math&amp;gt; u_x(L,t)-bu(L,t)  \cong  \frac{u_{N+1}(t)-u_{N-1}(t)}{2h-u_N(t)} &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
En la resolución del problema emplearemos de nuevo la condición inicial de sujetar el cable por el centro y elevarlo 2 m perpendicularmente: &lt;br /&gt;
&amp;lt;math&amp;gt; u(x,0)=g(x)= 2- |\frac{2}{5}x -2| &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Y además obtendremos el resultado para los dos valores siguientes de &amp;lt;math&amp;gt;b&amp;lt;/math&amp;gt; :&lt;br /&gt;
Para &amp;lt;math&amp;gt; b=2 &amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt; b=-2 &amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
El código numérico de matlab/octave es:&lt;br /&gt;
&lt;br /&gt;
'''PROGRAMA:'''&lt;br /&gt;
{{matlab|codigo= &lt;br /&gt;
clc;clear all;close all;&lt;br /&gt;
&lt;br /&gt;
%Datos&lt;br /&gt;
dx=0.1;L=10;dt=0.0001;NT=40;&lt;br /&gt;
A=[0,1,4,10,100];&lt;br /&gt;
x=0:dx:L;t=0:dt:NT;&lt;br /&gt;
ENE=zeros(5,length(t));&lt;br /&gt;
&lt;br /&gt;
%Condición de contorno: U(0,t)=U(L,t)=0;&lt;br /&gt;
for k=1&lt;br /&gt;
&lt;br /&gt;
%Vector solución y derivada temporal de la solución&lt;br /&gt;
%t=0&amp;lt;&amp;gt;T(1) es donde se guardan las condiciones iniciales&lt;br /&gt;
&lt;br /&gt;
U=zeros(length(t),length(x));&lt;br /&gt;
Dt_U=zeros(length(t),length(x));&lt;br /&gt;
Dx_U=zeros(length(t),length(x));    &lt;br /&gt;
&lt;br /&gt;
%Condición inicial: Estiramos 2 m del centro&lt;br /&gt;
%Modelizado como dos rectas antisimétricas que se cortan en x=5 y&lt;br /&gt;
%sujetas en x=0 y x=L.&lt;br /&gt;
&lt;br /&gt;
U(1,:)=2*sin(x*pi/L);&lt;br /&gt;
Dt_U(1,:)=zeros(1,length(x))';&lt;br /&gt;
D2t_U=Ecuacion7(U(1,:),x,-1);&lt;br /&gt;
&lt;br /&gt;
%Inicio del esquema numérico&lt;br /&gt;
%empieza en 2 ya que el 1 es la cond. inicial&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
%ESQUEMA NEWMARK&lt;br /&gt;
 for i=2:length(t)&lt;br /&gt;
    iter=[k,i]&lt;br /&gt;
    Ua=U(i-1,:);&lt;br /&gt;
    Dt_Ua=Dt_U(i-1,:);&lt;br /&gt;
    D2t_Ua=D2t_U;&lt;br /&gt;
&lt;br /&gt;
    %Derivada segunda respecto del tiempo en el instante t, se obtiene de&lt;br /&gt;
    %eq. diferencial u_tt=f(x,u,u_x,u_xx)&lt;br /&gt;
&lt;br /&gt;
    D2t_U=Ecuacion7(U(i-1,:),x,t(i))-A(k)*Dt_Ua;&lt;br /&gt;
&lt;br /&gt;
    %Derivada primera&lt;br /&gt;
    Dt_U(i,:)=Dt_Ua+0.5*dt*(D2t_Ua+D2t_U);&lt;br /&gt;
&lt;br /&gt;
    %Ecuacion&lt;br /&gt;
    U(i,:) = Ua+Dt_Ua*dt+(1/6)*(D2t_Ua+D2t_U)*dt^2;&lt;br /&gt;
 end&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 %ENERGIA&lt;br /&gt;
 for i=1:length(t)&lt;br /&gt;
    Dx_U(i,:)=deriva(x,U(i,:),0);&lt;br /&gt;
 end&lt;br /&gt;
dE=zeros(length(t),1);&lt;br /&gt;
for i=1:length(x)&lt;br /&gt;
    dE=dE+(Dt_U(:,i).^2+Dx_U(:,i).^2)*dx;&lt;br /&gt;
end&lt;br /&gt;
 ENE(k,:)=dE;&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
 figure(1)&lt;br /&gt;
 hold on&lt;br /&gt;
 grid&lt;br /&gt;
 aa=find(x==L/4);&lt;br /&gt;
 ab=find(x==3*L/4);&lt;br /&gt;
 plot(t,ENE(1,:))&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
'''FUNCIONES:'''&lt;br /&gt;
'''function v = deriva(x,y,t)'''&lt;br /&gt;
{{matlab|codigo= &lt;br /&gt;
n = length(x);&lt;br /&gt;
del=zeros(1,n);&lt;br /&gt;
if t==1&lt;br /&gt;
    i=1;&lt;br /&gt;
    del(1)=(y(i)-y(i+1))/(-x(i)+x(i+1));&lt;br /&gt;
    for i=2:n&lt;br /&gt;
    del(i)=(y(i)-y(i-1))/(x(i)-x(i-1));&lt;br /&gt;
    end &lt;br /&gt;
elseif t==-1&lt;br /&gt;
    for i=1:n-1&lt;br /&gt;
    del(i)=(y(i)-y(i+1))/(x(i)-x(i+1));&lt;br /&gt;
    end &lt;br /&gt;
    i=n;&lt;br /&gt;
    del(i)=(y(i)-y(i-1))/(x(i)-x(i-1));&lt;br /&gt;
elseif t==0&lt;br /&gt;
    i=1;&lt;br /&gt;
    del(1)=(y(i)-y(i+1))/(+x(i)-x(i+1));&lt;br /&gt;
    for i=2:n-1&lt;br /&gt;
    del(i)=(y(i+1)-y(i-1))/(2*(x(i)-x(i-1)));&lt;br /&gt;
    end &lt;br /&gt;
    i=n;&lt;br /&gt;
    del(n)=(y(i)-y(i-1))/(x(i)-x(i-1));  &lt;br /&gt;
end&lt;br /&gt;
v=del;&lt;br /&gt;
end&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
'''function [ V ] = Ecuacion7( u,x,t )'''&lt;br /&gt;
{{matlab|codigo= &lt;br /&gt;
%se guarda aquí la ecuación diferencial del tipo u_tt=f(x,u,u_x,u_xx)&lt;br /&gt;
%INCLUIDAS LAS CC AQUÍ!&lt;br /&gt;
%PARA u_tt=u_xx&lt;br /&gt;
%CC: u(0,t)=u(L,t)=0;&lt;br /&gt;
&lt;br /&gt;
Ax=x(2)-x(1);&lt;br /&gt;
n=length(u);&lt;br /&gt;
V=zeros(1,n);&lt;br /&gt;
F0=(1/x(n));&lt;br /&gt;
b=2;&lt;br /&gt;
&lt;br /&gt;
%Las condiciones de contorno vienen en x(1)=0 y x(Nx)=L&lt;br /&gt;
u(1)=0;&lt;br /&gt;
if(t==-1)&lt;br /&gt;
    u(n)=0;&lt;br /&gt;
else&lt;br /&gt;
    %u(n)=0;&lt;br /&gt;
    %u(n)=sin(2*pi*F0*t);&lt;br /&gt;
    u(n)=(1/(b*Ax-1))*u(n-1);&lt;br /&gt;
end&lt;br /&gt;
for i=2:n-1&lt;br /&gt;
    V(i)=(1/Ax^2)*(u(i+1)-2*u(i)+u(i-1));&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
i=1;&lt;br /&gt;
V(i)=(1/Ax^2)*(u(i+2)-2*u(i+1));&lt;br /&gt;
i=n;&lt;br /&gt;
V(i)=(1/Ax^2)*(u(i)-2*u(i-1)+u(i-2));&lt;br /&gt;
end&lt;br /&gt;
}}&lt;br /&gt;
[[Archivo:7.1.png|700px|thumb|centre|Gráfica de la energía (ordenadas) de un cable frente al tiempo (abcisas) que recibe una vibración en su extremo derecho y que responde a dicha vibración para b=2. ]]&lt;br /&gt;
'''function [ V ] = Ecuacion7( u,x,t )'''&lt;br /&gt;
{{matlab|codigo= &lt;br /&gt;
%se guarda aquí la ecuación diferencial del tipo u_tt=f(x,u,u_x,u_xx)&lt;br /&gt;
%INCLUIDAS LAS CC AQUÍ!&lt;br /&gt;
%PARA u_tt=u_xx&lt;br /&gt;
%CC: u(0,t)=u(L,t)=0;&lt;br /&gt;
&lt;br /&gt;
Ax=x(2)-x(1);&lt;br /&gt;
n=length(u);&lt;br /&gt;
V=zeros(1,n);&lt;br /&gt;
F0=(1/x(n));&lt;br /&gt;
b=-2;&lt;br /&gt;
&lt;br /&gt;
%Las condiciones de contorno vienen en x(1)=0 y x(Nx)=L&lt;br /&gt;
u(1)=0;&lt;br /&gt;
&lt;br /&gt;
if(t==-1)&lt;br /&gt;
    u(n)=0;&lt;br /&gt;
else&lt;br /&gt;
    %u(n)=0;&lt;br /&gt;
    %u(n)=sin(2*pi*F0*t);&lt;br /&gt;
    u(n)=(1/(b*Ax-1))*u(n-1);&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
for i=2:n-1&lt;br /&gt;
    V(i)=(1/Ax^2)*(u(i+1)-2*u(i)+u(i-1));&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
i=1;&lt;br /&gt;
V(i)=(1/Ax^2)*(u(i+2)-2*u(i+1));&lt;br /&gt;
i=n;&lt;br /&gt;
V(i)=(1/Ax^2)*(u(i)-2*u(i-1)+u(i-2));&lt;br /&gt;
end&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
La imagen resultante es:&lt;br /&gt;
[[Archivo:7.2.png|700px|thumb|centre|Gráfica de la energía (ordenadas) de un cable frente al tiempo (abcisas) que recibe una vibración en su extremo derecho y que responde a dicha vibración para b=-2. ]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
La anterior gráfica muestra el comportamiento de la cuerda como respuesta a la vibración producida en uno de sus extremos así como el movimiento transversal del punto medio al comienzo. Podemos observar el movimiento transversal de cada punto de la cuerda a través de la expresión de la energía, así como que, a medida que transcurre el tiempo, ésta se va estabilizando. La forma de la función recuerda a una función sinusoidal debido a la forma de la condición de contorno impuesta.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Categoría:Ecuaciones Diferentiales]]&lt;br /&gt;
 [[Categoría:ED13/14]]&lt;br /&gt;
 [[Categoría:Trabajos 2013-14]]&lt;/div&gt;</summary>
		<author><name>Lucia Lopez</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Ecuaci%C3%B3n_de_ondas_(grupo_2B)&amp;diff=13058</id>
		<title>Ecuación de ondas (grupo 2B)</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Ecuaci%C3%B3n_de_ondas_(grupo_2B)&amp;diff=13058"/>
				<updated>2014-05-19T20:20:12Z</updated>
		
		<summary type="html">&lt;p&gt;Lucia Lopez: /* Euler Modificado. */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{ TrabajoED | Ecuación de ondas. Grupo 2-B| [[:Categoría:Ecuaciones Diferenciales|Ecuaciones Diferenciales]]|[[:Categoría:ED13/14|Curso 2013-14]]| &lt;br /&gt;
Ignacio Díaz-Caneja Camblor&lt;br /&gt;
&lt;br /&gt;
Alberto Fernández Pérez&lt;br /&gt;
&lt;br /&gt;
Adela González Barbado&lt;br /&gt;
&lt;br /&gt;
Lucia López Sánchez&lt;br /&gt;
&lt;br /&gt;
Araceli Martín Candilejo&lt;br /&gt;
&lt;br /&gt;
Diego Solano López&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
== Modelización de los desplazamientos del Cable. ==&lt;br /&gt;
El problema que se tratará a continuación describe una ecuación de '''tipo hiperbólico''', una '''ecuación de ondas'''.&lt;br /&gt;
Consideramos un '''cable de 10 metros''' de longitud '''sujeto por sus extremos'''. Suponiendo que éste tiene una '''sección pequeña''' respecto a su longitud someteremos al cable a pequeñas vibraciones que estudiaremos con una modelización de la ecuación de ondas. &lt;br /&gt;
Se caracteriza al cable de una masa constante por unidad de volumen, es decir, será '''homogéneo'''. Éste, '''flexible''' a la tracción, únicamente ofrece resistencias en su dirección longitudinal, tangenciales, pero no a esfuerzos de flexión o cortes. Se supone, además, que es '''inextensible''' por lo que será lo suficientemente rígido longitudinalmente como para poder despreciar su extensibilidad.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Con esta modelización se estudiarán las '''pequeñas vibraciones''', desplazamientos transversales, a las que es sometido el cable. Para iniciar el movimiento del cable lo sujetaremos por el centro subiéndolo dos metros, lo que nos proporciona una primera condición inicial determinada por la función g(x), y soltándolo con una velocidad nula. &lt;br /&gt;
&lt;br /&gt;
&amp;lt;br/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Obtenemos la ecuación &amp;lt;math&amp;gt;u_{tt}-u_{xx}=0&amp;lt;/math&amp;gt; , de la cual se puede observar que tanto el '''módulo de la tensión''' como la '''densidad''' son '''constantes''' ya que el '''módulo de la elasticidad''' es constante, &amp;lt;math&amp;gt;c^2=1&amp;lt;/math&amp;gt; . Al ser ésta primera ecuación homogénea deducimos que transversalmente no actúa ninguna fuerza densidad espacial y temporal. Se deduce del enunciado anterior que las condiciones de frontera son '''homogéneas''', &amp;lt;math&amp;gt;u(0,t)=0&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;u(10,t)=0&amp;lt;/math&amp;gt; que nos indican que los extremos del cable no describen ningún tipo de movimiento en todo instante t al no estar sometidos a ningun tipo de fuerza. Finalmente, añadimos al sistema las condiciones iniciales, la primera de ellas, &amp;lt;math&amp;gt;u(x,0)=g(x)= 2- |\frac{2}{5}x -2|&amp;lt;/math&amp;gt;, define el '''movimiento descrito por la onda''' en el instante t=0 en cualquier punto del cable; y la segunda, &amp;lt;math&amp;gt;u_t(x,0)=0&amp;lt;/math&amp;gt;, que la onda parte de una '''velocidad inicial nula'''.&lt;br /&gt;
[[Image:DV.png|300px|thumb|right|Deslizamiento vertical del cable. ]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
\begin{cases}&lt;br /&gt;
&lt;br /&gt;
u_{tt}- u_{xx}=0  \  x∈[0,10] \ t&amp;gt;0\\&lt;br /&gt;
u(0,t)=0\\&lt;br /&gt;
u(10,t)=0\\&lt;br /&gt;
u(x,0)= 2- |\frac{2}{5}x -2|\\&lt;br /&gt;
u_t(x,0)=0&lt;br /&gt;
\end{cases}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
En los siguientes apartados se realizaran aproximaciones del sistema expuesto con tres métodos distintos de los que más tarde se hará una comparativa. Para esto último nos ayudaremos del error por lo que necesitaremos la solución analítica.&lt;br /&gt;
Como el problema consta de condiciones de frontera homogéneas, aplicamos directamente el método de separación de variables para su resolución analítica. &lt;br /&gt;
&amp;lt;br/&amp;gt;&lt;br /&gt;
==== Aproximación por el método del trapecio. ====&lt;br /&gt;
El primer método que usaremos será el del Trapecio que consiste en RELLENAR&lt;br /&gt;
{{matlab|codigo= &lt;br /&gt;
%u_tt-u_xx=0&lt;br /&gt;
%u(0,t)=u(l,t)=0&lt;br /&gt;
%u(x,0)=2-abs(0.4x-2)&lt;br /&gt;
%ut(x,0)=0&lt;br /&gt;
clear all&lt;br /&gt;
&lt;br /&gt;
%Datos del problema&lt;br /&gt;
L=10;&lt;br /&gt;
T=40;&lt;br /&gt;
&lt;br /&gt;
%Discretización&lt;br /&gt;
h=0.1;&lt;br /&gt;
N=L/h;&lt;br /&gt;
x=0:h:L;&lt;br /&gt;
xint=h:h:L-h;&lt;br /&gt;
dt=h;&lt;br /&gt;
t=0:dt:T;&lt;br /&gt;
&lt;br /&gt;
%Aprox. de u_xx&lt;br /&gt;
K=2*diag(ones(1,N-1))-diag(ones(1,N-2),-1)-diag(ones(1,N-2),1);&lt;br /&gt;
K=K/h^2;&lt;br /&gt;
F=zeros(N-1,1);&lt;br /&gt;
&lt;br /&gt;
%Posición inicial.&lt;br /&gt;
u0=(2-abs(xint*2/5-2))';&lt;br /&gt;
v0=zeros(N-1,1);&lt;br /&gt;
&lt;br /&gt;
%Aprox. de u_tt&lt;br /&gt;
M=[zeros(N-1),eye(N-1);-K,zeros(N-1)];&lt;br /&gt;
G=[zeros(N-1,1);F];&lt;br /&gt;
&lt;br /&gt;
%Aproximación por el método del Trapecio&lt;br /&gt;
W0=[u0;v0];&lt;br /&gt;
WW=W0;&lt;br /&gt;
sol=zeros(length(t),N+1);&lt;br /&gt;
sol(1,:)=[0,W0(1:N-1)',0];&lt;br /&gt;
for j=1:length(t)-1&lt;br /&gt;
    WW=(eye(2*N-2)-dt/2*M)\(eye(2*N-2)+dt/2*M)*WW;&lt;br /&gt;
    sol(j+1,:)=[0,WW(1:N-1)',0];&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
%Dibujo de la solución&lt;br /&gt;
[xx,tt]=meshgrid(x,t);&lt;br /&gt;
surf(xx,tt,sol);&lt;br /&gt;
xlabel('Desplazamiento horizontal');&lt;br /&gt;
ylabel('Tiempo');&lt;br /&gt;
zlabel('Desplazamiento vertical');}}&lt;br /&gt;
&lt;br /&gt;
[[Image:klklk.jpg|700px|thumb|center|Aproximación por el método del Trapecio.]]&lt;br /&gt;
&lt;br /&gt;
==== Aproximación por el método de Euler. ====&lt;br /&gt;
Se exponen en este apartados dos tipos de aproximaciones de Euler.&lt;br /&gt;
&lt;br /&gt;
Este método se basa en la posibilidad de aproximar una función original mediante rectas tangentes partiendo de un punto dado. Sabiendo que la recta tangente de una función en un punto es la derivada en dicho punto, este método consiste en calcular derivadas de la función en diferentes puntos pertenecientes a ella. Estos puntos serán tomados con la misma distancia a lo largo de la recta, a esta distancia la denominamos paso de discretización. &lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Image:Euler.png|300px|thumb|center|Aproximación de una función por el método de Euler]]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===== Euler Explícito. =====&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
%utt-uxx=0&lt;br /&gt;
%u(0,t)=u(l,t)=0&lt;br /&gt;
%u(x,0)=2-abs(0.4x-2)&lt;br /&gt;
%ut(x,0)=0&lt;br /&gt;
clear all&lt;br /&gt;
L=10;&lt;br /&gt;
T=40;&lt;br /&gt;
h=0.1;&lt;br /&gt;
N=L/h;&lt;br /&gt;
x=0:h:L;&lt;br /&gt;
xint=h:h:L-h;&lt;br /&gt;
dt=h;&lt;br /&gt;
t=0:dt:T;&lt;br /&gt;
K=2*diag(ones(1,N-1))-diag(ones(1,N-2),-1)-diag(ones(1,N-2),1);&lt;br /&gt;
K=K/h^2;&lt;br /&gt;
F=zeros(N-1,1);&lt;br /&gt;
u0=2-abs((xint*2/5-2))';&lt;br /&gt;
v0=zeros(N-1,1);&lt;br /&gt;
M=[zeros(N-1),eye(N-1);-K,zeros(N-1)];&lt;br /&gt;
G=[zeros(N-1,1);F];&lt;br /&gt;
W0=[u0;v0];&lt;br /&gt;
WW=W0;&lt;br /&gt;
sol=zeros(length(t),N+1);&lt;br /&gt;
sol(1,:)=[0,W0(1:N-1)',0];&lt;br /&gt;
for j=1:length(t)-1&lt;br /&gt;
    WW=WW+dt*M*WW;&lt;br /&gt;
    sol(j+1,:)=[0,WW(1:N-1)',0];&lt;br /&gt;
end&lt;br /&gt;
[xx,tt]=meshgrid(x,t);&lt;br /&gt;
surf(xx,tt,sol);}}&lt;br /&gt;
===== Euler Modificado. =====&lt;br /&gt;
&lt;br /&gt;
ELEGIR UNA DE LAS DOS DEFINICIONES &lt;br /&gt;
&lt;br /&gt;
Este método se basa en la misma idea del método anterior, pero hace un refinamiento en la aproximación, tomando un promedio entre las pendientes.&lt;br /&gt;
&lt;br /&gt;
El método de Euler modificado toma como base que es más razonable pensar que obtendríamos un valor más preciso si aproximáramos tomando un promedio entre las pendientes, en vez de tomarla igual a su valor como en el método anterior de Euler explícito.&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
%utt-uxx=0&lt;br /&gt;
%u(0,t)=u(l,t)=0&lt;br /&gt;
%u(x,0)=2-abs(0.4x-2)&lt;br /&gt;
%ut(x,0)=0&lt;br /&gt;
clear all&lt;br /&gt;
L=10;&lt;br /&gt;
T=40;&lt;br /&gt;
h=0.1;&lt;br /&gt;
N=L/h;&lt;br /&gt;
x=0:h:L;&lt;br /&gt;
xint=h:h:L-h;&lt;br /&gt;
dt=h;&lt;br /&gt;
t=0:dt:T;&lt;br /&gt;
K=2*diag(ones(1,N-1))-diag(ones(1,N-2),-1)-diag(ones(1,N-2),1);&lt;br /&gt;
K=K/h^2;&lt;br /&gt;
F=zeros(N-1,1);&lt;br /&gt;
u0=2-abs((xint*2/5-2))';&lt;br /&gt;
v0=zeros(N-1,1);&lt;br /&gt;
M=[zeros(N-1),eye(N-1);-K,zeros(N-1)];&lt;br /&gt;
G=[zeros(N-1,1);F];&lt;br /&gt;
W0=[u0;v0];&lt;br /&gt;
WW=W0;&lt;br /&gt;
sol=zeros(length(t),N+1);&lt;br /&gt;
sol(1,:)=[0,W0(1:N-1)',0];&lt;br /&gt;
for j=1:length(t)-1&lt;br /&gt;
    k1=M*WW;&lt;br /&gt;
    WW=(eye(2*N-2)+dt*M/2)*WW+(dt/2)*k1+(dt^2)*M*k1/2;&lt;br /&gt;
    sol(j+1,:)=[0,WW(1:N-1)',0];&lt;br /&gt;
end&lt;br /&gt;
[xx,tt]=meshgrid(x,t);&lt;br /&gt;
surf(xx,tt,sol);}}&lt;br /&gt;
&lt;br /&gt;
==== Aproximación por Fourier con diferentes términos de series. ====&lt;br /&gt;
En este apartado se ofrece una aproximación alternativa a las anteriores. Se muestran '''cinco iteraciones''' distintas del '''método del Fourier''' que se compararan entre sí y con los métodos anteriores, Trapecio y Euler.&lt;br /&gt;
&amp;lt;br/&amp;gt;&lt;br /&gt;
Puesto que la realización de este método es la misma sea cual sea el número de serie elegido, se han expuesto únicamente dos casos de Q para una mayor claridad del programa.&lt;br /&gt;
{{matlab|codigo= %utt-uxx=0&lt;br /&gt;
%u(0,t)=u(l,t)=0&lt;br /&gt;
%u(x,0)=2-abs(0.4x-2)&lt;br /&gt;
%ut(x,0)=0&lt;br /&gt;
&lt;br /&gt;
%1 iteracion&lt;br /&gt;
clear all&lt;br /&gt;
L=10;&lt;br /&gt;
T=40;&lt;br /&gt;
Q=1;&lt;br /&gt;
h=0.1;&lt;br /&gt;
N=L/h;&lt;br /&gt;
x=0:h:L;&lt;br /&gt;
dt=h;&lt;br /&gt;
t=0:dt:T;&lt;br /&gt;
sol=zeros(length(t),N+1);&lt;br /&gt;
for k=1:Q&lt;br /&gt;
    phi=sin(k/L*pi*x);&lt;br /&gt;
    a=trapz(x,(2-abs(2/5*x-2)).*phi)/(trapz(x,phi.^2));&lt;br /&gt;
    b=0;&lt;br /&gt;
    T=a.*cos(k*pi*t/L);&lt;br /&gt;
    sol=sol+T'*phi;&lt;br /&gt;
end&lt;br /&gt;
[xx,tt]=meshgrid(x,t);&lt;br /&gt;
figure (1)&lt;br /&gt;
surf(xx,tt,sol)&lt;br /&gt;
xlabel('Desplazamiento horizontal');&lt;br /&gt;
ylabel('Tiempo');&lt;br /&gt;
zlabel('Desplazamiento vertical');&lt;br /&gt;
&lt;br /&gt;
%3 iteracion&lt;br /&gt;
clear all&lt;br /&gt;
L=10;&lt;br /&gt;
T=40;&lt;br /&gt;
Q=3;&lt;br /&gt;
h=0.1;&lt;br /&gt;
N=L/h;&lt;br /&gt;
x=0:h:L;&lt;br /&gt;
dt=h;&lt;br /&gt;
t=0:dt:T;&lt;br /&gt;
sol=zeros(length(t),N+1);&lt;br /&gt;
for k=1:Q&lt;br /&gt;
    phi=sin(k/L*pi*x);&lt;br /&gt;
    a=trapz(x,(2-abs(2/5*x-2)).*phi)/(trapz(x,phi.^2));&lt;br /&gt;
    b=0;&lt;br /&gt;
    T=a.*cos(k*pi*t/L);&lt;br /&gt;
    sol=sol+T'*phi;&lt;br /&gt;
end&lt;br /&gt;
[xx,tt]=meshgrid(x,t);&lt;br /&gt;
figure (2)&lt;br /&gt;
surf(xx,tt,sol)&lt;br /&gt;
xlabel('Desplazamiento horizontal');&lt;br /&gt;
ylabel('Tiempo');&lt;br /&gt;
zlabel('Desplazamiento vertical');}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br/&amp;gt;&lt;br /&gt;
[[Image:81tF2.jpg|525px|thumb|left|Aproximación por el método del Trapecio con un término de serie.]]&lt;br /&gt;
[[Image:82tF.jpg|525px|thumb|center|Aproximación por el método del Trapecio con tres términos de serie.]]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br/&amp;gt; &lt;br /&gt;
&lt;br /&gt;
[[Image:83tF.jpg|525px|thumb|left|Aproximación por el método del Trapecio con cinco términos de serie.]]&lt;br /&gt;
[[Image:84tF.jpg|525px|thumb|center|Aproximación por el método del Trapecio con diez términos de serie.]]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Image:85tF.jpg|525px|thumb|center|Aproximación por el método del Trapecio con veinte términos de serie.]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Energía del Cable. ==&lt;br /&gt;
&lt;br /&gt;
La energía del cable que viene definida por la función: &lt;br /&gt;
\begin{equation}&lt;br /&gt;
E(t) = \int_{0}^{L} (u_{t}^{2}(x,t)+ u_{x}^{2}(x,t)) \cdot dx&lt;br /&gt;
\end{equation}&lt;br /&gt;
&lt;br /&gt;
El método utilizado en el desarrollo numérico de está expresión es el '''método de diferencias finitas'''&lt;br /&gt;
(Funciona calculando de manera aproximada las soluciones a las ecuaciones diferenciales usando ecuaciones diferenciales finitas para aproximar derivadas.).&lt;br /&gt;
&lt;br /&gt;
'''FUNCIÓN:'''&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
function v = deriva(x,y,t)&lt;br /&gt;
&lt;br /&gt;
n = length(x);&lt;br /&gt;
del=zeros(1,n);&lt;br /&gt;
&lt;br /&gt;
if t==1&lt;br /&gt;
    &lt;br /&gt;
    i=1;&lt;br /&gt;
    del(1)=(y(i)-y(i+1))/(-x(i)+x(i+1));&lt;br /&gt;
&lt;br /&gt;
    for i=2:n&lt;br /&gt;
    del(i)=(y(i)-y(i-1))/(x(i)-x(i-1));&lt;br /&gt;
    end &lt;br /&gt;
    &lt;br /&gt;
elseif t==-1&lt;br /&gt;
&lt;br /&gt;
    for i=1:n-1&lt;br /&gt;
    del(i)=(y(i)-y(i+1))/(x(i)-x(i+1));&lt;br /&gt;
    end &lt;br /&gt;
    &lt;br /&gt;
    i=n;&lt;br /&gt;
    del(i)=(y(i)-y(i-1))/(x(i)-x(i-1));&lt;br /&gt;
    &lt;br /&gt;
elseif t==0&lt;br /&gt;
    &lt;br /&gt;
    i=1;&lt;br /&gt;
    del(1)=(y(i)-y(i+1))/(+x(i)-x(i+1));&lt;br /&gt;
    &lt;br /&gt;
    for i=2:n-1&lt;br /&gt;
    del(i)=(y(i+1)-y(i-1))/(2*(x(i)-x(i-1)));&lt;br /&gt;
    end &lt;br /&gt;
    &lt;br /&gt;
    i=n;&lt;br /&gt;
    del(n)=(y(i)-y(i-1))/(x(i)-x(i-1));  &lt;br /&gt;
    &lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
v=del;&lt;br /&gt;
&lt;br /&gt;
end&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''PROGRAMA:'''&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
clc;clear all;&lt;br /&gt;
L=10;dx=0.1;N=L/dx;&lt;br /&gt;
x=dx:dx:L-dx;&lt;br /&gt;
xtot=0:dx:L;&lt;br /&gt;
T=40;dt=0.1;t=0:dt:T;&lt;br /&gt;
K=2*diag(ones(1,N-1))-diag(ones(1,N-2),1)-diag(ones(1,N-2),-1);&lt;br /&gt;
K=(1/dx^2)*K;&lt;br /&gt;
U=(2-abs((x*2/5-2)))';&lt;br /&gt;
V=(0*x)';&lt;br /&gt;
sol(1,:)=[0 U' 0];&lt;br /&gt;
for i=1:length(t)-1;&lt;br /&gt;
    U=U+dt*V;&lt;br /&gt;
    V=V-dt*K*U;&lt;br /&gt;
    sol(i+1,:)=[0 U' 0];&lt;br /&gt;
end&lt;br /&gt;
%DERIVAMOS LA SOLUCION EN x Y EN t:&lt;br /&gt;
dsol_dx=ones(size(sol));&lt;br /&gt;
for i=1:length(t)&lt;br /&gt;
    dsol_dx(i,:)=deriva(sol(i,:),xtot,0);&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
dsol_dt=ones(size(sol));&lt;br /&gt;
for i=1:length(xtot)&lt;br /&gt;
    dsol_dt(:,i)=deriva(sol(:,i),t,1); &lt;br /&gt;
end&lt;br /&gt;
%SUMAMOS LAS DERIVADAS AL CUADRADO E INTEGRAMOS:&lt;br /&gt;
dE=zeros(1,size(t,1));&lt;br /&gt;
for i=1:length(xtot)&lt;br /&gt;
    dE=dE+(dsol_dt(i,:).^2+dsol_dx(i,:).^2)*dx;&lt;br /&gt;
end&lt;br /&gt;
xtot=0:dx:L;&lt;br /&gt;
[xx,tt]=meshgrid(xtot,t);&lt;br /&gt;
figure(1)&lt;br /&gt;
surf(xx,tt,dsol_dx);&lt;br /&gt;
figure(2)&lt;br /&gt;
surf(xx,tt,dsol_dt);&lt;br /&gt;
plot(dE,t)&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
El resultado habría de ser una gráfica que representase la evolución de la energía de la cuerda frente al transcurso del tiempo. No obstante, en nuestra resolución aparece una gráfica en blanco que ajudicamos o a un posible error en el código, o que podemos interpretar como que la energía tiende a infinito.&lt;br /&gt;
&lt;br /&gt;
== Aplicaciones. ==&lt;br /&gt;
&lt;br /&gt;
==== Sumersión en un medio viscoso. ====&lt;br /&gt;
&lt;br /&gt;
Suponemos ahora la inmersión del cable en una medio viscoso. Este medio viscoso produce un amortiguamiento en el movimiento del cable, con lo que la anterior ecuación diferencial se convertiría en &lt;br /&gt;
\begin{equation}&lt;br /&gt;
u_{tt}-u_{xx}+au_{t}=0&lt;br /&gt;
\end{equation} &lt;br /&gt;
, siendo '''&amp;lt;math&amp;gt; a  &amp;lt;/math&amp;gt;''' una constante de amortiguamiento propia del medio viscoso.&lt;br /&gt;
Puesto que la función '''&amp;lt;math&amp;gt; u(x,t)  &amp;lt;/math&amp;gt;''' se ve afectada ahora por el medio viscoso, y más directamente, por la constante '''&amp;lt;math&amp;gt; a  &amp;lt;/math&amp;gt;''' que actúa en su nombre, la energía del cable ,que se expresaba como una integral en función de '''&amp;lt;math&amp;gt; u(x,t)  &amp;lt;/math&amp;gt;''' también se va a ver afectada:&lt;br /&gt;
\begin{equation}&lt;br /&gt;
E(t) = \int_{0}^{L} (u_{t}^{2}(x,t)+ u_{x}^{2}(x,t)) \cdot dx&lt;br /&gt;
\end{equation}&lt;br /&gt;
&lt;br /&gt;
El obetivo del siguiente código será hallar una representación de la evolución de la energía en función del tiempo a raíz de la modificación de la función '''&amp;lt;math&amp;gt; u(x,t)  &amp;lt;/math&amp;gt;'''. Para ello asignaremos distintos valores a la constante '''&amp;lt;math&amp;gt; a  &amp;lt;/math&amp;gt;'''. Éstos van a ser:&lt;br /&gt;
'''&amp;lt;math&amp;gt; a=0  &amp;lt;/math&amp;gt;''' (la energía para este valor resultará igual que la hallada en el apartado anterior)&lt;br /&gt;
'''&amp;lt;math&amp;gt; a=1  &amp;lt;/math&amp;gt;'''&lt;br /&gt;
'''&amp;lt;math&amp;gt; a=4  &amp;lt;/math&amp;gt;'''&lt;br /&gt;
'''&amp;lt;math&amp;gt; a=10  &amp;lt;/math&amp;gt;'''&lt;br /&gt;
''&amp;lt;math&amp;gt; a=100  &amp;lt;/math&amp;gt;'''&lt;br /&gt;
&lt;br /&gt;
El procedimiento numérico volverá a seguir el método de '''diferencias finitas''':&lt;br /&gt;
&lt;br /&gt;
'''PROGRAMA:'''&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
clc;clear all;close all;&lt;br /&gt;
%Datos&lt;br /&gt;
dx=0.1;L=10;&lt;br /&gt;
dt=0.001;NT=40;&lt;br /&gt;
A=[0,1,4,10,100];&lt;br /&gt;
x=0:dx:L;&lt;br /&gt;
t=0:dt:NT;&lt;br /&gt;
ENE=zeros(5,length(t));&lt;br /&gt;
&lt;br /&gt;
%Condición de contorno: U(0,t)=U(L,t)=0;&lt;br /&gt;
&lt;br /&gt;
for k=1:5&lt;br /&gt;
&lt;br /&gt;
%Vector solución y derivada temporal de la solución&lt;br /&gt;
%t=0&amp;lt;&amp;gt;T(1) es donde se guardan las condiciones iniciales&lt;br /&gt;
&lt;br /&gt;
U=zeros(length(t),length(x));&lt;br /&gt;
Dt_U=zeros(length(t),length(x));&lt;br /&gt;
Dx_U=zeros(length(t),length(x));    &lt;br /&gt;
&lt;br /&gt;
%Condición inicial: Estiramos 2 m del centro&lt;br /&gt;
%Modelizado como dos rectas antisimétricas que se cortan en x=5 y&lt;br /&gt;
%sujetas en x=0 y x=L.&lt;br /&gt;
&lt;br /&gt;
U(1,:)=2*sin(x*pi/L);&lt;br /&gt;
Dt_U(1,:)=zeros(1,length(x))';&lt;br /&gt;
D2t_U=Ecuacion5(U(1,:),x,-1);&lt;br /&gt;
&lt;br /&gt;
%Inicio del esquema numérico&lt;br /&gt;
%empieza en 2 ya que el 1 es la cond. inicial&lt;br /&gt;
&lt;br /&gt;
%ESQUEMA NEWMARK&lt;br /&gt;
&lt;br /&gt;
 for i=2:length(t)&lt;br /&gt;
    iter=[k,i]&lt;br /&gt;
    Ua=U(i-1,:);&lt;br /&gt;
    Dt_Ua=Dt_U(i-1,:);&lt;br /&gt;
    D2t_Ua=D2t_U;&lt;br /&gt;
    %Derivada segunda respecto del tiempo en el instante t, se obtiene de&lt;br /&gt;
    %eq. diferencial u_tt=f(x,u,u_x,u_xx)&lt;br /&gt;
    D2t_U=Ecuacion5(U(i-1,:),x,t(i))-A(k)*Dt_Ua;&lt;br /&gt;
    %Derivada primera&lt;br /&gt;
    Dt_U(i,:)=Dt_Ua+0.5*dt*(D2t_Ua+D2t_U);&lt;br /&gt;
    %Ecuacion&lt;br /&gt;
    U(i,:) = Ua+Dt_Ua*dt+(1/6)*(D2t_Ua+D2t_U)*dt^2;&lt;br /&gt;
 end&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 %ENERGIA&lt;br /&gt;
 for i=1:length(t)&lt;br /&gt;
    Dx_U(i,:)=deriva(x,U(i,:),0);&lt;br /&gt;
 end&lt;br /&gt;
dE=zeros(length(t),1);&lt;br /&gt;
for i=1:length(x)&lt;br /&gt;
    dE=dE+(Dt_U(:,i).^2+Dx_U(:,i).^2)*dx;&lt;br /&gt;
end&lt;br /&gt;
 ENE(k,:)=dE;&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
 figure(1)&lt;br /&gt;
 hold on&lt;br /&gt;
 grid&lt;br /&gt;
 aa=find(x==L/4);&lt;br /&gt;
 ab=find(x==3*L/4);&lt;br /&gt;
 legend('A=0','A=1','A=4','A=10','A=100');&lt;br /&gt;
 plot(t,ENE(1,:),t,ENE(2,:),t,ENE(3,:),t,ENE(4,:),t,ENE(5,:));&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''FUNCIONES:'''&lt;br /&gt;
DERIVA:&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
function v = deriva(x,y,t)&lt;br /&gt;
n = length(x);&lt;br /&gt;
del=zeros(1,n);&lt;br /&gt;
if t==1&lt;br /&gt;
    i=1;&lt;br /&gt;
    del(1)=(y(i)-y(i+1))/(-x(i)+x(i+1));&lt;br /&gt;
    for i=2:n&lt;br /&gt;
    del(i)=(y(i)-y(i-1))/(x(i)-x(i-1));&lt;br /&gt;
    end &lt;br /&gt;
elseif t==-1&lt;br /&gt;
    for i=1:n-1&lt;br /&gt;
    del(i)=(y(i)-y(i+1))/(x(i)-x(i+1));&lt;br /&gt;
    end &lt;br /&gt;
    i=n;&lt;br /&gt;
    del(i)=(y(i)-y(i-1))/(x(i)-x(i-1));&lt;br /&gt;
elseif t==0&lt;br /&gt;
    i=1;&lt;br /&gt;
    del(1)=(y(i)-y(i+1))/(+x(i)-x(i+1));&lt;br /&gt;
    for i=2:n-1&lt;br /&gt;
    del(i)=(y(i+1)-y(i-1))/(2*(x(i)-x(i-1)));&lt;br /&gt;
    end &lt;br /&gt;
    i=n;&lt;br /&gt;
    del(n)=(y(i)-y(i-1))/(x(i)-x(i-1));  &lt;br /&gt;
end&lt;br /&gt;
v=del;&lt;br /&gt;
end&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
'''ECUACIÓN 5:'''&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
function [ V ] = Ecuacion5( u,x,t )&lt;br /&gt;
%se guarda aquí la ecuación diferencial del tipo u_tt=f(x,u,u_x,u_xx)&lt;br /&gt;
%INCLUIDAS LAS CC AQUÍ&lt;br /&gt;
%PARA u_tt=u_xx&lt;br /&gt;
%CC: u(0,t)=u(L,t)=0;&lt;br /&gt;
&lt;br /&gt;
Ax=x(2)-x(1);&lt;br /&gt;
n=length(u);&lt;br /&gt;
V=zeros(1,n);&lt;br /&gt;
&lt;br /&gt;
%Las condiciones de contorno vienen en x(1)=0 y x(Nx)=L&lt;br /&gt;
u(1)=0;&lt;br /&gt;
&lt;br /&gt;
if(t==-1)&lt;br /&gt;
    u(n)=0;&lt;br /&gt;
else&lt;br /&gt;
    u(n)=0;&lt;br /&gt;
    %u(n)=sin(2*pi*F0*t);&lt;br /&gt;
    %u(n)=(1/(b*Ax-1))*u(n-1);&lt;br /&gt;
end&lt;br /&gt;
for i=2:n-1&lt;br /&gt;
    &lt;br /&gt;
    V(i)=(1/Ax^2)*(u(i+1)-2*u(i)+u(i-1));&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
i=1;&lt;br /&gt;
V(i)=(1/Ax^2)*(u(i+2)-2*u(i+1));&lt;br /&gt;
i=n;&lt;br /&gt;
V(i)=(1/Ax^2)*(u(i)-2*u(i-1)+u(i-2));&lt;br /&gt;
end&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
La gráfica buscada es:&lt;br /&gt;
[[Archivo:Graficadelaenergiaenunmedioviscoso.png|700px|thumb|centre|Gráfica de la energía(ordenadas) del cable respecto del tiempo (Abcisas).]]&lt;br /&gt;
En la gráfica se aprecian cuatro curvas de distintos colores correspondientes a '''&amp;lt;math&amp;gt; a=0  &amp;lt;/math&amp;gt;''','''&amp;lt;math&amp;gt; a=1  &amp;lt;/math&amp;gt;''','''&amp;lt;math&amp;gt; a=4  &amp;lt;/math&amp;gt;''','''&amp;lt;math&amp;gt; a=10  &amp;lt;/math&amp;gt;''',''&amp;lt;math&amp;gt; a=100  &amp;lt;/math&amp;gt;'''.&lt;br /&gt;
&lt;br /&gt;
Como podemos apreciar el valor de la energía disminuye a medida que aumentamos el valor de &amp;quot;a&amp;quot;. Esto es debido a que &amp;quot;a&amp;quot; define el coeficiente de amortiguamiento del líquido en el cual se encuentra la cuerda. Luego, dicha disminución de energía se produce por la disipación en el medio de gran parte de la energía inicial.&lt;br /&gt;
&lt;br /&gt;
==== Sujeción a una estructura de vibración periódica. ====&lt;br /&gt;
&lt;br /&gt;
En este caso supondremos que el extremo derecho que sujeta el cable está sometido a una vibración periódica de frecuencia  &amp;lt;math&amp;gt; F_0 &amp;lt;/math&amp;gt; [Herzios]. Al haber una vibración externa que afecta directamente al cable la expresión de su movimiento y, por consecuencia, de su energía, se va a ver modificada. Nosotros incluiremos esta modificación en la función &amp;lt;math&amp;gt; f(t) &amp;lt;/math&amp;gt; de problema de valor inicial que venimos tratando. Esta función va a pasar a ser: &lt;br /&gt;
\begin{equation}&lt;br /&gt;
f(t)= sin(2 \pi F_0t)&lt;br /&gt;
\end{equation}&lt;br /&gt;
&lt;br /&gt;
El objetivo será el de ver cómo afecta esta alteración en el desarrollo de la energía del cable frente al tiempo.&lt;br /&gt;
Para nuestro cálculo numérico especificaremos para las siguientes situaciones:&lt;br /&gt;
En primer lugar, para: &amp;lt;math&amp;gt; F_0= \frac{1}{L} + 0,01 &amp;lt;/math&amp;gt;&lt;br /&gt;
Después,para: &amp;lt;math&amp;gt; F_0= \frac{1}{L} - 0,01 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Y para finalizar, lo estudiaremos en un intervalo de tiempo de '''t=0''' hasta '''t=60''' : &amp;lt;math&amp;gt;t \in (0,60)&amp;lt;/math&amp;gt; [segundos].&lt;br /&gt;
&lt;br /&gt;
El código matemático para matlab / octave:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''PROGRAMA:'''&lt;br /&gt;
{{matlab|codigo= &lt;br /&gt;
clc;clear all;close all;&lt;br /&gt;
&lt;br /&gt;
%Datos&lt;br /&gt;
&lt;br /&gt;
dx=0.1;L=10;dt=0.0001;NT=60;&lt;br /&gt;
A=[0,1,4,10,100];&lt;br /&gt;
x=0:dx:L;t=0:dt:NT;&lt;br /&gt;
ENE=zeros(5,length(t));&lt;br /&gt;
&lt;br /&gt;
%Condición de contorno: U(0,t)=U(L,t)=0;&lt;br /&gt;
for k=1&lt;br /&gt;
%Vector solución y derivada temporal de la solución&lt;br /&gt;
%t=0&amp;lt;&amp;gt;T(1) es donde se guardan las condiciones iniciales&lt;br /&gt;
&lt;br /&gt;
U=zeros(length(t),length(x));&lt;br /&gt;
Dt_U=zeros(length(t),length(x));&lt;br /&gt;
Dx_U=zeros(length(t),length(x));&lt;br /&gt;
&lt;br /&gt;
%Condición inicial: Estiramos 2 m del centro&lt;br /&gt;
%Modelizado como dos rectas antisimétricas que se cortan en x=5 y&lt;br /&gt;
%sujetas en x=0 y x=L.&lt;br /&gt;
&lt;br /&gt;
U(1,:)=2*sin(x*pi/L);&lt;br /&gt;
Dt_U(1,:)=zeros(1,length(x))';&lt;br /&gt;
D2t_U=Ecuacion6(U(1,:),x,-1);&lt;br /&gt;
&lt;br /&gt;
%Inicio del esquema numérico&lt;br /&gt;
%empieza en 2 ya que el 1 es la cond. inicial&lt;br /&gt;
&lt;br /&gt;
%ESQUEMA NEWMARK&lt;br /&gt;
&lt;br /&gt;
 for i=2:length(t)&lt;br /&gt;
    iter=[k,i]&lt;br /&gt;
    Ua=U(i-1,:);&lt;br /&gt;
    Dt_Ua=Dt_U(i-1,:);&lt;br /&gt;
    D2t_Ua=D2t_U;&lt;br /&gt;
    %Derivada segunda respecto del tiempo en el instante t, se obtiene de&lt;br /&gt;
    %eq. diferencial u_tt=f(x,u,u_x,u_xx)&lt;br /&gt;
    D2t_U=Ecuacion6(U(i-1,:),x,t(i))-A(k)*Dt_Ua;&lt;br /&gt;
    %Derivada primera&lt;br /&gt;
    Dt_U(i,:)=Dt_Ua+0.5*dt*(D2t_Ua+D2t_U);&lt;br /&gt;
    %Ecuacion&lt;br /&gt;
    U(i,:) = Ua+Dt_Ua*dt+(1/6)*(D2t_Ua+D2t_U)*dt^2;&lt;br /&gt;
 end&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 %ENERGIA&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 for i=1:length(t)&lt;br /&gt;
    Dx_U(i,:)=deriva(x,U(i,:),0);&lt;br /&gt;
 end&lt;br /&gt;
dE=zeros(length(t),1);&lt;br /&gt;
for i=1:length(x)&lt;br /&gt;
    dE=dE+(Dt_U(:,i).^2+Dx_U(:,i).^2)*dx;&lt;br /&gt;
end&lt;br /&gt;
 ENE(k,:)=dE;&lt;br /&gt;
end&lt;br /&gt;
 figure(1)&lt;br /&gt;
 hold on&lt;br /&gt;
 grid&lt;br /&gt;
 aa=find(x==L/4);&lt;br /&gt;
 ab=find(x==3*L/4);&lt;br /&gt;
 imagesc(U)&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''FUNCIONES:'''&lt;br /&gt;
&lt;br /&gt;
DERIVA:&lt;br /&gt;
{{matlab|codigo= &lt;br /&gt;
function v = deriva(x,y,t)&lt;br /&gt;
n = length(x);&lt;br /&gt;
del=zeros(1,n);&lt;br /&gt;
if t==1&lt;br /&gt;
    i=1;&lt;br /&gt;
    del(1)=(y(i)-y(i+1))/(-x(i)+x(i+1));&lt;br /&gt;
    for i=2:n&lt;br /&gt;
    del(i)=(y(i)-y(i-1))/(x(i)-x(i-1));&lt;br /&gt;
    end &lt;br /&gt;
elseif t==-1&lt;br /&gt;
    for i=1:n-1&lt;br /&gt;
    del(i)=(y(i)-y(i+1))/(x(i)-x(i+1));&lt;br /&gt;
    end &lt;br /&gt;
    i=n;&lt;br /&gt;
    del(i)=(y(i)-y(i-1))/(x(i)-x(i-1));&lt;br /&gt;
elseif t==0&lt;br /&gt;
    i=1;&lt;br /&gt;
    del(1)=(y(i)-y(i+1))/(+x(i)-x(i+1));&lt;br /&gt;
    for i=2:n-1&lt;br /&gt;
    del(i)=(y(i+1)-y(i-1))/(2*(x(i)-x(i-1)));&lt;br /&gt;
    end &lt;br /&gt;
    i=n;&lt;br /&gt;
    del(n)=(y(i)-y(i-1))/(x(i)-x(i-1));  &lt;br /&gt;
end&lt;br /&gt;
v=del;&lt;br /&gt;
end&lt;br /&gt;
}}&lt;br /&gt;
'''ECUACIÓN 6:'''&lt;br /&gt;
{{matlab|codigo= &lt;br /&gt;
function [ V ] = Ecuacion6( u,x,t )&lt;br /&gt;
&lt;br /&gt;
%se guarda aquí la ecuación diferencial del tipo u_tt=f(x,u,u_x,u_xx)&lt;br /&gt;
%INCLUIDAS LAS CC AQUÍ!&lt;br /&gt;
%PARA u_tt=u_xx&lt;br /&gt;
%CC: u(0,t)=u(L,t)=0;&lt;br /&gt;
&lt;br /&gt;
Ax=x(2)-x(1);&lt;br /&gt;
n=length(u);&lt;br /&gt;
V=zeros(1,n);&lt;br /&gt;
F0=(1/x(n))+0.01;&lt;br /&gt;
b=-2;&lt;br /&gt;
&lt;br /&gt;
%Las condiciones de contorno vienen en x(1)=0 y x(Nx)=L&lt;br /&gt;
&lt;br /&gt;
u(1)=0;&lt;br /&gt;
if(t==-1)&lt;br /&gt;
    u(n)=0;&lt;br /&gt;
else&lt;br /&gt;
    %u(n)=0;&lt;br /&gt;
    u(n)=sin(2*pi*F0*t);&lt;br /&gt;
    %u(n)=(1/(b*Ax-1))*u(n-1);&lt;br /&gt;
end&lt;br /&gt;
for i=2:n-1&lt;br /&gt;
    V(i)=(1/Ax^2)*(u(i+1)-2*u(i)+u(i-1));&lt;br /&gt;
end&lt;br /&gt;
i=1;&lt;br /&gt;
V(i)=(1/Ax^2)*(u(i+2)-2*u(i+1));&lt;br /&gt;
i=n;&lt;br /&gt;
V(i)=(1/Ax^2)*(u(i)-2*u(i-1)+u(i-2));&lt;br /&gt;
end&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
'''function [ V ] = Ecuacion6( u,x,t )'''&lt;br /&gt;
{{matlab|codigo= &lt;br /&gt;
%se guarda aquí la ecuación diferencial del tipo u_tt=f(x,u,u_x,u_xx)&lt;br /&gt;
%INCLUIDAS LAS CC AQUÍ!&lt;br /&gt;
%PARA u_tt=u_xx&lt;br /&gt;
%CC: u(0,t)=u(L,t)=0;&lt;br /&gt;
&lt;br /&gt;
Ax=x(2)-x(1);&lt;br /&gt;
n=length(u);&lt;br /&gt;
V=zeros(1,n);&lt;br /&gt;
F0=(1/x(n))-0.01;&lt;br /&gt;
b=-2;&lt;br /&gt;
&lt;br /&gt;
%Las condiciones de contorno vienen en x(1)=0 y x(Nx)=L&lt;br /&gt;
&lt;br /&gt;
u(1)=0;&lt;br /&gt;
if(t==-1)&lt;br /&gt;
    u(n)=0;&lt;br /&gt;
else&lt;br /&gt;
    %u(n)=0;&lt;br /&gt;
    u(n)=sin(2*pi*F0*t);&lt;br /&gt;
    %u(n)=(1/(b*Ax-1))*u(n-1);&lt;br /&gt;
end&lt;br /&gt;
for i=2:n-1&lt;br /&gt;
    V(i)=(1/Ax^2)*(u(i+1)-2*u(i)+u(i-1));&lt;br /&gt;
end&lt;br /&gt;
i=1;&lt;br /&gt;
V(i)=(1/Ax^2)*(u(i+2)-2*u(i+1));&lt;br /&gt;
i=n;&lt;br /&gt;
V(i)=(1/Ax^2)*(u(i)-2*u(i-1)+u(i-2));&lt;br /&gt;
end&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''function [ V ] = Ecuacion6( u,x,t )'''&lt;br /&gt;
{{matlab|codigo= &lt;br /&gt;
%se guarda aquí la ecuación diferencial del tipo u_tt=f(x,u,u_x,u_xx)&lt;br /&gt;
%INCLUIDAS LAS CC AQUÍ!&lt;br /&gt;
%PARA u_tt=u_xx&lt;br /&gt;
%CC: u(0,t)=u(L,t)=0;&lt;br /&gt;
&lt;br /&gt;
Ax=x(2)-x(1);&lt;br /&gt;
n=length(u);&lt;br /&gt;
V=zeros(1,n);&lt;br /&gt;
F0=(1/x(n));&lt;br /&gt;
b=-2;&lt;br /&gt;
&lt;br /&gt;
%Las condiciones de contorno vienen en x(1)=0 y x(Nx)=L&lt;br /&gt;
&lt;br /&gt;
u(1)=0;&lt;br /&gt;
if(t==-1)&lt;br /&gt;
    u(n)=0;&lt;br /&gt;
else&lt;br /&gt;
    %u(n)=0;&lt;br /&gt;
    u(n)=sin(2*pi*F0*t);&lt;br /&gt;
    %u(n)=(1/(b*Ax-1))*u(n-1);&lt;br /&gt;
end&lt;br /&gt;
for i=2:n-1&lt;br /&gt;
    V(i)=(1/Ax^2)*(u(i+1)-2*u(i)+u(i-1));&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
i=1;&lt;br /&gt;
V(i)=(1/Ax^2)*(u(i+2)-2*u(i+1));&lt;br /&gt;
i=n;&lt;br /&gt;
V(i)=(1/Ax^2)*(u(i)-2*u(i-1)+u(i-2));&lt;br /&gt;
end&lt;br /&gt;
}}&lt;br /&gt;
 &lt;br /&gt;
La gráfica resultante es la siguiente:&lt;br /&gt;
[[Archivo:Graficaestructuraconvibracion.png|650px|thumb|centre|Gráfica en tres dimensiones de la energía de un cable cuyo extremo derecho está sometido a una vibración externa periódica.]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
En dicha gráfica, se puede observar que la forma de la función o la energía se ve alterada por la condición impuesta de tal manera que ésta adquiere una forma también sinusoidal, y que su estabilización dependería del tiempo transcurrido entre vibración y vibración.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==== Sujeción a un aparato que responde a una vibración externa. ====&lt;br /&gt;
&lt;br /&gt;
La siguiente situación que vamos a representar a modelar a través de ecuaciones diferenciales va a ser la siguiente: supondremos que el cable de la anterior situación (que recibía en su extremo derecho una vibración periódica de &amp;lt;math&amp;gt; F_0 &amp;lt;/math&amp;gt; [Herzios])envía una respuesta a la vibración que recibe. Esta situación la vamos a representar como un cambio en la condición de contorno; ésta va a pasar a ser: &amp;lt;math&amp;gt; u_x(L,t)=bu(L,t) &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
El objetivo, de nuevo será representar la evolución de la energía respecto del tiempo y ver si este cambio en el problema se ve reflejado en su representación. &lt;br /&gt;
En el código numérico, no obstante, la situación de &amp;lt;math&amp;gt; u_x(L,t)=bu(L,t) &amp;lt;/math&amp;gt; la vamos a aproximar por la siguiente expresión:&lt;br /&gt;
&amp;lt;math&amp;gt; u_x(L,t)-bu(L,t)  \cong  \frac{u_{N+1}(t)-u_{N-1}(t)}{2h-u_N(t)} &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
En la resolución del problema emplearemos de nuevo la condición inicial de sujetar el cable por el centro y elevarlo 2 m perpendicularmente: &lt;br /&gt;
&amp;lt;math&amp;gt; u(x,0)=g(x)= 2- |\frac{2}{5}x -2| &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Y además obtendremos el resultado para los dos valores siguientes de &amp;lt;math&amp;gt;b&amp;lt;/math&amp;gt; :&lt;br /&gt;
Para &amp;lt;math&amp;gt; b=2 &amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt; b=-2 &amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
El código numérico de matlab/octave es:&lt;br /&gt;
&lt;br /&gt;
'''PROGRAMA:'''&lt;br /&gt;
{{matlab|codigo= &lt;br /&gt;
clc;clear all;close all;&lt;br /&gt;
&lt;br /&gt;
%Datos&lt;br /&gt;
dx=0.1;L=10;dt=0.0001;NT=40;&lt;br /&gt;
A=[0,1,4,10,100];&lt;br /&gt;
x=0:dx:L;t=0:dt:NT;&lt;br /&gt;
ENE=zeros(5,length(t));&lt;br /&gt;
&lt;br /&gt;
%Condición de contorno: U(0,t)=U(L,t)=0;&lt;br /&gt;
for k=1&lt;br /&gt;
&lt;br /&gt;
%Vector solución y derivada temporal de la solución&lt;br /&gt;
%t=0&amp;lt;&amp;gt;T(1) es donde se guardan las condiciones iniciales&lt;br /&gt;
&lt;br /&gt;
U=zeros(length(t),length(x));&lt;br /&gt;
Dt_U=zeros(length(t),length(x));&lt;br /&gt;
Dx_U=zeros(length(t),length(x));    &lt;br /&gt;
&lt;br /&gt;
%Condición inicial: Estiramos 2 m del centro&lt;br /&gt;
%Modelizado como dos rectas antisimétricas que se cortan en x=5 y&lt;br /&gt;
%sujetas en x=0 y x=L.&lt;br /&gt;
&lt;br /&gt;
U(1,:)=2*sin(x*pi/L);&lt;br /&gt;
Dt_U(1,:)=zeros(1,length(x))';&lt;br /&gt;
D2t_U=Ecuacion7(U(1,:),x,-1);&lt;br /&gt;
&lt;br /&gt;
%Inicio del esquema numérico&lt;br /&gt;
%empieza en 2 ya que el 1 es la cond. inicial&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
%ESQUEMA NEWMARK&lt;br /&gt;
 for i=2:length(t)&lt;br /&gt;
    iter=[k,i]&lt;br /&gt;
    Ua=U(i-1,:);&lt;br /&gt;
    Dt_Ua=Dt_U(i-1,:);&lt;br /&gt;
    D2t_Ua=D2t_U;&lt;br /&gt;
&lt;br /&gt;
    %Derivada segunda respecto del tiempo en el instante t, se obtiene de&lt;br /&gt;
    %eq. diferencial u_tt=f(x,u,u_x,u_xx)&lt;br /&gt;
&lt;br /&gt;
    D2t_U=Ecuacion7(U(i-1,:),x,t(i))-A(k)*Dt_Ua;&lt;br /&gt;
&lt;br /&gt;
    %Derivada primera&lt;br /&gt;
    Dt_U(i,:)=Dt_Ua+0.5*dt*(D2t_Ua+D2t_U);&lt;br /&gt;
&lt;br /&gt;
    %Ecuacion&lt;br /&gt;
    U(i,:) = Ua+Dt_Ua*dt+(1/6)*(D2t_Ua+D2t_U)*dt^2;&lt;br /&gt;
 end&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 %ENERGIA&lt;br /&gt;
 for i=1:length(t)&lt;br /&gt;
    Dx_U(i,:)=deriva(x,U(i,:),0);&lt;br /&gt;
 end&lt;br /&gt;
dE=zeros(length(t),1);&lt;br /&gt;
for i=1:length(x)&lt;br /&gt;
    dE=dE+(Dt_U(:,i).^2+Dx_U(:,i).^2)*dx;&lt;br /&gt;
end&lt;br /&gt;
 ENE(k,:)=dE;&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
 figure(1)&lt;br /&gt;
 hold on&lt;br /&gt;
 grid&lt;br /&gt;
 aa=find(x==L/4);&lt;br /&gt;
 ab=find(x==3*L/4);&lt;br /&gt;
 plot(t,ENE(1,:))&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
'''FUNCIONES:'''&lt;br /&gt;
{{matlab|codigo= &lt;br /&gt;
function v = deriva(x,y,t)&lt;br /&gt;
n = length(x);&lt;br /&gt;
del=zeros(1,n);&lt;br /&gt;
if t==1&lt;br /&gt;
    i=1;&lt;br /&gt;
    del(1)=(y(i)-y(i+1))/(-x(i)+x(i+1));&lt;br /&gt;
    for i=2:n&lt;br /&gt;
    del(i)=(y(i)-y(i-1))/(x(i)-x(i-1));&lt;br /&gt;
    end &lt;br /&gt;
elseif t==-1&lt;br /&gt;
    for i=1:n-1&lt;br /&gt;
    del(i)=(y(i)-y(i+1))/(x(i)-x(i+1));&lt;br /&gt;
    end &lt;br /&gt;
    i=n;&lt;br /&gt;
    del(i)=(y(i)-y(i-1))/(x(i)-x(i-1));&lt;br /&gt;
elseif t==0&lt;br /&gt;
    i=1;&lt;br /&gt;
    del(1)=(y(i)-y(i+1))/(+x(i)-x(i+1));&lt;br /&gt;
    for i=2:n-1&lt;br /&gt;
    del(i)=(y(i+1)-y(i-1))/(2*(x(i)-x(i-1)));&lt;br /&gt;
    end &lt;br /&gt;
    i=n;&lt;br /&gt;
    del(n)=(y(i)-y(i-1))/(x(i)-x(i-1));  &lt;br /&gt;
end&lt;br /&gt;
v=del;&lt;br /&gt;
end&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
'''function [ V ] = Ecuacion7( u,x,t )'''&lt;br /&gt;
{{matlab|codigo= &lt;br /&gt;
%se guarda aquí la ecuación diferencial del tipo u_tt=f(x,u,u_x,u_xx)&lt;br /&gt;
%INCLUIDAS LAS CC AQUÍ!&lt;br /&gt;
%PARA u_tt=u_xx&lt;br /&gt;
%CC: u(0,t)=u(L,t)=0;&lt;br /&gt;
&lt;br /&gt;
Ax=x(2)-x(1);&lt;br /&gt;
n=length(u);&lt;br /&gt;
V=zeros(1,n);&lt;br /&gt;
F0=(1/x(n));&lt;br /&gt;
b=2;&lt;br /&gt;
&lt;br /&gt;
%Las condiciones de contorno vienen en x(1)=0 y x(Nx)=L&lt;br /&gt;
u(1)=0;&lt;br /&gt;
if(t==-1)&lt;br /&gt;
    u(n)=0;&lt;br /&gt;
else&lt;br /&gt;
    %u(n)=0;&lt;br /&gt;
    %u(n)=sin(2*pi*F0*t);&lt;br /&gt;
    u(n)=(1/(b*Ax-1))*u(n-1);&lt;br /&gt;
end&lt;br /&gt;
for i=2:n-1&lt;br /&gt;
    V(i)=(1/Ax^2)*(u(i+1)-2*u(i)+u(i-1));&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
i=1;&lt;br /&gt;
V(i)=(1/Ax^2)*(u(i+2)-2*u(i+1));&lt;br /&gt;
i=n;&lt;br /&gt;
V(i)=(1/Ax^2)*(u(i)-2*u(i-1)+u(i-2));&lt;br /&gt;
end&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
'''function [ V ] = Ecuacion7( u,x,t )'''&lt;br /&gt;
{{matlab|codigo= &lt;br /&gt;
%se guarda aquí la ecuación diferencial del tipo u_tt=f(x,u,u_x,u_xx)&lt;br /&gt;
%INCLUIDAS LAS CC AQUÍ!&lt;br /&gt;
%PARA u_tt=u_xx&lt;br /&gt;
%CC: u(0,t)=u(L,t)=0;&lt;br /&gt;
&lt;br /&gt;
Ax=x(2)-x(1);&lt;br /&gt;
n=length(u);&lt;br /&gt;
V=zeros(1,n);&lt;br /&gt;
F0=(1/x(n));&lt;br /&gt;
b=-2;&lt;br /&gt;
&lt;br /&gt;
%Las condiciones de contorno vienen en x(1)=0 y x(Nx)=L&lt;br /&gt;
u(1)=0;&lt;br /&gt;
&lt;br /&gt;
if(t==-1)&lt;br /&gt;
    u(n)=0;&lt;br /&gt;
else&lt;br /&gt;
    %u(n)=0;&lt;br /&gt;
    %u(n)=sin(2*pi*F0*t);&lt;br /&gt;
    u(n)=(1/(b*Ax-1))*u(n-1);&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
for i=2:n-1&lt;br /&gt;
    V(i)=(1/Ax^2)*(u(i+1)-2*u(i)+u(i-1));&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
i=1;&lt;br /&gt;
V(i)=(1/Ax^2)*(u(i+2)-2*u(i+1));&lt;br /&gt;
i=n;&lt;br /&gt;
V(i)=(1/Ax^2)*(u(i)-2*u(i-1)+u(i-2));&lt;br /&gt;
end&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
La imagen resultante es:&lt;br /&gt;
[[Archivo:Energiadelcableenrespuestaavibracionexterna.png|700px|thumb|centre|Gráfica de la energía (ordenadas) de un cable frente al tiempo (abcisas) que recibe una vibración en su extremo derecho y que responde a dicha vibración. ]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
La anterior gráfica muestra el comportamiento de la cuerda como respuesta a la vibración producida en uno de sus extremos así como el movimiento transversal del punto medio al comienzo. Podemos observar el movimiento transversal de cada punto de la cuerda a través de la expresión de la energía, así como que, a medida que transcurre el tiempo, ésta se va estabilizando. La forma de la función recuerda a una función sinusoidal debido a la forma de la condición de contorno impuesta.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Categoría:Ecuaciones Diferentiales]]&lt;br /&gt;
 [[Categoría:ED13/14]]&lt;br /&gt;
 [[Categoría:Trabajos 2013-14]]&lt;/div&gt;</summary>
		<author><name>Lucia Lopez</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Ecuaci%C3%B3n_de_ondas_(grupo_2B)&amp;diff=13038</id>
		<title>Ecuación de ondas (grupo 2B)</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Ecuaci%C3%B3n_de_ondas_(grupo_2B)&amp;diff=13038"/>
				<updated>2014-05-19T20:07:28Z</updated>
		
		<summary type="html">&lt;p&gt;Lucia Lopez: /* Aproximación por el método de Euler. */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{ TrabajoED | Ecuación de ondas. Grupo 2-B| [[:Categoría:Ecuaciones Diferenciales|Ecuaciones Diferenciales]]|[[:Categoría:ED13/14|Curso 2013-14]]| &lt;br /&gt;
Ignacio Díaz-Caneja Camblor&lt;br /&gt;
&lt;br /&gt;
Alberto Fernández Pérez&lt;br /&gt;
&lt;br /&gt;
Adela González Barbado&lt;br /&gt;
&lt;br /&gt;
Lucia López Sánchez&lt;br /&gt;
&lt;br /&gt;
Araceli Martín Candilejo&lt;br /&gt;
&lt;br /&gt;
Diego Solano López&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
== Modelización de los desplazamientos del Cable. ==&lt;br /&gt;
El problema que se tratará a continuación describe una ecuación de '''tipo hiperbólico''', una '''ecuación de ondas'''.&lt;br /&gt;
Consideramos un '''cable de 10 metros''' de longitud '''sujeto por sus extremos'''. Suponiendo que éste tiene una '''sección pequeña''' respecto a su longitud someteremos al cable a pequeñas vibraciones que estudiaremos con una modelización de la ecuación de ondas. &lt;br /&gt;
Se caracteriza al cable de una masa constante por unidad de volumen, es decir, será '''homogéneo'''. Éste, '''flexible''' a la tracción, únicamente ofrece resistencias en su dirección longitudinal, tangenciales, pero no a esfuerzos de flexión o cortes. Se supone, además, que es '''inextensible''' por lo que será lo suficientemente rígido longitudinalmente como para poder despreciar su extensibilidad.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Con esta modelización se estudiarán las '''pequeñas vibraciones''', desplazamientos transversales, a las que es sometido el cable. Para iniciar el movimiento del cable lo sujetaremos por el centro subiéndolo dos metros, lo que nos proporciona una primera condición inicial determinada por la función g(x), y soltándolo con una velocidad nula. &lt;br /&gt;
&lt;br /&gt;
&amp;lt;br/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Obtenemos la ecuación &amp;lt;math&amp;gt;u_{tt}-u_{xx}=0&amp;lt;/math&amp;gt; , de la cual se puede observar que tanto el '''módulo de la tensión''' como la '''densidad''' son '''constantes''' ya que el '''módulo de la elasticidad''' es constante, &amp;lt;math&amp;gt;c^2=1&amp;lt;/math&amp;gt; . Al ser ésta primera ecuación homogénea deducimos que transversalmente no actúa ninguna fuerza densidad espacial y temporal. Se deduce del enunciado anterior que las condiciones de frontera son '''homogéneas''', &amp;lt;math&amp;gt;u(0,t)=0&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;u(10,t)=0&amp;lt;/math&amp;gt; que nos indican que los extremos del cable no describen ningún tipo de movimiento en todo instante t al no estar sometidos a ningun tipo de fuerza. Finalmente, añadimos al sistema las condiciones iniciales, la primera de ellas, &amp;lt;math&amp;gt;u(x,0)=g(x)= 2- |\frac{2}{5}x -2|&amp;lt;/math&amp;gt;, define el '''movimiento descrito por la onda''' en el instante t=0 en cualquier punto del cable; y la segunda, &amp;lt;math&amp;gt;u_t(x,0)=0&amp;lt;/math&amp;gt;, que la onda parte de una '''velocidad inicial nula'''.&lt;br /&gt;
[[Image:DV.png|300px|thumb|right|Deslizamiento vertical del cable. ]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
\begin{cases}&lt;br /&gt;
&lt;br /&gt;
u_{tt}- u_{xx}=0  \  x∈[0,10] \ t&amp;gt;0\\&lt;br /&gt;
u(0,t)=0\\&lt;br /&gt;
u(10,t)=0\\&lt;br /&gt;
u(x,0)= 2- |\frac{2}{5}x -2|\\&lt;br /&gt;
u_t(x,0)=0&lt;br /&gt;
\end{cases}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
En los siguientes apartados se realizaran aproximaciones del sistema expuesto con tres métodos distintos de los que más tarde se hará una comparativa. Para esto último nos ayudaremos del error por lo que necesitaremos la solución analítica.&lt;br /&gt;
Como el problema consta de condiciones de frontera homogéneas, aplicamos directamente el método de separación de variables para su resolución analítica. &lt;br /&gt;
&amp;lt;br/&amp;gt;&lt;br /&gt;
==== Aproximación por el método del trapecio. ====&lt;br /&gt;
El primer método que usaremos será el del Trapecio que consiste en RELLENAR&lt;br /&gt;
{{matlab|codigo= &lt;br /&gt;
%u_tt-u_xx=0&lt;br /&gt;
%u(0,t)=u(l,t)=0&lt;br /&gt;
%u(x,0)=2-abs(0.4x-2)&lt;br /&gt;
%ut(x,0)=0&lt;br /&gt;
clear all&lt;br /&gt;
&lt;br /&gt;
%Datos del problema&lt;br /&gt;
L=10;&lt;br /&gt;
T=40;&lt;br /&gt;
&lt;br /&gt;
%Discretización&lt;br /&gt;
h=0.1;&lt;br /&gt;
N=L/h;&lt;br /&gt;
x=0:h:L;&lt;br /&gt;
xint=h:h:L-h;&lt;br /&gt;
dt=h;&lt;br /&gt;
t=0:dt:T;&lt;br /&gt;
&lt;br /&gt;
%Aprox. de u_xx&lt;br /&gt;
K=2*diag(ones(1,N-1))-diag(ones(1,N-2),-1)-diag(ones(1,N-2),1);&lt;br /&gt;
K=K/h^2;&lt;br /&gt;
F=zeros(N-1,1);&lt;br /&gt;
&lt;br /&gt;
%Posición inicial.&lt;br /&gt;
u0=(2-abs(xint*2/5-2))';&lt;br /&gt;
v0=zeros(N-1,1);&lt;br /&gt;
&lt;br /&gt;
%Aprox. de u_tt&lt;br /&gt;
M=[zeros(N-1),eye(N-1);-K,zeros(N-1)];&lt;br /&gt;
G=[zeros(N-1,1);F];&lt;br /&gt;
&lt;br /&gt;
%Aproximación por el método del Trapecio&lt;br /&gt;
W0=[u0;v0];&lt;br /&gt;
WW=W0;&lt;br /&gt;
sol=zeros(length(t),N+1);&lt;br /&gt;
sol(1,:)=[0,W0(1:N-1)',0];&lt;br /&gt;
for j=1:length(t)-1&lt;br /&gt;
    WW=(eye(2*N-2)-dt/2*M)\(eye(2*N-2)+dt/2*M)*WW;&lt;br /&gt;
    sol(j+1,:)=[0,WW(1:N-1)',0];&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
%Dibujo de la solución&lt;br /&gt;
[xx,tt]=meshgrid(x,t);&lt;br /&gt;
surf(xx,tt,sol);&lt;br /&gt;
xlabel('Desplazamiento horizontal');&lt;br /&gt;
ylabel('Tiempo');&lt;br /&gt;
zlabel('Desplazamiento vertical');}}&lt;br /&gt;
&lt;br /&gt;
[[Image:klklk.jpg|700px|thumb|center|Aproximación por el método del Trapecio.]]&lt;br /&gt;
&lt;br /&gt;
==== Aproximación por el método de Euler. ====&lt;br /&gt;
Se exponen en este apartados dos tipos de aproximaciones de Euler.&lt;br /&gt;
&lt;br /&gt;
Este método se basa en la posibilidad de aproximar una función original mediante rectas tangentes partiendo de un punto dado. Sabiendo que la recta tangente de una función en un punto es la derivada en dicho punto, este método consiste en calcular derivadas de la función en diferentes puntos pertenecientes a ella. Estos puntos serán tomados con la misma distancia a lo largo de la recta, a esta distancia la denominamos paso de discretización. &lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Image:Euler.png|300px|thumb|center|Aproximación de una función por el método de Euler]]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===== Euler Explícito. =====&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
%utt-uxx=0&lt;br /&gt;
%u(0,t)=u(l,t)=0&lt;br /&gt;
%u(x,0)=2-abs(0.4x-2)&lt;br /&gt;
%ut(x,0)=0&lt;br /&gt;
clear all&lt;br /&gt;
L=10;&lt;br /&gt;
T=40;&lt;br /&gt;
h=0.1;&lt;br /&gt;
N=L/h;&lt;br /&gt;
x=0:h:L;&lt;br /&gt;
xint=h:h:L-h;&lt;br /&gt;
dt=h;&lt;br /&gt;
t=0:dt:T;&lt;br /&gt;
K=2*diag(ones(1,N-1))-diag(ones(1,N-2),-1)-diag(ones(1,N-2),1);&lt;br /&gt;
K=K/h^2;&lt;br /&gt;
F=zeros(N-1,1);&lt;br /&gt;
u0=2-abs((xint*2/5-2))';&lt;br /&gt;
v0=zeros(N-1,1);&lt;br /&gt;
M=[zeros(N-1),eye(N-1);-K,zeros(N-1)];&lt;br /&gt;
G=[zeros(N-1,1);F];&lt;br /&gt;
W0=[u0;v0];&lt;br /&gt;
WW=W0;&lt;br /&gt;
sol=zeros(length(t),N+1);&lt;br /&gt;
sol(1,:)=[0,W0(1:N-1)',0];&lt;br /&gt;
for j=1:length(t)-1&lt;br /&gt;
    WW=WW+dt*M*WW;&lt;br /&gt;
    sol(j+1,:)=[0,WW(1:N-1)',0];&lt;br /&gt;
end&lt;br /&gt;
[xx,tt]=meshgrid(x,t);&lt;br /&gt;
surf(xx,tt,sol);}}&lt;br /&gt;
===== Euler Modificado. =====&lt;br /&gt;
Este método se basa en la misma idea del método anterior, pero hace un refinamiento en la aproximación, tomando un promedio entre las pendientes.&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
%utt-uxx=0&lt;br /&gt;
%u(0,t)=u(l,t)=0&lt;br /&gt;
%u(x,0)=2-abs(0.4x-2)&lt;br /&gt;
%ut(x,0)=0&lt;br /&gt;
clear all&lt;br /&gt;
L=10;&lt;br /&gt;
T=40;&lt;br /&gt;
h=0.1;&lt;br /&gt;
N=L/h;&lt;br /&gt;
x=0:h:L;&lt;br /&gt;
xint=h:h:L-h;&lt;br /&gt;
dt=h;&lt;br /&gt;
t=0:dt:T;&lt;br /&gt;
K=2*diag(ones(1,N-1))-diag(ones(1,N-2),-1)-diag(ones(1,N-2),1);&lt;br /&gt;
K=K/h^2;&lt;br /&gt;
F=zeros(N-1,1);&lt;br /&gt;
u0=2-abs((xint*2/5-2))';&lt;br /&gt;
v0=zeros(N-1,1);&lt;br /&gt;
M=[zeros(N-1),eye(N-1);-K,zeros(N-1)];&lt;br /&gt;
G=[zeros(N-1,1);F];&lt;br /&gt;
W0=[u0;v0];&lt;br /&gt;
WW=W0;&lt;br /&gt;
sol=zeros(length(t),N+1);&lt;br /&gt;
sol(1,:)=[0,W0(1:N-1)',0];&lt;br /&gt;
for j=1:length(t)-1&lt;br /&gt;
    k1=M*WW;&lt;br /&gt;
    WW=(eye(2*N-2)+dt*M/2)*WW+(dt/2)*k1+(dt^2)*M*k1/2;&lt;br /&gt;
    sol(j+1,:)=[0,WW(1:N-1)',0];&lt;br /&gt;
end&lt;br /&gt;
[xx,tt]=meshgrid(x,t);&lt;br /&gt;
surf(xx,tt,sol);}}&lt;br /&gt;
&lt;br /&gt;
==== Aproximación por Fourier con diferentes términos de series. ====&lt;br /&gt;
En este apartado se ofrece una aproximación alternativa a las anteriores. Se muestran '''cinco iteraciones''' distintas del '''método del Fourier''' que se compararan entre sí y con los métodos anteriores, Trapecio y Euler.&lt;br /&gt;
&amp;lt;br/&amp;gt;&lt;br /&gt;
Puesto que la realización de este método es la misma sea cual sea el número de serie elegido, se han expuesto únicamente dos casos de Q para una mayor claridad del programa.&lt;br /&gt;
{{matlab|codigo= %utt-uxx=0&lt;br /&gt;
%u(0,t)=u(l,t)=0&lt;br /&gt;
%u(x,0)=2-abs(0.4x-2)&lt;br /&gt;
%ut(x,0)=0&lt;br /&gt;
&lt;br /&gt;
%1 iteracion&lt;br /&gt;
clear all&lt;br /&gt;
L=10;&lt;br /&gt;
T=40;&lt;br /&gt;
Q=1;&lt;br /&gt;
h=0.1;&lt;br /&gt;
N=L/h;&lt;br /&gt;
x=0:h:L;&lt;br /&gt;
dt=h;&lt;br /&gt;
t=0:dt:T;&lt;br /&gt;
sol=zeros(length(t),N+1);&lt;br /&gt;
for k=1:Q&lt;br /&gt;
    phi=sin(k/L*pi*x);&lt;br /&gt;
    a=trapz(x,(2-abs(2/5*x-2)).*phi)/(trapz(x,phi.^2));&lt;br /&gt;
    b=0;&lt;br /&gt;
    T=a.*cos(k*pi*t/L);&lt;br /&gt;
    sol=sol+T'*phi;&lt;br /&gt;
end&lt;br /&gt;
[xx,tt]=meshgrid(x,t);&lt;br /&gt;
figure (1)&lt;br /&gt;
surf(xx,tt,sol)&lt;br /&gt;
xlabel('Desplazamiento horizontal');&lt;br /&gt;
ylabel('Tiempo');&lt;br /&gt;
zlabel('Desplazamiento vertical');&lt;br /&gt;
&lt;br /&gt;
%3 iteracion&lt;br /&gt;
clear all&lt;br /&gt;
L=10;&lt;br /&gt;
T=40;&lt;br /&gt;
Q=3;&lt;br /&gt;
h=0.1;&lt;br /&gt;
N=L/h;&lt;br /&gt;
x=0:h:L;&lt;br /&gt;
dt=h;&lt;br /&gt;
t=0:dt:T;&lt;br /&gt;
sol=zeros(length(t),N+1);&lt;br /&gt;
for k=1:Q&lt;br /&gt;
    phi=sin(k/L*pi*x);&lt;br /&gt;
    a=trapz(x,(2-abs(2/5*x-2)).*phi)/(trapz(x,phi.^2));&lt;br /&gt;
    b=0;&lt;br /&gt;
    T=a.*cos(k*pi*t/L);&lt;br /&gt;
    sol=sol+T'*phi;&lt;br /&gt;
end&lt;br /&gt;
[xx,tt]=meshgrid(x,t);&lt;br /&gt;
figure (2)&lt;br /&gt;
surf(xx,tt,sol)&lt;br /&gt;
xlabel('Desplazamiento horizontal');&lt;br /&gt;
ylabel('Tiempo');&lt;br /&gt;
zlabel('Desplazamiento vertical');}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br/&amp;gt;&lt;br /&gt;
[[Image:81tF2.jpg|525px|thumb|left|Aproximación por el método del Trapecio con un término de serie.]]&lt;br /&gt;
[[Image:82tF.jpg|525px|thumb|center|Aproximación por el método del Trapecio con tres términos de serie.]]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br/&amp;gt; &lt;br /&gt;
&lt;br /&gt;
[[Image:83tF.jpg|525px|thumb|left|Aproximación por el método del Trapecio con cinco términos de serie.]]&lt;br /&gt;
[[Image:84tF.jpg|525px|thumb|center|Aproximación por el método del Trapecio con diez términos de serie.]]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Image:85tF.jpg|525px|thumb|center|Aproximación por el método del Trapecio con veinte términos de serie.]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Energía del Cable. ==&lt;br /&gt;
&lt;br /&gt;
La energía del cable que viene definida por la función: &lt;br /&gt;
\begin{equation}&lt;br /&gt;
E(t) = \int_{0}^{L} (u_{t}^{2}(x,t)+ u_{x}^{2}(x,t)) \cdot dx&lt;br /&gt;
\end{equation}&lt;br /&gt;
&lt;br /&gt;
El método utilizado en el desarrollo numérico de está expresión es el '''método de diferencias finitas'''&lt;br /&gt;
(Funciona calculando de manera aproximada las soluciones a las ecuaciones diferenciales usando ecuaciones diferenciales finitas para aproximar derivadas.).&lt;br /&gt;
&lt;br /&gt;
'''FUNCIÓN:'''&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
function v = deriva(x,y,t)&lt;br /&gt;
&lt;br /&gt;
n = length(x);&lt;br /&gt;
del=zeros(1,n);&lt;br /&gt;
&lt;br /&gt;
if t==1&lt;br /&gt;
    &lt;br /&gt;
    i=1;&lt;br /&gt;
    del(1)=(y(i)-y(i+1))/(-x(i)+x(i+1));&lt;br /&gt;
&lt;br /&gt;
    for i=2:n&lt;br /&gt;
    del(i)=(y(i)-y(i-1))/(x(i)-x(i-1));&lt;br /&gt;
    end &lt;br /&gt;
    &lt;br /&gt;
elseif t==-1&lt;br /&gt;
&lt;br /&gt;
    for i=1:n-1&lt;br /&gt;
    del(i)=(y(i)-y(i+1))/(x(i)-x(i+1));&lt;br /&gt;
    end &lt;br /&gt;
    &lt;br /&gt;
    i=n;&lt;br /&gt;
    del(i)=(y(i)-y(i-1))/(x(i)-x(i-1));&lt;br /&gt;
    &lt;br /&gt;
elseif t==0&lt;br /&gt;
    &lt;br /&gt;
    i=1;&lt;br /&gt;
    del(1)=(y(i)-y(i+1))/(+x(i)-x(i+1));&lt;br /&gt;
    &lt;br /&gt;
    for i=2:n-1&lt;br /&gt;
    del(i)=(y(i+1)-y(i-1))/(2*(x(i)-x(i-1)));&lt;br /&gt;
    end &lt;br /&gt;
    &lt;br /&gt;
    i=n;&lt;br /&gt;
    del(n)=(y(i)-y(i-1))/(x(i)-x(i-1));  &lt;br /&gt;
    &lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
v=del;&lt;br /&gt;
&lt;br /&gt;
end&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''PROGRAMA:'''&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
clc;clear all;&lt;br /&gt;
L=10;dx=0.1;N=L/dx;&lt;br /&gt;
x=dx:dx:L-dx;&lt;br /&gt;
xtot=0:dx:L;&lt;br /&gt;
T=40;dt=0.1;t=0:dt:T;&lt;br /&gt;
K=2*diag(ones(1,N-1))-diag(ones(1,N-2),1)-diag(ones(1,N-2),-1);&lt;br /&gt;
K=(1/dx^2)*K;&lt;br /&gt;
U=(2-abs((x*2/5-2)))';&lt;br /&gt;
V=(0*x)';&lt;br /&gt;
sol(1,:)=[0 U' 0];&lt;br /&gt;
for i=1:length(t)-1;&lt;br /&gt;
    U=U+dt*V;&lt;br /&gt;
    V=V-dt*K*U;&lt;br /&gt;
    sol(i+1,:)=[0 U' 0];&lt;br /&gt;
end&lt;br /&gt;
%DERIVAMOS LA SOLUCION EN x Y EN t:&lt;br /&gt;
dsol_dx=ones(size(sol));&lt;br /&gt;
for i=1:length(t)&lt;br /&gt;
    dsol_dx(i,:)=deriva(sol(i,:),xtot,0);&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
dsol_dt=ones(size(sol));&lt;br /&gt;
for i=1:length(xtot)&lt;br /&gt;
    dsol_dt(:,i)=deriva(sol(:,i),t,1); &lt;br /&gt;
end&lt;br /&gt;
%SUMAMOS LAS DERIVADAS AL CUADRADO E INTEGRAMOS:&lt;br /&gt;
dE=zeros(1,size(t,1));&lt;br /&gt;
for i=1:length(xtot)&lt;br /&gt;
    dE=dE+(dsol_dt(i,:).^2+dsol_dx(i,:).^2)*dx;&lt;br /&gt;
end&lt;br /&gt;
xtot=0:dx:L;&lt;br /&gt;
[xx,tt]=meshgrid(xtot,t);&lt;br /&gt;
figure(1)&lt;br /&gt;
surf(xx,tt,dsol_dx);&lt;br /&gt;
figure(2)&lt;br /&gt;
surf(xx,tt,dsol_dt);&lt;br /&gt;
plot(dE,t)&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
El resultado habría de ser una gráfica que representase la evolución de la energía de la cuerda frente al transcurso del tiempo. No obstante, en nuestra resolución aparece una gráfica en blanco que ajudicamos o a un posible error en el código, o que podemos interpretar como que la energía tiende a infinito.&lt;br /&gt;
&lt;br /&gt;
== Aplicaciones. ==&lt;br /&gt;
&lt;br /&gt;
==== Sumersión en un medio viscoso. ====&lt;br /&gt;
&lt;br /&gt;
Suponemos ahora la inmersión del cable en una medio viscoso. Este medio viscoso produce un amortiguamiento en el movimiento del cable, con lo que la anterior ecuación diferencial se convertiría en &lt;br /&gt;
\begin{equation}&lt;br /&gt;
u_{tt}-u_{xx}+au_{t}=0&lt;br /&gt;
\end{equation} &lt;br /&gt;
, siendo '''&amp;lt;math&amp;gt; a  &amp;lt;/math&amp;gt;''' una constante de amortiguamiento propia del medio viscoso.&lt;br /&gt;
Puesto que la función '''&amp;lt;math&amp;gt; u(x,t)  &amp;lt;/math&amp;gt;''' se ve afectada ahora por el medio viscoso, y más directamente, por la constante '''&amp;lt;math&amp;gt; a  &amp;lt;/math&amp;gt;''' que actúa en su nombre, la energía del cable ,que se expresaba como una integral en función de '''&amp;lt;math&amp;gt; u(x,t)  &amp;lt;/math&amp;gt;''' también se va a ver afectada:&lt;br /&gt;
\begin{equation}&lt;br /&gt;
E(t) = \int_{0}^{L} (u_{t}^{2}(x,t)+ u_{x}^{2}(x,t)) \cdot dx&lt;br /&gt;
\end{equation}&lt;br /&gt;
&lt;br /&gt;
El obetivo del siguiente código será hallar una representación de la evolución de la energía en función del tiempo a raíz de la modificación de la función '''&amp;lt;math&amp;gt; u(x,t)  &amp;lt;/math&amp;gt;'''. Para ello asignaremos distintos valores a la constante '''&amp;lt;math&amp;gt; a  &amp;lt;/math&amp;gt;'''. Éstos van a ser:&lt;br /&gt;
'''&amp;lt;math&amp;gt; a=0  &amp;lt;/math&amp;gt;''' (la energía para este valor resultará igual que la hallada en el apartado anterior)&lt;br /&gt;
'''&amp;lt;math&amp;gt; a=1  &amp;lt;/math&amp;gt;'''&lt;br /&gt;
'''&amp;lt;math&amp;gt; a=4  &amp;lt;/math&amp;gt;'''&lt;br /&gt;
'''&amp;lt;math&amp;gt; a=10  &amp;lt;/math&amp;gt;'''&lt;br /&gt;
''&amp;lt;math&amp;gt; a=100  &amp;lt;/math&amp;gt;'''&lt;br /&gt;
&lt;br /&gt;
El procedimiento numérico volverá a seguir el método de '''diferencias finitas''':&lt;br /&gt;
&lt;br /&gt;
'''PROGRAMA:'''&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
clc;clear all;close all;&lt;br /&gt;
%Datos&lt;br /&gt;
dx=0.1;L=10;&lt;br /&gt;
dt=0.001;NT=40;&lt;br /&gt;
A=[0,1,4,10,100];&lt;br /&gt;
x=0:dx:L;&lt;br /&gt;
t=0:dt:NT;&lt;br /&gt;
ENE=zeros(5,length(t));&lt;br /&gt;
&lt;br /&gt;
%Condición de contorno: U(0,t)=U(L,t)=0;&lt;br /&gt;
&lt;br /&gt;
for k=1:5&lt;br /&gt;
&lt;br /&gt;
%Vector solución y derivada temporal de la solución&lt;br /&gt;
%t=0&amp;lt;&amp;gt;T(1) es donde se guardan las condiciones iniciales&lt;br /&gt;
&lt;br /&gt;
U=zeros(length(t),length(x));&lt;br /&gt;
Dt_U=zeros(length(t),length(x));&lt;br /&gt;
Dx_U=zeros(length(t),length(x));    &lt;br /&gt;
&lt;br /&gt;
%Condición inicial: Estiramos 2 m del centro&lt;br /&gt;
%Modelizado como dos rectas antisimétricas que se cortan en x=5 y&lt;br /&gt;
%sujetas en x=0 y x=L.&lt;br /&gt;
&lt;br /&gt;
U(1,:)=2*sin(x*pi/L);&lt;br /&gt;
Dt_U(1,:)=zeros(1,length(x))';&lt;br /&gt;
D2t_U=Ecuacion5(U(1,:),x,-1);&lt;br /&gt;
&lt;br /&gt;
%Inicio del esquema numérico&lt;br /&gt;
%empieza en 2 ya que el 1 es la cond. inicial&lt;br /&gt;
&lt;br /&gt;
%ESQUEMA NEWMARK&lt;br /&gt;
&lt;br /&gt;
 for i=2:length(t)&lt;br /&gt;
    iter=[k,i]&lt;br /&gt;
    Ua=U(i-1,:);&lt;br /&gt;
    Dt_Ua=Dt_U(i-1,:);&lt;br /&gt;
    D2t_Ua=D2t_U;&lt;br /&gt;
    %Derivada segunda respecto del tiempo en el instante t, se obtiene de&lt;br /&gt;
    %eq. diferencial u_tt=f(x,u,u_x,u_xx)&lt;br /&gt;
    D2t_U=Ecuacion5(U(i-1,:),x,t(i))-A(k)*Dt_Ua;&lt;br /&gt;
    %Derivada primera&lt;br /&gt;
    Dt_U(i,:)=Dt_Ua+0.5*dt*(D2t_Ua+D2t_U);&lt;br /&gt;
    %Ecuacion&lt;br /&gt;
    U(i,:) = Ua+Dt_Ua*dt+(1/6)*(D2t_Ua+D2t_U)*dt^2;&lt;br /&gt;
 end&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 %ENERGIA&lt;br /&gt;
 for i=1:length(t)&lt;br /&gt;
    Dx_U(i,:)=deriva(x,U(i,:),0);&lt;br /&gt;
 end&lt;br /&gt;
dE=zeros(length(t),1);&lt;br /&gt;
for i=1:length(x)&lt;br /&gt;
    dE=dE+(Dt_U(:,i).^2+Dx_U(:,i).^2)*dx;&lt;br /&gt;
end&lt;br /&gt;
 ENE(k,:)=dE;&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
 figure(1)&lt;br /&gt;
 hold on&lt;br /&gt;
 grid&lt;br /&gt;
 aa=find(x==L/4);&lt;br /&gt;
 ab=find(x==3*L/4);&lt;br /&gt;
 legend('A=0','A=1','A=4','A=10','A=100');&lt;br /&gt;
 plot(t,ENE(1,:),t,ENE(2,:),t,ENE(3,:),t,ENE(4,:),t,ENE(5,:));&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''FUNCIONES:'''&lt;br /&gt;
DERIVA:&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
function v = deriva(x,y,t)&lt;br /&gt;
n = length(x);&lt;br /&gt;
del=zeros(1,n);&lt;br /&gt;
if t==1&lt;br /&gt;
    i=1;&lt;br /&gt;
    del(1)=(y(i)-y(i+1))/(-x(i)+x(i+1));&lt;br /&gt;
    for i=2:n&lt;br /&gt;
    del(i)=(y(i)-y(i-1))/(x(i)-x(i-1));&lt;br /&gt;
    end &lt;br /&gt;
elseif t==-1&lt;br /&gt;
    for i=1:n-1&lt;br /&gt;
    del(i)=(y(i)-y(i+1))/(x(i)-x(i+1));&lt;br /&gt;
    end &lt;br /&gt;
    i=n;&lt;br /&gt;
    del(i)=(y(i)-y(i-1))/(x(i)-x(i-1));&lt;br /&gt;
elseif t==0&lt;br /&gt;
    i=1;&lt;br /&gt;
    del(1)=(y(i)-y(i+1))/(+x(i)-x(i+1));&lt;br /&gt;
    for i=2:n-1&lt;br /&gt;
    del(i)=(y(i+1)-y(i-1))/(2*(x(i)-x(i-1)));&lt;br /&gt;
    end &lt;br /&gt;
    i=n;&lt;br /&gt;
    del(n)=(y(i)-y(i-1))/(x(i)-x(i-1));  &lt;br /&gt;
end&lt;br /&gt;
v=del;&lt;br /&gt;
end&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
'''ECUACIÓN 5:'''&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
function [ V ] = Ecuacion5( u,x,t )&lt;br /&gt;
%se guarda aquí la ecuación diferencial del tipo u_tt=f(x,u,u_x,u_xx)&lt;br /&gt;
%INCLUIDAS LAS CC AQUÍ&lt;br /&gt;
%PARA u_tt=u_xx&lt;br /&gt;
%CC: u(0,t)=u(L,t)=0;&lt;br /&gt;
&lt;br /&gt;
Ax=x(2)-x(1);&lt;br /&gt;
n=length(u);&lt;br /&gt;
V=zeros(1,n);&lt;br /&gt;
&lt;br /&gt;
%Las condiciones de contorno vienen en x(1)=0 y x(Nx)=L&lt;br /&gt;
u(1)=0;&lt;br /&gt;
&lt;br /&gt;
if(t==-1)&lt;br /&gt;
    u(n)=0;&lt;br /&gt;
else&lt;br /&gt;
    u(n)=0;&lt;br /&gt;
    %u(n)=sin(2*pi*F0*t);&lt;br /&gt;
    %u(n)=(1/(b*Ax-1))*u(n-1);&lt;br /&gt;
end&lt;br /&gt;
for i=2:n-1&lt;br /&gt;
    &lt;br /&gt;
    V(i)=(1/Ax^2)*(u(i+1)-2*u(i)+u(i-1));&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
i=1;&lt;br /&gt;
V(i)=(1/Ax^2)*(u(i+2)-2*u(i+1));&lt;br /&gt;
i=n;&lt;br /&gt;
V(i)=(1/Ax^2)*(u(i)-2*u(i-1)+u(i-2));&lt;br /&gt;
end&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
La gráfica buscada es:&lt;br /&gt;
[[Archivo:Graficadelaenergiaenunmedioviscoso.png|700px|thumb|centre|Gráfica de la energía(ordenadas) del cable respecto del tiempo (Abcisas).]]&lt;br /&gt;
En la gráfica se aprecian cuatro curvas de distintos colores correspondientes a '''&amp;lt;math&amp;gt; a=0  &amp;lt;/math&amp;gt;''','''&amp;lt;math&amp;gt; a=1  &amp;lt;/math&amp;gt;''','''&amp;lt;math&amp;gt; a=4  &amp;lt;/math&amp;gt;''','''&amp;lt;math&amp;gt; a=10  &amp;lt;/math&amp;gt;''',''&amp;lt;math&amp;gt; a=100  &amp;lt;/math&amp;gt;'''.&lt;br /&gt;
&lt;br /&gt;
Como podemos apreciar el valor de la energía disminuye a medida que aumentamos el valor de &amp;quot;a&amp;quot;. Esto es debido a que &amp;quot;a&amp;quot; define el coeficiente de amortiguamiento del líquido en el cual se encuentra la cuerda. Luego, dicha disminución de energía se produce por la disipación en el medio de gran parte de la energía inicial.&lt;br /&gt;
&lt;br /&gt;
==== Sujeción a una estructura de vibración periódica. ====&lt;br /&gt;
&lt;br /&gt;
En este caso supondremos que el extremo derecho que sujeta el cable está sometido a una vibración periódica de frecuencia  &amp;lt;math&amp;gt; F_0 &amp;lt;/math&amp;gt; [Herzios]. Al haber una vibración externa que afecta directamente al cable la expresión de su movimiento y, por consecuencia, de su energía, se va a ver modificada. Nosotros incluiremos esta modificación en la función &amp;lt;math&amp;gt; f(t) &amp;lt;/math&amp;gt; de problema de valor inicial que venimos tratando. Esta función va a pasar a ser: &lt;br /&gt;
\begin{equation}&lt;br /&gt;
f(t)= sin(2 \pi F_0t)&lt;br /&gt;
\end{equation}&lt;br /&gt;
&lt;br /&gt;
El objetivo será el de ver cómo afecta esta alteración en el desarrollo de la energía del cable frente al tiempo.&lt;br /&gt;
Para nuestro cálculo numérico especificaremos para las siguientes situaciones:&lt;br /&gt;
En primer lugar, para: &amp;lt;math&amp;gt; F_0= \frac{1}{L} + 0,01 &amp;lt;/math&amp;gt;&lt;br /&gt;
Después,para: &amp;lt;math&amp;gt; F_0= \frac{1}{L} - 0,01 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Y para finalizar, lo estudiaremos en un intervalo de tiempo de '''t=0''' hasta '''t=60''' : &amp;lt;math&amp;gt;t \in (0,60)&amp;lt;/math&amp;gt; [segundos].&lt;br /&gt;
&lt;br /&gt;
El código matemático para matlab / octave:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''PROGRAMA:'''&lt;br /&gt;
{{matlab|codigo= &lt;br /&gt;
clc;clear all;close all;&lt;br /&gt;
&lt;br /&gt;
%Datos&lt;br /&gt;
&lt;br /&gt;
dx=0.1;L=10;dt=0.0001;NT=60;&lt;br /&gt;
A=[0,1,4,10,100];&lt;br /&gt;
x=0:dx:L;t=0:dt:NT;&lt;br /&gt;
ENE=zeros(5,length(t));&lt;br /&gt;
&lt;br /&gt;
%Condición de contorno: U(0,t)=U(L,t)=0;&lt;br /&gt;
for k=1&lt;br /&gt;
%Vector solución y derivada temporal de la solución&lt;br /&gt;
%t=0&amp;lt;&amp;gt;T(1) es donde se guardan las condiciones iniciales&lt;br /&gt;
&lt;br /&gt;
U=zeros(length(t),length(x));&lt;br /&gt;
Dt_U=zeros(length(t),length(x));&lt;br /&gt;
Dx_U=zeros(length(t),length(x));&lt;br /&gt;
&lt;br /&gt;
%Condición inicial: Estiramos 2 m del centro&lt;br /&gt;
%Modelizado como dos rectas antisimétricas que se cortan en x=5 y&lt;br /&gt;
%sujetas en x=0 y x=L.&lt;br /&gt;
&lt;br /&gt;
U(1,:)=2*sin(x*pi/L);&lt;br /&gt;
Dt_U(1,:)=zeros(1,length(x))';&lt;br /&gt;
D2t_U=Ecuacion6(U(1,:),x,-1);&lt;br /&gt;
&lt;br /&gt;
%Inicio del esquema numérico&lt;br /&gt;
%empieza en 2 ya que el 1 es la cond. inicial&lt;br /&gt;
&lt;br /&gt;
%ESQUEMA NEWMARK&lt;br /&gt;
&lt;br /&gt;
 for i=2:length(t)&lt;br /&gt;
    iter=[k,i]&lt;br /&gt;
    Ua=U(i-1,:);&lt;br /&gt;
    Dt_Ua=Dt_U(i-1,:);&lt;br /&gt;
    D2t_Ua=D2t_U;&lt;br /&gt;
    %Derivada segunda respecto del tiempo en el instante t, se obtiene de&lt;br /&gt;
    %eq. diferencial u_tt=f(x,u,u_x,u_xx)&lt;br /&gt;
    D2t_U=Ecuacion6(U(i-1,:),x,t(i))-A(k)*Dt_Ua;&lt;br /&gt;
    %Derivada primera&lt;br /&gt;
    Dt_U(i,:)=Dt_Ua+0.5*dt*(D2t_Ua+D2t_U);&lt;br /&gt;
    %Ecuacion&lt;br /&gt;
    U(i,:) = Ua+Dt_Ua*dt+(1/6)*(D2t_Ua+D2t_U)*dt^2;&lt;br /&gt;
 end&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 %ENERGIA&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 for i=1:length(t)&lt;br /&gt;
    Dx_U(i,:)=deriva(x,U(i,:),0);&lt;br /&gt;
 end&lt;br /&gt;
dE=zeros(length(t),1);&lt;br /&gt;
for i=1:length(x)&lt;br /&gt;
    dE=dE+(Dt_U(:,i).^2+Dx_U(:,i).^2)*dx;&lt;br /&gt;
end&lt;br /&gt;
 ENE(k,:)=dE;&lt;br /&gt;
end&lt;br /&gt;
 figure(1)&lt;br /&gt;
 hold on&lt;br /&gt;
 grid&lt;br /&gt;
 aa=find(x==L/4);&lt;br /&gt;
 ab=find(x==3*L/4);&lt;br /&gt;
 imagesc(U)&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''FUNCIONES:'''&lt;br /&gt;
&lt;br /&gt;
DERIVA:&lt;br /&gt;
{{matlab|codigo= &lt;br /&gt;
function v = deriva(x,y,t)&lt;br /&gt;
n = length(x);&lt;br /&gt;
del=zeros(1,n);&lt;br /&gt;
if t==1&lt;br /&gt;
    i=1;&lt;br /&gt;
    del(1)=(y(i)-y(i+1))/(-x(i)+x(i+1));&lt;br /&gt;
    for i=2:n&lt;br /&gt;
    del(i)=(y(i)-y(i-1))/(x(i)-x(i-1));&lt;br /&gt;
    end &lt;br /&gt;
elseif t==-1&lt;br /&gt;
    for i=1:n-1&lt;br /&gt;
    del(i)=(y(i)-y(i+1))/(x(i)-x(i+1));&lt;br /&gt;
    end &lt;br /&gt;
    i=n;&lt;br /&gt;
    del(i)=(y(i)-y(i-1))/(x(i)-x(i-1));&lt;br /&gt;
elseif t==0&lt;br /&gt;
    i=1;&lt;br /&gt;
    del(1)=(y(i)-y(i+1))/(+x(i)-x(i+1));&lt;br /&gt;
    for i=2:n-1&lt;br /&gt;
    del(i)=(y(i+1)-y(i-1))/(2*(x(i)-x(i-1)));&lt;br /&gt;
    end &lt;br /&gt;
    i=n;&lt;br /&gt;
    del(n)=(y(i)-y(i-1))/(x(i)-x(i-1));  &lt;br /&gt;
end&lt;br /&gt;
v=del;&lt;br /&gt;
end&lt;br /&gt;
}}&lt;br /&gt;
'''ECUACIÓN 6:'''&lt;br /&gt;
{{matlab|codigo= &lt;br /&gt;
function [ V ] = Ecuacion6( u,x,t )&lt;br /&gt;
&lt;br /&gt;
%se guarda aquí la ecuación diferencial del tipo u_tt=f(x,u,u_x,u_xx)&lt;br /&gt;
%INCLUIDAS LAS CC AQUÍ!&lt;br /&gt;
%PARA u_tt=u_xx&lt;br /&gt;
%CC: u(0,t)=u(L,t)=0;&lt;br /&gt;
&lt;br /&gt;
Ax=x(2)-x(1);&lt;br /&gt;
n=length(u);&lt;br /&gt;
V=zeros(1,n);&lt;br /&gt;
F0=(1/x(n))+0.01;&lt;br /&gt;
b=-2;&lt;br /&gt;
&lt;br /&gt;
%Las condiciones de contorno vienen en x(1)=0 y x(Nx)=L&lt;br /&gt;
&lt;br /&gt;
u(1)=0;&lt;br /&gt;
if(t==-1)&lt;br /&gt;
    u(n)=0;&lt;br /&gt;
else&lt;br /&gt;
    %u(n)=0;&lt;br /&gt;
    u(n)=sin(2*pi*F0*t);&lt;br /&gt;
    %u(n)=(1/(b*Ax-1))*u(n-1);&lt;br /&gt;
end&lt;br /&gt;
for i=2:n-1&lt;br /&gt;
    V(i)=(1/Ax^2)*(u(i+1)-2*u(i)+u(i-1));&lt;br /&gt;
end&lt;br /&gt;
i=1;&lt;br /&gt;
V(i)=(1/Ax^2)*(u(i+2)-2*u(i+1));&lt;br /&gt;
i=n;&lt;br /&gt;
V(i)=(1/Ax^2)*(u(i)-2*u(i-1)+u(i-2));&lt;br /&gt;
end&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
'''function [ V ] = Ecuacion6( u,x,t )'''&lt;br /&gt;
{{matlab|codigo= &lt;br /&gt;
%se guarda aquí la ecuación diferencial del tipo u_tt=f(x,u,u_x,u_xx)&lt;br /&gt;
%INCLUIDAS LAS CC AQUÍ!&lt;br /&gt;
%PARA u_tt=u_xx&lt;br /&gt;
%CC: u(0,t)=u(L,t)=0;&lt;br /&gt;
&lt;br /&gt;
Ax=x(2)-x(1);&lt;br /&gt;
n=length(u);&lt;br /&gt;
V=zeros(1,n);&lt;br /&gt;
F0=(1/x(n))-0.01;&lt;br /&gt;
b=-2;&lt;br /&gt;
&lt;br /&gt;
%Las condiciones de contorno vienen en x(1)=0 y x(Nx)=L&lt;br /&gt;
&lt;br /&gt;
u(1)=0;&lt;br /&gt;
if(t==-1)&lt;br /&gt;
    u(n)=0;&lt;br /&gt;
else&lt;br /&gt;
    %u(n)=0;&lt;br /&gt;
    u(n)=sin(2*pi*F0*t);&lt;br /&gt;
    %u(n)=(1/(b*Ax-1))*u(n-1);&lt;br /&gt;
end&lt;br /&gt;
for i=2:n-1&lt;br /&gt;
    V(i)=(1/Ax^2)*(u(i+1)-2*u(i)+u(i-1));&lt;br /&gt;
end&lt;br /&gt;
i=1;&lt;br /&gt;
V(i)=(1/Ax^2)*(u(i+2)-2*u(i+1));&lt;br /&gt;
i=n;&lt;br /&gt;
V(i)=(1/Ax^2)*(u(i)-2*u(i-1)+u(i-2));&lt;br /&gt;
end&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''function [ V ] = Ecuacion6( u,x,t )'''&lt;br /&gt;
{{matlab|codigo= &lt;br /&gt;
%se guarda aquí la ecuación diferencial del tipo u_tt=f(x,u,u_x,u_xx)&lt;br /&gt;
%INCLUIDAS LAS CC AQUÍ!&lt;br /&gt;
%PARA u_tt=u_xx&lt;br /&gt;
%CC: u(0,t)=u(L,t)=0;&lt;br /&gt;
&lt;br /&gt;
Ax=x(2)-x(1);&lt;br /&gt;
n=length(u);&lt;br /&gt;
V=zeros(1,n);&lt;br /&gt;
F0=(1/x(n));&lt;br /&gt;
b=-2;&lt;br /&gt;
&lt;br /&gt;
%Las condiciones de contorno vienen en x(1)=0 y x(Nx)=L&lt;br /&gt;
&lt;br /&gt;
u(1)=0;&lt;br /&gt;
if(t==-1)&lt;br /&gt;
    u(n)=0;&lt;br /&gt;
else&lt;br /&gt;
    %u(n)=0;&lt;br /&gt;
    u(n)=sin(2*pi*F0*t);&lt;br /&gt;
    %u(n)=(1/(b*Ax-1))*u(n-1);&lt;br /&gt;
end&lt;br /&gt;
for i=2:n-1&lt;br /&gt;
    V(i)=(1/Ax^2)*(u(i+1)-2*u(i)+u(i-1));&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
i=1;&lt;br /&gt;
V(i)=(1/Ax^2)*(u(i+2)-2*u(i+1));&lt;br /&gt;
i=n;&lt;br /&gt;
V(i)=(1/Ax^2)*(u(i)-2*u(i-1)+u(i-2));&lt;br /&gt;
end&lt;br /&gt;
}}&lt;br /&gt;
 &lt;br /&gt;
La gráfica resultante es la siguiente:&lt;br /&gt;
[[Archivo:Graficaestructuraconvibracion.png|650px|thumb|centre|Gráfica en tres dimensiones de la energía de un cable cuyo extremo derecho está sometido a una vibración externa periódica.]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
En dicha gráfica, se puede observar que la forma de la función o la energía se ve alterada por la condición impuesta de tal manera que ésta adquiere una forma también sinusoidal, y que su estabilización dependería del tiempo transcurrido entre vibración y vibración.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==== Sujeción a un aparato que responde a una vibración externa. ====&lt;br /&gt;
&lt;br /&gt;
La siguiente situación que vamos a representar a modelar a través de ecuaciones diferenciales va a ser la siguiente: supondremos que el cable de la anterior situación (que recibía en su extremo derecho una vibración periódica de &amp;lt;math&amp;gt; F_0 &amp;lt;/math&amp;gt; [Herzios])envía una respuesta a la vibración que recibe. Esta situación la vamos a representar como un cambio en la condición de contorno; ésta va a pasar a ser: &amp;lt;math&amp;gt; u_x(L,t)=bu(L,t) &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
El objetivo, de nuevo será representar la evolución de la energía respecto del tiempo y ver si este cambio en el problema se ve reflejado en su representación. &lt;br /&gt;
En el código numérico, no obstante, la situación de &amp;lt;math&amp;gt; u_x(L,t)=bu(L,t) &amp;lt;/math&amp;gt; la vamos a aproximar por la siguiente expresión:&lt;br /&gt;
&amp;lt;math&amp;gt; u_x(L,t)-bu(L,t)  \cong  \frac{u_{N+1}(t)-u_{N-1}(t)}{2h-u_N(t)} &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
En la resolución del problema emplearemos de nuevo la condición inicial de sujetar el cable por el centro y elevarlo 2 m perpendicularmente: &lt;br /&gt;
&amp;lt;math&amp;gt; u(x,0)=g(x)= 2- |\frac{2}{5}x -2| &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Y además obtendremos el resultado para los dos valores siguientes de &amp;lt;math&amp;gt;b&amp;lt;/math&amp;gt; :&lt;br /&gt;
Para &amp;lt;math&amp;gt; b=2 &amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt; b=-2 &amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
El código numérico de matlab/octave es:&lt;br /&gt;
&lt;br /&gt;
'''PROGRAMA:'''&lt;br /&gt;
{{matlab|codigo= &lt;br /&gt;
clc;clear all;close all;&lt;br /&gt;
&lt;br /&gt;
%Datos&lt;br /&gt;
dx=0.1;L=10;dt=0.0001;NT=40;&lt;br /&gt;
A=[0,1,4,10,100];&lt;br /&gt;
x=0:dx:L;t=0:dt:NT;&lt;br /&gt;
ENE=zeros(5,length(t));&lt;br /&gt;
&lt;br /&gt;
%Condición de contorno: U(0,t)=U(L,t)=0;&lt;br /&gt;
for k=1&lt;br /&gt;
&lt;br /&gt;
%Vector solución y derivada temporal de la solución&lt;br /&gt;
%t=0&amp;lt;&amp;gt;T(1) es donde se guardan las condiciones iniciales&lt;br /&gt;
&lt;br /&gt;
U=zeros(length(t),length(x));&lt;br /&gt;
Dt_U=zeros(length(t),length(x));&lt;br /&gt;
Dx_U=zeros(length(t),length(x));    &lt;br /&gt;
&lt;br /&gt;
%Condición inicial: Estiramos 2 m del centro&lt;br /&gt;
%Modelizado como dos rectas antisimétricas que se cortan en x=5 y&lt;br /&gt;
%sujetas en x=0 y x=L.&lt;br /&gt;
&lt;br /&gt;
U(1,:)=2*sin(x*pi/L);&lt;br /&gt;
Dt_U(1,:)=zeros(1,length(x))';&lt;br /&gt;
D2t_U=Ecuacion7(U(1,:),x,-1);&lt;br /&gt;
&lt;br /&gt;
%Inicio del esquema numérico&lt;br /&gt;
%empieza en 2 ya que el 1 es la cond. inicial&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
%ESQUEMA NEWMARK&lt;br /&gt;
 for i=2:length(t)&lt;br /&gt;
    iter=[k,i]&lt;br /&gt;
    Ua=U(i-1,:);&lt;br /&gt;
    Dt_Ua=Dt_U(i-1,:);&lt;br /&gt;
    D2t_Ua=D2t_U;&lt;br /&gt;
&lt;br /&gt;
    %Derivada segunda respecto del tiempo en el instante t, se obtiene de&lt;br /&gt;
    %eq. diferencial u_tt=f(x,u,u_x,u_xx)&lt;br /&gt;
&lt;br /&gt;
    D2t_U=Ecuacion7(U(i-1,:),x,t(i))-A(k)*Dt_Ua;&lt;br /&gt;
&lt;br /&gt;
    %Derivada primera&lt;br /&gt;
    Dt_U(i,:)=Dt_Ua+0.5*dt*(D2t_Ua+D2t_U);&lt;br /&gt;
&lt;br /&gt;
    %Ecuacion&lt;br /&gt;
    U(i,:) = Ua+Dt_Ua*dt+(1/6)*(D2t_Ua+D2t_U)*dt^2;&lt;br /&gt;
 end&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 %ENERGIA&lt;br /&gt;
 for i=1:length(t)&lt;br /&gt;
    Dx_U(i,:)=deriva(x,U(i,:),0);&lt;br /&gt;
 end&lt;br /&gt;
dE=zeros(length(t),1);&lt;br /&gt;
for i=1:length(x)&lt;br /&gt;
    dE=dE+(Dt_U(:,i).^2+Dx_U(:,i).^2)*dx;&lt;br /&gt;
end&lt;br /&gt;
 ENE(k,:)=dE;&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
 figure(1)&lt;br /&gt;
 hold on&lt;br /&gt;
 grid&lt;br /&gt;
 aa=find(x==L/4);&lt;br /&gt;
 ab=find(x==3*L/4);&lt;br /&gt;
 plot(t,ENE(1,:))&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
'''FUNCIONES:'''&lt;br /&gt;
{{matlab|codigo= &lt;br /&gt;
function v = deriva(x,y,t)&lt;br /&gt;
n = length(x);&lt;br /&gt;
del=zeros(1,n);&lt;br /&gt;
if t==1&lt;br /&gt;
    i=1;&lt;br /&gt;
    del(1)=(y(i)-y(i+1))/(-x(i)+x(i+1));&lt;br /&gt;
    for i=2:n&lt;br /&gt;
    del(i)=(y(i)-y(i-1))/(x(i)-x(i-1));&lt;br /&gt;
    end &lt;br /&gt;
elseif t==-1&lt;br /&gt;
    for i=1:n-1&lt;br /&gt;
    del(i)=(y(i)-y(i+1))/(x(i)-x(i+1));&lt;br /&gt;
    end &lt;br /&gt;
    i=n;&lt;br /&gt;
    del(i)=(y(i)-y(i-1))/(x(i)-x(i-1));&lt;br /&gt;
elseif t==0&lt;br /&gt;
    i=1;&lt;br /&gt;
    del(1)=(y(i)-y(i+1))/(+x(i)-x(i+1));&lt;br /&gt;
    for i=2:n-1&lt;br /&gt;
    del(i)=(y(i+1)-y(i-1))/(2*(x(i)-x(i-1)));&lt;br /&gt;
    end &lt;br /&gt;
    i=n;&lt;br /&gt;
    del(n)=(y(i)-y(i-1))/(x(i)-x(i-1));  &lt;br /&gt;
end&lt;br /&gt;
v=del;&lt;br /&gt;
end&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
'''function [ V ] = Ecuacion7( u,x,t )'''&lt;br /&gt;
{{matlab|codigo= &lt;br /&gt;
%se guarda aquí la ecuación diferencial del tipo u_tt=f(x,u,u_x,u_xx)&lt;br /&gt;
%INCLUIDAS LAS CC AQUÍ!&lt;br /&gt;
%PARA u_tt=u_xx&lt;br /&gt;
%CC: u(0,t)=u(L,t)=0;&lt;br /&gt;
&lt;br /&gt;
Ax=x(2)-x(1);&lt;br /&gt;
n=length(u);&lt;br /&gt;
V=zeros(1,n);&lt;br /&gt;
F0=(1/x(n));&lt;br /&gt;
b=2;&lt;br /&gt;
&lt;br /&gt;
%Las condiciones de contorno vienen en x(1)=0 y x(Nx)=L&lt;br /&gt;
u(1)=0;&lt;br /&gt;
if(t==-1)&lt;br /&gt;
    u(n)=0;&lt;br /&gt;
else&lt;br /&gt;
    %u(n)=0;&lt;br /&gt;
    %u(n)=sin(2*pi*F0*t);&lt;br /&gt;
    u(n)=(1/(b*Ax-1))*u(n-1);&lt;br /&gt;
end&lt;br /&gt;
for i=2:n-1&lt;br /&gt;
    V(i)=(1/Ax^2)*(u(i+1)-2*u(i)+u(i-1));&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
i=1;&lt;br /&gt;
V(i)=(1/Ax^2)*(u(i+2)-2*u(i+1));&lt;br /&gt;
i=n;&lt;br /&gt;
V(i)=(1/Ax^2)*(u(i)-2*u(i-1)+u(i-2));&lt;br /&gt;
end&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
'''function [ V ] = Ecuacion7( u,x,t )'''&lt;br /&gt;
{{matlab|codigo= &lt;br /&gt;
%se guarda aquí la ecuación diferencial del tipo u_tt=f(x,u,u_x,u_xx)&lt;br /&gt;
%INCLUIDAS LAS CC AQUÍ!&lt;br /&gt;
%PARA u_tt=u_xx&lt;br /&gt;
%CC: u(0,t)=u(L,t)=0;&lt;br /&gt;
&lt;br /&gt;
Ax=x(2)-x(1);&lt;br /&gt;
n=length(u);&lt;br /&gt;
V=zeros(1,n);&lt;br /&gt;
F0=(1/x(n));&lt;br /&gt;
b=-2;&lt;br /&gt;
&lt;br /&gt;
%Las condiciones de contorno vienen en x(1)=0 y x(Nx)=L&lt;br /&gt;
u(1)=0;&lt;br /&gt;
&lt;br /&gt;
if(t==-1)&lt;br /&gt;
    u(n)=0;&lt;br /&gt;
else&lt;br /&gt;
    %u(n)=0;&lt;br /&gt;
    %u(n)=sin(2*pi*F0*t);&lt;br /&gt;
    u(n)=(1/(b*Ax-1))*u(n-1);&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
for i=2:n-1&lt;br /&gt;
    V(i)=(1/Ax^2)*(u(i+1)-2*u(i)+u(i-1));&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
i=1;&lt;br /&gt;
V(i)=(1/Ax^2)*(u(i+2)-2*u(i+1));&lt;br /&gt;
i=n;&lt;br /&gt;
V(i)=(1/Ax^2)*(u(i)-2*u(i-1)+u(i-2));&lt;br /&gt;
end&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
La imagen resultante es:&lt;br /&gt;
[[Archivo:Energiadelcableenrespuestaavibracionexterna.png|700px|thumb|centre|Gráfica de la energía (ordenadas) de un cable frente al tiempo (abcisas) que recibe una vibración en su extremo derecho y que responde a dicha vibración. ]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
La anterior gráfica muestra el comportamiento de la cuerda como respuesta a la vibración producida en uno de sus extremos así como el movimiento transversal del punto medio al comienzo. Podemos observar el movimiento transversal de cada punto de la cuerda a través de la expresión de la energía, así como que, a medida que transcurre el tiempo, ésta se va estabilizando. La forma de la función recuerda a una función sinusoidal debido a la forma de la condición de contorno impuesta.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Categoría:Ecuaciones Diferentiales]]&lt;br /&gt;
 [[Categoría:ED13/14]]&lt;br /&gt;
 [[Categoría:Trabajos 2013-14]]&lt;/div&gt;</summary>
		<author><name>Lucia Lopez</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Ecuaci%C3%B3n_de_ondas_(grupo_2B)&amp;diff=12949</id>
		<title>Ecuación de ondas (grupo 2B)</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Ecuaci%C3%B3n_de_ondas_(grupo_2B)&amp;diff=12949"/>
				<updated>2014-05-19T18:37:29Z</updated>
		
		<summary type="html">&lt;p&gt;Lucia Lopez: /* Euler Modificado. */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{ TrabajoED | Ecuación de ondas. Grupo 2-B| [[:Categoría:Ecuaciones Diferenciales|Ecuaciones Diferenciales]]|[[:Categoría:ED13/14|Curso 2013-14]]| &lt;br /&gt;
Ignacio Díaz-Caneja Camblor&lt;br /&gt;
&lt;br /&gt;
Alberto Fernández Pérez&lt;br /&gt;
&lt;br /&gt;
Adela González Barbado&lt;br /&gt;
&lt;br /&gt;
Lucia López Sánchez&lt;br /&gt;
&lt;br /&gt;
Araceli Martín Candilejo&lt;br /&gt;
&lt;br /&gt;
Diego Solano López&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
== Modelización de los desplazamientos del Cable. ==&lt;br /&gt;
El problema que se tratará a continuación describe una ecuación de '''tipo hiperbólico''', una '''ecuación de ondas'''.&lt;br /&gt;
Consideramos un '''cable de 10 metros''' de longitud '''sujeto por sus extremos'''. Suponiendo que éste tiene una '''sección pequeña''' respecto a su longitud someteremos al cable a pequeñas vibraciones que estudiaremos con una modelización de la ecuación de ondas. &lt;br /&gt;
Se caracteriza al cable de una masa constante por unidad de volumen, es decir, será '''homogéneo'''. Éste, '''flexible''' a la tracción, únicamente ofrece resistencias en su dirección longitudinal, tangenciales, pero no a esfuerzos de flexión o cortes. Se supone, además, que es '''inextensible''' por lo que será lo suficientemente rígido longitudinalmente como para poder despreciar su extensibilidad.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Con esta modelización se estudiarán las '''pequeñas vibraciones''', desplazamientos transversales, a las que es sometido el cable. Para iniciar el movimiento del cable lo sujetaremos por el centro subiéndolo dos metros, lo que nos proporciona una primera condición inicial determinada por la función g(x), y soltándolo con una velocidad nula. &lt;br /&gt;
&lt;br /&gt;
&amp;lt;br/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Obtenemos la ecuación &amp;lt;math&amp;gt;u_{tt}-u_{xx}=0&amp;lt;/math&amp;gt; , de la cual se puede observar que tanto el '''módulo de la tensión''' como la '''densidad''' son '''constantes''' ya que el '''módulo de la elasticidad''' es constante, &amp;lt;math&amp;gt;c^2=1&amp;lt;/math&amp;gt; . Al ser ésta primera ecuación homogénea deducimos que transversalmente no actúa ninguna fuerza densidad espacial y temporal. Se deduce del enunciado anterior que las condiciones de frontera son '''homogéneas''', &amp;lt;math&amp;gt;u(0,t)=0&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;u(10,t)=0&amp;lt;/math&amp;gt; que nos indican que los extremos del cable no describen ningún tipo de movimiento en todo instante t al no estar sometidos a ningun tipo de fuerza. Finalmente, añadimos al sistema las condiciones iniciales, la primera de ellas, &amp;lt;math&amp;gt;u(x,0)=g(x)= 2- |\frac{2}{5}x -2|&amp;lt;/math&amp;gt;, define el '''movimiento descrito por la onda''' en el instante t=0 en cualquier punto del cable; y la segunda, &amp;lt;math&amp;gt;u_t(x,0)=0&amp;lt;/math&amp;gt;, que la onda parte de una '''velocidad inicial nula'''.&lt;br /&gt;
[[Image:DV.png|300px|thumb|right|Deslizamiento vertical del cable. ]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
\begin{cases}&lt;br /&gt;
&lt;br /&gt;
u_{tt}- u_{xx}=0  \  x∈[0,10] \ t&amp;gt;0\\&lt;br /&gt;
u(0,t)=0\\&lt;br /&gt;
u(10,t)=0\\&lt;br /&gt;
u(x,0)= 2- |\frac{2}{5}x -2|\\&lt;br /&gt;
u_t(x,0)=0&lt;br /&gt;
\end{cases}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
En los siguientes apartados se realizaran aproximaciones del sistema expuesto con tres métodos distintos de los que más tarde se hará una comparativa. Para esto último nos ayudaremos del error por lo que necesitaremos la solución analítica.&lt;br /&gt;
Como el problema consta de condiciones de frontera homogéneas, aplicamos directamente el método de separación de variables para su resolución analítica. &lt;br /&gt;
&amp;lt;br/&amp;gt;&lt;br /&gt;
==== Aproximación por el método del trapecio. ====&lt;br /&gt;
El primer método que usaremos será el del Trapecio que consiste en RELLENAR&lt;br /&gt;
{{matlab|codigo= &lt;br /&gt;
%u_tt-u_xx=0&lt;br /&gt;
%u(0,t)=u(l,t)=0&lt;br /&gt;
%u(x,0)=2-abs(0.4x-2)&lt;br /&gt;
%ut(x,0)=0&lt;br /&gt;
clear all&lt;br /&gt;
&lt;br /&gt;
%Datos del problema&lt;br /&gt;
L=10;&lt;br /&gt;
T=40;&lt;br /&gt;
&lt;br /&gt;
%Discretización&lt;br /&gt;
h=0.1;&lt;br /&gt;
N=L/h;&lt;br /&gt;
x=0:h:L;&lt;br /&gt;
xint=h:h:L-h;&lt;br /&gt;
dt=h;&lt;br /&gt;
t=0:dt:T;&lt;br /&gt;
&lt;br /&gt;
%Aprox. de u_xx&lt;br /&gt;
K=2*diag(ones(1,N-1))-diag(ones(1,N-2),-1)-diag(ones(1,N-2),1);&lt;br /&gt;
K=K/h^2;&lt;br /&gt;
F=zeros(N-1,1);&lt;br /&gt;
&lt;br /&gt;
%Posición inicial.&lt;br /&gt;
u0=(2-abs(xint*2/5-2))';&lt;br /&gt;
v0=zeros(N-1,1);&lt;br /&gt;
&lt;br /&gt;
%Aprox. de u_tt&lt;br /&gt;
M=[zeros(N-1),eye(N-1);-K,zeros(N-1)];&lt;br /&gt;
G=[zeros(N-1,1);F];&lt;br /&gt;
&lt;br /&gt;
%Aproximación por el método del Trapecio&lt;br /&gt;
W0=[u0;v0];&lt;br /&gt;
WW=W0;&lt;br /&gt;
sol=zeros(length(t),N+1);&lt;br /&gt;
sol(1,:)=[0,W0(1:N-1)',0];&lt;br /&gt;
for j=1:length(t)-1&lt;br /&gt;
    WW=(eye(2*N-2)-dt/2*M)\(eye(2*N-2)+dt/2*M)*WW;&lt;br /&gt;
    sol(j+1,:)=[0,WW(1:N-1)',0];&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
%Dibujo de la solución&lt;br /&gt;
[xx,tt]=meshgrid(x,t);&lt;br /&gt;
surf(xx,tt,sol);&lt;br /&gt;
xlabel('Desplazamiento horizontal');&lt;br /&gt;
ylabel('Tiempo');&lt;br /&gt;
zlabel('Desplazamiento vertical');}}&lt;br /&gt;
&lt;br /&gt;
[[Image:klklk.jpg|700px|thumb|center|Aproximación por el método del Trapecio.]]&lt;br /&gt;
&lt;br /&gt;
==== Aproximación por el método de Euler. ====&lt;br /&gt;
Se exponen en este apartados dos tipos de aproximaciones de Euler.&lt;br /&gt;
===== Euler Explícito. =====&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
%utt-uxx=0&lt;br /&gt;
%u(0,t)=u(l,t)=0&lt;br /&gt;
%u(x,0)=2-abs(0.4x-2)&lt;br /&gt;
%ut(x,0)=0&lt;br /&gt;
clear all&lt;br /&gt;
L=10;&lt;br /&gt;
T=40;&lt;br /&gt;
h=0.1;&lt;br /&gt;
N=L/h;&lt;br /&gt;
x=0:h:L;&lt;br /&gt;
xint=h:h:L-h;&lt;br /&gt;
dt=h;&lt;br /&gt;
t=0:dt:T;&lt;br /&gt;
K=2*diag(ones(1,N-1))-diag(ones(1,N-2),-1)-diag(ones(1,N-2),1);&lt;br /&gt;
K=K/h^2;&lt;br /&gt;
F=zeros(N-1,1);&lt;br /&gt;
u0=2-abs((xint*2/5-2))';&lt;br /&gt;
v0=zeros(N-1,1);&lt;br /&gt;
M=[zeros(N-1),eye(N-1);-K,zeros(N-1)];&lt;br /&gt;
G=[zeros(N-1,1);F];&lt;br /&gt;
W0=[u0;v0];&lt;br /&gt;
WW=W0;&lt;br /&gt;
sol=zeros(length(t),N+1);&lt;br /&gt;
sol(1,:)=[0,W0(1:N-1)',0];&lt;br /&gt;
for j=1:length(t)-1&lt;br /&gt;
    WW=WW+dt*M*WW;&lt;br /&gt;
    sol(j+1,:)=[0,WW(1:N-1)',0];&lt;br /&gt;
end&lt;br /&gt;
[xx,tt]=meshgrid(x,t);&lt;br /&gt;
surf(xx,tt,sol);}}&lt;br /&gt;
===== Euler Modificado. =====&lt;br /&gt;
Este método se basa en la misma idea del método anterior, pero hace un refinamiento en la aproximación, tomando un promedio entre las pendientes.&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
%utt-uxx=0&lt;br /&gt;
%u(0,t)=u(l,t)=0&lt;br /&gt;
%u(x,0)=2-abs(0.4x-2)&lt;br /&gt;
%ut(x,0)=0&lt;br /&gt;
clear all&lt;br /&gt;
L=10;&lt;br /&gt;
T=40;&lt;br /&gt;
h=0.1;&lt;br /&gt;
N=L/h;&lt;br /&gt;
x=0:h:L;&lt;br /&gt;
xint=h:h:L-h;&lt;br /&gt;
dt=h;&lt;br /&gt;
t=0:dt:T;&lt;br /&gt;
K=2*diag(ones(1,N-1))-diag(ones(1,N-2),-1)-diag(ones(1,N-2),1);&lt;br /&gt;
K=K/h^2;&lt;br /&gt;
F=zeros(N-1,1);&lt;br /&gt;
u0=2-abs((xint*2/5-2))';&lt;br /&gt;
v0=zeros(N-1,1);&lt;br /&gt;
M=[zeros(N-1),eye(N-1);-K,zeros(N-1)];&lt;br /&gt;
G=[zeros(N-1,1);F];&lt;br /&gt;
W0=[u0;v0];&lt;br /&gt;
WW=W0;&lt;br /&gt;
sol=zeros(length(t),N+1);&lt;br /&gt;
sol(1,:)=[0,W0(1:N-1)',0];&lt;br /&gt;
for j=1:length(t)-1&lt;br /&gt;
    k1=M*WW;&lt;br /&gt;
    WW=(eye(2*N-2)+dt*M/2)*WW+(dt/2)*k1+(dt^2)*M*k1/2;&lt;br /&gt;
    sol(j+1,:)=[0,WW(1:N-1)',0];&lt;br /&gt;
end&lt;br /&gt;
[xx,tt]=meshgrid(x,t);&lt;br /&gt;
surf(xx,tt,sol);}}&lt;br /&gt;
&lt;br /&gt;
==== Aproximación por Fourier con diferentes términos de series. ====&lt;br /&gt;
En este apartado se ofrece una aproximación alternativa a las anteriores. Se muestran '''cinco iteraciones''' distintas del '''método del Fourier''' que se compararan entre sí y con los métodos anteriores, Trapecio y Euler.&lt;br /&gt;
&amp;lt;br/&amp;gt;&lt;br /&gt;
Puesto que la realización de este método es la misma sea cual sea el número de serie elegido, se han expuesto únicamente dos casos de Q para una mayor claridad del programa.&lt;br /&gt;
{{matlab|codigo= %utt-uxx=0&lt;br /&gt;
%u(0,t)=u(l,t)=0&lt;br /&gt;
%u(x,0)=2-abs(0.4x-2)&lt;br /&gt;
%ut(x,0)=0&lt;br /&gt;
&lt;br /&gt;
%1 iteracion&lt;br /&gt;
clear all&lt;br /&gt;
L=10;&lt;br /&gt;
T=40;&lt;br /&gt;
Q=1;&lt;br /&gt;
h=0.1;&lt;br /&gt;
N=L/h;&lt;br /&gt;
x=0:h:L;&lt;br /&gt;
dt=h;&lt;br /&gt;
t=0:dt:T;&lt;br /&gt;
sol=zeros(length(t),N+1);&lt;br /&gt;
for k=1:Q&lt;br /&gt;
    phi=sin(k/L*pi*x);&lt;br /&gt;
    a=trapz(x,(2-abs(2/5*x-2)).*phi)/(trapz(x,phi.^2));&lt;br /&gt;
    b=0;&lt;br /&gt;
    T=a.*cos(k*pi*t/L);&lt;br /&gt;
    sol=sol+T'*phi;&lt;br /&gt;
end&lt;br /&gt;
[xx,tt]=meshgrid(x,t);&lt;br /&gt;
figure (1)&lt;br /&gt;
surf(xx,tt,sol)&lt;br /&gt;
xlabel('Desplazamiento horizontal');&lt;br /&gt;
ylabel('Tiempo');&lt;br /&gt;
zlabel('Desplazamiento vertical');&lt;br /&gt;
&lt;br /&gt;
%3 iteracion&lt;br /&gt;
clear all&lt;br /&gt;
L=10;&lt;br /&gt;
T=40;&lt;br /&gt;
Q=3;&lt;br /&gt;
h=0.1;&lt;br /&gt;
N=L/h;&lt;br /&gt;
x=0:h:L;&lt;br /&gt;
dt=h;&lt;br /&gt;
t=0:dt:T;&lt;br /&gt;
sol=zeros(length(t),N+1);&lt;br /&gt;
for k=1:Q&lt;br /&gt;
    phi=sin(k/L*pi*x);&lt;br /&gt;
    a=trapz(x,(2-abs(2/5*x-2)).*phi)/(trapz(x,phi.^2));&lt;br /&gt;
    b=0;&lt;br /&gt;
    T=a.*cos(k*pi*t/L);&lt;br /&gt;
    sol=sol+T'*phi;&lt;br /&gt;
end&lt;br /&gt;
[xx,tt]=meshgrid(x,t);&lt;br /&gt;
figure (2)&lt;br /&gt;
surf(xx,tt,sol)&lt;br /&gt;
xlabel('Desplazamiento horizontal');&lt;br /&gt;
ylabel('Tiempo');&lt;br /&gt;
zlabel('Desplazamiento vertical');}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br/&amp;gt;&lt;br /&gt;
[[Image:81tF2.jpg|525px|thumb|left|Aproximación por el método del Trapecio con un término de serie.]]&lt;br /&gt;
[[Image:82tF.jpg|525px|thumb|center|Aproximación por el método del Trapecio con tres términos de serie.]]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br/&amp;gt; &lt;br /&gt;
&lt;br /&gt;
[[Image:83tF.jpg|525px|thumb|left|Aproximación por el método del Trapecio con cinco términos de serie.]]&lt;br /&gt;
[[Image:84tF.jpg|525px|thumb|center|Aproximación por el método del Trapecio con diez términos de serie.]]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Image:85tF.jpg|525px|thumb|center|Aproximación por el método del Trapecio con veinte términos de serie.]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Energía del Cable. ==&lt;br /&gt;
&lt;br /&gt;
La energía del cable que viene definida por la función: &lt;br /&gt;
\begin{equation}&lt;br /&gt;
E(t) = \int_{0}^{L} (u_{t}^{2}(x,t)+ u_{x}^{2}(x,t)) \cdot dx&lt;br /&gt;
\end{equation}&lt;br /&gt;
&lt;br /&gt;
El método utilizado en el desarrollo numérico de está expresión es el '''método de diferencias finitas'''&lt;br /&gt;
(Funciona calculando de manera aproximada las soluciones a las ecuaciones diferenciales usando ecuaciones diferenciales finitas para aproximar derivadas.).&lt;br /&gt;
&lt;br /&gt;
'''FUNCIÓN:'''&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
function v = deriva(x,y,t)&lt;br /&gt;
&lt;br /&gt;
n = length(x);&lt;br /&gt;
del=zeros(1,n);&lt;br /&gt;
&lt;br /&gt;
if t==1&lt;br /&gt;
    &lt;br /&gt;
    i=1;&lt;br /&gt;
    del(1)=(y(i)-y(i+1))/(-x(i)+x(i+1));&lt;br /&gt;
&lt;br /&gt;
    for i=2:n&lt;br /&gt;
    del(i)=(y(i)-y(i-1))/(x(i)-x(i-1));&lt;br /&gt;
    end &lt;br /&gt;
    &lt;br /&gt;
elseif t==-1&lt;br /&gt;
&lt;br /&gt;
    for i=1:n-1&lt;br /&gt;
    del(i)=(y(i)-y(i+1))/(x(i)-x(i+1));&lt;br /&gt;
    end &lt;br /&gt;
    &lt;br /&gt;
    i=n;&lt;br /&gt;
    del(i)=(y(i)-y(i-1))/(x(i)-x(i-1));&lt;br /&gt;
    &lt;br /&gt;
elseif t==0&lt;br /&gt;
    &lt;br /&gt;
    i=1;&lt;br /&gt;
    del(1)=(y(i)-y(i+1))/(+x(i)-x(i+1));&lt;br /&gt;
    &lt;br /&gt;
    for i=2:n-1&lt;br /&gt;
    del(i)=(y(i+1)-y(i-1))/(2*(x(i)-x(i-1)));&lt;br /&gt;
    end &lt;br /&gt;
    &lt;br /&gt;
    i=n;&lt;br /&gt;
    del(n)=(y(i)-y(i-1))/(x(i)-x(i-1));  &lt;br /&gt;
    &lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
v=del;&lt;br /&gt;
&lt;br /&gt;
end&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''PROGRAMA:'''&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
clc;clear all;&lt;br /&gt;
L=10;dx=0.1;N=L/dx;&lt;br /&gt;
x=dx:dx:L-dx;&lt;br /&gt;
xtot=0:dx:L;&lt;br /&gt;
T=40;dt=0.1;t=0:dt:T;&lt;br /&gt;
K=2*diag(ones(1,N-1))-diag(ones(1,N-2),1)-diag(ones(1,N-2),-1);&lt;br /&gt;
K=(1/dx^2)*K;&lt;br /&gt;
U=(2-abs((x*2/5-2)))';&lt;br /&gt;
V=(0*x)';&lt;br /&gt;
sol(1,:)=[0 U' 0];&lt;br /&gt;
for i=1:length(t)-1;&lt;br /&gt;
    U=U+dt*V;&lt;br /&gt;
    V=V-dt*K*U;&lt;br /&gt;
    sol(i+1,:)=[0 U' 0];&lt;br /&gt;
end&lt;br /&gt;
%DERIVAMOS LA SOLUCION EN x Y EN t:&lt;br /&gt;
dsol_dx=ones(size(sol));&lt;br /&gt;
for i=1:length(t)&lt;br /&gt;
    dsol_dx(i,:)=deriva(sol(i,:),xtot,0);&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
dsol_dt=ones(size(sol));&lt;br /&gt;
for i=1:length(xtot)&lt;br /&gt;
    dsol_dt(:,i)=deriva(sol(:,i),t,1); &lt;br /&gt;
end&lt;br /&gt;
%SUMAMOS LAS DERIVADAS AL CUADRADO E INTEGRAMOS:&lt;br /&gt;
dE=zeros(1,size(t,1));&lt;br /&gt;
for i=1:length(xtot)&lt;br /&gt;
    dE=dE+(dsol_dt(i,:).^2+dsol_dx(i,:).^2)*dx;&lt;br /&gt;
end&lt;br /&gt;
xtot=0:dx:L;&lt;br /&gt;
[xx,tt]=meshgrid(xtot,t);&lt;br /&gt;
figure(1)&lt;br /&gt;
surf(xx,tt,dsol_dx);&lt;br /&gt;
figure(2)&lt;br /&gt;
surf(xx,tt,dsol_dt);&lt;br /&gt;
plot(dE,t)&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
El resultado habría de ser una gráfica que representase la evolución de la energía de la cuerda frente al transcurso del tiempo. No obstante, en nuestra resolución aparece una gráfica en blanco que ajudicamos o a un posible error en el código, o que podemos interpretar como que la energía tiende a infinito.&lt;br /&gt;
&lt;br /&gt;
== Aplicaciones. ==&lt;br /&gt;
&lt;br /&gt;
==== Sumersión en un medio viscoso. ====&lt;br /&gt;
&lt;br /&gt;
Suponemos ahora la inmersión del cable en una medio viscoso. Este medio viscoso produce un amortiguamiento en el movimiento del cable, con lo que la anterior ecuación diferencial se convertiría en &lt;br /&gt;
\begin{equation}&lt;br /&gt;
u_{tt}-u_{xx}+au_{t}=0&lt;br /&gt;
\end{equation} &lt;br /&gt;
, siendo '''&amp;lt;math&amp;gt; a  &amp;lt;/math&amp;gt;''' una constante de amortiguamiento propia del medio viscoso.&lt;br /&gt;
Puesto que la función '''&amp;lt;math&amp;gt; u(x,t)  &amp;lt;/math&amp;gt;''' se ve afectada ahora por el medio viscoso, y más directamente, por la constante '''&amp;lt;math&amp;gt; a  &amp;lt;/math&amp;gt;''' que actúa en su nombre, la energía del cable ,que se expresaba como una integral en función de '''&amp;lt;math&amp;gt; u(x,t)  &amp;lt;/math&amp;gt;''' también se va a ver afectada:&lt;br /&gt;
\begin{equation}&lt;br /&gt;
E(t) = \int_{0}^{L} (u_{t}^{2}(x,t)+ u_{x}^{2}(x,t)) \cdot dx&lt;br /&gt;
\end{equation}&lt;br /&gt;
&lt;br /&gt;
El obetivo del siguiente código será hallar una representación de la evolución de la energía en función del tiempo a raíz de la modificación de la función '''&amp;lt;math&amp;gt; u(x,t)  &amp;lt;/math&amp;gt;'''. Para ello asignaremos distintos valores a la constante '''&amp;lt;math&amp;gt; a  &amp;lt;/math&amp;gt;'''. Éstos van a ser:&lt;br /&gt;
'''&amp;lt;math&amp;gt; a=0  &amp;lt;/math&amp;gt;''' (la energía para este valor resultará igual que la hallada en el apartado anterior)&lt;br /&gt;
'''&amp;lt;math&amp;gt; a=1  &amp;lt;/math&amp;gt;'''&lt;br /&gt;
'''&amp;lt;math&amp;gt; a=4  &amp;lt;/math&amp;gt;'''&lt;br /&gt;
'''&amp;lt;math&amp;gt; a=10  &amp;lt;/math&amp;gt;'''&lt;br /&gt;
''&amp;lt;math&amp;gt; a=100  &amp;lt;/math&amp;gt;'''&lt;br /&gt;
&lt;br /&gt;
El procedimiento numérico volverá a seguir el método de '''diferencias finitas''':&lt;br /&gt;
&lt;br /&gt;
'''PROGRAMA:'''&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
clc;clear all;close all;&lt;br /&gt;
%Datos&lt;br /&gt;
dx=0.1;L=10;&lt;br /&gt;
dt=0.001;NT=40;&lt;br /&gt;
A=[0,1,4,10,100];&lt;br /&gt;
x=0:dx:L;&lt;br /&gt;
t=0:dt:NT;&lt;br /&gt;
ENE=zeros(5,length(t));&lt;br /&gt;
&lt;br /&gt;
%Condición de contorno: U(0,t)=U(L,t)=0;&lt;br /&gt;
&lt;br /&gt;
for k=1:5&lt;br /&gt;
&lt;br /&gt;
%Vector solución y derivada temporal de la solución&lt;br /&gt;
%t=0&amp;lt;&amp;gt;T(1) es donde se guardan las condiciones iniciales&lt;br /&gt;
&lt;br /&gt;
U=zeros(length(t),length(x));&lt;br /&gt;
Dt_U=zeros(length(t),length(x));&lt;br /&gt;
Dx_U=zeros(length(t),length(x));    &lt;br /&gt;
&lt;br /&gt;
%Condición inicial: Estiramos 2 m del centro&lt;br /&gt;
%Modelizado como dos rectas antisimétricas que se cortan en x=5 y&lt;br /&gt;
%sujetas en x=0 y x=L.&lt;br /&gt;
&lt;br /&gt;
U(1,:)=2*sin(x*pi/L);&lt;br /&gt;
Dt_U(1,:)=zeros(1,length(x))';&lt;br /&gt;
D2t_U=Ecuacion5(U(1,:),x,-1);&lt;br /&gt;
&lt;br /&gt;
%Inicio del esquema numérico&lt;br /&gt;
%empieza en 2 ya que el 1 es la cond. inicial&lt;br /&gt;
&lt;br /&gt;
%ESQUEMA NEWMARK&lt;br /&gt;
&lt;br /&gt;
 for i=2:length(t)&lt;br /&gt;
    iter=[k,i]&lt;br /&gt;
    Ua=U(i-1,:);&lt;br /&gt;
    Dt_Ua=Dt_U(i-1,:);&lt;br /&gt;
    D2t_Ua=D2t_U;&lt;br /&gt;
    %Derivada segunda respecto del tiempo en el instante t, se obtiene de&lt;br /&gt;
    %eq. diferencial u_tt=f(x,u,u_x,u_xx)&lt;br /&gt;
    D2t_U=Ecuacion5(U(i-1,:),x,t(i))-A(k)*Dt_Ua;&lt;br /&gt;
    %Derivada primera&lt;br /&gt;
    Dt_U(i,:)=Dt_Ua+0.5*dt*(D2t_Ua+D2t_U);&lt;br /&gt;
    %Ecuacion&lt;br /&gt;
    U(i,:) = Ua+Dt_Ua*dt+(1/6)*(D2t_Ua+D2t_U)*dt^2;&lt;br /&gt;
 end&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 %ENERGIA&lt;br /&gt;
 for i=1:length(t)&lt;br /&gt;
    Dx_U(i,:)=deriva(x,U(i,:),0);&lt;br /&gt;
 end&lt;br /&gt;
dE=zeros(length(t),1);&lt;br /&gt;
for i=1:length(x)&lt;br /&gt;
    dE=dE+(Dt_U(:,i).^2+Dx_U(:,i).^2)*dx;&lt;br /&gt;
end&lt;br /&gt;
 ENE(k,:)=dE;&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
 figure(1)&lt;br /&gt;
 hold on&lt;br /&gt;
 grid&lt;br /&gt;
 aa=find(x==L/4);&lt;br /&gt;
 ab=find(x==3*L/4);&lt;br /&gt;
 legend('A=0','A=1','A=4','A=10','A=100');&lt;br /&gt;
 plot(t,ENE(1,:),t,ENE(2,:),t,ENE(3,:),t,ENE(4,:),t,ENE(5,:));&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''FUNCIONES:'''&lt;br /&gt;
DERIVA:&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
function v = deriva(x,y,t)&lt;br /&gt;
n = length(x);&lt;br /&gt;
del=zeros(1,n);&lt;br /&gt;
if t==1&lt;br /&gt;
    i=1;&lt;br /&gt;
    del(1)=(y(i)-y(i+1))/(-x(i)+x(i+1));&lt;br /&gt;
    for i=2:n&lt;br /&gt;
    del(i)=(y(i)-y(i-1))/(x(i)-x(i-1));&lt;br /&gt;
    end &lt;br /&gt;
elseif t==-1&lt;br /&gt;
    for i=1:n-1&lt;br /&gt;
    del(i)=(y(i)-y(i+1))/(x(i)-x(i+1));&lt;br /&gt;
    end &lt;br /&gt;
    i=n;&lt;br /&gt;
    del(i)=(y(i)-y(i-1))/(x(i)-x(i-1));&lt;br /&gt;
elseif t==0&lt;br /&gt;
    i=1;&lt;br /&gt;
    del(1)=(y(i)-y(i+1))/(+x(i)-x(i+1));&lt;br /&gt;
    for i=2:n-1&lt;br /&gt;
    del(i)=(y(i+1)-y(i-1))/(2*(x(i)-x(i-1)));&lt;br /&gt;
    end &lt;br /&gt;
    i=n;&lt;br /&gt;
    del(n)=(y(i)-y(i-1))/(x(i)-x(i-1));  &lt;br /&gt;
end&lt;br /&gt;
v=del;&lt;br /&gt;
end&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
'''ECUACIÓN 5:'''&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
function [ V ] = Ecuacion5( u,x,t )&lt;br /&gt;
%se guarda aquí la ecuación diferencial del tipo u_tt=f(x,u,u_x,u_xx)&lt;br /&gt;
%INCLUIDAS LAS CC AQUÍ&lt;br /&gt;
%PARA u_tt=u_xx&lt;br /&gt;
%CC: u(0,t)=u(L,t)=0;&lt;br /&gt;
&lt;br /&gt;
Ax=x(2)-x(1);&lt;br /&gt;
n=length(u);&lt;br /&gt;
V=zeros(1,n);&lt;br /&gt;
&lt;br /&gt;
%Las condiciones de contorno vienen en x(1)=0 y x(Nx)=L&lt;br /&gt;
u(1)=0;&lt;br /&gt;
&lt;br /&gt;
if(t==-1)&lt;br /&gt;
    u(n)=0;&lt;br /&gt;
else&lt;br /&gt;
    u(n)=0;&lt;br /&gt;
    %u(n)=sin(2*pi*F0*t);&lt;br /&gt;
    %u(n)=(1/(b*Ax-1))*u(n-1);&lt;br /&gt;
end&lt;br /&gt;
for i=2:n-1&lt;br /&gt;
    &lt;br /&gt;
    V(i)=(1/Ax^2)*(u(i+1)-2*u(i)+u(i-1));&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
i=1;&lt;br /&gt;
V(i)=(1/Ax^2)*(u(i+2)-2*u(i+1));&lt;br /&gt;
i=n;&lt;br /&gt;
V(i)=(1/Ax^2)*(u(i)-2*u(i-1)+u(i-2));&lt;br /&gt;
end&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
La gráfica buscada es:&lt;br /&gt;
[[Archivo:Graficadelaenergiaenunmedioviscoso.png|700px|thumb|centre|Gráfica de la energía(ordenadas) del cable respecto del tiempo (Abcisas).]]&lt;br /&gt;
En la gráfica se aprecian cuatro curvas de distintos colores correspondientes a '''&amp;lt;math&amp;gt; a=0  &amp;lt;/math&amp;gt;''','''&amp;lt;math&amp;gt; a=1  &amp;lt;/math&amp;gt;''','''&amp;lt;math&amp;gt; a=4  &amp;lt;/math&amp;gt;''','''&amp;lt;math&amp;gt; a=10  &amp;lt;/math&amp;gt;''',''&amp;lt;math&amp;gt; a=100  &amp;lt;/math&amp;gt;'''.&lt;br /&gt;
&lt;br /&gt;
Como podemos apreciar el valor de la energía disminuye a medida que aumentamos el valor de &amp;quot;a&amp;quot;. Esto es debido a que &amp;quot;a&amp;quot; define el coeficiente de amortiguamiento del líquido en el cual se encuentra la cuerda. Luego, dicha disminución de energía se produce por la disipación en el medio de gran parte de la energía inicial.&lt;br /&gt;
&lt;br /&gt;
==== Sujeción a una estructura de vibración periódica. ====&lt;br /&gt;
&lt;br /&gt;
En este caso supondremos que el extremo derecho que sujeta el cable está sometido a una vibración periódica de frecuencia  &amp;lt;math&amp;gt; F_0 &amp;lt;/math&amp;gt; [Herzios]. Al haber una vibración externa que afecta directamente al cable la expresión de su movimiento y, por consecuencia, de su energía, se va a ver modificada. Nosotros incluiremos esta modificación en la función &amp;lt;math&amp;gt; f(t) &amp;lt;/math&amp;gt; de problema de valor inicial que venimos tratando. Esta función va a pasar a ser: &lt;br /&gt;
\begin{equation}&lt;br /&gt;
f(t)= sin(2 \pi F_0t)&lt;br /&gt;
\end{equation}&lt;br /&gt;
&lt;br /&gt;
El objetivo será el de ver cómo afecta esta alteración en el desarrollo de la energía del cable frente al tiempo.&lt;br /&gt;
Para nuestro cálculo numérico especificaremos para las siguientes situaciones:&lt;br /&gt;
En primer lugar, para: &amp;lt;math&amp;gt; F_0= \frac{1}{L} + 0,01 &amp;lt;/math&amp;gt;&lt;br /&gt;
Después,para: &amp;lt;math&amp;gt; F_0= \frac{1}{L} - 0,01 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Y para finalizar, lo estudiaremos en un intervalo de tiempo de '''t=0''' hasta '''t=60''' : &amp;lt;math&amp;gt;t \in (0,60)&amp;lt;/math&amp;gt; [segundos].&lt;br /&gt;
&lt;br /&gt;
El código matemático para matlab / octave:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''PROGRAMA:'''&lt;br /&gt;
{{matlab|codigo= &lt;br /&gt;
clc;clear all;close all;&lt;br /&gt;
&lt;br /&gt;
%Datos&lt;br /&gt;
&lt;br /&gt;
dx=0.1;L=10;dt=0.0001;NT=60;&lt;br /&gt;
A=[0,1,4,10,100];&lt;br /&gt;
x=0:dx:L;t=0:dt:NT;&lt;br /&gt;
ENE=zeros(5,length(t));&lt;br /&gt;
&lt;br /&gt;
%Condición de contorno: U(0,t)=U(L,t)=0;&lt;br /&gt;
for k=1&lt;br /&gt;
%Vector solución y derivada temporal de la solución&lt;br /&gt;
%t=0&amp;lt;&amp;gt;T(1) es donde se guardan las condiciones iniciales&lt;br /&gt;
&lt;br /&gt;
U=zeros(length(t),length(x));&lt;br /&gt;
Dt_U=zeros(length(t),length(x));&lt;br /&gt;
Dx_U=zeros(length(t),length(x));&lt;br /&gt;
&lt;br /&gt;
%Condición inicial: Estiramos 2 m del centro&lt;br /&gt;
%Modelizado como dos rectas antisimétricas que se cortan en x=5 y&lt;br /&gt;
%sujetas en x=0 y x=L.&lt;br /&gt;
&lt;br /&gt;
U(1,:)=2*sin(x*pi/L);&lt;br /&gt;
Dt_U(1,:)=zeros(1,length(x))';&lt;br /&gt;
D2t_U=Ecuacion6(U(1,:),x,-1);&lt;br /&gt;
&lt;br /&gt;
%Inicio del esquema numérico&lt;br /&gt;
%empieza en 2 ya que el 1 es la cond. inicial&lt;br /&gt;
&lt;br /&gt;
%ESQUEMA NEWMARK&lt;br /&gt;
&lt;br /&gt;
 for i=2:length(t)&lt;br /&gt;
    iter=[k,i]&lt;br /&gt;
    Ua=U(i-1,:);&lt;br /&gt;
    Dt_Ua=Dt_U(i-1,:);&lt;br /&gt;
    D2t_Ua=D2t_U;&lt;br /&gt;
    %Derivada segunda respecto del tiempo en el instante t, se obtiene de&lt;br /&gt;
    %eq. diferencial u_tt=f(x,u,u_x,u_xx)&lt;br /&gt;
    D2t_U=Ecuacion6(U(i-1,:),x,t(i))-A(k)*Dt_Ua;&lt;br /&gt;
    %Derivada primera&lt;br /&gt;
    Dt_U(i,:)=Dt_Ua+0.5*dt*(D2t_Ua+D2t_U);&lt;br /&gt;
    %Ecuacion&lt;br /&gt;
    U(i,:) = Ua+Dt_Ua*dt+(1/6)*(D2t_Ua+D2t_U)*dt^2;&lt;br /&gt;
 end&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 %ENERGIA&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 for i=1:length(t)&lt;br /&gt;
    Dx_U(i,:)=deriva(x,U(i,:),0);&lt;br /&gt;
 end&lt;br /&gt;
dE=zeros(length(t),1);&lt;br /&gt;
for i=1:length(x)&lt;br /&gt;
    dE=dE+(Dt_U(:,i).^2+Dx_U(:,i).^2)*dx;&lt;br /&gt;
end&lt;br /&gt;
 ENE(k,:)=dE;&lt;br /&gt;
end&lt;br /&gt;
 figure(1)&lt;br /&gt;
 hold on&lt;br /&gt;
 grid&lt;br /&gt;
 aa=find(x==L/4);&lt;br /&gt;
 ab=find(x==3*L/4);&lt;br /&gt;
 imagesc(U)&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''FUNCIONES:'''&lt;br /&gt;
&lt;br /&gt;
DERIVA:&lt;br /&gt;
{{matlab|codigo= &lt;br /&gt;
function v = deriva(x,y,t)&lt;br /&gt;
n = length(x);&lt;br /&gt;
del=zeros(1,n);&lt;br /&gt;
if t==1&lt;br /&gt;
    i=1;&lt;br /&gt;
    del(1)=(y(i)-y(i+1))/(-x(i)+x(i+1));&lt;br /&gt;
    for i=2:n&lt;br /&gt;
    del(i)=(y(i)-y(i-1))/(x(i)-x(i-1));&lt;br /&gt;
    end &lt;br /&gt;
elseif t==-1&lt;br /&gt;
    for i=1:n-1&lt;br /&gt;
    del(i)=(y(i)-y(i+1))/(x(i)-x(i+1));&lt;br /&gt;
    end &lt;br /&gt;
    i=n;&lt;br /&gt;
    del(i)=(y(i)-y(i-1))/(x(i)-x(i-1));&lt;br /&gt;
elseif t==0&lt;br /&gt;
    i=1;&lt;br /&gt;
    del(1)=(y(i)-y(i+1))/(+x(i)-x(i+1));&lt;br /&gt;
    for i=2:n-1&lt;br /&gt;
    del(i)=(y(i+1)-y(i-1))/(2*(x(i)-x(i-1)));&lt;br /&gt;
    end &lt;br /&gt;
    i=n;&lt;br /&gt;
    del(n)=(y(i)-y(i-1))/(x(i)-x(i-1));  &lt;br /&gt;
end&lt;br /&gt;
v=del;&lt;br /&gt;
end&lt;br /&gt;
}}&lt;br /&gt;
'''ECUACIÓN 6:'''&lt;br /&gt;
{{matlab|codigo= &lt;br /&gt;
function [ V ] = Ecuacion6( u,x,t )&lt;br /&gt;
&lt;br /&gt;
%se guarda aquí la ecuación diferencial del tipo u_tt=f(x,u,u_x,u_xx)&lt;br /&gt;
%INCLUIDAS LAS CC AQUÍ!&lt;br /&gt;
%PARA u_tt=u_xx&lt;br /&gt;
%CC: u(0,t)=u(L,t)=0;&lt;br /&gt;
&lt;br /&gt;
Ax=x(2)-x(1);&lt;br /&gt;
n=length(u);&lt;br /&gt;
V=zeros(1,n);&lt;br /&gt;
F0=(1/x(n))+0.01;&lt;br /&gt;
b=-2;&lt;br /&gt;
&lt;br /&gt;
%Las condiciones de contorno vienen en x(1)=0 y x(Nx)=L&lt;br /&gt;
&lt;br /&gt;
u(1)=0;&lt;br /&gt;
if(t==-1)&lt;br /&gt;
    u(n)=0;&lt;br /&gt;
else&lt;br /&gt;
    %u(n)=0;&lt;br /&gt;
    u(n)=sin(2*pi*F0*t);&lt;br /&gt;
    %u(n)=(1/(b*Ax-1))*u(n-1);&lt;br /&gt;
end&lt;br /&gt;
for i=2:n-1&lt;br /&gt;
    V(i)=(1/Ax^2)*(u(i+1)-2*u(i)+u(i-1));&lt;br /&gt;
end&lt;br /&gt;
i=1;&lt;br /&gt;
V(i)=(1/Ax^2)*(u(i+2)-2*u(i+1));&lt;br /&gt;
i=n;&lt;br /&gt;
V(i)=(1/Ax^2)*(u(i)-2*u(i-1)+u(i-2));&lt;br /&gt;
end&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
'''function [ V ] = Ecuacion6( u,x,t )'''&lt;br /&gt;
{{matlab|codigo= &lt;br /&gt;
%se guarda aquí la ecuación diferencial del tipo u_tt=f(x,u,u_x,u_xx)&lt;br /&gt;
%INCLUIDAS LAS CC AQUÍ!&lt;br /&gt;
%PARA u_tt=u_xx&lt;br /&gt;
%CC: u(0,t)=u(L,t)=0;&lt;br /&gt;
&lt;br /&gt;
Ax=x(2)-x(1);&lt;br /&gt;
n=length(u);&lt;br /&gt;
V=zeros(1,n);&lt;br /&gt;
F0=(1/x(n))-0.01;&lt;br /&gt;
b=-2;&lt;br /&gt;
&lt;br /&gt;
%Las condiciones de contorno vienen en x(1)=0 y x(Nx)=L&lt;br /&gt;
&lt;br /&gt;
u(1)=0;&lt;br /&gt;
if(t==-1)&lt;br /&gt;
    u(n)=0;&lt;br /&gt;
else&lt;br /&gt;
    %u(n)=0;&lt;br /&gt;
    u(n)=sin(2*pi*F0*t);&lt;br /&gt;
    %u(n)=(1/(b*Ax-1))*u(n-1);&lt;br /&gt;
end&lt;br /&gt;
for i=2:n-1&lt;br /&gt;
    V(i)=(1/Ax^2)*(u(i+1)-2*u(i)+u(i-1));&lt;br /&gt;
end&lt;br /&gt;
i=1;&lt;br /&gt;
V(i)=(1/Ax^2)*(u(i+2)-2*u(i+1));&lt;br /&gt;
i=n;&lt;br /&gt;
V(i)=(1/Ax^2)*(u(i)-2*u(i-1)+u(i-2));&lt;br /&gt;
end&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''function [ V ] = Ecuacion6( u,x,t )'''&lt;br /&gt;
{{matlab|codigo= &lt;br /&gt;
%se guarda aquí la ecuación diferencial del tipo u_tt=f(x,u,u_x,u_xx)&lt;br /&gt;
%INCLUIDAS LAS CC AQUÍ!&lt;br /&gt;
%PARA u_tt=u_xx&lt;br /&gt;
%CC: u(0,t)=u(L,t)=0;&lt;br /&gt;
&lt;br /&gt;
Ax=x(2)-x(1);&lt;br /&gt;
n=length(u);&lt;br /&gt;
V=zeros(1,n);&lt;br /&gt;
F0=(1/x(n));&lt;br /&gt;
b=-2;&lt;br /&gt;
&lt;br /&gt;
%Las condiciones de contorno vienen en x(1)=0 y x(Nx)=L&lt;br /&gt;
&lt;br /&gt;
u(1)=0;&lt;br /&gt;
if(t==-1)&lt;br /&gt;
    u(n)=0;&lt;br /&gt;
else&lt;br /&gt;
    %u(n)=0;&lt;br /&gt;
    u(n)=sin(2*pi*F0*t);&lt;br /&gt;
    %u(n)=(1/(b*Ax-1))*u(n-1);&lt;br /&gt;
end&lt;br /&gt;
for i=2:n-1&lt;br /&gt;
    V(i)=(1/Ax^2)*(u(i+1)-2*u(i)+u(i-1));&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
i=1;&lt;br /&gt;
V(i)=(1/Ax^2)*(u(i+2)-2*u(i+1));&lt;br /&gt;
i=n;&lt;br /&gt;
V(i)=(1/Ax^2)*(u(i)-2*u(i-1)+u(i-2));&lt;br /&gt;
end&lt;br /&gt;
}}&lt;br /&gt;
 &lt;br /&gt;
La gráfica resultante es la siguiente:&lt;br /&gt;
[[Archivo:Graficaestructuraconvibracion.png|650px|thumb|centre|Gráfica en tres dimensiones de la energía de un cable cuyo extremo derecho está sometido a una vibración externa periódica.]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
En dicha gráfica, se puede observar que la forma de la función o la energía se ve alterada por la condición impuesta de tal manera que ésta adquiere una forma también sinusoidal, y que su estabilización dependería del tiempo transcurrido entre vibración y vibración.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==== Sujeción a un aparato que responde a una vibración externa. ====&lt;br /&gt;
&lt;br /&gt;
La siguiente situación que vamos a representar a modelar a través de ecuaciones diferenciales va a ser la siguiente: supondremos que el cable de la anterior situación (que recibía en su extremo derecho una vibración periódica de &amp;lt;math&amp;gt; F_0 &amp;lt;/math&amp;gt; [Herzios])envía una respuesta a la vibración que recibe. Esta situación la vamos a representar como un cambio en la condición de contorno; ésta va a pasar a ser: &amp;lt;math&amp;gt; u_x(L,t)=bu(L,t) &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
El objetivo, de nuevo será representar la evolución de la energía respecto del tiempo y ver si este cambio en el problema se ve reflejado en su representación. &lt;br /&gt;
En el código numérico, no obstante, la situación de &amp;lt;math&amp;gt; u_x(L,t)=bu(L,t) &amp;lt;/math&amp;gt; la vamos a aproximar por la siguiente expresión:&lt;br /&gt;
&amp;lt;math&amp;gt; u_x(L,t)-bu(L,t)  \cong  \frac{u_{N+1}(t)-u_{N-1}(t)}{2h-u_N(t)} &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
En la resolución del problema emplearemos de nuevo la condición inicial de sujetar el cable por el centro y elevarlo 2 m perpendicularmente: &lt;br /&gt;
&amp;lt;math&amp;gt; u(x,0)=g(x)= 2- |\frac{2}{5}x -2| &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Y además obtendremos el resultado para los dos valores siguientes de &amp;lt;math&amp;gt;b&amp;lt;/math&amp;gt; :&lt;br /&gt;
Para &amp;lt;math&amp;gt; b=2 &amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt; b=-2 &amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
El código numérico de matlab/octave es:&lt;br /&gt;
&lt;br /&gt;
'''PROGRAMA:'''&lt;br /&gt;
{{matlab|codigo= &lt;br /&gt;
clc;clear all;close all;&lt;br /&gt;
&lt;br /&gt;
%Datos&lt;br /&gt;
dx=0.1;L=10;dt=0.0001;NT=40;&lt;br /&gt;
A=[0,1,4,10,100];&lt;br /&gt;
x=0:dx:L;t=0:dt:NT;&lt;br /&gt;
ENE=zeros(5,length(t));&lt;br /&gt;
&lt;br /&gt;
%Condición de contorno: U(0,t)=U(L,t)=0;&lt;br /&gt;
for k=1&lt;br /&gt;
&lt;br /&gt;
%Vector solución y derivada temporal de la solución&lt;br /&gt;
%t=0&amp;lt;&amp;gt;T(1) es donde se guardan las condiciones iniciales&lt;br /&gt;
&lt;br /&gt;
U=zeros(length(t),length(x));&lt;br /&gt;
Dt_U=zeros(length(t),length(x));&lt;br /&gt;
Dx_U=zeros(length(t),length(x));    &lt;br /&gt;
&lt;br /&gt;
%Condición inicial: Estiramos 2 m del centro&lt;br /&gt;
%Modelizado como dos rectas antisimétricas que se cortan en x=5 y&lt;br /&gt;
%sujetas en x=0 y x=L.&lt;br /&gt;
&lt;br /&gt;
U(1,:)=2*sin(x*pi/L);&lt;br /&gt;
Dt_U(1,:)=zeros(1,length(x))';&lt;br /&gt;
D2t_U=Ecuacion7(U(1,:),x,-1);&lt;br /&gt;
&lt;br /&gt;
%Inicio del esquema numérico&lt;br /&gt;
%empieza en 2 ya que el 1 es la cond. inicial&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
%ESQUEMA NEWMARK&lt;br /&gt;
 for i=2:length(t)&lt;br /&gt;
    iter=[k,i]&lt;br /&gt;
    Ua=U(i-1,:);&lt;br /&gt;
    Dt_Ua=Dt_U(i-1,:);&lt;br /&gt;
    D2t_Ua=D2t_U;&lt;br /&gt;
&lt;br /&gt;
    %Derivada segunda respecto del tiempo en el instante t, se obtiene de&lt;br /&gt;
    %eq. diferencial u_tt=f(x,u,u_x,u_xx)&lt;br /&gt;
&lt;br /&gt;
    D2t_U=Ecuacion7(U(i-1,:),x,t(i))-A(k)*Dt_Ua;&lt;br /&gt;
&lt;br /&gt;
    %Derivada primera&lt;br /&gt;
    Dt_U(i,:)=Dt_Ua+0.5*dt*(D2t_Ua+D2t_U);&lt;br /&gt;
&lt;br /&gt;
    %Ecuacion&lt;br /&gt;
    U(i,:) = Ua+Dt_Ua*dt+(1/6)*(D2t_Ua+D2t_U)*dt^2;&lt;br /&gt;
 end&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 %ENERGIA&lt;br /&gt;
 for i=1:length(t)&lt;br /&gt;
    Dx_U(i,:)=deriva(x,U(i,:),0);&lt;br /&gt;
 end&lt;br /&gt;
dE=zeros(length(t),1);&lt;br /&gt;
for i=1:length(x)&lt;br /&gt;
    dE=dE+(Dt_U(:,i).^2+Dx_U(:,i).^2)*dx;&lt;br /&gt;
end&lt;br /&gt;
 ENE(k,:)=dE;&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
 figure(1)&lt;br /&gt;
 hold on&lt;br /&gt;
 grid&lt;br /&gt;
 aa=find(x==L/4);&lt;br /&gt;
 ab=find(x==3*L/4);&lt;br /&gt;
 plot(t,ENE(1,:))&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
'''FUNCIONES:'''&lt;br /&gt;
{{matlab|codigo= &lt;br /&gt;
function v = deriva(x,y,t)&lt;br /&gt;
n = length(x);&lt;br /&gt;
del=zeros(1,n);&lt;br /&gt;
if t==1&lt;br /&gt;
    i=1;&lt;br /&gt;
    del(1)=(y(i)-y(i+1))/(-x(i)+x(i+1));&lt;br /&gt;
    for i=2:n&lt;br /&gt;
    del(i)=(y(i)-y(i-1))/(x(i)-x(i-1));&lt;br /&gt;
    end &lt;br /&gt;
elseif t==-1&lt;br /&gt;
    for i=1:n-1&lt;br /&gt;
    del(i)=(y(i)-y(i+1))/(x(i)-x(i+1));&lt;br /&gt;
    end &lt;br /&gt;
    i=n;&lt;br /&gt;
    del(i)=(y(i)-y(i-1))/(x(i)-x(i-1));&lt;br /&gt;
elseif t==0&lt;br /&gt;
    i=1;&lt;br /&gt;
    del(1)=(y(i)-y(i+1))/(+x(i)-x(i+1));&lt;br /&gt;
    for i=2:n-1&lt;br /&gt;
    del(i)=(y(i+1)-y(i-1))/(2*(x(i)-x(i-1)));&lt;br /&gt;
    end &lt;br /&gt;
    i=n;&lt;br /&gt;
    del(n)=(y(i)-y(i-1))/(x(i)-x(i-1));  &lt;br /&gt;
end&lt;br /&gt;
v=del;&lt;br /&gt;
end&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
'''function [ V ] = Ecuacion7( u,x,t )'''&lt;br /&gt;
{{matlab|codigo= &lt;br /&gt;
%se guarda aquí la ecuación diferencial del tipo u_tt=f(x,u,u_x,u_xx)&lt;br /&gt;
%INCLUIDAS LAS CC AQUÍ!&lt;br /&gt;
%PARA u_tt=u_xx&lt;br /&gt;
%CC: u(0,t)=u(L,t)=0;&lt;br /&gt;
&lt;br /&gt;
Ax=x(2)-x(1);&lt;br /&gt;
n=length(u);&lt;br /&gt;
V=zeros(1,n);&lt;br /&gt;
F0=(1/x(n));&lt;br /&gt;
b=2;&lt;br /&gt;
&lt;br /&gt;
%Las condiciones de contorno vienen en x(1)=0 y x(Nx)=L&lt;br /&gt;
u(1)=0;&lt;br /&gt;
if(t==-1)&lt;br /&gt;
    u(n)=0;&lt;br /&gt;
else&lt;br /&gt;
    %u(n)=0;&lt;br /&gt;
    %u(n)=sin(2*pi*F0*t);&lt;br /&gt;
    u(n)=(1/(b*Ax-1))*u(n-1);&lt;br /&gt;
end&lt;br /&gt;
for i=2:n-1&lt;br /&gt;
    V(i)=(1/Ax^2)*(u(i+1)-2*u(i)+u(i-1));&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
i=1;&lt;br /&gt;
V(i)=(1/Ax^2)*(u(i+2)-2*u(i+1));&lt;br /&gt;
i=n;&lt;br /&gt;
V(i)=(1/Ax^2)*(u(i)-2*u(i-1)+u(i-2));&lt;br /&gt;
end&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
'''function [ V ] = Ecuacion7( u,x,t )'''&lt;br /&gt;
{{matlab|codigo= &lt;br /&gt;
%se guarda aquí la ecuación diferencial del tipo u_tt=f(x,u,u_x,u_xx)&lt;br /&gt;
%INCLUIDAS LAS CC AQUÍ!&lt;br /&gt;
%PARA u_tt=u_xx&lt;br /&gt;
%CC: u(0,t)=u(L,t)=0;&lt;br /&gt;
&lt;br /&gt;
Ax=x(2)-x(1);&lt;br /&gt;
n=length(u);&lt;br /&gt;
V=zeros(1,n);&lt;br /&gt;
F0=(1/x(n));&lt;br /&gt;
b=-2;&lt;br /&gt;
&lt;br /&gt;
%Las condiciones de contorno vienen en x(1)=0 y x(Nx)=L&lt;br /&gt;
u(1)=0;&lt;br /&gt;
&lt;br /&gt;
if(t==-1)&lt;br /&gt;
    u(n)=0;&lt;br /&gt;
else&lt;br /&gt;
    %u(n)=0;&lt;br /&gt;
    %u(n)=sin(2*pi*F0*t);&lt;br /&gt;
    u(n)=(1/(b*Ax-1))*u(n-1);&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
for i=2:n-1&lt;br /&gt;
    V(i)=(1/Ax^2)*(u(i+1)-2*u(i)+u(i-1));&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
i=1;&lt;br /&gt;
V(i)=(1/Ax^2)*(u(i+2)-2*u(i+1));&lt;br /&gt;
i=n;&lt;br /&gt;
V(i)=(1/Ax^2)*(u(i)-2*u(i-1)+u(i-2));&lt;br /&gt;
end&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
La imagen resultante es:&lt;br /&gt;
[[Archivo:Energiadelcableenrespuestaavibracionexterna.png|700px|thumb|centre|Gráfica de la energía (ordenadas) de un cable frente al tiempo (abcisas) que recibe una vibración en su extremo derecho y que responde a dicha vibración. ]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
La anterior gráfica muestra el comportamiento de la cuerda como respuesta a la vibración producida en uno de sus extremos así como el movimiento transversal del punto medio al comienzo. Podemos observar el movimiento transversal de cada punto de la cuerda a través de la expresión de la energía, así como que, a medida que transcurre el tiempo, ésta se va estabilizando. La forma de la función recuerda a una función sinusoidal debido a la forma de la condición de contorno impuesta.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Categoría:Ecuaciones Diferentiales]]&lt;br /&gt;
 [[Categoría:ED13/14]]&lt;br /&gt;
 [[Categoría:Trabajos 2013-14]]&lt;/div&gt;</summary>
		<author><name>Lucia Lopez</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Circuitos_RL_(grupo_B)&amp;diff=10211</id>
		<title>Circuitos RL (grupo B)</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Circuitos_RL_(grupo_B)&amp;diff=10211"/>
				<updated>2014-03-05T11:38:58Z</updated>
		
		<summary type="html">&lt;p&gt;Lucia Lopez: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{ TrabajoED | Circuitos RL. Grupo 2-B | [[:Categoría:Ecuaciones Diferenciales|Ecuaciones Diferenciales]]|[[:Categoría:ED13/14|Curso 2013-14]] | Diego Solano López,Lucia López Sánchez,Adela González Barbado,Araceli Martín Candilejo,Ignacio Díaz Caneja Camblor,Alberto Fernández Pérez }}&lt;br /&gt;
&lt;br /&gt;
El circuito eléctrico mas simple esta compuesto de una resistencia, un inductor o bobina y una fuente de alimentación.&lt;br /&gt;
* En una resistencia R, la Ley de Ohm establece:&lt;br /&gt;
&lt;br /&gt;
  &amp;lt;math&amp;gt;i(t)={V(t)\over R}&amp;lt;/math&amp;gt;&lt;br /&gt;
* En un inductor L la Ley de Faraday dice:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; V(t)=L\cdot i'(t)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
Las leyes de Kirchhoff establecen el comportamiento de los circuitos:&lt;br /&gt;
# '''Ley de corriente:''' en cada nudo la suma de corrientes que entra coincide con la suma de corrientes que sale.&lt;br /&gt;
# '''Ley de tensiones:''' en cada ciclo cerrado, la suma de las diferencias de potencial eléctrico es nula.&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Segunda ley de Kirchhoff para un circuito RL simple. ==&lt;br /&gt;
==== Ecuación diferencial-Resolución y representación analítica.====&lt;br /&gt;
Basándonos en la segunda ley de Kirchhoff sobre el circuito que observamos en la imagen, podemos trabajar con la siguiente ecuación diferencial.&lt;br /&gt;
&lt;br /&gt;
Esta vez vamos a obtener la solución del valor concreto de un punto de una función hallada a partir de una ecuación diferencial. Será así de nuevo el caso de una ecuación diferencial que define las relaciones entre las corrientes y sus derivadas en un circuito RL de varias resistencias y bobinas. Volveremos a utilizar el segundo circuito mostrado en este artículo:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;math&amp;gt; i'(t)+{R\over L}i(t)-{V(t)\over L}=0 &amp;lt;/math&amp;gt; [[Image:cicuito1.jpg|300px|thumb|right|Circuito RL simple ]]&lt;br /&gt;
&lt;br /&gt;
Al suponer que en el instante t=0 el circuito está abierto, podemos establecer para el problema de Cauchy el valor inicial '''&amp;lt;math&amp;gt; i_0(t)=0 &amp;lt;/math&amp;gt;'''. Considerando que la alimentación posee un voltaje constante '''V(t)=20V, L=0.2 y R=5Ω''', llegamos al problema:&lt;br /&gt;
&lt;br /&gt;
                              &amp;lt;math&amp;gt;\left\{\begin{matrix}\ i'(t)+{25}i(t)-{100}=0 \\i(0)=0\end{matrix}\right.&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
La resolución de éste mediante &amp;lt;math&amp;gt;i \cdot e^{\int{\frac{R}{L}dt}} = \int{e^{\frac{R \cdot t}{L}}dt} \hspace{0.5cm} \rightarrow \hspace{0.5cm} &amp;lt;/math&amp;gt; &lt;br /&gt;
&amp;lt;math&amp;gt;i \cdot e^{\frac{R \cdot t}{L}} = \frac{V}{R}e^{\frac{R \cdot t}{L}}+C&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt; nos da:&lt;br /&gt;
 &amp;lt;math&amp;gt; i(t)=4-4e^{-25t} &amp;lt;/math&amp;gt;&lt;br /&gt;
La gráfica de la función nos muestra la evolución de la intensidad. En ella se puede apreciar una rápida subida en los primeros instantes que se ralentiza hasta llegar a ser prácticamente constante con un valor de 4. Por lo que podemos afirmar que la intensidad se estabiliza en un corto periodo de tiempo.&lt;br /&gt;
[[Image:Funcion.jpg|500px|thumb|center|Gráfica de la intensidad en un circuito RL simple ]]&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo= &lt;br /&gt;
fplot('4-4*exp(-25*t)',[0,0.5,0,5]);&lt;br /&gt;
xlabel('Tiempo')&lt;br /&gt;
ylabel('Intensidad(t)')&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
==== Método de Euler. ====&lt;br /&gt;
Este método parte de la posibilidad de aproximar una función original mediante rectas tangentes partiendo de un punto dado. Sabiendo que la recta tangente de una función en un punto es su derivada en dicho punto, este método consiste en calcular derivadas de la función en diferentes puntos pertenecientes a dicha función. Estos puntos serán tomados con la misma distancia a lo largo de la recta, a esta distancia la denominamos paso. &lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Image:Euler.png|300px|thumb|center|Aproximación de una función por el método de Euler]]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
A continuación, vamos a calcular la función por el método de Euler, resolviendo la ecuación con diferentes pasos. De esta forma, podremos observar y analizar los distintos resultados obtenidos al modificar los pasos, hasta que lleguemos a una conclusión evidente. Además calcularemos el error cometido por la aproximación del método para ser más precios en nuestras observaciones.&lt;br /&gt;
&lt;br /&gt;
Comenzamos a analizar este método elaborando un programa con un paso de 0.01, que podemos visualizar a continuación.&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo= &lt;br /&gt;
%Definimos las condiciones iniciales.&lt;br /&gt;
clear all&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=1;&lt;br /&gt;
&lt;br /&gt;
%Establecemos un paso h=0'01.&lt;br /&gt;
h=0.01;&lt;br /&gt;
t=t0:h:tN;&lt;br /&gt;
N=(tN-t0)/h;&lt;br /&gt;
&lt;br /&gt;
%Resolvemos la ecuación.&lt;br /&gt;
ii=0;&lt;br /&gt;
i(1)=ii;&lt;br /&gt;
for n=1:N;&lt;br /&gt;
  ii=ii+h*(100-25*ii);&lt;br /&gt;
  i(n+1)=ii;&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
%Dibujamos la gráfica.&lt;br /&gt;
figure(1)&lt;br /&gt;
plot(t,i,'-g','linewidth',2);&lt;br /&gt;
xlabel('Tiempo');&lt;br /&gt;
ylabel('Intensidad(t)');&lt;br /&gt;
axis([-0.1,1,0,5])&lt;br /&gt;
&lt;br /&gt;
%Calculo error y lo dibujamos.&lt;br /&gt;
r=4-4*exp(-25*t);&lt;br /&gt;
error=abs(r-i);&lt;br /&gt;
figure(2)&lt;br /&gt;
plot(t,error,'-r','linewidth',2)&lt;br /&gt;
xlabel('Tiempo');&lt;br /&gt;
ylabel('Error');&lt;br /&gt;
axis([-0.1,1,-0.05,0.25])&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
Un paso de discretización de 0'01 proporciona un error muy pequeño, lo que aporta una aproximación de la función muy similar a la real, como podemos observar en la primera figura. Analizando el error que nos ofrece dicha aproximación (imagen de la derecha),su valor no supera el 0'2, por tanto, podemos afirmar analíticamente la exactitud de la aproximación. Además, podemos observar que el error se anula al llegar a t=0'25, momento en el que coincide la función aproximada por Euler con la función real. &lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Image:0.01.jpg|500px|thumb|left|Resultado de la intensidad del circuito RL simple por el método de Euler para h=0'01]] [[Image:error0.01.jpg|500px|thumb|center|Gráfica del error cometido en el cálculo de la intensidad por el método de Euler para h=0'01 ]]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br/&amp;gt; &amp;lt;br/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Una vez analizado el resultado anterior, resolvemos el problema con un paso mayor.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
{{matlab|codigo= %Resolucion por Euler&lt;br /&gt;
%Definimos las condiciones iniciales.&lt;br /&gt;
clear all&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=1;&lt;br /&gt;
&lt;br /&gt;
%Probamos con un paso de discretización mayor, h=0'05.&lt;br /&gt;
h=0.05;&lt;br /&gt;
t=t0:h:tN;&lt;br /&gt;
N=(tN-t0)/h;&lt;br /&gt;
&lt;br /&gt;
%Resolvemos la ecuación.&lt;br /&gt;
ii=0;&lt;br /&gt;
i(1)=ii;&lt;br /&gt;
for n=1:N;&lt;br /&gt;
  ii=ii+h*(100-25*ii);&lt;br /&gt;
  i(n+1)=ii;&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
%Creamos el dibujo.&lt;br /&gt;
figure(1)&lt;br /&gt;
plot(t,i,'-g','linewidth',2);&lt;br /&gt;
xlabel('Tiempo');&lt;br /&gt;
ylabel('Intensidad(t)');&lt;br /&gt;
axis([-0.1,1,0,5.1])&lt;br /&gt;
&lt;br /&gt;
%Calculo error y dibujamos.&lt;br /&gt;
r=4-4*exp(-25*t);&lt;br /&gt;
error=abs(r-i);&lt;br /&gt;
figure(2)&lt;br /&gt;
plot(t,error,'-r','linewidth',2)&lt;br /&gt;
axis([-0.1,1,-0.05,2.25])&lt;br /&gt;
xlabel('Tiempo');&lt;br /&gt;
ylabel('Error');&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br/&amp;gt;&lt;br /&gt;
Podemos observar que al aumentar el paso de discretización a 0'05 la aproximación de la curva se ha convertido en una combinación de rectas que asemejan la evolución de la intensidad, ya que sigue manteniendo una rápida subida inicial.  A pesar de ello, el error ha aumentado su valor en un 1000% en el periodo transitorio, pero vuelve a anularse en el permanente ya que a partir del punto de estabilización los valores aproximados coincide con los reales.El cambio producido en el incremento inicial de la intensidad se debe a la brevedad de éste, por lo que resulta poco preciso trabajar con pasos mayores.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
[[Image:0.05.jpg|500px|thumb|left|Resultado de la intensidad del circuito RL simple por el método de Euler para h=0'05 ]] [[Image:error0.05.jpg|500px|thumb|center| Gráfica del error cometido en el cálculo de la intensidad por el método de Euler para h=0'05]]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br/&amp;gt; &amp;lt;br/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Para estar más seguro de la afirmación hecha hace unos instantes, en la que hemos asegurado que es poco preciso trabajar con pasos mayores vamos a resolver y comparar en la misma gráfica el problema resuelto con distintos valores para la h, el paso.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br/&amp;gt;&lt;br /&gt;
{{matlab|codigo= &lt;br /&gt;
%Comparamos las gráficas con diferentes pasos y la función real.&lt;br /&gt;
clear all&lt;br /&gt;
&lt;br /&gt;
%Guardamos el valor para cada paso.&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=1;&lt;br /&gt;
h1=0.05;&lt;br /&gt;
t1=t0:h1:tN;&lt;br /&gt;
N1=(tN-t0)/h1;&lt;br /&gt;
h2=0.01;&lt;br /&gt;
t2=t0:h2:tN;&lt;br /&gt;
N2=(tN-t0)/h2;&lt;br /&gt;
h3=0.075;&lt;br /&gt;
t3=t0:h3:tN;&lt;br /&gt;
N3=(tN-t0)/h3;&lt;br /&gt;
&lt;br /&gt;
%Creamos un bucle para cada h y resolver las cuatro ecuaciones.&lt;br /&gt;
ii=0;&lt;br /&gt;
i(1)=ii;&lt;br /&gt;
for n=1:N1;&lt;br /&gt;
  ii=ii+h1*(100-25*ii);&lt;br /&gt;
  i(n+1)=ii;&lt;br /&gt;
end&lt;br /&gt;
yy=0;&lt;br /&gt;
y(1)=yy;&lt;br /&gt;
for m=1:N2;&lt;br /&gt;
  yy=yy+h2*(100-25*yy);&lt;br /&gt;
  y(m+1)=yy;&lt;br /&gt;
end&lt;br /&gt;
jj=0;&lt;br /&gt;
j(1)=jj;&lt;br /&gt;
for m=1:N3;&lt;br /&gt;
  jj=jj+h3*(100-25*jj);&lt;br /&gt;
  j(m+1)=jj;&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
%Hacemos el dibujo con todas las gráficas a la vez para hacer una comparación global de estas y la función real.&lt;br /&gt;
hold on &lt;br /&gt;
fplot('4-4*exp(-25*t2)',[0,1,0,5],'r');&lt;br /&gt;
plot(t1,i,'-b','linewidth',1);&lt;br /&gt;
plot(t2,y,'-y','linewidth',1);&lt;br /&gt;
plot(t3,j,'-g','linewidth',1);&lt;br /&gt;
legend('Función real','h=0.05', 'h=0.01', 'h=0.075');&lt;br /&gt;
title('Comparativa');&lt;br /&gt;
xlabel('Tiempo');&lt;br /&gt;
ylabel('Intensidad(t)');&lt;br /&gt;
axis([-0.1,1,-0.05,8])&lt;br /&gt;
hold off&lt;br /&gt;
&lt;br /&gt;
%Quitamos el paso mayor para ver con mayor exactitud como se difieren las aproximaciones más correctas.&lt;br /&gt;
figure (2)&lt;br /&gt;
hold on &lt;br /&gt;
fplot('4-4*exp(-25*t2)',[0,1,0,5],'r');&lt;br /&gt;
plot(t1,i,'-b','linewidth',1);&lt;br /&gt;
plot(t2,y,'-g','linewidth',1);&lt;br /&gt;
legend('Función real','h=0.05', 'h=0.01');&lt;br /&gt;
title('Comparativa');&lt;br /&gt;
xlabel('Tiempo');&lt;br /&gt;
ylabel('Intensidad(t)');&lt;br /&gt;
axis([0,0.5,-0.05,5])&lt;br /&gt;
hold off&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
Al ensayar con diferentes pasos de discretización vemos como la aproximación de la gráfica se va degenerando, hasta el punto en el que si se sobrepasa 0'05, la volatilidad de las oscilaciones llega a ser tal que la intensidad tarda un periodo sensiblemente mayor en estabilizarse y el error no se anula, ya que los valores son muy lejanos a los reales. Como la subida de intensidad se produce muy rápidamente, una h≥0'05 es, como podemos ver la imagen de la izquierda, muy poco precisa. Si se mantiene en el intervalo [0'02,0'05] se elimina la forma exponencial de la función (aparecen en su lugar fluctuaciones rectilíneas) pero se sigue reflejando la evolución de la intensidad hasta que se vuelve constante. Con un paso de 0'01, se consigue una gráfica exponencial con valores ligeramente superiores a los reales, por tanto podemos afirmar cuanto más pequeño sea el paso, más exacta y precisa será la aproximación ya que se trata de un aumento prácticamente instantáneo.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
[[Image:123456.jpg|500px|thumb|left|Comparativa de la función real con aproximaciones con diferentes pasos de discretización.]]&lt;br /&gt;
[[Image:Abbb.jpg|500px|thumb|center|Comparativa de la función real con aproximaciones con pasos de discretización más precisos.]]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== Método del Trapecio. ====&lt;br /&gt;
El método del trapecio se basa en aproximar una función integrando. Para ello utilizamos un número N de trapecios (en la imagen inferior hemos aproximado mediante 4 trapecios). Las integrales a resolver para poder poder aproximar una función por este método tendrán la distancia de sus límites de integración constantes para todas las integrales, a esta distancia entre los límites de integración lo llamamos paso. En el desarrollo de este método se supone que la función es continua en el intervalo en que se quiere aproximar.&lt;br /&gt;
&amp;lt;br/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Image:Trapecio.png|300px|thumb|center|Función Y(x), el área bajo la curva, se puede aproximar mediante n trapecios]]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
A continuación, vamos a resolver el problema mediante el método del trapecio con un paso de 0.05.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
{{matlab|codigo= &lt;br /&gt;
%Resolucion por Trapecio.&lt;br /&gt;
%Definimos las condiciones iniciales.&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=1;&lt;br /&gt;
&lt;br /&gt;
%Al tratarse del método de trapecio podemos usar un paso más grande.&lt;br /&gt;
h=0.05;&lt;br /&gt;
t=t0:h:tN;&lt;br /&gt;
N=(tN-t0)/h;&lt;br /&gt;
i=zeros(1,N+1);&lt;br /&gt;
i(1)=0;&lt;br /&gt;
&lt;br /&gt;
%Resolvemos la ecuación.&lt;br /&gt;
for n=1:N;&lt;br /&gt;
    i(n+1)=((200*h)/(2+25*h))+(i(n)*((2-25*h)/(2+25*h)));&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
%Dibujamos.&lt;br /&gt;
figure (1)&lt;br /&gt;
plot(t,i,'-r','linewidth',2)&lt;br /&gt;
xlabel('Tiempo')&lt;br /&gt;
ylabel('Intensidad(t)')&lt;br /&gt;
axis([0,1,-0.05,4.25])&lt;br /&gt;
&lt;br /&gt;
%Cambiamos los ejes del dibujo y añadimos líneas auxiliares para poder ver con mayor &lt;br /&gt;
%precisión el punto en el que la intensidad se hace constante.&lt;br /&gt;
figure (2)&lt;br /&gt;
plot(t,i,'-b','linewidth',2)&lt;br /&gt;
xlabel('Tiempo')&lt;br /&gt;
ylabel('Intensidad(t)')&lt;br /&gt;
axis([0,0.4,2,4.1])&lt;br /&gt;
grid on&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Image:Trapecio3a.jpg|450px|thumb|left|Resultado de la intensidad del circuito RL simple por el método del trapecio.]]&lt;br /&gt;
[[Image:Trapecio3a11.jpg|450px|thumb|center|Visualización del punto en que se hace constante la intensidad.]]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br/&amp;gt;&amp;lt;br/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
La representación de la función por el método del Trapecio nos permite utilizar un paso de discretización de 0.5 quedando como resultado una aproximación muy similar a la original (podemos observar ésto en la imagen de la izquierda).&lt;br /&gt;
Una ampliación de dicha aproximación nos permite ver con exactitud el punto en el cual la intensidad se hace constante,(0'25,4), es decir t=0'25 e i(t)=4.&lt;br /&gt;
&lt;br /&gt;
Además, si comparamos las gráficas obtenidas al aproximar la función por el método de Euler y del Trapecio con el mismo paso podemos afirmar que el método del Trapecio hace una aproximación más precisa que el método de Euler.&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Image:Trapecio3a.jpg|500px|thumb|left|Método del Trapecio (h=0.05).]]&lt;br /&gt;
[[Image:0.05.jpg|500px|thumb|center|Método de Euler (h=0'05) ]] &lt;br /&gt;
&lt;br /&gt;
&amp;lt;br/&amp;gt;&amp;lt;br/&amp;gt;&lt;br /&gt;
===== Efectos en la función al variar la constante del inductor. =====&lt;br /&gt;
La bobina es un elemento pasivo del circuito capaz de almacenar energía magnética.&lt;br /&gt;
&lt;br /&gt;
Una vez explicado la función del inductor (bobina) en el circuito, nos disponemos a estudiar las alteraciones producidas en la función cuando se disminuye o aumenta la constante del inductor, L. &lt;br /&gt;
&lt;br /&gt;
A continuación se muestran las gráficas resultantes al modificar dicho valor.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br/&amp;gt;&lt;br /&gt;
{{matlab|codigo= %Resolucion por Trapecio.&lt;br /&gt;
%Definimos las condiciones iniciales.&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=1;&lt;br /&gt;
h=0.05;&lt;br /&gt;
t=t0:h:tN;&lt;br /&gt;
N=(tN-t0)/h;&lt;br /&gt;
i=zeros(N+1);&lt;br /&gt;
i(1)=0;&lt;br /&gt;
&lt;br /&gt;
%Cambiamos la L y resolvemos su ecuación correspondiente.&lt;br /&gt;
L=3.2;&lt;br /&gt;
for n=1:N;&lt;br /&gt;
    i(n+1)=((40*h)/(2*L+5*h))+i(n)*((2*L-5*h)/(2*L+5*h));&lt;br /&gt;
end&lt;br /&gt;
figure (1)&lt;br /&gt;
plot(t,i,'-b','linewidth',2)&lt;br /&gt;
xlabel('Tiempo')&lt;br /&gt;
ylabel('Intensidad(t)')&lt;br /&gt;
title('L=3.2')&lt;br /&gt;
grid on&lt;br /&gt;
&lt;br /&gt;
%Cambiamos la L y resolvemos su ecuación correspondiente.&lt;br /&gt;
y=zeros(N+1);&lt;br /&gt;
y(1)=0;&lt;br /&gt;
L=0.8;&lt;br /&gt;
for m=1:N;&lt;br /&gt;
    y(m+1)=((40*h)/(2*L+5*h))+y(m)*((2*L-5*h)/(2*L+5*h));&lt;br /&gt;
end&lt;br /&gt;
figure (2)&lt;br /&gt;
plot(t,y,'-r','linewidth',2)&lt;br /&gt;
xlabel('Tiempo')&lt;br /&gt;
ylabel('Intensidad(t)')&lt;br /&gt;
title('L=0.8')&lt;br /&gt;
grid on&lt;br /&gt;
&lt;br /&gt;
%Cambiamos la L y resolvemos su ecuación correspondiente.&lt;br /&gt;
j=zeros(N+1);&lt;br /&gt;
j(1)=0;&lt;br /&gt;
L=0.05;&lt;br /&gt;
for o=1:N;&lt;br /&gt;
    j(o+1)=((40*h)/(2*L+5*h))+j(o)*((2*L-5*h)/(2*L+5*h));&lt;br /&gt;
end&lt;br /&gt;
figure (3)&lt;br /&gt;
plot(t,j,'-g','linewidth',2)&lt;br /&gt;
xlabel('Tiempo')&lt;br /&gt;
ylabel('Intensidad(t)')&lt;br /&gt;
title('L=0.05')&lt;br /&gt;
grid on&lt;br /&gt;
&lt;br /&gt;
%Cambiamos la L y resolvemos su ecuación correspondiente.&lt;br /&gt;
k=zeros(N+1);&lt;br /&gt;
k(1)=0;&lt;br /&gt;
L=0.0125;&lt;br /&gt;
for l=1:N;&lt;br /&gt;
    k(l+1)=((40*h)/(2*L+5*h))+k(l)*((2*L-5*h)/(2*L+5*h));&lt;br /&gt;
end&lt;br /&gt;
figure (4)&lt;br /&gt;
plot(t,k,'-c','linewidth',2)&lt;br /&gt;
xlabel('Tiempo')&lt;br /&gt;
ylabel('Intensidad(t)')&lt;br /&gt;
title('L=0.0125')&lt;br /&gt;
grid on&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br/&amp;gt;&lt;br /&gt;
*Como podemos observar a medida que incrementamos el valor de L, se acentúa la 'exponencialidad' de la función hasta llegar a aproximarse a una recta. A medida que aumenta el parecido a una recta, el tiempo de estabilización se extiende por ser la inductancia mayor, así como el valor de la intensidad cuando es constante.&lt;br /&gt;
*De igual forma al reducirlo, la subida de la intensidad hasta llegar a una cifra constante es mucho mayor, aumenta el periodo transitorio, pero de forma más moderada que en los casos anteriores y manteniendo la constancia en i(t)=4; sin embargo, la función deja de ser exponencial convirtiéndose en fluctuaciones de rectas que van reduciendo su volatilidad con el paso del tiempo.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br/&amp;gt;&lt;br /&gt;
[[Image:3.2.jpg|400px|thumb|left|L=3'2.]]&lt;br /&gt;
[[Image:0.8.jpg|400px|thumb|center|L=0'8.]]&lt;br /&gt;
&amp;lt;br/&amp;gt;&lt;br /&gt;
[[Image:0.0125.jpg|400px|thumb|left|L=0'0125.]]&lt;br /&gt;
[[Image:0.051.jpg|400px|thumb|center|L=0'5.]]&lt;br /&gt;
&amp;lt;br/&amp;gt;&amp;lt;br/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Leyes de Kirchhoff aplicada a un circuito RL de dos mallas.==&lt;br /&gt;
Tras estudiar el circuito RL más simple (de una sola malla), ahora estudiaremos un circuito de dos mallas, por lo que como antes nos aparecía una sola ecuación diferencial, ahora nos aparecerá un sistema de dos ecuaciones diferenciales (una por cada malla).&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Circuito 2 completo.jpg|300px|thumb|left| Circuito RL de varias resistencias y bobinas ]]&lt;br /&gt;
&lt;br /&gt;
Según las  leyes de Kirchhoff, el sistema de ecuaciones diferenciales correspondiente al circuito 2 es el siguiente:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\left\{\begin{matrix}\ [1] E(t) = R_1\cdot i_1(t) + L_2\cdot \frac{d}{dt}\cdot i_2(t) + R_2\cdot i_2(t)\\ [2] E(t) = R_1\cdot i_1(t) + L_1\cdot \frac{d}{dt}\cdot i_3(t) + R_3\cdot i_3(t)\\ [3] i_1(t) = i_2(t) + i_3(t)\end{matrix}\right.&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''[1]'''Correspondiente al recorrido exterior del circuito.&amp;lt;br/&amp;gt;&lt;br /&gt;
'''[2]'''Correspondiente a la malla izquierda, (malla 1).&amp;lt;br/&amp;gt;&lt;br /&gt;
'''[3]'''Correspondiente al nudo de la parte superior del circuito(Ley de corrientes de Kirchhoff).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Sustituyendo la tercera ecuación en las otras dos, se obtiene el sistema en términos de i2(t) e i3(t) matricialmente::&amp;lt;math&amp;gt;\frac{d}{dt}\cdot \begin{pmatrix} i_2\\i_3 \end{pmatrix} = - \begin{pmatrix} \frac{R_1+R_2}{L_2}&amp;amp;\frac{R_1}{L_2} \\ \frac{R_1}{L_1}&amp;amp;\frac{R_1+R_3}{L_1}\end{pmatrix} \cdot \begin{pmatrix} i_2\\i_3 \end{pmatrix} + \begin{pmatrix} \frac{E}{L_2} \\ \frac{E}{L_1} \end{pmatrix}&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
A partir de las condiciones iniciales i2(0)=i3(0)=0 se puede interpretar que la corriente en el circuito es nula en el momento  en el cual se conecta el generador.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== Cálculo de las intensidades de un circuito con varias resistencias y bobinas a partir del Método de Euler y del Trapecio. ====&lt;br /&gt;
Ya se ha visto que la expresión de las intensidades i2 e i3 de este circuito RL vienen dadas por dos ecuaciones diferenciales que conforman un sistema. Este sistema de ecuaciones diferenciales se puede resolver numéricamente a partir del método de Euler y del trapecio, los cuales se basan en la aproximación de las áreas de esa ecuación diferencial al valor real de la función en cada momento.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Partiendo de unos datos iniciales iguales a:&lt;br /&gt;
&lt;br /&gt;
'''&amp;lt;math&amp;gt; R_1=R_2=6Ω &amp;lt;/math&amp;gt;''' , '''&amp;lt;math&amp;gt; R_3=3Ω &amp;lt;/math&amp;gt;''' , '''&amp;lt;math&amp;gt; L_1=0,3Hz &amp;lt;/math&amp;gt;''' , '''&amp;lt;math&amp;gt; L_2=0,11Hz &amp;lt;/math&amp;gt;''' y '''&amp;lt;math&amp;gt; E(t)=20 V &amp;lt;/math&amp;gt;'''&lt;br /&gt;
&lt;br /&gt;
 :&amp;lt;math&amp;gt;\frac{d}{dt}\cdot \begin{pmatrix} i_2\\i_3 \end{pmatrix} = - \begin{pmatrix} \frac{6+6}{0,11}&amp;amp;\frac{6}{0,11} \\ \frac{6}{0,3}&amp;amp;\frac{6+3}{0,3}\end{pmatrix} \cdot \begin{pmatrix} i_2\\i_3 \end{pmatrix} + \begin{pmatrix} \frac{20}{0,11} \\ \frac{20}{0,3} \end{pmatrix}&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
Resolvemos las ecuaciones diferenciales:&lt;br /&gt;
&lt;br /&gt;
* ''' MÉTODO DE EULER: '''&lt;br /&gt;
'''OCTAVE'''&lt;br /&gt;
{{matlab|codigo= &lt;br /&gt;
DATOS:&lt;br /&gt;
&lt;br /&gt;
clc;clear all;&lt;br /&gt;
    %t0=tiempo inicial&lt;br /&gt;
t0=0;&lt;br /&gt;
    %tN=tiempo máximo a evaluar&lt;br /&gt;
tN=0.04;&lt;br /&gt;
    %soluciones en y0 para las variables i2 e i3&lt;br /&gt;
y0=0;&lt;br /&gt;
    %N=intervalos en los que se dividen&lt;br /&gt;
N=25;&lt;br /&gt;
    %h=salto de intervalo en intervalo&lt;br /&gt;
h=(tN-t0)/N;&lt;br /&gt;
    %i1,i2,i3=vectores solución desde t0 a tN de h en h&lt;br /&gt;
i1=t0:h:tN;&lt;br /&gt;
&lt;br /&gt;
i2=t0:h:tN;&lt;br /&gt;
&lt;br /&gt;
i3=t0:h:tN;&lt;br /&gt;
&lt;br /&gt;
    %y=vector de ceros y que va a almacenar las soluciones.Tendrá N+1 términos porque el primero es el cero y el ultimo el N&lt;br /&gt;
    %la intensidad dos es y(:,1),es decir, la fila 1.&lt;br /&gt;
    %la intensidad tres es y(:,2),es decir, la fila 2.&lt;br /&gt;
    %la intensidad uno es y(:,3),es decir, la fila 3.&lt;br /&gt;
y=zeros(N+1,3);&lt;br /&gt;
y(1,1)=y0;&lt;br /&gt;
y(1,2)=y0;&lt;br /&gt;
y(1,3)=y0;&lt;br /&gt;
%AHORA SE EMPIEZA A RESOLVER POR EULER EL SISTEMA.&lt;br /&gt;
%y(n+1)=y(n)+h*f(t(n),y(n))&lt;br /&gt;
%f(t,i2)=((E/L2)-R1*(i2+i3)+R2*i2)/L2&lt;br /&gt;
%f(t,i3)=((E/L1)-R1*(i2+i3)+R3*i3)/L1&lt;br /&gt;
for n=1:N&lt;br /&gt;
    y(n+1,1)=y(n,1)+h*((20/0.11)-(6*(y(n,1)+y(n,2))+6*y(n,1))/0.11);&lt;br /&gt;
    y(n+1,2)=y(n,2)+h*((20/0.3)-(6*(y(n,1)+y(n,2))+3*y(n,2))/0.3);&lt;br /&gt;
    y(n+1,3)=y(n+1,1)+y(n+1,2);&lt;br /&gt;
end&lt;br /&gt;
hold on&lt;br /&gt;
plot(i1,y(:,3),'+')&lt;br /&gt;
plot(i2,y(:,1),'r+')&lt;br /&gt;
plot(i3,y(:,2),'g+')&lt;br /&gt;
xlabel('Tiempo');&lt;br /&gt;
ylabel('Intensidad(t)');&lt;br /&gt;
legend('i1', 'i2', 'i3');&lt;br /&gt;
grid on&lt;br /&gt;
}}&lt;br /&gt;
* ''' MÉTODO DEL TRAPECIO: '''&lt;br /&gt;
'''OCTAVE'''&lt;br /&gt;
{{matlab|codigo= &lt;br /&gt;
DATOS:&lt;br /&gt;
clc;clear all;&lt;br /&gt;
    %tiempo inicial&lt;br /&gt;
t0=0;&lt;br /&gt;
    %tiempo máximo a evaluar&lt;br /&gt;
tN=0.04;&lt;br /&gt;
    %soluciones en y0 para las variables i2 e i3&lt;br /&gt;
y0=0;&lt;br /&gt;
    %intervalos en los que se dividen&lt;br /&gt;
N=25;&lt;br /&gt;
	%salto de intervalo en intervalo&lt;br /&gt;
h=(tN-t0)/N;&lt;br /&gt;
    %vectores solución desde t0 a tN de h en h&lt;br /&gt;
i1=t0:h:tN;&lt;br /&gt;
i2=t0:h:tN;&lt;br /&gt;
i3=t0:h:tN;&lt;br /&gt;
    %vector de ceros y que va a almacenar las soluciones&lt;br /&gt;
    %tendra N+1 términos porque el primero es el cero y el ultimo el N&lt;br /&gt;
    %la intensidad dos es y(:,1)&lt;br /&gt;
    %la intensidad tres es y(:,2)&lt;br /&gt;
    %la intensidad uno es y(:,3)&lt;br /&gt;
y=zeros(N+1,3);&lt;br /&gt;
y(1,1)=y0;&lt;br /&gt;
y(1,2)=y0;&lt;br /&gt;
y(1,3)=y0;&lt;br /&gt;
PARA RESOLVER POR EL MÉTODO DEL TRAPECIO:&lt;br /&gt;
%y(n+1)=y(n)+(h/2)*(f(t(n),y(n)+f(t(n+1),y(n+1))&lt;br /&gt;
%f(t,i2)=((E/L2)-R1*(i2+i3)+R2*i2)/L2&lt;br /&gt;
%f(t,i3)=((E/L1)-R1*(i2+i3)+R3*i3)/L1&lt;br /&gt;
for n=1:N&lt;br /&gt;
    y(n+1,1)=y(n,1)+(h/2)*(((20/0.11)-(6*(y(n,1)+y(n,2))+6*y(n,1))/0.11)+((20/0.11)-(6*(y(n+1,1)+y(n+1,2))+6*y(n+1,1))/0.11));&lt;br /&gt;
    y(n+1,2)=y(n,2)+(h/2)*(((20/0.3)-(6*(y(n,1)+y(n,2))+3*y(n,2))/0.3)+((20/0.3)-(6*(y(n+1,1)+y(n+1,2))+3*y(n+1,2))/0.3));  &lt;br /&gt;
    y(n+1,3)=y(n+1,1)+y(n+1,2);&lt;br /&gt;
end&lt;br /&gt;
plot(i1,y(:,3))&lt;br /&gt;
plot(i2,y(:,1),'r')&lt;br /&gt;
plot(i3,y(:,2),'g')&lt;br /&gt;
xlabel('Tiempo');&lt;br /&gt;
ylabel('Intensidad(t)');&lt;br /&gt;
hold off&lt;br /&gt;
}}&lt;br /&gt;
&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
[[Archivo:Resoct.png|800px|thumb|centre|Gráfica del resultado del Método de Euler y Trapecio en el cálculo de las intensidades.]]&lt;br /&gt;
&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''En el resultado de la gráfica, lo obtenido con el método de Euler se representa con los símbolos &amp;quot;+&amp;quot;, mientras que la línea continua corresponde al Método del Trapecio. Como se puede apreciar, ambos métodos dan resultados similares y muy próximos. En la interpretación de los resultados, diríamos que se trata de corrientes muy estables.'''&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
====Variación de las intensidades de un circuito RL cuando se altera el valor de una de las resistencias.====&lt;br /&gt;
Ahora vamos a analizar como afecta la variación del módulo de una resistencia (se incrementa, '''&amp;lt;math&amp;gt; R_3=3Ω &amp;lt;/math&amp;gt;''' pasa a valer '''&amp;lt;math&amp;gt; R_3=9Ω &amp;lt;/math&amp;gt;''') en las intensidades del circuito.&lt;br /&gt;
Nuestro análisis se realizará sustituyendo el nuevo valor en el mismo sistema, y se resolverá por el método de Euler y Trapecio comparando en una gráfica los resultados con los obtenidos anteriormente.&lt;br /&gt;
&lt;br /&gt;
* ''' MÉTODO DE EULER: '''&lt;br /&gt;
'''OCTAVE'''&lt;br /&gt;
{{matlab|codigo= &lt;br /&gt;
%DATOS:&lt;br /&gt;
clc;clear all;&lt;br /&gt;
    %tiempo inicial&lt;br /&gt;
t0=0;&lt;br /&gt;
    %tiempo máximo a evaluar&lt;br /&gt;
tN=0.04;&lt;br /&gt;
    %soluciones en y0 para las variables i2 e i3&lt;br /&gt;
y0=0;&lt;br /&gt;
    %intervalos en los que se dividen&lt;br /&gt;
N=25;&lt;br /&gt;
	%salto de intervalo en intervalo&lt;br /&gt;
h=(tN-t0)/N;&lt;br /&gt;
    %vectores solución desde t0 a tN de h en h&lt;br /&gt;
i1=t0:h:tN;&lt;br /&gt;
i2=t0:h:tN;&lt;br /&gt;
i3=t0:h:tN;&lt;br /&gt;
    %vector de ceros y que va a almacenar las soluciones&lt;br /&gt;
    %tendra N+1 términos porque el primero es el cero y el ultimo el N&lt;br /&gt;
    %la intensidad dos es y(:,1)&lt;br /&gt;
    %la intensidad tres es y(:,2)&lt;br /&gt;
    %la intensidad uno es y(:,3)&lt;br /&gt;
y=zeros(N+1,3);&lt;br /&gt;
y(1,1)=y0;&lt;br /&gt;
y(1,2)=y0;&lt;br /&gt;
y(1,3)=y0;&lt;br /&gt;
%PARA RESOLVER POR EULER EL SISTEMA:&lt;br /&gt;
%y(n+1)=y(n)+h*f(t(n),y(n))&lt;br /&gt;
%f(t,i2)=((E/L2)-R1*(i2+i3)+R2*i2)/L2&lt;br /&gt;
%f(t,i3)=((E/L1)-R1*(i2+i3)+R3*i3)/L1&lt;br /&gt;
for n=1:N&lt;br /&gt;
    y(n+1,1)=y(n,1)+h*((20/0.11)-(6*(y(n,1)+y(n,2))+6*y(n,1))/0.11);&lt;br /&gt;
    y(n+1,2)=y(n,2)+h*((20/0.3)-(6*(y(n,1)+y(n,2))+9*y(n,2))/0.3);&lt;br /&gt;
    y(n+1,3)=y(n+1,1)+y(n+1,2);&lt;br /&gt;
end&lt;br /&gt;
hold on&lt;br /&gt;
plot(i1,y(:,3),'c+')&lt;br /&gt;
plot(i2,y(:,1),'m+')&lt;br /&gt;
plot(i3,y(:,2),'k+')&lt;br /&gt;
}}&lt;br /&gt;
* ''' MÉTODO DEL TRAPECIO: '''&lt;br /&gt;
'''OCTAVE'''&lt;br /&gt;
{{matlab|codigo= &lt;br /&gt;
%DATOS:&lt;br /&gt;
clc;clear all;&lt;br /&gt;
    %tiempo inicial&lt;br /&gt;
t0=0;&lt;br /&gt;
    %tiempo máximo a evaluar&lt;br /&gt;
tN=0.04;&lt;br /&gt;
    %soluciones en y0 para las variables i2 e i3&lt;br /&gt;
y0=0;&lt;br /&gt;
    %intervalos en los que se dividen&lt;br /&gt;
N=25;&lt;br /&gt;
	%salto de intervalo en intervalo&lt;br /&gt;
h=(tN-t0)/N;&lt;br /&gt;
    %vectores solución desde t0 a tN de h en h&lt;br /&gt;
i1=t0:h:tN;&lt;br /&gt;
i2=t0:h:tN;&lt;br /&gt;
i3=t0:h:tN;&lt;br /&gt;
    %vector de ceros y que va a almacenar las soluciones&lt;br /&gt;
    %tendra N+1 términos porque el primero es el cero y el ultimo el N&lt;br /&gt;
    %la intensidad dos es y(:,1)&lt;br /&gt;
    %la intensidad tres es y(:,2)&lt;br /&gt;
    %la intensidad uno es y(:,3)&lt;br /&gt;
y=zeros(N+1,3);&lt;br /&gt;
y(1,1)=y0;&lt;br /&gt;
y(1,2)=y0;&lt;br /&gt;
y(1,3)=y0;&lt;br /&gt;
%PARA RESOLVER POR EL MÉTODO DEL TRAPECIO:&lt;br /&gt;
%y(n+1)=y(n)+(h/2)*(f(t(n),y(n)+f(t(n+1),y(n+1))&lt;br /&gt;
%f(t,i2)=((E/L2)-R1*(i2+i3)+R2*i2)/L2&lt;br /&gt;
%f(t,i3)=((E/L1)-R1*(i2+i3)+R3*i3)/L1&lt;br /&gt;
for n=1:N&lt;br /&gt;
    y(n+1,1)=y(n,1)+(h/2)*(((20/0.11)-(6*(y(n,1)+y(n,2))+6*y(n,1))/0.11)+((20/0.11)-(6*(y(n+1,1)+y(n+1,2))+6*y(n+1,1))/0.11));&lt;br /&gt;
    y(n+1,2)=y(n,2)+(h/2)*(((20/0.3)-(6*(y(n,1)+y(n,2))+9*y(n,2))/0.3)+((20/0.3)-(6*(y(n+1,1)+y(n+1,2))+9*y(n+1,2))/0.3));  &lt;br /&gt;
    y(n+1,3)=y(n+1,1)+y(n+1,2);&lt;br /&gt;
end&lt;br /&gt;
plot(i1,y(:,3),'c')&lt;br /&gt;
plot(i2,y(:,1),'m')&lt;br /&gt;
plot(i3,y(:,2),'k')&lt;br /&gt;
hold off&lt;br /&gt;
}}&lt;br /&gt;
[[Image:Resultado.png|500px|thumb|left|Gráfica de la intensidad del circuito RL compuesto tras incrementar una de sus resistencias ]]&lt;br /&gt;
[[Archivo:Resoct.png|500px|thumb|right|Gráfica del resultado del Método de Euler y Trapecio en el cálculo de las intensidades sin incrementar.]]&lt;br /&gt;
[[Image:Grafica comparativa 5y6 (1).jpg|1400px|thumb|centre|Gráfica comparativa de las intensidades de un circuito RL intensidades incrementadas y sin incrementar. ]]&lt;br /&gt;
'''De nuevo, las cruces + corresponderían a lo obtenido por el método de Euler y la línea continua al Método del trapecio. En la gráfica superpuesta se observa el resultado final de la comparativa: frente a resistencias menores las intensidades resultan mayores, y viceversa. Esto se justifica gracias a la Ley de Ohm que establece '''&amp;lt;math&amp;gt; V=I*R&amp;lt;/math&amp;gt;''' de manera que la intensidad y resistencia son inversamente proporcionales, y si una se incrementa, la otra decrece: '''&amp;lt;math&amp;gt; I=V/R&amp;lt;/math&amp;gt;''', '''&amp;lt;math&amp;gt; R=V/I&amp;lt;/math&amp;gt;'''. '''&lt;br /&gt;
&lt;br /&gt;
== Resolución de un problema de valor inicial en otro punto ==&lt;br /&gt;
==== Cálculo de las intensidades en un punto (el inicial) a partir de un valor inicial en un punto distinto al origen. ====&lt;br /&gt;
&lt;br /&gt;
Esta vez vamos a calcular el valor concreto de un punto de una función, que hemos definido tras resolver una ecuación diferencial. Nuestra función será la que define las intensidades de un circuito RL compuesto. En la resolución de la ecuación diferencial que relaciona las derivadas con la función, procederemos de nuevo tratándolo como un problema de valor inicial; a pesar de que no sea un valor en el punto de origen el que tengamos por dato, sino un valor de '''&amp;lt;math&amp;gt; i_2 &amp;lt;/math&amp;gt;''' e '''&amp;lt;math&amp;gt; i_3 &amp;lt;/math&amp;gt;''' en el tiempo '''&amp;lt;math&amp;gt; t=0,02  &amp;lt;/math&amp;gt;'''. Serán precisamente estos valores en el origen los que calculemos. De nuevo, utilizaremos el segundo circuito expuesto en este artículo (sin incrementar resistencias):&lt;br /&gt;
[[Archivo:Circuito 2 completo.jpg|300px|thumb|left|Circuito RL compuesto ]]&lt;br /&gt;
&lt;br /&gt;
 :&amp;lt;math&amp;gt;\frac{d}{dt}\cdot \begin{pmatrix} i_2\\i_3 \end{pmatrix} = - \begin{pmatrix} \frac{6+6}{0,11}&amp;amp;\frac{6}{0,11} \\ \frac{6}{0,3}&amp;amp;\frac{6+3}{0,3}\end{pmatrix} \cdot \begin{pmatrix} i_2\\i_3 \end{pmatrix} + \begin{pmatrix} \frac{20}{0,11} \\ \frac{20}{0,3} \end{pmatrix}&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''&amp;lt;math&amp;gt; R_1=R_2=6Ω &amp;lt;/math&amp;gt;''' , '''&amp;lt;math&amp;gt; R_3=3Ω &amp;lt;/math&amp;gt;''' , '''&amp;lt;math&amp;gt; L_1=0,3Hz &amp;lt;/math&amp;gt;''' , '''&amp;lt;math&amp;gt; L_2=0,11Hz &amp;lt;/math&amp;gt;''' y '''&amp;lt;math&amp;gt; E(t)=20 V &amp;lt;/math&amp;gt;'''.&lt;br /&gt;
&lt;br /&gt;
Nuestros valores iniciales '''&amp;lt;math&amp;gt; i_2(0,02)=i_3(0,02)=1A &amp;lt;/math&amp;gt;'''&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Buscamos '''&amp;lt;math&amp;gt; i_1(t),i_2(t),i_3(t) &amp;lt;/math&amp;gt;'''.&lt;br /&gt;
&lt;br /&gt;
Resolvemos por el método de Euler:&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo= &lt;br /&gt;
%DATOS:&lt;br /&gt;
clc;clear all;&lt;br /&gt;
    %tiempo inicial&lt;br /&gt;
t0=0.02;&lt;br /&gt;
    %tiempo a evaluar&lt;br /&gt;
tN=0;&lt;br /&gt;
    %soluciones en y0.02 para las variables i2 e i3&lt;br /&gt;
y02=1;&lt;br /&gt;
    %&lt;br /&gt;
N=100000;&lt;br /&gt;
	%salto de intervalo en intervalo&lt;br /&gt;
h=(tN-t0)/N;&lt;br /&gt;
    %vectores solución desde t0 a tN de h en h&lt;br /&gt;
i1=t0:h:tN;&lt;br /&gt;
i2=t0:h:tN;&lt;br /&gt;
i3=t0:h:tN;&lt;br /&gt;
    %vector de ceros y que va a almacenar las soluciones&lt;br /&gt;
    %tendra N+1 términos porque el primero es el cero y el ultimo el N&lt;br /&gt;
    %la intensidad dos es y(:,1)&lt;br /&gt;
    %la intensidad tres es y(:,2)&lt;br /&gt;
    %la intensidad uno es y(:,3)&lt;br /&gt;
y=zeros(N+1,3);&lt;br /&gt;
y(1,1)=y02;&lt;br /&gt;
y(1,2)=y02;&lt;br /&gt;
y(1,3)=2;&lt;br /&gt;
%RESOLVEMOS POR EULER EL SISTEMA:&lt;br /&gt;
%y(n+1)=y(n)+h*f(t(n),y(n))&lt;br /&gt;
%f(t,i2)=((E/L2)-R1*(i2+i3)+R2*i2)/L2&lt;br /&gt;
%f(t,i3)=((E/L1)-R1*(i2+i3)+R3*i3)/L1&lt;br /&gt;
for n=1:N&lt;br /&gt;
    y(n+1,1)=y(n,1)+h*((20/0.11)-(6*(y(n,1)+y(n,2))+6*y(n,1))/0.11);&lt;br /&gt;
    y(n+1,2)=y(n,2)+h*((20/0.3)-(6*(y(n,1)+y(n,2))+3*y(n,2))/0.3);&lt;br /&gt;
    y(n+1,3)=y(n+1,1)+y(n+1,2);&lt;br /&gt;
end&lt;br /&gt;
intensidad1=y(N+1,3)&lt;br /&gt;
intensidad2=y(N+1,1)&lt;br /&gt;
intensidad3=y(N+1,2)&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
'''Los resultados obtenidos:'''&lt;br /&gt;
[[Archivo:Intens.png|600px|thumb|centre|Valores de las intensidades para t=0]]&lt;br /&gt;
&lt;br /&gt;
Así se prueba la eficacia de estas aproximaciones numéricas no sólo al trazar gráficas, sino también para dar valores concretos de la función en los puntos que se quiera.&lt;br /&gt;
&lt;br /&gt;
[[Categoría:Ecuaciones Diferentiales]]&lt;br /&gt;
[[Categoría:ED13/14]]&lt;br /&gt;
[[Categoría:Trabajos 2013-14]]&lt;/div&gt;</summary>
		<author><name>Lucia Lopez</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Circuitos_RL_(grupo_B)&amp;diff=10210</id>
		<title>Circuitos RL (grupo B)</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Circuitos_RL_(grupo_B)&amp;diff=10210"/>
				<updated>2014-03-05T11:37:28Z</updated>
		
		<summary type="html">&lt;p&gt;Lucia Lopez: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{ TrabajoED | Circuitos RL. Grupo 2-B | [[:Categoría:Ecuaciones Diferenciales|Ecuaciones Diferenciales]]|[[:Categoría:ED13/14|Curso 2013-14]] | Diego Solano López,Lucia López Sánchez,Adela González Barbado,Araceli Martín Candilejo,Ignacio Díaz Caneja Camblor,Alberto Fernández Pérez }}&lt;br /&gt;
&lt;br /&gt;
El circuito eléctrico mas simple esta compuesto de una resistencia, un inductor o bobina y una fuente de alimentación.&lt;br /&gt;
* En una resistencia R, la Ley de Ohm establece:&lt;br /&gt;
&lt;br /&gt;
  &amp;lt;math&amp;gt;i(t)={V(t)\over R}&amp;lt;/math&amp;gt;&lt;br /&gt;
* En un inductor L la Ley de Faraday dice:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; V(t)=L\cdot i'(t)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
Las leyes de Kirchhoff establecen el comportamiento de los circuitos:&lt;br /&gt;
# '''Ley de corriente:''' en cada nudo la suma de corrientes que entra coincide con la suma de corrientes que sale.&lt;br /&gt;
# '''Ley de tensiones:''' en cada ciclo cerrado, la suma de las diferencias de potencial eléctrico es nula.&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Segunda ley de Kirchhoff para un circuito RL simple ==&lt;br /&gt;
==== Ecuación diferencial-Resolución y representación analítica.====&lt;br /&gt;
Basándonos en la segunda ley de Kirchhoff sobre el circuito que observamos en la imagen, podemos trabajar con la siguiente ecuación diferencial.&lt;br /&gt;
&lt;br /&gt;
Esta vez vamos a obtener la solución del valor concreto de un punto de una función hallada a partir de una ecuación diferencial. Será así de nuevo el caso de una ecuación diferencial que define las relaciones entre las corrientes y sus derivadas en un circuito RL de varias resistencias y bobinas. Volveremos a utilizar el segundo circuito mostrado en este artículo:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;math&amp;gt; i'(t)+{R\over L}i(t)-{V(t)\over L}=0 &amp;lt;/math&amp;gt; [[Image:cicuito1.jpg|300px|thumb|right|Circuito RL simple ]]&lt;br /&gt;
&lt;br /&gt;
Al suponer que en el instante t=0 el circuito está abierto, podemos establecer para el problema de Cauchy el valor inicial '''&amp;lt;math&amp;gt; i_0(t)=0 &amp;lt;/math&amp;gt;'''. Considerando que la alimentación posee un voltaje constante '''V(t)=20V, L=0.2 y R=5Ω''', llegamos al problema:&lt;br /&gt;
&lt;br /&gt;
                              &amp;lt;math&amp;gt;\left\{\begin{matrix}\ i'(t)+{25}i(t)-{100}=0 \\i(0)=0\end{matrix}\right.&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
La resolución de éste mediante &amp;lt;math&amp;gt;i \cdot e^{\int{\frac{R}{L}dt}} = \int{e^{\frac{R \cdot t}{L}}dt} \hspace{0.5cm} \rightarrow \hspace{0.5cm} &amp;lt;/math&amp;gt; &lt;br /&gt;
&amp;lt;math&amp;gt;i \cdot e^{\frac{R \cdot t}{L}} = \frac{V}{R}e^{\frac{R \cdot t}{L}}+C&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt; nos da:&lt;br /&gt;
 &amp;lt;math&amp;gt; i(t)=4-4e^{-25t} &amp;lt;/math&amp;gt;&lt;br /&gt;
La gráfica de la función nos muestra la evolución de la intensidad. En ella se puede apreciar una rápida subida en los primeros instantes que se ralentiza hasta llegar a ser prácticamente constante con un valor de 4. Por lo que podemos afirmar que la intensidad se estabiliza en un corto periodo de tiempo.&lt;br /&gt;
[[Image:Funcion.jpg|500px|thumb|center|Gráfica de la intensidad en un circuito RL simple ]]&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo= &lt;br /&gt;
fplot('4-4*exp(-25*t)',[0,0.5,0,5]);&lt;br /&gt;
xlabel('Tiempo')&lt;br /&gt;
ylabel('Intensidad(t)')&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
==== Método de Euler. ====&lt;br /&gt;
Este método parte de la posibilidad de aproximar una función original mediante rectas tangentes partiendo de un punto dado. Sabiendo que la recta tangente de una función en un punto es su derivada en dicho punto, este método consiste en calcular derivadas de la función en diferentes puntos pertenecientes a dicha función. Estos puntos serán tomados con la misma distancia a lo largo de la recta, a esta distancia la denominamos paso. &lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Image:Euler.png|300px|thumb|center|Aproximación de una función por el método de Euler]]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
A continuación, vamos a calcular la función por el método de Euler, resolviendo la ecuación con diferentes pasos. De esta forma, podremos observar y analizar los distintos resultados obtenidos al modificar los pasos, hasta que lleguemos a una conclusión evidente. Además calcularemos el error cometido por la aproximación del método para ser más precios en nuestras observaciones.&lt;br /&gt;
&lt;br /&gt;
Comenzamos a analizar este método elaborando un programa con un paso de 0.01, que podemos visualizar a continuación.&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo= &lt;br /&gt;
%Definimos las condiciones iniciales.&lt;br /&gt;
clear all&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=1;&lt;br /&gt;
&lt;br /&gt;
%Establecemos un paso h=0'01.&lt;br /&gt;
h=0.01;&lt;br /&gt;
t=t0:h:tN;&lt;br /&gt;
N=(tN-t0)/h;&lt;br /&gt;
&lt;br /&gt;
%Resolvemos la ecuación.&lt;br /&gt;
ii=0;&lt;br /&gt;
i(1)=ii;&lt;br /&gt;
for n=1:N;&lt;br /&gt;
  ii=ii+h*(100-25*ii);&lt;br /&gt;
  i(n+1)=ii;&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
%Dibujamos la gráfica.&lt;br /&gt;
figure(1)&lt;br /&gt;
plot(t,i,'-g','linewidth',2);&lt;br /&gt;
xlabel('Tiempo');&lt;br /&gt;
ylabel('Intensidad(t)');&lt;br /&gt;
axis([-0.1,1,0,5])&lt;br /&gt;
&lt;br /&gt;
%Calculo error y lo dibujamos.&lt;br /&gt;
r=4-4*exp(-25*t);&lt;br /&gt;
error=abs(r-i);&lt;br /&gt;
figure(2)&lt;br /&gt;
plot(t,error,'-r','linewidth',2)&lt;br /&gt;
xlabel('Tiempo');&lt;br /&gt;
ylabel('Error');&lt;br /&gt;
axis([-0.1,1,-0.05,0.25])&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
Un paso de discretización de 0'01 proporciona un error muy pequeño, lo que aporta una aproximación de la función muy similar a la real, como podemos observar en la primera figura. Analizando el error que nos ofrece dicha aproximación (imagen de la derecha),su valor no supera el 0'2, por tanto, podemos afirmar analíticamente la exactitud de la aproximación. Además, podemos observar que el error se anula al llegar a t=0'25, momento en el que coincide la función aproximada por Euler con la función real. &lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Image:0.01.jpg|500px|thumb|left|Resultado de la intensidad del circuito RL simple por el método de Euler para h=0'01]] [[Image:error0.01.jpg|500px|thumb|center|Gráfica del error cometido en el cálculo de la intensidad por el método de Euler para h=0'01 ]]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br/&amp;gt; &amp;lt;br/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Una vez analizado el resultado anterior, resolvemos el problema con un paso mayor.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
{{matlab|codigo= %Resolucion por Euler&lt;br /&gt;
%Definimos las condiciones iniciales.&lt;br /&gt;
clear all&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=1;&lt;br /&gt;
&lt;br /&gt;
%Probamos con un paso de discretización mayor, h=0'05.&lt;br /&gt;
h=0.05;&lt;br /&gt;
t=t0:h:tN;&lt;br /&gt;
N=(tN-t0)/h;&lt;br /&gt;
&lt;br /&gt;
%Resolvemos la ecuación.&lt;br /&gt;
ii=0;&lt;br /&gt;
i(1)=ii;&lt;br /&gt;
for n=1:N;&lt;br /&gt;
  ii=ii+h*(100-25*ii);&lt;br /&gt;
  i(n+1)=ii;&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
%Creamos el dibujo.&lt;br /&gt;
figure(1)&lt;br /&gt;
plot(t,i,'-g','linewidth',2);&lt;br /&gt;
xlabel('Tiempo');&lt;br /&gt;
ylabel('Intensidad(t)');&lt;br /&gt;
axis([-0.1,1,0,5.1])&lt;br /&gt;
&lt;br /&gt;
%Calculo error y dibujamos.&lt;br /&gt;
r=4-4*exp(-25*t);&lt;br /&gt;
error=abs(r-i);&lt;br /&gt;
figure(2)&lt;br /&gt;
plot(t,error,'-r','linewidth',2)&lt;br /&gt;
axis([-0.1,1,-0.05,2.25])&lt;br /&gt;
xlabel('Tiempo');&lt;br /&gt;
ylabel('Error');&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br/&amp;gt;&lt;br /&gt;
Podemos observar que al aumentar el paso de discretización a 0'05 la aproximación de la curva se ha convertido en una combinación de rectas que asemejan la evolución de la intensidad, ya que sigue manteniendo una rápida subida inicial.  A pesar de ello, el error ha aumentado su valor en un 1000% en el periodo transitorio, pero vuelve a anularse en el permanente ya que a partir del punto de estabilización los valores aproximados coincide con los reales.El cambio producido en el incremento inicial de la intensidad se debe a la brevedad de éste, por lo que resulta poco preciso trabajar con pasos mayores.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
[[Image:0.05.jpg|500px|thumb|left|Resultado de la intensidad del circuito RL simple por el método de Euler para h=0'05 ]] [[Image:error0.05.jpg|500px|thumb|center| Gráfica del error cometido en el cálculo de la intensidad por el método de Euler para h=0'05]]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br/&amp;gt; &amp;lt;br/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Para estar más seguro de la afirmación hecha hace unos instantes, en la que hemos asegurado que es poco preciso trabajar con pasos mayores vamos a resolver y comparar en la misma gráfica el problema resuelto con distintos valores para la h, el paso.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br/&amp;gt;&lt;br /&gt;
{{matlab|codigo= &lt;br /&gt;
%Comparamos las gráficas con diferentes pasos y la función real.&lt;br /&gt;
clear all&lt;br /&gt;
&lt;br /&gt;
%Guardamos el valor para cada paso.&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=1;&lt;br /&gt;
h1=0.05;&lt;br /&gt;
t1=t0:h1:tN;&lt;br /&gt;
N1=(tN-t0)/h1;&lt;br /&gt;
h2=0.01;&lt;br /&gt;
t2=t0:h2:tN;&lt;br /&gt;
N2=(tN-t0)/h2;&lt;br /&gt;
h3=0.075;&lt;br /&gt;
t3=t0:h3:tN;&lt;br /&gt;
N3=(tN-t0)/h3;&lt;br /&gt;
&lt;br /&gt;
%Creamos un bucle para cada h y resolver las cuatro ecuaciones.&lt;br /&gt;
ii=0;&lt;br /&gt;
i(1)=ii;&lt;br /&gt;
for n=1:N1;&lt;br /&gt;
  ii=ii+h1*(100-25*ii);&lt;br /&gt;
  i(n+1)=ii;&lt;br /&gt;
end&lt;br /&gt;
yy=0;&lt;br /&gt;
y(1)=yy;&lt;br /&gt;
for m=1:N2;&lt;br /&gt;
  yy=yy+h2*(100-25*yy);&lt;br /&gt;
  y(m+1)=yy;&lt;br /&gt;
end&lt;br /&gt;
jj=0;&lt;br /&gt;
j(1)=jj;&lt;br /&gt;
for m=1:N3;&lt;br /&gt;
  jj=jj+h3*(100-25*jj);&lt;br /&gt;
  j(m+1)=jj;&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
%Hacemos el dibujo con todas las gráficas a la vez para hacer una comparación global de estas y la función real.&lt;br /&gt;
hold on &lt;br /&gt;
fplot('4-4*exp(-25*t2)',[0,1,0,5],'r');&lt;br /&gt;
plot(t1,i,'-b','linewidth',1);&lt;br /&gt;
plot(t2,y,'-y','linewidth',1);&lt;br /&gt;
plot(t3,j,'-g','linewidth',1);&lt;br /&gt;
legend('Función real','h=0.05', 'h=0.01', 'h=0.075');&lt;br /&gt;
title('Comparativa');&lt;br /&gt;
xlabel('Tiempo');&lt;br /&gt;
ylabel('Intensidad(t)');&lt;br /&gt;
axis([-0.1,1,-0.05,8])&lt;br /&gt;
hold off&lt;br /&gt;
&lt;br /&gt;
%Quitamos el paso mayor para ver con mayor exactitud como se difieren las aproximaciones más correctas.&lt;br /&gt;
figure (2)&lt;br /&gt;
hold on &lt;br /&gt;
fplot('4-4*exp(-25*t2)',[0,1,0,5],'r');&lt;br /&gt;
plot(t1,i,'-b','linewidth',1);&lt;br /&gt;
plot(t2,y,'-g','linewidth',1);&lt;br /&gt;
legend('Función real','h=0.05', 'h=0.01');&lt;br /&gt;
title('Comparativa');&lt;br /&gt;
xlabel('Tiempo');&lt;br /&gt;
ylabel('Intensidad(t)');&lt;br /&gt;
axis([0,0.5,-0.05,5])&lt;br /&gt;
hold off&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
Al ensayar con diferentes pasos de discretización vemos como la aproximación de la gráfica se va degenerando, hasta el punto en el que si se sobrepasa 0'05, la volatilidad de las oscilaciones llega a ser tal que la intensidad tarda un periodo sensiblemente mayor en estabilizarse y el error no se anula, ya que los valores son muy lejanos a los reales. Como la subida de intensidad se produce muy rápidamente, una h≥0'05 es, como podemos ver la imagen de la izquierda, muy poco precisa. Si se mantiene en el intervalo [0'02,0'05] se elimina la forma exponencial de la función (aparecen en su lugar fluctuaciones rectilíneas) pero se sigue reflejando la evolución de la intensidad hasta que se vuelve constante. Con un paso de 0'01, se consigue una gráfica exponencial con valores ligeramente superiores a los reales, por tanto podemos afirmar cuanto más pequeño sea el paso, más exacta y precisa será la aproximación ya que se trata de un aumento prácticamente instantáneo.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
[[Image:123456.jpg|500px|thumb|left|Comparativa de la función real con aproximaciones con diferentes pasos de discretización.]]&lt;br /&gt;
[[Image:Abbb.jpg|500px|thumb|center|Comparativa de la función real con aproximaciones con pasos de discretización más precisos.]]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== Método del Trapecio. ====&lt;br /&gt;
El método del trapecio se basa en aproximar una función integrando. Para ello utilizamos un número N de trapecios (en la imagen inferior hemos aproximado mediante 4 trapecios). Las integrales a resolver para poder poder aproximar una función por este método tendrán la distancia de sus límites de integración constantes para todas las integrales, a esta distancia entre los límites de integración lo llamamos paso. En el desarrollo de este método se supone que la función es continua en el intervalo en que se quiere aproximar.&lt;br /&gt;
&amp;lt;br/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Image:Trapecio.png|300px|thumb|center|Función Y(x), el área bajo la curva, se puede aproximar mediante n trapecios]]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
A continuación, vamos a resolver el problema mediante el método del trapecio con un paso de 0.05.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
{{matlab|codigo= &lt;br /&gt;
%Resolucion por Trapecio.&lt;br /&gt;
%Definimos las condiciones iniciales.&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=1;&lt;br /&gt;
&lt;br /&gt;
%Al tratarse del método de trapecio podemos usar un paso más grande.&lt;br /&gt;
h=0.05;&lt;br /&gt;
t=t0:h:tN;&lt;br /&gt;
N=(tN-t0)/h;&lt;br /&gt;
i=zeros(1,N+1);&lt;br /&gt;
i(1)=0;&lt;br /&gt;
&lt;br /&gt;
%Resolvemos la ecuación.&lt;br /&gt;
for n=1:N;&lt;br /&gt;
    i(n+1)=((200*h)/(2+25*h))+(i(n)*((2-25*h)/(2+25*h)));&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
%Dibujamos.&lt;br /&gt;
figure (1)&lt;br /&gt;
plot(t,i,'-r','linewidth',2)&lt;br /&gt;
xlabel('Tiempo')&lt;br /&gt;
ylabel('Intensidad(t)')&lt;br /&gt;
axis([0,1,-0.05,4.25])&lt;br /&gt;
&lt;br /&gt;
%Cambiamos los ejes del dibujo y añadimos líneas auxiliares para poder ver con mayor &lt;br /&gt;
%precisión el punto en el que la intensidad se hace constante.&lt;br /&gt;
figure (2)&lt;br /&gt;
plot(t,i,'-b','linewidth',2)&lt;br /&gt;
xlabel('Tiempo')&lt;br /&gt;
ylabel('Intensidad(t)')&lt;br /&gt;
axis([0,0.4,2,4.1])&lt;br /&gt;
grid on&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Image:Trapecio3a.jpg|450px|thumb|left|Resultado de la intensidad del circuito RL simple por el método del trapecio.]]&lt;br /&gt;
[[Image:Trapecio3a11.jpg|450px|thumb|center|Visualización del punto en que se hace constante la intensidad.]]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br/&amp;gt;&amp;lt;br/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
La representación de la función por el método del Trapecio nos permite utilizar un paso de discretización de 0.5 quedando como resultado una aproximación muy similar a la original (podemos observar ésto en la imagen de la izquierda).&lt;br /&gt;
Una ampliación de dicha aproximación nos permite ver con exactitud el punto en el cual la intensidad se hace constante,(0'25,4), es decir t=0'25 e i(t)=4.&lt;br /&gt;
&lt;br /&gt;
Además, si comparamos las gráficas obtenidas al aproximar la función por el método de Euler y del Trapecio con el mismo paso podemos afirmar que el método del Trapecio hace una aproximación más precisa que el método de Euler.&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Image:Trapecio3a.jpg|500px|thumb|left|Método del Trapecio (h=0.05).]]&lt;br /&gt;
[[Image:0.05.jpg|500px|thumb|center|Método de Euler (h=0'05) ]] &lt;br /&gt;
&lt;br /&gt;
&amp;lt;br/&amp;gt;&amp;lt;br/&amp;gt;&lt;br /&gt;
===== Efectos en la función al variar la constante del inductor. =====&lt;br /&gt;
La bobina es un elemento pasivo del circuito capaz de almacenar energía magnética.&lt;br /&gt;
&lt;br /&gt;
Una vez explicado la función del inductor (bobina) en el circuito, nos disponemos a estudiar las alteraciones producidas en la función cuando se disminuye o aumenta la constante del inductor, L. &lt;br /&gt;
&lt;br /&gt;
A continuación se muestran las gráficas resultantes al modificar dicho valor.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br/&amp;gt;&lt;br /&gt;
{{matlab|codigo= %Resolucion por Trapecio.&lt;br /&gt;
%Definimos las condiciones iniciales.&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=1;&lt;br /&gt;
h=0.05;&lt;br /&gt;
t=t0:h:tN;&lt;br /&gt;
N=(tN-t0)/h;&lt;br /&gt;
i=zeros(N+1);&lt;br /&gt;
i(1)=0;&lt;br /&gt;
&lt;br /&gt;
%Cambiamos la L y resolvemos su ecuación correspondiente.&lt;br /&gt;
L=3.2;&lt;br /&gt;
for n=1:N;&lt;br /&gt;
    i(n+1)=((40*h)/(2*L+5*h))+i(n)*((2*L-5*h)/(2*L+5*h));&lt;br /&gt;
end&lt;br /&gt;
figure (1)&lt;br /&gt;
plot(t,i,'-b','linewidth',2)&lt;br /&gt;
xlabel('Tiempo')&lt;br /&gt;
ylabel('Intensidad(t)')&lt;br /&gt;
title('L=3.2')&lt;br /&gt;
grid on&lt;br /&gt;
&lt;br /&gt;
%Cambiamos la L y resolvemos su ecuación correspondiente.&lt;br /&gt;
y=zeros(N+1);&lt;br /&gt;
y(1)=0;&lt;br /&gt;
L=0.8;&lt;br /&gt;
for m=1:N;&lt;br /&gt;
    y(m+1)=((40*h)/(2*L+5*h))+y(m)*((2*L-5*h)/(2*L+5*h));&lt;br /&gt;
end&lt;br /&gt;
figure (2)&lt;br /&gt;
plot(t,y,'-r','linewidth',2)&lt;br /&gt;
xlabel('Tiempo')&lt;br /&gt;
ylabel('Intensidad(t)')&lt;br /&gt;
title('L=0.8')&lt;br /&gt;
grid on&lt;br /&gt;
&lt;br /&gt;
%Cambiamos la L y resolvemos su ecuación correspondiente.&lt;br /&gt;
j=zeros(N+1);&lt;br /&gt;
j(1)=0;&lt;br /&gt;
L=0.05;&lt;br /&gt;
for o=1:N;&lt;br /&gt;
    j(o+1)=((40*h)/(2*L+5*h))+j(o)*((2*L-5*h)/(2*L+5*h));&lt;br /&gt;
end&lt;br /&gt;
figure (3)&lt;br /&gt;
plot(t,j,'-g','linewidth',2)&lt;br /&gt;
xlabel('Tiempo')&lt;br /&gt;
ylabel('Intensidad(t)')&lt;br /&gt;
title('L=0.05')&lt;br /&gt;
grid on&lt;br /&gt;
&lt;br /&gt;
%Cambiamos la L y resolvemos su ecuación correspondiente.&lt;br /&gt;
k=zeros(N+1);&lt;br /&gt;
k(1)=0;&lt;br /&gt;
L=0.0125;&lt;br /&gt;
for l=1:N;&lt;br /&gt;
    k(l+1)=((40*h)/(2*L+5*h))+k(l)*((2*L-5*h)/(2*L+5*h));&lt;br /&gt;
end&lt;br /&gt;
figure (4)&lt;br /&gt;
plot(t,k,'-c','linewidth',2)&lt;br /&gt;
xlabel('Tiempo')&lt;br /&gt;
ylabel('Intensidad(t)')&lt;br /&gt;
title('L=0.0125')&lt;br /&gt;
grid on&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br/&amp;gt;&lt;br /&gt;
*Como podemos observar a medida que incrementamos el valor de L, se acentúa la 'exponencialidad' de la función hasta llegar a aproximarse a una recta. A medida que aumenta el parecido a una recta, el tiempo de estabilización se extiende por ser la inductancia mayor, así como el valor de la intensidad cuando es constante.&lt;br /&gt;
*De igual forma al reducirlo, la subida de la intensidad hasta llegar a una cifra constante es mucho mayor, aumenta el periodo transitorio, pero de forma más moderada que en los casos anteriores y manteniendo la constancia en i(t)=4; sin embargo, la función deja de ser exponencial convirtiéndose en fluctuaciones de rectas que van reduciendo su volatilidad con el paso del tiempo.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br/&amp;gt;&lt;br /&gt;
[[Image:3.2.jpg|400px|thumb|left|L=3'2.]]&lt;br /&gt;
[[Image:0.8.jpg|400px|thumb|center|L=0'8.]]&lt;br /&gt;
&amp;lt;br/&amp;gt;&lt;br /&gt;
[[Image:0.0125.jpg|400px|thumb|left|L=0'0125.]]&lt;br /&gt;
[[Image:0.051.jpg|400px|thumb|center|L=0'5.]]&lt;br /&gt;
&amp;lt;br/&amp;gt;&amp;lt;br/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Leyes de Kirchhoff aplicada a un circuito RL de dos mallas==&lt;br /&gt;
Tras estudiar el circuito RL más simple (de una sola malla), ahora estudiaremos un circuito de dos mallas, por lo que como antes nos aparecía una sola ecuación diferencial, ahora nos aparecerá un sistema de dos ecuaciones diferenciales (una por cada malla).&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Circuito 2 completo.jpg|300px|thumb|left| Circuito RL de varias resistencias y bobinas ]]&lt;br /&gt;
&lt;br /&gt;
Según las  leyes de Kirchhoff, el sistema de ecuaciones diferenciales correspondiente al circuito 2 es el siguiente:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\left\{\begin{matrix}\ [1] E(t) = R_1\cdot i_1(t) + L_2\cdot \frac{d}{dt}\cdot i_2(t) + R_2\cdot i_2(t)\\ [2] E(t) = R_1\cdot i_1(t) + L_1\cdot \frac{d}{dt}\cdot i_3(t) + R_3\cdot i_3(t)\\ [3] i_1(t) = i_2(t) + i_3(t)\end{matrix}\right.&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''[1]'''Correspondiente al recorrido exterior del circuito.&amp;lt;br/&amp;gt;&lt;br /&gt;
'''[2]'''Correspondiente a la malla izquierda, (malla 1).&amp;lt;br/&amp;gt;&lt;br /&gt;
'''[3]'''Correspondiente al nudo de la parte superior del circuito(Ley de corrientes de Kirchhoff).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Sustituyendo la tercera ecuación en las otras dos, se obtiene el sistema en términos de i2(t) e i3(t) matricialmente::&amp;lt;math&amp;gt;\frac{d}{dt}\cdot \begin{pmatrix} i_2\\i_3 \end{pmatrix} = - \begin{pmatrix} \frac{R_1+R_2}{L_2}&amp;amp;\frac{R_1}{L_2} \\ \frac{R_1}{L_1}&amp;amp;\frac{R_1+R_3}{L_1}\end{pmatrix} \cdot \begin{pmatrix} i_2\\i_3 \end{pmatrix} + \begin{pmatrix} \frac{E}{L_2} \\ \frac{E}{L_1} \end{pmatrix}&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
A partir de las condiciones iniciales i2(0)=i3(0)=0 se puede interpretar que la corriente en el circuito es nula en el momento  en el cual se conecta el generador.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== Cálculo de las intensidades de un circuito con varias resistencias y bobinas a partir del Método de Euler y del Trapecio. ====&lt;br /&gt;
Ya se ha visto que la expresión de las intensidades i2 e i3 de este circuito RL vienen dadas por dos ecuaciones diferenciales que conforman un sistema. Este sistema de ecuaciones diferenciales se puede resolver numéricamente a partir del método de Euler y del trapecio, los cuales se basan en la aproximación de las áreas de esa ecuación diferencial al valor real de la función en cada momento.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Partiendo de unos datos iniciales iguales a:&lt;br /&gt;
&lt;br /&gt;
'''&amp;lt;math&amp;gt; R_1=R_2=6Ω &amp;lt;/math&amp;gt;''' , '''&amp;lt;math&amp;gt; R_3=3Ω &amp;lt;/math&amp;gt;''' , '''&amp;lt;math&amp;gt; L_1=0,3Hz &amp;lt;/math&amp;gt;''' , '''&amp;lt;math&amp;gt; L_2=0,11Hz &amp;lt;/math&amp;gt;''' y '''&amp;lt;math&amp;gt; E(t)=20 V &amp;lt;/math&amp;gt;'''&lt;br /&gt;
&lt;br /&gt;
 :&amp;lt;math&amp;gt;\frac{d}{dt}\cdot \begin{pmatrix} i_2\\i_3 \end{pmatrix} = - \begin{pmatrix} \frac{6+6}{0,11}&amp;amp;\frac{6}{0,11} \\ \frac{6}{0,3}&amp;amp;\frac{6+3}{0,3}\end{pmatrix} \cdot \begin{pmatrix} i_2\\i_3 \end{pmatrix} + \begin{pmatrix} \frac{20}{0,11} \\ \frac{20}{0,3} \end{pmatrix}&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
Resolvemos las ecuaciones diferenciales:&lt;br /&gt;
&lt;br /&gt;
* ''' MÉTODO DE EULER: '''&lt;br /&gt;
'''OCTAVE'''&lt;br /&gt;
{{matlab|codigo= &lt;br /&gt;
DATOS:&lt;br /&gt;
&lt;br /&gt;
clc;clear all;&lt;br /&gt;
    %t0=tiempo inicial&lt;br /&gt;
t0=0;&lt;br /&gt;
    %tN=tiempo máximo a evaluar&lt;br /&gt;
tN=0.04;&lt;br /&gt;
    %soluciones en y0 para las variables i2 e i3&lt;br /&gt;
y0=0;&lt;br /&gt;
    %N=intervalos en los que se dividen&lt;br /&gt;
N=25;&lt;br /&gt;
    %h=salto de intervalo en intervalo&lt;br /&gt;
h=(tN-t0)/N;&lt;br /&gt;
    %i1,i2,i3=vectores solución desde t0 a tN de h en h&lt;br /&gt;
i1=t0:h:tN;&lt;br /&gt;
&lt;br /&gt;
i2=t0:h:tN;&lt;br /&gt;
&lt;br /&gt;
i3=t0:h:tN;&lt;br /&gt;
&lt;br /&gt;
    %y=vector de ceros y que va a almacenar las soluciones.Tendrá N+1 términos porque el primero es el cero y el ultimo el N&lt;br /&gt;
    %la intensidad dos es y(:,1),es decir, la fila 1.&lt;br /&gt;
    %la intensidad tres es y(:,2),es decir, la fila 2.&lt;br /&gt;
    %la intensidad uno es y(:,3),es decir, la fila 3.&lt;br /&gt;
y=zeros(N+1,3);&lt;br /&gt;
y(1,1)=y0;&lt;br /&gt;
y(1,2)=y0;&lt;br /&gt;
y(1,3)=y0;&lt;br /&gt;
%AHORA SE EMPIEZA A RESOLVER POR EULER EL SISTEMA.&lt;br /&gt;
%y(n+1)=y(n)+h*f(t(n),y(n))&lt;br /&gt;
%f(t,i2)=((E/L2)-R1*(i2+i3)+R2*i2)/L2&lt;br /&gt;
%f(t,i3)=((E/L1)-R1*(i2+i3)+R3*i3)/L1&lt;br /&gt;
for n=1:N&lt;br /&gt;
    y(n+1,1)=y(n,1)+h*((20/0.11)-(6*(y(n,1)+y(n,2))+6*y(n,1))/0.11);&lt;br /&gt;
    y(n+1,2)=y(n,2)+h*((20/0.3)-(6*(y(n,1)+y(n,2))+3*y(n,2))/0.3);&lt;br /&gt;
    y(n+1,3)=y(n+1,1)+y(n+1,2);&lt;br /&gt;
end&lt;br /&gt;
hold on&lt;br /&gt;
plot(i1,y(:,3),'+')&lt;br /&gt;
plot(i2,y(:,1),'r+')&lt;br /&gt;
plot(i3,y(:,2),'g+')&lt;br /&gt;
xlabel('Tiempo');&lt;br /&gt;
ylabel('Intensidad(t)');&lt;br /&gt;
legend('i1', 'i2', 'i3');&lt;br /&gt;
grid on&lt;br /&gt;
}}&lt;br /&gt;
* ''' MÉTODO DEL TRAPECIO: '''&lt;br /&gt;
'''OCTAVE'''&lt;br /&gt;
{{matlab|codigo= &lt;br /&gt;
DATOS:&lt;br /&gt;
clc;clear all;&lt;br /&gt;
    %tiempo inicial&lt;br /&gt;
t0=0;&lt;br /&gt;
    %tiempo máximo a evaluar&lt;br /&gt;
tN=0.04;&lt;br /&gt;
    %soluciones en y0 para las variables i2 e i3&lt;br /&gt;
y0=0;&lt;br /&gt;
    %intervalos en los que se dividen&lt;br /&gt;
N=25;&lt;br /&gt;
	%salto de intervalo en intervalo&lt;br /&gt;
h=(tN-t0)/N;&lt;br /&gt;
    %vectores solución desde t0 a tN de h en h&lt;br /&gt;
i1=t0:h:tN;&lt;br /&gt;
i2=t0:h:tN;&lt;br /&gt;
i3=t0:h:tN;&lt;br /&gt;
    %vector de ceros y que va a almacenar las soluciones&lt;br /&gt;
    %tendra N+1 términos porque el primero es el cero y el ultimo el N&lt;br /&gt;
    %la intensidad dos es y(:,1)&lt;br /&gt;
    %la intensidad tres es y(:,2)&lt;br /&gt;
    %la intensidad uno es y(:,3)&lt;br /&gt;
y=zeros(N+1,3);&lt;br /&gt;
y(1,1)=y0;&lt;br /&gt;
y(1,2)=y0;&lt;br /&gt;
y(1,3)=y0;&lt;br /&gt;
PARA RESOLVER POR EL MÉTODO DEL TRAPECIO:&lt;br /&gt;
%y(n+1)=y(n)+(h/2)*(f(t(n),y(n)+f(t(n+1),y(n+1))&lt;br /&gt;
%f(t,i2)=((E/L2)-R1*(i2+i3)+R2*i2)/L2&lt;br /&gt;
%f(t,i3)=((E/L1)-R1*(i2+i3)+R3*i3)/L1&lt;br /&gt;
for n=1:N&lt;br /&gt;
    y(n+1,1)=y(n,1)+(h/2)*(((20/0.11)-(6*(y(n,1)+y(n,2))+6*y(n,1))/0.11)+((20/0.11)-(6*(y(n+1,1)+y(n+1,2))+6*y(n+1,1))/0.11));&lt;br /&gt;
    y(n+1,2)=y(n,2)+(h/2)*(((20/0.3)-(6*(y(n,1)+y(n,2))+3*y(n,2))/0.3)+((20/0.3)-(6*(y(n+1,1)+y(n+1,2))+3*y(n+1,2))/0.3));  &lt;br /&gt;
    y(n+1,3)=y(n+1,1)+y(n+1,2);&lt;br /&gt;
end&lt;br /&gt;
plot(i1,y(:,3))&lt;br /&gt;
plot(i2,y(:,1),'r')&lt;br /&gt;
plot(i3,y(:,2),'g')&lt;br /&gt;
xlabel('Tiempo');&lt;br /&gt;
ylabel('Intensidad(t)');&lt;br /&gt;
hold off&lt;br /&gt;
}}&lt;br /&gt;
&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
[[Archivo:Resoct.png|800px|thumb|centre|Gráfica del resultado del Método de Euler y Trapecio en el cálculo de las intensidades.]]&lt;br /&gt;
&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''En el resultado de la gráfica, lo obtenido con el método de Euler se representa con los símbolos &amp;quot;+&amp;quot;, mientras que la línea continua corresponde al Método del Trapecio. Como se puede apreciar, ambos métodos dan resultados similares y muy próximos. En la interpretación de los resultados, diríamos que se trata de corrientes muy estables.'''&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
====Variación de las intensidades de un circuito RL cuando se altera el valor de una de las resistencias.====&lt;br /&gt;
Ahora vamos a analizar como afecta la variación del módulo de una resistencia (se incrementa, '''&amp;lt;math&amp;gt; R_3=3Ω &amp;lt;/math&amp;gt;''' pasa a valer '''&amp;lt;math&amp;gt; R_3=9Ω &amp;lt;/math&amp;gt;''') en las intensidades del circuito.&lt;br /&gt;
Nuestro análisis se realizará sustituyendo el nuevo valor en el mismo sistema, y se resolverá por el método de Euler y Trapecio comparando en una gráfica los resultados con los obtenidos anteriormente.&lt;br /&gt;
&lt;br /&gt;
* ''' MÉTODO DE EULER: '''&lt;br /&gt;
'''OCTAVE'''&lt;br /&gt;
{{matlab|codigo= &lt;br /&gt;
%DATOS:&lt;br /&gt;
clc;clear all;&lt;br /&gt;
    %tiempo inicial&lt;br /&gt;
t0=0;&lt;br /&gt;
    %tiempo máximo a evaluar&lt;br /&gt;
tN=0.04;&lt;br /&gt;
    %soluciones en y0 para las variables i2 e i3&lt;br /&gt;
y0=0;&lt;br /&gt;
    %intervalos en los que se dividen&lt;br /&gt;
N=25;&lt;br /&gt;
	%salto de intervalo en intervalo&lt;br /&gt;
h=(tN-t0)/N;&lt;br /&gt;
    %vectores solución desde t0 a tN de h en h&lt;br /&gt;
i1=t0:h:tN;&lt;br /&gt;
i2=t0:h:tN;&lt;br /&gt;
i3=t0:h:tN;&lt;br /&gt;
    %vector de ceros y que va a almacenar las soluciones&lt;br /&gt;
    %tendra N+1 términos porque el primero es el cero y el ultimo el N&lt;br /&gt;
    %la intensidad dos es y(:,1)&lt;br /&gt;
    %la intensidad tres es y(:,2)&lt;br /&gt;
    %la intensidad uno es y(:,3)&lt;br /&gt;
y=zeros(N+1,3);&lt;br /&gt;
y(1,1)=y0;&lt;br /&gt;
y(1,2)=y0;&lt;br /&gt;
y(1,3)=y0;&lt;br /&gt;
%PARA RESOLVER POR EULER EL SISTEMA:&lt;br /&gt;
%y(n+1)=y(n)+h*f(t(n),y(n))&lt;br /&gt;
%f(t,i2)=((E/L2)-R1*(i2+i3)+R2*i2)/L2&lt;br /&gt;
%f(t,i3)=((E/L1)-R1*(i2+i3)+R3*i3)/L1&lt;br /&gt;
for n=1:N&lt;br /&gt;
    y(n+1,1)=y(n,1)+h*((20/0.11)-(6*(y(n,1)+y(n,2))+6*y(n,1))/0.11);&lt;br /&gt;
    y(n+1,2)=y(n,2)+h*((20/0.3)-(6*(y(n,1)+y(n,2))+9*y(n,2))/0.3);&lt;br /&gt;
    y(n+1,3)=y(n+1,1)+y(n+1,2);&lt;br /&gt;
end&lt;br /&gt;
hold on&lt;br /&gt;
plot(i1,y(:,3),'c+')&lt;br /&gt;
plot(i2,y(:,1),'m+')&lt;br /&gt;
plot(i3,y(:,2),'k+')&lt;br /&gt;
}}&lt;br /&gt;
* ''' MÉTODO DEL TRAPECIO: '''&lt;br /&gt;
'''OCTAVE'''&lt;br /&gt;
{{matlab|codigo= &lt;br /&gt;
%DATOS:&lt;br /&gt;
clc;clear all;&lt;br /&gt;
    %tiempo inicial&lt;br /&gt;
t0=0;&lt;br /&gt;
    %tiempo máximo a evaluar&lt;br /&gt;
tN=0.04;&lt;br /&gt;
    %soluciones en y0 para las variables i2 e i3&lt;br /&gt;
y0=0;&lt;br /&gt;
    %intervalos en los que se dividen&lt;br /&gt;
N=25;&lt;br /&gt;
	%salto de intervalo en intervalo&lt;br /&gt;
h=(tN-t0)/N;&lt;br /&gt;
    %vectores solución desde t0 a tN de h en h&lt;br /&gt;
i1=t0:h:tN;&lt;br /&gt;
i2=t0:h:tN;&lt;br /&gt;
i3=t0:h:tN;&lt;br /&gt;
    %vector de ceros y que va a almacenar las soluciones&lt;br /&gt;
    %tendra N+1 términos porque el primero es el cero y el ultimo el N&lt;br /&gt;
    %la intensidad dos es y(:,1)&lt;br /&gt;
    %la intensidad tres es y(:,2)&lt;br /&gt;
    %la intensidad uno es y(:,3)&lt;br /&gt;
y=zeros(N+1,3);&lt;br /&gt;
y(1,1)=y0;&lt;br /&gt;
y(1,2)=y0;&lt;br /&gt;
y(1,3)=y0;&lt;br /&gt;
%PARA RESOLVER POR EL MÉTODO DEL TRAPECIO:&lt;br /&gt;
%y(n+1)=y(n)+(h/2)*(f(t(n),y(n)+f(t(n+1),y(n+1))&lt;br /&gt;
%f(t,i2)=((E/L2)-R1*(i2+i3)+R2*i2)/L2&lt;br /&gt;
%f(t,i3)=((E/L1)-R1*(i2+i3)+R3*i3)/L1&lt;br /&gt;
for n=1:N&lt;br /&gt;
    y(n+1,1)=y(n,1)+(h/2)*(((20/0.11)-(6*(y(n,1)+y(n,2))+6*y(n,1))/0.11)+((20/0.11)-(6*(y(n+1,1)+y(n+1,2))+6*y(n+1,1))/0.11));&lt;br /&gt;
    y(n+1,2)=y(n,2)+(h/2)*(((20/0.3)-(6*(y(n,1)+y(n,2))+9*y(n,2))/0.3)+((20/0.3)-(6*(y(n+1,1)+y(n+1,2))+9*y(n+1,2))/0.3));  &lt;br /&gt;
    y(n+1,3)=y(n+1,1)+y(n+1,2);&lt;br /&gt;
end&lt;br /&gt;
plot(i1,y(:,3),'c')&lt;br /&gt;
plot(i2,y(:,1),'m')&lt;br /&gt;
plot(i3,y(:,2),'k')&lt;br /&gt;
hold off&lt;br /&gt;
}}&lt;br /&gt;
[[Image:Resultado.png|500px|thumb|left|Gráfica de la intensidad del circuito RL compuesto tras incrementar una de sus resistencias ]]&lt;br /&gt;
[[Archivo:Resoct.png|500px|thumb|right|Gráfica del resultado del Método de Euler y Trapecio en el cálculo de las intensidades sin incrementar.]]&lt;br /&gt;
[[Image:Grafica comparativa 5y6 (1).jpg|1400px|thumb|centre|Gráfica comparativa de las intensidades de un circuito RL intensidades incrementadas y sin incrementar. ]]&lt;br /&gt;
'''De nuevo, las cruces + corresponderían a lo obtenido por el método de Euler y la línea continua al Método del trapecio. En la gráfica superpuesta se observa el resultado final de la comparativa: frente a resistencias menores las intensidades resultan mayores, y viceversa. Esto se justifica gracias a la Ley de Ohm que establece '''&amp;lt;math&amp;gt; V=I*R&amp;lt;/math&amp;gt;''' de manera que la intensidad y resistencia son inversamente proporcionales, y si una se incrementa, la otra decrece: '''&amp;lt;math&amp;gt; I=V/R&amp;lt;/math&amp;gt;''', '''&amp;lt;math&amp;gt; R=V/I&amp;lt;/math&amp;gt;'''. '''&lt;br /&gt;
&lt;br /&gt;
== Resolución de un problema de valor inicial en otro punto ==&lt;br /&gt;
==== Cálculo de las intensidades en un punto (el inicial) a partir de un valor inicial en un punto distinto al origen. ====&lt;br /&gt;
&lt;br /&gt;
Esta vez vamos a calcular el valor concreto de un punto de una función, que hemos definido tras resolver una ecuación diferencial. Nuestra función será la que define las intensidades de un circuito RL compuesto. En la resolución de la ecuación diferencial que relaciona las derivadas con la función, procederemos de nuevo tratándolo como un problema de valor inicial; a pesar de que no sea un valor en el punto de origen el que tengamos por dato, sino un valor de '''&amp;lt;math&amp;gt; i_2 &amp;lt;/math&amp;gt;''' e '''&amp;lt;math&amp;gt; i_3 &amp;lt;/math&amp;gt;''' en el tiempo '''&amp;lt;math&amp;gt; t=0,02  &amp;lt;/math&amp;gt;'''. Serán precisamente estos valores en el origen los que calculemos. De nuevo, utilizaremos el segundo circuito expuesto en este artículo (sin incrementar resistencias):&lt;br /&gt;
[[Archivo:Circuito 2 completo.jpg|300px|thumb|left|Circuito RL compuesto ]]&lt;br /&gt;
&lt;br /&gt;
 :&amp;lt;math&amp;gt;\frac{d}{dt}\cdot \begin{pmatrix} i_2\\i_3 \end{pmatrix} = - \begin{pmatrix} \frac{6+6}{0,11}&amp;amp;\frac{6}{0,11} \\ \frac{6}{0,3}&amp;amp;\frac{6+3}{0,3}\end{pmatrix} \cdot \begin{pmatrix} i_2\\i_3 \end{pmatrix} + \begin{pmatrix} \frac{20}{0,11} \\ \frac{20}{0,3} \end{pmatrix}&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''&amp;lt;math&amp;gt; R_1=R_2=6Ω &amp;lt;/math&amp;gt;''' , '''&amp;lt;math&amp;gt; R_3=3Ω &amp;lt;/math&amp;gt;''' , '''&amp;lt;math&amp;gt; L_1=0,3Hz &amp;lt;/math&amp;gt;''' , '''&amp;lt;math&amp;gt; L_2=0,11Hz &amp;lt;/math&amp;gt;''' y '''&amp;lt;math&amp;gt; E(t)=20 V &amp;lt;/math&amp;gt;'''.&lt;br /&gt;
&lt;br /&gt;
Nuestros valores iniciales '''&amp;lt;math&amp;gt; i_2(0,02)=i_3(0,02)=1A &amp;lt;/math&amp;gt;'''&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Buscamos '''&amp;lt;math&amp;gt; i_1(t),i_2(t),i_3(t) &amp;lt;/math&amp;gt;'''.&lt;br /&gt;
&lt;br /&gt;
Resolvemos por el método de Euler:&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo= &lt;br /&gt;
%DATOS:&lt;br /&gt;
clc;clear all;&lt;br /&gt;
    %tiempo inicial&lt;br /&gt;
t0=0.02;&lt;br /&gt;
    %tiempo a evaluar&lt;br /&gt;
tN=0;&lt;br /&gt;
    %soluciones en y0.02 para las variables i2 e i3&lt;br /&gt;
y02=1;&lt;br /&gt;
    %&lt;br /&gt;
N=100000;&lt;br /&gt;
	%salto de intervalo en intervalo&lt;br /&gt;
h=(tN-t0)/N;&lt;br /&gt;
    %vectores solución desde t0 a tN de h en h&lt;br /&gt;
i1=t0:h:tN;&lt;br /&gt;
i2=t0:h:tN;&lt;br /&gt;
i3=t0:h:tN;&lt;br /&gt;
    %vector de ceros y que va a almacenar las soluciones&lt;br /&gt;
    %tendra N+1 términos porque el primero es el cero y el ultimo el N&lt;br /&gt;
    %la intensidad dos es y(:,1)&lt;br /&gt;
    %la intensidad tres es y(:,2)&lt;br /&gt;
    %la intensidad uno es y(:,3)&lt;br /&gt;
y=zeros(N+1,3);&lt;br /&gt;
y(1,1)=y02;&lt;br /&gt;
y(1,2)=y02;&lt;br /&gt;
y(1,3)=2;&lt;br /&gt;
%RESOLVEMOS POR EULER EL SISTEMA:&lt;br /&gt;
%y(n+1)=y(n)+h*f(t(n),y(n))&lt;br /&gt;
%f(t,i2)=((E/L2)-R1*(i2+i3)+R2*i2)/L2&lt;br /&gt;
%f(t,i3)=((E/L1)-R1*(i2+i3)+R3*i3)/L1&lt;br /&gt;
for n=1:N&lt;br /&gt;
    y(n+1,1)=y(n,1)+h*((20/0.11)-(6*(y(n,1)+y(n,2))+6*y(n,1))/0.11);&lt;br /&gt;
    y(n+1,2)=y(n,2)+h*((20/0.3)-(6*(y(n,1)+y(n,2))+3*y(n,2))/0.3);&lt;br /&gt;
    y(n+1,3)=y(n+1,1)+y(n+1,2);&lt;br /&gt;
end&lt;br /&gt;
intensidad1=y(N+1,3)&lt;br /&gt;
intensidad2=y(N+1,1)&lt;br /&gt;
intensidad3=y(N+1,2)&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
'''Los resultados obtenidos:'''&lt;br /&gt;
[[Archivo:Intens.png|600px|thumb|centre|Valores de las intensidades para t=0]]&lt;br /&gt;
&lt;br /&gt;
Así se prueba la eficacia de estas aproximaciones numéricas no sólo al trazar gráficas, sino también para dar valores concretos de la función en los puntos que se quiera.&lt;br /&gt;
&lt;br /&gt;
[[Categoría:Ecuaciones Diferentiales]]&lt;br /&gt;
[[Categoría:ED13/14]]&lt;br /&gt;
[[Categoría:Trabajos 2013-14]]&lt;/div&gt;</summary>
		<author><name>Lucia Lopez</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Circuitos_RL_(grupo_B)&amp;diff=10169</id>
		<title>Circuitos RL (grupo B)</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Circuitos_RL_(grupo_B)&amp;diff=10169"/>
				<updated>2014-03-05T01:47:49Z</updated>
		
		<summary type="html">&lt;p&gt;Lucia Lopez: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{ TrabajoED | Circuitos RL. Grupo 2-B | [[:Categoría:Ecuaciones Diferenciales|Ecuaciones Diferenciales]]|[[:Categoría:ED13/14|Curso 2013-14]] | Diego Solano López,Lucia López Sánchez,Adela González Barbado,Araceli Martín Candilejo,Ignacio Díaz Caneja Camblor,Alberto Fernández Pérez }}&lt;br /&gt;
&lt;br /&gt;
El circuito eléctrico mas simple esta compuesto de una resistencia, un inductor o bobina y una fuente de alimentación.&lt;br /&gt;
* En una resistencia R, la Ley de Ohm establece:&lt;br /&gt;
&lt;br /&gt;
  &amp;lt;math&amp;gt;i(t)={V(t)\over R}&amp;lt;/math&amp;gt;&lt;br /&gt;
* En un inductor L la Ley de Faraday dice:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; V(t)=L\cdot i'(t)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
Las leyes de Kirchhoff establecen el comportamiento de los circuitos:&lt;br /&gt;
# '''Ley de corriente:''' en cada nudo la suma de corrientes que entra coincide con la suma de corrientes que sale.&lt;br /&gt;
# '''Ley de tensiones:''' en cada ciclo cerrado, la suma de las diferencias de potencial eléctrico es nula.&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Segunda ley de Kirchhoff ==&lt;br /&gt;
==== Ecuación diferencial-Resolución y representación analítica.====&lt;br /&gt;
Basándonos en la segunda ley de Kirchhoff sobre el circuito que observamos en la imagen, podemos trabajar con la siguiente ecuación diferencial.&lt;br /&gt;
&lt;br /&gt;
Esta vez vamos a obtener la solución del valor concreto de un punto de una función hallada a partir de una ecuación diferencial. Será así de nuevo el caso de una ecuación diferencial que define las relaciones entre las corrientes y sus derivadas en un circuito RL de varias resistencias y bobinas. Volveremos a utilizar el segundo circuito mostrado en este artículo:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;math&amp;gt; i'(t)+{R\over L}i(t)-{V(t)\over L}=0 &amp;lt;/math&amp;gt; [[Image:cicuito1.jpg|300px|thumb|right|Circuito RL simple ]]&lt;br /&gt;
&lt;br /&gt;
Al suponer que en el instante t=0 el circuito está abierto, podemos establecer para el problema de Cauchy el valor inicial '''&amp;lt;math&amp;gt; i_0(t)=0 &amp;lt;/math&amp;gt;'''. Considerando que la alimentación posee un voltaje constante '''V(t)=20V, L=0.2 y R=5Ω''', llegamos al problema:&lt;br /&gt;
&lt;br /&gt;
                              &amp;lt;math&amp;gt;\left\{\begin{matrix}\ i'(t)+{25}i(t)-{100}=0 \\i(0)=0\end{matrix}\right.&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
La resolución de éste mediante &amp;lt;math&amp;gt;i \cdot e^{\int{\frac{R}{L}dt}} = \int{e^{\frac{R \cdot t}{L}}dt} \hspace{0.5cm} \rightarrow \hspace{0.5cm} &amp;lt;/math&amp;gt; &lt;br /&gt;
&amp;lt;math&amp;gt;i \cdot e^{\frac{R \cdot t}{L}} = \frac{V}{R}e^{\frac{R \cdot t}{L}}+C&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt; nos da:&lt;br /&gt;
 &amp;lt;math&amp;gt; i(t)=4-4e^{-25t} &amp;lt;/math&amp;gt;&lt;br /&gt;
La gráfica de la función nos muestra la evolución de la intensidad. En ella se puede apreciar una rápida subida en los primeros instantes que se ralentiza hasta llegar a ser prácticamente constante con un valor de 4. Por lo que podemos afirmar que la intensidad se estabiliza en un corto periodo de tiempo.&lt;br /&gt;
[[Image:Funcion.jpg|500px|thumb|center|Gráfica de la intensidad en un circuito RL simple ]]&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo= &lt;br /&gt;
fplot('4-4*exp(-25*t)',[0,0.5,0,5]);&lt;br /&gt;
xlabel('Tiempo')&lt;br /&gt;
ylabel('Intensidad(t)')&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
==== Método de Euler. ====&lt;br /&gt;
Este método parte de la posibilidad de aproximar una función original mediante rectas tangentes partiendo de un punto dado. Sabiendo que la recta tangente de una función en un punto es su derivada en dicho punto, este método consiste en calcular derivadas de la función en diferentes puntos pertenecientes a dicha función. Estos puntos serán tomados con la misma distancia a lo largo de la recta, a esta distancia la denominamos paso. &lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Image:Euler.png|300px|thumb|center|Aproximación de una función por el método de Euler]]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
A continuación, vamos a calcular la función por el método de Euler, resolviendo la ecuación con diferentes pasos. De esta forma, podremos observar y analizar los distintos resultados obtenidos al modificar los pasos, hasta que lleguemos a una conclusión evidente. Además calcularemos el error cometido por la aproximación del método para ser más precios en nuestras observaciones.&lt;br /&gt;
&lt;br /&gt;
Comenzamos a analizar este método elaborando un programa con un paso de 0.01, que podemos visualizar a continuación.&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo= &lt;br /&gt;
%Definimos las condiciones iniciales.&lt;br /&gt;
clear all&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=1;&lt;br /&gt;
&lt;br /&gt;
%Establecemos un paso h=0'01.&lt;br /&gt;
h=0.01;&lt;br /&gt;
t=t0:h:tN;&lt;br /&gt;
N=(tN-t0)/h;&lt;br /&gt;
&lt;br /&gt;
%Resolvemos la ecuación.&lt;br /&gt;
ii=0;&lt;br /&gt;
i(1)=ii;&lt;br /&gt;
for n=1:N;&lt;br /&gt;
  ii=ii+h*(100-25*ii);&lt;br /&gt;
  i(n+1)=ii;&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
%Dibujamos la gráfica.&lt;br /&gt;
figure(1)&lt;br /&gt;
plot(t,i,'-g','linewidth',2);&lt;br /&gt;
xlabel('Tiempo');&lt;br /&gt;
ylabel('Intensidad(t)');&lt;br /&gt;
axis([-0.1,1,0,5])&lt;br /&gt;
&lt;br /&gt;
%Calculo error y lo dibujamos.&lt;br /&gt;
r=4-4*exp(-25*t);&lt;br /&gt;
error=abs(r-i);&lt;br /&gt;
figure(2)&lt;br /&gt;
plot(t,error,'-r','linewidth',2)&lt;br /&gt;
xlabel('Tiempo');&lt;br /&gt;
ylabel('Error');&lt;br /&gt;
axis([-0.1,1,-0.05,0.25])&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
Un paso de discretización de 0'01 proporciona un error muy pequeño, lo que aporta una aproximación de la función muy similar a la real, como podemos observar en la primera figura. Analizando el error que nos ofrece dicha aproximación (imagen de la derecha),su valor no supera el 0'2, por tanto, podemos afirmar analíticamente la exactitud de la aproximación. Además, podemos observar que el error se anula al llegar a t=0'25, momento en el que coincide la función aproximada por Euler con la función real. &lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Image:0.01.jpg|500px|thumb|left|Resultado de la intensidad del circuito RL simple por el método de Euler para h=0'01]] [[Image:error0.01.jpg|500px|thumb|center|Gráfica del error cometido en el cálculo de la intensidad por el método de Euler para h=0'01 ]]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br/&amp;gt; &amp;lt;br/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Una vez analizado el resultado anterior, resolvemos el problema con un paso mayor.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
{{matlab|codigo= %Resolucion por Euler&lt;br /&gt;
%Definimos las condiciones iniciales.&lt;br /&gt;
clear all&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=1;&lt;br /&gt;
&lt;br /&gt;
%Probamos con un paso de discretización mayor, h=0'05.&lt;br /&gt;
h=0.05;&lt;br /&gt;
t=t0:h:tN;&lt;br /&gt;
N=(tN-t0)/h;&lt;br /&gt;
&lt;br /&gt;
%Resolvemos la ecuación.&lt;br /&gt;
ii=0;&lt;br /&gt;
i(1)=ii;&lt;br /&gt;
for n=1:N;&lt;br /&gt;
  ii=ii+h*(100-25*ii);&lt;br /&gt;
  i(n+1)=ii;&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
%Creamos el dibujo.&lt;br /&gt;
figure(1)&lt;br /&gt;
plot(t,i,'-g','linewidth',2);&lt;br /&gt;
xlabel('Tiempo');&lt;br /&gt;
ylabel('Intensidad(t)');&lt;br /&gt;
axis([-0.1,1,0,5.1])&lt;br /&gt;
&lt;br /&gt;
%Calculo error y dibujamos.&lt;br /&gt;
r=4-4*exp(-25*t);&lt;br /&gt;
error=abs(r-i);&lt;br /&gt;
figure(2)&lt;br /&gt;
plot(t,error,'-r','linewidth',2)&lt;br /&gt;
axis([-0.1,1,-0.05,2.25])&lt;br /&gt;
xlabel('Tiempo');&lt;br /&gt;
ylabel('Error');&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br/&amp;gt;&lt;br /&gt;
Podemos observar que al aumentar el paso de discretización a 0'05 la aproximación de la curva se ha convertido en una combinación de rectas que asemejan la evolución de la intensidad, ya que sigue manteniendo una rápida subida inicial.  A pesar de ello, el error ha aumentado su valor en un 1000% en el periodo transitorio, pero vuelve a anularse en el permanente ya que a partir del punto de estabilización los valores aproximados coincide con los reales.El cambio producido en el incremento inicial de la intensidad se debe a la brevedad de éste, por lo que resulta poco preciso trabajar con pasos mayores.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
[[Image:0.05.jpg|500px|thumb|left|Resultado de la intensidad del circuito RL simple por el método de Euler para h=0'05 ]] [[Image:error0.05.jpg|500px|thumb|center| Gráfica del error cometido en el cálculo de la intensidad por el método de Euler para h=0'05]]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br/&amp;gt; &amp;lt;br/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Para estar más seguro de la afirmación hecha hace unos instantes, en la que hemos asegurado que es poco preciso trabajar con pasos mayores vamos a resolver y comparar en la misma gráfica el problema resuelto con distintos valores para la h, el paso.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br/&amp;gt;&lt;br /&gt;
{{matlab|codigo= &lt;br /&gt;
%Comparamos las gráficas con diferentes pasos y la función real.&lt;br /&gt;
clear all&lt;br /&gt;
&lt;br /&gt;
%Guardamos el valor para cada paso.&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=1;&lt;br /&gt;
h1=0.05;&lt;br /&gt;
t1=t0:h1:tN;&lt;br /&gt;
N1=(tN-t0)/h1;&lt;br /&gt;
h2=0.01;&lt;br /&gt;
t2=t0:h2:tN;&lt;br /&gt;
N2=(tN-t0)/h2;&lt;br /&gt;
h3=0.075;&lt;br /&gt;
t3=t0:h3:tN;&lt;br /&gt;
N3=(tN-t0)/h3;&lt;br /&gt;
&lt;br /&gt;
%Creamos un bucle para cada h y resolver las cuatro ecuaciones.&lt;br /&gt;
ii=0;&lt;br /&gt;
i(1)=ii;&lt;br /&gt;
for n=1:N1;&lt;br /&gt;
  ii=ii+h1*(100-25*ii);&lt;br /&gt;
  i(n+1)=ii;&lt;br /&gt;
end&lt;br /&gt;
yy=0;&lt;br /&gt;
y(1)=yy;&lt;br /&gt;
for m=1:N2;&lt;br /&gt;
  yy=yy+h2*(100-25*yy);&lt;br /&gt;
  y(m+1)=yy;&lt;br /&gt;
end&lt;br /&gt;
jj=0;&lt;br /&gt;
j(1)=jj;&lt;br /&gt;
for m=1:N3;&lt;br /&gt;
  jj=jj+h3*(100-25*jj);&lt;br /&gt;
  j(m+1)=jj;&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
%Hacemos el dibujo con todas las gráficas a la vez para hacer una comparación global de estas y la función real.&lt;br /&gt;
hold on &lt;br /&gt;
fplot('4-4*exp(-25*t2)',[0,1,0,5],'r');&lt;br /&gt;
plot(t1,i,'-b','linewidth',1);&lt;br /&gt;
plot(t2,y,'-y','linewidth',1);&lt;br /&gt;
plot(t3,j,'-g','linewidth',1);&lt;br /&gt;
legend('Función real','h=0.05', 'h=0.01', 'h=0.075');&lt;br /&gt;
title('Comparativa');&lt;br /&gt;
xlabel('Tiempo');&lt;br /&gt;
ylabel('Intensidad(t)');&lt;br /&gt;
axis([-0.1,1,-0.05,8])&lt;br /&gt;
hold off&lt;br /&gt;
&lt;br /&gt;
%Quitamos el paso mayor para ver con mayor exactitud como se difieren las aproximaciones más correctas.&lt;br /&gt;
figure (2)&lt;br /&gt;
hold on &lt;br /&gt;
fplot('4-4*exp(-25*t2)',[0,1,0,5],'r');&lt;br /&gt;
plot(t1,i,'-b','linewidth',1);&lt;br /&gt;
plot(t2,y,'-g','linewidth',1);&lt;br /&gt;
legend('Función real','h=0.05', 'h=0.01');&lt;br /&gt;
title('Comparativa');&lt;br /&gt;
xlabel('Tiempo');&lt;br /&gt;
ylabel('Intensidad(t)');&lt;br /&gt;
axis([0,0.5,-0.05,5])&lt;br /&gt;
hold off&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
Al ensayar con diferentes pasos de discretización vemos como la aproximación de la gráfica se va degenerando, hasta el punto en el que si se sobrepasa 0'05, la volatilidad de las oscilaciones llega a ser tal que la intensidad tarda un periodo sensiblemente mayor en estabilizarse y el error no se anula, ya que los valores son muy lejanos a los reales. Como la subida de intensidad se produce muy rápidamente, una h≥0'05 es, como podemos ver la imagen de la izquierda, muy poco precisa. Si se mantiene en el intervalo [0'02,0'05] se elimina la forma exponencial de la función (aparecen en su lugar fluctuaciones rectilíneas) pero se sigue reflejando la evolución de la intensidad hasta que se vuelve constante. Con un paso de 0'01, se consigue una gráfica exponencial con valores ligeramente superiores a los reales, por tanto podemos afirmar cuanto más pequeño sea el paso, más exacta y precisa será la aproximación ya que se trata de un aumento prácticamente instantáneo.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
[[Image:123456.jpg|500px|thumb|left|Comparativa de la función real con aproximaciones con diferentes pasos de discretización.]]&lt;br /&gt;
[[Image:Abbb.jpg|500px|thumb|center|Comparativa de la función real con aproximaciones con pasos de discretización más precisos.]]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== Método del Trapecio. ====&lt;br /&gt;
El método del trapecio se basa en aproximar una función integrando. Para ello utilizamos un número N de trapecios (en la imagen inferior hemos aproximado mediante 4 trapecios). Las integrales a resolver para poder poder aproximar una función por este método tendrán la distancia de sus límites de integración constantes para todas las integrales, a esta distancia entre los límites de integración lo llamamos paso. En el desarrollo de este método se supone que la función es continua en el intervalo en que se quiere aproximar.&lt;br /&gt;
&amp;lt;br/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Image:Trapecio.png|300px|thumb|center|Función Y(x), el área bajo la curva, se puede aproximar mediante n trapecios]]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
A continuación, vamos a resolver el problema mediante el método del trapecio con un paso de 0.05.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
{{matlab|codigo= &lt;br /&gt;
%Resolucion por Trapecio.&lt;br /&gt;
%Definimos las condiciones iniciales.&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=1;&lt;br /&gt;
&lt;br /&gt;
%Al tratarse del método de trapecio podemos usar un paso más grande.&lt;br /&gt;
h=0.05;&lt;br /&gt;
t=t0:h:tN;&lt;br /&gt;
N=(tN-t0)/h;&lt;br /&gt;
i=zeros(1,N+1);&lt;br /&gt;
i(1)=0;&lt;br /&gt;
&lt;br /&gt;
%Resolvemos la ecuación.&lt;br /&gt;
for n=1:N;&lt;br /&gt;
    i(n+1)=((200*h)/(2+25*h))+(i(n)*((2-25*h)/(2+25*h)));&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
%Dibujamos.&lt;br /&gt;
figure (1)&lt;br /&gt;
plot(t,i,'-r','linewidth',2)&lt;br /&gt;
xlabel('Tiempo')&lt;br /&gt;
ylabel('Intensidad(t)')&lt;br /&gt;
axis([0,1,-0.05,4.25])&lt;br /&gt;
&lt;br /&gt;
%Cambiamos los ejes del dibujo y añadimos líneas auxiliares para poder ver con mayor &lt;br /&gt;
%precisión el punto en el que la intensidad se hace constante.&lt;br /&gt;
figure (2)&lt;br /&gt;
plot(t,i,'-b','linewidth',2)&lt;br /&gt;
xlabel('Tiempo')&lt;br /&gt;
ylabel('Intensidad(t)')&lt;br /&gt;
axis([0,0.4,2,4.1])&lt;br /&gt;
grid on&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Image:Trapecio3a.jpg|450px|thumb|left|Resultado de la intensidad del circuito RL simple por el método del trapecio.]]&lt;br /&gt;
[[Image:Trapecio3a11.jpg|450px|thumb|center|Visualización del punto en que se hace constante la intensidad.]]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br/&amp;gt;&amp;lt;br/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
La representación de la función por el método del Trapecio nos permite utilizar un paso de discretización de 0.5 quedando como resultado una aproximación muy similar a la original (podemos observar ésto en la imagen de la izquierda).&lt;br /&gt;
Una ampliación de dicha aproximación nos permite ver con exactitud el punto en el cual la intensidad se hace constante,(0'25,4), es decir t=0'25 e i(t)=4.&lt;br /&gt;
&lt;br /&gt;
Además, si comparamos las gráficas obtenidas al aproximar la función por el método de Euler y del Trapecio con el mismo paso podemos afirmar que el método del Trapecio hace una aproximación más precisa que el método de Euler.&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Image:Trapecio3a.jpg|500px|thumb|left|Método del Trapecio (h=0.05).]]&lt;br /&gt;
[[Image:0.05.jpg|500px|thumb|center|Método de Euler (h=0'05) ]] &lt;br /&gt;
&lt;br /&gt;
&amp;lt;br/&amp;gt;&amp;lt;br/&amp;gt;&lt;br /&gt;
===== Efectos en la función al variar la constante del inductor. =====&lt;br /&gt;
La bobina es un elemento pasivo del circuito capaz de almacenar energía magnética.&lt;br /&gt;
&lt;br /&gt;
Una vez explicado la función del inductor (bobina) en el circuito, nos disponemos a estudiar las alteraciones producidas en la función cuando se disminuye o aumenta la constante del inductor, L. &lt;br /&gt;
&lt;br /&gt;
A continuación se muestran las gráficas resultantes al modificar dicho valor.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br/&amp;gt;&lt;br /&gt;
{{matlab|codigo= %Resolucion por Trapecio.&lt;br /&gt;
%Definimos las condiciones iniciales.&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=1;&lt;br /&gt;
h=0.05;&lt;br /&gt;
t=t0:h:tN;&lt;br /&gt;
N=(tN-t0)/h;&lt;br /&gt;
i=zeros(N+1);&lt;br /&gt;
i(1)=0;&lt;br /&gt;
&lt;br /&gt;
%Cambiamos la L y resolvemos su ecuación correspondiente.&lt;br /&gt;
L=3.2;&lt;br /&gt;
for n=1:N;&lt;br /&gt;
    i(n+1)=((40*h)/(2*L+5*h))+i(n)*((2*L-5*h)/(2*L+5*h));&lt;br /&gt;
end&lt;br /&gt;
figure (1)&lt;br /&gt;
plot(t,i,'-b','linewidth',2)&lt;br /&gt;
xlabel('Tiempo')&lt;br /&gt;
ylabel('Intensidad(t)')&lt;br /&gt;
title('L=3.2')&lt;br /&gt;
grid on&lt;br /&gt;
&lt;br /&gt;
%Cambiamos la L y resolvemos su ecuación correspondiente.&lt;br /&gt;
y=zeros(N+1);&lt;br /&gt;
y(1)=0;&lt;br /&gt;
L=0.8;&lt;br /&gt;
for m=1:N;&lt;br /&gt;
    y(m+1)=((40*h)/(2*L+5*h))+y(m)*((2*L-5*h)/(2*L+5*h));&lt;br /&gt;
end&lt;br /&gt;
figure (2)&lt;br /&gt;
plot(t,y,'-r','linewidth',2)&lt;br /&gt;
xlabel('Tiempo')&lt;br /&gt;
ylabel('Intensidad(t)')&lt;br /&gt;
title('L=0.8')&lt;br /&gt;
grid on&lt;br /&gt;
&lt;br /&gt;
%Cambiamos la L y resolvemos su ecuación correspondiente.&lt;br /&gt;
j=zeros(N+1);&lt;br /&gt;
j(1)=0;&lt;br /&gt;
L=0.05;&lt;br /&gt;
for o=1:N;&lt;br /&gt;
    j(o+1)=((40*h)/(2*L+5*h))+j(o)*((2*L-5*h)/(2*L+5*h));&lt;br /&gt;
end&lt;br /&gt;
figure (3)&lt;br /&gt;
plot(t,j,'-g','linewidth',2)&lt;br /&gt;
xlabel('Tiempo')&lt;br /&gt;
ylabel('Intensidad(t)')&lt;br /&gt;
title('L=0.05')&lt;br /&gt;
grid on&lt;br /&gt;
&lt;br /&gt;
%Cambiamos la L y resolvemos su ecuación correspondiente.&lt;br /&gt;
k=zeros(N+1);&lt;br /&gt;
k(1)=0;&lt;br /&gt;
L=0.0125;&lt;br /&gt;
for l=1:N;&lt;br /&gt;
    k(l+1)=((40*h)/(2*L+5*h))+k(l)*((2*L-5*h)/(2*L+5*h));&lt;br /&gt;
end&lt;br /&gt;
figure (4)&lt;br /&gt;
plot(t,k,'-c','linewidth',2)&lt;br /&gt;
xlabel('Tiempo')&lt;br /&gt;
ylabel('Intensidad(t)')&lt;br /&gt;
title('L=0.0125')&lt;br /&gt;
grid on&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br/&amp;gt;&lt;br /&gt;
*Como podemos observar a medida que incrementamos el valor de L, se acentúa la 'exponencialidad' de la función hasta llegar a aproximarse a una recta. A medida que aumenta el parecido a una recta, el tiempo de estabilización se extiende por ser la inductancia mayor, así como el valor de la intensidad cuando es constante.&lt;br /&gt;
*De igual forma al reducirlo, la subida de la intensidad hasta llegar a una cifra constante es mucho mayor, aumenta el periodo transitorio, pero de forma más moderada que en los casos anteriores y manteniendo la constancia en i(t)=4; sin embargo, la función deja de ser exponencial convirtiéndose en fluctuaciones de rectas que van reduciendo su volatilidad con el paso del tiempo.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br/&amp;gt;&lt;br /&gt;
[[Image:3.2.jpg|400px|thumb|left|L=3'2.]]&lt;br /&gt;
[[Image:0.8.jpg|400px|thumb|center|L=0'8.]]&lt;br /&gt;
&amp;lt;br/&amp;gt;&lt;br /&gt;
[[Image:0.0125.jpg|400px|thumb|left|L=0'0125.]]&lt;br /&gt;
[[Image:0.051.jpg|400px|thumb|center|L=0'5.]]&lt;br /&gt;
&amp;lt;br/&amp;gt;&amp;lt;br/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Leyes de Kirchhoff ==&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Circuito 2 completo.jpg|300px|thumb|left| Circuito RL de varias resistencias y bobinas ]]&lt;br /&gt;
&lt;br /&gt;
Según las  leyes de Kirchhoff, el sistema de ecuaciones diferenciales correspondiente al circuito 2 es el siguiente:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\left\{\begin{matrix}\ [1] E(t) = R_1\cdot i_1(t) + L_2\cdot \frac{d}{dt}\cdot i_2(t) + R_2\cdot i_2(t)\\ [2] E(t) = R_1\cdot i_1(t) + L_1\cdot \frac{d}{dt}\cdot i_3(t) + R_3\cdot i_3(t)\\ [3] i_1(t) = i_2(t) + i_3(t)\end{matrix}\right.&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''[1]'''Correspondiente al recorrido exterior del circuito.&amp;lt;br/&amp;gt;&lt;br /&gt;
'''[2]'''Correspondiente a la malla izquierda, (malla 1).&amp;lt;br/&amp;gt;&lt;br /&gt;
'''[3]'''Correspondiente al nudo de la parte superior del circuito(Ley de corrientes de Kirchhoff).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Sustituyendo la tercera ecuación en las otras dos, se obtiene el sistema en términos de i2(t) e i3(t) matricialmente::&amp;lt;math&amp;gt;\frac{d}{dt}\cdot \begin{pmatrix} i_2\\i_3 \end{pmatrix} = - \begin{pmatrix} \frac{R_1+R_2}{L_2}&amp;amp;\frac{R_1}{L_2} \\ \frac{R_1}{L_1}&amp;amp;\frac{R_1+R_3}{L_1}\end{pmatrix} \cdot \begin{pmatrix} i_2\\i_3 \end{pmatrix} + \begin{pmatrix} \frac{E}{L_2} \\ \frac{E}{L_1} \end{pmatrix}&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
A partir de las condiciones iniciales i2(0)=i3(0)=0 se puede interpretar que la corriente en el circuito es nula en el momento  en el cual se conecta el generador.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== Cálculo de las intensidades de un circuito con varias resistencias y bobinas a partir del Método de Euler y del Trapecio. ====&lt;br /&gt;
Ya se ha visto que la expresión de las intensidades i2 e i3 de este circuito RL vienen dadas por dos ecuaciones diferenciales que conforman un sistema. Este sistema de ecuaciones diferenciales se puede resolver numéricamente a partir del método de Euler y del trapecio, los cuales se basan en la aproximación de las áreas de esa ecuación diferencial al valor real de la función en cada momento.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Partiendo de unos datos iniciales iguales a:&lt;br /&gt;
&lt;br /&gt;
'''&amp;lt;math&amp;gt; R_1=R_2=6Ω &amp;lt;/math&amp;gt;''' , '''&amp;lt;math&amp;gt; R_3=3Ω &amp;lt;/math&amp;gt;''' , '''&amp;lt;math&amp;gt; L_1=0,3Hz &amp;lt;/math&amp;gt;''' , '''&amp;lt;math&amp;gt; L_2=0,11Hz &amp;lt;/math&amp;gt;''' y '''&amp;lt;math&amp;gt; E(t)=20 V &amp;lt;/math&amp;gt;'''&lt;br /&gt;
&lt;br /&gt;
 :&amp;lt;math&amp;gt;\frac{d}{dt}\cdot \begin{pmatrix} i_2\\i_3 \end{pmatrix} = - \begin{pmatrix} \frac{6+6}{0,11}&amp;amp;\frac{6}{0,11} \\ \frac{6}{0,3}&amp;amp;\frac{6+3}{0,3}\end{pmatrix} \cdot \begin{pmatrix} i_2\\i_3 \end{pmatrix} + \begin{pmatrix} \frac{20}{0,11} \\ \frac{20}{0,3} \end{pmatrix}&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
Resolvemos las ecuaciones diferenciales:&lt;br /&gt;
&lt;br /&gt;
* ''' MÉTODO DE EULER: '''&lt;br /&gt;
'''OCTAVE'''&lt;br /&gt;
{{matlab|codigo= &lt;br /&gt;
DATOS:&lt;br /&gt;
&lt;br /&gt;
clc;clear all;&lt;br /&gt;
    %t0=tiempo inicial&lt;br /&gt;
t0=0;&lt;br /&gt;
    %tN=tiempo máximo a evaluar&lt;br /&gt;
tN=0.04;&lt;br /&gt;
    %soluciones en y0 para las variables i2 e i3&lt;br /&gt;
y0=0;&lt;br /&gt;
    %N=intervalos en los que se dividen&lt;br /&gt;
N=25;&lt;br /&gt;
    %h=salto de intervalo en intervalo&lt;br /&gt;
h=(tN-t0)/N;&lt;br /&gt;
    %i1,i2,i3=vectores solución desde t0 a tN de h en h&lt;br /&gt;
i1=t0:h:tN;&lt;br /&gt;
&lt;br /&gt;
i2=t0:h:tN;&lt;br /&gt;
&lt;br /&gt;
i3=t0:h:tN;&lt;br /&gt;
&lt;br /&gt;
    %y=vector de ceros y que va a almacenar las soluciones.Tendrá N+1 términos porque el primero es el cero y el ultimo el N&lt;br /&gt;
    %la intensidad dos es y(:,1),es decir, la fila 1.&lt;br /&gt;
    %la intensidad tres es y(:,2),es decir, la fila 2.&lt;br /&gt;
    %la intensidad uno es y(:,3),es decir, la fila 3.&lt;br /&gt;
y=zeros(N+1,3);&lt;br /&gt;
y(1,1)=y0;&lt;br /&gt;
y(1,2)=y0;&lt;br /&gt;
y(1,3)=y0;&lt;br /&gt;
%AHORA SE EMPIEZA A RESOLVER POR EULER EL SISTEMA.&lt;br /&gt;
%y(n+1)=y(n)+h*f(t(n),y(n))&lt;br /&gt;
%f(t,i2)=((E/L2)-R1*(i2+i3)+R2*i2)/L2&lt;br /&gt;
%f(t,i3)=((E/L1)-R1*(i2+i3)+R3*i3)/L1&lt;br /&gt;
for n=1:N&lt;br /&gt;
    y(n+1,1)=y(n,1)+h*((20/0.11)-(6*(y(n,1)+y(n,2))+6*y(n,1))/0.11);&lt;br /&gt;
    y(n+1,2)=y(n,2)+h*((20/0.3)-(6*(y(n,1)+y(n,2))+3*y(n,2))/0.3);&lt;br /&gt;
    y(n+1,3)=y(n+1,1)+y(n+1,2);&lt;br /&gt;
end&lt;br /&gt;
hold on&lt;br /&gt;
plot(i1,y(:,3),'+')&lt;br /&gt;
plot(i2,y(:,1),'r+')&lt;br /&gt;
plot(i3,y(:,2),'g+')&lt;br /&gt;
xlabel('Tiempo');&lt;br /&gt;
ylabel('Intensidad(t)');&lt;br /&gt;
legend('i1', 'i2', 'i3');&lt;br /&gt;
grid on&lt;br /&gt;
}}&lt;br /&gt;
* ''' MÉTODO DEL TRAPECIO: '''&lt;br /&gt;
'''OCTAVE'''&lt;br /&gt;
{{matlab|codigo= &lt;br /&gt;
DATOS:&lt;br /&gt;
clc;clear all;&lt;br /&gt;
    %tiempo inicial&lt;br /&gt;
t0=0;&lt;br /&gt;
    %tiempo máximo a evaluar&lt;br /&gt;
tN=0.04;&lt;br /&gt;
    %soluciones en y0 para las variables i2 e i3&lt;br /&gt;
y0=0;&lt;br /&gt;
    %intervalos en los que se dividen&lt;br /&gt;
N=25;&lt;br /&gt;
	%salto de intervalo en intervalo&lt;br /&gt;
h=(tN-t0)/N;&lt;br /&gt;
    %vectores solución desde t0 a tN de h en h&lt;br /&gt;
i1=t0:h:tN;&lt;br /&gt;
i2=t0:h:tN;&lt;br /&gt;
i3=t0:h:tN;&lt;br /&gt;
    %vector de ceros y que va a almacenar las soluciones&lt;br /&gt;
    %tendra N+1 términos porque el primero es el cero y el ultimo el N&lt;br /&gt;
    %la intensidad dos es y(:,1)&lt;br /&gt;
    %la intensidad tres es y(:,2)&lt;br /&gt;
    %la intensidad uno es y(:,3)&lt;br /&gt;
y=zeros(N+1,3);&lt;br /&gt;
y(1,1)=y0;&lt;br /&gt;
y(1,2)=y0;&lt;br /&gt;
y(1,3)=y0;&lt;br /&gt;
PARA RESOLVER POR EL MÉTODO DEL TRAPECIO:&lt;br /&gt;
%y(n+1)=y(n)+(h/2)*(f(t(n),y(n)+f(t(n+1),y(n+1))&lt;br /&gt;
%f(t,i2)=((E/L2)-R1*(i2+i3)+R2*i2)/L2&lt;br /&gt;
%f(t,i3)=((E/L1)-R1*(i2+i3)+R3*i3)/L1&lt;br /&gt;
for n=1:N&lt;br /&gt;
    y(n+1,1)=y(n,1)+(h/2)*(((20/0.11)-(6*(y(n,1)+y(n,2))+6*y(n,1))/0.11)+((20/0.11)-(6*(y(n+1,1)+y(n+1,2))+6*y(n+1,1))/0.11));&lt;br /&gt;
    y(n+1,2)=y(n,2)+(h/2)*(((20/0.3)-(6*(y(n,1)+y(n,2))+3*y(n,2))/0.3)+((20/0.3)-(6*(y(n+1,1)+y(n+1,2))+3*y(n+1,2))/0.3));  &lt;br /&gt;
    y(n+1,3)=y(n+1,1)+y(n+1,2);&lt;br /&gt;
end&lt;br /&gt;
plot(i1,y(:,3))&lt;br /&gt;
plot(i2,y(:,1),'r')&lt;br /&gt;
plot(i3,y(:,2),'g')&lt;br /&gt;
xlabel('Tiempo');&lt;br /&gt;
ylabel('Intensidad(t)');&lt;br /&gt;
hold off&lt;br /&gt;
}}&lt;br /&gt;
&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
[[Archivo:Resoct.png|800px|thumb|centre|Gráfica del resultado del Método de Euler y Trapecio en el cálculo de las intensidades.]]&lt;br /&gt;
&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''En el resultado de la gráfica, lo obtenido con el método de Euler se representa con los símbolos &amp;quot;+&amp;quot;, mientras que la línea continua corresponde al Método del Trapecio. Como se puede apreciar, ambos métodos dan resultados similares y muy próximos. En la interpretación de los resultados, diríamos que se trata de corrientes muy estables.'''&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
====Variación de las intensidades de un circuito RL cuando se altera el valor de una de las resistencias.====&lt;br /&gt;
Ahora vamos a analizar como afecta la variación del módulo de una resistencia (se incrementa, '''&amp;lt;math&amp;gt; R_3=3Ω &amp;lt;/math&amp;gt;''' pasa a valer '''&amp;lt;math&amp;gt; R_3=9Ω &amp;lt;/math&amp;gt;''') en las intensidades del circuito.&lt;br /&gt;
Nuestro análisis se realizará sustituyendo el nuevo valor en el mismo sistema, y se resolverá por el método de Euler y Trapecio comparando en una gráfica los resultados con los obtenidos anteriormente.&lt;br /&gt;
&lt;br /&gt;
* ''' MÉTODO DE EULER: '''&lt;br /&gt;
'''OCTAVE'''&lt;br /&gt;
{{matlab|codigo= &lt;br /&gt;
%DATOS:&lt;br /&gt;
clc;clear all;&lt;br /&gt;
    %tiempo inicial&lt;br /&gt;
t0=0;&lt;br /&gt;
    %tiempo máximo a evaluar&lt;br /&gt;
tN=0.04;&lt;br /&gt;
    %soluciones en y0 para las variables i2 e i3&lt;br /&gt;
y0=0;&lt;br /&gt;
    %intervalos en los que se dividen&lt;br /&gt;
N=25;&lt;br /&gt;
	%salto de intervalo en intervalo&lt;br /&gt;
h=(tN-t0)/N;&lt;br /&gt;
    %vectores solución desde t0 a tN de h en h&lt;br /&gt;
i1=t0:h:tN;&lt;br /&gt;
i2=t0:h:tN;&lt;br /&gt;
i3=t0:h:tN;&lt;br /&gt;
    %vector de ceros y que va a almacenar las soluciones&lt;br /&gt;
    %tendra N+1 términos porque el primero es el cero y el ultimo el N&lt;br /&gt;
    %la intensidad dos es y(:,1)&lt;br /&gt;
    %la intensidad tres es y(:,2)&lt;br /&gt;
    %la intensidad uno es y(:,3)&lt;br /&gt;
y=zeros(N+1,3);&lt;br /&gt;
y(1,1)=y0;&lt;br /&gt;
y(1,2)=y0;&lt;br /&gt;
y(1,3)=y0;&lt;br /&gt;
%PARA RESOLVER POR EULER EL SISTEMA:&lt;br /&gt;
%y(n+1)=y(n)+h*f(t(n),y(n))&lt;br /&gt;
%f(t,i2)=((E/L2)-R1*(i2+i3)+R2*i2)/L2&lt;br /&gt;
%f(t,i3)=((E/L1)-R1*(i2+i3)+R3*i3)/L1&lt;br /&gt;
for n=1:N&lt;br /&gt;
    y(n+1,1)=y(n,1)+h*((20/0.11)-(6*(y(n,1)+y(n,2))+6*y(n,1))/0.11);&lt;br /&gt;
    y(n+1,2)=y(n,2)+h*((20/0.3)-(6*(y(n,1)+y(n,2))+9*y(n,2))/0.3);&lt;br /&gt;
    y(n+1,3)=y(n+1,1)+y(n+1,2);&lt;br /&gt;
end&lt;br /&gt;
hold on&lt;br /&gt;
plot(i1,y(:,3),'c+')&lt;br /&gt;
plot(i2,y(:,1),'m+')&lt;br /&gt;
plot(i3,y(:,2),'k+')&lt;br /&gt;
}}&lt;br /&gt;
* ''' MÉTODO DEL TRAPECIO: '''&lt;br /&gt;
'''OCTAVE'''&lt;br /&gt;
{{matlab|codigo= &lt;br /&gt;
%DATOS:&lt;br /&gt;
clc;clear all;&lt;br /&gt;
    %tiempo inicial&lt;br /&gt;
t0=0;&lt;br /&gt;
    %tiempo máximo a evaluar&lt;br /&gt;
tN=0.04;&lt;br /&gt;
    %soluciones en y0 para las variables i2 e i3&lt;br /&gt;
y0=0;&lt;br /&gt;
    %intervalos en los que se dividen&lt;br /&gt;
N=25;&lt;br /&gt;
	%salto de intervalo en intervalo&lt;br /&gt;
h=(tN-t0)/N;&lt;br /&gt;
    %vectores solución desde t0 a tN de h en h&lt;br /&gt;
i1=t0:h:tN;&lt;br /&gt;
i2=t0:h:tN;&lt;br /&gt;
i3=t0:h:tN;&lt;br /&gt;
    %vector de ceros y que va a almacenar las soluciones&lt;br /&gt;
    %tendra N+1 términos porque el primero es el cero y el ultimo el N&lt;br /&gt;
    %la intensidad dos es y(:,1)&lt;br /&gt;
    %la intensidad tres es y(:,2)&lt;br /&gt;
    %la intensidad uno es y(:,3)&lt;br /&gt;
y=zeros(N+1,3);&lt;br /&gt;
y(1,1)=y0;&lt;br /&gt;
y(1,2)=y0;&lt;br /&gt;
y(1,3)=y0;&lt;br /&gt;
%PARA RESOLVER POR EL MÉTODO DEL TRAPECIO:&lt;br /&gt;
%y(n+1)=y(n)+(h/2)*(f(t(n),y(n)+f(t(n+1),y(n+1))&lt;br /&gt;
%f(t,i2)=((E/L2)-R1*(i2+i3)+R2*i2)/L2&lt;br /&gt;
%f(t,i3)=((E/L1)-R1*(i2+i3)+R3*i3)/L1&lt;br /&gt;
for n=1:N&lt;br /&gt;
    y(n+1,1)=y(n,1)+(h/2)*(((20/0.11)-(6*(y(n,1)+y(n,2))+6*y(n,1))/0.11)+((20/0.11)-(6*(y(n+1,1)+y(n+1,2))+6*y(n+1,1))/0.11));&lt;br /&gt;
    y(n+1,2)=y(n,2)+(h/2)*(((20/0.3)-(6*(y(n,1)+y(n,2))+9*y(n,2))/0.3)+((20/0.3)-(6*(y(n+1,1)+y(n+1,2))+9*y(n+1,2))/0.3));  &lt;br /&gt;
    y(n+1,3)=y(n+1,1)+y(n+1,2);&lt;br /&gt;
end&lt;br /&gt;
plot(i1,y(:,3),'c')&lt;br /&gt;
plot(i2,y(:,1),'m')&lt;br /&gt;
plot(i3,y(:,2),'k')&lt;br /&gt;
hold off&lt;br /&gt;
}}&lt;br /&gt;
[[Image:Resultado.png|500px|thumb|left|Gráfica de la intensidad del circuito RL compuesto tras incrementar una de sus resistencias ]]&lt;br /&gt;
[[Archivo:Resoct.png|500px|thumb|right|Gráfica del resultado del Método de Euler y Trapecio en el cálculo de las intensidades sin incrementar.]]&lt;br /&gt;
[[Image:Grafica comparativa 5y6 (1).jpg|1400px|thumb|centre|Gráfica comparativa de las intensidades de un circuito RL intensidades incrementadas y sin incrementar. ]]&lt;br /&gt;
'''De nuevo, las cruces + corresponderían a lo obtenido por el método de Euler y la línea continua al Método del trapecio. En la gráfica superpuesta se observa el resultado final de la comparativa: frente a resistencias menores las intensidades resultan mayores, y viceversa. Esto se justifica gracias a la Ley de Ohm que establece '''&amp;lt;math&amp;gt; V=I*R&amp;lt;/math&amp;gt;''' de manera que la intensidad y resistencia son inversamente proporcionales, y si una se incrementa, la otra decrece: '''&amp;lt;math&amp;gt; I=V/R&amp;lt;/math&amp;gt;''', '''&amp;lt;math&amp;gt; R=V/I&amp;lt;/math&amp;gt;'''. '''&lt;br /&gt;
&lt;br /&gt;
== Resolución de un problema de valor inicial en otro punto ==&lt;br /&gt;
==== Cálculo de las intensidades en un punto (el inicial) a partir de un valor inicial en un punto distinto al origen. ====&lt;br /&gt;
&lt;br /&gt;
Esta vez vamos a calcular el valor concreto de un punto de una función, que hemos definido tras resolver una ecuación diferencial. Nuestra función será la que define las intensidades de un circuito RL compuesto. En la resolución de la ecuación diferencial que relaciona las derivadas con la función, procederemos de nuevo tratándolo como un problema de valor inicial; a pesar de que no sea un valor en el punto de origen el que tengamos por dato, sino un valor de '''&amp;lt;math&amp;gt; i_2 &amp;lt;/math&amp;gt;''' e '''&amp;lt;math&amp;gt; i_3 &amp;lt;/math&amp;gt;''' en el tiempo '''&amp;lt;math&amp;gt; t=0,02  &amp;lt;/math&amp;gt;'''. Serán precisamente estos valores en el origen los que calculemos. De nuevo, utilizaremos el segundo circuito expuesto en este artículo (sin incrementar resistencias):&lt;br /&gt;
[[Archivo:Circuito 2 completo.jpg|300px|thumb|left|Circuito RL compuesto ]]&lt;br /&gt;
&lt;br /&gt;
 :&amp;lt;math&amp;gt;\frac{d}{dt}\cdot \begin{pmatrix} i_2\\i_3 \end{pmatrix} = - \begin{pmatrix} \frac{6+6}{0,11}&amp;amp;\frac{6}{0,11} \\ \frac{6}{0,3}&amp;amp;\frac{6+3}{0,3}\end{pmatrix} \cdot \begin{pmatrix} i_2\\i_3 \end{pmatrix} + \begin{pmatrix} \frac{20}{0,11} \\ \frac{20}{0,3} \end{pmatrix}&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''&amp;lt;math&amp;gt; R_1=R_2=6Ω &amp;lt;/math&amp;gt;''' , '''&amp;lt;math&amp;gt; R_3=3Ω &amp;lt;/math&amp;gt;''' , '''&amp;lt;math&amp;gt; L_1=0,3Hz &amp;lt;/math&amp;gt;''' , '''&amp;lt;math&amp;gt; L_2=0,11Hz &amp;lt;/math&amp;gt;''' y '''&amp;lt;math&amp;gt; E(t)=20 V &amp;lt;/math&amp;gt;'''.&lt;br /&gt;
&lt;br /&gt;
Nuestros valores iniciales '''&amp;lt;math&amp;gt; i_2(0,02)=i_3(0,02)=1A &amp;lt;/math&amp;gt;'''&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Buscamos '''&amp;lt;math&amp;gt; i_1(t),i_2(t),i_3(t) &amp;lt;/math&amp;gt;'''.&lt;br /&gt;
&lt;br /&gt;
Resolvemos por el método de Euler:&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo= &lt;br /&gt;
%DATOS:&lt;br /&gt;
clc;clear all;&lt;br /&gt;
    %tiempo inicial&lt;br /&gt;
t0=0.02;&lt;br /&gt;
    %tiempo a evaluar&lt;br /&gt;
tN=0;&lt;br /&gt;
    %soluciones en y0.02 para las variables i2 e i3&lt;br /&gt;
y02=1;&lt;br /&gt;
    %&lt;br /&gt;
N=100000;&lt;br /&gt;
	%salto de intervalo en intervalo&lt;br /&gt;
h=(tN-t0)/N;&lt;br /&gt;
    %vectores solución desde t0 a tN de h en h&lt;br /&gt;
i1=t0:h:tN;&lt;br /&gt;
i2=t0:h:tN;&lt;br /&gt;
i3=t0:h:tN;&lt;br /&gt;
    %vector de ceros y que va a almacenar las soluciones&lt;br /&gt;
    %tendra N+1 términos porque el primero es el cero y el ultimo el N&lt;br /&gt;
    %la intensidad dos es y(:,1)&lt;br /&gt;
    %la intensidad tres es y(:,2)&lt;br /&gt;
    %la intensidad uno es y(:,3)&lt;br /&gt;
y=zeros(N+1,3);&lt;br /&gt;
y(1,1)=y02;&lt;br /&gt;
y(1,2)=y02;&lt;br /&gt;
y(1,3)=2;&lt;br /&gt;
%RESOLVEMOS POR EULER EL SISTEMA:&lt;br /&gt;
%y(n+1)=y(n)+h*f(t(n),y(n))&lt;br /&gt;
%f(t,i2)=((E/L2)-R1*(i2+i3)+R2*i2)/L2&lt;br /&gt;
%f(t,i3)=((E/L1)-R1*(i2+i3)+R3*i3)/L1&lt;br /&gt;
for n=1:N&lt;br /&gt;
    y(n+1,1)=y(n,1)+h*((20/0.11)-(6*(y(n,1)+y(n,2))+6*y(n,1))/0.11);&lt;br /&gt;
    y(n+1,2)=y(n,2)+h*((20/0.3)-(6*(y(n,1)+y(n,2))+3*y(n,2))/0.3);&lt;br /&gt;
    y(n+1,3)=y(n+1,1)+y(n+1,2);&lt;br /&gt;
end&lt;br /&gt;
intensidad1=y(N+1,3)&lt;br /&gt;
intensidad2=y(N+1,1)&lt;br /&gt;
intensidad3=y(N+1,2)&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
'''Los resultados obtenidos:'''&lt;br /&gt;
[[Archivo:Intens.png|600px|thumb|centre|Valores de las intensidades para t=0]]&lt;br /&gt;
&lt;br /&gt;
Así se prueba la eficacia de estas aproximaciones numéricas no sólo al trazar gráficas, sino también para dar valores concretos de la función en los puntos que se quiera.&lt;br /&gt;
&lt;br /&gt;
[[Categoría:Ecuaciones Diferentiales]]&lt;br /&gt;
[[Categoría:ED13/14]]&lt;br /&gt;
[[Categoría:Trabajos 2013-14]]&lt;/div&gt;</summary>
		<author><name>Lucia Lopez</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Archivo:Euler.png&amp;diff=10151</id>
		<title>Archivo:Euler.png</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Archivo:Euler.png&amp;diff=10151"/>
				<updated>2014-03-05T00:58:56Z</updated>
		
		<summary type="html">&lt;p&gt;Lucia Lopez: metodo de euler&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;metodo de euler&lt;/div&gt;</summary>
		<author><name>Lucia Lopez</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Circuitos_RL_(grupo_B)&amp;diff=10148</id>
		<title>Circuitos RL (grupo B)</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Circuitos_RL_(grupo_B)&amp;diff=10148"/>
				<updated>2014-03-05T00:57:46Z</updated>
		
		<summary type="html">&lt;p&gt;Lucia Lopez: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{ TrabajoED | Circuitos RL. Grupo 2-B | [[:Categoría:Ecuaciones Diferenciales|Ecuaciones Diferenciales]]|[[:Categoría:ED13/14|Curso 2013-14]] | Diego Solano López,Lucia López Sánchez,Adela González Barbado,Araceli Martín Candilejo,Ignacio Díaz Caneja Camblor,Alberto Fernández Pérez }}&lt;br /&gt;
&lt;br /&gt;
El circuito eléctrico mas simple esta compuesto de una resistencia, un inductor o bobina y una fuente de alimentación.&lt;br /&gt;
* En una resistencia R, la Ley de Ohm establece:&lt;br /&gt;
&lt;br /&gt;
  &amp;lt;math&amp;gt;i(t)={V(t)\over R}&amp;lt;/math&amp;gt;&lt;br /&gt;
* En un inductor L la Ley de Faraday dice:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; V(t)=L\cdot i'(t)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
Las leyes de Kirchhoff establecen el comportamiento de los circuitos:&lt;br /&gt;
# '''Ley de corriente:''' en cada nudo la suma de corrientes que entra coincide con la suma de corrientes que sale.&lt;br /&gt;
# '''Ley de tensiones:''' en cada ciclo cerrado, la suma de las diferencias de potencial eléctrico es nula.&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Segunda ley de Kirchhoff ==&lt;br /&gt;
==== Ecuación diferencial-Resolución y representación analítica.====&lt;br /&gt;
Basándonos en la segunda ley de Kirchhoff sobre el circuito que observamos en la imagen, podemos trabajar con la siguiente ecuación diferencial.&lt;br /&gt;
&lt;br /&gt;
Esta vez vamos a obtener la solución del valor concreto de un punto de una función hallada a partir de una ecuación diferencial. Será así de nuevo el caso de una ecuación diferencial que define las relaciones entre las corrientes y sus derivadas en un circuito RL de varias resistencias y bobinas. Volveremos a utilizar el segundo circuito mostrado en este artículo:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;math&amp;gt; i'(t)+{R\over L}i(t)-{V(t)\over L}=0 &amp;lt;/math&amp;gt; [[Image:cicuito1.jpg|300px|thumb|right|Circuito RL simple ]]&lt;br /&gt;
&lt;br /&gt;
Al suponer que en el instante t=0 el circuito está abierto, podemos establecer para el problema de Cauchy el valor inicial '''&amp;lt;math&amp;gt; i_0(t)=0 &amp;lt;/math&amp;gt;'''. Considerando que la alimentación posee un voltaje constante '''V(t)=20V, L=0.2 y R=5Ω''', llegamos al problema:&lt;br /&gt;
&lt;br /&gt;
                              &amp;lt;math&amp;gt;\left\{\begin{matrix}\ i'(t)+{25}i(t)-{100}=0 \\i(0)=0\end{matrix}\right.&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
La resolución de éste mediante &amp;lt;math&amp;gt;i \cdot e^{\int{\frac{R}{L}dt}} = \int{e^{\frac{R \cdot t}{L}}dt} \hspace{0.5cm} \rightarrow \hspace{0.5cm} &amp;lt;/math&amp;gt; &lt;br /&gt;
&amp;lt;math&amp;gt;i \cdot e^{\frac{R \cdot t}{L}} = \frac{V}{R}e^{\frac{R \cdot t}{L}}+C&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt; nos da:&lt;br /&gt;
 &amp;lt;math&amp;gt; i(t)=4-4e^{-25t} &amp;lt;/math&amp;gt;&lt;br /&gt;
La gráfica de la función nos muestra la evolución de la intensidad. En ella se puede apreciar una rápida subida en los primeros instantes que se ralentiza hasta llegar a ser prácticamente constante con un valor de 4. Por lo que podemos afirmar que la intensidad se estabiliza en un corto periodo de tiempo.&lt;br /&gt;
[[Image:Funcion.jpg|500px|thumb|center|Gráfica de la intensidad en un circuito RL simple ]]&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo= &lt;br /&gt;
fplot('4-4*exp(-25*t)',[0,0.5,0,5]);&lt;br /&gt;
xlabel('Tiempo')&lt;br /&gt;
ylabel('Intensidad(t)')&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
==== Método de Euler. ====&lt;br /&gt;
Este método parte de la posibilidad de aproximar una función original mediante rectas tangentes partiendo de un punto dado. Sabiendo que la recta tangente de una función en un punto es su derivada en dicho punto, este método consiste en calcular derivadas de la función en diferentes puntos pertenecientes a dicha función. Estos puntos serán tomados con la misma frecuencia a lo largo de la recta, a esta frecuencia la denominamos paso. &lt;br /&gt;
&lt;br /&gt;
A continuación, vamos a calcular la función por el método de Euler, resolviendo la ecuación con diferentes pasos. De esta forma, podremos observar y analizar los distintos resultados obtenidos al modificar los pasos, hasta que lleguemos a una conclusión evidente. Además calcularemos el error cometido por la aproximación del método para ser más precios en nuestras observaciones.&lt;br /&gt;
&lt;br /&gt;
Comenzamos a analizar este método elaborando un programa con un paso de 0.01, que podemos visualizar a continuación.&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo= &lt;br /&gt;
%Definimos las condiciones iniciales.&lt;br /&gt;
clear all&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=1;&lt;br /&gt;
&lt;br /&gt;
%Establecemos un paso h=0'01.&lt;br /&gt;
h=0.01;&lt;br /&gt;
t=t0:h:tN;&lt;br /&gt;
N=(tN-t0)/h;&lt;br /&gt;
&lt;br /&gt;
%Resolvemos la ecuación.&lt;br /&gt;
ii=0;&lt;br /&gt;
i(1)=ii;&lt;br /&gt;
for n=1:N;&lt;br /&gt;
  ii=ii+h*(100-25*ii);&lt;br /&gt;
  i(n+1)=ii;&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
%Dibujamos la gráfica.&lt;br /&gt;
figure(1)&lt;br /&gt;
plot(t,i,'-g','linewidth',2);&lt;br /&gt;
xlabel('Tiempo');&lt;br /&gt;
ylabel('Intensidad(t)');&lt;br /&gt;
axis([-0.1,1,0,5])&lt;br /&gt;
&lt;br /&gt;
%Calculo error y lo dibujamos.&lt;br /&gt;
r=4-4*exp(-25*t);&lt;br /&gt;
error=abs(r-i);&lt;br /&gt;
figure(2)&lt;br /&gt;
plot(t,error,'-r','linewidth',2)&lt;br /&gt;
xlabel('Tiempo');&lt;br /&gt;
ylabel('Error');&lt;br /&gt;
axis([-0.1,1,-0.05,0.25])&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
Un paso de discretización de 0'01 proporciona un error muy pequeño, lo que aporta una aproximación de la función muy similar a la real, como podemos observar en la primera figura. Analizando el error que nos ofrece dicha aproximación (imagen de la derecha),su valor no supera el 0'2, por tanto, podemos afirmar analíticamente la exactitud de la aproximación. Además, podemos observar que el error se anula al llegar a t=0'25, momento en el que coincide la función aproximada por Euler con la función real. &lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Image:0.01.jpg|500px|thumb|left|Resultado de la intensidad del circuito RL simple por el método de Euler para h=0'01]] [[Image:error0.01.jpg|500px|thumb|center|Gráfica del error cometido en el cálculo de la intensidad por el método de Euler para h=0'01 ]]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br/&amp;gt; &amp;lt;br/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Una vez analizado el resultado anterior, resolvemos el problema con un paso mayor.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
{{matlab|codigo= %Resolucion por Euler&lt;br /&gt;
%Definimos las condiciones iniciales.&lt;br /&gt;
clear all&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=1;&lt;br /&gt;
&lt;br /&gt;
%Probamos con un paso de discretización mayor, h=0'05.&lt;br /&gt;
h=0.05;&lt;br /&gt;
t=t0:h:tN;&lt;br /&gt;
N=(tN-t0)/h;&lt;br /&gt;
&lt;br /&gt;
%Resolvemos la ecuación.&lt;br /&gt;
ii=0;&lt;br /&gt;
i(1)=ii;&lt;br /&gt;
for n=1:N;&lt;br /&gt;
  ii=ii+h*(100-25*ii);&lt;br /&gt;
  i(n+1)=ii;&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
%Creamos el dibujo.&lt;br /&gt;
figure(1)&lt;br /&gt;
plot(t,i,'-g','linewidth',2);&lt;br /&gt;
xlabel('Tiempo');&lt;br /&gt;
ylabel('Intensidad(t)');&lt;br /&gt;
axis([-0.1,1,0,5.1])&lt;br /&gt;
&lt;br /&gt;
%Calculo error y dibujamos.&lt;br /&gt;
r=4-4*exp(-25*t);&lt;br /&gt;
error=abs(r-i);&lt;br /&gt;
figure(2)&lt;br /&gt;
plot(t,error,'-r','linewidth',2)&lt;br /&gt;
axis([-0.1,1,-0.05,2.25])&lt;br /&gt;
xlabel('Tiempo');&lt;br /&gt;
ylabel('Error');&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br/&amp;gt;&lt;br /&gt;
Podemos observar que al aumentar el paso de discretización a 0'05 la aproximación de la curva se ha convertido en una combinación de rectas que asemejan la evolución de la intensidad, ya que sigue manteniendo una rápida subida inicial.  A pesar de ello, el error ha aumentado su valor en un 1000% en el periodo transitorio, pero vuelve a anularse en el permanente ya que a partir del punto de estabilización los valores aproximados coincide con los reales.El cambio producido en el incremento inicial de la intensidad se debe a la brevedad de éste, por lo que resulta poco preciso trabajar con pasos mayores.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
[[Image:0.05.jpg|500px|thumb|left|Resultado de la intensidad del circuito RL simple por el método de Euler para h=0'05 ]] [[Image:error0.05.jpg|500px|thumb|center| Gráfica del error cometido en el cálculo de la intensidad por el método de Euler para h=0'05]]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br/&amp;gt; &amp;lt;br/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Para estar más seguro de la afirmación hecha hace unos instantes, en la que hemos asegurado que es poco preciso trabajar con pasos mayores vamos a resolver y comparar en la misma gráfica el problema resuelto con distintos valores para la h, el paso.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br/&amp;gt;&lt;br /&gt;
{{matlab|codigo= &lt;br /&gt;
%Comparamos las gráficas con diferentes pasos y la función real.&lt;br /&gt;
clear all&lt;br /&gt;
&lt;br /&gt;
%Guardamos el valor para cada paso.&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=1;&lt;br /&gt;
h1=0.05;&lt;br /&gt;
t1=t0:h1:tN;&lt;br /&gt;
N1=(tN-t0)/h1;&lt;br /&gt;
h2=0.01;&lt;br /&gt;
t2=t0:h2:tN;&lt;br /&gt;
N2=(tN-t0)/h2;&lt;br /&gt;
h3=0.075;&lt;br /&gt;
t3=t0:h3:tN;&lt;br /&gt;
N3=(tN-t0)/h3;&lt;br /&gt;
&lt;br /&gt;
%Creamos un bucle para cada h y resolver las cuatro ecuaciones.&lt;br /&gt;
ii=0;&lt;br /&gt;
i(1)=ii;&lt;br /&gt;
for n=1:N1;&lt;br /&gt;
  ii=ii+h1*(100-25*ii);&lt;br /&gt;
  i(n+1)=ii;&lt;br /&gt;
end&lt;br /&gt;
yy=0;&lt;br /&gt;
y(1)=yy;&lt;br /&gt;
for m=1:N2;&lt;br /&gt;
  yy=yy+h2*(100-25*yy);&lt;br /&gt;
  y(m+1)=yy;&lt;br /&gt;
end&lt;br /&gt;
jj=0;&lt;br /&gt;
j(1)=jj;&lt;br /&gt;
for m=1:N3;&lt;br /&gt;
  jj=jj+h3*(100-25*jj);&lt;br /&gt;
  j(m+1)=jj;&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
%Hacemos el dibujo con todas las gráficas a la vez para hacer una comparación global de estas y la función real.&lt;br /&gt;
hold on &lt;br /&gt;
fplot('4-4*exp(-25*t2)',[0,1,0,5],'r');&lt;br /&gt;
plot(t1,i,'-b','linewidth',1);&lt;br /&gt;
plot(t2,y,'-y','linewidth',1);&lt;br /&gt;
plot(t3,j,'-g','linewidth',1);&lt;br /&gt;
legend('Función real','h=0.05', 'h=0.01', 'h=0.075');&lt;br /&gt;
title('Comparativa');&lt;br /&gt;
xlabel('Tiempo');&lt;br /&gt;
ylabel('Intensidad(t)');&lt;br /&gt;
axis([-0.1,1,-0.05,8])&lt;br /&gt;
hold off&lt;br /&gt;
&lt;br /&gt;
%Quitamos el paso mayor para ver con mayor exactitud como se difieren las aproximaciones más correctas.&lt;br /&gt;
figure (2)&lt;br /&gt;
hold on &lt;br /&gt;
fplot('4-4*exp(-25*t2)',[0,1,0,5],'r');&lt;br /&gt;
plot(t1,i,'-b','linewidth',1);&lt;br /&gt;
plot(t2,y,'-g','linewidth',1);&lt;br /&gt;
legend('Función real','h=0.05', 'h=0.01');&lt;br /&gt;
title('Comparativa');&lt;br /&gt;
xlabel('Tiempo');&lt;br /&gt;
ylabel('Intensidad(t)');&lt;br /&gt;
axis([0,0.5,-0.05,5])&lt;br /&gt;
hold off&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
Al ensayar con diferentes pasos de discretización vemos como la aproximación de la gráfica se va degenerando, hasta el punto en el que si se sobrepasa 0'05, la volatilidad de las oscilaciones llega a ser tal que la intensidad tarda un periodo sensiblemente mayor en estabilizarse y el error no se anula, ya que los valores son muy lejanos a los reales. Como la subida de intensidad se produce muy rápidamente, una h≥0'05 es, como podemos ver la imagen de la izquierda, muy poco precisa. Si se mantiene en el intervalo [0'02,0'05] se elimina la forma exponencial de la función (aparecen en su lugar fluctuaciones rectilíneas) pero se sigue reflejando la evolución de la intensidad hasta que se vuelve constante. Con un paso de 0'01, se consigue una gráfica exponencial con valores ligeramente superiores a los reales, por tanto podemos afirmar cuanto más pequeño sea el paso, más exacta y precisa será la aproximación ya que se trata de un aumento prácticamente instantáneo.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
[[Image:123456.jpg|500px|thumb|left|Comparativa de la función real con aproximaciones con diferentes pasos de discretización.]]&lt;br /&gt;
[[Image:Abbb.jpg|500px|thumb|center|Comparativa de la función real con aproximaciones con pasos de discretización más precisos.]]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== Método del Trapecio. ====&lt;br /&gt;
El método del trapecio se basa en aproximar una función imtegrando. Para ello utilizamos un número N de trapecios (en la imagen inferior hemos aproximado mediante 4 trapecios). En el desarrollo de este método se supone que la función es continua en el intervalo en que se quiere aproximar.&lt;br /&gt;
&amp;lt;br/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Image:Trapecio.png|300px|thumb|center|Función Y(x), el área bajo la curva, se puede aproximar mediante n trapecios]]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo= &lt;br /&gt;
%Resolucion por Trapecio.&lt;br /&gt;
%Definimos las condiciones iniciales.&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=1;&lt;br /&gt;
&lt;br /&gt;
%Al tratarse del método de trapecio podemos usar un paso más grande.&lt;br /&gt;
h=0.05;&lt;br /&gt;
t=t0:h:tN;&lt;br /&gt;
N=(tN-t0)/h;&lt;br /&gt;
i=zeros(1,N+1);&lt;br /&gt;
i(1)=0;&lt;br /&gt;
&lt;br /&gt;
%Resolvemos la ecuación.&lt;br /&gt;
for n=1:N;&lt;br /&gt;
    i(n+1)=((200*h)/(2+25*h))+(i(n)*((2-25*h)/(2+25*h)));&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
%Dibujamos.&lt;br /&gt;
figure (1)&lt;br /&gt;
plot(t,i,'-r','linewidth',2)&lt;br /&gt;
xlabel('Tiempo')&lt;br /&gt;
ylabel('Intensidad(t)')&lt;br /&gt;
axis([0,1,-0.05,4.25])&lt;br /&gt;
&lt;br /&gt;
%Cambiamos los ejes del dibujo y añadimos líneas auxiliares para poder ver con mayor &lt;br /&gt;
%precisión el punto en el que la intensidad se hace constante.&lt;br /&gt;
figure (2)&lt;br /&gt;
plot(t,i,'-b','linewidth',2)&lt;br /&gt;
xlabel('Tiempo')&lt;br /&gt;
ylabel('Intensidad(t)')&lt;br /&gt;
axis([0,0.4,2,4.1])&lt;br /&gt;
grid on&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Image:Trapecio3a.jpg|450px|thumb|left|Resultado de la intensidad del circuito RL simple por el método del trapecio.]]&lt;br /&gt;
[[Image:Trapecio3a11.jpg|450px|thumb|center|Visualización del punto en que se hace constante la intensidad.]]&lt;br /&gt;
&amp;lt;br/&amp;gt;&amp;lt;br/&amp;gt;&lt;br /&gt;
La representación de la función por el método del Trapecio nos permite utilizar un paso de discretización mayor quedando como resultado una aproximación muy similar a la original (podemos observar ésto en la imagen de la izquierda).&lt;br /&gt;
Una ampliación de dicha aproximación nos permite ver con exactitud el punto en el cual la intensidad se hace constante,(0'25,4), es decir t=0'25 e i(t)=4.&lt;br /&gt;
 &amp;lt;br/&amp;gt;&lt;br /&gt;
===== Efectos en la función al variar la constante de inductor. =====&lt;br /&gt;
Se ha estudiado las alteraciones producidas en la función cuando se disminuye o aumenta la constante del inductor, L. A continuación se muestran las gráficas resultantes al modificar dicho valor.&lt;br /&gt;
{{matlab|codigo= %Resolucion por Trapecio.&lt;br /&gt;
%Definimos las condiciones iniciales.&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=1;&lt;br /&gt;
h=0.05;&lt;br /&gt;
t=t0:h:tN;&lt;br /&gt;
N=(tN-t0)/h;&lt;br /&gt;
i=zeros(N+1);&lt;br /&gt;
i(1)=0;&lt;br /&gt;
&lt;br /&gt;
%Cambiamos la L y resolvemos su ecuación correspondiente.&lt;br /&gt;
L=3.2;&lt;br /&gt;
for n=1:N;&lt;br /&gt;
    i(n+1)=((40*h)/(2*L+5*h))+i(n)*((2*L-5*h)/(2*L+5*h));&lt;br /&gt;
end&lt;br /&gt;
figure (1)&lt;br /&gt;
plot(t,i,'-b','linewidth',2)&lt;br /&gt;
xlabel('Tiempo')&lt;br /&gt;
ylabel('Intensidad(t)')&lt;br /&gt;
title('L=3.2')&lt;br /&gt;
grid on&lt;br /&gt;
&lt;br /&gt;
%Cambiamos la L y resolvemos su ecuación correspondiente.&lt;br /&gt;
y=zeros(N+1);&lt;br /&gt;
y(1)=0;&lt;br /&gt;
L=0.8;&lt;br /&gt;
for m=1:N;&lt;br /&gt;
    y(m+1)=((40*h)/(2*L+5*h))+y(m)*((2*L-5*h)/(2*L+5*h));&lt;br /&gt;
end&lt;br /&gt;
figure (2)&lt;br /&gt;
plot(t,y,'-r','linewidth',2)&lt;br /&gt;
xlabel('Tiempo')&lt;br /&gt;
ylabel('Intensidad(t)')&lt;br /&gt;
title('L=0.8')&lt;br /&gt;
grid on&lt;br /&gt;
&lt;br /&gt;
%Cambiamos la L y resolvemos su ecuación correspondiente.&lt;br /&gt;
j=zeros(N+1);&lt;br /&gt;
j(1)=0;&lt;br /&gt;
L=0.05;&lt;br /&gt;
for o=1:N;&lt;br /&gt;
    j(o+1)=((40*h)/(2*L+5*h))+j(o)*((2*L-5*h)/(2*L+5*h));&lt;br /&gt;
end&lt;br /&gt;
figure (3)&lt;br /&gt;
plot(t,j,'-g','linewidth',2)&lt;br /&gt;
xlabel('Tiempo')&lt;br /&gt;
ylabel('Intensidad(t)')&lt;br /&gt;
title('L=0.05')&lt;br /&gt;
grid on&lt;br /&gt;
&lt;br /&gt;
%Cambiamos la L y resolvemos su ecuación correspondiente.&lt;br /&gt;
k=zeros(N+1);&lt;br /&gt;
k(1)=0;&lt;br /&gt;
L=0.0125;&lt;br /&gt;
for l=1:N;&lt;br /&gt;
    k(l+1)=((40*h)/(2*L+5*h))+k(l)*((2*L-5*h)/(2*L+5*h));&lt;br /&gt;
end&lt;br /&gt;
figure (4)&lt;br /&gt;
plot(t,k,'-c','linewidth',2)&lt;br /&gt;
xlabel('Tiempo')&lt;br /&gt;
ylabel('Intensidad(t)')&lt;br /&gt;
title('L=0.0125')&lt;br /&gt;
grid on&lt;br /&gt;
}}&lt;br /&gt;
&amp;lt;br/&amp;gt;&lt;br /&gt;
*Como podemos observar a medida que incrementamos el valor de L, se acentúa la 'exponencialidad' de la función hasta llegar a aproximarse a una recta. A medida que aumenta el parecido a una recta, el tiempo de estabilización se extiende por ser la inductancia mayor, así como el valor de la intensidad cuando es constante.&lt;br /&gt;
*De igual forma al reducirlo, la subida de la intensidad hasta llegar a una cifra constante es mucho mayor, aumenta el periodo transitorio, pero de forma más moderada que en los casos anteriores y manteniendo la constancia en i(t)=4; sin embargo, la función deja de ser exponencial convirtiéndose en fluctuaciones de rectas que van reduciendo su volatilidad con el paso del tiempo.&lt;br /&gt;
[[Image:3.2.jpg|400px|thumb|left|L=3'2.]]&lt;br /&gt;
[[Image:0.8.jpg|400px|thumb|center|L=0'8.]]&lt;br /&gt;
&amp;lt;br/&amp;gt;&lt;br /&gt;
[[Image:0.0125.jpg|400px|thumb|left|L=0'0125.]]&lt;br /&gt;
[[Image:0.051.jpg|400px|thumb|center|L=0'5.]]&lt;br /&gt;
&amp;lt;br/&amp;gt;&amp;lt;br/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Leyes de Kirchhoff ==&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Circuito 2 completo.jpg|300px|thumb|left| Circuito RL de varias resistencias y bobinas ]]&lt;br /&gt;
&lt;br /&gt;
Según las  leyes de Kirchhoff, el sistema de ecuaciones diferenciales correspondiente al circuito 2 es el siguiente:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\left\{\begin{matrix}\ [1] E(t) = R_1\cdot i_1(t) + L_2\cdot \frac{d}{dt}\cdot i_2(t) + R_2\cdot i_2(t)\\ [2] E(t) = R_1\cdot i_1(t) + L_1\cdot \frac{d}{dt}\cdot i_3(t) + R_3\cdot i_3(t)\\ [3] i_1(t) = i_2(t) + i_3(t)\end{matrix}\right.&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''[1]'''Correspondiente al recorrido exterior del circuito.&amp;lt;br/&amp;gt;&lt;br /&gt;
'''[2]'''Correspondiente a la malla izquierda, (malla 1).&amp;lt;br/&amp;gt;&lt;br /&gt;
'''[3]'''Correspondiente al nudo de la parte superior del circuito(Ley de corrientes de Kirchhoff).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Sustituyendo la tercera ecuación en las otras dos, se obtiene el sistema en términos de i2(t) e i3(t) matricialmente::&amp;lt;math&amp;gt;\frac{d}{dt}\cdot \begin{pmatrix} i_2\\i_3 \end{pmatrix} = - \begin{pmatrix} \frac{R_1+R_2}{L_2}&amp;amp;\frac{R_1}{L_2} \\ \frac{R_1}{L_1}&amp;amp;\frac{R_1+R_3}{L_1}\end{pmatrix} \cdot \begin{pmatrix} i_2\\i_3 \end{pmatrix} + \begin{pmatrix} \frac{E}{L_2} \\ \frac{E}{L_1} \end{pmatrix}&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
A partir de las condiciones iniciales i2(0)=i3(0)=0 se puede interpretar que la corriente en el circuito es nula en el momento  en el cual se conecta el generador.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== Cálculo de las intensidades de un circuito con varias resistencias y bobinas a partir del Método de Euler y del Trapecio. ====&lt;br /&gt;
Ya se ha visto que la expresión de las intensidades i2 e i3 de este circuito RL vienen dadas por dos ecuaciones diferenciales que conforman un sistema. Este sistema de ecuaciones diferenciales se puede resolver numéricamente a partir del método de Euler y del trapecio, los cuales se basan en la aproximación de las áreas de esa ecuación diferencial al valor real de la función en cada momento.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Partiendo de unos datos iniciales iguales a:&lt;br /&gt;
&lt;br /&gt;
'''&amp;lt;math&amp;gt; R_1=R_2=6Ω &amp;lt;/math&amp;gt;''' , '''&amp;lt;math&amp;gt; R_3=3Ω &amp;lt;/math&amp;gt;''' , '''&amp;lt;math&amp;gt; L_1=0,3Hz &amp;lt;/math&amp;gt;''' , '''&amp;lt;math&amp;gt; L_2=0,11Hz &amp;lt;/math&amp;gt;''' y '''&amp;lt;math&amp;gt; E(t)=20 V &amp;lt;/math&amp;gt;'''&lt;br /&gt;
&lt;br /&gt;
 :&amp;lt;math&amp;gt;\frac{d}{dt}\cdot \begin{pmatrix} i_2\\i_3 \end{pmatrix} = - \begin{pmatrix} \frac{6+6}{0,11}&amp;amp;\frac{6}{0,11} \\ \frac{6}{0,3}&amp;amp;\frac{6+3}{0,3}\end{pmatrix} \cdot \begin{pmatrix} i_2\\i_3 \end{pmatrix} + \begin{pmatrix} \frac{20}{0,11} \\ \frac{20}{0,3} \end{pmatrix}&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
Resolvemos las ecuaciones diferenciales:&lt;br /&gt;
&lt;br /&gt;
* ''' MÉTODO DE EULER: '''&lt;br /&gt;
'''OCTAVE'''&lt;br /&gt;
{{matlab|codigo= &lt;br /&gt;
DATOS:&lt;br /&gt;
&lt;br /&gt;
clc;clear all;&lt;br /&gt;
    %t0=tiempo inicial&lt;br /&gt;
t0=0;&lt;br /&gt;
    %tN=tiempo máximo a evaluar&lt;br /&gt;
tN=0.04;&lt;br /&gt;
    %soluciones en y0 para las variables i2 e i3&lt;br /&gt;
y0=0;&lt;br /&gt;
    %N=intervalos en los que se dividen&lt;br /&gt;
N=25;&lt;br /&gt;
    %h=salto de intervalo en intervalo&lt;br /&gt;
h=(tN-t0)/N;&lt;br /&gt;
    %i1,i2,i3=vectores solución desde t0 a tN de h en h&lt;br /&gt;
i1=t0:h:tN;&lt;br /&gt;
&lt;br /&gt;
i2=t0:h:tN;&lt;br /&gt;
&lt;br /&gt;
i3=t0:h:tN;&lt;br /&gt;
&lt;br /&gt;
    %y=vector de ceros y que va a almacenar las soluciones.Tendrá N+1 términos porque el primero es el cero y el ultimo el N&lt;br /&gt;
    %la intensidad dos es y(:,1),es decir, la fila 1.&lt;br /&gt;
    %la intensidad tres es y(:,2),es decir, la fila 2.&lt;br /&gt;
    %la intensidad uno es y(:,3),es decir, la fila 3.&lt;br /&gt;
y=zeros(N+1,3);&lt;br /&gt;
y(1,1)=y0;&lt;br /&gt;
y(1,2)=y0;&lt;br /&gt;
y(1,3)=y0;&lt;br /&gt;
%AHORA SE EMPIEZA A RESOLVER POR EULER EL SISTEMA.&lt;br /&gt;
%y(n+1)=y(n)+h*f(t(n),y(n))&lt;br /&gt;
%f(t,i2)=((E/L2)-R1*(i2+i3)+R2*i2)/L2&lt;br /&gt;
%f(t,i3)=((E/L1)-R1*(i2+i3)+R3*i3)/L1&lt;br /&gt;
for n=1:N&lt;br /&gt;
    y(n+1,1)=y(n,1)+h*((20/0.11)-(6*(y(n,1)+y(n,2))+6*y(n,1))/0.11);&lt;br /&gt;
    y(n+1,2)=y(n,2)+h*((20/0.3)-(6*(y(n,1)+y(n,2))+3*y(n,2))/0.3);&lt;br /&gt;
    y(n+1,3)=y(n+1,1)+y(n+1,2);&lt;br /&gt;
end&lt;br /&gt;
hold on&lt;br /&gt;
plot(i1,y(:,3),'+')&lt;br /&gt;
plot(i2,y(:,1),'r+')&lt;br /&gt;
plot(i3,y(:,2),'g+')&lt;br /&gt;
xlabel('Tiempo');&lt;br /&gt;
ylabel('Intensidad(t)');&lt;br /&gt;
legend('i1', 'i2', 'i3');&lt;br /&gt;
grid on&lt;br /&gt;
}}&lt;br /&gt;
* ''' MÉTODO DEL TRAPECIO: '''&lt;br /&gt;
'''OCTAVE'''&lt;br /&gt;
{{matlab|codigo= &lt;br /&gt;
DATOS:&lt;br /&gt;
clc;clear all;&lt;br /&gt;
    %tiempo inicial&lt;br /&gt;
t0=0;&lt;br /&gt;
    %tiempo máximo a evaluar&lt;br /&gt;
tN=0.04;&lt;br /&gt;
    %soluciones en y0 para las variables i2 e i3&lt;br /&gt;
y0=0;&lt;br /&gt;
    %intervalos en los que se dividen&lt;br /&gt;
N=25;&lt;br /&gt;
	%salto de intervalo en intervalo&lt;br /&gt;
h=(tN-t0)/N;&lt;br /&gt;
    %vectores solución desde t0 a tN de h en h&lt;br /&gt;
i1=t0:h:tN;&lt;br /&gt;
i2=t0:h:tN;&lt;br /&gt;
i3=t0:h:tN;&lt;br /&gt;
    %vector de ceros y que va a almacenar las soluciones&lt;br /&gt;
    %tendra N+1 términos porque el primero es el cero y el ultimo el N&lt;br /&gt;
    %la intensidad dos es y(:,1)&lt;br /&gt;
    %la intensidad tres es y(:,2)&lt;br /&gt;
    %la intensidad uno es y(:,3)&lt;br /&gt;
y=zeros(N+1,3);&lt;br /&gt;
y(1,1)=y0;&lt;br /&gt;
y(1,2)=y0;&lt;br /&gt;
y(1,3)=y0;&lt;br /&gt;
PARA RESOLVER POR EL MÉTODO DEL TRAPECIO:&lt;br /&gt;
%y(n+1)=y(n)+(h/2)*(f(t(n),y(n)+f(t(n+1),y(n+1))&lt;br /&gt;
%f(t,i2)=((E/L2)-R1*(i2+i3)+R2*i2)/L2&lt;br /&gt;
%f(t,i3)=((E/L1)-R1*(i2+i3)+R3*i3)/L1&lt;br /&gt;
for n=1:N&lt;br /&gt;
    y(n+1,1)=y(n,1)+(h/2)*(((20/0.11)-(6*(y(n,1)+y(n,2))+6*y(n,1))/0.11)+((20/0.11)-(6*(y(n+1,1)+y(n+1,2))+6*y(n+1,1))/0.11));&lt;br /&gt;
    y(n+1,2)=y(n,2)+(h/2)*(((20/0.3)-(6*(y(n,1)+y(n,2))+3*y(n,2))/0.3)+((20/0.3)-(6*(y(n+1,1)+y(n+1,2))+3*y(n+1,2))/0.3));  &lt;br /&gt;
    y(n+1,3)=y(n+1,1)+y(n+1,2);&lt;br /&gt;
end&lt;br /&gt;
plot(i1,y(:,3))&lt;br /&gt;
plot(i2,y(:,1),'r')&lt;br /&gt;
plot(i3,y(:,2),'g')&lt;br /&gt;
xlabel('Tiempo');&lt;br /&gt;
ylabel('Intensidad(t)');&lt;br /&gt;
hold off&lt;br /&gt;
}}&lt;br /&gt;
&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
[[Archivo:Resoct.png|800px|thumb|centre|Gráfica del resultado del Método de Euler y Trapecio en el cálculo de las intensidades.]]&lt;br /&gt;
&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''En el resultado de la gráfica, lo obtenido con el método de Euler se representa con los símbolos &amp;quot;+&amp;quot;, mientras que la línea continua corresponde al Método del Trapecio. Como se puede apreciar, ambos métodos dan resultados similares y muy próximos. En la interpretación de los resultados, diríamos que se trata de corrientes muy estables.'''&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
====Variación de las intensidades de un circuito RL cuando se altera el valor de una de las resistencias.====&lt;br /&gt;
Ahora vamos a analizar como afecta la variación del módulo de una resistencia (se incrementa, '''&amp;lt;math&amp;gt; R_3=3Ω &amp;lt;/math&amp;gt;''' pasa a valer '''&amp;lt;math&amp;gt; R_3=9Ω &amp;lt;/math&amp;gt;''') en las intensidades del circuito.&lt;br /&gt;
Nuestro análisis se realizará sustituyendo el nuevo valor en el mismo sistema, y se resolverá por el método de Euler y Trapecio comparando en una gráfica los resultados con los obtenidos anteriormente.&lt;br /&gt;
&lt;br /&gt;
* ''' MÉTODO DE EULER: '''&lt;br /&gt;
'''OCTAVE'''&lt;br /&gt;
{{matlab|codigo= &lt;br /&gt;
%DATOS:&lt;br /&gt;
clc;clear all;&lt;br /&gt;
    %tiempo inicial&lt;br /&gt;
t0=0;&lt;br /&gt;
    %tiempo máximo a evaluar&lt;br /&gt;
tN=0.04;&lt;br /&gt;
    %soluciones en y0 para las variables i2 e i3&lt;br /&gt;
y0=0;&lt;br /&gt;
    %intervalos en los que se dividen&lt;br /&gt;
N=25;&lt;br /&gt;
	%salto de intervalo en intervalo&lt;br /&gt;
h=(tN-t0)/N;&lt;br /&gt;
    %vectores solución desde t0 a tN de h en h&lt;br /&gt;
i1=t0:h:tN;&lt;br /&gt;
i2=t0:h:tN;&lt;br /&gt;
i3=t0:h:tN;&lt;br /&gt;
    %vector de ceros y que va a almacenar las soluciones&lt;br /&gt;
    %tendra N+1 términos porque el primero es el cero y el ultimo el N&lt;br /&gt;
    %la intensidad dos es y(:,1)&lt;br /&gt;
    %la intensidad tres es y(:,2)&lt;br /&gt;
    %la intensidad uno es y(:,3)&lt;br /&gt;
y=zeros(N+1,3);&lt;br /&gt;
y(1,1)=y0;&lt;br /&gt;
y(1,2)=y0;&lt;br /&gt;
y(1,3)=y0;&lt;br /&gt;
%PARA RESOLVER POR EULER EL SISTEMA:&lt;br /&gt;
%y(n+1)=y(n)+h*f(t(n),y(n))&lt;br /&gt;
%f(t,i2)=((E/L2)-R1*(i2+i3)+R2*i2)/L2&lt;br /&gt;
%f(t,i3)=((E/L1)-R1*(i2+i3)+R3*i3)/L1&lt;br /&gt;
for n=1:N&lt;br /&gt;
    y(n+1,1)=y(n,1)+h*((20/0.11)-(6*(y(n,1)+y(n,2))+6*y(n,1))/0.11);&lt;br /&gt;
    y(n+1,2)=y(n,2)+h*((20/0.3)-(6*(y(n,1)+y(n,2))+9*y(n,2))/0.3);&lt;br /&gt;
    y(n+1,3)=y(n+1,1)+y(n+1,2);&lt;br /&gt;
end&lt;br /&gt;
hold on&lt;br /&gt;
plot(i1,y(:,3),'c+')&lt;br /&gt;
plot(i2,y(:,1),'m+')&lt;br /&gt;
plot(i3,y(:,2),'k+')&lt;br /&gt;
}}&lt;br /&gt;
* ''' MÉTODO DEL TRAPECIO: '''&lt;br /&gt;
'''OCTAVE'''&lt;br /&gt;
{{matlab|codigo= &lt;br /&gt;
%DATOS:&lt;br /&gt;
clc;clear all;&lt;br /&gt;
    %tiempo inicial&lt;br /&gt;
t0=0;&lt;br /&gt;
    %tiempo máximo a evaluar&lt;br /&gt;
tN=0.04;&lt;br /&gt;
    %soluciones en y0 para las variables i2 e i3&lt;br /&gt;
y0=0;&lt;br /&gt;
    %intervalos en los que se dividen&lt;br /&gt;
N=25;&lt;br /&gt;
	%salto de intervalo en intervalo&lt;br /&gt;
h=(tN-t0)/N;&lt;br /&gt;
    %vectores solución desde t0 a tN de h en h&lt;br /&gt;
i1=t0:h:tN;&lt;br /&gt;
i2=t0:h:tN;&lt;br /&gt;
i3=t0:h:tN;&lt;br /&gt;
    %vector de ceros y que va a almacenar las soluciones&lt;br /&gt;
    %tendra N+1 términos porque el primero es el cero y el ultimo el N&lt;br /&gt;
    %la intensidad dos es y(:,1)&lt;br /&gt;
    %la intensidad tres es y(:,2)&lt;br /&gt;
    %la intensidad uno es y(:,3)&lt;br /&gt;
y=zeros(N+1,3);&lt;br /&gt;
y(1,1)=y0;&lt;br /&gt;
y(1,2)=y0;&lt;br /&gt;
y(1,3)=y0;&lt;br /&gt;
%PARA RESOLVER POR EL MÉTODO DEL TRAPECIO:&lt;br /&gt;
%y(n+1)=y(n)+(h/2)*(f(t(n),y(n)+f(t(n+1),y(n+1))&lt;br /&gt;
%f(t,i2)=((E/L2)-R1*(i2+i3)+R2*i2)/L2&lt;br /&gt;
%f(t,i3)=((E/L1)-R1*(i2+i3)+R3*i3)/L1&lt;br /&gt;
for n=1:N&lt;br /&gt;
    y(n+1,1)=y(n,1)+(h/2)*(((20/0.11)-(6*(y(n,1)+y(n,2))+6*y(n,1))/0.11)+((20/0.11)-(6*(y(n+1,1)+y(n+1,2))+6*y(n+1,1))/0.11));&lt;br /&gt;
    y(n+1,2)=y(n,2)+(h/2)*(((20/0.3)-(6*(y(n,1)+y(n,2))+9*y(n,2))/0.3)+((20/0.3)-(6*(y(n+1,1)+y(n+1,2))+9*y(n+1,2))/0.3));  &lt;br /&gt;
    y(n+1,3)=y(n+1,1)+y(n+1,2);&lt;br /&gt;
end&lt;br /&gt;
plot(i1,y(:,3),'c')&lt;br /&gt;
plot(i2,y(:,1),'m')&lt;br /&gt;
plot(i3,y(:,2),'k')&lt;br /&gt;
hold off&lt;br /&gt;
}}&lt;br /&gt;
[[Image:Resultado.png|500px|thumb|left|Gráfica de la intensidad del circuito RL compuesto tras incrementar una de sus resistencias ]]&lt;br /&gt;
[[Archivo:Resoct.png|500px|thumb|right|Gráfica del resultado del Método de Euler y Trapecio en el cálculo de las intensidades sin incrementar.]]&lt;br /&gt;
[[Image:Grafica comparativa 5y6 (1).jpg|1400px|thumb|centre|Gráfica comparativa de las intensidades de un circuito RL intensidades incrementadas y sin incrementar. ]]&lt;br /&gt;
'''De nuevo, las cruces + corresponderían a lo obtenido por el método de Euler y la línea continua al Método del trapecio. En la gráfica superpuesta se observa el resultado final de la comparativa: frente a resistencias menores las intensidades resultan mayores, y viceversa. Esto se justifica gracias a la Ley de Ohm que establece '''&amp;lt;math&amp;gt; V=I*R&amp;lt;/math&amp;gt;''' de manera que la intensidad y resistencia son inversamente proporcionales, y si una se incrementa, la otra decrece: '''&amp;lt;math&amp;gt; I=V/R&amp;lt;/math&amp;gt;''', '''&amp;lt;math&amp;gt; R=V/I&amp;lt;/math&amp;gt;'''. '''&lt;br /&gt;
&lt;br /&gt;
== Resolución de un problema de valor inicial en otro punto ==&lt;br /&gt;
==== Cálculo de las intensidades en un punto (el inicial) a partir de un valor inicial en un punto distinto al origen. ====&lt;br /&gt;
&lt;br /&gt;
Esta vez vamos a calcular el valor concreto de un punto de una función, que hemos definido tras resolver una ecuación diferencial. Nuestra función será la que define las intensidades de un circuito RL compuesto. En la resolución de la ecuación diferencial que relaciona las derivadas con la función, procederemos de nuevo tratándolo como un problema de valor inicial; a pesar de que no sea un valor en el punto de origen el que tengamos por dato, sino un valor de '''&amp;lt;math&amp;gt; i_2 &amp;lt;/math&amp;gt;''' e '''&amp;lt;math&amp;gt; i_3 &amp;lt;/math&amp;gt;''' en el tiempo '''&amp;lt;math&amp;gt; t=0,02  &amp;lt;/math&amp;gt;'''. Serán precisamente estos valores en el origen los que calculemos. De nuevo, utilizaremos el segundo circuito expuesto en este artículo (sin incrementar resistencias):&lt;br /&gt;
[[Archivo:Circuito 2 completo.jpg|300px|thumb|left|Circuito RL compuesto ]]&lt;br /&gt;
&lt;br /&gt;
 :&amp;lt;math&amp;gt;\frac{d}{dt}\cdot \begin{pmatrix} i_2\\i_3 \end{pmatrix} = - \begin{pmatrix} \frac{6+6}{0,11}&amp;amp;\frac{6}{0,11} \\ \frac{6}{0,3}&amp;amp;\frac{6+3}{0,3}\end{pmatrix} \cdot \begin{pmatrix} i_2\\i_3 \end{pmatrix} + \begin{pmatrix} \frac{20}{0,11} \\ \frac{20}{0,3} \end{pmatrix}&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''&amp;lt;math&amp;gt; R_1=R_2=6Ω &amp;lt;/math&amp;gt;''' , '''&amp;lt;math&amp;gt; R_3=3Ω &amp;lt;/math&amp;gt;''' , '''&amp;lt;math&amp;gt; L_1=0,3Hz &amp;lt;/math&amp;gt;''' , '''&amp;lt;math&amp;gt; L_2=0,11Hz &amp;lt;/math&amp;gt;''' y '''&amp;lt;math&amp;gt; E(t)=20 V &amp;lt;/math&amp;gt;'''.&lt;br /&gt;
&lt;br /&gt;
Nuestros valores iniciales '''&amp;lt;math&amp;gt; i_2(0,02)=i_3(0,02)=1A &amp;lt;/math&amp;gt;'''&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Buscamos '''&amp;lt;math&amp;gt; i_1(t),i_2(t),i_3(t) &amp;lt;/math&amp;gt;'''.&lt;br /&gt;
&lt;br /&gt;
Resolvemos por el método de Euler:&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo= &lt;br /&gt;
%DATOS:&lt;br /&gt;
clc;clear all;&lt;br /&gt;
    %tiempo inicial&lt;br /&gt;
t0=0.02;&lt;br /&gt;
    %tiempo a evaluar&lt;br /&gt;
tN=0;&lt;br /&gt;
    %soluciones en y0.02 para las variables i2 e i3&lt;br /&gt;
y02=1;&lt;br /&gt;
    %&lt;br /&gt;
N=100000;&lt;br /&gt;
	%salto de intervalo en intervalo&lt;br /&gt;
h=(tN-t0)/N;&lt;br /&gt;
    %vectores solución desde t0 a tN de h en h&lt;br /&gt;
i1=t0:h:tN;&lt;br /&gt;
i2=t0:h:tN;&lt;br /&gt;
i3=t0:h:tN;&lt;br /&gt;
    %vector de ceros y que va a almacenar las soluciones&lt;br /&gt;
    %tendra N+1 términos porque el primero es el cero y el ultimo el N&lt;br /&gt;
    %la intensidad dos es y(:,1)&lt;br /&gt;
    %la intensidad tres es y(:,2)&lt;br /&gt;
    %la intensidad uno es y(:,3)&lt;br /&gt;
y=zeros(N+1,3);&lt;br /&gt;
y(1,1)=y02;&lt;br /&gt;
y(1,2)=y02;&lt;br /&gt;
y(1,3)=2;&lt;br /&gt;
%RESOLVEMOS POR EULER EL SISTEMA:&lt;br /&gt;
%y(n+1)=y(n)+h*f(t(n),y(n))&lt;br /&gt;
%f(t,i2)=((E/L2)-R1*(i2+i3)+R2*i2)/L2&lt;br /&gt;
%f(t,i3)=((E/L1)-R1*(i2+i3)+R3*i3)/L1&lt;br /&gt;
for n=1:N&lt;br /&gt;
    y(n+1,1)=y(n,1)+h*((20/0.11)-(6*(y(n,1)+y(n,2))+6*y(n,1))/0.11);&lt;br /&gt;
    y(n+1,2)=y(n,2)+h*((20/0.3)-(6*(y(n,1)+y(n,2))+3*y(n,2))/0.3);&lt;br /&gt;
    y(n+1,3)=y(n+1,1)+y(n+1,2);&lt;br /&gt;
end&lt;br /&gt;
intensidad1=y(N+1,3)&lt;br /&gt;
intensidad2=y(N+1,1)&lt;br /&gt;
intensidad3=y(N+1,2)&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
'''Los resultados obtenidos:'''&lt;br /&gt;
[[Archivo:Intens.png|600px|thumb|centre|Valores de las intensidades para t=0]]&lt;br /&gt;
&lt;br /&gt;
Así se prueba la eficacia de estas aproximaciones numéricas no sólo al trazar gráficas, sino también para dar valores concretos de la función en los puntos que se quiera.&lt;br /&gt;
&lt;br /&gt;
[[Categoría:Ecuaciones Diferentiales]]&lt;br /&gt;
[[Categoría:ED13/14]]&lt;br /&gt;
[[Categoría:Trabajos 2013-14]]&lt;/div&gt;</summary>
		<author><name>Lucia Lopez</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Archivo:Trapecio.png&amp;diff=10135</id>
		<title>Archivo:Trapecio.png</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Archivo:Trapecio.png&amp;diff=10135"/>
				<updated>2014-03-05T00:47:22Z</updated>
		
		<summary type="html">&lt;p&gt;Lucia Lopez: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>Lucia Lopez</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Circuitos_RL_(grupo_B)&amp;diff=10134</id>
		<title>Circuitos RL (grupo B)</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Circuitos_RL_(grupo_B)&amp;diff=10134"/>
				<updated>2014-03-05T00:46:38Z</updated>
		
		<summary type="html">&lt;p&gt;Lucia Lopez: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{ TrabajoED | Circuitos RL. Grupo 2-B | [[:Categoría:Ecuaciones Diferenciales|Ecuaciones Diferenciales]]|[[:Categoría:ED13/14|Curso 2013-14]] | Diego Solano López,Lucia López Sánchez,Adela González Barbado,Araceli Martín Candilejo,Ignacio Díaz Caneja Camblor,Alberto Fernández Pérez }}&lt;br /&gt;
&lt;br /&gt;
El circuito eléctrico mas simple esta compuesto de una resistencia, un inductor o bobina y una fuente de alimentación.&lt;br /&gt;
* En una resistencia R, la Ley de Ohm establece:&lt;br /&gt;
&lt;br /&gt;
  &amp;lt;math&amp;gt;i(t)={V(t)\over R}&amp;lt;/math&amp;gt;&lt;br /&gt;
* En un inductor L la Ley de Faraday dice:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; V(t)=L\cdot i'(t)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
Las leyes de Kirchhoff establecen el comportamiento de los circuitos:&lt;br /&gt;
# '''Ley de corriente:''' en cada nudo la suma de corrientes que entra coincide con la suma de corrientes que sale.&lt;br /&gt;
# '''Ley de tensiones:''' en cada ciclo cerrado, la suma de las diferencias de potencial eléctrico es nula.&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Segunda ley de Kirchhoff ==&lt;br /&gt;
==== Ecuación diferencial-Resolución y representación analítica.====&lt;br /&gt;
Basándonos en la segunda ley de Kirchhoff sobre el circuito que observamos en la imagen, podemos trabajar con la siguiente ecuación diferencial.&lt;br /&gt;
&lt;br /&gt;
Esta vez vamos a obtener la solución del valor concreto de un punto de una función hallada a partir de una ecuación diferencial. Será así de nuevo el caso de una ecuación diferencial que define las relaciones entre las corrientes y sus derivadas en un circuito RL de varias resistencias y bobinas. Volveremos a utilizar el segundo circuito mostrado en este artículo:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;math&amp;gt; i'(t)+{R\over L}i(t)-{V(t)\over L}=0 &amp;lt;/math&amp;gt; [[Image:cicuito1.jpg|300px|thumb|right|Circuito RL simple ]]&lt;br /&gt;
&lt;br /&gt;
Al suponer que en el instante t=0 el circuito está abierto, podemos establecer para el problema de Cauchy el valor inicial '''&amp;lt;math&amp;gt; i_0(t)=0 &amp;lt;/math&amp;gt;'''. Considerando que la alimentación posee un voltaje constante '''V(t)=20V, L=0.2 y R=5Ω''', llegamos al problema:&lt;br /&gt;
&lt;br /&gt;
                              &amp;lt;math&amp;gt;\left\{\begin{matrix}\ i'(t)+{25}i(t)-{100}=0 \\i(0)=0\end{matrix}\right.&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
La resolución de éste mediante &amp;lt;math&amp;gt;i \cdot e^{\int{\frac{R}{L}dt}} = \int{e^{\frac{R \cdot t}{L}}dt} \hspace{0.5cm} \rightarrow \hspace{0.5cm} &amp;lt;/math&amp;gt; &lt;br /&gt;
&amp;lt;math&amp;gt;i \cdot e^{\frac{R \cdot t}{L}} = \frac{V}{R}e^{\frac{R \cdot t}{L}}+C&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt; nos da:&lt;br /&gt;
 &amp;lt;math&amp;gt; i(t)=4-4e^{-25t} &amp;lt;/math&amp;gt;&lt;br /&gt;
La gráfica de la función nos muestra la evolución de la intensidad. En ella se puede apreciar una rápida subida en los primeros instantes que se ralentiza hasta llegar a ser prácticamente constante con un valor de 4. Por lo que podemos afirmar que la intensidad se estabiliza en un corto periodo de tiempo.&lt;br /&gt;
[[Image:Funcion.jpg|500px|thumb|center|Gráfica de la intensidad en un circuito RL simple ]]&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo= &lt;br /&gt;
fplot('4-4*exp(-25*t)',[0,0.5,0,5]);&lt;br /&gt;
xlabel('Tiempo')&lt;br /&gt;
ylabel('Intensidad(t)')&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
==== Método de Euler. ====&lt;br /&gt;
Este método parte de la posibilidad de aproximar una función original mediante rectas tangentes partiendo de un punto dado. Sabiendo que la recta tangente de una función en un punto es su derivada en dicho punto, este método consiste en calcular derivadas de la función en diferentes puntos pertenecientes a dicha función. Estos puntos serán tomados con la misma frecuencia a lo largo de la recta, a esta frecuencia la denominamos paso. &lt;br /&gt;
&lt;br /&gt;
A continuación, vamos a calcular la función por el método de Euler, resolviendo la ecuación con diferentes pasos. De esta forma, podremos observar y analizar los distintos resultados obtenidos al modificar los pasos, hasta que lleguemos a una conclusión evidente. Además calcularemos el error cometido por la aproximación del método para ser más precios en nuestras observaciones.&lt;br /&gt;
&lt;br /&gt;
Comenzamos a analizar este método elaborando un programa con un paso de 0.01, que podemos visualizar a continuación.&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo= &lt;br /&gt;
%Definimos las condiciones iniciales.&lt;br /&gt;
clear all&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=1;&lt;br /&gt;
&lt;br /&gt;
%Establecemos un paso h=0'01.&lt;br /&gt;
h=0.01;&lt;br /&gt;
t=t0:h:tN;&lt;br /&gt;
N=(tN-t0)/h;&lt;br /&gt;
&lt;br /&gt;
%Resolvemos la ecuación.&lt;br /&gt;
ii=0;&lt;br /&gt;
i(1)=ii;&lt;br /&gt;
for n=1:N;&lt;br /&gt;
  ii=ii+h*(100-25*ii);&lt;br /&gt;
  i(n+1)=ii;&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
%Dibujamos la gráfica.&lt;br /&gt;
figure(1)&lt;br /&gt;
plot(t,i,'-g','linewidth',2);&lt;br /&gt;
xlabel('Tiempo');&lt;br /&gt;
ylabel('Intensidad(t)');&lt;br /&gt;
axis([-0.1,1,0,5])&lt;br /&gt;
&lt;br /&gt;
%Calculo error y lo dibujamos.&lt;br /&gt;
r=4-4*exp(-25*t);&lt;br /&gt;
error=abs(r-i);&lt;br /&gt;
figure(2)&lt;br /&gt;
plot(t,error,'-r','linewidth',2)&lt;br /&gt;
xlabel('Tiempo');&lt;br /&gt;
ylabel('Error');&lt;br /&gt;
axis([-0.1,1,-0.05,0.25])&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
Un paso de discretización de 0'01 proporciona un error muy pequeño, lo que aporta una aproximación de la función muy similar a la real, como podemos observar en la primera figura. Analizando el error que nos ofrece dicha aproximación (imagen de la derecha),su valor no supera el 0'2, por tanto, podemos afirmar analíticamente la exactitud de la aproximación. Además, podemos observar que el error se anula al llegar a t=0'25, momento en el que coincide la función aproximada por Euler con la función real. &lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Image:0.01.jpg|500px|thumb|left|Resultado de la intensidad del circuito RL simple por el método de Euler para h=0'01]] [[Image:error0.01.jpg|500px|thumb|center|Gráfica del error cometido en el cálculo de la intensidad por el método de Euler para h=0'01 ]]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br/&amp;gt; &amp;lt;br/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Una vez analizado el resultado anterior, resolvemos el problema con un paso mayor.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
{{matlab|codigo= %Resolucion por Euler&lt;br /&gt;
%Definimos las condiciones iniciales.&lt;br /&gt;
clear all&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=1;&lt;br /&gt;
&lt;br /&gt;
%Probamos con un paso de discretización mayor, h=0'05.&lt;br /&gt;
h=0.05;&lt;br /&gt;
t=t0:h:tN;&lt;br /&gt;
N=(tN-t0)/h;&lt;br /&gt;
&lt;br /&gt;
%Resolvemos la ecuación.&lt;br /&gt;
ii=0;&lt;br /&gt;
i(1)=ii;&lt;br /&gt;
for n=1:N;&lt;br /&gt;
  ii=ii+h*(100-25*ii);&lt;br /&gt;
  i(n+1)=ii;&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
%Creamos el dibujo.&lt;br /&gt;
figure(1)&lt;br /&gt;
plot(t,i,'-g','linewidth',2);&lt;br /&gt;
xlabel('Tiempo');&lt;br /&gt;
ylabel('Intensidad(t)');&lt;br /&gt;
axis([-0.1,1,0,5.1])&lt;br /&gt;
&lt;br /&gt;
%Calculo error y dibujamos.&lt;br /&gt;
r=4-4*exp(-25*t);&lt;br /&gt;
error=abs(r-i);&lt;br /&gt;
figure(2)&lt;br /&gt;
plot(t,error,'-r','linewidth',2)&lt;br /&gt;
axis([-0.1,1,-0.05,2.25])&lt;br /&gt;
xlabel('Tiempo');&lt;br /&gt;
ylabel('Error');&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br/&amp;gt;&lt;br /&gt;
Podemos observar que al aumentar el paso de discretización a 0'05 la aproximación de la curva se ha convertido en una combinación de rectas que asemejan la evolución de la intensidad, ya que sigue manteniendo una rápida subida inicial.  A pesar de ello, el error ha aumentado su valor en un 1000% en el periodo transitorio, pero vuelve a anularse en el permanente ya que a partir del punto de estabilización los valores aproximados coincide con los reales.El cambio producido en el incremento inicial de la intensidad se debe a la brevedad de éste, por lo que resulta poco preciso trabajar con pasos mayores.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
[[Image:0.05.jpg|500px|thumb|left|Resultado de la intensidad del circuito RL simple por el método de Euler para h=0'05 ]] [[Image:error0.05.jpg|500px|thumb|center| Gráfica del error cometido en el cálculo de la intensidad por el método de Euler para h=0'05]]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br/&amp;gt; &amp;lt;br/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Para estar más seguro de la afirmación hecha hace unos instantes, en la que hemos asegurado que es poco preciso trabajar con pasos mayores vamos a resolver y comparar en la misma gráfica el problema resuelto con distintos valores para la h, el paso.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br/&amp;gt;&lt;br /&gt;
{{matlab|codigo= &lt;br /&gt;
%Comparamos las gráficas con diferentes pasos y la función real.&lt;br /&gt;
clear all&lt;br /&gt;
&lt;br /&gt;
%Guardamos el valor para cada paso.&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=1;&lt;br /&gt;
h1=0.05;&lt;br /&gt;
t1=t0:h1:tN;&lt;br /&gt;
N1=(tN-t0)/h1;&lt;br /&gt;
h2=0.01;&lt;br /&gt;
t2=t0:h2:tN;&lt;br /&gt;
N2=(tN-t0)/h2;&lt;br /&gt;
h3=0.075;&lt;br /&gt;
t3=t0:h3:tN;&lt;br /&gt;
N3=(tN-t0)/h3;&lt;br /&gt;
&lt;br /&gt;
%Creamos un bucle para cada h y resolver las cuatro ecuaciones.&lt;br /&gt;
ii=0;&lt;br /&gt;
i(1)=ii;&lt;br /&gt;
for n=1:N1;&lt;br /&gt;
  ii=ii+h1*(100-25*ii);&lt;br /&gt;
  i(n+1)=ii;&lt;br /&gt;
end&lt;br /&gt;
yy=0;&lt;br /&gt;
y(1)=yy;&lt;br /&gt;
for m=1:N2;&lt;br /&gt;
  yy=yy+h2*(100-25*yy);&lt;br /&gt;
  y(m+1)=yy;&lt;br /&gt;
end&lt;br /&gt;
jj=0;&lt;br /&gt;
j(1)=jj;&lt;br /&gt;
for m=1:N3;&lt;br /&gt;
  jj=jj+h3*(100-25*jj);&lt;br /&gt;
  j(m+1)=jj;&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
%Hacemos el dibujo con todas las gráficas a la vez para hacer una comparación global de estas y la función real.&lt;br /&gt;
hold on &lt;br /&gt;
fplot('4-4*exp(-25*t2)',[0,1,0,5],'r');&lt;br /&gt;
plot(t1,i,'-b','linewidth',1);&lt;br /&gt;
plot(t2,y,'-y','linewidth',1);&lt;br /&gt;
plot(t3,j,'-g','linewidth',1);&lt;br /&gt;
legend('Función real','h=0.05', 'h=0.01', 'h=0.075');&lt;br /&gt;
title('Comparativa');&lt;br /&gt;
xlabel('Tiempo');&lt;br /&gt;
ylabel('Intensidad(t)');&lt;br /&gt;
axis([-0.1,1,-0.05,8])&lt;br /&gt;
hold off&lt;br /&gt;
&lt;br /&gt;
%Quitamos el paso mayor para ver con mayor exactitud como se difieren las aproximaciones más correctas.&lt;br /&gt;
figure (2)&lt;br /&gt;
hold on &lt;br /&gt;
fplot('4-4*exp(-25*t2)',[0,1,0,5],'r');&lt;br /&gt;
plot(t1,i,'-b','linewidth',1);&lt;br /&gt;
plot(t2,y,'-g','linewidth',1);&lt;br /&gt;
legend('Función real','h=0.05', 'h=0.01');&lt;br /&gt;
title('Comparativa');&lt;br /&gt;
xlabel('Tiempo');&lt;br /&gt;
ylabel('Intensidad(t)');&lt;br /&gt;
axis([0,0.5,-0.05,5])&lt;br /&gt;
hold off&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
Al ensayar con diferentes pasos de discretización vemos como la aproximación de la gráfica se va degenerando, hasta el punto en el que si se sobrepasa 0'05, la volatilidad de las oscilaciones llega a ser tal que la intensidad tarda un periodo sensiblemente mayor en estabilizarse y el error no se anula, ya que los valores son muy lejanos a los reales. Como la subida de intensidad se produce muy rápidamente, una h≥0'05 es, como podemos ver la imagen de la izquierda, muy poco precisa. Si se mantiene en el intervalo [0'02,0'05] se elimina la forma exponencial de la función (aparecen en su lugar fluctuaciones rectilíneas) pero se sigue reflejando la evolución de la intensidad hasta que se vuelve constante. Con un paso de 0'01, se consigue una gráfica exponencial con valores ligeramente superiores a los reales, por tanto podemos afirmar cuanto más pequeño sea el paso, más exacta y precisa será la aproximación ya que se trata de un aumento prácticamente instantáneo.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
[[Image:123456.jpg|500px|thumb|left|Comparativa de la función real con aproximaciones con diferentes pasos de discretización.]]&lt;br /&gt;
[[Image:Abbb.jpg|500px|thumb|center|Comparativa de la función real con aproximaciones con pasos de discretización más precisos.]]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== Método del Trapecio. ====&lt;br /&gt;
El método del trapecio se basa en aproximar una función imtegrando. Para ello utilizamos un número N de trapecios.&lt;br /&gt;
{{matlab|codigo= &lt;br /&gt;
%Resolucion por Trapecio.&lt;br /&gt;
%Definimos las condiciones iniciales.&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=1;&lt;br /&gt;
&lt;br /&gt;
%Al tratarse del método de trapecio podemos usar un paso más grande.&lt;br /&gt;
h=0.05;&lt;br /&gt;
t=t0:h:tN;&lt;br /&gt;
N=(tN-t0)/h;&lt;br /&gt;
i=zeros(1,N+1);&lt;br /&gt;
i(1)=0;&lt;br /&gt;
&lt;br /&gt;
%Resolvemos la ecuación.&lt;br /&gt;
for n=1:N;&lt;br /&gt;
    i(n+1)=((200*h)/(2+25*h))+(i(n)*((2-25*h)/(2+25*h)));&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
%Dibujamos.&lt;br /&gt;
figure (1)&lt;br /&gt;
plot(t,i,'-r','linewidth',2)&lt;br /&gt;
xlabel('Tiempo')&lt;br /&gt;
ylabel('Intensidad(t)')&lt;br /&gt;
axis([0,1,-0.05,4.25])&lt;br /&gt;
&lt;br /&gt;
%Cambiamos los ejes del dibujo y añadimos líneas auxiliares para poder ver con mayor &lt;br /&gt;
%precisión el punto en el que la intensidad se hace constante.&lt;br /&gt;
figure (2)&lt;br /&gt;
plot(t,i,'-b','linewidth',2)&lt;br /&gt;
xlabel('Tiempo')&lt;br /&gt;
ylabel('Intensidad(t)')&lt;br /&gt;
axis([0,0.4,2,4.1])&lt;br /&gt;
grid on&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Image:Trapecio3a.jpg|450px|thumb|left|Resultado de la intensidad del circuito RL simple por el método del trapecio.]]&lt;br /&gt;
[[Image:Trapecio3a11.jpg|450px|thumb|center|Visualización del punto en que se hace constante la intensidad.]]&lt;br /&gt;
&amp;lt;br/&amp;gt;&amp;lt;br/&amp;gt;&lt;br /&gt;
La representación de la función por el método del Trapecio nos permite utilizar un paso de discretización mayor quedando como resultado una aproximación muy similar a la original (podemos observar ésto en la imagen de la izquierda).&lt;br /&gt;
Una ampliación de dicha aproximación nos permite ver con exactitud el punto en el cual la intensidad se hace constante,(0'25,4), es decir t=0'25 e i(t)=4.&lt;br /&gt;
 &amp;lt;br/&amp;gt;&lt;br /&gt;
===== Efectos en la función al variar la constante de inductor. =====&lt;br /&gt;
Se ha estudiado las alteraciones producidas en la función cuando se disminuye o aumenta la constante del inductor, L. A continuación se muestran las gráficas resultantes al modificar dicho valor.&lt;br /&gt;
{{matlab|codigo= %Resolucion por Trapecio.&lt;br /&gt;
%Definimos las condiciones iniciales.&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=1;&lt;br /&gt;
h=0.05;&lt;br /&gt;
t=t0:h:tN;&lt;br /&gt;
N=(tN-t0)/h;&lt;br /&gt;
i=zeros(N+1);&lt;br /&gt;
i(1)=0;&lt;br /&gt;
&lt;br /&gt;
%Cambiamos la L y resolvemos su ecuación correspondiente.&lt;br /&gt;
L=3.2;&lt;br /&gt;
for n=1:N;&lt;br /&gt;
    i(n+1)=((40*h)/(2*L+5*h))+i(n)*((2*L-5*h)/(2*L+5*h));&lt;br /&gt;
end&lt;br /&gt;
figure (1)&lt;br /&gt;
plot(t,i,'-b','linewidth',2)&lt;br /&gt;
xlabel('Tiempo')&lt;br /&gt;
ylabel('Intensidad(t)')&lt;br /&gt;
title('L=3.2')&lt;br /&gt;
grid on&lt;br /&gt;
&lt;br /&gt;
%Cambiamos la L y resolvemos su ecuación correspondiente.&lt;br /&gt;
y=zeros(N+1);&lt;br /&gt;
y(1)=0;&lt;br /&gt;
L=0.8;&lt;br /&gt;
for m=1:N;&lt;br /&gt;
    y(m+1)=((40*h)/(2*L+5*h))+y(m)*((2*L-5*h)/(2*L+5*h));&lt;br /&gt;
end&lt;br /&gt;
figure (2)&lt;br /&gt;
plot(t,y,'-r','linewidth',2)&lt;br /&gt;
xlabel('Tiempo')&lt;br /&gt;
ylabel('Intensidad(t)')&lt;br /&gt;
title('L=0.8')&lt;br /&gt;
grid on&lt;br /&gt;
&lt;br /&gt;
%Cambiamos la L y resolvemos su ecuación correspondiente.&lt;br /&gt;
j=zeros(N+1);&lt;br /&gt;
j(1)=0;&lt;br /&gt;
L=0.05;&lt;br /&gt;
for o=1:N;&lt;br /&gt;
    j(o+1)=((40*h)/(2*L+5*h))+j(o)*((2*L-5*h)/(2*L+5*h));&lt;br /&gt;
end&lt;br /&gt;
figure (3)&lt;br /&gt;
plot(t,j,'-g','linewidth',2)&lt;br /&gt;
xlabel('Tiempo')&lt;br /&gt;
ylabel('Intensidad(t)')&lt;br /&gt;
title('L=0.05')&lt;br /&gt;
grid on&lt;br /&gt;
&lt;br /&gt;
%Cambiamos la L y resolvemos su ecuación correspondiente.&lt;br /&gt;
k=zeros(N+1);&lt;br /&gt;
k(1)=0;&lt;br /&gt;
L=0.0125;&lt;br /&gt;
for l=1:N;&lt;br /&gt;
    k(l+1)=((40*h)/(2*L+5*h))+k(l)*((2*L-5*h)/(2*L+5*h));&lt;br /&gt;
end&lt;br /&gt;
figure (4)&lt;br /&gt;
plot(t,k,'-c','linewidth',2)&lt;br /&gt;
xlabel('Tiempo')&lt;br /&gt;
ylabel('Intensidad(t)')&lt;br /&gt;
title('L=0.0125')&lt;br /&gt;
grid on&lt;br /&gt;
}}&lt;br /&gt;
&amp;lt;br/&amp;gt;&lt;br /&gt;
*Como podemos observar a medida que incrementamos el valor de L, se acentúa la 'exponencialidad' de la función hasta llegar a aproximarse a una recta. A medida que aumenta el parecido a una recta, el tiempo de estabilización se extiende por ser la inductancia mayor, así como el valor de la intensidad cuando es constante.&lt;br /&gt;
*De igual forma al reducirlo, la subida de la intensidad hasta llegar a una cifra constante es mucho mayor, aumenta el periodo transitorio, pero de forma más moderada que en los casos anteriores y manteniendo la constancia en i(t)=4; sin embargo, la función deja de ser exponencial convirtiéndose en fluctuaciones de rectas que van reduciendo su volatilidad con el paso del tiempo.&lt;br /&gt;
[[Image:3.2.jpg|400px|thumb|left|L=3'2.]]&lt;br /&gt;
[[Image:0.8.jpg|400px|thumb|center|L=0'8.]]&lt;br /&gt;
&amp;lt;br/&amp;gt;&lt;br /&gt;
[[Image:0.0125.jpg|400px|thumb|left|L=0'0125.]]&lt;br /&gt;
[[Image:0.051.jpg|400px|thumb|center|L=0'5.]]&lt;br /&gt;
&amp;lt;br/&amp;gt;&amp;lt;br/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Leyes de Kirchhoff ==&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Circuito 2 completo.jpg|300px|thumb|left| Circuito RL de varias resistencias y bobinas ]]&lt;br /&gt;
&lt;br /&gt;
Según las  leyes de Kirchhoff, el sistema de ecuaciones diferenciales correspondiente al circuito 2 es el siguiente:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\left\{\begin{matrix}\ [1] E(t) = R_1\cdot i_1(t) + L_2\cdot \frac{d}{dt}\cdot i_2(t) + R_2\cdot i_2(t)\\ [2] E(t) = R_1\cdot i_1(t) + L_1\cdot \frac{d}{dt}\cdot i_3(t) + R_3\cdot i_3(t)\\ [3] i_1(t) = i_2(t) + i_3(t)\end{matrix}\right.&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''[1]'''Correspondiente al recorrido exterior del circuito.&amp;lt;br/&amp;gt;&lt;br /&gt;
'''[2]'''Correspondiente a la malla izquierda, (malla 1).&amp;lt;br/&amp;gt;&lt;br /&gt;
'''[3]'''Correspondiente al nudo de la parte superior del circuito(Ley de corrientes de Kirchhoff).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Sustituyendo la tercera ecuación en las otras dos, se obtiene el sistema en términos de i2(t) e i3(t) matricialmente::&amp;lt;math&amp;gt;\frac{d}{dt}\cdot \begin{pmatrix} i_2\\i_3 \end{pmatrix} = - \begin{pmatrix} \frac{R_1+R_2}{L_2}&amp;amp;\frac{R_1}{L_2} \\ \frac{R_1}{L_1}&amp;amp;\frac{R_1+R_3}{L_1}\end{pmatrix} \cdot \begin{pmatrix} i_2\\i_3 \end{pmatrix} + \begin{pmatrix} \frac{E}{L_2} \\ \frac{E}{L_1} \end{pmatrix}&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
A partir de las condiciones iniciales i2(0)=i3(0)=0 se puede interpretar que la corriente en el circuito es nula en el momento  en el cual se conecta el generador.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== Cálculo de las intensidades de un circuito con varias resistencias y bobinas a partir del Método de Euler y del Trapecio. ====&lt;br /&gt;
Ya se ha visto que la expresión de las intensidades i2 e i3 de este circuito RL vienen dadas por dos ecuaciones diferenciales que conforman un sistema. Este sistema de ecuaciones diferenciales se puede resolver numéricamente a partir del método de Euler y del trapecio, los cuales se basan en la aproximación de las áreas de esa ecuación diferencial al valor real de la función en cada momento.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Partiendo de unos datos iniciales iguales a:&lt;br /&gt;
&lt;br /&gt;
'''&amp;lt;math&amp;gt; R_1=R_2=6Ω &amp;lt;/math&amp;gt;''' , '''&amp;lt;math&amp;gt; R_3=3Ω &amp;lt;/math&amp;gt;''' , '''&amp;lt;math&amp;gt; L_1=0,3Hz &amp;lt;/math&amp;gt;''' , '''&amp;lt;math&amp;gt; L_2=0,11Hz &amp;lt;/math&amp;gt;''' y '''&amp;lt;math&amp;gt; E(t)=20 V &amp;lt;/math&amp;gt;'''&lt;br /&gt;
&lt;br /&gt;
 :&amp;lt;math&amp;gt;\frac{d}{dt}\cdot \begin{pmatrix} i_2\\i_3 \end{pmatrix} = - \begin{pmatrix} \frac{6+6}{0,11}&amp;amp;\frac{6}{0,11} \\ \frac{6}{0,3}&amp;amp;\frac{6+3}{0,3}\end{pmatrix} \cdot \begin{pmatrix} i_2\\i_3 \end{pmatrix} + \begin{pmatrix} \frac{20}{0,11} \\ \frac{20}{0,3} \end{pmatrix}&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
Resolvemos las ecuaciones diferenciales:&lt;br /&gt;
&lt;br /&gt;
* ''' MÉTODO DE EULER: '''&lt;br /&gt;
'''OCTAVE'''&lt;br /&gt;
{{matlab|codigo= &lt;br /&gt;
DATOS:&lt;br /&gt;
&lt;br /&gt;
clc;clear all;&lt;br /&gt;
    %t0=tiempo inicial&lt;br /&gt;
t0=0;&lt;br /&gt;
    %tN=tiempo máximo a evaluar&lt;br /&gt;
tN=0.04;&lt;br /&gt;
    %soluciones en y0 para las variables i2 e i3&lt;br /&gt;
y0=0;&lt;br /&gt;
    %N=intervalos en los que se dividen&lt;br /&gt;
N=25;&lt;br /&gt;
    %h=salto de intervalo en intervalo&lt;br /&gt;
h=(tN-t0)/N;&lt;br /&gt;
    %i1,i2,i3=vectores solución desde t0 a tN de h en h&lt;br /&gt;
i1=t0:h:tN;&lt;br /&gt;
&lt;br /&gt;
i2=t0:h:tN;&lt;br /&gt;
&lt;br /&gt;
i3=t0:h:tN;&lt;br /&gt;
&lt;br /&gt;
    %y=vector de ceros y que va a almacenar las soluciones.Tendrá N+1 términos porque el primero es el cero y el ultimo el N&lt;br /&gt;
    %la intensidad dos es y(:,1),es decir, la fila 1.&lt;br /&gt;
    %la intensidad tres es y(:,2),es decir, la fila 2.&lt;br /&gt;
    %la intensidad uno es y(:,3),es decir, la fila 3.&lt;br /&gt;
y=zeros(N+1,3);&lt;br /&gt;
y(1,1)=y0;&lt;br /&gt;
y(1,2)=y0;&lt;br /&gt;
y(1,3)=y0;&lt;br /&gt;
%AHORA SE EMPIEZA A RESOLVER POR EULER EL SISTEMA.&lt;br /&gt;
%y(n+1)=y(n)+h*f(t(n),y(n))&lt;br /&gt;
%f(t,i2)=((E/L2)-R1*(i2+i3)+R2*i2)/L2&lt;br /&gt;
%f(t,i3)=((E/L1)-R1*(i2+i3)+R3*i3)/L1&lt;br /&gt;
for n=1:N&lt;br /&gt;
    y(n+1,1)=y(n,1)+h*((20/0.11)-(6*(y(n,1)+y(n,2))+6*y(n,1))/0.11);&lt;br /&gt;
    y(n+1,2)=y(n,2)+h*((20/0.3)-(6*(y(n,1)+y(n,2))+3*y(n,2))/0.3);&lt;br /&gt;
    y(n+1,3)=y(n+1,1)+y(n+1,2);&lt;br /&gt;
end&lt;br /&gt;
hold on&lt;br /&gt;
plot(i1,y(:,3),'+')&lt;br /&gt;
plot(i2,y(:,1),'r+')&lt;br /&gt;
plot(i3,y(:,2),'g+')&lt;br /&gt;
xlabel('Tiempo');&lt;br /&gt;
ylabel('Intensidad(t)');&lt;br /&gt;
legend('i1', 'i2', 'i3');&lt;br /&gt;
grid on&lt;br /&gt;
}}&lt;br /&gt;
* ''' MÉTODO DEL TRAPECIO: '''&lt;br /&gt;
'''OCTAVE'''&lt;br /&gt;
{{matlab|codigo= &lt;br /&gt;
DATOS:&lt;br /&gt;
clc;clear all;&lt;br /&gt;
    %tiempo inicial&lt;br /&gt;
t0=0;&lt;br /&gt;
    %tiempo máximo a evaluar&lt;br /&gt;
tN=0.04;&lt;br /&gt;
    %soluciones en y0 para las variables i2 e i3&lt;br /&gt;
y0=0;&lt;br /&gt;
    %intervalos en los que se dividen&lt;br /&gt;
N=25;&lt;br /&gt;
	%salto de intervalo en intervalo&lt;br /&gt;
h=(tN-t0)/N;&lt;br /&gt;
    %vectores solución desde t0 a tN de h en h&lt;br /&gt;
i1=t0:h:tN;&lt;br /&gt;
i2=t0:h:tN;&lt;br /&gt;
i3=t0:h:tN;&lt;br /&gt;
    %vector de ceros y que va a almacenar las soluciones&lt;br /&gt;
    %tendra N+1 términos porque el primero es el cero y el ultimo el N&lt;br /&gt;
    %la intensidad dos es y(:,1)&lt;br /&gt;
    %la intensidad tres es y(:,2)&lt;br /&gt;
    %la intensidad uno es y(:,3)&lt;br /&gt;
y=zeros(N+1,3);&lt;br /&gt;
y(1,1)=y0;&lt;br /&gt;
y(1,2)=y0;&lt;br /&gt;
y(1,3)=y0;&lt;br /&gt;
PARA RESOLVER POR EL MÉTODO DEL TRAPECIO:&lt;br /&gt;
%y(n+1)=y(n)+(h/2)*(f(t(n),y(n)+f(t(n+1),y(n+1))&lt;br /&gt;
%f(t,i2)=((E/L2)-R1*(i2+i3)+R2*i2)/L2&lt;br /&gt;
%f(t,i3)=((E/L1)-R1*(i2+i3)+R3*i3)/L1&lt;br /&gt;
for n=1:N&lt;br /&gt;
    y(n+1,1)=y(n,1)+(h/2)*(((20/0.11)-(6*(y(n,1)+y(n,2))+6*y(n,1))/0.11)+((20/0.11)-(6*(y(n+1,1)+y(n+1,2))+6*y(n+1,1))/0.11));&lt;br /&gt;
    y(n+1,2)=y(n,2)+(h/2)*(((20/0.3)-(6*(y(n,1)+y(n,2))+3*y(n,2))/0.3)+((20/0.3)-(6*(y(n+1,1)+y(n+1,2))+3*y(n+1,2))/0.3));  &lt;br /&gt;
    y(n+1,3)=y(n+1,1)+y(n+1,2);&lt;br /&gt;
end&lt;br /&gt;
plot(i1,y(:,3))&lt;br /&gt;
plot(i2,y(:,1),'r')&lt;br /&gt;
plot(i3,y(:,2),'g')&lt;br /&gt;
xlabel('Tiempo');&lt;br /&gt;
ylabel('Intensidad(t)');&lt;br /&gt;
hold off&lt;br /&gt;
}}&lt;br /&gt;
&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
[[Archivo:Resoct.png|800px|thumb|centre|Gráfica del resultado del Método de Euler y Trapecio en el cálculo de las intensidades.]]&lt;br /&gt;
&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''En el resultado de la gráfica, lo obtenido con el método de Euler se representa con los símbolos &amp;quot;+&amp;quot;, mientras que la línea continua corresponde al Método del Trapecio. Como se puede apreciar, ambos métodos dan resultados similares y muy próximos. En la interpretación de los resultados, diríamos que se trata de corrientes muy estables.'''&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
====Variación de las intensidades de un circuito RL cuando se altera el valor de una de las resistencias.====&lt;br /&gt;
Ahora vamos a analizar como afecta la variación del módulo de una resistencia (se incrementa, '''&amp;lt;math&amp;gt; R_3=3Ω &amp;lt;/math&amp;gt;''' pasa a valer '''&amp;lt;math&amp;gt; R_3=9Ω &amp;lt;/math&amp;gt;''') en las intensidades del circuito.&lt;br /&gt;
Nuestro análisis se realizará sustituyendo el nuevo valor en el mismo sistema, y se resolverá por el método de Euler y Trapecio comparando en una gráfica los resultados con los obtenidos anteriormente.&lt;br /&gt;
&lt;br /&gt;
* ''' MÉTODO DE EULER: '''&lt;br /&gt;
'''OCTAVE'''&lt;br /&gt;
{{matlab|codigo= &lt;br /&gt;
%DATOS:&lt;br /&gt;
clc;clear all;&lt;br /&gt;
    %tiempo inicial&lt;br /&gt;
t0=0;&lt;br /&gt;
    %tiempo máximo a evaluar&lt;br /&gt;
tN=0.04;&lt;br /&gt;
    %soluciones en y0 para las variables i2 e i3&lt;br /&gt;
y0=0;&lt;br /&gt;
    %intervalos en los que se dividen&lt;br /&gt;
N=25;&lt;br /&gt;
	%salto de intervalo en intervalo&lt;br /&gt;
h=(tN-t0)/N;&lt;br /&gt;
    %vectores solución desde t0 a tN de h en h&lt;br /&gt;
i1=t0:h:tN;&lt;br /&gt;
i2=t0:h:tN;&lt;br /&gt;
i3=t0:h:tN;&lt;br /&gt;
    %vector de ceros y que va a almacenar las soluciones&lt;br /&gt;
    %tendra N+1 términos porque el primero es el cero y el ultimo el N&lt;br /&gt;
    %la intensidad dos es y(:,1)&lt;br /&gt;
    %la intensidad tres es y(:,2)&lt;br /&gt;
    %la intensidad uno es y(:,3)&lt;br /&gt;
y=zeros(N+1,3);&lt;br /&gt;
y(1,1)=y0;&lt;br /&gt;
y(1,2)=y0;&lt;br /&gt;
y(1,3)=y0;&lt;br /&gt;
%PARA RESOLVER POR EULER EL SISTEMA:&lt;br /&gt;
%y(n+1)=y(n)+h*f(t(n),y(n))&lt;br /&gt;
%f(t,i2)=((E/L2)-R1*(i2+i3)+R2*i2)/L2&lt;br /&gt;
%f(t,i3)=((E/L1)-R1*(i2+i3)+R3*i3)/L1&lt;br /&gt;
for n=1:N&lt;br /&gt;
    y(n+1,1)=y(n,1)+h*((20/0.11)-(6*(y(n,1)+y(n,2))+6*y(n,1))/0.11);&lt;br /&gt;
    y(n+1,2)=y(n,2)+h*((20/0.3)-(6*(y(n,1)+y(n,2))+9*y(n,2))/0.3);&lt;br /&gt;
    y(n+1,3)=y(n+1,1)+y(n+1,2);&lt;br /&gt;
end&lt;br /&gt;
hold on&lt;br /&gt;
plot(i1,y(:,3),'c+')&lt;br /&gt;
plot(i2,y(:,1),'m+')&lt;br /&gt;
plot(i3,y(:,2),'k+')&lt;br /&gt;
}}&lt;br /&gt;
* ''' MÉTODO DEL TRAPECIO: '''&lt;br /&gt;
'''OCTAVE'''&lt;br /&gt;
{{matlab|codigo= &lt;br /&gt;
%DATOS:&lt;br /&gt;
clc;clear all;&lt;br /&gt;
    %tiempo inicial&lt;br /&gt;
t0=0;&lt;br /&gt;
    %tiempo máximo a evaluar&lt;br /&gt;
tN=0.04;&lt;br /&gt;
    %soluciones en y0 para las variables i2 e i3&lt;br /&gt;
y0=0;&lt;br /&gt;
    %intervalos en los que se dividen&lt;br /&gt;
N=25;&lt;br /&gt;
	%salto de intervalo en intervalo&lt;br /&gt;
h=(tN-t0)/N;&lt;br /&gt;
    %vectores solución desde t0 a tN de h en h&lt;br /&gt;
i1=t0:h:tN;&lt;br /&gt;
i2=t0:h:tN;&lt;br /&gt;
i3=t0:h:tN;&lt;br /&gt;
    %vector de ceros y que va a almacenar las soluciones&lt;br /&gt;
    %tendra N+1 términos porque el primero es el cero y el ultimo el N&lt;br /&gt;
    %la intensidad dos es y(:,1)&lt;br /&gt;
    %la intensidad tres es y(:,2)&lt;br /&gt;
    %la intensidad uno es y(:,3)&lt;br /&gt;
y=zeros(N+1,3);&lt;br /&gt;
y(1,1)=y0;&lt;br /&gt;
y(1,2)=y0;&lt;br /&gt;
y(1,3)=y0;&lt;br /&gt;
%PARA RESOLVER POR EL MÉTODO DEL TRAPECIO:&lt;br /&gt;
%y(n+1)=y(n)+(h/2)*(f(t(n),y(n)+f(t(n+1),y(n+1))&lt;br /&gt;
%f(t,i2)=((E/L2)-R1*(i2+i3)+R2*i2)/L2&lt;br /&gt;
%f(t,i3)=((E/L1)-R1*(i2+i3)+R3*i3)/L1&lt;br /&gt;
for n=1:N&lt;br /&gt;
    y(n+1,1)=y(n,1)+(h/2)*(((20/0.11)-(6*(y(n,1)+y(n,2))+6*y(n,1))/0.11)+((20/0.11)-(6*(y(n+1,1)+y(n+1,2))+6*y(n+1,1))/0.11));&lt;br /&gt;
    y(n+1,2)=y(n,2)+(h/2)*(((20/0.3)-(6*(y(n,1)+y(n,2))+9*y(n,2))/0.3)+((20/0.3)-(6*(y(n+1,1)+y(n+1,2))+9*y(n+1,2))/0.3));  &lt;br /&gt;
    y(n+1,3)=y(n+1,1)+y(n+1,2);&lt;br /&gt;
end&lt;br /&gt;
plot(i1,y(:,3),'c')&lt;br /&gt;
plot(i2,y(:,1),'m')&lt;br /&gt;
plot(i3,y(:,2),'k')&lt;br /&gt;
hold off&lt;br /&gt;
}}&lt;br /&gt;
[[Image:Resultado.png|500px|thumb|left|Gráfica de la intensidad del circuito RL compuesto tras incrementar una de sus resistencias ]]&lt;br /&gt;
[[Archivo:Resoct.png|500px|thumb|right|Gráfica del resultado del Método de Euler y Trapecio en el cálculo de las intensidades sin incrementar.]]&lt;br /&gt;
[[Image:Grafica comparativa 5y6 (1).jpg|1400px|thumb|centre|Gráfica comparativa de las intensidades de un circuito RL intensidades incrementadas y sin incrementar. ]]&lt;br /&gt;
'''De nuevo, las cruces + corresponderían a lo obtenido por el método de Euler y la línea continua al Método del trapecio. En la gráfica superpuesta se observa el resultado final de la comparativa: frente a resistencias menores las intensidades resultan mayores, y viceversa. Esto se justifica gracias a la Ley de Ohm que establece '''&amp;lt;math&amp;gt; V=I*R&amp;lt;/math&amp;gt;''' de manera que la intensidad y resistencia son inversamente proporcionales, y si una se incrementa, la otra decrece: '''&amp;lt;math&amp;gt; I=V/R&amp;lt;/math&amp;gt;''', '''&amp;lt;math&amp;gt; R=V/I&amp;lt;/math&amp;gt;'''. '''&lt;br /&gt;
&lt;br /&gt;
== Resolución de un problema de valor inicial en otro punto ==&lt;br /&gt;
==== Cálculo de las intensidades en un punto (el inicial) a partir de un valor inicial en un punto distinto al origen. ====&lt;br /&gt;
&lt;br /&gt;
Esta vez vamos a calcular el valor concreto de un punto de una función, que hemos definido tras resolver una ecuación diferencial. Nuestra función será la que define las intensidades de un circuito RL compuesto. En la resolución de la ecuación diferencial que relaciona las derivadas con la función, procederemos de nuevo tratándolo como un problema de valor inicial; a pesar de que no sea un valor en el punto de origen el que tengamos por dato, sino un valor de '''&amp;lt;math&amp;gt; i_2 &amp;lt;/math&amp;gt;''' e '''&amp;lt;math&amp;gt; i_3 &amp;lt;/math&amp;gt;''' en el tiempo '''&amp;lt;math&amp;gt; t=0,02  &amp;lt;/math&amp;gt;'''. Serán precisamente estos valores en el origen los que calculemos. De nuevo, utilizaremos el segundo circuito expuesto en este artículo (sin incrementar resistencias):&lt;br /&gt;
[[Archivo:Circuito 2 completo.jpg|300px|thumb|left|Circuito RL compuesto ]]&lt;br /&gt;
&lt;br /&gt;
 :&amp;lt;math&amp;gt;\frac{d}{dt}\cdot \begin{pmatrix} i_2\\i_3 \end{pmatrix} = - \begin{pmatrix} \frac{6+6}{0,11}&amp;amp;\frac{6}{0,11} \\ \frac{6}{0,3}&amp;amp;\frac{6+3}{0,3}\end{pmatrix} \cdot \begin{pmatrix} i_2\\i_3 \end{pmatrix} + \begin{pmatrix} \frac{20}{0,11} \\ \frac{20}{0,3} \end{pmatrix}&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''&amp;lt;math&amp;gt; R_1=R_2=6Ω &amp;lt;/math&amp;gt;''' , '''&amp;lt;math&amp;gt; R_3=3Ω &amp;lt;/math&amp;gt;''' , '''&amp;lt;math&amp;gt; L_1=0,3Hz &amp;lt;/math&amp;gt;''' , '''&amp;lt;math&amp;gt; L_2=0,11Hz &amp;lt;/math&amp;gt;''' y '''&amp;lt;math&amp;gt; E(t)=20 V &amp;lt;/math&amp;gt;'''.&lt;br /&gt;
&lt;br /&gt;
Nuestros valores iniciales '''&amp;lt;math&amp;gt; i_2(0,02)=i_3(0,02)=1A &amp;lt;/math&amp;gt;'''&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Buscamos '''&amp;lt;math&amp;gt; i_1(t),i_2(t),i_3(t) &amp;lt;/math&amp;gt;'''.&lt;br /&gt;
&lt;br /&gt;
Resolvemos por el método de Euler:&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo= &lt;br /&gt;
%DATOS:&lt;br /&gt;
clc;clear all;&lt;br /&gt;
    %tiempo inicial&lt;br /&gt;
t0=0.02;&lt;br /&gt;
    %tiempo a evaluar&lt;br /&gt;
tN=0;&lt;br /&gt;
    %soluciones en y0.02 para las variables i2 e i3&lt;br /&gt;
y02=1;&lt;br /&gt;
    %&lt;br /&gt;
N=100000;&lt;br /&gt;
	%salto de intervalo en intervalo&lt;br /&gt;
h=(tN-t0)/N;&lt;br /&gt;
    %vectores solución desde t0 a tN de h en h&lt;br /&gt;
i1=t0:h:tN;&lt;br /&gt;
i2=t0:h:tN;&lt;br /&gt;
i3=t0:h:tN;&lt;br /&gt;
    %vector de ceros y que va a almacenar las soluciones&lt;br /&gt;
    %tendra N+1 términos porque el primero es el cero y el ultimo el N&lt;br /&gt;
    %la intensidad dos es y(:,1)&lt;br /&gt;
    %la intensidad tres es y(:,2)&lt;br /&gt;
    %la intensidad uno es y(:,3)&lt;br /&gt;
y=zeros(N+1,3);&lt;br /&gt;
y(1,1)=y02;&lt;br /&gt;
y(1,2)=y02;&lt;br /&gt;
y(1,3)=2;&lt;br /&gt;
%RESOLVEMOS POR EULER EL SISTEMA:&lt;br /&gt;
%y(n+1)=y(n)+h*f(t(n),y(n))&lt;br /&gt;
%f(t,i2)=((E/L2)-R1*(i2+i3)+R2*i2)/L2&lt;br /&gt;
%f(t,i3)=((E/L1)-R1*(i2+i3)+R3*i3)/L1&lt;br /&gt;
for n=1:N&lt;br /&gt;
    y(n+1,1)=y(n,1)+h*((20/0.11)-(6*(y(n,1)+y(n,2))+6*y(n,1))/0.11);&lt;br /&gt;
    y(n+1,2)=y(n,2)+h*((20/0.3)-(6*(y(n,1)+y(n,2))+3*y(n,2))/0.3);&lt;br /&gt;
    y(n+1,3)=y(n+1,1)+y(n+1,2);&lt;br /&gt;
end&lt;br /&gt;
intensidad1=y(N+1,3)&lt;br /&gt;
intensidad2=y(N+1,1)&lt;br /&gt;
intensidad3=y(N+1,2)&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
'''Los resultados obtenidos:'''&lt;br /&gt;
[[Archivo:Intens.png|600px|thumb|centre|Valores de las intensidades para t=0]]&lt;br /&gt;
&lt;br /&gt;
Así se prueba la eficacia de estas aproximaciones numéricas no sólo al trazar gráficas, sino también para dar valores concretos de la función en los puntos que se quiera.&lt;br /&gt;
&lt;br /&gt;
[[Categoría:Ecuaciones Diferentiales]]&lt;br /&gt;
[[Categoría:ED13/14]]&lt;br /&gt;
[[Categoría:Trabajos 2013-14]]&lt;/div&gt;</summary>
		<author><name>Lucia Lopez</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Circuitos_RL_(grupo_B)&amp;diff=9674</id>
		<title>Circuitos RL (grupo B)</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Circuitos_RL_(grupo_B)&amp;diff=9674"/>
				<updated>2014-03-04T10:31:33Z</updated>
		
		<summary type="html">&lt;p&gt;Lucia Lopez: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{ TrabajoED | Circuitos RL. Grupo 2-B | [[:Categoría:Ecuaciones Diferenciales|Ecuaciones Diferenciales]]|[[:Categoría:ED13/14|Curso 2013-14]] | Diego Solano López,Lucia López Sánchez,Adela González Barbado,Araceli Martín Candilejo,Ignacio Díaz Caneja Camblor,Alberto Fernández Pérez }}&lt;br /&gt;
&lt;br /&gt;
El circuito eléctrico mas simple esta compuesto de una resistencia, un inductor o bobina y una fuente de alimentación.&lt;br /&gt;
* En una resistencia R, la Ley de Ohm establece:&lt;br /&gt;
&lt;br /&gt;
  &amp;lt;math&amp;gt;i(t)={V(t)\over R}&amp;lt;/math&amp;gt;&lt;br /&gt;
* En un inductor L la Ley de Faraday dice:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; V(t)=L\cdot i'(t)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
Las leyes de Kirchhoff establecen el comportamiento de los circuitos:&lt;br /&gt;
# '''Ley de corriente:''' en cada nudo la suma de corrientes que entra coincide con la suma de corrientes que sale.&lt;br /&gt;
# '''Ley de tensiones:''' en cada ciclo cerrado, la suma de las diferencias de potencial eléctrico es nula.&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Segunda ley de Kirchhoff ==&lt;br /&gt;
==== Ecuación diferencial-Resolución y representación analítica.====&lt;br /&gt;
Basándonos en la segunda ley de Kirchhoff sobre el circuito que observamos en la imagen, podemos trabajar con la siguiente ecuación diferencial.&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;math&amp;gt; i'(t)+{R\over L}i(t)-{V(t)\over L}=0 &amp;lt;/math&amp;gt; [[Image:cicuito1.jpg|300px|thumb|right|Circuito RL simple ]]&lt;br /&gt;
&lt;br /&gt;
Al suponer que en el instante t=0 el circuito está abierto, podemos establecer para el problema de Cauchy el valor inicial '''&amp;lt;math&amp;gt; i_0(t)=0 &amp;lt;/math&amp;gt;'''. Considerando que la alimentación posee un voltaje constante '''V(t)=20V, L=0.2 y R=5Ω''', llegamos al problema:&lt;br /&gt;
&lt;br /&gt;
                              &amp;lt;math&amp;gt;\left\{\begin{matrix}\ i'(t)+{25}i(t)-{100}=0 \\i(0)=0\end{matrix}\right.&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
La resolución de éste mediante &amp;lt;math&amp;gt;i \cdot e^{\int{\frac{R}{L}dt}} = \int{e^{\frac{R \cdot t}{L}}dt} \hspace{0.5cm} \rightarrow \hspace{0.5cm} &amp;lt;/math&amp;gt; &lt;br /&gt;
&amp;lt;math&amp;gt;i \cdot e^{\frac{R \cdot t}{L}} = \frac{V}{R}e^{\frac{R \cdot t}{L}}+C&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt; nos da:&lt;br /&gt;
 &amp;lt;math&amp;gt; i(t)=4-4e^{-25t} &amp;lt;/math&amp;gt;&lt;br /&gt;
La gráfica de la función nos muestra la evolución de la intensidad. En ella se puede apreciar una rápida subida en los primeros instantes que se ralentiza hasta llegar a ser prácticamente constante con un valor de 4. Por lo que podemos afirmar que la intensidad se estabiliza en un corto periodo de tiempo.&lt;br /&gt;
[[Image:Funcion.jpg|500px|thumb|center|Gráfica de la intensidad en un circuito RL simple ]]&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo= &lt;br /&gt;
fplot('4-4*exp(-25*t)',[0,0.5,0,5]);&lt;br /&gt;
xlabel('Tiempo')&lt;br /&gt;
ylabel('Intensidad(t)')&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
==== Método de Euler. ====&lt;br /&gt;
Este método parte de la posibilidad de aproximar una función original mediante rectas tangentes partiendo de un punto dado. Sabiendo que la recta tangente de una función en un punto es su derivada en dicho punto, este método consiste en calcularse derivadas de la función en diferentes puntos pertenecientes a dicha función. Estos puntos serán tomados con la misma frecuencia a lo largo de la recta, a esta frecuencia la denominamos paso. &lt;br /&gt;
&lt;br /&gt;
A continuación, vamos a calcular la función por el método de Euler, resolviendo la ecuación con diferentes pasos. De esta forma, podremos observar y analizar los distintos resultados obtenidos al modificar los pasos, hasta que lleguemos a una conclusión evidente. Además calcularemos el error cometido por la aproximación del método para ser más precios en nuestras observaciones.&lt;br /&gt;
&lt;br /&gt;
Comenzamos a analizar este método elaborando un programa con un paso de 0.01, que podemos visualizar a continuación.&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo= &lt;br /&gt;
%Definimos las condiciones iniciales.&lt;br /&gt;
clear all&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=1;&lt;br /&gt;
&lt;br /&gt;
%Establecemos un paso h=0'01.&lt;br /&gt;
h=0.01;&lt;br /&gt;
t=t0:h:tN;&lt;br /&gt;
N=(tN-t0)/h;&lt;br /&gt;
&lt;br /&gt;
%Resolvemos la ecuación.&lt;br /&gt;
ii=0;&lt;br /&gt;
i(1)=ii;&lt;br /&gt;
for n=1:N;&lt;br /&gt;
  ii=ii+h*(100-25*ii);&lt;br /&gt;
  i(n+1)=ii;&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
%Dibujamos la gráfica.&lt;br /&gt;
figure(1)&lt;br /&gt;
plot(t,i,'-g','linewidth',2);&lt;br /&gt;
xlabel('Tiempo');&lt;br /&gt;
ylabel('Intensidad(t)');&lt;br /&gt;
axis([-0.1,1,0,5])&lt;br /&gt;
&lt;br /&gt;
%Calculo error y lo dibujamos.&lt;br /&gt;
r=4-4*exp(-25*t);&lt;br /&gt;
error=abs(r-i);&lt;br /&gt;
figure(2)&lt;br /&gt;
plot(t,error,'-r','linewidth',2)&lt;br /&gt;
xlabel('Tiempo');&lt;br /&gt;
ylabel('Error');&lt;br /&gt;
axis([-0.1,1,-0.05,0.25])&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
Un paso de discretización de 0'01 proporciona un error muy pequeño, lo que aporta una aproximación de la función muy similar a la real, como podemos observar en la primera figura. Analizando el error que nos ofrece dicha aproximación (imagen de la derecha),su valor no supera el 0'2, por tanto, podemos afirmar analíticamente la exactitud de la aproximación. Además, podemos observar que el error se anula al llegar a t=0'25, momento en el que coincide la función aproximada por Euler con la función real. &lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Image:0.01.jpg|500px|thumb|left|Resultado de la intensidad del circuito RL simple por el método de Euler para h=0'01]] [[Image:error0.01.jpg|500px|thumb|center|Gráfica del error cometido en el cálculo de la intensidad por el método de Euler para h=0'01 ]]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br/&amp;gt; &amp;lt;br/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Una vez analizado el resultado anterior, resolvemos el problema con un paso mayor.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
{{matlab|codigo= %Resolucion por Euler&lt;br /&gt;
%Definimos las condiciones iniciales.&lt;br /&gt;
clear all&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=1;&lt;br /&gt;
&lt;br /&gt;
%Probamos con un paso de discretización mayor, h=0'05.&lt;br /&gt;
h=0.05;&lt;br /&gt;
t=t0:h:tN;&lt;br /&gt;
N=(tN-t0)/h;&lt;br /&gt;
&lt;br /&gt;
%Resolvemos la ecuación.&lt;br /&gt;
ii=0;&lt;br /&gt;
i(1)=ii;&lt;br /&gt;
for n=1:N;&lt;br /&gt;
  ii=ii+h*(100-25*ii);&lt;br /&gt;
  i(n+1)=ii;&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
%Creamos el dibujo.&lt;br /&gt;
figure(1)&lt;br /&gt;
plot(t,i,'-g','linewidth',2);&lt;br /&gt;
xlabel('Tiempo');&lt;br /&gt;
ylabel('Intensidad(t)');&lt;br /&gt;
axis([-0.1,1,0,5.1])&lt;br /&gt;
&lt;br /&gt;
%Calculo error y dibujamos.&lt;br /&gt;
r=4-4*exp(-25*t);&lt;br /&gt;
error=abs(r-i);&lt;br /&gt;
figure(2)&lt;br /&gt;
plot(t,error,'-r','linewidth',2)&lt;br /&gt;
axis([-0.1,1,-0.05,2.25])&lt;br /&gt;
xlabel('Tiempo');&lt;br /&gt;
ylabel('Error');&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br/&amp;gt;&lt;br /&gt;
Podemos observar que al aumentar el paso de discretización a 0'05 la aproximación de la curva se ha convertido en una combinación de rectas que asemejan la evolución de la intensidad, ya que sigue manteniendo una rápida subida inicial.  A pesar de ello, el error ha aumentado su valor en un 1000% en el periodo transitorio, pero vuelve a anularse en el permanente ya que a partir del punto de estabilización los valores aproximados coincide con los reales.El cambio producido en el incremento inicial de la intensidad se debe a la brevedad de éste, por lo que resulta poco preciso trabajar con pasos mayores.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
[[Image:0.05.jpg|500px|thumb|left|Resultado de la intensidad del circuito RL simple por el método de Euler para h=0'05 ]] [[Image:error0.05.jpg|500px|thumb|center| Gráfica del error cometido en el cálculo de la intensidad por el método de Euler para h=0'05]]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br/&amp;gt; &amp;lt;br/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Para estar más seguro de la afirmación hecha hace unos instantes, en la que hemos asegurado que es poco preciso trabajar con pasos mayores vamos a resolver y comparar en la misma gráfica el problema resuelto con distintos valores para la h, el paso.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br/&amp;gt;&lt;br /&gt;
{{matlab|codigo= &lt;br /&gt;
%Comparamos las gráficas con diferentes pasos y la función real.&lt;br /&gt;
clear all&lt;br /&gt;
&lt;br /&gt;
%Guardamos el valor para cada paso.&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=1;&lt;br /&gt;
h1=0.05;&lt;br /&gt;
t1=t0:h1:tN;&lt;br /&gt;
N1=(tN-t0)/h1;&lt;br /&gt;
h2=0.01;&lt;br /&gt;
t2=t0:h2:tN;&lt;br /&gt;
N2=(tN-t0)/h2;&lt;br /&gt;
h3=0.075;&lt;br /&gt;
t3=t0:h3:tN;&lt;br /&gt;
N3=(tN-t0)/h3;&lt;br /&gt;
&lt;br /&gt;
%Creamos un bucle para cada h y resolver las cuatro ecuaciones.&lt;br /&gt;
ii=0;&lt;br /&gt;
i(1)=ii;&lt;br /&gt;
for n=1:N1;&lt;br /&gt;
  ii=ii+h1*(100-25*ii);&lt;br /&gt;
  i(n+1)=ii;&lt;br /&gt;
end&lt;br /&gt;
yy=0;&lt;br /&gt;
y(1)=yy;&lt;br /&gt;
for m=1:N2;&lt;br /&gt;
  yy=yy+h2*(100-25*yy);&lt;br /&gt;
  y(m+1)=yy;&lt;br /&gt;
end&lt;br /&gt;
jj=0;&lt;br /&gt;
j(1)=jj;&lt;br /&gt;
for m=1:N3;&lt;br /&gt;
  jj=jj+h3*(100-25*jj);&lt;br /&gt;
  j(m+1)=jj;&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
%Hacemos el dibujo con todas las gráficas a la vez para hacer una comparación global de estas y la función real.&lt;br /&gt;
hold on &lt;br /&gt;
fplot('4-4*exp(-25*t2)',[0,1,0,5],'r');&lt;br /&gt;
plot(t1,i,'-b','linewidth',1);&lt;br /&gt;
plot(t2,y,'-y','linewidth',1);&lt;br /&gt;
plot(t3,j,'-g','linewidth',1);&lt;br /&gt;
legend('Función real','h=0.05', 'h=0.01', 'h=0.075');&lt;br /&gt;
title('Comparativa');&lt;br /&gt;
xlabel('Tiempo');&lt;br /&gt;
ylabel('Intensidad(t)');&lt;br /&gt;
axis([-0.1,1,-0.05,8])&lt;br /&gt;
hold off&lt;br /&gt;
&lt;br /&gt;
%Quitamos el paso mayor para ver con mayor exactitud como se difieren las aproximaciones más correctas.&lt;br /&gt;
figure (2)&lt;br /&gt;
hold on &lt;br /&gt;
fplot('4-4*exp(-25*t2)',[0,1,0,5],'r');&lt;br /&gt;
plot(t1,i,'-b','linewidth',1);&lt;br /&gt;
plot(t2,y,'-g','linewidth',1);&lt;br /&gt;
legend('Función real','h=0.05', 'h=0.01');&lt;br /&gt;
title('Comparativa');&lt;br /&gt;
xlabel('Tiempo');&lt;br /&gt;
ylabel('Intensidad(t)');&lt;br /&gt;
axis([0,0.5,-0.05,5])&lt;br /&gt;
hold off&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
Al ensayar con diferentes pasos de discretización vemos como la aproximación de la gráfica se va degenerando, hasta el punto en el que si se sobrepasa 0'05, la volatilidad de las oscilaciones llega a ser tal que la intensidad nunca llega a estabilizarse y el error no se anula ya que los valores son muy lejanos a los reales. Como la subida de intensidad se produce muy rápidamente, una h≥0'05 es, como podemos ver la imagen de la izquierda, muy poco precisa. Si se mantiene en el intervalo [0'02,0'05] se elimina la forma exponencial de la función (aparecen en su lugar fluctuaciones rectilíneas) pero se sigue reflejando la evolución de la intensidad hasta que se vuelve constante. Con un paso de 0'01, se consigue una gráfica exponencial con valores ligeramente superiores a los reales, por tanto podemos afirmar cuanto más pequeño sea el paso, más exacta y precisa será la aproximación ya que se trata de un aumento prácticamente instantáneo.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
[[Image:123456.jpg|500px|thumb|left|Comparativa de la función real con aproximaciones con diferentes pasos de discretización.]]&lt;br /&gt;
[[Image:Abbb.jpg|500px|thumb|center|Comparativa de la función real con aproximaciones con pasos de discretización más precisos.]]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== Método del Trapecio. ====&lt;br /&gt;
{{matlab|codigo= &lt;br /&gt;
%Resolucion por Trapecio.&lt;br /&gt;
%Definimos las condiciones iniciales.&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=1;&lt;br /&gt;
&lt;br /&gt;
%Al tratarse del método de trapecio podemos usar un paso más grande.&lt;br /&gt;
h=0.05;&lt;br /&gt;
t=t0:h:tN;&lt;br /&gt;
N=(tN-t0)/h;&lt;br /&gt;
i=zeros(1,N+1);&lt;br /&gt;
i(1)=0;&lt;br /&gt;
&lt;br /&gt;
%Resolvemos la ecuación.&lt;br /&gt;
for n=1:N;&lt;br /&gt;
    i(n+1)=((200*h)/(2+25*h))+(i(n)*((2-25*h)/(2+25*h)));&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
%Dibujamos.&lt;br /&gt;
figure (1)&lt;br /&gt;
plot(t,i,'-r','linewidth',2)&lt;br /&gt;
xlabel('Tiempo')&lt;br /&gt;
ylabel('Intensidad(t)')&lt;br /&gt;
axis([0,1,-0.05,4.25])&lt;br /&gt;
&lt;br /&gt;
%Cambiamos los ejes del dibujo y añadimos líneas auxiliares para poder ver con mayor &lt;br /&gt;
%precisión el punto en el que la intensidad se hace constante.&lt;br /&gt;
figure (2)&lt;br /&gt;
plot(t,i,'-b','linewidth',2)&lt;br /&gt;
xlabel('Tiempo')&lt;br /&gt;
ylabel('Intensidad(t)')&lt;br /&gt;
axis([0,0.4,2,4.1])&lt;br /&gt;
grid on&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Image:Trapecio3a.jpg|450px|thumb|left|Resultado de la intensidad del circuito RL simple por el método del trapecio.]]&lt;br /&gt;
[[Image:Trapecio3a11.jpg|450px|thumb|center|Visualización del punto en que se hace constante la intensidad.]]&lt;br /&gt;
&amp;lt;br/&amp;gt;&amp;lt;br/&amp;gt;&lt;br /&gt;
La representación de la función por el método del Trapecio nos permite utilizar un paso de discretización mayor quedando como resultado una aproximación muy similar a la original (podemos observar ésto en la imagen de la izquierda).&lt;br /&gt;
Una ampliación de dicha aproximación nos permite ver con exactitud el punto en el cual la intensidad se hace constante,(0'25,4), es decir t=0'25 e i(t)=4.&lt;br /&gt;
 &amp;lt;br/&amp;gt;&lt;br /&gt;
===== Efectos en la función al variar la constante de inductor. =====&lt;br /&gt;
Se ha estudiado las alteraciones producidas en la función cuando se disminuye o aumenta la constante del inductor, L. A continuación se muestran las gráficas resultantes al modificar dicho valor.&lt;br /&gt;
{{matlab|codigo= %Resolucion por Trapecio.&lt;br /&gt;
%Definimos las condiciones iniciales.&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=1;&lt;br /&gt;
h=0.05;&lt;br /&gt;
t=t0:h:tN;&lt;br /&gt;
N=(tN-t0)/h;&lt;br /&gt;
i=zeros(N+1);&lt;br /&gt;
i(1)=0;&lt;br /&gt;
&lt;br /&gt;
%Cambiamos la L y resolvemos su ecuación correspondiente.&lt;br /&gt;
L=3.2;&lt;br /&gt;
for n=1:N;&lt;br /&gt;
    i(n+1)=((40*h)/(2*L+5*h))+i(n)*((2*L-5*h)/(2*L+5*h));&lt;br /&gt;
end&lt;br /&gt;
figure (1)&lt;br /&gt;
plot(t,i,'-b','linewidth',2)&lt;br /&gt;
xlabel('Tiempo')&lt;br /&gt;
ylabel('Intensidad(t)')&lt;br /&gt;
title('L=3.2')&lt;br /&gt;
grid on&lt;br /&gt;
&lt;br /&gt;
%Cambiamos la L y resolvemos su ecuación correspondiente.&lt;br /&gt;
y=zeros(N+1);&lt;br /&gt;
y(1)=0;&lt;br /&gt;
L=0.8;&lt;br /&gt;
for m=1:N;&lt;br /&gt;
    y(m+1)=((40*h)/(2*L+5*h))+y(m)*((2*L-5*h)/(2*L+5*h));&lt;br /&gt;
end&lt;br /&gt;
figure (2)&lt;br /&gt;
plot(t,y,'-r','linewidth',2)&lt;br /&gt;
xlabel('Tiempo')&lt;br /&gt;
ylabel('Intensidad(t)')&lt;br /&gt;
title('L=0.8')&lt;br /&gt;
grid on&lt;br /&gt;
&lt;br /&gt;
%Cambiamos la L y resolvemos su ecuación correspondiente.&lt;br /&gt;
j=zeros(N+1);&lt;br /&gt;
j(1)=0;&lt;br /&gt;
L=0.05;&lt;br /&gt;
for o=1:N;&lt;br /&gt;
    j(o+1)=((40*h)/(2*L+5*h))+j(o)*((2*L-5*h)/(2*L+5*h));&lt;br /&gt;
end&lt;br /&gt;
figure (3)&lt;br /&gt;
plot(t,j,'-g','linewidth',2)&lt;br /&gt;
xlabel('Tiempo')&lt;br /&gt;
ylabel('Intensidad(t)')&lt;br /&gt;
title('L=0.05')&lt;br /&gt;
grid on&lt;br /&gt;
&lt;br /&gt;
%Cambiamos la L y resolvemos su ecuación correspondiente.&lt;br /&gt;
k=zeros(N+1);&lt;br /&gt;
k(1)=0;&lt;br /&gt;
L=0.0125;&lt;br /&gt;
for l=1:N;&lt;br /&gt;
    k(l+1)=((40*h)/(2*L+5*h))+k(l)*((2*L-5*h)/(2*L+5*h));&lt;br /&gt;
end&lt;br /&gt;
figure (4)&lt;br /&gt;
plot(t,k,'-c','linewidth',2)&lt;br /&gt;
xlabel('Tiempo')&lt;br /&gt;
ylabel('Intensidad(t)')&lt;br /&gt;
title('L=0.0125')&lt;br /&gt;
grid on&lt;br /&gt;
}}&lt;br /&gt;
&amp;lt;br/&amp;gt;&lt;br /&gt;
*Como podemos observar a medida que incrementamos el valor de L, se acentúa la 'exponencialidad' de la función hasta llegar a aproximarse a una recta. A medida que aumenta el parecido a una recta, el tiempo de estabilización se extiende por ser la inductancia mayor, así como el valor de la intensidad cuando es constante.&lt;br /&gt;
*De igual forma al reducirlo, la subida de la intensidad hasta llegar a una cifra constante es mucho mayor, aumenta el periodo transitorio, pero de forma más moderada que en los casos anteriores y manteniendo la constancia en i(t)=4; sin embargo, la función deja de ser exponencial convirtiéndose en fluctuaciones de rectas que van reduciendo su volatilidad con el paso del tiempo.&lt;br /&gt;
[[Image:3.2.jpg|400px|thumb|left|L=3'2.]]&lt;br /&gt;
[[Image:0.8.jpg|400px|thumb|center|L=0'8.]]&lt;br /&gt;
&amp;lt;br/&amp;gt;&lt;br /&gt;
[[Image:0.0125.jpg|400px|thumb|left|L=0'0125.]]&lt;br /&gt;
[[Image:0.051.jpg|400px|thumb|center|L=0'5.]]&lt;br /&gt;
&amp;lt;br/&amp;gt;&amp;lt;br/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Leyes de Kirchhoff ==&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Circuito 2 completo.jpg|300px|thumb|left| ]]&lt;br /&gt;
&lt;br /&gt;
Según las  leyes de Kirchhoff, el sistema de ecuaciones diferenciales correspondiente al circuito 2 es el siguiente:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\left\{\begin{matrix}\ [1] E(t) = R_1\cdot i_1(t) + L_2\cdot \frac{d}{dt}\cdot i_2(t) + R_2\cdot i_2(t)\\ [2] E(t) = R_1\cdot i_1(t) + L_1\cdot \frac{d}{dt}\cdot i_3(t) + R_3\cdot i_3(t)\\ [3] i_1(t) = i_2(t) + i_3(t)\end{matrix}\right.&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''[1]'''Correspondiente al recorrido exterior del circuito.&amp;lt;br/&amp;gt;&lt;br /&gt;
'''[2]'''Correspondiente a la malla izquierda, (malla 1).&amp;lt;br/&amp;gt;&lt;br /&gt;
'''[3]'''Correspondiente al nudo de la parte superior del circuito(Ley de corrientes de Kirchhoff).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Sustituyendo la tercera ecuación en las otras dos, se obtiene el sistema en términos de i2(t) e i3(t) matricialmente::&amp;lt;math&amp;gt;\frac{d}{dt}\cdot \begin{pmatrix} i_2\\i_3 \end{pmatrix} = - \begin{pmatrix} \frac{R_1+R_2}{L_2}&amp;amp;\frac{R_1}{L_2} \\ \frac{R_1}{L_1}&amp;amp;\frac{R_1+R_3}{L_1}\end{pmatrix} \cdot \begin{pmatrix} i_2\\i_3 \end{pmatrix} + \begin{pmatrix} \frac{E}{L_2} \\ \frac{E}{L_1} \end{pmatrix}&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
A partir de las condiciones iniciales i2(0)=i3(0)=0 se puede interpretar que la corriente en el circuito es nula en el momento  en el cual se conecta el generador.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== Cálculo de las intensidades de un circuito con varias resistencias y bobinas a partir del Método de Euler y del Trapecio. ====&lt;br /&gt;
Ya se ha visto que la expresión de las intensidades i2 e i3 de este circuito RL vienen dadas por dos ecuaciones diferenciales que conforman un sistema. Este sistema de ecuaciones diferenciales se puede resolver numéricamente a partir del método de Euler y del trapecio, los cuales se basan en la aproximación de las áreas de esa ecuación diferencial al valor real de la función en cada momento.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Partiendo de unos datos iniciales iguales a:&lt;br /&gt;
&lt;br /&gt;
'''&amp;lt;math&amp;gt; R_1=R_2=6Ω &amp;lt;/math&amp;gt;''' , '''&amp;lt;math&amp;gt; R_3=3Ω &amp;lt;/math&amp;gt;''' , '''&amp;lt;math&amp;gt; L_1=0,3Hz &amp;lt;/math&amp;gt;''' , '''&amp;lt;math&amp;gt; L_2=0,11Hz &amp;lt;/math&amp;gt;''' y '''&amp;lt;math&amp;gt; E(t)=20 V &amp;lt;/math&amp;gt;'''&lt;br /&gt;
&lt;br /&gt;
 :&amp;lt;math&amp;gt;\frac{d}{dt}\cdot \begin{pmatrix} i_2\\i_3 \end{pmatrix} = - \begin{pmatrix} \frac{6+6}{0,11}&amp;amp;\frac{6}{0,11} \\ \frac{6}{0,3}&amp;amp;\frac{6+3}{0,3}\end{pmatrix} \cdot \begin{pmatrix} i_2\\i_3 \end{pmatrix} + \begin{pmatrix} \frac{20}{0,11} \\ \frac{20}{0,3} \end{pmatrix}&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
Resolvemos las ecuaciones diferenciales:&lt;br /&gt;
&lt;br /&gt;
* ''' MÉTODO DE EULER: '''&lt;br /&gt;
'''OCTAVE'''&lt;br /&gt;
{{matlab|codigo= &lt;br /&gt;
DATOS:&lt;br /&gt;
&lt;br /&gt;
clc;clear all;&lt;br /&gt;
    %t0=tiempo inicial&lt;br /&gt;
t0=0;&lt;br /&gt;
    %tN=tiempo máximo a evaluar&lt;br /&gt;
tN=0.04;&lt;br /&gt;
    %soluciones en y0 para las variables i2 e i3&lt;br /&gt;
y0=0;&lt;br /&gt;
    %N=intervalos en los que se dividen&lt;br /&gt;
N=25;&lt;br /&gt;
    %h=salto de intervalo en intervalo&lt;br /&gt;
h=(tN-t0)/N;&lt;br /&gt;
    %i1,i2,i3=vectores solución desde t0 a tN de h en h&lt;br /&gt;
i1=t0:h:tN;&lt;br /&gt;
&lt;br /&gt;
i2=t0:h:tN;&lt;br /&gt;
&lt;br /&gt;
i3=t0:h:tN;&lt;br /&gt;
&lt;br /&gt;
    %y=vector de ceros y que va a almacenar las soluciones.Tendrá N+1 términos porque el primero es el cero y el ultimo el N&lt;br /&gt;
    %la intensidad dos es y(:,1),es decir, la fila 1.&lt;br /&gt;
    %la intensidad tres es y(:,2),es decir, la fila 2.&lt;br /&gt;
    %la intensidad uno es y(:,3),es decir, la fila 3.&lt;br /&gt;
y=zeros(N+1,3);&lt;br /&gt;
y(1,1)=y0;&lt;br /&gt;
y(1,2)=y0;&lt;br /&gt;
y(1,3)=y0;&lt;br /&gt;
%AHORA SE EMPIEZA A RESOLVER POR EULER EL SISTEMA.&lt;br /&gt;
%y(n+1)=y(n)+h*f(t(n),y(n))&lt;br /&gt;
%f(t,i2)=((E/L2)-R1*(i2+i3)+R2*i2)/L2&lt;br /&gt;
%f(t,i3)=((E/L1)-R1*(i2+i3)+R3*i3)/L1&lt;br /&gt;
for n=1:N&lt;br /&gt;
    y(n+1,1)=y(n,1)+h*((20/0.11)-(6*(y(n,1)+y(n,2))+6*y(n,1))/0.11);&lt;br /&gt;
    y(n+1,2)=y(n,2)+h*((20/0.3)-(6*(y(n,1)+y(n,2))+3*y(n,2))/0.3);&lt;br /&gt;
    y(n+1,3)=y(n+1,1)+y(n+1,2);&lt;br /&gt;
end&lt;br /&gt;
hold on&lt;br /&gt;
plot(i1,y(:,3),'+')&lt;br /&gt;
plot(i2,y(:,1),'r+')&lt;br /&gt;
plot(i3,y(:,2),'g+')&lt;br /&gt;
xlabel('Tiempo');&lt;br /&gt;
ylabel('Intensidad(t)');&lt;br /&gt;
legend('i1', 'i2', 'i3');&lt;br /&gt;
grid on&lt;br /&gt;
}}&lt;br /&gt;
* ''' MÉTODO DEL TRAPECIO: '''&lt;br /&gt;
'''OCTAVE'''&lt;br /&gt;
{{matlab|codigo= &lt;br /&gt;
DATOS:&lt;br /&gt;
clc;clear all;&lt;br /&gt;
    %tiempo inicial&lt;br /&gt;
t0=0;&lt;br /&gt;
    %tiempo máximo a evaluar&lt;br /&gt;
tN=0.04;&lt;br /&gt;
    %soluciones en y0 para las variables i2 e i3&lt;br /&gt;
y0=0;&lt;br /&gt;
    %intervalos en los que se dividen&lt;br /&gt;
N=25;&lt;br /&gt;
	%salto de intervalo en intervalo&lt;br /&gt;
h=(tN-t0)/N;&lt;br /&gt;
    %vectores solución desde t0 a tN de h en h&lt;br /&gt;
i1=t0:h:tN;&lt;br /&gt;
i2=t0:h:tN;&lt;br /&gt;
i3=t0:h:tN;&lt;br /&gt;
    %vector de ceros y que va a almacenar las soluciones&lt;br /&gt;
    %tendra N+1 términos porque el primero es el cero y el ultimo el N&lt;br /&gt;
    %la intensidad dos es y(:,1)&lt;br /&gt;
    %la intensidad tres es y(:,2)&lt;br /&gt;
    %la intensidad uno es y(:,3)&lt;br /&gt;
y=zeros(N+1,3);&lt;br /&gt;
y(1,1)=y0;&lt;br /&gt;
y(1,2)=y0;&lt;br /&gt;
y(1,3)=y0;&lt;br /&gt;
PARA RESOLVER POR EL MÉTODO DEL TRAPECIO:&lt;br /&gt;
%y(n+1)=y(n)+(h/2)*(f(t(n),y(n)+f(t(n+1),y(n+1))&lt;br /&gt;
%f(t,i2)=((E/L2)-R1*(i2+i3)+R2*i2)/L2&lt;br /&gt;
%f(t,i3)=((E/L1)-R1*(i2+i3)+R3*i3)/L1&lt;br /&gt;
for n=1:N&lt;br /&gt;
    y(n+1,1)=y(n,1)+(h/2)*(((20/0.11)-(6*(y(n,1)+y(n,2))+6*y(n,1))/0.11)+((20/0.11)-(6*(y(n+1,1)+y(n+1,2))+6*y(n+1,1))/0.11));&lt;br /&gt;
    y(n+1,2)=y(n,2)+(h/2)*(((20/0.3)-(6*(y(n,1)+y(n,2))+3*y(n,2))/0.3)+((20/0.3)-(6*(y(n+1,1)+y(n+1,2))+3*y(n+1,2))/0.3));  &lt;br /&gt;
    y(n+1,3)=y(n+1,1)+y(n+1,2);&lt;br /&gt;
end&lt;br /&gt;
plot(i1,y(:,3))&lt;br /&gt;
plot(i2,y(:,1),'r')&lt;br /&gt;
plot(i3,y(:,2),'g')&lt;br /&gt;
xlabel('Tiempo');&lt;br /&gt;
ylabel('Intensidad(t)');&lt;br /&gt;
hold off&lt;br /&gt;
}}&lt;br /&gt;
&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
[[Archivo:Grafica.MétodoEuleryTrapeciojuntosfinal.png|800px|thumb|left|Gráfica del resultado del Método de Euler y Trapecio en el cálculo de las intensidades.]]&lt;br /&gt;
&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''En el resultado de la gráfica, lo obtenido con el método de Euler se representa con los símbolos &amp;quot;+&amp;quot;, mientras que la línea continua corresponde al Método del Trapecio. Como se puede apreciar, ambos métodos dan resultados similares y muy próximos. En la interpretación de los resultados, diríamos que se trata de corrientes muy estables.'''&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
====Variación de las intensidades de un circuito RL cuando se altera el valor de una de las resistencias.====&lt;br /&gt;
Ahora vamos a analizar como afecta la variación del módulo de una resistencia (se incrementa, '''&amp;lt;math&amp;gt; R_3=3Ω &amp;lt;/math&amp;gt;''' pasa a valer '''&amp;lt;math&amp;gt; R_3=9Ω &amp;lt;/math&amp;gt;''') en las intensidades del circuito.&lt;br /&gt;
Nuestro análisis se realizará sustituyendo el nuevo valor en el mismo sistema, y se resolverá por el método de Euler y Trapecio comparando en una gráfica los resultados con los obtenidos anteriormente.&lt;br /&gt;
&lt;br /&gt;
* ''' MÉTODO DE EULER: '''&lt;br /&gt;
'''OCTAVE'''&lt;br /&gt;
{{matlab|codigo= &lt;br /&gt;
%DATOS:&lt;br /&gt;
clc;clear all;&lt;br /&gt;
    %tiempo inicial&lt;br /&gt;
t0=0;&lt;br /&gt;
    %tiempo máximo a evaluar&lt;br /&gt;
tN=0.04;&lt;br /&gt;
    %soluciones en y0 para las variables i2 e i3&lt;br /&gt;
y0=0;&lt;br /&gt;
    %intervalos en los que se dividen&lt;br /&gt;
N=25;&lt;br /&gt;
	%salto de intervalo en intervalo&lt;br /&gt;
h=(tN-t0)/N;&lt;br /&gt;
    %vectores solución desde t0 a tN de h en h&lt;br /&gt;
i1=t0:h:tN;&lt;br /&gt;
i2=t0:h:tN;&lt;br /&gt;
i3=t0:h:tN;&lt;br /&gt;
    %vector de ceros y que va a almacenar las soluciones&lt;br /&gt;
    %tendra N+1 términos porque el primero es el cero y el ultimo el N&lt;br /&gt;
    %la intensidad dos es y(:,1)&lt;br /&gt;
    %la intensidad tres es y(:,2)&lt;br /&gt;
    %la intensidad uno es y(:,3)&lt;br /&gt;
y=zeros(N+1,3);&lt;br /&gt;
y(1,1)=y0;&lt;br /&gt;
y(1,2)=y0;&lt;br /&gt;
y(1,3)=y0;&lt;br /&gt;
%PARA RESOLVER POR EULER EL SISTEMA:&lt;br /&gt;
%y(n+1)=y(n)+h*f(t(n),y(n))&lt;br /&gt;
%f(t,i2)=((E/L2)-R1*(i2+i3)+R2*i2)/L2&lt;br /&gt;
%f(t,i3)=((E/L1)-R1*(i2+i3)+R3*i3)/L1&lt;br /&gt;
for n=1:N&lt;br /&gt;
    y(n+1,1)=y(n,1)+h*((20/0.11)-(6*(y(n,1)+y(n,2))+6*y(n,1))/0.11);&lt;br /&gt;
    y(n+1,2)=y(n,2)+h*((20/0.3)-(6*(y(n,1)+y(n,2))+9*y(n,2))/0.3);&lt;br /&gt;
    y(n+1,3)=y(n+1,1)+y(n+1,2);&lt;br /&gt;
end&lt;br /&gt;
hold on&lt;br /&gt;
plot(i1,y(:,3),'c+')&lt;br /&gt;
plot(i2,y(:,1),'m+')&lt;br /&gt;
plot(i3,y(:,2),'k+')&lt;br /&gt;
}}&lt;br /&gt;
* ''' MÉTODO DEL TRAPECIO: '''&lt;br /&gt;
'''OCTAVE'''&lt;br /&gt;
{{matlab|codigo= &lt;br /&gt;
%DATOS:&lt;br /&gt;
clc;clear all;&lt;br /&gt;
    %tiempo inicial&lt;br /&gt;
t0=0;&lt;br /&gt;
    %tiempo máximo a evaluar&lt;br /&gt;
tN=0.04;&lt;br /&gt;
    %soluciones en y0 para las variables i2 e i3&lt;br /&gt;
y0=0;&lt;br /&gt;
    %intervalos en los que se dividen&lt;br /&gt;
N=25;&lt;br /&gt;
	%salto de intervalo en intervalo&lt;br /&gt;
h=(tN-t0)/N;&lt;br /&gt;
    %vectores solución desde t0 a tN de h en h&lt;br /&gt;
i1=t0:h:tN;&lt;br /&gt;
i2=t0:h:tN;&lt;br /&gt;
i3=t0:h:tN;&lt;br /&gt;
    %vector de ceros y que va a almacenar las soluciones&lt;br /&gt;
    %tendra N+1 términos porque el primero es el cero y el ultimo el N&lt;br /&gt;
    %la intensidad dos es y(:,1)&lt;br /&gt;
    %la intensidad tres es y(:,2)&lt;br /&gt;
    %la intensidad uno es y(:,3)&lt;br /&gt;
y=zeros(N+1,3);&lt;br /&gt;
y(1,1)=y0;&lt;br /&gt;
y(1,2)=y0;&lt;br /&gt;
y(1,3)=y0;&lt;br /&gt;
%PARA RESOLVER POR EL MÉTODO DEL TRAPECIO:&lt;br /&gt;
%y(n+1)=y(n)+(h/2)*(f(t(n),y(n)+f(t(n+1),y(n+1))&lt;br /&gt;
%f(t,i2)=((E/L2)-R1*(i2+i3)+R2*i2)/L2&lt;br /&gt;
%f(t,i3)=((E/L1)-R1*(i2+i3)+R3*i3)/L1&lt;br /&gt;
for n=1:N&lt;br /&gt;
    y(n+1,1)=y(n,1)+(h/2)*(((20/0.11)-(6*(y(n,1)+y(n,2))+6*y(n,1))/0.11)+((20/0.11)-(6*(y(n+1,1)+y(n+1,2))+6*y(n+1,1))/0.11));&lt;br /&gt;
    y(n+1,2)=y(n,2)+(h/2)*(((20/0.3)-(6*(y(n,1)+y(n,2))+9*y(n,2))/0.3)+((20/0.3)-(6*(y(n+1,1)+y(n+1,2))+9*y(n+1,2))/0.3));  &lt;br /&gt;
    y(n+1,3)=y(n+1,1)+y(n+1,2);&lt;br /&gt;
end&lt;br /&gt;
plot(i1,y(:,3),'c')&lt;br /&gt;
plot(i2,y(:,1),'m')&lt;br /&gt;
plot(i3,y(:,2),'k')&lt;br /&gt;
hold off&lt;br /&gt;
}}&lt;br /&gt;
[[Image:Resultado.png|500px|thumb|left|Gráfica de la intensidad del circuito RL compuesto tras incrementar una de sus resistencias ]]&lt;br /&gt;
[[Archivo:Grafica.MétodoEuleryTrapeciojuntosfinal.png|500px|thumb|right|Gráfica del resultado del Método de Euler y Trapecio en el cálculo de las intensidades sin incrementar.]]&lt;br /&gt;
[[Image:Grafica comparativa 5y6 (1).jpg|1400px|thumb|centre|Gráfica comparativa de las intensidades de un circuito RL intensidades incrementadas y sin incrementar. ]]&lt;br /&gt;
'''De nuevo, las cruces + corresponderían a lo obtenido por el método de Euler y la línea continua al Método del trapecio. En la gráfica superpuesta se observa el resultado final de la comparativa: frente a resistencias menores las intensidades resultan mayores, y viceversa. Esto se justifica gracias a la Ley de Ohm que establece '''&amp;lt;math&amp;gt; V=I*R&amp;lt;/math&amp;gt;''' de manera que la intensidad y resistencia son inversamente proporcionales, y si una se incrementa, la otra decrece: '''&amp;lt;math&amp;gt; I=V/R&amp;lt;/math&amp;gt;''', '''&amp;lt;math&amp;gt; R=V/I&amp;lt;/math&amp;gt;'''. '''&lt;br /&gt;
&lt;br /&gt;
[[Categoría:Ecuaciones Diferentiales]]&lt;br /&gt;
[[Categoría:ED13/14]]&lt;br /&gt;
[[Categoría:Trabajos 2013-14]]&lt;/div&gt;</summary>
		<author><name>Lucia Lopez</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Circuitos_RL_(grupo_B)&amp;diff=9542</id>
		<title>Circuitos RL (grupo B)</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Circuitos_RL_(grupo_B)&amp;diff=9542"/>
				<updated>2014-03-04T08:01:50Z</updated>
		
		<summary type="html">&lt;p&gt;Lucia Lopez: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{ TrabajoED | Circuitos RL. Grupo 2-B | [[:Categoría:Ecuaciones Diferenciales|Ecuaciones Diferenciales]]|[[:Categoría:ED13/14|Curso 2013-14]] | Diego Solano López,Lucia López Sánchez,Adela González Barbado,Araceli Martín Candilejo,Ignacio Díaz Caneja Camblor,Alberto Fernández Pérez }}&lt;br /&gt;
&lt;br /&gt;
El circuito eléctrico mas simple esta compuesto de una resistencia, un inductor o bobina y una fuente de alimentación.&lt;br /&gt;
* En una resistencia R, la Ley de Ohm establece:&lt;br /&gt;
&lt;br /&gt;
  &amp;lt;math&amp;gt;i(t)={V(t)\over R}&amp;lt;/math&amp;gt;&lt;br /&gt;
* En un inductor L la Ley de Faraday dice:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; V(t)=L\cdot i'(t)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
Las leyes de Kirchhoff establecen el comportamiento de los circuitos:&lt;br /&gt;
# '''Ley de corriente:''' en cada nudo la suma de corrientes que entra coincide con la suma de corrientes que sale.&lt;br /&gt;
# '''Ley de tensiones:''' en cada ciclo cerrado, la suma de las diferencias de potencial eléctrico es nula.&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Ley de Kirchhoff de voltaje ==&lt;br /&gt;
==== Ecuación diferencial-Resolución y representación analítica.====&lt;br /&gt;
Basándonos en la Ley de Kirchhoff de voltaje sobre el circuito que observamos en la imagen, podemos trabajar con la siguiente ecuación diferencial.&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;math&amp;gt; i'(t)+{R\over L}i(t)-{V(t)\over L}=0 &amp;lt;/math&amp;gt; [[Image:cicuito1.jpg|300px|thumb|right|Circuito RL simple ]]&lt;br /&gt;
&lt;br /&gt;
Al suponer que en el instante t=0 el circuito está abierto, podemos establecer para el problema de Cauchy el valor inicial '''&amp;lt;math&amp;gt; i_0(t)=0 &amp;lt;/math&amp;gt;'''. Considerando que la alimentación posee un voltaje constante '''V(t)=20V, L=0.2 y R=5Ω''', llegamos al problema:&lt;br /&gt;
&lt;br /&gt;
                              &amp;lt;math&amp;gt;\left\{\begin{matrix}\ i'(t)+{25}i(t)-{100}=0 \\i(0)=0\end{matrix}\right.&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
La resolución de éste mediante &amp;lt;math&amp;gt;i \cdot e^{\int{\frac{R}{L}dt}} = \int{e^{\frac{R \cdot t}{L}}dt} \hspace{0.5cm} \rightarrow \hspace{0.5cm} &amp;lt;/math&amp;gt; &lt;br /&gt;
&amp;lt;math&amp;gt;i \cdot e^{\frac{R \cdot t}{L}} = \frac{V}{R}e^{\frac{R \cdot t}{L}}+C&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt; nos da:&lt;br /&gt;
 &amp;lt;math&amp;gt; i(t)=4-4e^{-25t} &amp;lt;/math&amp;gt;&lt;br /&gt;
La gráfica de la función nos muestra la evolución de la intensidad. En ella se puede apreciar una rápida subida en los primeros instantes que se ralentiza hasta llegar a ser prácticamente constante con un valor de 4. Por lo que podemos afirmar que la intensidad se estabiliza en un corto periodo de tiempo.&lt;br /&gt;
[[Image:Funcion.jpg|500px|thumb|center|Gráfica de la intensidad en un circuito RL simple ]]&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo= &lt;br /&gt;
fplot('4-4*exp(-25*t)',[0,0.5,0,5]);&lt;br /&gt;
xlabel('Tiempo')&lt;br /&gt;
ylabel('Intensidad(t)')&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
==== Método de Euler. ====&lt;br /&gt;
{{matlab|codigo= &lt;br /&gt;
%Definimos las condiciones iniciales.&lt;br /&gt;
clear all&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=1;&lt;br /&gt;
&lt;br /&gt;
%Establecemos un paso h=0'01.&lt;br /&gt;
h=0.01;&lt;br /&gt;
t=t0:h:tN;&lt;br /&gt;
N=(tN-t0)/h;&lt;br /&gt;
&lt;br /&gt;
%Resolvemos la ecuación.&lt;br /&gt;
ii=0;&lt;br /&gt;
i(1)=ii;&lt;br /&gt;
for n=1:N;&lt;br /&gt;
  ii=ii+h*(100-25*ii);&lt;br /&gt;
  i(n+1)=ii;&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
%Dibujamos la gráfica.&lt;br /&gt;
figure(1)&lt;br /&gt;
plot(t,i,'-g','linewidth',2);&lt;br /&gt;
xlabel('Tiempo');&lt;br /&gt;
ylabel('Intensidad(t)');&lt;br /&gt;
axis([-0.1,1,0,5])&lt;br /&gt;
&lt;br /&gt;
%Calculo error y lo dibujamos.&lt;br /&gt;
r=4-4*exp(-25*t);&lt;br /&gt;
error=abs(r-i);&lt;br /&gt;
figure(2)&lt;br /&gt;
plot(t,error,'-r','linewidth',2)&lt;br /&gt;
xlabel('Tiempo');&lt;br /&gt;
ylabel('Error');&lt;br /&gt;
axis([-0.1,1,-0.05,0.25])&lt;br /&gt;
}}&lt;br /&gt;
Un paso de discretización de 0'01 proporciona un error muy pequeño, lo que aporta una aproximación de la función muy similar a la real, como podemos observar en la primera figura. Analizando el error que nos ofrece dicha aproximación (imagen de la derecha),su valor no supera el 0'2, por tanto, podemos afirmar analíticamente la exactitud de la aproximación. Además, podemos observar que el error se anula al llegar a t=0'25, momento en el que coincide la función aproximada por Euler con la función real. &lt;br /&gt;
&lt;br /&gt;
[[Image:0.01.jpg|500px|thumb|left|Resultado de la intensidad del circuito RL simple por el método de Euler para h=0'01]] [[Image:error0.01.jpg|500px|thumb|center|Gráfica del error cometido en el cálculo de la intensidad por el método de Euler para h=0'01 ]]&lt;br /&gt;
&lt;br /&gt;
A continuación, vamos a calcular la función por el método de Euler con un paso mayor (h=0.05), para observar y analizar la diferencia de resultados al modificar los pasos.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br/&amp;gt; &amp;lt;br/&amp;gt;&lt;br /&gt;
{{matlab|codigo= %Resolucion por Euler&lt;br /&gt;
%Definimos las condiciones iniciales.&lt;br /&gt;
clear all&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=1;&lt;br /&gt;
&lt;br /&gt;
%Probamos con un paso de discretización mayor, h=0'05.&lt;br /&gt;
h=0.05;&lt;br /&gt;
t=t0:h:tN;&lt;br /&gt;
N=(tN-t0)/h;&lt;br /&gt;
&lt;br /&gt;
%Resolvemos la ecuación.&lt;br /&gt;
ii=0;&lt;br /&gt;
i(1)=ii;&lt;br /&gt;
for n=1:N;&lt;br /&gt;
  ii=ii+h*(100-25*ii);&lt;br /&gt;
  i(n+1)=ii;&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
%Creamos el dibujo.&lt;br /&gt;
figure(1)&lt;br /&gt;
plot(t,i,'-g','linewidth',2);&lt;br /&gt;
xlabel('Tiempo');&lt;br /&gt;
ylabel('Intensidad(t)');&lt;br /&gt;
axis([-0.1,1,0,5.1])&lt;br /&gt;
&lt;br /&gt;
%Calculo error y dibujamos.&lt;br /&gt;
r=4-4*exp(-25*t);&lt;br /&gt;
error=abs(r-i);&lt;br /&gt;
figure(2)&lt;br /&gt;
plot(t,error,'-r','linewidth',2)&lt;br /&gt;
axis([-0.1,1,-0.05,2.25])&lt;br /&gt;
xlabel('Tiempo');&lt;br /&gt;
ylabel('Error');&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
Al aumentar el paso de discretización a 0'05 vemos como la aproximación de la curva se ha convertido en una combinación de rectas que asemejan la evolución de la intensidad pues se sigue manteniendo una rápida subida inicial.  A pesar de ello, el error ha aumentado su valor en un 1000% en el periodo transitorio, pero vuelve a anularse en el permanente ya que a partir del punto de estabilización los valores aproximados coincide con los reales.El cambio producido en el incremento inicial de la intensidad se debe a la brevedad de éste, por lo que resulta poco preciso trabajar con pasos mayores.&lt;br /&gt;
&lt;br /&gt;
[[Image:0.05.jpg|500px|thumb|left|Resultado de la intensidad del circuito RL simple por el método de Euler para h=0'05 ]] [[Image:error0.05.jpg|500px|thumb|center| Gráfica del error cometido en el cálculo de la intensidad por el método de Euler para h=0'05]]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br/&amp;gt;&lt;br /&gt;
{{matlab|codigo= &lt;br /&gt;
%Comparamos las gráficas con diferentes pasos y la función real.&lt;br /&gt;
clear all&lt;br /&gt;
&lt;br /&gt;
%Guardamos el valor para cada paso.&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=1;&lt;br /&gt;
h1=0.05;&lt;br /&gt;
t1=t0:h1:tN;&lt;br /&gt;
N1=(tN-t0)/h1;&lt;br /&gt;
h2=0.01;&lt;br /&gt;
t2=t0:h2:tN;&lt;br /&gt;
N2=(tN-t0)/h2;&lt;br /&gt;
h3=0.075;&lt;br /&gt;
t3=t0:h3:tN;&lt;br /&gt;
N3=(tN-t0)/h3;&lt;br /&gt;
&lt;br /&gt;
%Creamos un bucle para cada h y resolver las cuatro ecuaciones.&lt;br /&gt;
ii=0;&lt;br /&gt;
i(1)=ii;&lt;br /&gt;
for n=1:N1;&lt;br /&gt;
  ii=ii+h1*(100-25*ii);&lt;br /&gt;
  i(n+1)=ii;&lt;br /&gt;
end&lt;br /&gt;
yy=0;&lt;br /&gt;
y(1)=yy;&lt;br /&gt;
for m=1:N2;&lt;br /&gt;
  yy=yy+h2*(100-25*yy);&lt;br /&gt;
  y(m+1)=yy;&lt;br /&gt;
end&lt;br /&gt;
jj=0;&lt;br /&gt;
j(1)=jj;&lt;br /&gt;
for m=1:N3;&lt;br /&gt;
  jj=jj+h3*(100-25*jj);&lt;br /&gt;
  j(m+1)=jj;&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
%Hacemos el dibujo con todas las gráficas a la vez para hacer una comparación global de estas y la función real.&lt;br /&gt;
hold on &lt;br /&gt;
fplot('4-4*exp(-25*t2)',[0,1,0,5],'r');&lt;br /&gt;
plot(t1,i,'-b','linewidth',1);&lt;br /&gt;
plot(t2,y,'-y','linewidth',1);&lt;br /&gt;
plot(t3,j,'-g','linewidth',1);&lt;br /&gt;
legend('Función real','h=0.05', 'h=0.01', 'h=0.075');&lt;br /&gt;
title('Comparativa');&lt;br /&gt;
xlabel('Tiempo');&lt;br /&gt;
ylabel('Intensidad(t)');&lt;br /&gt;
axis([-0.1,1,-0.05,8])&lt;br /&gt;
hold off&lt;br /&gt;
&lt;br /&gt;
%Quitamos el paso mayor para ver con mayor exactitud como se difieren las aproximaciones más correctas.&lt;br /&gt;
figure (2)&lt;br /&gt;
hold on &lt;br /&gt;
fplot('4-4*exp(-25*t2)',[0,1,0,5],'r');&lt;br /&gt;
plot(t1,i,'-b','linewidth',1);&lt;br /&gt;
plot(t2,y,'-g','linewidth',1);&lt;br /&gt;
legend('Función real','h=0.05', 'h=0.01');&lt;br /&gt;
title('Comparativa');&lt;br /&gt;
xlabel('Tiempo');&lt;br /&gt;
ylabel('Intensidad(t)');&lt;br /&gt;
axis([0,0.5,-0.05,5])&lt;br /&gt;
hold off&lt;br /&gt;
}}&lt;br /&gt;
Al ensayar con diferentes pasos de discretización vemos como la aproximación de la gráfica se va degenerando, hasta el punto en el que si se sobrepasa 0'05, la volatilidad de las oscilaciones llega a ser tal que la intensidad nunca llega a estabilizarse y el error no se anula ya que los valores son muy lejanos a los reales. Como la subida de intensidad se produce muy rápidamente, una h≥0'05 es, como podemos ver la imagen de la izquierda, muy poco precisa. Si se mantiene en el intervalo [0'02,0'05] se elimina la forma exponencial de la función (aparecen en su lugar fluctuaciones rectilíneas) pero se sigue reflejando la evolución de la intensidad hasta que se vuelve constante. Con un paso de 0'01, se consigue una gráfica exponencial con valores ligeramente superiores a los reales, por tanto podemos afirmar cuanto más pequeño sea el paso, más exacta y precisa será la aproximación ya que se trata de un aumento prácticamente instantáneo.&lt;br /&gt;
[[Image:123456.jpg|500px|thumb|left|Comparativa de la función real con aproximaciones con diferentes pasos de discretización.]]&lt;br /&gt;
[[Image:Abbb.jpg|500px|thumb|center|Comparativa de la función real con aproximaciones con pasos de discretización más precisos.]]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== Método del Trapecio. ====&lt;br /&gt;
{{matlab|codigo= &lt;br /&gt;
%Resolucion por Trapecio.&lt;br /&gt;
%Definimos las condiciones iniciales.&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=1;&lt;br /&gt;
&lt;br /&gt;
%Al tratarse del método de trapecio podemos usar un paso más grande.&lt;br /&gt;
h=0.05;&lt;br /&gt;
t=t0:h:tN;&lt;br /&gt;
N=(tN-t0)/h;&lt;br /&gt;
i=zeros(1,N+1);&lt;br /&gt;
i(1)=0;&lt;br /&gt;
&lt;br /&gt;
%Resolvemos la ecuación.&lt;br /&gt;
for n=1:N;&lt;br /&gt;
    i(n+1)=((200*h)/(2+25*h))+(i(n)*((2-25*h)/(2+25*h)));&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
%Dibujamos.&lt;br /&gt;
figure (1)&lt;br /&gt;
plot(t,i,'-r','linewidth',2)&lt;br /&gt;
xlabel('Tiempo')&lt;br /&gt;
ylabel('Intensidad(t)')&lt;br /&gt;
axis([0,1,-0.05,4.25])&lt;br /&gt;
&lt;br /&gt;
%Cambiamos los ejes del dibujo y añadimos líneas auxiliares para poder ver con mayor &lt;br /&gt;
%precisión el punto en el que la intensidad se hace constante.&lt;br /&gt;
figure (2)&lt;br /&gt;
plot(t,i,'-b','linewidth',2)&lt;br /&gt;
xlabel('Tiempo')&lt;br /&gt;
ylabel('Intensidad(t)')&lt;br /&gt;
axis([0,0.4,2,4.1])&lt;br /&gt;
grid on&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Image:Trapecio3a.jpg|450px|thumb|left|Resultado de la intensidad del circuito RL simple por el método del trapecio.]]&lt;br /&gt;
[[Image:Trapecio3a11.jpg|450px|thumb|center|Visualización del punto en que se hace constante la intensidad.]]&lt;br /&gt;
&amp;lt;br/&amp;gt;&amp;lt;br/&amp;gt;&lt;br /&gt;
La representación de la función por el método del Trapecio nos permite utilizar un paso de discretización mayor quedando como resultado una aproximación muy similar a la original (podemos observar ésto en la imagen de la izquierda).&lt;br /&gt;
Una ampliación de dicha aproximación nos permite ver con exactitud el punto en el cual la intensidad se hace constante,(0'25,4), es decir t=0'25 e i(t)=4.&lt;br /&gt;
 &amp;lt;br/&amp;gt;&lt;br /&gt;
===== Efectos en la función al variar la constante de inductor. =====&lt;br /&gt;
Se ha estudiado las alteraciones producidas en la función cuando se disminuye o aumenta la constante del inductor, L. A continuación se muestran las gráficas resultantes al modificar dicho valor.&lt;br /&gt;
{{matlab|codigo= %Resolucion por Trapecio.&lt;br /&gt;
%Definimos las condiciones iniciales.&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=1;&lt;br /&gt;
h=0.05;&lt;br /&gt;
t=t0:h:tN;&lt;br /&gt;
N=(tN-t0)/h;&lt;br /&gt;
i=zeros(N+1);&lt;br /&gt;
i(1)=0;&lt;br /&gt;
&lt;br /&gt;
%Cambiamos la L y resolvemos su ecuación correspondiente.&lt;br /&gt;
L=3.2;&lt;br /&gt;
for n=1:N;&lt;br /&gt;
    i(n+1)=((40*h)/(2*L+5*h))+i(n)*((2*L-5*h)/(2*L+5*h));&lt;br /&gt;
end&lt;br /&gt;
figure (1)&lt;br /&gt;
plot(t,i,'-b','linewidth',2)&lt;br /&gt;
xlabel('Tiempo')&lt;br /&gt;
ylabel('Intensidad(t)')&lt;br /&gt;
title('L=3.2')&lt;br /&gt;
grid on&lt;br /&gt;
&lt;br /&gt;
%Cambiamos la L y resolvemos su ecuación correspondiente.&lt;br /&gt;
y=zeros(N+1);&lt;br /&gt;
y(1)=0;&lt;br /&gt;
L=0.8;&lt;br /&gt;
for m=1:N;&lt;br /&gt;
    y(m+1)=((40*h)/(2*L+5*h))+y(m)*((2*L-5*h)/(2*L+5*h));&lt;br /&gt;
end&lt;br /&gt;
figure (2)&lt;br /&gt;
plot(t,y,'-r','linewidth',2)&lt;br /&gt;
xlabel('Tiempo')&lt;br /&gt;
ylabel('Intensidad(t)')&lt;br /&gt;
title('L=0.8')&lt;br /&gt;
grid on&lt;br /&gt;
&lt;br /&gt;
%Cambiamos la L y resolvemos su ecuación correspondiente.&lt;br /&gt;
j=zeros(N+1);&lt;br /&gt;
j(1)=0;&lt;br /&gt;
L=0.05;&lt;br /&gt;
for o=1:N;&lt;br /&gt;
    j(o+1)=((40*h)/(2*L+5*h))+j(o)*((2*L-5*h)/(2*L+5*h));&lt;br /&gt;
end&lt;br /&gt;
figure (3)&lt;br /&gt;
plot(t,j,'-g','linewidth',2)&lt;br /&gt;
xlabel('Tiempo')&lt;br /&gt;
ylabel('Intensidad(t)')&lt;br /&gt;
title('L=0.05')&lt;br /&gt;
grid on&lt;br /&gt;
&lt;br /&gt;
%Cambiamos la L y resolvemos su ecuación correspondiente.&lt;br /&gt;
k=zeros(N+1);&lt;br /&gt;
k(1)=0;&lt;br /&gt;
L=0.0125;&lt;br /&gt;
for l=1:N;&lt;br /&gt;
    k(l+1)=((40*h)/(2*L+5*h))+k(l)*((2*L-5*h)/(2*L+5*h));&lt;br /&gt;
end&lt;br /&gt;
figure (4)&lt;br /&gt;
plot(t,k,'-c','linewidth',2)&lt;br /&gt;
xlabel('Tiempo')&lt;br /&gt;
ylabel('Intensidad(t)')&lt;br /&gt;
title('L=0.0125')&lt;br /&gt;
grid on&lt;br /&gt;
}}&lt;br /&gt;
&amp;lt;br/&amp;gt;&lt;br /&gt;
*Como podemos observar a medida que incrementamos el valor de L, se acentúa la 'exponencialidad' de la función hasta llegar a aproximarse a una recta. A medida que aumenta el parecido a una recta, el tiempo de estabilización se extiende por ser la inductancia mayor, así como el valor de la intensidad cuando es constante.&lt;br /&gt;
*De igual forma al reducirlo, la subida de la intensidad hasta llegar a una cifra constante es mucho mayor, aumenta el periodo transitorio, pero de forma más moderada que en los casos anteriores y manteniendo la constancia en i(t)=4; sin embargo, la función deja de ser exponencial convirtiéndose en fluctuaciones de rectas que van reduciendo su volatilidad con el paso del tiempo.&lt;br /&gt;
[[Image:3.2.jpg|400px|thumb|left|L=3'2.]]&lt;br /&gt;
[[Image:0.8.jpg|400px|thumb|center|L=0'8.]]&lt;br /&gt;
&amp;lt;br/&amp;gt;&lt;br /&gt;
[[Image:0.0125.jpg|400px|thumb|left|L=0'0125.]]&lt;br /&gt;
[[Image:0.051.jpg|400px|thumb|center|L=0'5.]]&lt;br /&gt;
&amp;lt;br/&amp;gt;&amp;lt;br/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Leyes de Kirchhoff ==&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Circuito 2 completo.jpg|300px|thumb|left| ]]&lt;br /&gt;
&lt;br /&gt;
Según las  leyes de Kirchhoff, el sistema de ecuaciones diferenciales correspondiente al circuito 2 es el siguiente:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\left\{\begin{matrix}\ [1] E(t) = R_1\cdot i_1(t) + L_2\cdot \frac{d}{dt}\cdot i_2(t) + R_2\cdot i_2(t)\\ [2] E(t) = R_1\cdot i_1(t) + L_1\cdot \frac{d}{dt}\cdot i_3(t) + R_3\cdot i_3(t)\\ [3] i_1(t) = i_2(t) + i_3(t)\end{matrix}\right.&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''[1]'''Correspondiente al recorrido exterior del circuito.&amp;lt;br/&amp;gt;&lt;br /&gt;
'''[2]'''Correspondiente a la malla izquierda, (malla 1).&amp;lt;br/&amp;gt;&lt;br /&gt;
'''[3]'''Correspondiente al nudo de la parte superior del circuito(Ley de corrientes de Kirchhoff).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Sustituyendo la tercera ecuación en las otras dos, se obtiene el sistema en términos de i2(t) e i3(t) matricialmente::&amp;lt;math&amp;gt;\frac{d}{dt}\cdot \begin{pmatrix} i_2\\i_3 \end{pmatrix} = - \begin{pmatrix} \frac{R_1+R_2}{L_2}&amp;amp;\frac{R_1}{L_2} \\ \frac{R_1}{L_1}&amp;amp;\frac{R_1+R_3}{L_1}\end{pmatrix} \cdot \begin{pmatrix} i_2\\i_3 \end{pmatrix} + \begin{pmatrix} \frac{E}{L_2} \\ \frac{E}{L_1} \end{pmatrix}&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
A partir de las condiciones iniciales i2(0)=i3(0)=0 se puede interpretar que la corriente en el circuito es nula en el momento  en el cual se conecta el generador.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== Cálculo de las intensidades de un circuito con varias resistencias y bobinas a partir del Método de Euler y del Trapecio. ====&lt;br /&gt;
Ya se ha visto que la expresión de las intensidades i2 e i3 de este circuito RL vienen dadas por dos ecuaciones diferenciales que conforman un sistema. Este sistema de ecuaciones diferenciales se puede resolver numéricamente a partir del método de Euler y del trapecio, los cuales se basan en la aproximación de las áreas de esa ecuación diferencial al valor real de la función en cada momento.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Partiendo de unos datos iniciales iguales a:&lt;br /&gt;
&lt;br /&gt;
'''&amp;lt;math&amp;gt; R_1=R_2=6Ω &amp;lt;/math&amp;gt;''' , '''&amp;lt;math&amp;gt; R_3=3Ω &amp;lt;/math&amp;gt;''' , '''&amp;lt;math&amp;gt; L_1=0,3Hz &amp;lt;/math&amp;gt;''' , '''&amp;lt;math&amp;gt; L_2=0,11Hz &amp;lt;/math&amp;gt;''' y '''&amp;lt;math&amp;gt; E(t)=20 V &amp;lt;/math&amp;gt;'''&lt;br /&gt;
&lt;br /&gt;
 :&amp;lt;math&amp;gt;\frac{d}{dt}\cdot \begin{pmatrix} i_2\\i_3 \end{pmatrix} = - \begin{pmatrix} \frac{6+6}{0,11}&amp;amp;\frac{6}{0,11} \\ \frac{6}{0,3}&amp;amp;\frac{6+3}{0,3}\end{pmatrix} \cdot \begin{pmatrix} i_2\\i_3 \end{pmatrix} + \begin{pmatrix} \frac{20}{0,11} \\ \frac{20}{0,3} \end{pmatrix}&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
Resolvemos las ecuaciones diferenciales:&lt;br /&gt;
&lt;br /&gt;
* ''' MÉTODO DE EULER: '''&lt;br /&gt;
'''OCTAVE'''&lt;br /&gt;
{{matlab|codigo= &lt;br /&gt;
DATOS:&lt;br /&gt;
&lt;br /&gt;
clc;clear all;&lt;br /&gt;
    %t0=tiempo inicial&lt;br /&gt;
t0=0;&lt;br /&gt;
    %tN=tiempo máximo a evaluar&lt;br /&gt;
tN=0.04;&lt;br /&gt;
    %soluciones en y0 para las variables i2 e i3&lt;br /&gt;
y0=0;&lt;br /&gt;
    %N=intervalos en los que se dividen&lt;br /&gt;
N=25;&lt;br /&gt;
    %h=salto de intervalo en intervalo&lt;br /&gt;
h=(tN-t0)/N;&lt;br /&gt;
    %i1,i2,i3=vectores solución desde t0 a tN de h en h&lt;br /&gt;
i1=t0:h:tN;&lt;br /&gt;
&lt;br /&gt;
i2=t0:h:tN;&lt;br /&gt;
&lt;br /&gt;
i3=t0:h:tN;&lt;br /&gt;
&lt;br /&gt;
    %y=vector de ceros y que va a almacenar las soluciones.Tendrá N+1 términos porque el primero es el cero y el ultimo el N&lt;br /&gt;
    %la intensidad dos es y(:,1),es decir, la fila 1.&lt;br /&gt;
    %la intensidad tres es y(:,2),es decir, la fila 2.&lt;br /&gt;
    %la intensidad uno es y(:,3),es decir, la fila 3.&lt;br /&gt;
y=zeros(N+1,3);&lt;br /&gt;
y(1,1)=y0;&lt;br /&gt;
y(1,2)=y0;&lt;br /&gt;
y(1,3)=y0;&lt;br /&gt;
%AHORA SE EMPIEZA A RESOLVER POR EULER EL SISTEMA.&lt;br /&gt;
%y(n+1)=y(n)+h*f(t(n),y(n))&lt;br /&gt;
%f(t,i2)=((E/L2)-R1*(i2+i3)+R2*i2)/L2&lt;br /&gt;
%f(t,i3)=((E/L1)-R1*(i2+i3)+R3*i3)/L1&lt;br /&gt;
for n=1:N&lt;br /&gt;
    y(n+1,1)=y(n,1)+h*((20/0.11)-(6*(y(n,1)+y(n,2))+6*y(n,1))/0.11);&lt;br /&gt;
    y(n+1,2)=y(n,2)+h*((20/0.3)-(6*(y(n,1)+y(n,2))+3*y(n,2))/0.3);&lt;br /&gt;
    y(n+1,3)=y(n+1,1)+y(n+1,2);&lt;br /&gt;
end&lt;br /&gt;
hold on&lt;br /&gt;
plot(i1,y(:,3),'+')&lt;br /&gt;
plot(i2,y(:,1),'r+')&lt;br /&gt;
plot(i3,y(:,2),'g+')&lt;br /&gt;
xlabel('Tiempo');&lt;br /&gt;
ylabel('Intensidad(t)');&lt;br /&gt;
legend('i1', 'i2', 'i3');&lt;br /&gt;
grid on&lt;br /&gt;
}}&lt;br /&gt;
* ''' MÉTODO DEL TRAPECIO: '''&lt;br /&gt;
'''OCTAVE'''&lt;br /&gt;
{{matlab|codigo= &lt;br /&gt;
DATOS:&lt;br /&gt;
clc;clear all;&lt;br /&gt;
    %tiempo inicial&lt;br /&gt;
t0=0;&lt;br /&gt;
    %tiempo máximo a evaluar&lt;br /&gt;
tN=0.04;&lt;br /&gt;
    %soluciones en y0 para las variables i2 e i3&lt;br /&gt;
y0=0;&lt;br /&gt;
    %intervalos en los que se dividen&lt;br /&gt;
N=25;&lt;br /&gt;
	%salto de intervalo en intervalo&lt;br /&gt;
h=(tN-t0)/N;&lt;br /&gt;
    %vectores solución desde t0 a tN de h en h&lt;br /&gt;
i1=t0:h:tN;&lt;br /&gt;
i2=t0:h:tN;&lt;br /&gt;
i3=t0:h:tN;&lt;br /&gt;
    %vector de ceros y que va a almacenar las soluciones&lt;br /&gt;
    %tendra N+1 términos porque el primero es el cero y el ultimo el N&lt;br /&gt;
    %la intensidad dos es y(:,1)&lt;br /&gt;
    %la intensidad tres es y(:,2)&lt;br /&gt;
    %la intensidad uno es y(:,3)&lt;br /&gt;
y=zeros(N+1,3);&lt;br /&gt;
y(1,1)=y0;&lt;br /&gt;
y(1,2)=y0;&lt;br /&gt;
y(1,3)=y0;&lt;br /&gt;
PARA RESOLVER POR EL MÉTODO DEL TRAPECIO:&lt;br /&gt;
%y(n+1)=y(n)+(h/2)*(f(t(n),y(n)+f(t(n+1),y(n+1))&lt;br /&gt;
%f(t,i2)=((E/L2)-R1*(i2+i3)+R2*i2)/L2&lt;br /&gt;
%f(t,i3)=((E/L1)-R1*(i2+i3)+R3*i3)/L1&lt;br /&gt;
for n=1:N&lt;br /&gt;
    y(n+1,1)=y(n,1)+(h/2)*(((20/0.11)-(6*(y(n,1)+y(n,2))+6*y(n,1))/0.11)+((20/0.11)-(6*(y(n+1,1)+y(n+1,2))+6*y(n+1,1))/0.11));&lt;br /&gt;
    y(n+1,2)=y(n,2)+(h/2)*(((20/0.3)-(6*(y(n,1)+y(n,2))+3*y(n,2))/0.3)+((20/0.3)-(6*(y(n+1,1)+y(n+1,2))+3*y(n+1,2))/0.3));  &lt;br /&gt;
    y(n+1,3)=y(n+1,1)+y(n+1,2);&lt;br /&gt;
end&lt;br /&gt;
plot(i1,y(:,3))&lt;br /&gt;
plot(i2,y(:,1),'r')&lt;br /&gt;
plot(i3,y(:,2),'g')&lt;br /&gt;
xlabel('Tiempo');&lt;br /&gt;
ylabel('Intensidad(t)');&lt;br /&gt;
hold off&lt;br /&gt;
}}&lt;br /&gt;
&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
[[Archivo:Grafica.MétodoEuleryTrapeciojuntosfinal.png|800px|thumb|left|Gráfica del resultado del Método de Euler y Trapecio en el cálculo de las intensidades.]]&lt;br /&gt;
&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''En el resultado de la gráfica, lo obtenido con el método de Euler se representa con los símbolos &amp;quot;+&amp;quot;, mientras que la línea continua corresponde al Método del Trapecio. Como se puede apreciar, ambos métodos dan resultados similares y muy próximos. En la interpretación de los resultados, diríamos que se trata de corrientes muy estables.'''&lt;br /&gt;
[[Categoría:Ecuaciones Diferentiales]]&lt;br /&gt;
[[Categoría:ED13/14]]&lt;br /&gt;
[[Categoría:Trabajos 2013-14]]&lt;/div&gt;</summary>
		<author><name>Lucia Lopez</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Circuitos_RL_(grupo_B)&amp;diff=8892</id>
		<title>Circuitos RL (grupo B)</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Circuitos_RL_(grupo_B)&amp;diff=8892"/>
				<updated>2014-02-27T23:02:26Z</updated>
		
		<summary type="html">&lt;p&gt;Lucia Lopez: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{ TrabajoED | Circuitos RL. Grupo 2-B | [[:Categoría:Ecuaciones Diferenciales|Ecuaciones Diferenciales]]|[[:Categoría:ED13/14|Curso 2013-14]] | Diego Solano López,Lucia López Sánchez,Adela González Barbado,Araceli Martín Candilejo,Ignacio Díaz Caneja Camblor,Alberto Fernández Pérez }}&lt;br /&gt;
&lt;br /&gt;
El circuito eléctrico mas simple esta compuesto de una resistencia, un inductor o bobina y una fuente de alimentación.&lt;br /&gt;
* En una resistencia R, la Ley de Ohm establece:&lt;br /&gt;
&lt;br /&gt;
  &amp;lt;math&amp;gt;i(t)={V(t)\over R}&amp;lt;/math&amp;gt;&lt;br /&gt;
* En un inductor L la Ley de Faraday dice:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; V(t)=L\cdot i'(t)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Image:cicuito1.jpg|frameless|center]]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
Las leyes de Kirchoff establecen el comportamiento de los circuitos:&lt;br /&gt;
# '''Ley de corriente:''' en cada nodo la suma de corrientes que entra coincide con la suma de corrientes que sale.&lt;br /&gt;
# '''Ley de tensiones:''' en cada ciclo cerrado, la suma de las diferencias de potencial eléctrico es nula.&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
[[Categoría:Ecuaciones Diferentiales]]&lt;br /&gt;
[[Categoría:ED13/14]]&lt;br /&gt;
[[Categoría:Trabajos 2013-14]]&lt;/div&gt;</summary>
		<author><name>Lucia Lopez</name></author>	</entry>

	</feed>