Está en la página 1de 27

Modelo matemtico de la

temperatura en la atmosfera

Universidad Nacional Mayor de San


Marcos

Cristian Quezada De La Cruz

Meteorologa

Lima, Octubre 2016


UNIVERSIDAD NACIONAL MAYOR DE SAN MARCOS

Introduccin

En este trabajo se desea dar a conocer un modelo


sobre la temperatura del ambiente a travs de los
principios termodinmicos con sus respectivos
modelos que se investigaran ms adelante para luego
usar los mtodos numricos en ecuaciones
diferenciales parciales, intentar hacer un pronstico
simple sobre la temperatura en el tiempo a partir de
los datos de la temperatura en un tiempo
determinado.

Ilustracin 1: Grfico generado en Python

METEOROLOGAPgina 2
UNIVERSIDAD NACIONAL MAYOR DE SAN MARCOS

CAPITULO 1. CONCEPTOS SOBRE LA

TEMPERATURA

En el da a da podemos percibir la sensacin de frio o


calor con la cual nos hace realizar ciertas actividades
como un da de paseo a la playa o al campo, cosa que
no se disfruta mucho si hay lluvia con vientos que
nos hacen no querer salir sino estar en casa junto a
una chimenea.

Esta sensacin es lo que se conoce como temperatura


que es el objeto de estudio de esta monografa, una
temperatura baja es lo que se conoce como frio y una
temperatura alta se percibe como calor.

Pero nuestros sentidos no son una forma confiable y


objetiva para medir la temperatura, por eso usamos
termmetros de diversas formas para obtener los
datos y hacer el modelo.

La termodinmica es la ciencia que estudia la relacin


entre el calor y otras formas de energa. El calor es
energa en trnsito. Siempre que existe un gradiente
METEOROLOGAPgina 3
UNIVERSIDAD NACIONAL MAYOR DE SAN MARCOS

de temperatura en un sistema o se ponen en contacto


dos sistemas a diferente temperatura, se transfiere
energa entre ellos. Sabemos de esta transferencia, no
porque la veamos, sino por los cambios que se
producen en el o los sistemas. La Termodinmica,
basndose en los estados de cada sistema desde un
punto de vista macroscpico, es decir, en funcin de
atributos tales como la presin, la temperatura y el
volumen, que se pueden medir, determina si ha
habido cambios en la energa interna de los mismo

La temperatura se mide en grados kelvin (K) que es


una escala absoluta y posee sus equivalentes en otras
escalas como Celsius (C), Fahrenheit (F) y Rankin
(R); veremos a continuacin principios y propiedades.

1.1 Ley cero de la Termodinmica


Se dice que dos cuerpos estn en equilibrio trmico si
no hay transferencia de calor entre ambos, ahora
enunciaremos el principio cero:

Si los objetos A y B estn por separado en equilibrio


trmico con un tercer objeto C, en tal caso A y B estn
en equilibrio trmico entre s. (Serway, 2008)

1.2 Primera ley de la Termodinmica


Es un caso especial de la ley de conservacin de
energa que describe procesos que slo cambian la

METEOROLOGAPgina 4
UNIVERSIDAD NACIONAL MAYOR DE SAN MARCOS

energa interna y las nicas transferencias de energa


son mediante calor y trabajo. (Serway, 2008)
U =QW
(0)

1.3 Segunda ley de la termodinmica


El segundo principio de la termodinmica determina
que el calor slo puede fluir de un cuerpo ms
caliente a uno ms fro, la ley de Fourier fija
cuantitativamente la relacin entre el flujo y las
variaciones espacial y temporal de la temperatura.

Ilustracin 2: El grfico muestra el flujo del calor dela zona ms


caliente a la ms fra.

k
1.4 Conductividad Trmica ( )

Es la medida de la capacidad de un material para


conducir calor. (Cenguel, 2011)

METEOROLOGAPgina 5
UNIVERSIDAD NACIONAL MAYOR DE SAN MARCOS

Ilustracin 3: La razn de conduccin del calor a

travs de un slido es directamente

proporcional a su conductividad trmica.

ce
1.5 Calor Especfico ( )

