py4sci

Referencia de programación de Condensaciones

Propiedades de los materiales (condensaciones.material)

Módulo para la definición, almacenamiento y recuperación de materiales.

class condensaciones.material.Material(name, group, mtype, mu, db='')

Material tipo definido por su nombre, tipo y propiedades

Los materiales pueden ser del tipo RESISTANCE, PROPERTIES o SHADING-COEF, aunque Condensaciones únicamente soporta por ahora los dos primeros tipos.

Todos los materiales disponen de las siguientes propiedades: name, group, type, mu, db, thickness_change (opcional).

Propiedades exclusivas de los materiales del tipo PROPERTIES: thickness, conductivity, density, specific_heat, thickness_min (opcional), thickness_max (opcional).

Propiedades exclusivas de los materiales del tipo RESISTANCE: resistance.

name

nombre del material (str)

group

nombre del grupo genérico al que pertenece el material (str)

type

tipo según definición [RESISTANCE`|`PROPERTIES`|`SHADING-COEF] (str)

mu

resistencia a la difusión del vapor de agua [adimensional] (float)

db

nombre de la base de datos de procedencia del material (str)

thickness_change

admite espesor pesonalizado [True`|`False] (bool) (opcional)

thickness

espesor del elemento [m] (float)

conductivity

conductividad térmica [W/m.K] (float)

density

densidad del material [kg/m³] (float)

specific_heat

calor específico [J/kg.K] (float)

thickness_min

espesor mínimo admisible [m] (float) (opcional)

thickness_max

espesor máximo admisible [m] (float) (opcional)

resistance

resistencia térmica del elemento [m²/K.W]

class condensaciones.material.MaterialesDB(filename='DB.ini')

Base de datos de Materiales

filename

nombre del archivo desde el que cargar la base de datos (str)

config

diccionario de configuración (nombre, ...) (dict)

nombres

lista de nombres de materiales de la BBDD (list)

nombresgrupos

lista de nombres de grupos de la BBDD (list)

materiales

diccionario de materiales de la BBDD por nombre de material (dict)

loadmaterialesdb(filename=None)

Lee base de datos de materiales en formato ConfigObj de archivo

Parámetros:
  • filename (str) – nombre del archivo desde el que cargar la base de datos

Descripción de Cerramientos (condensaciones.cerramiento)

Cerramiento - Clase para la modelización de un cerramiento tipo.

class condensaciones.cerramiento.Cerramiento(nombre, descripcion, capas=None, Rse=None, Rsi=None, tipo=None)

Clase para modelizar un cerramiento tipo, multicapa, con cada capa definida por su material y sus propiedades físicas.

matDB

BBDD de materiales (tipo: MaterialesDB)

nombre

Nombre del cerramiento (str)

descripcion

Descripción somera de la composición del cerramiento

capas

lista de tuplas con la descripción de las capas que forman el cerramiento. Cada tupla define una capa, identificada por su nombre y su espesor. La lista se ordena de exterior a interior. Si no se define, se usa una capa de espesor 0,3m y material el primero de la base de datos.

Rse

Resistencia superficial exterior [m²K/W] Si no se indica valor, se usa 0,04 m²K/W.

Rsi

Resistencia superficial interior [m²K/W] Si no se indica valor, se usa 0,13 m²K/W.

tipo

Tipo de cerramiento en relación a su disposición (horizontal, vertical, cubierta, etc) y que sirve para definir de forma implícita sus valores de resistencia superficial.

nombres

Lista de nombres de las capas

espesores

Lista de espesores de las capas [m]

e

Espesor total [m]

mu

Lista de difusividades al vapor de las capas [-]

K

Lista de conductividades térmicas de las capas [W/mK]

R

Lista de resistencias térmicas de las capas [m²K/W]

S

Lista de espesores de aire equivalente de las capas [m]

S_total

Espesor de aire equivalente del cerramiento [m]

R_total

Resistencia térmica total del cerramiento [m²K/W]

U

Transmitancia térmica del cerramiento [W/m²K]

temperaturas(temp_ext, temp_int)

Lista de temperaturas en el cerramiento [ºC]

Devuelve la temperatura exterior, temperatura superficial exterior, temperaturas intersticiales, temperatura superficial interior y temperatura interior.

Parámetros:
  • temp_ext (float) – temperatura exterior media en el mes de enero
  • temp_int (float) – temperatura interior de cálculo (20ºC)
