<?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=Fernando+Madrid</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=Fernando+Madrid"/>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/wiki/Especial:Contribuciones/Fernando_Madrid"/>
		<updated>2026-04-23T18:02:53Z</updated>
		<subtitle>Contribuciones del usuario</subtitle>
		<generator>MediaWiki 1.26.2</generator>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Ecuaci%C3%B3n_del_calor_DF&amp;diff=104529</id>
		<title>Ecuación del calor DF</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Ecuaci%C3%B3n_del_calor_DF&amp;diff=104529"/>
				<updated>2026-04-12T16:46:47Z</updated>
		
		<summary type="html">&lt;p&gt;Fernando Madrid: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{ TrabajoED | Series de Fourier. Grupo DF | [[:Categoría:EDP|EDP]]|[[:Categoría:EDP25/26|2025-26]] | Daniel Tormos&lt;br /&gt;
&lt;br /&gt;
Fernando Madrid&lt;br /&gt;
  }}&lt;br /&gt;
Este trabajo se centra en el estudio de la ecuación del calor para variedades de Riemann. En particular, se introduce el concepto del operador de Laplace-Beltrami y se hace el cálculo de la solución de la ecuación de difusión en &amp;lt;math&amp;gt;S^2&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Media:Ecuacion del calor poster.pdf|Poster ecuación del calor.]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Categoría:EDP]]&lt;br /&gt;
[[Categoría:EDP25/26]]&lt;/div&gt;</summary>
		<author><name>Fernando Madrid</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Ecuaci%C3%B3n_del_calor_DF&amp;diff=104525</id>
		<title>Ecuación del calor DF</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Ecuaci%C3%B3n_del_calor_DF&amp;diff=104525"/>
				<updated>2026-04-12T16:44:53Z</updated>
		
		<summary type="html">&lt;p&gt;Fernando Madrid: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{ TrabajoED | Series de Fourier. Grupo DF | [[:Categoría:EDP|EDP]]|[[:Categoría:EDP25/26|2025-26]] | Daniel Tormos&lt;br /&gt;
&lt;br /&gt;
Fernando Madrid&lt;br /&gt;
  }}&lt;br /&gt;
Este trabajo se centra en el estudio de la ecuación del calor para variedades de Riemann. En particular, se introduce el concepto del operador de Laplace-Beltrami y se hace el cálculo de la solución de la ecuación de difusión en $S^2$.&lt;br /&gt;
[[Media:Ecuacion del calor poster.pdf|Poster ecuación del calor.]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Categoría:EDP]]&lt;br /&gt;
[[Categoría:EDP25/26]]&lt;/div&gt;</summary>
		<author><name>Fernando Madrid</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Ecuaci%C3%B3n_del_calor_DF&amp;diff=104523</id>
		<title>Ecuación del calor DF</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Ecuaci%C3%B3n_del_calor_DF&amp;diff=104523"/>
				<updated>2026-04-12T16:40:26Z</updated>
		
		<summary type="html">&lt;p&gt;Fernando Madrid: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{ TrabajoED | Series de Fourier. Grupo DF | [[:Categoría:EDP|EDP]]|[[:Categoría:EDP25/26|2025-26]] | Daniel Tormos&lt;br /&gt;
&lt;br /&gt;
Fernando Madrid&lt;br /&gt;
  }}&lt;br /&gt;
[[Media:Ecuacion del calor poster.pdf|Poster ecuación del calor.]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Categoría:EDP]]&lt;br /&gt;
[[Categoría:EDP25/26]]&lt;/div&gt;</summary>
		<author><name>Fernando Madrid</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Ecuaci%C3%B3n_del_calor_DF&amp;diff=104522</id>
		<title>Ecuación del calor DF</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Ecuaci%C3%B3n_del_calor_DF&amp;diff=104522"/>
				<updated>2026-04-12T16:39:44Z</updated>
		
		<summary type="html">&lt;p&gt;Fernando Madrid: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{ TrabajoED | Series de Fourier. Grupo DFN | [[:Categoría:EDP|EDP]]|[[:Categoría:EDP25/26|2025-26]] | Daniel Tormos&lt;br /&gt;
&lt;br /&gt;
Fernando Madrid&lt;br /&gt;
  }}&lt;br /&gt;
[[Media:Ecuacion del calor poster.pdf|Poster ecuación del calor.]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Categoría:EDP]]&lt;br /&gt;
[[Categoría:EDP25/26]]&lt;/div&gt;</summary>
		<author><name>Fernando Madrid</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Ecuaci%C3%B3n_del_calor_DF&amp;diff=104521</id>
		<title>Ecuación del calor DF</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Ecuaci%C3%B3n_del_calor_DF&amp;diff=104521"/>
				<updated>2026-04-12T16:39:27Z</updated>
		
		<summary type="html">&lt;p&gt;Fernando Madrid: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{ TrabajoED | Series de Fourier. Grupo DFN | [[:Categoría:EDP|EDP]]|[[:Categoría:EDP25/26|2025-26]] | Daniel Tormos&lt;br /&gt;
&lt;br /&gt;
Fernando Madrid&lt;br /&gt;
  }}&lt;br /&gt;
[[Media:Ecuacion del calor poster.pdf|Poster ecuación del calor.]]&lt;br /&gt;
[[Archivo:Ecuacion del calor poster.pdf|thumb|center|300px|Póster sobre la Ecuación del Calor]]&lt;br /&gt;
&lt;br /&gt;
[[Categoría:EDP]]&lt;br /&gt;
[[Categoría:EDP25/26]]&lt;/div&gt;</summary>
		<author><name>Fernando Madrid</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Ecuaci%C3%B3n_del_calor_DF&amp;diff=104520</id>
		<title>Ecuación del calor DF</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Ecuaci%C3%B3n_del_calor_DF&amp;diff=104520"/>
				<updated>2026-04-12T16:38:56Z</updated>
		
		<summary type="html">&lt;p&gt;Fernando Madrid: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{ TrabajoED | Series de Fourier. Grupo DFN | [[:Categoría:EDP|EDP]]|[[:Categoría:EDP25/26|2025-26]] | Daniel Tormos&lt;br /&gt;
&lt;br /&gt;
Fernando Madrid&lt;br /&gt;
  }}&lt;br /&gt;
[[Media:Ecuacion del calor poster.pdf|Poster ecuación del calor.]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Categoría:EDP]]&lt;br /&gt;
[[Categoría:EDP25/26]]&lt;/div&gt;</summary>
		<author><name>Fernando Madrid</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Ecuaci%C3%B3n_del_calor_DF&amp;diff=104518</id>
		<title>Ecuación del calor DF</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Ecuaci%C3%B3n_del_calor_DF&amp;diff=104518"/>
				<updated>2026-04-12T16:38:08Z</updated>
		
		<summary type="html">&lt;p&gt;Fernando Madrid: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{ TrabajoED | Series de Fourier. Grupo DFN | [[:Categoría:EDP|EDP]]|[[:Categoría:EDP25/26|2025-26]] | Daniel Tormos&lt;br /&gt;
&lt;br /&gt;
Fernando Madrid&lt;br /&gt;
  }}&lt;br /&gt;
