Está en la página 1de 6

practica7.

nb

41

Nombre y Apellidos: Grupo:

Series de Fourier
El objetivo de esta prctica es el desarrollo de funciones en serie de Fourier, en sus formas trigonomtrica (senos y cosenos) y exponencial. Ser necesario cargar el paquete <<FourierTransform` integrado en el paquete <<Calculus`. Se utilizarn los comandos Plot, Show,Table, GraphicsArray y Partition (para crear tablas de funciones y de grficos), Do,UnitStep[x], DiracDelta[x] ,FourierTrigSeries, FourierSeries, FourierSinCoefficient y FourierCosCoefficient.

Funcin Escaln Unidad


La funcin escaln unidad, UnitStep[x] se define igual a la unidad cuando x es mayor que 0, e igual a 0 cuando x es menor que 0. UnitStep[x-1] ser igual a uno cuando x sea mayor que uno y cero cuando x sea menor que uno. El valor de la funcin no se define para el valor de x en el que se produce el salto. Desgraciadamente no existe una definicin standard para este valor. Algunos autores lo definen igual a la unidad, otros a cero y otros lo dejan sin definir. Mediante la funcin escalon unidad se pueden definir funciones continuas a trozos como una forma alternativa al operador condicional: /; , o a los comandos Which , Piecewise o If. El operador condicional /; es el nico que no nos sirve para definir una funcin a trozos ya que en este caso no se podrn efectuar operaciones como la integracin, derivacin, o utilizar funciones definidas de esta forma como argumentos de comandos como FourierTrigSeries

Ejemplo
Representar la funcin escaln unidad Plot@UnitStep@xD, 8x, 2, 4<, PlotRange > 8.2, 1.2<D

Ejercicios
1- Representar las funciones UnitStep[x], UnitStep[x-1] en el intervalo [-2,4].

practica7.nb

42

2- La funcin escaln unidad se suele utilizar para construir una funcin que coincida con otra dada para valores de la variable independiente mayores que uno determinado y sea nula en el resto del eje real. Definir f(t) = Cos(t) para t>1 y 0 en caso contrario.Representarla en el intervalo [-2,7].

3- Otra funcin de gran aplicacin que se puede definir a partir de la funcin escalon unitario es la funcin pulso rectangular. La funcin pulso rectangular de durancin T y centrada en el origen se define igual a la unidad cuando -T/2<t<T/2, y cero en el resto del eje real. Definir un pulso rectangular f(t) centrado en el origen y de duracin igual a 2. Representarlo en el intervalo [-2,2].Representarlo en el mismo intervalo pero desplazado a t0=1,5.

0 , -2 < t t + 2 , -2 < t < -1 f(t) = 9 1 , -1 < t < 1 . Definir 2-t , 1<t<2 0 , 2<t a) f1(t) = f(t), utilizando el operador /;. b) f2(t) = f(t), utilizando la funcin Which. c) f3(t)=f(t) , utilizando la funcin Piecewise. d) f4(t)=f(t), utilizando la funcin UnitStep.

4.- Sea

practica7.nb

43

Calculus`FourierTransform`
Dentro del kernel, Mathematica proporciona las funciones FourierTransform e InverseFourierTransform para calcular las transformadas simblicas de Fourier en forma exponencial. Tambin proporciona las funciones FourierSinTransform, InverseFourierSinTransform, FourierCosTransform,e InverseFourierCosTransform para calcular las transformadas en seno y coseno as como sus inversas. El paquete <<Calculus`FourierTransform` incorpora funciones que nos dan las aproximaciones numricas de estas transformadas de Fourier. Aunque el objetivo inicial de este paquete es el clculo numrico de las distintas formas de la Transformada de Fourier, tambin incorpora funciones para el clculo de la serie de Fourier y sus coeficientes que son las que se van a utilizar en esta prctica.

Series de Fourier
En los siguientes ejemplos se utilizan los comandos dentro del paquete <<Calculus`FourierTransform` que permiten obtener el desarrollo en serie de Fourier en sus formas trigonomtrica y exponencial o compleja, as como un coeficiente determinado de dicha serie. Por defecto, el comando FourierTrigSeries obtiene el desarrollo en serie de Fourier de una funcin definida en [-1/2,1/2]. Si se desea obtener el desarrollo de una funcin definida en [-T/2,T/2], siendo T el periodo, se utilizar la opcin FourierParameters{-1,1/T}. Identificando las frmulas utilizadas en clase : 2 T2 an = -T2 f HtL * cosH2 npt TL t T

Para que el resultado de aplicar los comandos FourierCosCoefficient, FourierSinCoefficient y, FourierTrigSeries y FourierSeries, coincida con las expresiones utilizadas en clase haremos {a,b} {-1, 1/T}. Al parmetro a se le puede asignar cualquier valor. Al parmetro b es obligatorio asignarle el valor 1/T. Por otra parte hay que sealar que los resultados de los comandos de Mathematica suponen siempre que el periodo en el que se ha definido la funcin, es siempre un intervalo simtrico respecto del origen. Si esto no fuera as, por ejemplo si el dato es f(t) definida en [0,T] (ej. 4) habra que hacer : 1.- una traslacin de ejes para tener un intervalo simtrico respecto del origen. 2.- aplicar los comandos para obtener el desarrollo en serie. 3.- deshacer la traslacin inicial.