Se define como la energa requerida para elevar en un


grado la temperatura de una unidad de masa de una
sustancia.
Q
c e=
m T , unidades: KJ/Kg.C

1.6 Difusividad Trmica


ce
El producto que se encuentra con frecuencia en
el anlisis de la transferencia de calor, se llama
capacidad calorfica de un material. Tanto el calor
ce ce
especfico como la capacidad calorfica
representan la capacidad de almacenamiento de calor
ce
de un material. Pero la expresa por unidad de

METEOROLOGAPgina 6
UNIVERSIDAD NACIONAL MAYOR DE SAN MARCOS

ce
masa, en tanto que la expresa por unidad de
volumen, como se puede advertir a partir de sus
unidades J/kg C y J/m3 C, respectivamente.

Otra propiedad de los materiales que aparece en el


anlisis de la conduccin del calor en rgimen
transitorio es la difusividad trmica, la cual
representa cun rpido se difunde el calor por un
material y se define como:
Calor conducid o k
= =
Calor almacenado ce

1.7 Procesos de Transferencia del calor


La transferencia de calor es el proceso de propagacin
del calor en distintos medios. La parte de la fsica que
estudia estos procesos se llama a su vez Transferencia
de calor o Transmisin de calor. La transferencia de
calor se produce siempre que existe un gradiente
trmico o cuando dos sistemas con diferentes
temperaturas se ponen en contacto. El proceso
persiste hasta alcanzar el equilibrio trmico, es decir,
hasta que se igualan las temperaturas. Cuando existe
una diferencia de temperatura entre dos objetos o
regiones lo suficientemente prximas, la transferencia
de calor no puede ser detenida, solo puede hacerse
ms lenta.

METEOROLOGAPgina 7
UNIVERSIDAD NACIONAL MAYOR DE SAN MARCOS

a. Conduccin

Es la transferencia de calor que se produce a travs


de un medio material por contacto directo entre sus
partculas, cuando existe una diferencia de
temperatura y en virtud del movimiento de sus
micropartculas. El medio puede ser slido, lquido o
gaseoso, aunque en lquidos y gases solo se da la
conduccin pura si se excluye la posibilidad de
conveccin. La cantidad de calor que se transfiere por
conduccin, viene dada por la ley de Fourier.

Ley de Fourier: Esta ley afirma que la velocidad de


conduccin (difusividad termica1.6) de calor a travs
de un cuerpo por unidad de seccin transversal es
proporcional al gradiente de temperatura que existe
en el cuerpo. (Incropera, 1999)

Qcond =kA T
(0)

k
Donde es la conductividad trmica del material, A
es el rea perpendicular en la direccin de la
T
transferencia del calor y es el gradiente de
temperatura.

Si suponemos que el calor fluye en una direccin y en


las otras es tan pequeo que se puede despreciar, y
adems decimos que tiene una fuente de calor,
obtenemos la ecuacin unidimensional de

METEOROLOGAPgina 8
UNIVERSIDAD NACIONAL MAYOR DE SAN MARCOS

conductividad variable con k (T ( x ,t ))


en funcin de
la temperatura -Cap. 2.2 (Cenguel, 2011).
T T
( )
k
x x
+ q = c e
t (0)

Donde q es el calor generado en el interior del


elemento.

Para aplicaciones prcticas se puede suponer que la


conductividad trmica permanece constante en algn
valor promedio. En ese caso, la ecuacin antes dada
se reduce a la ecuacin de conductividad constante.
2 T q 1 T
+ =
x2 k t (0)


Donde es la difusividad trmica del material y
representa la rapidez con que se propaga el calor a
travs del mismo.

Generalizando obtenemos la ecuacin con


conductividad constante y fuente de calor externa
(Pag. 76 ec 2-39) (Cenguel, 2011)
q T
T + =
ce t (0)

b. Conveccin

Fundamentos.

METEOROLOGAPgina 9
UNIVERSIDAD NACIONAL MAYOR DE SAN MARCOS

c. Radiacin

Fundamentos.

METEOROLOGAPgina 10
UNIVERSIDAD NACIONAL MAYOR DE SAN MARCOS

CAPITULO 2. TEMPERATURA EL