[[Media:Ecuacion del calor poster.pdf|Haz clic aquí para ver el póster de la ecuación del calor]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Categoría:EDP]]&lt;br /&gt;
[[Categoría:EDP25/26]]&lt;/div&gt;</summary>
		<author><name>Fernando Madrid</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Archivo:Ecuacion_del_calor_poster.pdf&amp;diff=104514</id>
		<title>Archivo:Ecuacion del calor poster.pdf</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Archivo:Ecuacion_del_calor_poster.pdf&amp;diff=104514"/>
				<updated>2026-04-12T16:31:34Z</updated>
		
		<summary type="html">&lt;p&gt;Fernando Madrid: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>Fernando Madrid</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Ecuaci%C3%B3n_del_calor_DF&amp;diff=104513</id>
		<title>Ecuación del calor DF</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Ecuaci%C3%B3n_del_calor_DF&amp;diff=104513"/>
				<updated>2026-04-12T16:29:36Z</updated>
		
		<summary type="html">&lt;p&gt;Fernando Madrid: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{ TrabajoED | Series de Fourier. Grupo DFN | [[:Categoría:EDP|EDP]]|[[:Categoría:EDP25/26|2025-26]] | Daniel Tormos&lt;br /&gt;
&lt;br /&gt;
Fernando Madrid&lt;br /&gt;
  }}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Categoría:EDP]]&lt;br /&gt;
[[Categoría:EDP25/26]]&lt;/div&gt;</summary>
		<author><name>Fernando Madrid</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Ecuaci%C3%B3n_del_calor_DF&amp;diff=104512</id>
		<title>Ecuación del calor DF</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Ecuaci%C3%B3n_del_calor_DF&amp;diff=104512"/>
				<updated>2026-04-12T16:29:13Z</updated>
		
		<summary type="html">&lt;p&gt;Fernando Madrid: /* miniaturadeimagen|Póster */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=[[Archivo:Poster DFN.pdf|miniaturadeimagen|Póster]]=&lt;br /&gt;
{{ TrabajoED | Series de Fourier. Grupo DFN | [[:Categoría:EDP|EDP]]|[[:Categoría:EDP25/26|2025-26]] | Daniel Tormos&lt;br /&gt;
&lt;br /&gt;
Fernando Madrid&lt;br /&gt;
  }}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Categoría:EDP]]&lt;br /&gt;
[[Categoría:EDP25/26]]&lt;/div&gt;</summary>
		<author><name>Fernando Madrid</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Ecuaci%C3%B3n_del_calor_DF&amp;diff=104511</id>
		<title>Ecuación del calor DF</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Ecuaci%C3%B3n_del_calor_DF&amp;diff=104511"/>
				<updated>2026-04-12T16:28:52Z</updated>
		
		<summary type="html">&lt;p&gt;Fernando Madrid: /* miniaturadeimagen|Póster */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=[[Archivo:Poster DF.pdf|miniaturadeimagen|Póster]]=&lt;br /&gt;
{{ TrabajoED | Series de Fourier. Grupo DFN | [[:Categoría:EDP|EDP]]|[[:Categoría:EDP25/26|2025-26]] | Daniel Tormos&lt;br /&gt;
&lt;br /&gt;
Fernando Madrid&lt;br /&gt;
  }}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Categoría:EDP]]&lt;br /&gt;
[[Categoría:EDP25/26]]&lt;/div&gt;</summary>
		<author><name>Fernando Madrid</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Ecuaci%C3%B3n_del_calor_DF&amp;diff=104500</id>
		<title>Ecuación del calor DF</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Ecuaci%C3%B3n_del_calor_DF&amp;diff=104500"/>
				<updated>2026-04-12T15:37:21Z</updated>
		
		<summary type="html">&lt;p&gt;Fernando Madrid: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=[[Archivo:Poster DFN.pdf|miniaturadeimagen|Póster]]=&lt;br /&gt;
{{ TrabajoED | Series de Fourier. Grupo DFN | [[:Categoría:EDP|EDP]]|[[:Categoría:EDP25/26|2025-26]] | Daniel Tormos&lt;br /&gt;
&lt;br /&gt;
Fernando Madrid&lt;br /&gt;
  }}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Categoría:EDP]]&lt;br /&gt;
