Skip to main content
EU Science Hub

This tool makes it possible to estimate the average monthly and yearly energy production of a PV system connected to the electricity grid, without battery storage. The calculation takes into account the solar radiation, temperature, wind speed and type of PV module. The user can choose how the modules are mounted, whether integrated in a building with predefined angles of inclination or orientation, or on a free standing position where these angles can either be defined by the user, or the user can request PVGIS to calculate the optimum slope and orientation that maximizes the yearly energy production. The calculations are made with the full temporal coverage of the solar radiation database selected

Access

PVGIS interface

API: PVcalc

Output

Monthly average values of PV system energy output and in-plane irradiation per month and for the full year, calculated from a multi-year time series of solar radiation and other climatic parameters. Some additional information about the calculation is also supplied in the output.

  • PVGIS interface: you will get only the fixed mounting output if you use the "Fixed grid-connected" tool, and only the tracking system output if you use the "Tracking grid-connected" tool. See below for the details about these outputs.
  • Non-interactive interface: you can choose to make calculations for fixed mounting systems, tracking systems, or both.

Formats available:

 

CSV output

The header of the output contains the following information, each on its own line:

  • Latitude (in decimal degrees)
  • Longitude (in decimal degrees)
  • Name of the solar radiation database used
  • Nominal power of the PV system (in kWp)
  • System losses in the PV system (%)
  • If the fixed mounting calculation was selected, inclination (slope, in degrees) of modules, equal to the input value unless the optimum calculation has been used
  • If the fixed mounting calculation was selected, orientation (azimuth, in degrees) of modules, equal to the input value unless the optimum calculation has been used
  • If the vertical axis calculation was selected, inclination (slope, in degrees) of vertical axis calculation, equal to the input value unless the optimum calculation has been used
  • If the inclined axis calculation was selected, inclination (slope, in degrees) of inclined axis calculation, equal to the input value unless the optimum calculation has been used

This section is followed by one empty line and two lines of headers for the daily/monthly columns.

After these headers 12 lines follow, one for each month, with the following data in separate columns:

  • month: Month number

(mounting = fixed): If the fixed mounting calculation is chosen the next 5 columns are:

  • E_d [kWh/d] - Average daily PV production for fixed mounting system
  • E_m [kWh/mo] - Average monthly PV production for fixed mounting system
  • H(i)_d [kWh/m2/d] - Daily global irradiation on the plane-of-array
  • H(i)_m [kWh/m2/mo] - Monthly global irradiation on the plane-of-array
  • SD_m [kWh] - Standard deviation of the year-to-year variation in the monthly PV output for fixed mounting