AMBIENTE

Las temperaturas que influyen.


Tabla 1: Difusividad trmica (Meinel)

Calor Conduct. Dif.


Material Densidad
especfico del calor trmica
g /cm
3
c cal/g k cal /cm s 2
k / c cm / s
Unidades
Tierra
1.26 0.19 0.0006 0.0025
seca
Aire1 0.2167
Agua 1.00 1.00 0.0014 0.0014

2.1 Temperatura del suelo


Usaremos los valores promedios de la difusividad
trmica para aplicarlos posteriormente.

2.2 Temperatura del aire


El aire es un fluido y por eso recurriremos a las
ecuaciones de la dinmica de fluidos ya que est en
constante movimiento.

1
http://www.miliarium.com/Prontuario/Tablas/Quimi
ca/PropiedadesTermicas.asp

METEOROLOGAPgina 11
UNIVERSIDAD NACIONAL MAYOR DE SAN MARCOS

2.3 Temperatura del mar


Al igual que el aire el mar es un fluido de gran escala
y que absorbe la mayor parte del calor que nos llega
debido a la radiacin solar.

CAPITULO 3. HERRAMIENTAS -

SOFTWARE

3.1 Requisitos mnimos del sistema


Sistema Operativo: Windows XP 32bits
Procesador: 3.2 GHz o ms.
Memoria: 1GB o ms.
Espacio en Disco: 3GB

3.2 Descripcin del lenguaje de programacin


Se utiliz Python por la robustez para trabajar con
vectores y matrices para las operaciones matemticas
adems de tener una gran aceptacin en el campo
cientfico y una gran comunidad desarrollando
actualizaciones y soporte para el lenguaje.

Python ofrece una buena cantidad de libreras para


uso cientfico y proceder a detallar las caractersticas
por el cual se us para este trabajo.

METEOROLOGAPgina 12
UNIVERSIDAD NACIONAL MAYOR DE SAN MARCOS

3.3 Libreras de Python


Las libreras contienen funciones, mtodos, variables
que estn codificadas en el lenguaje para luego solo
llamar a la funcin o mtodo previa importacin del
mdulo.

NumPy

NumPy es una extensin de Python, que le agrega


mayor soporte para vectores y matrices,
constituyendo una biblioteca de funciones
matemticas de alto nivel para operar con esos
vectores o matrices.2

Matplotlib

Es una biblioteca para la generacin de grficos a


partir de datos contenidos en listas o arrays en el
lenguaje de programacin Python y su extensin
matemtica NumPy. Proporciona una API, pylab,
diseada para recordar a la de MATLAB.3

BaseMap

El kit de herramientas matplotlib-basemap es una


biblioteca para el trazado de datos en 2D en los

2 https://es.wikipedia.org/wiki/NumPy

3 https://es.wikipedia.org/wiki/Matplotlib

METEOROLOGAPgina 13
UNIVERSIDAD NACIONAL MAYOR DE SAN MARCOS

mapas en Python. Es similar en funcionalidad a la


caja de herramientas de mapeo de MATLAB, las
instalaciones de mapeo IDL , GrADS , o las Generic
Mapping Tools . PyNGL y CDAT son otras bibliotecas
que proporcionan capacidades similares en Python4.

NetCDF4

NetCDF (formulario de datos de red comn) es un


conjunto de interfaces para un acceso orientado
matriz de datos y libre coleccin distribuida de
bibliotecas de acceso a datos para C, Fortran, C ++,
Java y otros lenguajes. Las bibliotecas netCDF
compatibles con un formato independiente de la
mquina para la representacin de datos cientficos.
Los datos NetCDF poseen las siguientes
caractersticas:

Auto-describible. Un archivo netCDF incluye


informacin sobre los datos que contiene.
Porttil. Un archivo netCDF se puede acceder
mediante sistemas con diferentes formas de
almacenar nmeros enteros, caracteres y
nmeros de punto flotante.
Escalable. Un pequeo subconjunto de un gran
conjunto de datos se puede acceder de manera
eficiente.
4 http://matplotlib.org/basemap/users/intro.html