[[Categoría:EDP25/26]]&lt;/div&gt;</summary>
		<author><name>Fernando Madrid</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Ecuaci%C3%B3n_del_calor_DF&amp;diff=104499</id>
		<title>Ecuación del calor DF</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Ecuaci%C3%B3n_del_calor_DF&amp;diff=104499"/>
				<updated>2026-04-12T15:36:20Z</updated>
		
		<summary type="html">&lt;p&gt;Fernando Madrid: Página reemplazada por «=Póster= {{ TrabajoED | Series de Fourier. Grupo DFN | EDP|2025-26 | Daniel...»&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=[[Archivo:Poster DFN.pdf|miniaturadeimagen|Póster]]=&lt;br /&gt;
{{ TrabajoED | Series de Fourier. Grupo DFN | [[:Categoría:EDP|EDP]]|[[:Categoría:EDP25/26|2025-26]] | Daniel Tormos&lt;br /&gt;
&lt;br /&gt;
Fernando Madrid&lt;br /&gt;
  }}&lt;/div&gt;</summary>
		<author><name>Fernando Madrid</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Ecuaci%C3%B3n_del_calor_DF&amp;diff=104498</id>
		<title>Ecuación del calor DF</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Ecuaci%C3%B3n_del_calor_DF&amp;diff=104498"/>
				<updated>2026-04-12T15:35:04Z</updated>
		
		<summary type="html">&lt;p&gt;Fernando Madrid: Página creada con «=Póster= {{ TrabajoED | Series de Fourier. Grupo DFN | EDP|2025-26 | Daniel Tormo...»&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=[[Archivo:Poster DFN.pdf|miniaturadeimagen|Póster]]=&lt;br /&gt;
{{ TrabajoED | Series de Fourier. Grupo DFN | [[:Categoría:EDP|EDP]]|[[:Categoría:EDP25/26|2025-26]] | Daniel Tormos&lt;br /&gt;
&lt;br /&gt;
Fernando Madrid&lt;br /&gt;
  }}&lt;br /&gt;
&lt;br /&gt;
__TOC__&lt;br /&gt;
&lt;br /&gt;
=Funciones =&lt;br /&gt;
&lt;br /&gt;
Esta primera función calcula los coeficientes de Fourier de manera aleatoria en base a una función f.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;source lang: &amp;quot;Matlab&amp;quot; line&amp;gt;&lt;br /&gt;
function [coefs] = rand_coefs(f,N)&lt;br /&gt;
    % Crea un vector de N elementos con coeficientes a_i aleatorios entre&lt;br /&gt;
    % f(i) y -f(i).&lt;br /&gt;
    coefs = zeros(N,1);&lt;br /&gt;
    for i = 1:N&lt;br /&gt;
        coefs(i) = rand*2*f(i)-f(i);&lt;br /&gt;
    end&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Esta función genera la Serie de Fourier a partir de sus coeficientes.&lt;br /&gt;
&amp;lt;source lang: &amp;quot;Matlab&amp;quot; line&amp;gt;&lt;br /&gt;
function [F] = generar_F(a,b)&lt;br /&gt;
    % Genera una función F a partir de sus coeficientes de Fourier.&lt;br /&gt;
    &lt;br /&gt;
    % a son los N+1 coeficientes para los elementos pares de la base&lt;br /&gt;
    % trigonométrica en [-pi,pi], y b son los N coeficientes de los &lt;br /&gt;
    % elementos impares.&lt;br /&gt;
&lt;br /&gt;
    N = length(b);&lt;br /&gt;
    n = (1:N)';  % Vector columna&lt;br /&gt;
    a = a(:);    % Asegurar que a es columna&lt;br /&gt;
    b = b(:);    % Asegurar que b es columna&lt;br /&gt;
    &lt;br /&gt;
    F = @(x) (a(1)/sqrt(2*pi)) + sum((a(n+1)/sqrt(pi)).*cos(n*x) + (b(n)/sqrt(pi)).*sin(n*x), 1);&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Con esto creamos una lista de series de Fourier.&lt;br /&gt;
&amp;lt;source lang: &amp;quot;Matlab&amp;quot; line&amp;gt;&lt;br /&gt;
function [coefs, funciones] = familia_funciones(f,N,Num)&lt;br /&gt;
    % f,N son las entradas para rand_coefs&lt;br /&gt;
    % Num es el número de funciones de la familia&lt;br /&gt;
&lt;br /&gt;
    % Devuelve:&lt;br /&gt;
&lt;br /&gt;
    % Una lista de parejas de vectores de coeficientes a y b. Para&lt;br /&gt;
    % obtener los coeficientes impares de la funcion 3 (por ejemplo),&lt;br /&gt;
    % llamas coefs(3).b&lt;br /&gt;
&lt;br /&gt;
    % Una lista de funciones. Para obtener la función 3, llamas&lt;br /&gt;
    % funciones{3}&lt;br /&gt;
&lt;br /&gt;
    coefs(Num) = struct('a',[],'b',[]);&lt;br /&gt;
    funciones = cell(1,Num);&lt;br /&gt;
    for i = 1:Num&lt;br /&gt;
        coefs(i).a = rand_coefs(f,N+1);&lt;br /&gt;
        coefs(i).b = rand_coefs(f,N);&lt;br /&gt;
        funciones{i} = generar_F(coefs(i).a,coefs(i).b); &lt;br /&gt;
    end&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=Códigos=&lt;br /&gt;
En esta primera hacemos los cálculos de media, varianza y covarianza.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;source lang: &amp;quot;Matlab&amp;quot; line&amp;gt;&lt;br /&gt;
&lt;br /&gt;
f1 = @(x) 1./(x.^2); f2 = @(x) 1./x; f3 = @(x) 1/sqrt(x);&lt;br /&gt;
N = 500;&lt;br /&gt;
Num = 1e5;&lt;br /&gt;
[coefs,funciones] = familia_funciones(f2,N,Num); % Elegir la f_i que se quiera&lt;br /&gt;
x1 = 1; x2 = 0.2; % Distintos puntos&lt;br /&gt;
Sum_1 = 0;&lt;br /&gt;
Sum_2 = 0;&lt;br /&gt;
for i =1:Num&lt;br /&gt;
    Sum_1 = Sum_1 + funciones{i}(x1);&lt;br /&gt;
    Sum_2 = Sum_2 + funciones{i}(x2);&lt;br /&gt;
end&lt;br /&gt;
mean1 = (1/Num)*Sum_1&lt;br /&gt;
mean2 = (1/Num)*Sum_2&lt;br /&gt;
media_metodo_A = mean1;&lt;br /&gt;
&lt;br /&gt;
S1 = 0;&lt;br /&gt;
S2 = 0;&lt;br /&gt;
C = 0;&lt;br /&gt;
for i =1:Num&lt;br /&gt;
    S1 = S1 + (funciones{i}(x1)-mean1)^2;&lt;br /&gt;
    S2 = S2 + (funciones{i}(x2)-mean2)^2;&lt;br /&gt;
    C = C + (funciones{i}(x1)-mean1)*(funciones{i}(x2)-mean2);&lt;br /&gt;
end&lt;br /&gt;
VAR1 = (1/(Num-1))*S1&lt;br /&gt;
VAR2 = (1/(Num-1))*S2&lt;br /&gt;
COV = (1/(Num-1))*C&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;source lang: &amp;quot;Matlab&amp;quot; line&amp;gt;&lt;br /&gt;
&lt;br /&gt;
f1 = @(x) 1./(x.^(2)); f2 = @(x) 1./x; f3 = @(x) 1/sqrt(x);&lt;br /&gt;
N = 100;&lt;br /&gt;
a1 = rand_coefs(f1,N+1); b1 = rand_coefs(f1,N);&lt;br /&gt;
a2 = rand_coefs(f2,N+1); b2 = rand_coefs(f2,N);&lt;br /&gt;
a3 = rand_coefs(f3,N+1); b3 = rand_coefs(f3,N);&lt;br /&gt;
F1 = generar_F(a1,b1); F2 = generar_F(a2,b2); F3 = generar_F(a3,b3);&lt;br /&gt;
x = linspace(-pi,pi,600);&lt;br /&gt;
P = linspace(-pi,pi,300);&lt;br /&gt;
&lt;br /&gt;
V=zeros(1000,3);&lt;br /&gt;
&lt;br /&gt;
for i=1:1000&lt;br /&gt;
&lt;br /&gt;
    for k=1:length(P)-1&lt;br /&gt;
        V(i,1)=V(i,1)+abs(F1(P(k))-F1(P(k+1)));&lt;br /&gt;
    end&lt;br /&gt;
&lt;br /&gt;
    for k=1:length(P)-1&lt;br /&gt;
        V(i,2)=V(i,2)+abs(F2(P(k))-F2(P(k+1)));&lt;br /&gt;
    end&lt;br /&gt;
&lt;br /&gt;
    for k=1:length(P)-1&lt;br /&gt;
        V(i,3)=V(i,3)+abs(F3(P(k))-F3(P(k+1)));&lt;br /&gt;
    end&lt;br /&gt;
    a1 = rand_coefs(f1,N+1); b1 = rand_coefs(f1,N);&lt;br /&gt;
    a2 = rand_coefs(f2,N+1); b2 = rand_coefs(f2,N);&lt;br /&gt;
    a3 = rand_coefs(f3,N+1); b3 = rand_coefs(f3,N);&lt;br /&gt;
    F1 = generar_F(a1,b1); F2 = generar_F(a2,b2); F3 = generar_F(a3,b3);&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
tablaResultados = table(mean(V)', min(V)', max(V)', std(V)', ...&lt;br /&gt;
    'VariableNames', {'Media', 'Minimo', 'Maximo', 'Desviacion Tipica' }, ...&lt;br /&gt;
    'RowNames', {'Funcion 1', 'Funcion 2', 'Funcion 3'});&lt;br /&gt;
&lt;br /&gt;
 plot(x,F1(x));&lt;br /&gt;
 hold on&lt;br /&gt;
 plot(x,F2(x));&lt;br /&gt;
 plot(x,F3(x));&lt;br /&gt;
 legend &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Categoría:EDP]]&lt;br /&gt;
[[Categoría:EDP25/26]]&lt;/div&gt;</summary>
		<author><name>Fernando Madrid</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Series_de_Fourier_DFN&amp;diff=104327</id>
		<title>Series de Fourier DFN</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Series_de_Fourier_DFN&amp;diff=104327"/>
				<updated>2026-02-19T00:13:17Z</updated>
		
		<summary type="html">&lt;p&gt;Fernando Madrid: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{ TrabajoED | Series de Fourier. Grupo DFN | [[:Categoría:EDP|EDP]]|[[:Categoría:EDP25/26|2025-26]] | Daniel Tormos&lt;br /&gt;
&lt;br /&gt;
Fernando Madrid&lt;br /&gt;
&lt;br /&gt;
Nicolás Sánchez  }}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
__TOC__&lt;br /&gt;
&lt;br /&gt;
=Funciones =&lt;br /&gt;
&lt;br /&gt;
 Esta primera función calcula los coeficientes de Fourier de manera aleatoria en base a una función f.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;source lang: &amp;quot;Matlab&amp;quot; line&amp;gt;&lt;br /&gt;
function [coefs] = rand_coefs(f,N)&lt;br /&gt;
    % Crea un vector de N elementos con coeficientes a_i aleatorios entre&lt;br /&gt;
    % f(i) y -f(i).&lt;br /&gt;
    coefs = zeros(N,1);&lt;br /&gt;
    for i = 1:N&lt;br /&gt;
        coefs(i) = rand*2*f(i)-f(i);&lt;br /&gt;
    end&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Esta función genera la Serie de Fourier a partir de sus coeficientes.&lt;br /&gt;
&amp;lt;source lang: &amp;quot;Matlab&amp;quot; line&amp;gt;&lt;br /&gt;
function [F] = generar_F(a,b)&lt;br /&gt;
    % Genera una función F a partir de sus coeficientes de Fourier.&lt;br /&gt;
    &lt;br /&gt;
    % a son los N+1 coeficientes para los elementos pares de la base&lt;br /&gt;
    % trigonométrica en [-pi,pi], y b son los N coeficientes de los &lt;br /&gt;
    % elementos impares.&lt;br /&gt;
&lt;br /&gt;
    N = length(b);&lt;br /&gt;
    n = (1:N)';  % Vector columna&lt;br /&gt;
    a = a(:);    % Asegurar que a es columna&lt;br /&gt;
    b = b(:);    % Asegurar que b es columna&lt;br /&gt;
    &lt;br /&gt;
    F = @(x) (a(1)/sqrt(2*pi)) + sum((a(n+1)/sqrt(pi)).*cos(n*x) + (b(n)/sqrt(pi)).*sin(n*x), 1);&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Con esto creamos una lista de series de Fourier.&lt;br /&gt;
&amp;lt;source lang: &amp;quot;Matlab&amp;quot; line&amp;gt;&lt;br /&gt;
function [coefs, funciones] = familia_funciones(f,N,Num)&lt;br /&gt;
    % f,N son las entradas para rand_coefs&lt;br /&gt;
    % Num es el número de funciones de la familia&lt;br /&gt;
&lt;br /&gt;
    % Devuelve:&lt;br /&gt;
&lt;br /&gt;
    % Una lista de parejas de vectores de coeficientes a y b. Para&lt;br /&gt;
    % obtener los coeficientes impares de la funcion 3 (por ejemplo),&lt;br /&gt;
    % llamas coefs(3).b&lt;br /&gt;
&lt;br /&gt;
    % Una lista de funciones. Para obtener la función 3, llamas&lt;br /&gt;
    % funciones{3}&lt;br /&gt;
&lt;br /&gt;
    coefs(Num) = struct('a',[],'b',[]);&lt;br /&gt;
    funciones = cell(1,Num);&lt;br /&gt;
    for i = 1:Num&lt;br /&gt;
        coefs(i).a = rand_coefs(f,N+1);&lt;br /&gt;
        coefs(i).b = rand_coefs(f,N);&lt;br /&gt;
        funciones{i} = generar_F(coefs(i).a,coefs(i).b); &lt;br /&gt;
    end&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=Aplicaciones=&lt;br /&gt;
En esta primera hacemos los cálculos de media, varianza y covarianza.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;source lang: &amp;quot;Matlab&amp;quot; line&amp;gt;&lt;br /&gt;
&lt;br /&gt;
f1 = @(x) 1./(x.^2); f2 = @(x) 1./x; f3 = @(x) 1/sqrt(x);&lt;br /&gt;
N = 500;&lt;br /&gt;
Num = 1e5;&lt;br /&gt;
[coefs,funciones] = familia_funciones(f2,N,Num); % Elegir la f_i que se quiera&lt;br /&gt;
x1 = 1; x2 = 0.2; % Distintos puntos&lt;br /&gt;
Sum_1 = 0;&lt;br /&gt;
Sum_2 = 0;&lt;br /&gt;
for i =1:Num&lt;br /&gt;
    Sum_1 = Sum_1 + funciones{i}(x1);&lt;br /&gt;
    Sum_2 = Sum_2 + funciones{i}(x2);&lt;br /&gt;
end&lt;br /&gt;
mean1 = (1/Num)*Sum_1&lt;br /&gt;
mean2 = (1/Num)*Sum_2&lt;br /&gt;
media_metodo_A = mean1;&lt;br /&gt;
&lt;br /&gt;
S1 = 0;&lt;br /&gt;
S2 = 0;&lt;br /&gt;
C = 0;&lt;br /&gt;
for i =1:Num&lt;br /&gt;
    S1 = S1 + (funciones{i}(x1)-mean1)^2;&lt;br /&gt;
    S2 = S2 + (funciones{i}(x2)-mean2)^2;&lt;br /&gt;
    C = C + (funciones{i}(x1)-mean1)*(funciones{i}(x2)-mean2);&lt;br /&gt;
end&lt;br /&gt;
VAR1 = (1/(Num-1))*S1&lt;br /&gt;
VAR2 = (1/(Num-1))*S2&lt;br /&gt;
COV = (1/(Num-1))*C&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;source lang: &amp;quot;Matlab&amp;quot; line&amp;gt;&lt;br /&gt;
&lt;br /&gt;
f1 = @(x) 1./(x.^(2)); f2 = @(x) 1./x; f3 = @(x) 1/sqrt(x);&lt;br /&gt;
N = 100;&lt;br /&gt;
a1 = rand_coefs(f1,N+1); b1 = rand_coefs(f1,N);&lt;br /&gt;
a2 = rand_coefs(f2,N+1); b2 = rand_coefs(f2,N);&lt;br /&gt;
a3 = rand_coefs(f3,N+1); b3 = rand_coefs(f3,N);&lt;br /&gt;
F1 = generar_F(a1,b1); F2 = generar_F(a2,b2); F3 = generar_F(a3,b3);&lt;br /&gt;
x = linspace(-pi,pi,600);&lt;br /&gt;
P = linspace(-pi,pi,300);&lt;br /&gt;
&lt;br /&gt;
V=zeros(1000,3);&lt;br /&gt;
&lt;br /&gt;
for i=1:1000&lt;br /&gt;
&lt;br /&gt;
    for k=1:length(P)-1&lt;br /&gt;
        V(i,1)=V(i,1)+abs(F1(P(k))-F1(P(k+1)));&lt;br /&gt;
    end&lt;br /&gt;
&lt;br /&gt;
    for k=1:length(P)-1&lt;br /&gt;
        V(i,2)=V(i,2)+abs(F2(P(k))-F2(P(k+1)));&lt;br /&gt;
    end&lt;br /&gt;
&lt;br /&gt;
    for k=1:length(P)-1&lt;br /&gt;
        V(i,3)=V(i,3)+abs(F3(P(k))-F3(P(k+1)));&lt;br /&gt;
    end&lt;br /&gt;
    a1 = rand_coefs(f1,N+1); b1 = rand_coefs(f1,N);&lt;br /&gt;
    a2 = rand_coefs(f2,N+1); b2 = rand_coefs(f2,N);&lt;br /&gt;
    a3 = rand_coefs(f3,N+1); b3 = rand_coefs(f3,N);&lt;br /&gt;
    F1 = generar_F(a1,b1); F2 = generar_F(a2,b2); F3 = generar_F(a3,b3);&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
tablaResultados = table(mean(V)', min(V)', max(V)', std(V)', ...&lt;br /&gt;
    'VariableNames', {'Media', 'Minimo', 'Maximo', 'Desviacion Tipica' }, ...&lt;br /&gt;
    'RowNames', {'Funcion 1', 'Funcion 2', 'Funcion 3'});&lt;br /&gt;
&lt;br /&gt;
 plot(x,F1(x));&lt;br /&gt;
 hold on&lt;br /&gt;
 plot(x,F2(x));&lt;br /&gt;
 plot(x,F3(x));&lt;br /&gt;
 legend &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Categoría:EDP]]&lt;br /&gt;
