PsyChart error


I’m getting this error using the psychometric chart:

  1. Comfort polygon has fallen completely off of the psych chart2.

It happens when i change the clo value to something like 2 or more. The truth is that when i gave a value of 1.886 is ok and 1.887 is not (metabolic = sitting).

Trying to see what happens when i wear a high clo value (while sitting).

Also wanted to ask if how i can combine sitting, standing, sleeping with clo values of 0.6, 1, 3. See images.

Also, following this discusion, i wish the issues mentioned there regarding the passive strategies were solved … unfortunately y understood that they are not.





The error should mean exactly what it says. You have connected inputs that have made desirable conditions that are beyond the boundaries of the psych Chart. Connecting high clo or metabolic rates can make extremely cold temperatures desirable according to the PMV model and it’s perhaps easiest to see this in the online CBE tool:

You should also keep in mind that the PMV model has been shown to be a poor predictor of comfort at these higher close/met values since discomfort at these temperatures is typically driven by the temperature difference between extremities and the torso (rather than the “full body” discomfort that PMV estimates). Particularly when you have a clo value of 3, we’re talking about the insulation equivalent of an Arctic Parka so I would take those results with a grain of salt.

You should be able to get those 3 polygons connecting up the inputs as you aHave there (I would just suggest lowing the closing of 3). Also, I am not sure what you are referring with the passive strategies. Could you elaborate?


Hi Chris,

i understand.

About the passive strategies, i was following this discussion. I understand that there is still lack of information to understand how ClimateConsultant define some of the strategies (shading, thermal mass, radiation). Still i miss the implementation of such strategies.

The bioclimatic chart needs also to implement better some of them.

I was sitting with my TA for next semester and we are moving fully to LB. We are trying to have the same “functionalities” we had until now with other tools. That’s why i’m asking so much. We are trying to set, at the very beginning of the design process the strategies to implement in the project, JUST from the climatic conditions.

Thanks and sorry if i’m messing things here,



Glad to hear that you are making the full jump to Ladybug and I hope that I can help in the process!

I probably could have been clearer in that previous discussion that the climate consultant strategies that I did not implement on the psych chart were because I thought that the Climate Consultant methods really mis-represented them. This was definitely the case for the “shading” polygon, which never really made sense to me and, in the case of building shading, it is really too orientation-specific to be represented on the chart. I could imagine psych chart polygons describing the MRT delta of someone sitting in the sun vs shade but this is probably better represented using two comfort polygons with high/low MRTs (derived from the solar adjusted temperature component) rather than a specific strategy polygon. Also the natural ventilation polygon in climate consultant seemed to do more damage than it helped. I always thought the actual “comfort” polygon was a better representation of natural ventilation’s potential than any other possible strategy polygon.

For the three strategies that you cite there, we have a “Thermal Mass + Night Vent” polygon in the current psych chart (let me know if I’m mis-understanding your “thermal mass” reference). I felt that the climate consultant method was a fair here, although it had some important limitations that are built into the psych chart methods.

As for the last one (passive solar heating), I agree that this should have a spot on the chart. Now that I’ve had time to think about it, I can see a good representation of this as long as the user connects up the “globalHorizontalRadiation” to the annualHourlyData. I’ll try to implement this as soon as I get the chance (hopefully before the semester starts):

Are there any other important polygons that I am missing? Also, remember that I added some polygons that climate consultant did not have (like desiccant dehumidification and occupant use of fans). Any new ideas for polygons are always welcome.


Hi Chris,

Sorry for the delayed response.

It will be great to have the Passive Solar Heating strategy implemented in the chart.

I agree with your comments. Basically when you have to do with actual design. On the other side i see the potential of “guiding” designers BEFORE they have any sketch line for the building and they want to understand the potential of the different passive strategies. This is how i relate to the bioclimatic chart. Now i’m in the “dilemma” of which chart to use in class. The bioclimatic one is more intuitive but there is a lot of work to do and until now i neglected it since i released it (just a few small fixes). What worries me about this one is that it shows a very high percentage results ofr each strategy (maybe caused by weird weather data). I need to find the time to make this one more consistent and robust.

The psychometric is nice, less intuitive but more robust (at least for my initial purposes).

In case you get to implement the passive solar heating i’ll probably go for it.

As for the shading strategy i understand and agree. I relate to it as a “statement” of the importance of the strategy that of course needs to be well checked and refined during the design process.

The list of the polygons is fine (evaporative cooling, Thermal mass + night vent, Natural vent, and Passive solar heating).

I’ll keep following this discussion and on the github to see if there are some developments.

Thanks. This is an interesting discussion.


Good to know. I’ll try to implement a passive solar heat polygon while I’m on a flight tomorrow. Hopefully 5 hours is enough to finish it off!

Only 5???!! :slight_smile:

Great!! And many thanks,



It admittedly took both the flight there and back but I finally have a passive solar polygon that I am satisfied with and that I have pushed to the github.

Here you can see an image of it in action:

Much like the climate consultant polygon, not all hours that fall within the passive solar polygon are counted as comfortable and a given hour is only considered comfortable if it falls within the polygon AND the solar radiation for the last few hours of the EPW is enough to overcome the temperature delta between the outdoors and the building balance point. In order to give you control over the parameters that determine this, I have added two more inputs to the “Ladybug_Passive Strategy Parameters” component. The most notable one is the timeConstant_, which determines how many hours back in the EPW the component will look for solar radiation values to see if there is enough solar to passively heat the space.

Also, unlike the climate consultant polygon, I have added an extra component that allows you to assume that your passive solar facade is facing any direction that you desire. This new component should have a variety of uses and is called “Ladybug_Surface Hourly Solar.” Here you can see how I would recommend using it with the psychrometric chart to model a south-facing passively-heated space:

The file that produced the images is attached.

Let me know if you have any questions or comments about the methods of the component.

-Chris (438 KB)

Hi Chris,

This is great. Thanks!!

There is something that i don’t get fuly and is related to the contribution of the Internal Heat Gain". I didn’t find the assumptions for this one, but as it is in default values, it’s influence is huge, which i’m not sure is correct.

The second thing, also regarding these gains, is when i don’t want to take it into account as a strategy. Then you get a void between the comfort polygon and the passive solar heating, which i’m pretty sure can be added to it. At all, shouldn’t it be drawn up to the comfort polygon instead to the internal gain’s?

Like it very much.

Thanks again.


Hi Chris,

I get now where is the source of the Internal Heat Gain. It comes from the StrategyPar component. So the polygon extend from the lower limit of the comfort polygon until the bldgBalancePt.

As the hint of the bldgBalancePt says it assumes a rather good insulation and a large number of internal heat sources (which can be proper for maybe office buildings or schools) to get to the default 12.8C default value. I would say that, going to the other extreme (low loads and no insulation) we can assume something like 16-18C?

Independent of that i think that the PSH polygon should extend to the comfort one and not just to the IHG, as for instance the cooling strategies do.

Playing with the PMVComfortPar PPD thershold can also illustrate the differences between building types (for instance offices should be 10 and residential can be 20). For the purposes of explaining the meaning of the strategies polygon sizes.




Glad that you found the balance point input and I agree with your suggestion about the passive solar polygon. I just pushed a change to the psych chart that pulls the passive solar polygon to the edge of the comfort polygon whenever “Capture Internal Heat Gain” is not selected:…

I am aware that 12.8 C is a relatively low balance point and I can say that, in my personal experience, the lowest balance point that I ever found was 10 C for a well-insulated cafeteria, while the highest balance point that I have ever found was 18 C for a pretty poorly insulated residence. I got the default balance point of 12.8 C from climate consultant, which uses the same default value. I am open to changing it but I can say that balance points of 12.8 C are somewhat common in the colder part of the world where I live, where the building codes keep the insulation high. I’d agree that the default polygon is definitely more of a “maximum possible potential” from internal heat gain capture but I would say that all of the strategy polygons on the chart are following a similar “maximum possible” principle. If you feel that we should be showing realistic implementations of each strategy rather than ideal ones, we can discuss it here further.


Hi Chris and thanks again!!

This is it … almost.

I would suggest to extend the PSH to the comfort polygon regardless if there is or not the internal heat gain one. In this way you can get the possible contribution of the PSH in total. This follows the same principle of the cooling polygons, where all of them converge to the comfort. Will be more consistent and flexible in this way (on my opinion).

As for the balance point i agree that the 12.8 gives the maximal extent and this is the default. For an example i’m working on now i get almost 15C, but i’ll start to be more aware of checking this value for different examples.

For future versions (also the bioclimatic … hopefully) i think that relevant inputs should be provided for realistic conditions. I need to think better how to do that and/or if it will be efficient to check against additional climatic data (thinking right now about wind speed and natural ventilation strategy).

I have another question here related to the results of the analysis. If you see the picture below, on the right side you see the total number of points that felt on each polygon. The percentages are calculated ok. So far, so good.

But when i see the left side of the picture (the psychometric chart) there are some things that look strange to me. For instance, the EC received 2% and the thermal mass 1.7%, and the use of fans 2%. As i see the points the thermal mass contains all the points the EC or the Fans contains and more. But it’s contribution is lower. I assume you are checking ONLY that the point fell or not inside the polygon. I see that the number of points of the thermal mass is lower than the other two (153) but from the image it doesn’t make sense for me. Hope i’m explaining this clear enough …

Thanks again. This is a great addition to the component!!



Thanks for the feedback and for helping make this component complete. I don’t follow the use-case that you are trying to help by having passive solar and the internal heat gain polygons display on top of one another. I can understand why you would want to have only a PSH polygon (if you are trying to evaluate a space that has no internal heat gain). But, if the space has heat gain, you really need the PSH and Internal Heat to be added together for them to be useful. This is why climate consultant uses this method.

Furthermore, I am not inclined to make this change because it means removing the functionality to have the two added together. At least in the case that you want, you can currently run two separate iterations (one with only PSH and one with only Internal Heat Gain) to get the result that you desire. If I remove the ability to have these added together, it will become impossible to evaluate a passive heated solar space that also has internal heat gain.

Finally, it’s worth noting that virtually all buildings that are occupied by humans have internal heat gain if only from the heat of the people themselves. The same cannot be said for interior fans, evaporative cooling or thermal mass. For this reason, I feel that my current treatment of the internal heat polygon is justifiable in relation to the other polygons.

As for your question about the percentages of the cooling polygons, the thermal mass+night vent is using a similar method to the PSH polygon in that it will only count a given hour as comfortable if there were cool enough temperatures in the previous hours to “night flush.” For this reason, even though the thermal mass polygon looks large, there are often a lot of hours inside of it that are not comfortable because the preceding hours are not cool enough. On the other hand, all points within the “Evaporative Cooling” or “Occupant Us of Fans” polygon are counted. So this is why the percentage is smaller for the thermal mass polygon in relation to the others.


Thanks Chris,

On the contrary. Thank you for having the patience to deal with this.

I get and accept your explanations. make sense and are clear. I can use your arguments to explain myself.

Another (maybe last) couple of questions.

You have some rule of thumb (or source) for input values for the LB_solarHeatCapacity_? The default values of 50 W/m2 is for a small passive solar heated space (full glazed facade).But i’m changing the default to relatively low values and it is not affecting the results.

I have a feeling that the temperature checking you are doing for the Thermal Mass is a bit tight. Is very hard to improve. Changing the timeConstant_ in the StrategyPar affects a lot the PSH but very little the ThM. The reason i’m asking is because for some locations i know that the thermal mass has a big influence. Though, the chart shows a small one as a total value but also looking at the 3DChart plot.

Thanks again!!



I think i’ll drop my question about the ThermalMass. It is a bit ambiguous, specially looking at various cities results. They can make sense. Just one location makes me wonder (Jerusalem).



I went and checked the thermal mass polygon in a couple of climates where I know it has a big effect and I got results that made sense to me. Specifically, in the San Fernando Valley of Los Angeles, which has 12% of the year made comfortable, and Shiraz, Iran, which also has 12% comfortable (assuming default parameters).

Jerusalem also makes sense to me. There is only a maximum possible 9% of the year that is inside the polygon (you’ll see this if you set the timeConstant to a very high number). The default strategyPar makes 6% of these hours comfortable and 3% without cool enough temperatures in the previous hours. This seems reasonable to me.

I could be convinced to change the default time constant to 12 hours (instead of 8) as I know that 12 is the default of climate consultant but that seemed really idealized in my opinion. You’ll need really high exposed mass and insulation without much internal heat gain to make conditions stable for more than 8 hours in my opinion.

As for the solarHeatCapacity, I get changes when I drop it down to 10 W/m2 or boost it up to 100 W/m2. It’s definitely a parameter that operates on an “order of magnitude” scale and little tweaks to it won’t change it too much. You can think of this number as representative of a lot of other physical properties: most notably the depth of the space being passively heated and the thermal mass of that space’s materials that participate in heat exchange over the time constant. Climate consultant uses a default assumption of 30 W/m2 but, from my calculations, this is likely assuming a space that has a facade to floor area ratio that is greater than 1. If we say that we need to raise the temperature of 10 cm of an exposed concrete floor for passive heating purposes, and we have a facade-to-floor area ratio of 1:

Required solar flux = ((1 facade-to-floor ratio) x (0.1 m3 of concrete) x (2400 kg/m3 concrete density) x (880 J/kg-K concrete specific heat capacity)) / 3600 seconds/hour

This lands you with a required solar flux of 58 W, which is almost twice the 30 W climate consultant default. While me might say that not all 10 cm of concrete participates over the course of a default 8-hour time constant (most of the action is probably within the first 5 cm), we also have to account for things like transmittance of solar though the window, which, for triple pane, is probably only half of the incident solar. So 50 W seemed to be a more reasonable rule of thumb from my perspective, essentially assuming a facade-to-floor ratio of roughly 1 with 5 cm of concrete participating in an 8 hour heat exchange and a little more than half of solar heat getting through a fully glazed window.

Let me know if that makes sense or if you have any suggestions,


Also, I have a small correction to my post. In the formula, I should be dividing by the facade-to-floor area ratio (not multiplying. So a larger facade-to-floor area means a smaller solar requirement.

Hi Chris,

Thanks for your detailed answer. Clear to me that all these checking are just a first approach to understand the potential of the location.

Your explanation for the time constant makes sense and i get it. If you have time check the attached papers we published a while ago in relation to the contribution of thermal mass in the reduction of temperature in residential buildings. See the nice contribution of the heavy TM or the lower one for light TM.

As for the solarHeatCapacity, your description (of the 50W) is derived on a 1 Facade/Floor ratio and fully glazed. The only way to reduce it is to increase the ratio (bigger facade area). Which is not recommended (energy losses), but this is a different issue. So, roughly, we can say that 50 is the lower value. If i have less glazing area this number will be higher (right?)

I want to define a value list of “architectural situations”, so it is easy to explain and understand. One situation can be:

“Ratio facade/floor 1 & Fully glazed” = 50

“Ratio facade/floor 1 & Half glazed” = 75

“Ratio facade/floor 1.5 & Fully glazed” = 30

“Ratio facade/floor 1.5 & Half glazed” = 50

“Ratio facade/floor 0.75 & Fully glazed” = 70

“Ratio facade/floor 0.75 & Half glazed” = 90

Makes sense for you something like this?

I also defined a value list for the timeConstant like this:

Light Building (Mobile home) = 1
Medium-light building (Cement tiles on floor) = 4
Semi Heavy Building (Concrete floor + Tiles) = 8
Heavy Building (Concrete floors/ceilings + Heavy external and internal walls) = 12

As for the first 5-10 cm effective TM in general my assumption is that you take half of the mass to your space and half to the space above/below you. Will be interesting to do a parametric study on just the thermal mass, uninsulated and insulated to see what the depth limits effectivity will be. Interested in doing such a study together? Can be a nice work even for publishing.

Thanks a lot … again,


THERMAL MASS_article.pdf (127 KB)
published.pdf (747 KB)

That is a nice paper on thermal mass and the results make sense to me. The effect of thermal mass on the peak temperature is usually huge and is overlooked by simple psych chart studies like this one that focus on the % time that you can use a certain strategy fall inside a comfort polygon (rather than how much more comfortable the worst-case scenario is).

Your rules of thumb for solarHeatCapacity look good and the only thing that I would clarify when you use them is that they assume clear double pane glazing without a low-E coating, which is normal for a project that is trying to maximise passive solar heating on a southern exposure.

As for the time constants, they also look good, although I would add that the time constant is a function of BOTH thermal mass and thermal resistance (insulation). In the most extreme case of a high mass passivehaus, you would have a time constant around 36-48 hours. Most code compliant buildings in the US with exposed concrete floors would have a time constants around the default 8 hrs. 12 hrs seems to be a good value for a building that is a bit better than code with exposed massive floors and walls.


Hi @chris,
I think i’ve found a small cosmetic bug.
Setting the humidRatioUpBound_input in the PMVComfortPar component, draws two comfort polygons: One without the limitation and one with it. The contribution of the polygon on the comfort calculation seems to be fine though.

The upper part belongs to the strategyPolygons output of the PsychChart component.