|
1 | 1 | function [M] = pvl_FSspeccorr(Pwat,AMa,varargin)
|
2 |
| -% pvl_FSspeccorr Spectral mismatch modifier based on precipitable water and |
| 2 | +% pvl_FSspeccorr Spectral mismatch modifier based on precipitable water and |
3 | 3 | % absolute (pressure corrected) airmass.
|
4 |
| -% |
| 4 | +% |
5 | 5 | % Syntax:
|
6 |
| -% [M] = pvl_FSspeccorr(Pwat, AMa, pvModType) |
| 6 | +% [M] = pvl_FSspeccorr(Pwat, AMa, pvModType) |
7 | 7 | % [M] = pvl_FSspeccorr(Pwat, AMa, custCoeff)
|
8 | 8 | %
|
9 | 9 | % Description:
|
10 |
| -% |
11 |
| -% Estimates a spectral mismatch modifier M representing the effect on |
12 |
| -% module short circuit current of variation in the spectral irradiance. |
| 10 | +% |
| 11 | +% Estimates a spectral mismatch modifier M representing the effect on |
| 12 | +% module short circuit current of variation in the spectral irradiance. |
13 | 13 | % M is estimated from absolute (pressure currected) air mass, AMa, and
|
14 | 14 | % precipitable water, Pwat, using the following function:
|
15 | 15 | %
|
16 |
| -% M = coeff(1) + coeff(2)*AMa + coeff(3)*Pwat + coeff(4)*AMa.^.5 |
17 |
| -% + coeff(5)*Pwat.^.5 + coeff(6)*AMa./Pwat.^0.5 (1) |
| 16 | +% M = coeff(1) + coeff(2)*AMa + coeff(3)*Pwat + coeff(4)*AMa.^.5 |
| 17 | +% + coeff(5)*Pwat.^.5 + coeff(6)*AMa./Pwat.^0.5 (1) |
18 | 18 | %
|
19 |
| -% Default coefficients are determined for several cell types with |
20 |
| -% known quantum efficiency curves, by using the Simple Model of the |
21 |
| -% Atmospheric Radiative Transfer of Sunshine (SMARTS) [1]. |
22 |
| -% Using SMARTS, spectrums are simulated with all combinations of AMa |
| 19 | +% Default coefficients are determined for several cell types with |
| 20 | +% known quantum efficiency curves, by using the Simple Model of the |
| 21 | +% Atmospheric Radiative Transfer of Sunshine (SMARTS) [1]. |
| 22 | +% Using SMARTS, spectrums are simulated with all combinations of AMa |
23 | 23 | % and Pwat where:
|
24 | 24 | % * 0.1 cm <= Pwat <= 5 cm
|
25 |
| -% * 1.0 <= AMa <= 5 |
| 25 | +% * 1.0 <= AMa <= 5 |
26 | 26 | % * Spectral range is limited to that of CMP11 (280 nm to 2800 nm)
|
27 | 27 | % * spectrum simulated on a plane normal to the sun
|
28 | 28 | % * All other parameters fixed at G173 standard
|
29 |
| -% From these simulated spectra, M is calculated using the known quantum |
30 |
| -% efficiency curves. Multiple linear regression is then applied to fit |
| 29 | +% From these simulated spectra, M is calculated using the known quantum |
| 30 | +% efficiency curves. Multiple linear regression is then applied to fit |
31 | 31 | % Eq. 1 to determine the coefficients for each module.
|
32 | 32 | %
|
33 | 33 | % Function pvl_FSspeccorr was developed by Mitchell Lee and Alex Panchula,
|
34 |
| -% at First Solar, 2015. Detailed description of spectral correction |
35 |
| -% can be found in [2] |
| 34 | +% at First Solar, 2015. Detailed description of the spectral correction |
| 35 | +% can be found in [2]. Additional validation and testing of the model |
| 36 | +% can be found in [3]. |
36 | 37 | %
|
37 | 38 | % Inputs:
|
38 | 39 | % Pwat - atmospheric precipitable water (cm). Can be
|
39 | 40 | % entered as a vector.
|
40 |
| -% AMa - absolute (pressure corrected) airmass, as a vector of the same |
| 41 | +% AMa - absolute (pressure corrected) airmass, as a vector of the same |
41 | 42 | % length as Pwat
|
42 |
| -% pvModType - a string specifying a cell type. Can be lower or upper case |
| 43 | +% pvModType - a string specifying a cell type. Can be lower or upper case |
43 | 44 | % letters. Admits values of 'cdte', 'monosi'='xsi', 'multisi'='polysi'.
|
44 | 45 | % If provided, this input
|
45 | 46 | % selects coefficients for the following default modules:
|
46 |
| -% 'cdte' - coefficients for First Solar Series 4-2 CdTe modules. |
| 47 | +% 'cdte' - coefficients for First Solar Series 4-2 CdTe modules. |
47 | 48 | % 'monosi','xsi' - coefficients for First Solar TetraSun modules.
|
48 |
| -% 'multisi','polysi' - coefficients for multi-crystalline silicon |
| 49 | +% 'multisi','polysi' - coefficients for multi-crystalline silicon |
49 | 50 | % modules. The module used to calculate the spectral
|
50 |
| -% correction coefficients corresponds to the Mult-crystalline |
51 |
| -% silicon Manufacturer 2 Model C from [3]. |
| 51 | +% correction coefficients corresponds to the Mult-crystalline |
| 52 | +% silicon Manufacturer 2 Model C from [4]. |
| 53 | +% 'cigs' - coefficients for anonymous copper indium gallium selenide |
| 54 | +% PV module. Lower and upper limits of QE are 350 nm and 1300 nm, |
| 55 | +% respectively. Please note that the QE of CIGS modules |
| 56 | +% can vary significantly depending on the PV manufacture and |
| 57 | +% vintage. Spectral Response of module module used to derive |
| 58 | +% CIGS coefficients can be found in [3]. |
| 59 | +% 'asi' - coefficients for anonymous amorphous silicon PV module. |
| 60 | +% Lower and upper limits of QE are 280 nm and 800 nm, |
| 61 | +% respectively. Please note that the QE of a-Si modules |
| 62 | +% can vary significantly depending on the PV manufacture and |
| 63 | +% vintage. Spectral Response of module module used to derive |
| 64 | +% a-Si coefficients can be found in [3]. |
52 | 65 | % custCoeff - allows for entry of user defined spectral correction
|
53 |
| -% coefficients. Coefficients must be entered as a numeric row or |
54 |
| -% column vector of length 6. Derivation of coefficients requires use |
55 |
| -% of SMARTS and PV module quantum efficiency curve. Useful for modeling |
| 66 | +% coefficients. Coefficients must be entered as a numeric row or |
| 67 | +% column vector of length 6. Derivation of coefficients requires use |
| 68 | +% of SMARTS and PV module quantum efficiency curve. Useful for modeling |
56 | 69 | % PV module types which are not included as defaults, or to fine tune
|
57 |
| -% the spectral correction to a particular mono-Si, multi-Si, or CdTe |
| 70 | +% the spectral correction to a particular mono-Si, multi-Si, or CdTe |
58 | 71 | % PV module. Note that the parameters for modules with very
|
59 | 72 | % similar QE should be similar, in most cases limiting the need for
|
60 | 73 | % module specific coefficients.
|
|
67 | 80 | % to electrical current.
|
68 | 81 | %
|
69 | 82 | % References:
|
70 |
| -% [1] Gueymard, Christian. SMARTS2: a simple model of the atmospheric |
71 |
| -% radiative transfer of sunshine: algorithms and performance |
| 83 | +% [1] Gueymard, Christian. SMARTS2: a simple model of the atmospheric |
| 84 | +% radiative transfer of sunshine: algorithms and performance |
72 | 85 | % assessment. Cocoa, FL: Florida Solar Energy Center, 1995.
|
73 | 86 | % [2] Lee, Mitchell, and Panchula, Alex. "Spectral Correction for
|
74 |
| -% Photovoltaic Module Performance Based on Air Mass and Precipitable |
75 |
| -% Water." IEEE Photovoltaic Specialists Conference, Portland, 2016 |
76 |
| -% [3] Marion, William F., et al. User's Manual for Data for Validating |
| 87 | +% Photovoltaic Module Performance Based on Air Mass and Precipitable |
| 88 | +% Water." IEEE Photovoltaic Specialists Conference, Portland, 2016 |
| 89 | +% [3] Schweiger, M. and Hermann, W, Influence of Spectral Effects on |
| 90 | +% Energy Yield of Different PV Modules: Comparison of Pwat and |
| 91 | +% MMF Approach, TUV Rheinland Energy GmbH report 21237296.003, January 2017 |
| 92 | +% [4] Marion, William F., et al. User's Manual for Data for Validating |
77 | 93 | % Models for PV Module Performance. National Renewable Energy Laboratory, 2014.
|
78 | 94 | % http://www.nrel.gov/docs/fy14osti/61610.pdf
|
79 | 95 |
|
80 | 96 |
|
81 |
| - |
82 |
| -% Correct for AMa and Pwat having transposed dimensions |
| 97 | +% Correct for AMa and Pwat having transposed dimensions |
83 | 98 | if isrow(AMa)
|
84 | 99 | AMa = AMa';
|
85 | 100 | end
|
|
108 | 123 | % *** AMa ***
|
109 | 124 | % Replace Extremely High AM with AM 10 to prevent model divergence
|
110 | 125 | % AM > 10 will only occur very close to sunset
|
111 |
| -if max(AMa) > 10 |
112 |
| - AMa(AMa > 10) = 10; |
| 126 | +if max(AMa) > 10 |
| 127 | + AMa(AMa > 10) = 10; |
113 | 128 | end
|
114 | 129 |
|
115 | 130 | % Warn user about AMa data that is exceptionally low
|
116 | 131 | if min(AMa) < 0.58
|
117 |
| - warning(['Exceptionally low air mass: ',... |
118 |
| - 'model not intended for extra-terrestrial use']) |
119 |
| - % pvl_absoluteairmass(1,pvl_alt2pres(4340)) = 0.58 |
120 |
| - % Elevation of Mina Pirquita, Argentian = 4340 m. Highest elevation city |
121 |
| - % with population over 50,000. |
| 132 | + warning(['Exceptionally low air mass: ',... |
| 133 | + 'model not intended for extra-terrestrial use']) |
| 134 | + % pvl_absoluteairmass(1,pvl_alt2pres(4340)) = 0.58 |
| 135 | + % Elevation of Mina Pirquita, Argentian = 4340 m. Highest elevation city |
| 136 | + % with population over 50,000. |
122 | 137 | end
|
123 | 138 |
|
124 | 139 | % If user input is a character array, use appropriate default coefficients.
|
|
131 | 146 | % For modeling the performance of earlier CdTe module series,
|
132 | 147 | % use the coefficients that are commented out
|
133 | 148 | % [0.79418,-0.049883,-0.013402,0.16766,0.083377,-0.0044007];
|
134 |
| - coeff = [0.86273, -0.038948, -0.012506, 0.098871, 0.084658, -0.0042948]; |
| 149 | + coeff = [0.86273, -0.038948, -0.012506, 0.098871, 0.084658, -0.0042948]; |
135 | 150 | case {'monosi','xsi'}
|
136 | 151 | % Coefficients for First Solar TetraSun Modules
|
137 |
| - coeff = [0.85914, -0.020880, -0.0058853, 0.12029, 0.026814, -0.0017810]; |
| 152 | + coeff = [0.85914, -0.020880, -0.0058853, 0.12029, 0.026814, -0.0017810]; |
138 | 153 | case {'polysi','multisi'}
|
139 | 154 | % Coefficients for Multi-Si: Manufacturer 2 Model C
|
140 | 155 | coeff = [0.84090, -0.027539, -0.0079224, 0.13570, 0.038024, -0.0021218];
|
| 156 | + case 'cigs' |
| 157 | + coeff = [0.85252, -0.022314, -0.0047216, 0.13666, 0.013342, -0.0008945]; |
| 158 | + case 'asi' |
| 159 | + coeff = [1.12094, -0.047620, -0.0083627, -0.10443, 0.098382,-0.0033818]; |
141 | 160 | otherwise
|
142 | 161 | error('Incorrect module type for use of default parameters')
|
143 | 162 | end
|
144 |
| -% User input coefficients |
| 163 | +% User input coefficients |
145 | 164 | else
|
146 | 165 | coeff = varargin{1};
|
147 | 166 | end
|
148 | 167 |
|
149 | 168 | % Evaluate Spectral Shift
|
150 |
| -M = coeff(1) + coeff(2)*AMa + coeff(3)*Pwat + coeff(4)*AMa.^.5 + coeff(5)*Pwat.^.5 + coeff(6)*AMa./Pwat.^0.5; |
| 169 | +M = coeff(1) + coeff(2)*AMa + coeff(3)*Pwat + coeff(4)*AMa.^.5 + coeff(5)*Pwat.^.5 + coeff(6)*AMa./Pwat.^0.5; |
151 | 170 | end
|
152 | 171 |
|
0 commit comments