Devuelve:

lista de temperaturas en el cerramiento

Return type:

list

presiones(temp_ext, temp_int, HR_ext, HR_int)

Lista de presiones de vapor en el cerramiento [Pa]

Devuelve la presión de vapor al exterior, presiones de vapor intermedias y presión de vapor interior.

Parámetros:
  • temp_ext (float) – Temperatura exterior del aire [ºC]
  • temp_int (float) – Temperatura interior del aire [ºC]
  • HR_ext (float) – Humedad relativa exterior del aire [%]
  • HR_int (float) – Humedad relativa interior del aire [%]
Devuelve:

lista de presiones de vapor en el cerramiento

Return type:

list

presionessat(temp_ext, temp_int)

Lista de presiones de saturación en el cerramiento [Pa]

Parámetros:
  • temp_ext (float) – Temperatura exterior del aire [ºC]
  • temp_int (float) – Temperatura interior del aire [ºC]
Devuelve:

lista de presiones de vapor de saturación en el cerramiento

Return type:

list

envolventec(temp_ext, temp_int, HR_ext, HR_int, cond_previa=[])

Puntos de las interfases que definen la envolvente de condensaciones

Puntos (S, psat, g) situados en las interfases que definen la envolvente de condensaciones. Sus puntos de tangencia con la curva de presiones de saturación definen los planos de condensación.

Parámetros:
  • temp_ext (float) – Temperatura exterior del aire [ºC]
  • temp_int (float) – Temperatura interior del aire [ºC]
  • HR_ext (float) – Humedad relativa exterior del aire [%]
  • HR_int (float) – Humedad relativa interior del aire [%]
  • cond_previa (list) – Lista de tuplas con posición del plano con condensación previa (0 = superficie exterior) y cantidad de condensado en ese plano [g/m²] [(n0, g0), (n1, g1), ..., (ni, gi)].
Devuelve:

Lista de tuplas [(S0, p0, g0), (S1, p1 g1), ..., (Si, pi, gi)] de distancia a la superficie exterior [m de aire equivalente], presión de saturación [Pa] y cantidad de condensación [g/m²s] para cada interfase.

Return type:

list(tuple)

cantidadc(envolv_inf, cond_previa=[])

Cantidades condensadas en las interfases [g/m².mes]

Calcula las cantidades de condensación a partir de la envolvente de condensaciones y las condensaciones previas en cada interfase.

condensacion(temp_ext, temp_int, HR_ext, HR_int, cond_previa=[])

Cantidad de condensación por interfases

Parámetros:
  • temp_ext (float) – Temperatura exterior del aire [ºC]
  • temp_int (float) – Temperatura interior del aire [ºC]
  • HR_ext (float) – Humedad relativa exterior del aire [%]
  • HR_int (float) – Humedad relativa interior del aire [%]
  • cond_previa (list) – Lista de tuplas con posición del plano con condensación previa (0 = superficie exterior) y cantidad de condensado en ese plano [g/m²] [(n0, g0), (n1, g1), ..., (ni, gi)].
Devuelve:

Lista de tuplas con posición del plano de condensación (0 = superficie exterior) y cantidad de condensado en ese plano (en [g/m²s]) [(n0, g0), (n1, g1), ..., (ni, gi)]

Return type:

list(tuple, ...)

class condensaciones.cerramiento.CerramientosDB(filename='CerramientosDB.ini')

Base de datos de Cerramientos

filename

nombre del archivo desde el que cargar la base de datos

config

diccionario de configuración (nombre, ...)

cerramientos

diccionario de cerramientos de la BBDD por nombre

nombres

lista de nombres de cerramientos de la BBDD

nombrestipos

lista de nombres de tipos de cerramiento de la BBDD

insert(cerramiento, index)

Insertar cerramiento antes de la posición index

Parámetros:
  • cerramiento (Cerramiento) – Cerramiento
  • index (int) – posición
rename(oldkey, newkey)

Cambia nombre de cerramiento

Parámetros:
  • oldkey (str) – nombre antiguo
  • newkey (str) – nombre nuevo
loadcerramientosdb(filename=None)

Lee base de datos de cerramientos en formato ConfigObj

Parámetros:
  • filename (str) – nombre del archivo que contiene la BBDD.