[[Categoría:EDP25/26]]&lt;/div&gt;</summary>
		<author><name>Fernando Madrid</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Series_de_Fourier_DFN&amp;diff=104326</id>
		<title>Series de Fourier DFN</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Series_de_Fourier_DFN&amp;diff=104326"/>
				<updated>2026-02-19T00:12:49Z</updated>
		
		<summary type="html">&lt;p&gt;Fernando Madrid: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{ TrabajoED | Series de Fourier. Grupo DFN | [[:Categoría:EDP|EDP]]|[[:Categoría:EDP25/26|2025-26]] | Daniel Tormos&lt;br /&gt;
&lt;br /&gt;
Fernando Madrid&lt;br /&gt;
&lt;br /&gt;
Nicolás Sánchez  }}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
__TOC__&lt;br /&gt;
&lt;br /&gt;
=Funciones =&lt;br /&gt;
 Esta primera función calcula los coeficientes de Fourier de manera aleatoria en base a una función f.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;source lang: &amp;quot;Matlab&amp;quot; line&amp;gt;&lt;br /&gt;
function [coefs] = rand_coefs(f,N)&lt;br /&gt;
    % Crea un vector de N elementos con coeficientes a_i aleatorios entre&lt;br /&gt;
    % f(i) y -f(i).&lt;br /&gt;
    coefs = zeros(N,1);&lt;br /&gt;
    for i = 1:N&lt;br /&gt;
        coefs(i) = rand*2*f(i)-f(i);&lt;br /&gt;
    end&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Esta función genera la Serie de Fourier a partir de sus coeficientes.&lt;br /&gt;
&amp;lt;source lang: &amp;quot;Matlab&amp;quot; line&amp;gt;&lt;br /&gt;
function [F] = generar_F(a,b)&lt;br /&gt;
    % Genera una función F a partir de sus coeficientes de Fourier.&lt;br /&gt;
    &lt;br /&gt;
    % a son los N+1 coeficientes para los elementos pares de la base&lt;br /&gt;
    % trigonométrica en [-pi,pi], y b son los N coeficientes de los &lt;br /&gt;
    % elementos impares.&lt;br /&gt;
&lt;br /&gt;
    N = length(b);&lt;br /&gt;
    n = (1:N)';  % Vector columna&lt;br /&gt;
    a = a(:);    % Asegurar que a es columna&lt;br /&gt;
    b = b(:);    % Asegurar que b es columna&lt;br /&gt;
    &lt;br /&gt;
    F = @(x) (a(1)/sqrt(2*pi)) + sum((a(n+1)/sqrt(pi)).*cos(n*x) + (b(n)/sqrt(pi)).*sin(n*x), 1);&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Con esto creamos una lista de series de Fourier.&lt;br /&gt;
&amp;lt;source lang: &amp;quot;Matlab&amp;quot; line&amp;gt;&lt;br /&gt;
function [coefs, funciones] = familia_funciones(f,N,Num)&lt;br /&gt;
    % f,N son las entradas para rand_coefs&lt;br /&gt;
    % Num es el número de funciones de la familia&lt;br /&gt;
&lt;br /&gt;
    % Devuelve:&lt;br /&gt;
&lt;br /&gt;
    % Una lista de parejas de vectores de coeficientes a y b. Para&lt;br /&gt;
    % obtener los coeficientes impares de la funcion 3 (por ejemplo),&lt;br /&gt;
    % llamas coefs(3).b&lt;br /&gt;
&lt;br /&gt;
    % Una lista de funciones. Para obtener la función 3, llamas&lt;br /&gt;
    % funciones{3}&lt;br /&gt;
&lt;br /&gt;
    coefs(Num) = struct('a',[],'b',[]);&lt;br /&gt;
    funciones = cell(1,Num);&lt;br /&gt;
    for i = 1:Num&lt;br /&gt;
        coefs(i).a = rand_coefs(f,N+1);&lt;br /&gt;
        coefs(i).b = rand_coefs(f,N);&lt;br /&gt;
        funciones{i} = generar_F(coefs(i).a,coefs(i).b); &lt;br /&gt;
    end&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=Aplicaciones=&lt;br /&gt;
En esta primera hacemos los cálculos de media, varianza y covarianza.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;source lang: &amp;quot;Matlab&amp;quot; line&amp;gt;&lt;br /&gt;
&lt;br /&gt;
f1 = @(x) 1./(x.^2); f2 = @(x) 1./x; f3 = @(x) 1/sqrt(x);&lt;br /&gt;
N = 500;&lt;br /&gt;
Num = 1e5;&lt;br /&gt;
[coefs,funciones] = familia_funciones(f2,N,Num); % Elegir la f_i que se quiera&lt;br /&gt;
x1 = 1; x2 = 0.2; % Distintos puntos&lt;br /&gt;
Sum_1 = 0;&lt;br /&gt;
Sum_2 = 0;&lt;br /&gt;
for i =1:Num&lt;br /&gt;
    Sum_1 = Sum_1 + funciones{i}(x1);&lt;br /&gt;
    Sum_2 = Sum_2 + funciones{i}(x2);&lt;br /&gt;
end&lt;br /&gt;
mean1 = (1/Num)*Sum_1&lt;br /&gt;
mean2 = (1/Num)*Sum_2&lt;br /&gt;
media_metodo_A = mean1;&lt;br /&gt;
&lt;br /&gt;
S1 = 0;&lt;br /&gt;
S2 = 0;&lt;br /&gt;
C = 0;&lt;br /&gt;
for i =1:Num&lt;br /&gt;
    S1 = S1 + (funciones{i}(x1)-mean1)^2;&lt;br /&gt;
    S2 = S2 + (funciones{i}(x2)-mean2)^2;&lt;br /&gt;
    C = C + (funciones{i}(x1)-mean1)*(funciones{i}(x2)-mean2);&lt;br /&gt;
end&lt;br /&gt;
VAR1 = (1/(Num-1))*S1&lt;br /&gt;
VAR2 = (1/(Num-1))*S2&lt;br /&gt;
COV = (1/(Num-1))*C&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;source lang: &amp;quot;Matlab&amp;quot; line&amp;gt;&lt;br /&gt;
&lt;br /&gt;
f1 = @(x) 1./(x.^(2)); f2 = @(x) 1./x; f3 = @(x) 1/sqrt(x);&lt;br /&gt;
N = 100;&lt;br /&gt;
a1 = rand_coefs(f1,N+1); b1 = rand_coefs(f1,N);&lt;br /&gt;
a2 = rand_coefs(f2,N+1); b2 = rand_coefs(f2,N);&lt;br /&gt;
a3 = rand_coefs(f3,N+1); b3 = rand_coefs(f3,N);&lt;br /&gt;
F1 = generar_F(a1,b1); F2 = generar_F(a2,b2); F3 = generar_F(a3,b3);&lt;br /&gt;
x = linspace(-pi,pi,600);&lt;br /&gt;
P = linspace(-pi,pi,300);&lt;br /&gt;
&lt;br /&gt;
V=zeros(1000,3);&lt;br /&gt;
&lt;br /&gt;
for i=1:1000&lt;br /&gt;
&lt;br /&gt;
    for k=1:length(P)-1&lt;br /&gt;
        V(i,1)=V(i,1)+abs(F1(P(k))-F1(P(k+1)));&lt;br /&gt;
    end&lt;br /&gt;
&lt;br /&gt;
    for k=1:length(P)-1&lt;br /&gt;
        V(i,2)=V(i,2)+abs(F2(P(k))-F2(P(k+1)));&lt;br /&gt;
    end&lt;br /&gt;
&lt;br /&gt;
    for k=1:length(P)-1&lt;br /&gt;
        V(i,3)=V(i,3)+abs(F3(P(k))-F3(P(k+1)));&lt;br /&gt;
    end&lt;br /&gt;
    a1 = rand_coefs(f1,N+1); b1 = rand_coefs(f1,N);&lt;br /&gt;
    a2 = rand_coefs(f2,N+1); b2 = rand_coefs(f2,N);&lt;br /&gt;
    a3 = rand_coefs(f3,N+1); b3 = rand_coefs(f3,N);&lt;br /&gt;
    F1 = generar_F(a1,b1); F2 = generar_F(a2,b2); F3 = generar_F(a3,b3);&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
tablaResultados = table(mean(V)', min(V)', max(V)', std(V)', ...&lt;br /&gt;
    'VariableNames', {'Media', 'Minimo', 'Maximo', 'Desviacion Tipica' }, ...&lt;br /&gt;
    'RowNames', {'Funcion 1', 'Funcion 2', 'Funcion 3'});&lt;br /&gt;
&lt;br /&gt;
 plot(x,F1(x));&lt;br /&gt;
 hold on&lt;br /&gt;
 plot(x,F2(x));&lt;br /&gt;
 plot(x,F3(x));&lt;br /&gt;
 legend &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Categoría:EDP]]&lt;br /&gt;
[[Categoría:EDP25/26]]&lt;/div&gt;</summary>
		<author><name>Fernando Madrid</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Series_de_Fourier_DFN&amp;diff=104325</id>
		<title>Series de Fourier DFN</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Series_de_Fourier_DFN&amp;diff=104325"/>
				<updated>2026-02-19T00:00:38Z</updated>
		
		<summary type="html">&lt;p&gt;Fernando Madrid: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{ TrabajoED | Series de Fourier. Grupo DFN | [[:Categoría:EDP|EDP]]|[[:Categoría:EDP25/26|2025-26]] | Daniel Tormos&lt;br /&gt;
&lt;br /&gt;
Fernando Madrid&lt;br /&gt;
&lt;br /&gt;
Nicolás Sánchez  }}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
__TOC__&lt;br /&gt;
&lt;br /&gt;
=Funciones =&lt;br /&gt;
 Esta primera función calcula los coeficientes de Fourier de manera aleatoria en base a una función f.&lt;br /&gt;
&amp;lt;source lang: &amp;quot;Matlab&amp;quot; line&amp;gt;&lt;br /&gt;
function [coefs] = rand_coefs(f,N)&lt;br /&gt;
    % Crea un vector de N elementos con coeficientes a_i aleatorios entre&lt;br /&gt;
    % f(i) y -f(i).&lt;br /&gt;
    coefs = zeros(N,1);&lt;br /&gt;
    for i = 1:N&lt;br /&gt;
        coefs(i) = rand*2*f(i)-f(i);&lt;br /&gt;
    end&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Esta función genera la Serie de Fourier a partir de sus coeficientes.&lt;br /&gt;
&amp;lt;source lang: &amp;quot;Matlab&amp;quot; line&amp;gt;&lt;br /&gt;
function [F] = generar_F(a,b)&lt;br /&gt;
    % Genera una función F a partir de sus coeficientes de Fourier.&lt;br /&gt;
    &lt;br /&gt;
    % a son los N+1 coeficientes para los elementos pares de la base&lt;br /&gt;
    % trigonométrica en [-pi,pi], y b son los N coeficientes de los &lt;br /&gt;
    % elementos impares.&lt;br /&gt;
&lt;br /&gt;
    N = length(b);&lt;br /&gt;
    n = (1:N)';  % Vector columna&lt;br /&gt;
    a = a(:);    % Asegurar que a es columna&lt;br /&gt;
    b = b(:);    % Asegurar que b es columna&lt;br /&gt;
    &lt;br /&gt;
    F = @(x) (a(1)/sqrt(2*pi)) + sum((a(n+1)/sqrt(pi)).*cos(n*x) + (b(n)/sqrt(pi)).*sin(n*x), 1);&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Con esto creamos una lista de series de Fourier.&lt;br /&gt;
&amp;lt;source lang: &amp;quot;Matlab&amp;quot; line&amp;gt;&lt;br /&gt;
function [coefs, funciones] = familia_funciones(f,N,Num)&lt;br /&gt;
    % f,N son las entradas para rand_coefs&lt;br /&gt;
    % Num es el número de funciones de la familia&lt;br /&gt;
&lt;br /&gt;
    % Devuelve:&lt;br /&gt;
&lt;br /&gt;
    % Una lista de parejas de vectores de coeficientes a y b. Para&lt;br /&gt;
    % obtener los coeficientes impares de la funcion 3 (por ejemplo),&lt;br /&gt;
    % llamas coefs(3).b&lt;br /&gt;
&lt;br /&gt;
    % Una lista de funciones. Para obtener la función 3, llamas&lt;br /&gt;
    % funciones{3}&lt;br /&gt;
