Skip to main content

Summary

When modules in a string are partially shaded, electrical mismatch losses occur beyond the geometric beam shading. Shaded modules produce less current than unshaded modules, and because strings operate in series, the lowest-current module limits the entire string’s output. PlantPredict implements four electrical shading models: None (no mismatch losses), Linear (electrical loss equals beam shading), Fractional (fixed percentage loss when any shading occurs), and Step-Fractional (loss quantized by bay partitions). The electrical shading fraction is applied as an additional loss factor after geometric shading.

Inputs

NameSymbolUnitsDescription
Electrical Shading ModelSelection: None (0), Linear (1), Fractional (2), Step-Fractional (3)
Beam Shaded Fractionfbeamf_{beam}Geometric beam shading fraction per bay (0-1)
Fractional Shading PercentPfracP_{frac}%Loss percentage for Fractional model (default: 50%)
Number of Bay FractionsNfracN_{frac}Partitions per bay for Step-Fractional model

Outputs

NameSymbolUnitsDescription
Electrical Shading Fractionfelecf_{elec}Electrical mismatch loss fraction (0-1)
Total Shading Lossftotalf_{total}Combined beam and electrical shading (0-1)

Detailed Description

Model 0: None

No electrical mismatch losses are calculated. Only geometric beam shading is applied. felec=0f_{elec} = 0 Use cases:
  • Conservative baseline analysis
  • Systems with module-level power electronics (MLPE)
  • Preliminary design phase

Model 1: Linear

Electrical shading fraction equals the beam shading fraction. This assumes electrical losses scale linearly with shaded area. felec=fbeamf_{elec} = f_{beam} Physical interpretation: Assumes each shaded module in a string reduces string current proportionally to its shaded fraction. This is a simplified approximation that underestimates mismatch losses in non-uniform shading conditions. Use cases:
  • General engineering analysis
  • Uniform shading patterns
  • Conservative estimate of mismatch losses

Model 2: Fractional

When any shading occurs (threshold: fbeam>0.01f_{beam} > 0.01), a fixed fractional loss is applied: felec={1(1fbeam)×(1Pfrac/100),if fbeam>0.010,otherwisef_{elec} = \begin{cases} 1 - (1 - f_{beam}) \times (1 - P_{frac}/100), & \text{if } f_{beam} > 0.01 \\ 0, & \text{otherwise} \end{cases} where PfracP_{frac} is the user-specified fractional shading percentage (default: 50%). Expanded form: felec=fbeam+(1fbeam)×Pfrac100if fbeam>0.01f_{elec} = f_{beam} + (1 - f_{beam}) \times \frac{P_{frac}}{100} \quad \text{if } f_{beam} > 0.01 Physical interpretation: This model assumes that when partial shading occurs, the electrical mismatch loss is disproportionately higher than the geometric shading. The fractional parameter represents the additional loss beyond beam shading. Example: If fbeam=0.10f_{beam} = 0.10 (10% beam shading) and Pfrac=50%P_{frac} = 50\%: felec=0.10+(10.10)×0.50=0.55f_{elec} = 0.10 + (1 - 0.10) \times 0.50 = 0.55 Total shading loss is 55% (10% from beam shading + 45% from electrical mismatch). Use cases:
  • Systems with severe mismatch losses
  • Non-uniform shading patterns
  • Worst-case scenario analysis
Note: This model is described as “not physical” in the source code, meaning it does not derive from first-principles electrical modeling but rather represents an empirical upper bound on mismatch losses.

Model 3: Step-Fractional

The bay is divided into NfracN_{frac} partitions (fractions). When shading affects any portion of a partition, the entire partition is considered lost. This creates quantized (stepped) electrical losses. Partition Calculation: fpartition=1Nfrac×Nfrac×fbeamf_{partition} = \frac{1}{N_{frac}} \times \lceil N_{frac} \times f_{beam} \rceil where \lceil \cdot \rceil is the ceiling function (round up to nearest integer). Electrical Shading Fraction: felec={fpartition,if fbeam>0.0050,otherwisef_{elec} = \begin{cases} f_{partition}, & \text{if } f_{beam} > 0.005 \\ 0, & \text{otherwise} \end{cases} Physical interpretation: Represents string/bay architecture where modules are grouped into partitions with bypass diodes or optimization. When any module in a partition is shaded, the entire partition operates at reduced output. Example: If Nfrac=4N_{frac} = 4 (bay divided into 4 partitions) and fbeam=0.15f_{beam} = 0.15 (15% beam shading): fpartition=14×4×0.15=14×0.6=14×1=0.25f_{partition} = \frac{1}{4} \times \lceil 4 \times 0.15 \rceil = \frac{1}{4} \times \lceil 0.6 \rceil = \frac{1}{4} \times 1 = 0.25 Total shading loss is 25% (one full partition lost). Use cases:
  • Systems with defined string partitioning
  • Module-level or optimizer-based systems
  • Bay-level bypass diode configurations
Sensitivity to NfracN_{frac}:
  • Nfrac=1N_{frac} = 1: Entire bay lost if any shading (worst case)
  • Nfrac=2N_{frac} = 2: Half-bay partitions
  • Nfrac=4N_{frac} = 4: Quarter-bay partitions (typical)
  • NfracN_{frac} \to \infty: Approaches linear model

Application to Energy Calculations

The electrical shading fraction is an additional loss beyond beam shading: ftotal=max(fbeam,felec)f_{total} = \max(f_{beam}, f_{elec}) This ensures that total shading loss is at least as large as the beam shading loss (electrical losses cannot reduce total losses). The total shading factor applied to irradiance is: Utotal=1ftotalU_{total} = 1 - f_{total} Calculation Sequence:
  1. Calculate geometric beam shading: fbeamf_{beam}
  2. Apply beam shading to POA irradiance: Ibeam,shaded=Ibeam,POA×(1fbeam)I_{beam,shaded} = I_{beam,POA} \times (1 - f_{beam})
  3. Calculate electrical shading: felec=g(fbeam,model parameters)f_{elec} = g(f_{beam}, \text{model parameters})
  4. Compute total shading: ftotal=max(fbeam,felec)f_{total} = \max(f_{beam}, f_{elec})
  5. Apply electrical effect to DC power calculation (after IAM, spectral, temperature corrections)

Aggregation Across Bays

For site-level shading results, bay-level electrical shading fractions are aggregated: Average per Inverter: fˉelec,inv=iinverterAifelec,iiinverterAi\bar{f}_{elec,inv} = \frac{\sum_{i \in \text{inverter}} A_i \cdot f_{elec,i}}{\sum_{i \in \text{inverter}} A_i} where AiA_i is the area of bay ii. Average per Timestamp: fˉelec,t=i=1NbaysAifelec,ii=1NbaysAi\bar{f}_{elec,t} = \frac{\sum_{i=1}^{N_{bays}} A_i \cdot f_{elec,i}}{\sum_{i=1}^{N_{bays}} A_i} Aggregation is area-weighted to account for different bay sizes.

References

  • Deline, C., Sekulic, W., Stein, J., Barkaszi, S., Yang, J., & Kahn, S. (2014). Evaluation of maxim module-integrated electronics at the DOE Regional Test Centers. Proceedings of the IEEE 40th Photovoltaic Specialist Conference, 3259–3264.
  • Stein, J. S., Hansen, C. W., & Reno, M. J. (2012). The Sandia Array Performance Model (SAPM). SAND2012-2389, Sandia National Laboratories.
  • King, D. L., Boyson, W. E., & Kratochvil, J. A. (2004). Photovoltaic array performance model. SAND2004-3535, Sandia National Laboratories.