METEOROLOGAPgina 14
UNIVERSIDAD NACIONAL MAYOR DE SAN MARCOS

Anexables . Los datos pueden ser agregados a un


archivo netCDF debidamente estructurado sin
copiar el conjunto de datos o la redefinicin de su
estructura.
Compartible. Un escritor y mltiples lectores
pueden acceder simultneamente el mismo
archivo netCDF.
Archivable. El acceso a todas las formas
anteriores de los datos netCDF ser compatible
con las versiones actuales y futuras del
software.5

PIL

El Python Image Library (PIL) aade capacidades de


procesamiento de imgenes para el intrprete de
Python. Esta biblioteca es compatible con muchos
formatos de archivo, y proporciona potentes
capacidades de procesamiento de imgenes y
grficos.6

5
http://www.unidata.ucar.edu/software/netcdf/docs/
faq.html#whatisit

6 http://www.pythonware.com/products/pil/

METEOROLOGAPgina 15
UNIVERSIDAD NACIONAL MAYOR DE SAN MARCOS

3.4 Instalacin
Tras descargar Python en archivo .EXE, procedemos a
hacer la tpica instalacin en Windows.

Igualmente para Numpy, Matplotlib, Basemap, PIP


que se encuentran en formato .EXE.

Para los archivos en formato .whl (Anexo 1) se procede


con los siguientes pasos:

1. Abrir la ventana de comandos de Windows


(CMD), puede ser mediante la combinacin de
teclas WINDOWS+R, escribimos cmd y damos en
aceptar.
2. Cambiar el directorio actual usando los comando
cd(change directory) y dir para ver los archivos en
tal directorio de tal manera que nos situemos en
el directorio donde tenemos el PIP.EXE que la
ruta por defecto es C:\Python27\Scripts.
(consultar Anexo 1)
3. Luego escribimos pip install
nombre_exacto_del_archivo.whl, en mi caso fue
pip install d:/netCDF4-1.1.7+numpy16-cp27-
none-win32.whl, que estaba guardado solo en el
disco local D.
4. Esperar que la instalacin termine.

METEOROLOGAPgina 16
UNIVERSIDAD NACIONAL MAYOR DE SAN MARCOS

3.5 Leyendo los datos


Tras la descarga de los datos, la mayora de ellos con
extensin .NC (se puede consultar los formatos
soportados por esta librera en la pgina web) se debe
especificar la ruta absoluta o la ruta relativa a la
carpeta donde se guarda el script.

Solo se debe importar la librera y usar el Dataset y la


letra r de read.

#leer la data

from netCDF4 import Dataset

nc_fid = Dataset("D:/air.sig995.2012.nc",
'r')

METEOROLOGAPgina 17
UNIVERSIDAD NACIONAL MAYOR DE SAN MARCOS

CAPITULO 4. APLICACIN DE LOS

MODELOS

En este captulo usaremos las herramientas descritas


anteriormente para procesar los datos y visualizarlos
de una forma ms amigable que una simple grafica de
una funcin.

Empezaremos intentando aplicar la conduccin en el


suelo, como no he encontrado datos en la
temperatura del suelo todava, usaremos la
temperatura del aire a 2 metros y supondremos que
se aproxima a la temperatura del suelo y conduce el
calor latitudinalmente y longitudinalmente.

Esto nos lleva a plantear la siguiente ecuacin:


2 2
( T T
2
+ 2 +
x y
q
c )
e
=
T
t (0)

Que es una adaptacin en 2D de la ecuacin (0),


vamos a usa el mtodo de diferencias finitas que
dejaremos referenciada la teora. (Zill, 2015)

4.1 Diferencias Finitas


T (x , y ,t )
Se desea obtener la solucin , aproximamos
las derivadas de segundo orden:

METEOROLOGAPgina 18
UNIVERSIDAD NACIONAL MAYOR DE SAN MARCOS

2 T 1 (
[T x +h , y ,t )2 T ( x , y , t )+T ( xh , y , t ) ]
x 2 h2 (0)

2 T 1 (
[T x , y+ k , t )2T ( x , y , t )+ T ( x , yk ,t ) ]
x2 k2 (0)

Y la aproximacin por diferencias hacia adelante.


