Source code for honeybee_radiance_postprocess.electriclight

"""Functions for post-processing daylight outputs into electric lighting schedules."""
from typing import List
import numpy as np

[docs]def array_to_dimming_fraction( array: np.ndarray, su_pattern: List[int], setpt: float, m_pow: float, m_lgt: float, off_m: float) -> list: """Compute hourly dimming fractions for a given result file.""" fract_dim = (setpt - array) / (setpt - m_lgt) par_dim = fract_dim + ((1 - fract_dim) * m_pow) su_values = np.where(array > setpt, 0 if off_m else m_pow, (np.where(array <= m_lgt, 1, par_dim))).sum(axis=0) su_values = su_values / array.shape[0] dim_fract = np.ones(8760) dim_fract[su_pattern] = su_values return dim_fract