con las que aparecen en la ayuda en el caso general (<<Calculus`FourierTransform`:FourierCosCoefficient,y FourierParameters ( por defecto {a,b} {0,1} ): 12b bH1+aL2 2 b H1-aL2 -12b f HtL cosH2 pbntL t,

Ejemplo 1
-1 Definir f(t) = t^2 -2 Representar esta funcin en el intervalo [-2,2]. -3 Obtener los tres primeros trminos del desarrollo en serie de Fourier de f(t). -4 Representar la suma trigonomtrica obtenida.

Clear@fD f@t_D = t2

practica7.nb

44

di1 = Plot@f @tD, 8t, 2, 2<, PlotRange > 8.2, 4<D << Calculus`FourierTransform` g@t_D = FourierTrigSeries@f@tD, t, 3, FourierParameters 81, 1 4<D di2 = Plot@g@tD, 8t, 2, 2<D Show@di1, di2D

Simulamos la extensin peridica fp(t), y representamos grficamente en el intervalo [-2,10]como graf1

Plot@8f@tD, g@tD<, 8t, 6, 6<D

f@tD fp@t_ ; 2 < t < 2D = f@tD; fp@t_ ; t > 2D = fp@t 4D Representamos grficamente g(t), en rojo, en el intervalo [-2,10], llamndole graf2. graf1 = Plot@fp@tD, 8t, 2, 10<D

graf2 = Plot@g@tD, 8t, 2, 10<, PlotStyle RGBColor@1, 0, 0DD Show@graf1, graf2D

Mediante el comando FourierCosCoefficient se puede obtener el coeficiente del desarrollo en serie de cosenos de la suma trigonomtrica que se haya obtenido anteriormente.

Ejemplo 2
- Obtener el coeficiente del tercer trmino de la suma anterior. FourierCosCoefficient@f@tD, t, 3, FourierParameters 81, 1 4<D

Ejemplo 3

Repetir el ejercicio anterior con la extensin peridica de la funcin f(t)=t2 + t , definida en el intervalo [-1,1] (T=2), obteniendo los 15 priemeros trminos (el independiente, 7 en coseno y 7 en seno). 1.- Definimos la funcin y calculamos la serie de Fourier, llamndole g(t):

practica7.nb

45

Clear@f, fpD; f@t_D = t ^ 2 + t; g@t_D = FourierTrigSeries@f@tD, t, 7, FourierParameters 81, 1 2<D fp@t_D := f@tD ; 1 < t < 1; fp@t_D := fp@t 2D ; t > 1; 3.- Representamos g(t) grficamente en el intervalo [-1,5], en color rojo, llamando al grfico, graf2. graf2 = Plot@g@tD, 8t, 1, 5<, PlotRange 8.5, 2<, PlotStyle RGBColor@1, 0, 0DD Show@graf1, graf2D 5.- Obtenemos los coeficientes del tercer coseno y cuarto seno, comprobando que son los calculados anteriormente. FourierCosCoefficient@t ^ 2 + t, t, 3, FourierParameters 81, 1 2<D Comparando este ejemplo con el anterior, se puede observar, que aunque se calculan ms trminos de la serie, la aproximacin no es tan buena. Esto se debe a la discontinuidad o salto que presenta la funcin, y en sus proximidades es donde hay mas diferencia. FourierSinCoefficient@t ^ 2 + t, t, 4, FourierParameters 81, 1 2<D graf1 = Plot@fp@tD, 8t, 1, 5<, PlotRange 8.5, 2<D

2.- Simulamos la extensin peridica de f(t), llamndole fp(t) y la representamos grficamente en el intervalo [-1,5], llamando al grfico, graf1.

4.- Mostramos los dos grficos, graf1 y graf2 juntos.

Ejercicios
1- Sea f(t) la funcin definida en el intervalo [-2,2] a partir de un pulso rectangular centrado en el origen y de duracin igual a 2. a) Obtener los seis primeros desarrollos distintos de Fourier de f(t) en la forma de senos y cosenos llamndoles f1 (t), f2 (t), ..., f6 (t). b) Introducir las grficas de estos desarrollos junto con la de la funcin en una tabla, P, sin mostrar dichos grficos. Utilizar finalmente los comandos Show, GraphicsArray y Partition para presentar en dos lneas las seis grficas. c) Representar grficamente los errores que se cometen al sustituir la funcin f(t) por las f1 (t), f2 (t), ..., f6 (t).

practica7.nb

46

2- Obtener la forma exponencial de la serie de Fourier del pulso rectangular del ejercicio 1 mediante el comando FourierSeries.

3- Calcular el n de terminos necesarios en el desarrollo en serie de Fourier del ejercicio 1 para que al sustituir dicha funcin por el desarrollo el error sea menor que eps= .02 , en c= .5 .Dar como resultado: el n de trminos de la serie, el desarrollo correspondiente S(t) y el valor de S(c).Utilizar el comando For.

4- Repetir el ejercicio primero para la funcin : g(x) = x(x-p), en el intervalo [0,p]. a+b NOTA: Si se desea obtener el desarrollo de f(x), con x[a,b], hay que considerar el desarrollo de g(t)=f(t+ 2 ), a+b a+b a+b con t[- 2 , 2 ], y a continuacin considerar de nuevo x=t+ 2 .

5.- Repetir el ejercicio 1 con las funciones f1(t), f2(t), f3(t) y f4(t) del ejercicio 4 del bloque anterior.