T 1
[ T ( x , y , t+ n )T ( x , y ,t ) ]
t n (0)

Donde h,k,n son los tamaos al particionar las


variables x,y,t respectivamente.

4.2 Observando la data


Usaremos los datos de la temperatura del aire a 2

#Visualizar las variables de la data

from netCDF4 import Dataset

nc_fid = Dataset("D:/air.sig995.2012.nc", 'r')

nc_fid.variables

metros que se encuentran en el anexo de descargas,


el archivo descargado se llama air.sig995.2012.nc.

METEOROLOGAPgina 19
UNIVERSIDAD NACIONAL MAYOR DE SAN MARCOS

El cdigo para visualizar los datos es el siguiente:


from netCDF4 import Dataset
import numpy as np
import matplotlib.pyplot as plt
import datetime as dt # Python standard library
datetime module

nc_fid = Dataset("D:/air.sig995.2012.nc", 'r')

lats = nc_fid.variables['lat'][:] # extract/copy


the data
lons = nc_fid.variables['lon'][:]
time = nc_fid.variables['time'][:] #variable en
horas acumuladas
air = nc_fid.variables['air'][:] # shape is time,
lat, lon as shown above

# mascara
offset = dt.timedelta(hours=48)
# da formato de fecha a los datos en time
dt_time = [dt.date(1, 1, 1) + dt.timedelta(hours=t)
- offset\
for t in time]

time_idx = 0 # some random day in 2012


cur_time = dt_time[time_idx]

aux = air[time_idx, :, :]
X, Y = np.meshgrid(lons, lats)

plt.pcolor(X,Y,aux,cmap=plt.cm.Spectral_r)
plt.colorbar() #shrink =0.5 escala del colorbar
plt.title("%s on %s" %
(nc_fid.variables['air'].var_desc, cur_time))
#plt.savefig('fig'+str(time_idx)+'.png')
#plt.clf()
plt.show()

El tiempo que se encuentra en la data , est en horas,


por eso le damos el formato de fecha simplemente

METEOROLOGAPgina 20
UNIVERSIDAD NACIONAL MAYOR DE SAN MARCOS

sumndole la fecha inicial, luego le restamos 2


das(48 horas) para establecer nuestro da.

A continuacin se muestra el resultado de ejecucin:

Ilustracin 4

Ahora cambiaremos el rango de las longitudes de 0


-400 a -180 180 para hacerlos coincidir con los
datos reales con el siguiente cdigo:
#Agrega un valor de longitud para rellenar datos
faltantes
air_cyclic, lons_cyclic = addcyclic(air[time_idx,
:, :], lons)
# Cambiamos el rango de la malla de -180 a 180 en
vez de 0 a 360.
air_cyclic, lons_cyclic = shiftgrid(180.,
air_cyclic, lons_cyclic, start=False)
# Crear la malla 2D
lon2d, lat2d = np.meshgrid(lons_cyclic, lats)
METEOROLOGAPgina 21
plt.pcolor(lon2d,lat2d,air_cyclic,cmap=plt.cm.Spect
ral_r)
UNIVERSIDAD NACIONAL MAYOR DE SAN MARCOS

Ilustracin 5: Cambio de coordenadas

Ahora para obtener una mejor visualizacin usaremos


la librera Basemap con la proyeccin Mollweide7 que
es una proyeccin equitativa y pseudocilndrica usada
generalmente para mapas de la tierra.
7 https://es.wikipedia.org/wiki/Proyecci
%C3%B3n_de_Mollweide

METEOROLOGAPgina 22
UNIVERSIDAD NACIONAL MAYOR DE SAN MARCOS

El cdigo completo para un da en particular nos


quedara as:
from netCDF4 import Dataset
import numpy as np
import matplotlib.pyplot as plt
from mpl_toolkits.basemap import Basemap,
addcyclic, shiftgrid
import
lats = datetime as dt # Python standard
nc_fid.variables['lat'][:] library
# extract data
datetime module
lons = nc_fid.variables['lon'][:]
time = nc_fid.variables['time'][:] #variable en
nc_fid = Dataset("D:/air.sig995.2012.nc", 'r')
horas acumuladas
air = nc_fid.variables['air'][:] # shape is time,
lat, lon as shown above

