Download as pdf or txt
Download as pdf or txt
You are on page 1of 5

Actividad en clase 10

5.2 Integrales trigonométricas


Ejercicio con MATLAB

87 Modelar datos. La tabla muestra las temperaturas normales máxima (alta) y mínima (baja) (en grados
Fahrenheit) en Erie, Pennsylvania, para cada mes del año.

Defina un vector t con los valores enteros del 0 al 12.

Defina un vector Max con los datos de temperatura máxima (agregue el dato de enero nuevamente al final para
que el vector tenga el mismo tamaño que t).

Defina un vector Min con los datos de temperatura máxima (agregue el dato de enero nuevamente al final para
que el vector tenga el mismo tamaño que t).

Utilice la aplicación "Curve Fitter" para ajustar los datos al modelo (puede

elegir el tipo de ajuste: 'Fourier'). Deberá generar un modelo para los datos de temperatura máxima y otro
modelo para los datos de temperatura mínima.

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% Código %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%


t=0:12;
Max=[33.5 35.4 44.7 55.6 67.4 76.2 80.4 79.0 72.0 61.0 49.3 38.6 33.5];
Min=[20.3 20.9 28.2 37.9 48.7 58.5 63.7 62.7 55.9 45.5 36.4 26.8 20.3];
%%%% Temperaturas Maximas %%%%%%%%%
[xData, yData] = prepareCurveData( t, Max );
ft = fittype( 'fourier1' );
opts = fitoptions( 'Method', 'NonlinearLeastSquares' );
opts.Display = 'Off';

1
opts.StartPoint = [0 0 0 0.523598775598299];

[fitresult, gof] = fit( xData, yData, ft, opts );

figure( 'Name', 'Temperatura Máximas' );


h = plot( fitresult, xData, yData );
legend( h, 'Max vs. t', 'Temperatura Máximas', 'Location', 'NorthEast', 'Interpreter', 'none' )
xlabel( 't', 'Interpreter', 'none' );
ylabel( 'Max', 'Interpreter', 'none' );
grid on

%%%% Temperaturas Mínimas %%%%%%%%%


[xData, yData] = prepareCurveData( t, Min );
ft = fittype( 'fourier1' );
opts = fitoptions( 'Method', 'NonlinearLeastSquares' );
opts.Display = 'Off';
opts.StartPoint = [0 0 0 0.523598775598299];

[fitresult, gof] = fit( xData, yData, ft, opts );

figure( 'Name', 'Temperaturas Mínimas' );


h = plot( fitresult, xData, yData );
legend( h, 'Min vs. t', 'untitled fit 1', 'Location', 'NorthEast', 'Interpreter', 'none' );
xlabel( 't', 'Interpreter', 'none' );
ylabel( 'Min', 'Interpreter', 'none' );

2
grid on;

Defina las funciones H(t) para temperaturas máximas y L(t) para temperaturas mínimas utilizando los
coeficientes obtenidos con el ajuste de datos utilizando variable simbólica.

Grafique ambas funciones en una misma figura. Conteste, ¿durante qué parte del año la diferencia entre las
temperaturas máximas y mínimas es mayor?

syms t;
H(t)= 56.9-23.89*cos((pi*t)/6)-0.04169*sin((pi*t)/6)

H(t) =

L(t)= 41.74-21.58*cos((pi*t)/6)-3.104*sin((pi*t)/6)

L(t) =

fplot(H(t),[0 12])

3
hold on
fplot(L(t),[0 12])
hold off
title("Temperaturas ")

La mayor diferencia de temperaturas fueron en el mes de Mayo

Cabe mencionar que los coeficientes , y pueden encontrarse de la siguiente manera:

Encuentre los coeficientes , y utilizando las integrales anteriores, donde será o según el
caso y verifique que sean los mismos que los obtenidos por la aplicación Curve Fitter. Guarde los resultados en
variables tipo double.

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% Código %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%


% H(t)
Ha0=1/12*int(H(t),[0 12]);
Ha0=double(Ha0)

4
Ha0 = 56.9000

Ha1=1/6*int(H(t)*cos(pi*t/6),[0 12]);
Ha1=double(Ha1)

Ha1 = -23.8900

Hb1=1/6*int(H(t)*sin(pi*t/6),[0 12]);
Hb1=double(Hb1)

Hb1 = -0.0417

% L(t)
La0=1/12*int(L(t),[0 12]);
La0=double(La0)

La0 = 41.7400

La1=1/6*int(L(t)*cos(pi*t/6),[0 12]);
La1=double(La1)

La1 = -21.5800

Lb1=1/6*int(L(t)*sin(pi*t/6),[0 12]);
Lb1=double(Lb1)

Lb1 = -3.1040

You might also like