CenterForTheBuiltEnvironment / pythermalcomfort

Package to calculate several thermal comfort indices (e.g. PMV, PPD, SET, adaptive) and convert physical variables.
https://pythermalcomfort.readthedocs.io/en/latest/
MIT License
134 stars 49 forks source link

Calculation of UTCI showed nan values #92

Closed Qianjk818 closed 7 months ago

Qianjk818 commented 7 months ago

For example, utci(tdb=-8.828735, tr=-47.2, v=1.7261376, rh=56.089504) such an example is consistent with the documentation of the UTCI parameter value range, but actually can not be calculated to get the results. I'm not clear on the reason for this value, my tr is calculated using t_mrt() and tg is based on empirical formulas from previous research, as the pythermalcomfort package doesn't provide a method for calculating tg.

FedericoTartarini commented 7 months ago

Hi, I am not sure how you got these results but to be honest it is very strange that you would have a mean radiant temperature of -47. I do not think that such a value is possible.

The globe temperature is a measured value (input) that is why we do not provide an equation to calculate it.

Qianjk818 commented 7 months ago

The inputs other than Tg are fine in my opinion, but Tg lacks observations so I used an empirical formula provided in some studies to estimate Tg, which I think is what produces the unreasonable Tr, but if the value or matrix for Tg is not available (for example, I want to get a UTCI matrix), is there any current solution to this? I have reviewed a lot of literature, but there are not many estimates for Tg, and most of them I have tried still produce unreasonable values, especially in cold winter conditions. I think this is a limitation of this research field at the moment.

FedericoTartarini commented 7 months ago

yes the other inputs seems to be okay, but a mean radiant temperature of -47 it does not sound right. However, I am not sure where you conducted the experiment so I cannot judge if it is correct or not. Tg as far as I know is not a parameter that people try to estimate, it is a measured parameter. In pythermalcomfort you can set limit_inputs=False and then you get a result respectively of the inputs but I would not use this solution if I was you.

Qianjk818 commented 7 months ago

Thank you for your reply, but Tg is not a common meteorological measurement, so in many cases, we can't get such data to participate in studies, especially when I wish to use spatialized climate simulation results to calculate thermal comfort, this value becomes the biggest obstacle. As a result, I've had to seek out some of the Tg estimation methods in the literature, and I'll still try limit_inputs=False to get at least some results, although this needs further confirmation.