&lt;br /&gt;
    coefs(Num) = struct('a',[],'b',[]);&lt;br /&gt;
    funciones = cell(1,Num);&lt;br /&gt;
    for i = 1:Num&lt;br /&gt;
        coefs(i).a = rand_coefs(f,N+1);&lt;br /&gt;
        coefs(i).b = rand_coefs(f,N);&lt;br /&gt;
        funciones{i} = generar_F(coefs(i).a,coefs(i).b); &lt;br /&gt;
    end&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=Aplicaciones=&lt;br /&gt;
En esta primera hacemos los cálculos de media, varianza y covarianza.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;source lang: &amp;quot;Matlab&amp;quot; line&amp;gt;&lt;br /&gt;
&lt;br /&gt;
f1 = @(x) 1./(x.^2); f2 = @(x) 1./x; f3 = @(x) 1/sqrt(x);&lt;br /&gt;
N = 500;&lt;br /&gt;
Num = 1e5;&lt;br /&gt;
[coefs,funciones] = familia_funciones(f2,N,Num); % Elegir la f_i que se quiera&lt;br /&gt;
x1 = 1; x2 = 0.2; % Distintos puntos&lt;br /&gt;
Sum_1 = 0;&lt;br /&gt;
Sum_2 = 0;&lt;br /&gt;
for i =1:Num&lt;br /&gt;
    Sum_1 = Sum_1 + funciones{i}(x1);&lt;br /&gt;
    Sum_2 = Sum_2 + funciones{i}(x2);&lt;br /&gt;
end&lt;br /&gt;
mean1 = (1/Num)*Sum_1&lt;br /&gt;
mean2 = (1/Num)*Sum_2&lt;br /&gt;
media_metodo_A = mean1;&lt;br /&gt;
&lt;br /&gt;
S1 = 0;&lt;br /&gt;
S2 = 0;&lt;br /&gt;
C = 0;&lt;br /&gt;
for i =1:Num&lt;br /&gt;
    S1 = S1 + (funciones{i}(x1)-mean1)^2;&lt;br /&gt;
    S2 = S2 + (funciones{i}(x2)-mean2)^2;&lt;br /&gt;
    C = C + (funciones{i}(x1)-mean1)*(funciones{i}(x2)-mean2);&lt;br /&gt;
end&lt;br /&gt;
VAR1 = (1/(Num-1))*S1&lt;br /&gt;
VAR2 = (1/(Num-1))*S2&lt;br /&gt;
COV = (1/(Num-1))*C&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;source lang: &amp;quot;Matlab&amp;quot; line&amp;gt;&lt;br /&gt;
&lt;br /&gt;
f1 = @(x) 1./(x.^(2)); f2 = @(x) 1./x; f3 = @(x) 1/sqrt(x);&lt;br /&gt;
N = 100;&lt;br /&gt;
a1 = rand_coefs(f1,N+1); b1 = rand_coefs(f1,N);&lt;br /&gt;
a2 = rand_coefs(f2,N+1); b2 = rand_coefs(f2,N);&lt;br /&gt;
a3 = rand_coefs(f3,N+1); b3 = rand_coefs(f3,N);&lt;br /&gt;
F1 = generar_F(a1,b1); F2 = generar_F(a2,b2); F3 = generar_F(a3,b3);&lt;br /&gt;
x = linspace(-pi,pi,600);&lt;br /&gt;
P = linspace(-pi,pi,300);&lt;br /&gt;
&lt;br /&gt;
V=zeros(1000,3);&lt;br /&gt;
&lt;br /&gt;
for i=1:1000&lt;br /&gt;
&lt;br /&gt;
    for k=1:length(P)-1&lt;br /&gt;
        V(i,1)=V(i,1)+abs(F1(P(k))-F1(P(k+1)));&lt;br /&gt;
    end&lt;br /&gt;
&lt;br /&gt;
    for k=1:length(P)-1&lt;br /&gt;
        V(i,2)=V(i,2)+abs(F2(P(k))-F2(P(k+1)));&lt;br /&gt;
    end&lt;br /&gt;
&lt;br /&gt;
    for k=1:length(P)-1&lt;br /&gt;
        V(i,3)=V(i,3)+abs(F3(P(k))-F3(P(k+1)));&lt;br /&gt;
    end&lt;br /&gt;
    a1 = rand_coefs(f1,N+1); b1 = rand_coefs(f1,N);&lt;br /&gt;
    a2 = rand_coefs(f2,N+1); b2 = rand_coefs(f2,N);&lt;br /&gt;
    a3 = rand_coefs(f3,N+1); b3 = rand_coefs(f3,N);&lt;br /&gt;
    F1 = generar_F(a1,b1); F2 = generar_F(a2,b2); F3 = generar_F(a3,b3);&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
tablaResultados = table(mean(V)', min(V)', max(V)', std(V)', ...&lt;br /&gt;
    'VariableNames', {'Media', 'Minimo', 'Maximo', 'Desviacion Tipica' }, ...&lt;br /&gt;
    'RowNames', {'Funcion 1', 'Funcion 2', 'Funcion 3'});&lt;br /&gt;
&lt;br /&gt;
 plot(x,F1(x));&lt;br /&gt;
 hold on&lt;br /&gt;
 plot(x,F2(x));&lt;br /&gt;
 plot(x,F3(x));&lt;br /&gt;
 legend &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Categoría:EDP]]&lt;br /&gt;
[[Categoría:EDP25/26]]&lt;/div&gt;</summary>
		<author><name>Fernando Madrid</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Series_de_Fourier_DFN&amp;diff=104271</id>
		<title>Series de Fourier DFN</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Series_de_Fourier_DFN&amp;diff=104271"/>
				<updated>2026-02-18T23:09:23Z</updated>
		
		<summary type="html">&lt;p&gt;Fernando Madrid: Página creada con «{{ TrabajoED | Series de Fourier. Grupo DFN | EDP|2025-26 | Daniel Tormos  Fernando Madrid  Nicolás Sánchez  }}  Archivo:Po...»&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{ TrabajoED | Series de Fourier. Grupo DFN | [[:Categoría:EDP|EDP]]|[[:Categoría:EDP25/26|2025-26]] | Daniel Tormos&lt;br /&gt;
&lt;br /&gt;
Fernando Madrid&lt;br /&gt;
&lt;br /&gt;
Nicolás Sánchez  }}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Poster_EPNL.png||900px]]&lt;br /&gt;
[[Archivo:Poster_EPNL.pdf]]&lt;br /&gt;
&lt;br /&gt;
__TOC__&lt;br /&gt;
&lt;br /&gt;
=Función 1 =&lt;br /&gt;
El primer código para visualizar las series de fourier con coeficientes normales (0,1) es el siguiente:&lt;br /&gt;
&amp;lt;source lang: &amp;quot;Matlab&amp;quot; line&amp;gt;&lt;br /&gt;
function [coefs] = rand_coefs(f,N)&lt;br /&gt;
    % Crea un vector de N elementos con coeficientes a_i aleatorios entre&lt;br /&gt;
    % f(i) y -f(i).&lt;br /&gt;
    coefs = zeros(N,1);&lt;br /&gt;
    for i = 1:N&lt;br /&gt;
        coefs(i) = rand*2*f(i)-f(i);&lt;br /&gt;
    end&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=Función 2=&lt;br /&gt;