time_idx = 140 # some random day in 2012


# mascara
offset = dt.timedelta(hours=48)
# da formato de fecha a los datos en time
dt_time = [dt.date(1, 1, 1) + dt.timedelta(hours=t)
- offset\ for t in time]
cur_time = dt_time[time_idx]

m = Basemap(projection='moll', llcrnrlat=-90,
urcrnrlat=90,\
llcrnrlon=0, urcrnrlon=360,
resolution='c', lon_0=0)
m.drawcoastlines()
m.drawmapboundary()
# Make the plot continuous
air_cyclic, lons_cyclic = addcyclic(air[time_idx,
:, :], lons)
air_cyclic, lons_cyclic = shiftgrid(180.,
air_cyclic, lons_cyclic, start=False)
# Create 2D lat/lon arrays for Basemap
lon2d, lat2d = np.meshgrid(lons_cyclic, lats)
# Transforms lat/lon en coordenadas moll
x, y = m(lon2d, lat2d)
# Plot of air temperature with 11 contour intervals
cs = m.contourf(x, y, air_cyclic, 11,
cmap=plt.cm.Spectral_r) #contourf rellena el
contorno
cbar = plt.colorbar(cs, orientation='horizontal',
shrink=0.5)
cbar.set_label("%s (%s)" %
(nc_fid.variables['air'].var_desc,\

nc_fid.variables['air'].units))
METEOROLOGAPgina
plt.title("%s on %s" %
23
(nc_fid.variables['air'].var_desc, cur_time))
plt.show()
UNIVERSIDAD NACIONAL MAYOR DE SAN MARCOS

Ilustracin 6

METEOROLOGAPgina 24
UNIVERSIDAD NACIONAL MAYOR DE SAN MARCOS

4.3 Transmisin de calor en el suelo


Ya que el suelo se puede considerar generalmente
como un slido podemos aplicar la ecuacin de la
conduccin del calor suponiendo que es un medio
istropo (Que tiene la propiedad de transmitir
igualmente en todas direcciones cualquier accin
recibida en un punto de su masa)

lats = nc_fid.variables['lat'][:] # extract data


lons = nc_fid.variables['lon'][:]
time = nc_fid.variables['time'][:] #variable en
horas acumuladas
air = nc_fid.variables['air'][:] # shape is time,
lat, lon as shown above

time_idx = 140 # some random day in 2012


# mascara
offset = dt.timedelta(hours=48)
# da formato de fecha a los datos en time
dt_time = [dt.date(1, 1, 1) + dt.timedelta(hours=t)
- offset\ for t in time]
cur_time = dt_time[time_idx]

m = Basemap(projection='moll', llcrnrlat=-90,
urcrnrlat=90,\
llcrnrlon=0, urcrnrlon=360,
resolution='c', lon_0=0)
m.drawcoastlines()

METEOROLOGAPgina 25
UNIVERSIDAD NACIONAL MAYOR DE SAN MARCOS

Resultado.

CAPITULO 5. Conclusin

CAPITULO 6. Anexo I: Paginas de

descarga

6.1 Enlaces a los paquetes de software


Python:
hjhhhttps://www.python.org/downloads/windows/

Libreras de extensin para Python en Windows


(archivos WHL):
http://www.lfd.uci.edu/~gohlke/pythonlibs/

Algunas de las libreras en instaladores (archivos


EXE), se pueden encontrar en sus respectivas
pginas o en: https://sourceforge.net/

METEOROLOGAPgina 26
UNIVERSIDAD NACIONAL MAYOR DE SAN MARCOS

Si es que no tienes PIP usar algunos de los mtodos


de la siguiente descripcin:
http://stackoverflow.com/questions/4750806/how-
do-i-install-pip-on-windows

6.2 Datos en formato netCDF4 (nc)


Datos de la pgina gubernamental NOAA.

http://www.esrl.noaa.gov/psd/repository/entry/sho
w?entryid=8cd78007-a88a-4e53-9b92-14aa2f5b6102

METEOROLOGAPgina 27