InternalGainsOccupancy ====================== Overview -------- Class responsible for handling internal gains due to occupancy. The InternalOccupancy class calculates the internal gains generated by occupants in a given building or setting based on the number of people, gains per person, and occupancy data over time. The result is returned as a timeseries data structure that reflects the internal gains. Key facts --------- - Method key: ``InternalGainsOccupancy`` Requirements ------------ Required keys (specify in objects) ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - ``inhabitants`` - ``gains_internal[W]_per_person[W]`` Optional keys (specify in objects) ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - None Required data (specify in data) ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - ``occupancy`` Optional data (specify in data) ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - None Outputs ------- Summary metrics ~~~~~~~~~~~~~~~ - None Timeseries columns ~~~~~~~~~~~~~~~~~~ - None Public methods -------------- - generate .. code-block:: python def generate(self, obj, data, ts_type=None): num_people = obj.get(O.INHABITANTS) gain_per_person = obj[O.GAINS_INTERNAL_PER_PERSON] occ = data[Types.OCCUPANCY] internal_gains = occ * gain_per_person * num_people return pd.DataFrame({O.GAINS_INTERNAL: internal_gains}, index=occ.index)