Simulation Physics & Data Reference

At a glance

  • This appendix explains the physics pipeline behind every number the simulation engine produces, at the level you need to interpret results and choose the model options — not the code internals.

  • It walks the ordered chain a run follows: weather in → plane-of-array (POA) transposition → shading → module physics → DC → inverter → AC / grid, then the loss cascade and the probabilistic (P50/P90) framing.

  • The controls that steer this chain live in three places: the Production tab (/production) — weather source, far-horizon policy, transposition model, radiation database, wind source, physics time step, interpolation grid, the editable loss cascade and the exceedance percentile; the panel editor on Catalogue (/catalogue), once per module — IV model, IAM model, thermal, tracker, wind-stow, bifaciality, concentrator optics; and Map (/map), once per polygon — ground albedo, field geometry, building integration and on-water mounting.

  • Use it as a reference: each selectable model has a when to pick it note, and the final Field reference field reference lists every control with its range, default, and physical effect.

  • Prerequisite: a run needs a location and a weather series, which the app fetches and embeds in the project for you (see The Map & Site Design Tab and Running a Simulation & the Production Tab). Nothing here is edited during the run itself — you set the options, then simulate.

The physics chain, in order

A project (site, array geometry, components, tariff, dispatch) is handed to the simulation engine, which runs one ordered pipeline and returns energy, a per-stage loss cascade, and financials. The order is canonical and every loss term is applied at a fixed stage, so the loss diagram (Sankey) always reads top-to-bottom in the same sequence:

  1. Transposition (GHI → POA). Horizontal irradiance is projected onto the tilted plane of the modules. This is a gain (typically +20 to +35 % at a good tilt), shown as the first, positive line of the cascade.

  2. Shading and stow. Far/horizon shading, near (inter-row) shading, the share of near shading attributable to vegetation, a tracker's backtracking and rotation limit, and any tracker wind-stow are peeled off the POA before the cells ever see it.

  3. Module physics. Angle-of-incidence (IAM), soiling, snow and spectral mismatch trim the irradiance that actually reaches the cells; STC conversion (ηSTC) turns what is left into DC power; then the low-light (irradiance-level) and cell-temperature terms apply — all through the single-diode I–V model.

  4. DC. The electrical (bypass-diode) effect of partial shading, module quality, year-1 LID, module-to-module mismatch, then DC wiring (ohmic) losses on the string and in the combiner box.

  5. Inverter. Any module-level DC optimisers first (their own partial-load curve plus power and current clipping), then MPPT tracking, the inverter's partial-load efficiency curve, the five inverter-limit clamps (power/voltage min/max, night drain) and — on a non-unity cosφ setpoint — the reactive-power clipping increment.

  6. AC / grid. AC wiring, transformers (MV then HV), the MV line, auxiliaries, availability and grid-side (weak-grid) losses down to the meter, less any battery-backup credit; beyond year 1, module ageing closes the chain.

The inverter's partial-load curve is the efficiency profile of its .OND file when the inverter came from one. Otherwise it is built from the inverters' datasheet efficiency, weighted by their AC power — the CEC figure first when the project's Electrical code on Diagram is NEC (US), the Euro figure first under every other code — and it is a typical 96 % curve when the datasheets give neither. With no inverter in the electrical design, the stage is a flat conversion loss that never clips, so the yield can read a few percent high: on a grid-connected system the Warnings card on Results says so, as it does when the results use the generic starter inverter that Create initial design places, which has a rating but no datasheet efficiency (Electrical Design & the One-Line Diagram).

A new loss term takes its own place in the chain without moving the existing ones, so every entry keeps its position relative to the others from one release to the next. Every entry also carries a provenance tag (where the number came from — PVGIS-attested, computed from weather, integrated from your bill-of-materials, or a literature default), which the loss diagram surfaces so a reviewer can audit each line. See Charts, Heatmaps & Tables for the loss diagram and Reporting & Export for the audited PDF export.

Note

The engine behind the web app always runs the local physical chain: the module-physics block is computed hour by hour from the site's own data and the module's single-diode curve, never from PVGIS's pre-packaged loss shares. There is no switch for it, so there is nothing to get wrong — what you configure is which data feeds the chain and how finely it integrates. The local chain is what produces bifacial rear-side gain, the exact inverter-limit decomposition, custom IAM curves and tracker physics.

Weather and irradiance input

Everything downstream depends on the irradiance and temperature series the engine is fed. You choose it with Weather source, in the Weather & models card of the Configuration section on Production (/production).

Data sources

Weather sourceMeaning / effect
PVGIS (online) — defaultFetches an hourly typical-meteorological series (GHI, diffuse, plane-of-array G(i), ambient temperature T2m, and 10 m wind) for the site's polygons. PVGIS already applies Hay-Davies transposition internally and can bake the site horizon into G(i). Numbers match the PVGIS web tool for the same location.
Imported weather fileDrives the local-physics chain from a file loaded with the Weather file chooser directly underneath (Choose a file…, then Apply weather file) — an EnergyPlus .epw, a TMY3 .csv, a PVGIS TMY .csv or .json download, an NSRDB .csv download, a Solcast or Solargis .csv export, or a pvSpline .json series (e.g. ERA5 or SARAH-3 converted offline). Use it where PVGIS has no coverage, or to compare sources. EPW always carries diffuse; TMY3 sometimes omits it; the NSRDB, Solcast and Solargis CSVs and the pvSpline JSON additionally carry precipitable water for the spectral correction, which EPW drops. Solcast and Solargis values are averages over each interval, and each is placed on the interval it covers, whatever instant the file labels it with (Solcast the interval's end, Solargis the centre its header states). From a Solargis file the irradiance without horizon shading is read when the file has it, because a weather-file run applies the far horizon itself (Far horizon without a 3-D sweep); a Solargis typical year, which names no year, is placed on the last year of its summarization period. A PVGIS TMY's stamps are UTC and its header states when within each hour the irradiance stands — the satellite's scan of the site for SARAH data (about 10 minutes past the hour), the hour's middle for ERA5 data — so each row is placed on the hour centred on that time; PVGIS's EPW download, which cannot carry that time and labels its hours an hour early in western and central Europe, is refused with a pointer to the CSV or JSON. A typical year whose months come from different years — a TMY EPW, an NREL TMY3, a PVGIS, NSRDB or Solcast typical year — is placed on one calendar year, the newest it draws from, and NSRDB's wind, given at 2 m, is raised to the 10 m height the model reads over the ground set in Site surroundings (wind profile), unless Wind source is Open-Meteo, whose 10 m wind then takes its place (Field reference). A file whose records are finer than hourly also drives the sub-hourly path from measured data rather than from a synthesised profile (Sub-hourly time step).

Two more sources feed the chain even on a PVGIS run:

  • Open-Meteo archive — the site's hourly weather history: rainfall, snowfall, temperature, humidity, irradiance and 10 m wind from the Copernicus ERA5-Land (0.1°, from 1950) and ERA5 (0.25°, from 1940) reanalyses, and PM10 / PM2.5 particulates from the CAMS air-quality archive, which starts in spring 2022. The hosted service reads them through pvSpline's own instance of the open-source Open-Meteo server. Every year from 2014 to last year is fetched. The soiling (Kimber 2006, from rainfall and particulates) and snow (Marion 2013, from snowfall and temperature) losses average the last three complete years, and a year without particulate data uses Kimber's constant deposition rate. Both are worked out for each array zone at its own tilt — a tracker at its Rotation limit, or at a representative 45° when the module sets none — and weighted by the modules placed on each zone (equally when that is unknown); buildings, obstacles and vegetation do not count. Snow slides off a near-flat array at no less than the rate the Marion model gives a 5° slope, a stand-in for the melting the model leaves out; at 5° and above the published model applies unchanged. The same record gives the spectral correction its precipitable water and the snow-covered-ground albedo its snow depth, and its coldest daylight hour is the design cold temperature a batch checks the strings it plans against when the Diagram tab sets no site minimum (Deciding and applying). When you point Wind source at it, it also supplies the wind channel that drives tracker wind-stow and the thermal model's wind term. When present, soiling and snow losses become computed rather than flat constants.

  • Enedis — the French metering operator, source of your consumption curve (30-minute load), not irradiance. It matters here only because its timestamp convention must be aligned with production before self-consumption is computed (see The Consumption Tab).

When PVGIS radiation database is left on Automatic, PVGIS picks the best radiation database for the location; you can force PVGIS-SARAH3 (satellite, Europe/Africa) or PVGIS-ERA5 (global reanalysis) to compare sources or to satisfy an independent engineer who standardised on one. The choice also sets the irradiance-uncertainty sigma used in the P50/P90 calculation (SARAH3 is treated as more accurate than ERA5).

How the series reaches the engine

You do not have to fetch anything by hand. The app requests the PVGIS and Open-Meteo series for you — when the array geometry changes, and again before a run that would otherwise have no weather — and writes the result into the project. A row of badges under the weather source says which series the project currently embeds (PVGIS, Open-Meteo, Enedis, weather file), and a project that carries them simulates offline, reproducibly, on any engine. Use the refresh control in the same card only when you want a newer fetch, or to retry one that was refused.

A project saved to your account keeps them as well: the series, an imported weather file included, are stored beside the save and come back when you open it, so it runs without fetching anything again. The measured Enedis series is the exception: once your client's authorisation for the delivery point is no longer in force, it is removed from every saved version, and only a new authorisation lets you download it again on Consumption (When your client's authorisation expires). A save that could not store its series reopens without them: its PVGIS and Open-Meteo series are then fetched again before the next run, while an imported weather file has to be applied again. An exported project file keeps them all (The portable project file).

