Algoritmia - Ayuda con SCILAB

   
Vista:

Ayuda con SCILAB

Publicado por Katerina (1 intervención) el 14/10/2015 00:30:45
Me piden realizar el siguiente ejercicio:
Utilizando la función espectro proporcionada:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
function [w,F]=espectro(t,x,P)
    // Funcion que a partir de una señal temporal calcula su integral de Fourier
    //
    // Parametros:
    //
    // t-> vector de tiempos (con espaciado uniforme)
    // x-> valores de la señal en cada instante de tiempo
    // P-> Periodo de la señal en el tiempo
    // los tamaños de los vectores t y x deben coincidir
    //
    // Valores devueltos:
    //
    // w -> Vector de frecuencias (rad/s)
    // F -> Valores de la integral de Fourier en las frecuencias del vector
    //      anterior (Son valores complejos)
    Tmuestreo=t(2)-t(1);
    repeticiones=(t(length(t))-t(1))/P;
    X=fft(x);
    X=fftshift(X);
    F=X*Tmuestreo/repeticiones;
    npuntos=length(x);
    w=-1/(Tmuestreo*2):1/(Tmuestreo*(npuntos-1)):1/(Tmuestreo*2);
    w=w*2*%pi;
endfunction
representar el espectro en amplitud de las señales del ejercicio anterior:
t = -50:1/30:50
T1 = 2
sumatorio = 0
for n = 1:400
ωn = 2 * %pi * n / T1
sumatorio = sumatorio + (10 * 1 * sin(ωn * 1 / 2) * cos(ωn * t) / (ωn * 1 / 2))
; end
f = (10 * 1 / T1) + (2 * sumatorio / T1)
plot(t, f, "r")
Gracias de antemano.
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder