Exemplo n.º 1
0
    def __init__(self):
        self.solar = SolarHeating()

        # -----wind speed coeff-----
        # 80 percentile
        self.windDayCoeff = [
            -1.70737148e-04, 6.56523342e-03, -9.82652357e-02, 7.21325467e-01,
            -2.68827245e+00, 5.24223121e+00, -7.61618314e-01
        ]
        self.windNightCoeff = [
            -3.38584062e-04, 1.19917649e-02, -1.61474697e-01, 1.02041521e+00,
            -2.98028690e+00, 3.89258501e+00, -5.69079000e-01
        ]
Exemplo n.º 2
0
class DBImport:
    def __init__(self):
        self.solar = SolarHeating()

        # -----wind speed coeff-----
        # 80 percentile
        self.windDayCoeff = [
            -1.70737148e-04, 6.56523342e-03, -9.82652357e-02, 7.21325467e-01,
            -2.68827245e+00, 5.24223121e+00, -7.61618314e-01
        ]
        self.windNightCoeff = [
            -3.38584062e-04, 1.19917649e-02, -1.61474697e-01, 1.02041521e+00,
            -2.98028690e+00, 3.89258501e+00, -5.69079000e-01
        ]
        # 90 percentile
        #self.windDayCoeff = [-2.32399972e-04, 8.71330690e-03,
        #                     -1.27619339e-01, 9.20605091e-01,
        #                     -3.38363363e+00, 6.41438846e+00,
        #                     -8.87433045e-01]
        #self.windNightCoeff = [-2.94322567e-04, 1.03856170e-02,
        #                       -1.39074415e-01, 8.69264137e-01,
        #                       -2.49828840e+00, 3.48695164e+00,
        #                       -4.13931124e-01]

    def correctWindSpeed(self, dt, windSpeedForcast):
        "Function to correct forcasted wind speeds to WS2 wind speeds."
        coeff = \
            self.windDayCoeff if self.solar.isDayTime(dt) else self.windNightCoeff

        if windSpeedForcast < 11.1:
            corrected = numpy.polyval(coeff, windSpeedForcast)
            return 0.0 if corrected < 0.0 else corrected
        else:
            return windSpeedForcast
Exemplo n.º 3
0
class DBImport:

    def __init__(self):
        self.solar = SolarHeating()

        # -----wind speed coeff-----
        # 80 percentile
        self.windDayCoeff = [-1.70737148e-04,  6.56523342e-03,
                             -9.82652357e-02,  7.21325467e-01,
                             -2.68827245e+00,  5.24223121e+00,
                             -7.61618314e-01]
        self.windNightCoeff = [-3.38584062e-04,  1.19917649e-02,
                               -1.61474697e-01,  1.02041521e+00,
                               -2.98028690e+00,  3.89258501e+00,
                               -5.69079000e-01]
        # 90 percentile
        #self.windDayCoeff = [-2.32399972e-04, 8.71330690e-03,
        #                     -1.27619339e-01, 9.20605091e-01,
        #                     -3.38363363e+00, 6.41438846e+00,
        #                     -8.87433045e-01]
        #self.windNightCoeff = [-2.94322567e-04, 1.03856170e-02,
        #                       -1.39074415e-01, 8.69264137e-01,
        #                       -2.49828840e+00, 3.48695164e+00,
        #                       -4.13931124e-01]

    def correctWindSpeed(self, dt, windSpeedForcast):
        "Function to correct forcasted wind speeds to WS2 wind speeds."
        coeff = \
            self.windDayCoeff if self.solar.isDayTime(dt) else self.windNightCoeff
        
        if windSpeedForcast < 11.1:
            corrected = numpy.polyval(coeff, windSpeedForcast)
            return 0.0 if corrected < 0.0 else corrected
        else:
            return windSpeedForcast
Exemplo n.º 4
0
    def __init__(self):
        self.solar = SolarHeating()

        # -----wind speed coeff-----
        # 80 percentile
        self.windDayCoeff = [-1.70737148e-04,  6.56523342e-03,
                             -9.82652357e-02,  7.21325467e-01,
                             -2.68827245e+00,  5.24223121e+00,
                             -7.61618314e-01]
        self.windNightCoeff = [-3.38584062e-04,  1.19917649e-02,
                               -1.61474697e-01,  1.02041521e+00,
                               -2.98028690e+00,  3.89258501e+00,
                               -5.69079000e-01]