&amp;lt;source lang: &amp;quot;Matlab&amp;quot; line&amp;gt;&lt;br /&gt;
function [F] = generar_F(a,b)&lt;br /&gt;
    % Genera una función F a partir de sus coeficientes de Fourier.&lt;br /&gt;
    &lt;br /&gt;
    % a son los N+1 coeficientes para los elementos pares de la base&lt;br /&gt;
    % trigonométrica en [-pi,pi], y b son los N coeficientes de los &lt;br /&gt;
    % elementos impares.&lt;br /&gt;
&lt;br /&gt;
    N = length(b);&lt;br /&gt;
    n = (1:N)';  % Vector columna&lt;br /&gt;
    a = a(:);    % Asegurar que a es columna&lt;br /&gt;
    b = b(:);    % Asegurar que b es columna&lt;br /&gt;
    &lt;br /&gt;
    F = @(x) (a(1)/sqrt(2*pi)) + sum((a(n+1)/sqrt(pi)).*cos(n*x) + (b(n)/sqrt(pi)).*sin(n*x), 1);&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=Función 3=&lt;br /&gt;
&amp;lt;source lang: &amp;quot;Matlab&amp;quot; line&amp;gt;&lt;br /&gt;
function [coefs, funciones] = familia_funciones(f,N,Num)&lt;br /&gt;
    % f,N son las entradas para rand_coefs&lt;br /&gt;
    % Num es el número de funciones de la familia&lt;br /&gt;
&lt;br /&gt;
    % Devuelve:&lt;br /&gt;
&lt;br /&gt;
    % Una lista de parejas de vectores de coeficientes a y b. Para&lt;br /&gt;
    % obtener los coeficientes impares de la funcion 3 (por ejemplo),&lt;br /&gt;
    % llamas coefs(3).b&lt;br /&gt;
&lt;br /&gt;
    % Una lista de funciones. Para obtener la función 3, llamas&lt;br /&gt;
    % funciones{3}&lt;br /&gt;
&lt;br /&gt;
    coefs(Num) = struct('a',[],'b',[]);&lt;br /&gt;
    funciones = cell(1,Num);&lt;br /&gt;
    for i = 1:Num&lt;br /&gt;
        coefs(i).a = rand_coefs(f,N+1);&lt;br /&gt;
        coefs(i).b = rand_coefs(f,N);&lt;br /&gt;
        funciones{i} = generar_F(coefs(i).a,coefs(i).b); &lt;br /&gt;
    end&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=Aplicaciones=&lt;br /&gt;
Farei&lt;br /&gt;
&lt;br /&gt;
&amp;lt;source lang: &amp;quot;Matlab&amp;quot; line&amp;gt;&lt;br /&gt;
&lt;br /&gt;
f1 = @(x) 1./(x.^2); f2 = @(x) 1./x; f3 = @(x) 1/sqrt(x);&lt;br /&gt;
N = 500;&lt;br /&gt;
Num = 1e5;&lt;br /&gt;
[coefs,funciones] = familia_funciones(f2,N,Num); % Elegir la f_i que se quiera&lt;br /&gt;
x1 = 1; x2 = 0.2; % Distintos puntos&lt;br /&gt;
Sum_1 = 0;&lt;br /&gt;
Sum_2 = 0;&lt;br /&gt;
for i =1:Num&lt;br /&gt;
    Sum_1 = Sum_1 + funciones{i}(x1);&lt;br /&gt;
    Sum_2 = Sum_2 + funciones{i}(x2);&lt;br /&gt;
end&lt;br /&gt;
mean1 = (1/Num)*Sum_1&lt;br /&gt;
mean2 = (1/Num)*Sum_2&lt;br /&gt;
media_metodo_A = mean1;&lt;br /&gt;
&lt;br /&gt;
S1 = 0;&lt;br /&gt;
S2 = 0;&lt;br /&gt;
C = 0;&lt;br /&gt;
for i =1:Num&lt;br /&gt;
    S1 = S1 + (funciones{i}(x1)-mean1)^2;&lt;br /&gt;
    S2 = S2 + (funciones{i}(x2)-mean2)^2;&lt;br /&gt;
    C = C + (funciones{i}(x1)-mean1)*(funciones{i}(x2)-mean2);&lt;br /&gt;
end&lt;br /&gt;
VAR1 = (1/(Num-1))*S1&lt;br /&gt;
VAR2 = (1/(Num-1))*S2&lt;br /&gt;
COV = (1/(Num-1))*C&lt;br /&gt;
&lt;br /&gt;
f1 = @(x) 1./(x.^(2)); f2 = @(x) 1./x; f3 = @(x) 1/sqrt(x);&lt;br /&gt;
N = 100;&lt;br /&gt;
a1 = rand_coefs(f1,N+1); b1 = rand_coefs(f1,N);&lt;br /&gt;
a2 = rand_coefs(f2,N+1); b2 = rand_coefs(f2,N);&lt;br /&gt;
a3 = rand_coefs(f3,N+1); b3 = rand_coefs(f3,N);&lt;br /&gt;
F1 = generar_F(a1,b1); F2 = generar_F(a2,b2); F3 = generar_F(a3,b3);&lt;br /&gt;
x = linspace(-pi,pi,600);&lt;br /&gt;
P = linspace(-pi,pi,300);&lt;br /&gt;
&lt;br /&gt;
V=zeros(1000,3);&lt;br /&gt;
&lt;br /&gt;
for i=1:1000&lt;br /&gt;
&lt;br /&gt;
    for k=1:length(P)-1&lt;br /&gt;
        V(i,1)=V(i,1)+abs(F1(P(k))-F1(P(k+1)));&lt;br /&gt;
    end&lt;br /&gt;
&lt;br /&gt;
    for k=1:length(P)-1&lt;br /&gt;
        V(i,2)=V(i,2)+abs(F2(P(k))-F2(P(k+1)));&lt;br /&gt;
    end&lt;br /&gt;
&lt;br /&gt;
    for k=1:length(P)-1&lt;br /&gt;
        V(i,3)=V(i,3)+abs(F3(P(k))-F3(P(k+1)));&lt;br /&gt;
    end&lt;br /&gt;
    a1 = rand_coefs(f1,N+1); b1 = rand_coefs(f1,N);&lt;br /&gt;
    a2 = rand_coefs(f2,N+1); b2 = rand_coefs(f2,N);&lt;br /&gt;
    a3 = rand_coefs(f3,N+1); b3 = rand_coefs(f3,N);&lt;br /&gt;
    F1 = generar_F(a1,b1); F2 = generar_F(a2,b2); F3 = generar_F(a3,b3);&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
tablaResultados = table(mean(V)', min(V)', max(V)', std(V)', ...&lt;br /&gt;
    'VariableNames', {'Media', 'Minimo', 'Maximo', 'Desviacion Tipica' }, ...&lt;br /&gt;
    'RowNames', {'Funcion 1', 'Funcion 2', 'Funcion 3'});&lt;br /&gt;
&lt;br /&gt;
 plot(x,F1(x));&lt;br /&gt;
 hold on&lt;br /&gt;
 plot(x,F2(x));&lt;br /&gt;
 plot(x,F3(x));&lt;br /&gt;
 legend &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Categoría:EDP]]&lt;br /&gt;
[[Categoría:EDP25/26]]&lt;/div&gt;</summary>
		<author><name>Fernando Madrid</name></author>	</entry>

	</feed>