Modelo térmico de un edificio (GRUPO 3)

De MateWiki
Saltar a: navegación, buscar
Trabajo realizado por estudiantes
Título Modelo térmico de un edificio. Grupo 3
Asignatura Ecuaciones Diferenciales
Curso Curso 2015-16
Autores Javier Blanco Villarroel,

Javier Colorado Martínez, Alberto Garcés Rodríguez, Álvaro Llera Fernández, Antonio Pérez Mata

Este artículo ha sido escrito por estudiantes como parte de su evaluación en la asignatura

Para este trabajo se pretende desarrollar un modelo matemático que aproxime el comportamiento de la temperatura en un edificio con unos parámetros de aislamiento definidos y expuesto a una cierta temperatura ambiente exterior. Para modelizar este suceso utilizaremos la teoría de ecuaciones diferenciales y modelos numéricos resueltos mediante el programa MatLab.

1 Introducción y objetivo

Supondremos un edificio formado por un único compartimento en contacto con una temperatura exterior que podrá ser constante o venir definida por una cierta función. Además consideraremos la posible acción de un aire acondicionado/calefacción y el calor que desprenden las personas/electrodomésticos que se encuentran dentro del edificio. A partir de este modelo tenemos como objetivo dar respuesta a una serie de cuestiones que se nos plantean:

  1. ¿Cuánto tarda en cambiar considerablemente la temperatura del edificio?.
  2. ¿Cómo varía la temperatura del edificio durante la primavera y el otoño, cuando no se emplea el aire acondicionado o calefacción?.
  3. ¿Cómo varía la temperatura del edificio durante el verano, cuando se utiliza aire acondicionado, o en invierno, cuando se emplea calefacción?.

En nuestro caso particular estudiaremos la evolución de la temperatura en un lapso de 24h, para ello definiremos la variable T(t) que representa la temperatura en el interior del edificio en un instante t. Como se puede observar T será una función dependiente únicamente del tiempo ya que consideramos el interior del edificio como un único habitáculo en el cuál la temperatura es igual para todo el espacio.

2 Modelización del problema

Vamos a deducir la ecuación diferencial que gobierna el comportamiento de la temperatura, para ello tenemos que aceptar como válidas una serie de hipótesis:

  • Aceptaremos como válida y extrapolable a nuestro problema la ley de transmisión del calor de Fourier, que afirma que la conducción de calor entre dos cuerpos es proporcional a la diferencia de temperatura de ambos para una cierta constante k de proporcionalidad.
                                                     dT1/dt = k × (T1-T2)
  • Consideraremos la temperatura T(t)igual para todo el interior del edificio.
  • Consideraremos una razón de calentamiento adicional H(t) causada por las personas y/o máquinas del interior del edificio.
  • Consideraremos una razón de calentamiento (o enfriamiento) U(t) causada por una calefacción (o aire acondicionado).
  • Tanto H(t) como U(t) son magnitudes que suelen venir expresadas en unidades de energía por unidad de tiempo (potencia), no obstante, para reducir la operatividad se multiplicarán ambas por la capacidad calorífica del edificio (°C/Energía calorífica) y así ambas quedan expresadas en °C/tiempo

Con estas hipótesis como premisas deduciremos la ecuación diferencial que rige la temperatura T(t) en base a que la variación de grados centígrados es igual a los grados centígrados que aumentan menos los que disminuyen.

3 Apartado 1

% TRABAJO APARTADO A
clear all, clc, close all
% Ecuación diferencial: T'(t)=1/3*(T0-T(t));
% Solución exacta T(t)=(T0-M0)*exp(-1/3*t)+M0;

k=1/3; %Cte tiempo del edificio
M0=8; % Temperatura exterior
T0=14;
% Discretización
t0=0;
tN=24;
h= input('Dame el paso: h = ');
N=round((tN-t0)/h);

t=linspace(t0,tN,N+1);
y=zeros(size(t));

% Solución
Tex=(T0-M0)*exp(-1/3*t)+M0;
figure
plot(t,Tex)
xlabel('Time')
ylabel('Temperature')
title('Temperature variation')
legend('exact ecuation')
% Cálculo numérico
T(1)=T0; %input('Valor inicial = ');

disp('--------')
disp('Si no hay valor de T o t en la EDO, poner:')
disp('0*T ó 0*t')
disp('-------')

fun=input('Introduce la función f(t,T) = ','s');
f=inline(fun,'t','T');

for k=1:N
  T(k+1)=(T(k)+8*h/3)/(1+h/3);
end
figure
plot(t,T)
xlabel('Time')
ylabel('Temperature')
title('Temperature variation')
legend('Euler implicito EN INGLÉS')

% Estudio de los errores
format long;
err=abs(Tex-T);
maxi= max(err);
% fprintf('el error máximo es %')
 
pos=1:1:length(t);

% Tabl=[pos', t',T',Tex',err']

4 Apartado 2

4.1 d.)

clear, close all

%Introducimos los datos del problema
t0=0;
tN=24;
T0=13;
disp('introduce los pasos que desees tomar en forma de vector')
h=input('introduzca longitud de paso: ');

% Creamos un bucle que nos representa la solución para cada uno de los valores de h
for i=1:length(h)
    h2=h(i);
%discretizamos la variable independiente
t=t0:h2:tN;
f=inline('1/3*(7-5*cos((pi/12)*t)-T)+3','t','T');
figure(i)

hold on
%definimos la función que modeliza la temperatura exterior
Text=7-5*cos((pi/12)*t);
subplot(2,1,1)
plot(t,Text,'b')

%generamos el vector TE que es el que contendra la solucion por Euler
TE=zeros(1,length(t));
%Euler
TE(1)=T0;
for j=1:length(t)-1;
    TE(j+1)=TE(j)+h2*f(t(j),TE(j));
end
plot(t,TE,'r')
k=h(i);
%El título variará en función del paso que se utilice en cada iteración
title(['Método de Euler con paso ' num2str(k) ''])
xlabel('horas')
ylabel('ºC')
hold off

%metodo de Runge-Kutta
subplot(2,1,2)
plot(t,Text,'b')
TRK=zeros(1,length(t));
TRK(1)=T0;
for j=1:length(t)-1
  K1=f(t(j),TRK(j));
  K2=f(t(j)+h2/2,TRK(j)+(h2/2)*K1);
  K3=f(t(j)+h2/2,TRK(j)+(h2/2)+K2);
  K4=f(t(j)+h2,TRK(j)+h2*K3);
  TRK(j+1)=TRK(j)+(h2/6)*(K1+2*K2+2*K3+K4);
end
plot(t,TRK,'r')
title(['Método de Runge Kutta orden 4 con paso ' num2str(k) ''])
xlabel('horas')
ylabel('ºC')
hold off
end