savecerramientosdb(filename=None)

Guarda base de datos de cerramientos en formato ConfigObj

Parámetros:
  • filename (str) – nombre del archivo en el que guardar la BBDD.

Ambiente higrotérmico (condensaciones.clima)

Módulo para la definición, almacenamiento y recuperación de ambientes higrotérmicos.

class condensaciones.clima.Clima(temp=20.0, HR=55.0)

Definición de un ambiente higrotérmico tipo (temperatura, humedad...)

temp

Temperatura [ºC]

HR

Humedad relativa [%]

condensaciones.clima.escape(data)

Codifica &, [ y ] en una cadena de datos.

Parámetros:
  • data (str) – cadena de datos original
Devuelve:

cadena de datos codificada

Return type:

str

Esta función codifica algunos caracteres de la cadena de datos original para permitir su uso seguro en archivos con formato .ini, en donde los caracteres codificados no están permitidos para su uso en secciones.

La función realiza la transformación inversa a unescape().

Ejemplo:

>>> escape('[5m]')
'&lb;5m&rb;'
condensaciones.clima.unescape(data)

Decodifica &, &lb;, y &rb; en una cadena de datos.

Parámetros:
  • data (str) – cadena de datos codificada
Devuelve:

cadena de datos original

Return type:

str

Esta función decodifica una cadena que ha sido transformada para permitir el uso seguro de algunos caracteres en archivos con formato .ini.

La función realiza la transformación inversa a escape().

Ejemplo:

>>> unescape('&lb;5m&rb;')
'[5m]'
condensaciones.clima.loadclimadb(filename='ClimaCTE.ini')

Lee una base de datos de climas

La base de datos proviene de un archivo en formato ConfigObj

Parámetros:
  • filename (str) – nombre del archivo de la base de datos
Devuelve:

  • diccionario de nombres de localidades con lista de instancias de Clima ordenadas por número de mes (enero = 1, diciembre = 12)
  • lista ordenada de nombres de localidades
  • sección de configuración de la base de datos

Return type:

tuple

condensaciones.clima.saveclimasdb(climas, nameorder=None, configdata=None, filename='ClimaCTE.ini')

Guarda una base de datos de climas

La base de datos se almacena en formato ConfigObj

Parámetros:
  • climas (dict) – contiene lista de instancias de clima para cada localidad
  • cnames (list) – lista ordenada de nombres tal como aparecen en la base de datos
  • config (dict) – valores de configuración de la base de datos

Relaciones psicrométricas (condensaciones.psicrom)

Relaciones y cálculos psicrométricos según CTE DB-HE G.3 e ISO EN 13788:2002

Relaciones psicrométricas básicas:

  • Presión de saturación
  • Presión de vapor
  • Humedad relativa interior

Cálculos psicrométricos:

  • Temperatura de localidad en función de la temperatura de la capital de provincia.
  • Presión de saturación de una localidad en función de la diferencia de altitud respecto a la capital de provincia.
  • Humedad relativa de una localidad en función de la diferencia de altitud respecto a la capital de provincia.
  • Tasa de transferencia de vapor en un cerramiento.
  • Humedad relativa interior del mes de enero, dada la higrometría, humedad relativa y temperaturas, según ISO EN 13788:2002.
  • Humedad relativa interior del mes de enero, dada la humedad relativa, temperaturas y renovación de aire, según CTE.
  • Humedad relativa interior del mes de enero dada la higrometría, según CTE.
condensaciones.psicrom.psat(temp)

Presión de saturación del aire húmedo [Pa]

Parámetros:
  • temp (float) – temperatura del aire [ºC]
Return type:

float

condensaciones.psicrom.pvapor(temp, humedad)

Presión de vapor del aire húmedo [Pa]

Parámetros:
  • temp (float) – Temperatura del aire [ºC]
  • humedad (float) – humedad relativa del aire [%]
Return type:

float

condensaciones.psicrom.temploc(temp, deltah)

Temperatura de una localidad no capital de provincia [ºC]

Es función de la temperatura y diferencia de altitud con la capital de provincia.

Parámetros:
  • temp (float) – temperatura media exterior de la capital para el mes dado [ºC]
  • deltah (float) – altura de la localidad sobre la de la capital [m]
Return type:

float

condensaciones.psicrom.psatloc(temp, deltah)

Presión de saturación en una localidad no capital de provincia [Pa]

