Question-and-Answer Resource for the Building Energy Modeling Community
Get started with the Help page
Ask Your Question

Revision history [back]

Hello,

I understand that this topic has been discussed for years, but in case someone is still using the "TimeSeries Objective Function" to calibrate outputs that might occasionally or continuously contain negative values (such as thermal balance through enclosure like Surface Inside Face Conduction Heat Transfer Energy), it is important to modify the following portion of code to ensure the correct computation of NMBE and CVRMSE.

This modification calculates the absolute differential value:

Original code:

ySum += mtr.to_f

Modified code:

ySum += mtr.to_f.abs #use absolute number to avoid negative results

By using the absolute number, you can avoid negative results and ensure accurate calculations.

By the way, thank you very much for publishing such a measure!