# pvl_sapm

Sandia Array Performance Mode.

## Contents

- Syntax
- Description
- Inputs
- Outputs
- Example
- References
- See Also

## Syntax

`Result = pvl_sapm(Module, Ee, celltemp)`

## Description

The Sandia Array Performance Model (SAPM) [1] generates 5 points on a PV module's I-V curve: short circuit, open circuit, maximum power, and points halfway between 0 and Vmp and Vmp and Voc.

## Inputs

- `Module` - a structure defining the SAPM performance parameters.
- `Ee` - The effective irradiance incident upon the module (suns).
- `celltemp` - The cell temperature (degrees C).

The model coefficients that are required in the `Module` struct are:

- `Module.c` - 1x8 vector with the C coefficients, i.e., Module.c(1) = C0, Module.c(2) = C1, etc.
- `Module.Isc0` - Short circuit current at reference condition (amps).
- `Module.Imp0` - Maximum power current at reference condition (amps).
- `Module.Voc0` - Open circuit voltage at references conditions (V).
- `Module.Vmp0` - Maximum power voltage at references conditions (V).
- `Module.Ix0` = Current, in amperes, of the point at 0.5*Voc at reference conditions.
- `Module.Ixx0` = Current, in amperes, of the point at 0.5*(Voc0+Vmp0) at reference conditions.
- `Module.AlphaIsc` - Short circuit current temperature coefficient at reference condition (1/C).
- `Module.AlphaImp` - Maximum power current temperature coefficient at reference condition (1/C).
- `Module.BetaVoc` - Open circuit voltage temperature coefficient at reference condition (V/C).
- `Module.mBetaVoc` - Coefficient providing the irradiance dependence for the BetaVoc temperature coefficient at reference irradiance (V/C).
- `Module.BetaVmp` - Maximum power voltage temperature coefficient at reference condition.
- `Module.mBetaVmp` - Coefficient providing the irradiance dependence for the BetaVmp temperature coefficient at reference irradiance (V/C).
- `Module.n` - Empirically determined "diode factor" (dimensionless).
- `Module.Ns` - Number of cells in series in a module's cell string(s).

## Outputs

- `Result` - A structure with vectors of the same size as `Ee`:
- `Result.Isc` - Short circuit DC current (A).
- `Result.Imp` - Max power DC current (A).
- `Result.Ix` - DC current at a point halfway between O and Vmp (A).
- `Result.Ixx` - DC current at a point halfway between Vmp and Voc (A).
- `Result.Voc` - Open circuit DC voltage(V).
- `Result.Vmp` - Max power DC voltage (V).
- `Result.Pmp` - Max DC power (W).

## Example

This example shows the use of the Sandia PV Array Performance Model with a Canadian Solar 220 W module at ~1,000 W/m^2 and a cell temperature of 70 deg C.

    Module = pvl_sapmmoduledb(123,'SandiaModuleDatabase_20120925.xlsx',1)

    Module =

      struct with fields:

            name: 'Canadian Solar CS5P-220M'
         vintage: 2009
        material: 'c-Si'
            area: 1.7010
        AlphaIsc: 3.9700e-04
        AlphaImp: 1.8100e-04
            Isc0: 5.0911
            Imp0: 4.5463
            Voc0: 59.2608
            Vmp0: 48.3156
         BetaVoc: -0.2170
         BetaVmp: -0.2355
        mBetaVoc: 0
        mBetaVmp: 0
              Ns: 96
              Np: 1
            delT: 3
              fd: 1
               n: 1.4032
             Ix0: 4.9760
            Ixx0: 3.1880
          a_wind: -3.4064
          b_wind: -0.0842
               c: [1.0128 -0.0128 0.2793 -7.2446 0.9964 0.0036 1.1554 -0.1554]
               a: [-6.9304e-05 0.0017 -0.0158 0.0681 0.9284]
               b: [-1.3590e-09 2.1120e-07 -1.2460e-05 3.1030e-04 -0.0024 1]

    Ee = 1; %suns
    celltemp = 70; % deg C
    Result = pvl_sapm(Module, Ee, celltemp)

    Result =

      struct with fields:

        Isc: 5.1821
        Imp: 4.5833
        Voc: 49.4976
        Vmp: 37.7186
         Ix: 5.0649
        Ixx: 3.2450
        Pmp: 172.8766

## References

[1] King, D. et al, 2004, Sandia Photovoltaic Array Performance Model, SAND2004-3535, Sandia National Laboratories, Albuquerque, NM. Available at `SAPM`

## See Also

`pvl_sapmmoduledb`, `pvl_sapmcelltemp`

Copyright 2014 Sandia National Laboratories