Es función de la temperatura y diferencia de altitud con la capital de provincia.

Parámetros:
  • temp (float) – temperatura media exterior de la capital para el mes dado [ºC]
  • deltah (float) – altura de la localidad sobre la de la capital [m]
Return type:

float

condensaciones.psicrom.hrloc(temp, humedad, deltah)

Humedad relativa para la localidad no capital de provincia [%]

Es función de la temperatura, humedad y diferencia de nivel con la capital de provincia [%].

Si la altura fuese negativa se debería tomar como altura la de la capital.

Parámetros:
  • temp (float) – temperatura media exterior de la capital para el mes dado [ºC]
  • humedad (float) – humedad relativa media de la capital para el mes dado [%]
  • deltah (float) – altura de la localidad sobre la de la capital [m]
Return type:

float

condensaciones.psicrom.g(pe, pi, Se, Si, kunits=1.0)

Tasa de transferencia de vapor a través del cerramiento o capa [g/m².s]

Resulta útil para calcular condensada o evaporada entre interfases.

Parámetros:
  • pe (float) – presión de vapor exterior [Pa]
  • pi (float) – presión de vapor interior [Pa]
  • Se (float) – espesor de aire equivalente en pe [m]
  • Si (float) – espesor de aire equivalente en pi [m]
  • kunits (float) – factor de conversión de unidades. Por defecto vale 1.0 y obtenemos g/m²s. Con valor 2592000.0 obtendríamos g/m²mes.
Return type:

float

condensaciones.psicrom.hrintISO(text, tsint, hrext, higrometria)

Humedad relativa interior [%] del mes de enero

Es función del ritmo de producción de humedad interior (higrometría), definida según ISO EN 13788:2002

Para float text:
 

Temperatura exterior [ºC]

Parámetros:
  • tsint (float) – Temperatura superficial interior [ºC]
  • hrext (float) – Humedad relativa exterior [%]
  • higrometria (int) – nivel del ritmo de producción de la humedad interior Higrometría 1 (zonas de almacenamiento): delta_p = 270 Pa Higrometría 2 (oficinas, tiendas): delta_p = 540 Pa Higrometría 3 (viviendas residencial): delta_p = 810 Pa Higrometría 4 (viv. alta ocupación, rest., cocinas): delta_p = 1080 Pa Higrometría 5 (lavanderías, piscinas, restaurantes): delta_p = 1300 Pa
Return type:

float

condensaciones.psicrom.hrintCTE(text=None, tint=None, tsint=None, hrext=None, G=None, V=None, n=None, higrometria=None)

Humedad relativa interior [%] del mes de enero

Es función del ritmo de producción de humedad interior y la tasa de renovación de aire o, alternativamente, la higrometría, según se define en el CTE.

Útil para el cálculo de condensaciones superficiales.

Parámetros:
  • text (float) – temperatura exterior [ºC]
  • tint (float) – temperatura interior [ºC]
  • tsint (float) – temperatura superficial interior [ºC]
  • hrext (float) – Humedad relativa del aire exterior [%]
  • G (float) – ritmo de producción de la humedad interior [kg/h]
  • V (float) – Volumen de aire del local [m³]
  • n (float) – tasa renovación de aire [h^-1]
  • higrometria (int) – nivel del ritmo de producción de la humedad interior Higrometría 1 (zonas de almacenamiento) Higrometría 2 (oficinas, tiendas) Higrometría 3 (viviendas residencial): HR = 55% Higrometría 4 (viv. alta ocupación, rest., cocinas): HR = 62% Higrometría 5 (lavanderías, piscinas, restaurantes): HR = 70%
Return type:

float

Muestra ValueError:
 

si higrometria es distinto a 3, 4 o 5 o no se aportan el resto de parámetros cuando no se usa higrometria.


Comprobaciones (condensaciones.comprobaciones)

Módulo de comprobaciones higrométricas según CTE DB-HE Apéndice G e ISO 13788:2002

condensaciones.comprobaciones.fRsi(U)

Factor de temperatura de la superficie interior

Es aplicable a un cerramiento, partición interior o puentes térmicos INTEGRADOS en los cerramientos.

Se aplica la formulación del CTE DB-HE G.2.1.1

Parámetros:
  • U (float) – Transmitancia térmica del elemento [W/m²K]