A fetch that only partly succeeds keeps what it got: if the Open-Meteo part fails, the PVGIS series still lands, the project keeps any Open-Meteo series it already carried, and no other weather service is asked in its place. The badges show what the project ends up with; with no Open-Meteo series at all, soiling and snow use the percentages in the Loss cascade card.

Note

An imported weather file is size-checked in the browser before a byte leaves it, and refused above about 25 MB, with the file's size and that ceiling named. Typical EPW and TMY3 files are a few megabytes, so this only bites on multi-year sub-hourly exports.

Timestamp conventions

Watch out

Interpolated and cached series are always start-of-interval: a timestamp of 00:00 on a 30-minute series covers 00:00–00:30. PVGIS hourly data is already start-of-hour, so it needs no conversion. Raw Enedis metering, however, varies by meter segment — the mass-market Linky meter (C5 / P4) reports end-of-interval, so a 00:30 stamp covers 00:00–00:30, and a midnight stamp belongs to the previous month. The engine converts end-of-interval to start-of-interval before interpolating; if you import raw consumption yourself, this is where a one-interval production/consumption misalignment can hide.

Two consequences are worth holding on to. First, every chart, table and export you read is built on start-of-interval stamps, so you never have to apply a shift yourself — doing so double-counts it. Second, the conversion happens at the moment the series is interpolated, which is also where the interpolation kernel and output resolution are chosen. Those two settings — Interpolation method (Linear, Cubic spline, PCHIP, Akima, Catmull-Rom, or Engine default) and Time resolution (1 to 60 minutes; 5 minutes is the recommended value and the engine default) — live in the Simulation band on Production (/production). They are saved with the project, so every run of it, single or batch, uses them.

Note

The Time resolution is the cadence of the interpolated input series (irradiance and load). It is not the same knob as Physics time step (min) on Production, which is the cadence at which the physical chain integrates (Sub-hourly time step). You can run a 5-minute consumption curve against an hourly physics step, and often should: the first sharpens self-consumption, the second costs compute.

One PVGIS detail shows up when you compare raw downloads: satellite (SARAH) rows are stamped at the satellite's scan minute rather than on the hour, and the engine treats those as instantaneous samples at that instant instead of hourly means. Reanalysis (ERA5) rows are stamped on the hour and treated as hourly means. You never configure this; it only explains why a raw PVGIS CSV may not show round hours.

Transposition: GHI → POA

Transposition converts horizontal irradiance (global GHI, diffuse DHI, direct DNI) into the plane-of-array irradiance that actually strikes a tilted module. The model matters most on diffuse-heavy hours (overcast, dawn/dusk, horizon brightening), where the choice moves annual POA by roughly 1–3 % on tilted geometry. Pick the model with Transposition model in the Weather & models card on Production (/production).

Transposition modelMeaning / effect
Hay-Davies (1980)The fastest and the default. Consumes the tilted G(i) PVGIS already computed on its own plane-of-array transposition (its tilted diffuse follows Muneer's model; the option's name is the sky model the local chain is consistent with); no further transposition is done locally, except on the tracker hours that leave the ideal-tracking plane PVGIS computed for — backtracking, a rotation limit, a wind stow (Tracking). Pick it when matching PVGIS's published numbers exactly matters more than horizon accuracy.
Perez (1990)Inverts the PVGIS tilted components to horizontal DNI/DHI/GHI with the Hay-Davies sky (the hour's anisotropy index from the extraterrestrial irradiance), then re-transposes with the full Perez 1990 kernel (circumsolar and horizon brightening, binned by sky clearness). PVsyst's default model. Same network cost as Hay-Davies (one PVGIS request). The inversion is exact for Hay-Davies components and within a few percent of the diffuse for PVGIS's Muneer ones. Pick it for PVsyst-style transposition without a second fetch.
Perez (1990, from GHI)The most accurate. Fires a second PVGIS request at horizontal (aspect=0, angle=0) to get true GHI/DHI, then feeds Perez directly — no inversion at all. Matches the PVsyst yield-report path. Costs a second fetch per array; a coverage line appears under the selector after you run the project, naming how many polygons actually have raw GHI, and any hour without it inverts the tilted components as Perez (1990) does.

Tip

For a bankable A/B against PVsyst, choose Perez (1990, from GHI). For a quick sanity run that should reproduce the PVGIS website, keep Hay-Davies (1980). Run the project after switching and read the coverage line: a partial coverage figure tells you some polygons were fetched before the switch and still invert the tilted components — fetch the weather data again to request their horizontal irradiance.

GHI decomposition (diffuse split)

When the weather source gives GHI but no diffuse (some TMY3 files, GHI-only satellite series, custom CSV), the engine must split GHI into direct and diffuse before transposing. PVGIS and EPW already carry diffuse, so on those paths no decomposition runs at all. This is not a setting you pick: the engine decomposes with Erbs, and falls back to it whenever a richer model's inputs are missing. The two models are described here because the difference shows up when you reconcile a GHI-only source against another tool.

GHI → diffuse decompositionMeaning / effect
Erbs (1982)What the engine runs. A piecewise polynomial in the hourly clearness index kt only — cheap and accurate to ∼5 % on annual yield for temperate/overcast sites. It over-predicts diffuse by 5–10 % under stable clear skies (tropical/desert), where the true diffuse fraction is lower than a kt-only fit suggests. PVsyst's decomposition through v8.0.
Engerer2 (2015)The refinement the engine also implements, used by the validation benchmarks. A four-predictor logistic in kt, apparent solar time, zenith, and clear-sky deviation. Captures the morning/evening clearness ramp and the clear-sky bias Erbs misses. Needs site latitude/longitude/altitude (and optionally Linke turbidity); falls back to Erbs on any hour where those are missing. PVsyst's decomposition since v8.1. On GHI-only sources the two differ by 0.5–3 % annual; on PVGIS/EPW they are identical because diffuse is provided.

Solar position

Sun zenith and azimuth are computed with the NREL Solar Position Algorithm (SPA, Reda & Andreas 2004), accurate to ±0.0003°, including atmospheric refraction. You do not configure this — it is used everywhere the chain needs a sun angle (AOI, tracker rotation, horizon shading). The azimuth convention is compass bearing from true north (N=0, E=90, S=180, W=270).

Module physics

Once POA reaches the module, a short sequence of physical effects converts it to DC power, each computed hour by hour. You set the module's parameters once, in the panel editor on Catalogue (/catalogue) — Add part… for a new module, Edit for one already in the catalogue, which opens the Add a panel reference form (The Component Catalogue). Leaving a numeric field empty keeps the engine's own value for it, so you only fill in what the datasheet actually states.

STC conversion and the single-diode I–V model

At standard test conditions the module converts POA to DC at its efficiency ηSTC. Off-STC (real irradiance and temperature), the engine solves the single-diode equivalent circuit rather than a linear approximation, because the I–V curve shape drives low-light and voltage-rail behaviour. Pick the model with IV model.

I–V (single-diode) modelMeaning / effect
De Soto 2006 (default)The PVsyst-canonical five-parameter single-diode model. The shunt resistance scales as Rsh∝ Gref/G. Covers most crystalline-silicon modules well. Parameters are extracted from the datasheet (Voc, Isc, Vmp, Imp, βVoc, cells-in-series); if extraction fails the engine downgrades silently to a linear-γ approximation.
Irradiance-dependent Rsh (PVsyst)The seven-parameter PVsyst form, where Rsh follows an empirical exponential in G (Sauer-Roman). Better low-light behaviour on multi-Si and thin-film modules (De Soto under-predicts their low-light power by 1–3 %). Two advanced knobs — Rsh,0/Rsh,ref (default 4.0) and Rshexp (default 5.5) — are exposed only when this model is selected. Pick it for bankability sign-offs benchmarked against PVsyst.

The single-diode solution also produces the cascade's Irradiance level (low light) line: the I–V curve's own non-linearity at irradiances below STC, which PVsyst reports as “IL”. It only appears when the extraction succeeded — the linear-γ fallback cannot produce it — so an empty low-light line is a hint that a datasheet field is missing.

When a module's substrings and bypass diodes are described, the engine also models partial shading exactly: a partly-shaded substring is clamped by its bypass diode, so a 10 % shaded substring on a 60-cell module can delete ∼28 % of that module's power — an effect a naive irradiance-average misses. Set Bypass diodes (3 on virtually every crystalline module, 4 on 96-cell ones) and, optionally, Bypass diode Vf (0.45 V Schottky, 0.7 V silicon). Two or more diodes is what enables per-substring partial-shading modelling and lets a 3-D shading bake be consumed; left unspecified the engine assumes 3 rather than modelling a module with no bypass diodes at all.

Angle-of-incidence (IAM)

At oblique incidence the glass cover reflects part of the beam (Fresnel loss). The incidence-angle modifier IAM(θ) is the fraction transmitted. Choose the model with IAM model.

IAM (incidence-angle modifier) modelMeaning / effect
Martin-Ruiz (default)An analytic curve with one angular characteristic Ar (default 0.157 for typical c-Si glass; ∼0.10 for anti-reflective/textured, ∼0.25 for rough covers). IAM(0°)≈1.00, IAM(60°)≈0.96, IAM(80°)≈0.67, IAM(90°)=0.
ASHRAE (b0)A one-parameter model, IAM(θ)=1-b0 (1/cosθ-1), with b0≈0.05 for standard glass. Available when the .PAN declares it, or type your own.
.PAN profileThe module's own manufacturer-measured IAM table, interpolated with a shape-preserving monotone cubic. The gold standard — it beats the generic curves for AR-coated glass at oblique angles, and it is applied to all components (beam, sky-diffuse, ground-reflected). Available only when the imported .PAN carries a profile; a .PAN that instead declares the physical Fresnel (or Fresnel AR) angular model arrives as a profile too, sampled from that model. About 16 of the bundled .PAN files ship one.

A read-only preview under the field plots the active IAM curve from 0° to 90°, so you can see the effect of the choice before saving. On the .PAN profile setting there is no curve to draw — its points are import-only — and the preview is replaced by a line saying so.

Cell temperature

Hotter cells produce less power (the power temperature coefficient γPmpp is negative, typically -0.40 %/°C for c-Si). Two thermal models are available:

  • Sandia / NOCT — Tcell=Tamb+(NOCT-20)/800· GPOA, driven by the module's Nominal Operating Cell Temperature (typically 45 °C for c-Si).

  • Faiman (IEC 61853-2) — the PVsyst-canonical form, Tcell=Tamb+GPOA/(Uc+Uv· vwind). The convective coefficient Uc follows how the array is actually mounted: 29 W/m2/K free-standing (rack, ground, carport), 20 for a semi-integrated array with a ventilated air gap or duct behind it, 15 for a fully integrated one with an insulated back — the hottest regime — and 32 for floating (on-water) arrays, whose cooler, breezier microclimate is folded into an effective coefficient.

Which regime applies is a property of the polygon, not of the module: set BIPV (Not integrated / Integrated (insulated back) / Semi-integrated (ventilated gap)) and On water on Map (/map). Either one overrides the module's NOCT, which is measured on an open rack and therefore does not describe an integrated or floating array. A polygon left on Not integrated and off water inherits the module's own Mounting setting instead.

The wind term is always on: the engine takes the mounting's wind-coupling coefficient Uv and applies it to the hourly wind series, so back-side airflow cools a free-standing or floating array as the wind picks up. There is nothing to enable. Both building-integrated regimes stay wind-naive on their own merits (Uv=0 — there is no free airflow behind them for the wind to scale), and an hour whose series carries no wind reading simply falls back to the no-wind result. Which wind series is used is the one choice you do make: Wind source (Field reference).

At sub-hourly time steps a lumped-capacitance transient model adds realistic thermal lag through cloud passage; it collapses exactly to the steady-state Faiman result at the hourly step.

The cascade's Temperature line is the year's net thermal effect: the energy the cells gain in hours colder than 25 °C is set against what they lose in the hotter ones, so on a site where cold hours win the line is a credit.

Spectral correction

Real sunlight's spectrum shifts with air mass and water vapour, and each cell technology responds differently. The engine applies a small technology-dependent spectral correction (air-mass polynomial, plus a precipitable-water term when the weather source carries humidity). Multi-junction (HCPV) cells are handled by a separate concentrator utilization factor instead, to avoid double-counting. You select the technology with Cell technology in the panel editor — it also drives the LID and degradation defaults. Where the source gives temperature and relative humidity but no water-vapour column, the engine estimates the column from those two; a pvSpline JSON weather series carries the measured value directly.

Bifacial, albedo and snow

Bifacial modules gain rear-side energy from ground-reflected light. The rear irradiance scales with the ground albedo (reflectance) and a self-shadow factor that depends on Ground clearance. Set Bifaciality (0–1) on the module (0 = monofacial, disables the gain; 0.65–0.85 for commercial bifacial) and Ground clearance (flush roof ≈0.05 m, ground-mount ≈1–1.5 m, canopy ≈2 m+). Ground albedo is set per polygon on Map (/map; see the material presets in Field reference); it also feeds the front-side ground-reflected term. When Open-Meteo snow data is present, the engine swaps in fresh-snow albedo (0.85) on snow-covered hours for both faces. The rear-side gain shows in the cascade as a negative loss (a credit), and the same multiplier carries all the way through the downstream DC, inverter and AC losses to the meter.

Concentrator optics (CPV / LCPV)

pvSpline models two concentrator regimes, each with its own group of fields in the panel editor. Both collect the direct beam only, so a beam-bearing transposition (one of the Perez settings) is more meaningful than the Hay-Davies path.

  • High-concentration PV (HCPV). Selecting multi-junction as the Cell technology reveals the concentrator fields (pre-filled with generic ∼500× triple-junction defaults) and locks Tracker type to Two-axis, which a multi-junction cell needs; the editor says so in a note. A DNI-driven model replaces the flat-plate chain: the cell sees DNI× C×ηopt within the acceptance cone, a spectral utilization factor (air-mass polynomial) replaces the flat-plate spectral term, and cell temperature follows Tcell=Tamb+DNI/U.

  • Low-concentration PV (LCPV). Tick LCPV concentrator optics to put trough / V-trough / CPC / Fresnel optics in front of ordinary c-Si cells — a regime most tools exclude because of non-uniform flux, which pvSpline models with a flux-uniformity penalty instead. Each optics type carries calibrated defaults; leave a field blank to inherit the per-type default. A concentrator admits only ∼1/Cgeo of the diffuse sky, and the single-diode parameters (extracted at 1 sun) are extrapolated only up to Max valid concentration, beyond which the effective concentration is clipped and the P90 band widens.

Shading

Shading is split into distinct terms so the loss diagram tells you which kind is costing you energy:

  • Far / horizon shading. The terrain or building skyline blocking the direct beam. Estimated from the PVGIS horizon profile, or measured from the skyline sampled in the 3D view (/earth, The 3D Earth Site View), crossed with the hourly sun position. PVGIS silently bakes the horizon into its G(i), so this cascade entry makes the hidden kWh visible. When the irradiance carries no horizon of its own — an imported weather file, for instance — Far horizon without a 3-D sweep on Production decides what an array the 3-D view has not swept gets: Auto and On shade its beam with the far horizon alone (the terrain model published with the 3-D tiles when there is one, else the PVGIS horizon fetched for the array), Off applies no far shading without a sweep. A run on PVGIS G(i) never consults it.

  • Near / inter-row (mutual) shading. On regularly-spaced rows, the row in front blocks part of the beam and masks part of the sky diffuse at low sun. Which geometry applies comes from the polygon's Field setting on Map (/map) — Rows (sheds), Brise-soleil, Agrivoltaics (elevated) or Agrivoltaics (vertical bifacial) — or, for an East-West array, from the East-West dome switch and its Dome GCR. Modelled with an infinite-row 2-D geometry from the ground coverage ratio and profile angle. Two cascade lines separate the beam and the diffuse/ground portions.

  • Near shading by vegetation. When a 3-D bake attributes part of the near shading to a tree canopy rather than to terrain, rows or buildings, that share is peeled out onto its own line (attenuation through the canopy, not an opaque block). The two beam lines together are what one line used to be, so the cascade still telescopes. Projects with no canopy-aware bake simply do not carry it.

  • Electrical / mismatch effect of shading. A partially-shaded module loses extra power to string current-limiting and bypass activation, beyond the pure irradiance deficit. Surfaced as its own line when the polygon's field geometry sets an electrical-effect fraction.

  • String-level mismatch. Beyond shading, series-connected modules that do not share an identical MPP force a common string current, pulling weaker modules off their own maximum. The engine applies it as one flat percentage. With the row's Auto toggle on (the default) and modules placed, the run takes PVsyst's default tier for your system: module mismatch 0 % below 10 modules, 1 % from 10 and 2 % from 100 (0.5 and 1 % for CdTe, CIGS or amorphous-Si modules), plus 0.10 % for 2 to 5 strings per MPPT input or 0.15 % for 6 or more. With Auto off, the Mismatch percentage stored in the project applies (1 % unless you type another).

Tracking

Tracking is a property of the module: set Tracker type in the panel editor on Catalogue (/catalogue). The six choices map onto three physical classes: fixed, single-axis (Single-axis, horizontal N–S or E–W, Single-axis, vertical, Single-axis, tilted) and Two-axis. Several refinements apply to single-axis trackers, and their fields appear only once you have picked one.

A zone on Map (/map) takes that tracking when the module is assigned to it, and its card then shows a read-only Tracker line (The Map & Site Design Tab). The run treats the four single-axis choices alike, and a vertical or tilted axis is not modelled as such: a single-axis zone turns about a horizontal axis along its Azimuth, 180° — the default — for a north–south axis (0° is the same axis) and 90° or 270° for an east–west one. On a PVGIS run the same axis chooses PVGIS's irradiance: a zone whose axis runs within 45° of east–west gets that of a horizontal east–west tracker, and every other single-axis zone that of a horizontal north–south one. On a tracker the simulation sets the modules' tilt hour by hour rather than using the zone's Tilt, and on a two-axis tracker their azimuth too. The weather-derived soiling and snow losses do not use the Tilt either: they count a tracker at its Rotation limit, or at 45° when the module sets none (Weather and irradiance input).

Tracking strategy (single-axis)Meaning / effect
AstronomicThe default. Rotates the axis to minimise the angle of incidence — point as squarely at the sun as the single axis allows.
Irradiance optimizationUnder diffuse/overcast skies, re-aims toward the rotation that maximises POA (flattening captures more sky diffuse). On clear-sky hours the beam dominates and the optimum collapses back to the astronomical angle, so the two agree. PVsyst calls this the “sensor-equality” model and restricts it to single-axis trackers; pvSpline does the same. The strategy can only add POA, never regress it.
  • Backtracking. Set Backtracking GCR (0–1) — the ground coverage ratio (module length / row pitch, typically 0.30–0.50). A non-zero GCR activates Anderson-Mikofski 2020 backtracking: near sunrise/sunset the tracker rotates back from the ideal angle to stop shading the next row. Leave at 0 for widely-spaced arrays or when GCR is unknown (residual ground-shade bias then shows up). What backtracking costs is the cascade's Tracker backtracking / rotation limit line (below).

  • Rotation limit. Rotation limit is the tracker's mechanical Φ min/max (±45 to ±60° typical). It clamps every strategy — leave it blank for no limit (the ideal angle is already within ±90°). What the limit costs shows on the same cascade line.

  • Wind-stow. Tick Enable wind stow to drive the tracker to a safe Wind-stow angle (0° = flat) whenever the hourly wind exceeds the Wind-stow threshold (12 m/s PVsyst default). The two fields appear only once the box is ticked. The sacrificed POA appears as a dedicated cascade line, and a day×hour heatmap shows exactly when trackers stowed. It reads the hourly wind chosen with Wind source on Production: PVGIS WS10m or Open-Meteo — on an imported weather file, the file's own wind or Open-Meteo.

PVGIS computes a tracker's irradiance for ideal tracking, with neither backtracking nor a mechanical stop. Both leave the modules flatter than the sun asks for — backtracking near sunrise and sunset, the rotation limit whenever the ideal angle lies beyond it — so they catch less of the direct beam, and the run charges that difference on a cascade line of its own, Tracker backtracking / rotation limit. On each hour where the real rotation departs from the ideal one, the default Hay-Davies model transposes the same horizontal irradiance twice — once onto the ideal plane PVGIS computed for, once onto the plane the tracker really presents — and scales the PVGIS plane-of-array value by the ratio of the two, so any bias of the model itself cancels and only the change of geometry is charged; the Perez models, which transpose onto the real plane anyway, report the same difference. Like the wind stow, the line is energy already taken off the plane-of-array total, shown rather than deducted twice, and the stow starts from the backtracked irradiance, so the two lines never count the same energy. For a horizontal north–south tracker field at a GCR of 0.4 expect about 1–2 % of the plane-of-array irradiance; an ideal tracker (GCR 0, no rotation limit) and a fixed array show no such line.

Configure a single-axis tracker with backtracking and wind-stow

  1. Open Catalogue (/catalogue), select the PV modules category and press Edit on your module (or Add part… for a new one).

  2. Set Tracker type to Single-axis, horizontal N–S — every single-axis choice is simulated the same way, about a horizontal axis along the zone's azimuth, so leave the zone at the default 180° for a north–south axis. Tracking strategy and Rotation limit appear.

  3. Set Backtracking GCR (0–1) to your module-length / row-pitch ratio (e.g. 0.40) to switch on backtracking.

  4. If the tracker has a mechanical limit, set Rotation limit (e.g. 55°); otherwise leave it blank.

  5. Tick Enable wind stow, confirm Wind-stow threshold (e.g. 12 m/s) and Wind-stow angle (0° = flat).

  6. Press Save. Heart the module so the zone card lists it, then on Map (/map) pick it as each tracker zone's Panel type: the zone takes the tracking set here, wind stow included, and its card shows a Tracker line. On a project with a single array the card has no Panel type row: pick the module in the PARAMETERS Type row instead, which, when ticked on a larger project, gives every zone the module at once.

  7. Open Production (/production), set Wind source to PVGIS WS10m or Open-Meteo, and run the project.

  8. On Results (/results), check the Wind stow (heatmap) chart and the Tracker wind stow line in the loss diagram to confirm the stow hours look sensible, and the Tracker backtracking / rotation limit line for what backtracking and the limit cost.

Note

Changing a specification creates a new component with its own identity, so projects already saved keep the module they were built with. Re-select the edited module on the polygons that should use it.

Sub-hourly time step

Physics time step (min) — in the Simulation band of the Configuration card on Production (/production) — controls how finely the physical chain integrates. Hourly (60 min) — default is the ordinary path. A finer step (30, 15, 10, 5, 1 min) synthesises an energy-conserving sub-hourly irradiance profile (clear-sky shaped) and engages the transient thermal model, capturing intra-hour clipping and thermal lag that an hourly average smooths over. 5 min is the recommended sub-hourly setting. Expect under 0.1 % on annual yield at stable sites, and 0.1–0.3 % on steep-angle or high-latitude arrays, from the sharper sunrise and sunset ramps.

The loss-diagram footer records which basis the run used, because the difference matters to a reviewer:

  • Hourly — no intra-hour modelling at all.

  • Synthesised clear-sky — the hourly irradiance redistributed across the sub-hour grid on a clear-sky shape. The ramps sharpen; no cloud-edge variance is invented.

  • Native sub-hourly file — the sub-hour series came from an imported weather file whose records are finer than hourly. This is the only basis that is measured rather than modelled.

Watch out

A synthesised profile is modelled, not measured. It is the right basis for comparing designs and for sizing an inverter against clipping, but do not present a sub-hourly clipping-capture gain as observed behaviour unless the footer says the series was native.

Two conventions keep sub-hourly results aligned with everything else. The synthesised and native sub-hour samples are instantaneous values at their own timestamp, while the hourly series they come from are interval means labelled at the start of their hour — the same start-of-interval rule as every cached series in the app (Weather and irradiance input). And the physics step is independent of the interpolation resolution that shapes the irradiance and load curves themselves, which is set per project beside it.

The loss cascade and provenance

Every loss is a line in one unified cascade, ordered POA → meter. The loss diagram (Sankey) on Results (/results) draws the whole of it, line by line; the Loss cascade card at the top of Production (/production) is its editable part — the post-processing stages, from soiling to LID, between the energy entering post-processing and the AC at the meter. Each line carries three things a reviewer reads:

  • its value — a percentage of the energy remaining at that point, and a monthly series when the term is weather-driven;

  • its position, which is canonical and stable from release to release; and

  • its provenance — PVGIS-attested, PVGIS typical-share (marked with *), a real PVGIS horizon profile or a skyline sampled in the 3-D view, computed from Open-Meteo (Kimber soiling / Marion snow), integrated from your electrical bill-of-materials (I2R), a per-hour inverter-curve or optimiser-curve integration, an integrated outage or weak-grid schedule, the local physics chain, or a user constant.

What the lines are, in order

Not every line appears on every project — a term whose energy is zero is skipped, and whole families (concentrator, optimiser, transformer, weak-grid) appear only when the project has that equipment. The order below is the one the loss diagram always reads; the names here are short ones, and the diagram's own wording for each line is in The loss cascade, line by line:

  1. Transposition gain (a credit), then the four transposition-stage lines that report energy already removed from POA: Far / horizon shading, Near shading, Tracker backtracking / rotation limit and Tracker wind stow.

  2. Optical: on an LCPV project the concentrator optics come first — Concentration gain (LCPV) as a credit, then LCPV optical loss, LCPV acceptance loss and LCPV diffuse rejection; then Row shading (beam), Near shading (vegetation, 3-D bake), Row shading (diffuse), Angle of incidence, Soiling, Snow, Spectral mismatch.

  3. Conversion: Module STC conversion, which converts the flux the cells actually see (on an LCPV project, the concentrated one). On an HCPV project the concentrator stages instead follow the conversion: Concentrator optics, Spectral utilization (multi-junction), Acceptance angle / tracking error.

  4. DC module: Irradiance level (low light), Temperature (the net thermal effect, a credit where cold hours win), Bifacial rear-side gain (a credit), Row shading (electrical), Module quality, Light-induced degradation (LID), Module mismatch.

  5. Wiring and conversion: DC ohmic wiring, LCPV flux uniformity on a low-concentration project, Combiner box ohmic, then — with module-level optimisers — Optimizer partial load, Optimizer power clipping and Optimizer current clipping.

  6. Inverter: Inverter conversion, plus the six operating-envelope lines it decomposes into — Inverter MPPT operation, below start power, over nominal power, below MPPT voltage, above MPPT voltage, Inverter night consumption — and Power factor (cos φ) clipping on a non-unity setpoint.

  7. AC and grid: AC ohmic wiring, MV transformer, HV transformer, MV line ohmic, Auxiliaries (fans, monitoring), Availability (maintenance / outage), Weak grid (trips + resync) and, when a battery covered outages, Battery backup recovery as a credit.

  8. Beyond year 1: Module aging (degradation), which is not a year-1 stage at all — it compounds over the project horizon and therefore carries no bar.

The two MPPT-voltage lines, Inverter below MPPT voltage and Inverter above MPPT voltage, come from the strings wired on Map: each MPPT input is solved hour by hour with the strings routed to it, each at its own length, so a string too short or too long for the window shows up there (The Map & Site Design Tab). A batch scenario that changes the array works them out on the string layout planned for it (Deciding and applying).

Note

Soiling, snow, module quality, LID and mismatch are positioned where they physically act — soiling and snow with the optical terms before the cells convert anything, module quality, LID and mismatch on the DC side before the wiring and the inverter see the power. They are user-adjustable percentages, which is why they are easy to mistake for an end-of-chain adjustment; the engine applies them where the physics puts them, and the running balance in the card reflects that.

You edit the user-adjustable losses in the Loss cascade card itself — one row per loss, with a Value column you type in and a Source column naming the provenance actually in use. Five rows carry an Auto toggle that hands the value to a computed source when data is available: Soiling and Snow (Auto (weather), from the weather profile), Mismatch (Auto, PVsyst's default tier for the module count, the strings per MPPT input and the technology — Shading), AC ohmic losses (Auto (BOM), integrated over the sized bill-of-materials) and LID (year 1) (Auto (tech), from the inherited cell technology). Two further rows are display-only engine figures rather than inputs — DC ohmic losses (info) and Combiner ohmic losses (info) — because those come from the electrical design (Electrical Design & the One-Line Diagram), not from a percentage. Reset all to defaults restores the percentages and the degradation parameters together. See Charts, Heatmaps & Tables for the diagram and Loss cascade — user-adjustable losses for the fields.

Probabilistic yield (P50 / P90)

Every run is framed as a distribution — there is nothing to switch on. The Probabilistic production card on Production (/production) carries one control: a four-segment Exceedance percentile selector (P50, P75, P90, P99), each segment showing its own year-1 figure, and P90 selected by default. The segment you pick is the percentile the financial table is computed on, and the one the run's year-1 energy is shown at: the energy tiles on Production name it in their caption (Annual production · P90), and the energy charts and the loss diagram on Results are scaled to it. The spreadsheet exports' energy rows and the PDF report's cover stay at P50 (Probabilistic production (P50/P75/P90/P99)). The ? in the card head opens the methodology note.

Annual yield in operating year t is treated as a normal variable Y(t)∼ Normal(µ(t),σ(t)·µ(t)); the exceedance PX is the value the plant beats in X % of years (P90 = beaten 90 % of the time). The methodology follows IEC 61724-3:2016 and IEA PVPS Task 13.

The spread is the quadrature sum of the relative uncertainty terms below. The two ageing terms are zero in year 1 and grow with plant age; the last two contribute only where the project carries that exposure:

Field / ControlType & unitDefaultWhat it does & how to set it
Interannual variabilityσiav∼0.04Year-to-year weather noise around the climate mean. Derived from the multi-year PVGIS fetch per polygon when available (flagged in the audit footer), else a literature default. A fetched value ≥10 years is what an auditor wants; the 4 % fallback is optimistic.
Irradiance source biasσirr0.045 / 0.040 / 0.060Satellite/reanalysis ground-truth bias of the chosen radiation database (SARAH3 4.5 % / NSRDB 4.0 % / ERA5 6.0 %; an older SARAH 5.0 %). Systematic — the same bias every year, so no averaging benefit over the plant life.
Model chain residualσmodel0.025Transposition + IAM + spectral + thermal residual. Systematic.
Soiling year-to-yearσsoil0.015Site deposition variance. Random — averages down over the life.
Availability year-to-yearσavail0.005Inverter / grid-curtailment spread. Random.
Degradation-rate uncertaintyσrate0.0015 / yrUncertainty in the median annual degradation rate; grows linearly with plant age, so it is zero in year 1.
Ageing mismatch growthσmis0.004 / yrModules in a series string do not age at the same rate, and the string is current-limited by the worst of them, so the gap widens with age. A closed-form stand-in for the per-module Monte-Carlo PVsyst runs, matching it to about one percentage point of yield over 20 years.
Weak-grid year-to-yearσweak0 unless declaredSpread of grid-side trips and outages. Narrowed in proportion to the share a battery in backup mode actually covers, so a well-covered site sees little of it.
Concentrator extrapolationσlcpv0 unless LCPVBias from extrapolating single-diode parameters, extracted at 1 sun, up to the concentrator's operating ratio. Systematic; it widens the band once the ratio approaches Max valid concentration.

Interannual variability, soiling, availability and weak grid are treated as random year-to-year terms and average down as 1/√(N) over a lifetime; irradiance bias, model residual and the concentrator term are systematic and do not.

The mean losses that anchor the distribution (LID, soiling, snow, mismatch, AC ohmic, availability, bifacial gain) are pinned from the same loss cascade the Sankey and cashflow use, and both are shown at the percentile you picked: the card's figure for that segment equals the cashflow's year-1 net AC and the Sankey's net-meter output. On the default P90 that is the P90 segment, which the Annual production · P90 tile on Production also shows; the P50 segment is the deterministic year, the figure the spreadsheet exports' Net AC at meter (pvSpline loss cascade) row carries (Reporting & Export). Where a datasheet warranty floor binds, the percentile curve and the cashflow follow the same floored decay path.

Caution

The distribution is a closed-form Gaussian. Real yield distributions carry a mild negative skew, so at P99 the estimate can be 1–2 % optimistic; at P90 (the usual DSCR sizing point) the error is below other modelling uncertainties. Do not read the P99 as a hard floor.

Field reference

Every control that shapes the physics chain, grouped by the card it lives in. Ranges and effects are as the application enforces them. In the panel editor an empty numeric field means “keep the engine's value”, not zero — fill in what the datasheet states and leave the rest alone.

Production — Weather & models card (/production)

Field / ControlType & unitDefaultWhat it does & how to set it
Weather sourcedropdownPVGIS (online) — defaultPVGIS online fetch, or an imported EPW / TMY3 / PVGIS TMY / NSRDB / Solcast / Solargis / pvSpline-JSON file. Use the file for uncovered sites or source comparison.
Weather filefile picker—Choose a file… parses an EPW / TMY3 / PVGIS TMY / NSRDB / Solcast / Solargis / pvSpline-JSON series and summarises it; Apply weather file embeds it in the project. Offered only while Weather source is Imported weather file, the one setting under which runs use the file: it then drives the irradiance, with the temperature and wind it carries. Set the source back to PVGIS (online) — default and the file stays embedded, but runs ignore it. The soiling and snow losses come from the Open-Meteo series either way.
Transposition modeldropdownHay-Davies (1980)GHI→POA model: Hay-Davies (1980) / Perez (1990) / Perez (1990, from GHI). See Transposition: GHI → POA. Moves annual POA by 1–3 %.
PVGIS radiation databasedropdownAutomaticRadiation database: Automatic / PVGIS-SARAH3 / PVGIS-ERA5. Forces the satellite vs reanalysis source; also sets the irradiance-bias sigma in the P50/P90 model.
Far horizon without a 3-D sweepdropdownAuto — far horizon alone (default)Auto / On / Off. For a run whose irradiance carries no site horizon, whether an array never swept in the 3-D view is shaded by the far horizon alone (3-D tile terrain model, else the PVGIS horizon). Auto currently behaves as On. Never consulted on a PVGIS G(i) run. Saved with the project.
Wind sourcedropdownPVGIS WS10mHourly wind used by tracker wind-stow and by the wind term of the cell-temperature model. PVGIS WS10m (the 10 m column from the same PVGIS request as the POA, so the same typical year) or Open-Meteo (the 10 m channel from the archive already used for particulates and snow). While Weather source is Imported weather file the first entry reads From the weather file: the run uses the wind the file carries, or none if it has no wind column; Open-Meteo replaces it with the archive's 10 m wind.
Site surroundings (wind profile)dropdownOpen land, short grass (default)The ground around the site, for a weather file whose wind is not given at the 10 m the model reads (an NSRDB download: 2 m). Each run raises that wind with the neutral logarithmic profile u(10)/u(z) = ln(10/z0)/ln(z/z0), over the roughness length z0 of the chosen terrain class (Davenport: 0.0002 m for open water up to 0.5 m for orchards and scattered buildings) — ×1.38 from 2 m over short grass. Shown only while the run takes its wind from the file; a 10 m file wind is not changed.

Production — Simulation card (/production)

Field / ControlType & unitDefaultWhat it does & how to set it
Physics time step (min)dropdownHourly (60 min) — defaultIntegration step of the physical chain: 60 (hourly) / 30 / 15 / 10 / 5 / 1. Sub-hourly synthesises an energy-conserving intra-hour profile and enables the transient thermal model. 5 min is the recommended sub-hourly value.
Cell technologyread-only—The technology inherited from the modules assigned to the polygons; drives the spectral correction and the LID / degradation defaults. Reads “not specified” until a module is assigned. Change it on the module, not here.
Interpolation methoddropdownEngine defaultEngine default / Linear / Cubic spline / PCHIP / Akima / Catmull-Rom. The kernel that rebuilds coarse inputs (hourly irradiance, 30-minute metering) into a fine series; a picked kernel applies to production and consumption alike. Engine default stores nothing and leaves the choice to the engine: out of the box, Akima for production and PCHIP for consumption. What each kernel does is in Field reference. Saved with the project.
Time resolutiondropdownEngine defaultEngine default, or 1 / 5 / 10 / 15 / 30 / 60 minutes. The step of the interpolated series and of the run's energy balance. 5 minutes is the recommended value, and what the engine default resolves to. Saved with the project.

There is no “local physical chain” switch and no wind-sensitive-cell-temperature switch: the engine behind the web app always runs the local chain, and always couples wind into the thermal model (The physics chain, in order, Module physics).

Production — lifetime degradation row (/production)

The cascade's last row is lifetime degradation, and it is driven from the warranty rather than from a rate you type: you state the datasheet line, the engine derives the implied annual rate and shows it read-only beside it, with a green / amber / red verdict on whether the pair sits in a plausible corridor.

Field / ControlType & unitDefaultWhat it does & how to set it
Annual degradationread-only · %/yrderivedMedian module ageing rate, derived from the warranty pair below. Compounds every year in the cashflow and in the P50/P90 mean.
Capacity warranty (%)number · %80 (placeholder)Power still guaranteed at the end of the warranty period, per datasheet. Range 50–100.
Warranty duration (years)number · years25 (placeholder)Length of that warranty. Range 1–40.

Production — Probabilistic card (/production)

Field / ControlType & unitDefaultWhat it does & how to set it
Exceedance percentilefour-segment selectorP90 (DSCR)P50 (median) / P75 / P90 (DSCR) / P99. Each segment shows its own year-1 figure; the one you pick is the percentile the financial table is computed on and the one the run's year-1 energy is shown at — the Production tiles, the energy charts and the loss diagram — while the spreadsheet exports' energy rows and the PDF's cover stay at P50. There is no “off” — pick P50 for the deterministic table.

Panel editor — electrical specifications (STC)

Field / ControlType & unitDefaultWhat it does & how to set it
Power (Pmax STC)number · W400Rated module power. Range 0–1 000 000. The nameplate the whole DC chain scales from.
Voc (open-circuit voltage)number · V—STC open-circuit voltage. Range 0–200. Single-diode extraction input; drives string voltage vs inverter MPPT window.
Vmpp (MPP voltage)number · V—STC max-power-point voltage. Range 0–200.
Isc (short-circuit current)number · A—STC short-circuit current. Range 0–100.
Max series fusenumber · A0 (unspecified)Datasheet fuse rating (range 0–100); caps the DC fuse the single-line diagram picks. 0 = apply the 1.56× Isc rule uncapped.
Max system voltage (IEC)number · V—Voltage the module is certified for under IEC 61730 (typically 1000 or 1500 V). A string's cold-weather open-circuit voltage is held below it as well as below the inverter's limit, in the string checks of the Issues tab on Diagram and in the strings a batch plans. Blank = unknown: the UL rating stands in; with neither stated, a batch holds the strings it plans to the inverter's MPPT maximum. Part of the module's identity (Field reference).
Max system voltage (UL)number · V—The module's UL listing (600, 1000 or 1500 V), which applies instead of the IEC rating when the project's Electrical code is NEC (US). Blank = unknown: the IEC rating stands in.
β(Voc)number · %/°C0Voc temperature coefficient (typ. -0.27). Range -2 to 2. Required for single-diode extraction; 0 disables the correction. Left at 0, the cold-voltage check on a batch's planned strings assumes -0.30 %/°C.
β(Vmpp)number · %/°C0Vmpp temperature coefficient (typ. -0.34). Range -2 to 2.
γ(Pmpp)number · %/°C0Power temperature coefficient (typ. -0.40). Range -2 to 0 (clamped ≤0 so a sign typo can't credit a heat gain). Drives the temperature loss.
NOCTnumber · °C0 (unspecified)Nominal Operating Cell Temperature (typ. 45). Range 0–80. Feeds the Sandia thermal model / equivalent Faiman Uc.
ηSTC (STC efficiency)number · %0 (derived)Module efficiency at STC (typ. 18–22). Range 0–30. 0 = derived from power / (area × 1000).
Bifaciality (0–1)number0.00Rear/front power ratio. Range 0–1, step 0.05. 0 = monofacial (rear gain off); 0.65–0.85 commercial bifacial.
Ground clearancenumber · m—Height under the module. Range 0–5. Drives rear-side self-shadow. Roof flush ≈0.05, ground-mount ≈1–1.5, canopy ≈2+.
Cell technologydropdownNot specified (default c-Si)mono-Si / poly-Si / PERC / HJT / TOPCon / IBC / amorphous-Si / CdTe / CIGS / multi-junction / Other. Drives spectral coefficients and LID/degradation defaults. Selecting multi-junction (HCPV) reveals the concentrator group and locks the tracker to two-axis.
Widthnumber · m—Module width. Required: the layout and shading engine needs real geometry, and STC efficiency is derived from the area when you leave it blank.
Heightnumber · m—Module height. Required, same reasons as Width.
Bypass diodesnumber0 (engine assumes 3)Substrings in the module — 3 on virtually every crystalline module, 4 on 96-cell ones. Two or more enables per-substring partial-shading modelling and lets a 3-D shading bake be consumed.
Bypass diode Vfnumber · V0 (model default)Forward voltage drop of the bypass diode (0.45 Schottky, 0.7 silicon). Used by the partial-shading mismatch model.

Panel editor — mounting, tracking & IV model

Field / ControlType & unitDefaultWhat it does & how to set it
MountingdropdownFree mounting (ground / carport)Free mounting or Building-integrated (BIPV). Sets the module's own Faiman thermal regime (Uc = 29 free, 15 building-integrated); it does not change the PVGIS request. A polygon that declares its own BIPV mode or On water on Map overrides it.
Tracker typedropdownFixedFixed / Single-axis, horizontal N–S / Two-axis / Single-axis, vertical / Single-axis, horizontal E–W / Single-axis, tilted. Drives the tracker physics and the PVGIS request: a fixed plane, a two-axis tracker, or a single-axis tracker turning about a horizontal axis. A zone takes it, with the strategy, rotation limit, backtracking GCR and wind stow, when the module is assigned to it on Map; every single-axis choice turns about a horizontal axis along the zone's azimuth, and on a PVGIS run an axis within 45° of east–west gets a horizontal east–west tracker's irradiance, any other a horizontal north–south one's (Tracking).
Backtracking GCR (0–1)number0.000Ground coverage ratio = module length / row pitch. Range 0–1. Non-zero activates backtracking (typ. 0.30–0.50), whose cost shows on the cascade's Tracker backtracking / rotation limit line; 0 = ideal tracking, no backtracking.
Enable wind stowcheckboxoffDrives the tracker to stow on high-wind hours (no effect on fixed systems). The two fields below appear only while it is ticked.
Wind-stow thresholdnumber · m/s12.0Wind speed (at 10 m) above which the tracker stows. PVsyst default 12.
Wind-stow anglenumber · °0.0Tracker rotation at stow (not an absolute tilt). 0° = flat, where POA reduces to the global horizontal irradiance.
Tracking strategydropdownAstronomicAstronomic (point at the sun) or Irradiance optimization (re-aim to max POA under a diffuse sky). Single-axis only; the field appears only for a single-axis tracker.
Rotation limitnumber · °blank (no limit)Mechanical Φ min/max of a single-axis tracker — a hardware property, so it clamps every strategy, and its cost shows on the cascade's Tracker backtracking / rotation limit line. Blank = no limit (bounded to ±90°). Typ. ±45 to ±60. Also the tilt the weather-derived soiling and snow losses count the tracker at (45° when blank).
IAM modeldropdownMartin-Ruiz (default)Martin-Ruiz (analytic, Ar=0.157) / ASHRAE (b0) / .PAN profile. The profile is available only when the imported .PAN carries one; a live preview shows the active curve for the other two.
ASHRAE b0number0.05ASHRAE coefficient, IAM=1-b0(1/cosθ-1). Appears only in ASHRAE mode.
IV modeldropdownDe Soto 2006De Soto 2006 (default, Rsh∝1/G) or Irradiance-dependent Rsh (PVsyst). Falls back to linear-γ if extraction fails.
Rsh,0/Rsh,refnumber0 (default 4.0)PVsyst low-light shunt ratio. Range 0–20. Shown only for the PVsyst IV model; 0 = literature default. Typ. 2–8.
Rshexpnumber0 (default 5.5)PVsyst shunt exponent (how fast Rsh→ Rsh,ref as G rises). Range 0–15. 0 = literature default. Typ. 3–8.

Panel editor — concentrator (HCPV)

Visible only when Cell technology is multi-junction; selecting it also locks the tracker to two-axis and pre-fills the optics with the usual ∼500× literature values. A DNI-driven model replaces the flat-plate chain.

Field / ControlType & unitDefaultWhat it does & how to set it
Concentrationnumber · ×500Geometric concentration factor (suns). Range 1–2 000.
Optical efficiencynumber0.85Efficiency of the lens/mirror stack. Range 0–1.
Acceptance anglenumber · °0.7Half-acceptance angle (±°) at 90 % capture. Range 0.1–5.
UF — AM slopenumber-0.02Slope of the spectral utilisation factor above the reference air mass (1.5). Range -0.10 to 0.10. Negative = loss at high air mass (morning/evening).
CPV thermal Unumber · W/m2/K30.0Heat-sink thermal coefficient. Tcell=Tamb+DNI/U. Range 5–100.
Pointing lossnumber0.01Permanent pointing loss (fraction) at the nominal tracking accuracy. Range 0–0.20.

Panel editor — concentrator (LCPV)

Hidden behind the LCPV concentrator optics checkbox (off by default), which unlocks the fields below. A blank numeric field inherits the calibrated per-type default.

Field / ControlType & unitDefaultWhat it does & how to set it
LCPV concentrator opticscheckboxoffPuts low-concentration optics on c-Si cells. Meaningful only with a direct-beam transposition (one of the Perez settings). Gates every field below.
Concentrator typedropdownLinear troughLinear trough / V-trough / CPC (compound parabolic) / Low-ratio Fresnel / Custom. Selects the calibrated per-type optics defaults.
Geometric concentration ×number · ×2.0Cgeo = aperture area / cell area. Range 1–40 (LCPV band ≈1.5–40).
Optical efficiencynumber0 (per type)ηopt (reflectance/transmittance × soiling × interception). Range 0–1. 0 = default by type.
Half-acceptance angle °number · °0 (auto)θa. Range 0–90. 0 = derived from concentration and optics type.
Flux uniformity factornumber0 (per type)1 = perfect; <1 models non-uniform flux. Range 0–1. 0 = default by type.
Acceptance transition δ °number · °0 (per type)Transition width of the acceptance function (sharp for CPC, soft for V-trough). Range 0–30. 0 = default by type.
Diffuse acceptancenumber0 (ideal 1/Cgeo)Fraction of diffuse admitted. Range 0–1. 0 = ideal 1/Cgeo.
Uniformity saturation C ×number · ×0 (per type)Concentration at which the non-uniform-flux penalty saturates. Range 0–100. 0 = default by type (≈20×).
LCPV thermal Ucnumber · W/m2/K0 (inherits)Faiman Uc of the receiver. Range 0–200. 0 = inherit from the polygon (finned trough ≈20–25).
LCPV thermal Uvnumber · W·s/m3/K0 (inherits)Faiman Uv (wind coupling). Range 0–20. 0 = inherit from the polygon.
Max valid C (single-diode) ×number · ×0 (default 15×)Single-diode extrapolation ceiling; beyond it Ceff is clipped and the P90 band widens. Range 0–100.

Map — mounting and ground (per polygon)

Four polygon properties on Map (/map) feed the physics chain directly, and none of them lives on the module.

Field / ControlType & unitDefaultWhat it does & how to set it
BIPVdropdownNot integratedHow the array is built into the building envelope. Not integrated keeps the module's own Mounting. Integrated (insulated back) is a roof-integrated or façade array with no airflow behind the modules (Uc = 15 W/m2/K, the hottest regime). Semi-integrated (ventilated gap) leaves an air gap or duct behind them (Uc = 20). Either choice overrides the module's NOCT, which is measured on an open rack. A vertical façade is the integrated preset at 90° tilt.
On watercheckboxoffFloating (on-water) array. Uses the floating thermal preset (Uc = 32, with wind coupling) which stands in for the cooler, breezier over-water microclimate, and pairs naturally with the Water ground material.
Auto albedo (from imagery)checkbox—Estimates the ground albedo from the map imagery under the array's footprint, re-running after every reshape. Clamped to [0.05, 0.90] and quantised to hundredths. It needs the footprint to be on screen: pan away and the estimate is simply not refreshed, and the panel says so.
Albedonumber0.20Ground reflectance. Feeds both the front-side ground-reflected term and the bifacial rear side. Set it by hand, or pick a Ground material below to set it for you.

Pick a material preset or enter a custom value:

Ground material presets (albedo)Meaning / effect
Asphalt (0.15)Dark paved surface — low reflectance.
Grass / dry soil (0.20)The mixed-ground default.
Concrete (0.30)Bare concrete / dirt.
Red tiles (0.33)Red clay roof tiles — the classic PVsyst rooftop reference.
Brown tiles (0.18)Dark roof tiles.
Sand (0.50)Desert / beach — high reflectance, boosts bifacial gain.
White concrete / membrane (0.60)White flat-roof membrane.
White tiles (0.65)Glazed white / cool-roof tiles.
Water (0.07)Open water (floating PV) — very low reflectance; also cools the modules.
Fresh snow (0.85)Snow-covered ground; the engine also swaps this in automatically on snow-covered hours when Open-Meteo snow data is present.

A carport deck takes neither BIPV nor On water: whatever integration, on-water, field or dome setting its zone still carries, the run treats it as a free-standing deck with its module's own Mounting, and a butterfly deck as two opposed faces of equal area at the deck tilt with no row-to-row shading, so a bifacial module keeps its rear-side gain (The Map & Site Design Tab).

The zone card also shows, read-only, the tracking the zone took from its module — Tracker: Single-axis or Two-axis, nothing on a fixed zone. It changes only when a module is assigned to the zone again (Tracking).

Loss cascade — user-adjustable losses

Each loss below is a row of the Loss cascade card on Production (/production): a percentage you type in the Value column, with the provenance of the figure actually in use named in the Source column. Five rows carry an Auto toggle that defers to the computed source when the data is there.

Field / ControlType & unitDefaultWhat it does & how to set it
Soilingnumber · % (+ Auto)2Progressive fouling between cleanings. Auto = Kimber 2006 from Open-Meteo particulates (monthly).
Snownumber · % (+ Auto)0Snow cover loss. Auto = Marion 2013 from Open-Meteo snowfall (monthly). Defaults to 0 when no weather profile is loaded.
Mismatchnumber · % (+ Auto)1Module-to-module current mismatch in a string. Auto = PVsyst's default tier from the module count, the strings per MPPT input and the technology (0–2.15 %), once modules are placed; with Auto off, the stored percentage.
Module qualitynumber · %1Nameplate vs measured STC power gap. Typ. 0.5–1.5. Appears in every standard loss report.
AC ohmic lossesnumber · % (+ Auto)0.5Joule loss inverter→meter. Auto = I2R integrated over the sized bill-of-materials from the electrical design.
MV transformer lossesnumber · %0Step-up transformer no-load + load loss. Typ. 1.0–1.5 % (dry); 0 if none (residential LV).
HV step-up transformernumber · %0Grid-side HV transformer, opt-in for utility plants. Typ. 0.5–1.5 %.
MV line ohmic lossesnumber · %0Joule loss on the MV link to the delivery point. Typ. 0.1–0.3 %.
Availabilitynumber · %1Maintenance / outage / curtailment downtime. Schedule… opens the schedules card, where an hourly schedule overrides the value entirely.
Grid unavailabilitynumber · %0Weak-grid dips and outages (LVRT/FRT) plus the inverter resync delay. Schedule… for a stochastic or 8760 schedule, which likewise overrides the value. Opt-in for weak-grid sites.
LID (year 1)number · % (+ Auto (tech))1.5 (no cell technology)Light-induced degradation, first year only. Auto-tuned from the inherited cell technology (Jordan-Kurtz 2016): while Auto (tech) is on (the default), the row shows that technology's value, and typing a value unticks it. A run applies that technology's value while Auto (tech) is on, on a project never changed on Production too, and otherwise the typed value (1.5 % when blank) — in the cascade and the cashflow alike; the loss diagram's LID (year 1) line shows the figure a run used. Typ. 1–3 % c-Si.
Auxiliaries (continuous)number · kWh/yr0Constant parasitic AC load (fans, monitoring, tracker motors). A watt×8760 load independent of production.
DC ohmic losses (info)read-only · %—What the run actually charged for DC wiring, integrated over the sized conductors. Change it by re-sizing the cables in the electrical design (Electrical Design & the One-Line Diagram), not here.
Combiner ohmic losses (info)read-only · %—Same, for the combiner-box busbars, fuses and connectors.

Schedules & grid card — reactive power

The Schedules & grid card on Production holds three editors as tabs, reached either directly or from a Schedule… button on the matching cascade row: the availability schedule, the grid-unavailability schedule, and the reactive-power setpoint below.

Field / ControlType & unitDefaultWhat it does & how to set it
Grid / reactive powertaboffThe cosφ setpoint the grid operator requires: off, a fixed value, or a monthly series. A value below 1 clips active power to P=min(Pac,S·cosφ) — shown as its own cascade line — and raises the AC ohmic and transformer copper losses by 1/cos2φ, which is folded into those rows rather than counted twice.