(mounting = vertical_axis): I If the vertical axis calculation is chosen the next 5 columns are:

  • E_d [kWh/d] - Average daily PV production for vertical axis system (kWh
  • E_m [kWh/mo] - Average monthly PV production for vertical axis system (kWh)
  • H(i)_d [kWh/m2/d] - Average daily in-plane irradiation for vertical axis system (kWh/m2)
  • H(i)_m [kWh/m2/mo] - Average monthly in-plane irradiation for vertical axis system (kWh/m2)
  • SD_m [kWh] - Standard deviation of the year-to-year variation in the monthly PV output for vertical axis system (kWh)

      (mounting = vertical_axis): If the inclined axis calculation is chosen the next 5 columns are:

      • E_d [kWh/d] - Average daily PV production for inclined axis system (kWh)
      • E_m [kWh/mo] - Average monthly PV production for inclined axis system (kWh)
      • H(i)_d [kWh/m2/d] - Average daily in-plane irradiation for inclined axis system (kWh/m2)
      • H(i)_m [kWh/m2/mo] - Average monthly in-plane irradiation for inclined axis system (kWh/m2)
      • SD_m [kWh] - Standard deviation of the year-to-year variation in the monthly PV output for inclined axis system (kWh)

      (mounting = two_axis): If the 2-axis calculation is chosen the next columns are:

      • E_d [kWh/d] - Average daily PV production for 2-axis system (kWh)
      • E_m [kWh/mo] - Average monthly PV production for 2-axis system (kWh)
      • H(i)_d [kWh/m2/d] - Average daily in-plane irradiation for 2-axis system (kWh/m2)
      • H(i)_m [kWh/m2/mo] - Average monthly in-plane irradiation for 2-axis system (kWh/m2)
      • SD_m [kWh] - Standard deviation of the year-to-year variation in the monthly PV output for 2-axis system (kWh)

      The 12 monthly values are followed by the same quantities averaged over the whole year.

      After the yearly values, all the data regarding the PV system losses are listed. These consist of one line of header followed by a line with four columns:

      • l_aoi [%] - Losses due to shallow-angle reflectivity (Angle-of-incidence, AOI)
      • l_spec [%] - Changes due to spectral variations (not strictly a loss, can also be a gain)
      • l_tg [%] - Losses due to low irradiance and high module temperature
      • l_total [%] - Combined losses, including the system losses given as input to the calculation by the user

      After the PV system losses, the PV electricity LCOE is listed if pvprice=1:

      • LCOE_pv [system_cost_currency/kwh] - Levelized cost of elecricity in the currency used by the user to define the PV system cost.

      The final bit of the output includes lines of explanation of the different fields, as given in the table header.

      If the calculations for vertical, inclined or 2-axis tracking system are required, these will also be listed here with their losses, each on its own line.

       

       

      JSON output

      {    "inputs": {        "location": {
                 "latitude": 45.809,
                 "longitude": 8.632,
                 "elevation": 223        },
              "meteo_data": {
                 "radiation_db": "PVGIS-SARAH",
                 "meteo_db": "ERA-Interim",
                 "year_min": 2005,
                 "year_max": 2016,
                 "use_horizon": true,
                 "horizon_db": "DEM-calcualted",
              },
              "mounting_system": {
                  "fixed": {
                      "slope": {
                          "value": 30,
                          "optimal": False
                      },
                      "azimuth": {
                          "value": 0, 
                          "optimal": False                 },                "type": "free-standing",            },
                  {...}
              },
              "pv_module": {
                 "technology": "c-Si",
                 "peak_power": 1,
                 "system_loss": 14,
              },
              "economic_data": {
                 "system_cost": 10000,
                 "interest": 1,
                 "lifetime": 25,
              },
          },
      
          "outputs": {
              "monthly": {
                  "fixed": {
                      { 
                          "month": 1,
                          "E_d": 2.59,
                          "E_m": 80.15,
                          "H(i)_d": 3.06,
                          "H(i)_m: 94.98,
                          "SD_m: 23.19,
                      }, 
                      {...}
                  },
                  {...}
              }
              "totals": {
                  "fixed": {
                      { 
                          "E_d": 3.63,
                          "E_m": 110.33,
                          "E_y": 1323.91,
                          "H(i)_d": 4.67,
                          "H(i)_m: 141.99,
                          "H(i)_y: 1703.83,
                          "SD_m: 12.91,
                          "SD_y: 154.95,
                          "l_aoi: -2.24,
                          "l_spec: 1.16,
                          "l_tg: -8.26,
                          "l_total: -22.3,
                          "LCOE_pv: 0.010                }, 
                      {...}
                  },
                  {...}
              }
          },
      
          "meta": {        "inputs": { 
                  "location": {
                      "description": "Selected location"
                      "variables": {
                          "latitude": {
                              "description": "Latitude",
                              "units": "decimal degrees"
                          }, 
                          {...}
                      }
                  },
                  {...}
              },
              "outputs": { 
                  "monthly": {
                      "type": "time series" 
                      "timestamp": "monthly averages"
                      "variables": { 
                          "E_d": { 
                              "description": "Daily energy production from the given system", 
                              "units": "kWh/d"                    }, 
                          {...},
                  },
                  {...}
              }
          }
      }
      • Both the "monthly" and "totals" outputs have as many fields as different mounting configurations are specified by the user. The name of these fields are: "fixed", "inclined_axis", "vertical_axis", "two_axis".
      • The specific details of each configuration are summarized in the ['inputs']['mounting_system'] field. In case of slope and/or azimuth optimizations, the optimum slope/azimuth will be shown in this field.