Devuelve:

factor de temperatura de la superficie interior

Return type:

float

Nota

Para el cálculo del factor de temperatura de los encuentros de cerramientos se deben aplicar los métodos de las normas UNE EN ISO 10 211-1:1995 y UNE EN ISO 10 211-2:2002, no implementados en esta función.

condensaciones.comprobaciones.fRsimin(tempext, tempint=20.0, hrint=55.0)

Factor de temperatura de la superficie interior mínimo

Es aplicable a un puente térmico, cerramiento o partición interior.

Se aplica la formulación del CTE DB-HE G.2.1.2 pero se añaden los límites más precisos de la ISO 13788 en cuanto al rango de validez de la presión de saturación.

Parámetros:
  • tempext (float) – Temperatura exterior de la localidad en el mes de enero [ºC]
  • tempint (float) – Temperatura del ambiente interior (a falta de otros datos se puede tomar 20ºC) [ºC]
  • hrint (float) – Humedad relativa interior [%]
Devuelve:

factor de temperatura de la superficie interior mínimo

Return type:

float

condensaciones.comprobaciones.testcondensas(cerr, temp_ext, temp_int, HR_int)

Comprueba la condición de existencia de condensaciones superficiales

Válido para un cerramiento, puente térmico (integrado) o partición interior.

Parámetros:
  • cerr (Cerramiento) – Cerramiento para comprobar
  • temp_ext (float) – Temperatura exterior de la localidad en el mes de enero [ºC]
  • temp_int (float) – Temperatura del ambiente interior (a falta de otros datos se puede tomar 20ºC) [ºC]
  • HR_int (float) – Humedad relativa interior [%]
Devuelve:

True si existen condensaciones superficiales.

Return type:

float

condensaciones.comprobaciones.calculaintersticiales(cerr, ti, hri, climasext)

Devuelve lista de condensaciones intersticiales para cada interfase

Se calcula usando como clima exterior cada uno de los elementos en self.climaslist y condiciones interiores ti, hri.

Para cada clima exterior devuelve, una lista de tuplas formado por el índice de la interfase y la cantidad condensada para cada interfase con condensación intersticial.

[[(1, 2.5), (3, 3.0), ..., (i, gi)], ..., mesj]

condensaciones.comprobaciones.gperiodo(glist, i=0)

Cantidad de condensación total de un periodo i en [g/m²mes]

Parámetros:
  • glist (list) – Lista de condensaciones por interfase en tuplas de índice y cantidad, tal como devuelve la función calculaintersticiales
  • i (int) – Índice del periodo deseado
Devuelve:

Cantidad acumulada condensada durante el periodo

Return type:

float

condensaciones.comprobaciones.gmeses(glist)

Lista de condensaciones acumuladas en todas las interfases por periodos

Parámetros:
  • glist (list) – Lista de condensaciones por interfases y periodos
Devuelve:

Lista de condensaciones acumuladas

Return type:

list

condensaciones.comprobaciones.testcondensai(cerr, temp_ext, temp_int, HR_ext, HR_int)

Comprueba la condición de existencia de condensaciones intersticiales

Válido para un cerramiento, puente térmico (integrado) o partición interior.

Parámetros:
  • cerr (Cerramiento) – Cerramiento para comprobar
  • temp_ext (float) – Temperatura exterior de la localidad en el mes de enero [ºC]
  • temp_int (float) – Temperatura del ambiente interior (a falta de otros datos se puede tomar 20ºC) [ºC]
  • HR_ext (float) – Humedad relativa exterior [%]
  • HR_int (float) – Humedad relativa interior [%]
Devuelve:

True si existen condensaciones intersticiales.

Return type:

float

condensaciones.comprobaciones.testcondensaciones(cerr, temp_ext, temp_int, HR_ext, HR_int)

Existencia de condensaciones en un cerramiento

Parámetros:
  • cerr (Cerramiento) – Cerramiento para comprobar
  • temp_ext (float) – Temperatura exterior de la localidad en el mes de enero [ºC]
  • temp_int (float) – Temperatura del ambiente interior (a falta de otros datos se puede tomar 20ºC) [ºC]
  • HR_ext (float) – Humedad relativa exterior [%]
  • HR_int (float) – Humedad relativa interior [%]
Devuelve:

True si existen condensaciones superficiales o intersticiales.

Return type:

float