Creo que el algoritmo de cálculo de la presión relativa de Weewx es complejo
Tiene en cuenta temperatura, humedad relativa y altitud
Por lo que tengo observado, cuando hay fuerte oscilación de la temperatura, combinada con baja humedad y a una elevada altitud, como es el caso, pues la presión relativa calculada por Weewx se dispara en sentido contrario a la temperatura
Creo que se puede apreciar en la imagen adjunta
A ver si van por ahí los tiros
Sí, van por ahí los tiros. No toma en cuenta tantos parámetros, sólo la altitud de la estación y la temperatura actual. No es tan complejo el algoritmo como por ejemplo el de las Davis.
Esa fórmula en concreto que calcula la presión relativa a partir de la absoluta está en su archivo de fórmulas (
/usr/share/weewx/formulas.py):
def CtoK(x):
return x + 273.15
def _etterm(elev_meter, t_C):
"""Calculate elevation/temperature term for sea level calculation."""
t_K = CtoK(t_C)
return math.exp(-elev_meter / (t_K * 29.263))
def sealevel_pressure_Metric(sp_mbar, elev_meter, t_C):
"""Convert station pressure to sea level pressure. This implementation was copied from wview.
sp_mbar - station pressure in millibars
elev_meter - station elevation in meters
t_C - temperature in degrees Celsius
bp - sea level pressure (barometer) in millibars
"""
if sp_mbar is None or elev_meter is None or t_C is None:
return None
pt = _etterm(elev_meter, t_C)
bp_mbar = sp_mbar / pt if pt != 0 else 0
return bp_mbar
Utiliza tres funciones para su funcionamiento que se llaman unas a otras pero la que da la salida es la última
sealevel_pressure_MetricLos parámetros que se le meten como dice en sus comentarios internos son la presión absoluta en milibares (o hectopascales), la altitud de la estación en metros y la temperatura en grados centígrados.
Veamos ejemplos con esa función:
Presión absoluta: 910 hPa
Altitud: 933 m
Temperatura: 0ºC
print(sealevel_pressure_Metric(910, 933, 0)) -->
1022.66 hPaAhora lo hacemos igual pero con una temperatura de 20ºC
print(sealevel_pressure_Metric(910, 933, 20)) -->
1014.55 hPa
Vemos que con misma presión absoluta tenemos unos 8 hPa de diferencia haciendo 0ºC que 20ºC, eso es extrapolable a la amplitud térmica que se pueden tener en estos días de potentes anticlones por el frío en esta época.
Para las Davis no usa esta fórmula porque las Davis reportan ya la presión relativa, lo que me hace suponer como pone en weewx en las características de las Fine Offset que el driver toma el valor de la absoluta de ellas:
barometer S S
pressure pressure H H
altimeter S S
https://weewx.com/docs/hardware.htm#fousb_dataEsto es para las USB. Como se ve solo
pressure es tomado de la estación, las otras dos van por software calculadas por weewx, así que hace esa fórmula en la que se ven esos 7-8 hPa de diferencia con las otras estaciones.
El algoritmo para las Davis es más complejo teniendo en cuenta la diferencia de temperatura actual con la de hace doce horas y con la HR. Ahora mismo mi Davis está dando
1023.2 hPa y weewx calcula una absoluta de
1008.8 hPaSi pasamos el algoritmo anterior a la absoluta en mi caso tenemos:
Presión absoluta: 1008.8 hPa
Altitud: 120 m
Temperatura: 17.9ºC
print(sealevel_pressure_Metric(1008.8, 120, 17.9)) -->
1023.11 hPaComo vemos casi lo clava con la relativa de la Davis.
Prueba con weewx detenido a ejecutar
wee_device --info y pon aquí el resultado.