def _calculate_solar_time_by_doy(self, hour, doy):
raise NotImplementedError()<EOL>return (<NUM_LIT> * math.sin((<NUM_LIT:4> * math.pi / <NUM_LIT>) * (doy - <NUM_LIT>)) -<EOL><NUM_LIT> * math.sin((<NUM_LIT:2> * math.pi / <NUM_LIT>) * (doy - <NUM_LIT:8>)) +<EOL><NUM_LIT:12> * (-(<NUM_LIT:15> * self.time_zone) - self.longitude) / math.pi)<EOL>
This is how radiance calculates solar time.

        This is a place holder and \
        need to be validated against calculateSolarTime.