Spectrally Resolved

Under development

This feature is under development.

PVGIS can estimate the photovoltaic power over a time series or an arbitrarily aggregated energy production of a PV system based on spectrally resolved irradiance, ambient temperature and wind speed.

pvgis power spectral --help
 Usage: pvgis power spectral [OPTIONS] {longitude} {latitude} {elevation}                                               
                             [timestamps]                                                                               

 󱩅 Estimate the photovoltaic power over a time series or an arbitrarily aggregated energy production of a PV system     
 based on spectrally resolved irradiance incident on a solar surface, ambient temperature or wind speed Yet not         
 implemented!                                                                                                           

╭─ Arguments ──────────────────────────────────────────────────────────────────────────────────────────────────────────╮
│ *    longitude      <float range>  Longitude in decimal degrees ranging in [-180, 360]. If ranging in [0, 360],      │
│                                    consider the `--convert-longitude-360` option.                                    │
│                                    [required]                                                                        │
│ *    latitude       <float range>  Latitude in decimal degrees ranging in [-90, 90] [required]                       │
│ *    elevation      <float range>  Topographical elevation [required]                                                │
╰──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯
╭─ Timestamps ─────────────────────────────────────────────────────────────────────────────────────────────────────────╮
│   timestamps      <parse_timestamp_series>  Quoted date-time strings of data to extract from series, example:        │
│                                             '2112-12-21, 2112-12-21 12:21:21, 2112-12-21 21:12:12''                  │
╰──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯
╭─ Options ────────────────────────────────────────────────────────────────────────────────────────────────────────────╮
│ --number-of-junctions                   <int>   [default: 1]                                                         │
│ --spectral-response-data                <path>                                                                       │
│ --standard-conditions-response          <path>                                                                       │
│ --minimum-spectral-mismatch             <str>   [default: 1e+20]                                                     │
│ --log                           -l      <int>   Enable logging [default: 0]                                          │
│ --help                                          Show this message and exit.                                          │
╰──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯
╭─ Geometry of solar surface ──────────────────────────────────────────────────────────────────────────────────────────╮
│ --surface-orientation,--panel-orientation        <float range> [0<=x<=360]  Solar surface orientation angle. Due     │
│                                                                             north is 0 degrees.                      │
│                                                                             [default: 180]                           │
│ --surface-tilt,--panel-tilt                      <float range> [0<=x<=180]  Solar surface tilt angle from the        │
│                                                                             horizontal plane                         │
│                                                                             [default: 45]                            │
╰──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯
╭─ Timestamps ─────────────────────────────────────────────────────────────────────────────────────────────────────────╮
│ --start-time,--st                                   <parse_timestamp>  Start timestamp of the period. Overrides the  │
│                                                                        `timestamps` parameter!                       │
│ --periods                                           <int>              Number of timestamps to generate              │
│ --frequency                                         <str>              A common date/time frequency unit optionally  │
│                                                                        with a multiples number, such as H(hourly),   │
│                                                                        min(utely), S(econdly), D(aily), W(eekly),    │
│                                                                        M(onth end), Y(early) or 30min. See Pandas    │
│                                                                        time series offset aliases.                   │
│ --end-time,--et                                     <parse_timestamp>  End timestamp of the period. Overrides the    │
│                                                                        `timestamps` parameter!                       │
│ --timezone,--tz,--zone                              <parse_timezone>   Timezone (e.g., 'Europe/Athens'). Use the     │
│                                                                        system's time zone via the `--local` option.  │
│ --random-timestamps       --no-random-timestamps                       Generate a random date, time and timezone to  │
│                                                                        demonstrate calculation                       │
│                                                                        [default: no-random-timestamps]               │
╰──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯
╭─ External solar irradiance time series ──────────────────────────────────────────────────────────────────────────────╮
│ --spectrally-resolved-global-horizontal-irradianc…        <path>  Global horizontal irradiance (Surface Incoming     │
│                                                                   Shortwave Irradiance (SIS), `ssrd`                 │
│ --spectrally-resolved-direct-horizontal-irradianc…        <path>  Direct (or beam) horizontal irradiance (Surface    │
│                                                                   Incoming Direct radiation (SID), `fdir`            │
╰──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯
╭─ External meteorological time series ────────────────────────────────────────────────────────────────────────────────╮
│ --temperature-series        <parse_temperature_series>  Ambient temperature time series                              │
│ --wind-speed-series         <parse_wind_speed_series>   Ambient wind_speed time series                               │
╰──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯
╭─ External time series selection ─────────────────────────────────────────────────────────────────────────────────────╮
│ --neighbor-lookup                           <none|pad|backfill|nearest>  Enable nearest neighbor (inexact) lookups.  │
│                                                                          Read Xarray manual on                       │
│                                                                          nearest-neighbor-lookups                    │
│                                                                          [default: nearest]                          │
│ --tolerance                                 <float>                      Maximum distance between original & new     │
│                                                                          labels for inexact matches. Read Xarray     │
│                                                                          manual on nearest-neighbor-lookups          │
│                                                                          [default: 0.1]                              │
│ --mask-and-scale     --no-mask-and-scale                                 Mask and scale the series                   │
│                                                                          [default: no-mask-and-scale]                │
│ --in-memory          --no-in-memory                                      Use in-memory processing                    │
│                                                                          [default: no-in-memory]                     │
╰──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯
╭─ Atmospheric properties ─────────────────────────────────────────────────────────────────────────────────────────────╮
│ --linke-turbidity-factor-s…                                  <parse_linke_turbidity_fac  Ratio of total to Rayleigh  │
│                                                              tor_series>                 optical depth measuring     │
│                                                                                          atmospheric turbidity       │
│ --apply-atmospheric-refrac…    --no-apply-atmospheric-re…                                Correct solar azimuth and   │
│                                                                                          altitude angles for         │
│                                                                                          atmospheric refraction      │
│                                                                                          [default:                   │
│                                                                                          apply-atmospheric-refracti… │
│ --refracted-solar-zenith                                     <float>                     Refracted solar zenith      │
│                                                                                          angle (in radians) for sun  │
│                                                                                          -rise and -set events       │
│                                                                                          [default:                   │
│                                                                                          1.5853349194640094]         │
╰──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯
╭─ Advanced ───────────────────────────────────────────────────────────────────────────────────────────────────────────╮
│ --albedo                                                        <float range> [x>=0]  Mean ground albedo             │
│                                                                                       [default: 0.2]                 │
│ --apply-reflectivity-factor    --no-apply-reflectivity-fact…                          Apply angular loss function    │
│                                                                                       [default:                      │
│                                                                                       apply-reflectivity-factor]     │
╰──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯
╭─ Solar position ─────────────────────────────────────────────────────────────────────────────────────────────────────╮
│ --solar-position-model,--position-m…        <all|noaa|hofierka|jenco|pvlib|pys  Model to calculate solar position    │
│                                             olar|skyfield|suncalc>              [default: NOAA]                      │
│ --solar-incidence-model,--incidence…        <all|hofierka|jenco|iqbal|pvgis|pv  Method to calculate the solar        │
│                                             lib>                                incidence angle                      │
│                                                                                 [default: Iqbal]                     │
╰──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯
╭─ Solar time ─────────────────────────────────────────────────────────────────────────────────────────────────────────╮
│ --solar-time-model        <all|milne1921|noaa|pvgis|pvlib|skyfield>  Model to calculate solar time                   │
│                                                                      [default: Milne1921]                            │
╰──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯
╭─ Earth orbit ────────────────────────────────────────────────────────────────────────────────────────────────────────╮
│ --solar-constant                        <float range> [x>=1360]  Top-of-Atmosphere mean solar electromagnetic        │
│                                                                  radiation (W/m-2) 1 au (astronomical unit) away     │
│                                                                  from the Sun.                                       │
│                                                                  [default: 1360.8]                                   │
│ --perigee-offset                        <float>                  Perigee offset [default: 0.048869]                  │
│ --eccentricity-correction-factor        <float>                  Eccentricity correction factor [default: 0.03344]   │
╰──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯
╭─ > Input : < Output ─────────────────────────────────────────────────────────────────────────────────────────────────╮
│ --time-output-units   -tou      <str>   Time units for output and internal calculations (seconds, minutes or hours)  │
│                                         - ⚠ Keep fingers away!                                                       │
│                                         [default: minutes]                                                           │
│ --angle-input-units   -aiu      <str>   Angular units for internal solar geometry calculations. ⚠ Keep fingers away! │
│                                         [default: radians]                                                           │
│ --angle-output-units  -aou      <str>   Angular units for solar geometry calculations (degrees or radians). ⚠ Under  │
│                                         development                                                                  │
│                                         [default: radians]                                                           │
│ --rounding-places     -r        <int>   Number of digits to round results to [default: 3]                            │
│ --csv                           <path>  CSV output filename                                                          │
│ --verbose             -v        <int>   Show details while executing commands [default: 0]                           │
│ --index,--idx         -i                Index rows in output table (meaningful with at least 1x -v)                  │
│ --quiet                                 Do not print out the output                                                  │
╰──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯
╭─ Photovoltaic efficiency ────────────────────────────────────────────────────────────────────────────────────────────╮
│ --system-efficiency-factor  -se      <float>              System efficiency factor [default: 0.86]                   │
│ --power-model               -pm      <none|iv|huld 2011>  Algorithms for calculation of the PV power output of a     │
│                                                           photovoltaic system as a function of total irradiance and  │
│                                                           temperature                                                │
│                                                           [default: Huld 2011]                                       │
│ --temperature-model         -tm      <none|faiman>        Algorithms for calculation of the effect of temperature on │
│                                                           the power output of a photovoltaic system as a function of │
│                                                           temperature and optionally wind speed                      │
│                                                           [default: Faiman]                                          │
│ --efficiency-factor         -e       <float>              PV efficiency factor. Overrides internal PV module         │
│                                                           efficiency algorithms!                                     │
╰──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯
╭─ Statistics ─────────────────────────────────────────────────────────────────────────────────────────────────────────╮
│ --statistics    --no-statistics           Calculate and display summary statistics [default: no-statistics]          │
│ --groupby                          <str>  Group statistics, ex. M or 3h. A number and date/time unit : (Y)ear,       │
│                                           (S)eason, (M)onth, (D)ay, (W)eek, (h)our. See Xarray's group-by            │
│                                           operations.                                                                │
╰──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯
╭─ Plotting ───────────────────────────────────────────────────────────────────────────────────────────────────────────╮
│ --uniplot                    --no-uniplot             Plot the PV power output time series in the terminal           │
│                                                       [default: no-uniplot]                                          │
│ --terminal-width-fraction                    <float>  Fraction of number of columns of the current terminal, ex. 0.9 │
│                                                       [default: 0.9]                                                 │
╰──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯
╭─ Metadata ───────────────────────────────────────────────────────────────────────────────────────────────────────────╮
│ --fingerprint,--fp                       Fingerprint the output time series                                          │
│ --metadata            --no-metadata      Print command metadata [default: no-metadata]                               │
╰──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯

And get the performance analysis using:

pvgis performance spectral --help
 Usage: pvgis performance spectral [OPTIONS] {longitude} {latitude} {elevation}                                         
                                   [timestamps]                                                                         

 󱩅 Estimate the photovoltaic power over a time series or an arbitrarily aggregated energy production of a PV system     
 based on spectrally resolved irradiance incident on a solar surface, ambient temperature or wind speed Yet not         
 implemented!                                                                                                           

╭─ Arguments ──────────────────────────────────────────────────────────────────────────────────────────────────────────╮
│ *    longitude      <float range>  Longitude in decimal degrees ranging in [-180, 360]. If ranging in [0, 360],      │
│                                    consider the `--convert-longitude-360` option.                                    │
│                                    [required]                                                                        │
│ *    latitude       <float range>  Latitude in decimal degrees ranging in [-90, 90] [required]                       │
│ *    elevation      <float range>  Topographical elevation [required]                                                │
╰──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯
╭─ Timestamps ─────────────────────────────────────────────────────────────────────────────────────────────────────────╮
│   timestamps      <parse_timestamp_series>  Quoted date-time strings of data to extract from series, example:        │
│                                             '2112-12-21, 2112-12-21 12:21:21, 2112-12-21 21:12:12''                  │
╰──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯
╭─ Options ────────────────────────────────────────────────────────────────────────────────────────────────────────────╮
│ --number-of-junctions                   <int>   [default: 1]                                                         │
│ --spectral-response-data                <path>                                                                       │
│ --standard-conditions-response          <path>                                                                       │
│ --minimum-spectral-mismatch             <str>   [default: 1e+20]                                                     │
│ --log                           -l      <int>   Enable logging [default: 0]                                          │
│ --help                                          Show this message and exit.                                          │
╰──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯
╭─ Geometry of solar surface ──────────────────────────────────────────────────────────────────────────────────────────╮
│ --surface-orientation,--panel-orientation        <float range> [0<=x<=360]  Solar surface orientation angle. Due     │
│                                                                             north is 0 degrees.                      │
│                                                                             [default: 180]                           │
│ --surface-tilt,--panel-tilt                      <float range> [0<=x<=180]  Solar surface tilt angle from the        │
│                                                                             horizontal plane                         │
│                                                                             [default: 45]                            │
╰──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯
╭─ Timestamps ─────────────────────────────────────────────────────────────────────────────────────────────────────────╮
│ --start-time,--st                                   <parse_timestamp>  Start timestamp of the period. Overrides the  │
│                                                                        `timestamps` parameter!                       │
│ --periods                                           <int>              Number of timestamps to generate              │
│ --frequency                                         <str>              A common date/time frequency unit optionally  │
│                                                                        with a multiples number, such as H(hourly),   │
│                                                                        min(utely), S(econdly), D(aily), W(eekly),    │
│                                                                        M(onth end), Y(early) or 30min. See Pandas    │
│                                                                        time series offset aliases.                   │
│ --end-time,--et                                     <parse_timestamp>  End timestamp of the period. Overrides the    │
│                                                                        `timestamps` parameter!                       │
│ --timezone,--tz,--zone                              <parse_timezone>   Timezone (e.g., 'Europe/Athens'). Use the     │
│                                                                        system's time zone via the `--local` option.  │
│ --random-timestamps       --no-random-timestamps                       Generate a random date, time and timezone to  │
│                                                                        demonstrate calculation                       │
│                                                                        [default: no-random-timestamps]               │
╰──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯
╭─ External solar irradiance time series ──────────────────────────────────────────────────────────────────────────────╮
│ --spectrally-resolved-global-horizontal-irradianc…        <path>  Global horizontal irradiance (Surface Incoming     │
│                                                                   Shortwave Irradiance (SIS), `ssrd`                 │
│ --spectrally-resolved-direct-horizontal-irradianc…        <path>  Direct (or beam) horizontal irradiance (Surface    │
│                                                                   Incoming Direct radiation (SID), `fdir`            │
╰──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯
╭─ External meteorological time series ────────────────────────────────────────────────────────────────────────────────╮
│ --temperature-series        <parse_temperature_series>  Ambient temperature time series                              │
│ --wind-speed-series         <parse_wind_speed_series>   Ambient wind_speed time series                               │
╰──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯
╭─ External time series selection ─────────────────────────────────────────────────────────────────────────────────────╮
│ --neighbor-lookup                           <none|pad|backfill|nearest>  Enable nearest neighbor (inexact) lookups.  │
│                                                                          Read Xarray manual on                       │
│                                                                          nearest-neighbor-lookups                    │
│                                                                          [default: nearest]                          │
│ --tolerance                                 <float>                      Maximum distance between original & new     │
│                                                                          labels for inexact matches. Read Xarray     │
│                                                                          manual on nearest-neighbor-lookups          │
│                                                                          [default: 0.1]                              │
│ --mask-and-scale     --no-mask-and-scale                                 Mask and scale the series                   │
│                                                                          [default: no-mask-and-scale]                │
│ --in-memory          --no-in-memory                                      Use in-memory processing                    │
│                                                                          [default: no-in-memory]                     │
╰──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯
╭─ Atmospheric properties ─────────────────────────────────────────────────────────────────────────────────────────────╮
│ --linke-turbidity-factor-s…                                  <parse_linke_turbidity_fac  Ratio of total to Rayleigh  │
│                                                              tor_series>                 optical depth measuring     │
│                                                                                          atmospheric turbidity       │
│ --apply-atmospheric-refrac…    --no-apply-atmospheric-re…                                Correct solar azimuth and   │
│                                                                                          altitude angles for         │
│                                                                                          atmospheric refraction      │
│                                                                                          [default:                   │
│                                                                                          apply-atmospheric-refracti… │
│ --refracted-solar-zenith                                     <float>                     Refracted solar zenith      │
│                                                                                          angle (in radians) for sun  │
│                                                                                          -rise and -set events       │
│                                                                                          [default:                   │
│                                                                                          1.5853349194640094]         │
╰──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯
╭─ Advanced ───────────────────────────────────────────────────────────────────────────────────────────────────────────╮
│ --albedo                                                        <float range> [x>=0]  Mean ground albedo             │
│                                                                                       [default: 0.2]                 │
│ --apply-reflectivity-factor    --no-apply-reflectivity-fact…                          Apply angular loss function    │
│                                                                                       [default:                      │
│                                                                                       apply-reflectivity-factor]     │
╰──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯
╭─ Solar position ─────────────────────────────────────────────────────────────────────────────────────────────────────╮
│ --solar-position-model,--position-m…        <all|noaa|hofierka|jenco|pvlib|pys  Model to calculate solar position    │
│                                             olar|skyfield|suncalc>              [default: NOAA]                      │
│ --solar-incidence-model,--incidence…        <all|hofierka|jenco|iqbal|pvgis|pv  Method to calculate the solar        │
│                                             lib>                                incidence angle                      │
│                                                                                 [default: Iqbal]                     │
╰──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯
╭─ Solar time ─────────────────────────────────────────────────────────────────────────────────────────────────────────╮
│ --solar-time-model        <all|milne1921|noaa|pvgis|pvlib|skyfield>  Model to calculate solar time                   │
│                                                                      [default: Milne1921]                            │
╰──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯
╭─ Earth orbit ────────────────────────────────────────────────────────────────────────────────────────────────────────╮
│ --solar-constant                        <float range> [x>=1360]  Top-of-Atmosphere mean solar electromagnetic        │
│                                                                  radiation (W/m-2) 1 au (astronomical unit) away     │
│                                                                  from the Sun.                                       │
│                                                                  [default: 1360.8]                                   │
│ --perigee-offset                        <float>                  Perigee offset [default: 0.048869]                  │
│ --eccentricity-correction-factor        <float>                  Eccentricity correction factor [default: 0.03344]   │
╰──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯
╭─ > Input : < Output ─────────────────────────────────────────────────────────────────────────────────────────────────╮
│ --time-output-units   -tou      <str>   Time units for output and internal calculations (seconds, minutes or hours)  │
│                                         - ⚠ Keep fingers away!                                                       │
│                                         [default: minutes]                                                           │
│ --angle-input-units   -aiu      <str>   Angular units for internal solar geometry calculations. ⚠ Keep fingers away! │
│                                         [default: radians]                                                           │
│ --angle-output-units  -aou      <str>   Angular units for solar geometry calculations (degrees or radians). ⚠ Under  │
│                                         development                                                                  │
│                                         [default: radians]                                                           │
│ --rounding-places     -r        <int>   Number of digits to round results to [default: 3]                            │
│ --csv                           <path>  CSV output filename                                                          │
│ --verbose             -v        <int>   Show details while executing commands [default: 0]                           │
│ --index,--idx         -i                Index rows in output table (meaningful with at least 1x -v)                  │
│ --quiet                                 Do not print out the output                                                  │
╰──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯
╭─ Photovoltaic efficiency ────────────────────────────────────────────────────────────────────────────────────────────╮
│ --system-efficiency-factor  -se      <float>              System efficiency factor [default: 0.86]                   │
│ --power-model               -pm      <none|iv|huld 2011>  Algorithms for calculation of the PV power output of a     │
│                                                           photovoltaic system as a function of total irradiance and  │
│                                                           temperature                                                │
│                                                           [default: Huld 2011]                                       │
│ --temperature-model         -tm      <none|faiman>        Algorithms for calculation of the effect of temperature on │
│                                                           the power output of a photovoltaic system as a function of │
│                                                           temperature and optionally wind speed                      │
│                                                           [default: Faiman]                                          │
│ --efficiency-factor         -e       <float>              PV efficiency factor. Overrides internal PV module         │
│                                                           efficiency algorithms!                                     │
╰──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯
╭─ Statistics ─────────────────────────────────────────────────────────────────────────────────────────────────────────╮
│ --statistics    --no-statistics           Calculate and display summary statistics [default: no-statistics]          │
│ --groupby                          <str>  Group statistics, ex. M or 3h. A number and date/time unit : (Y)ear,       │
│                                           (S)eason, (M)onth, (D)ay, (W)eek, (h)our. See Xarray's group-by            │
│                                           operations.                                                                │
╰──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯
╭─ Plotting ───────────────────────────────────────────────────────────────────────────────────────────────────────────╮
│ --uniplot                    --no-uniplot             Plot the PV power output time series in the terminal           │
│                                                       [default: no-uniplot]                                          │
│ --terminal-width-fraction                    <float>  Fraction of number of columns of the current terminal, ex. 0.9 │
│                                                       [default: 0.9]                                                 │
╰──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯
╭─ Metadata ───────────────────────────────────────────────────────────────────────────────────────────────────────────╮
│ --fingerprint,--fp                       Fingerprint the output time series                                          │
│ --metadata            --no-metadata      Print command metadata [default: no-metadata]                               │
╰──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