This example uses May 18th, 2014 irradiance data collected at Sandia National Laboratories in Livermore, CA to demonstrate use of the wavelet variability model (WVM).

## Contents

This file contains two vectors: “GHI” which is the GHI measurements, and “dt” which is the timestamps.

```Livermore=load('example_data\Livermore_Sample_GHI.mat');
```

## define variables

First, define the irradiance sensor variables.

```irr_sensor.irr=Livermore.GHI; %measured irradiance
irr_sensor.time=Livermore.dt; %timestamps
irr_sensor.Lat=37.676208; %sensor latitude
irr_sensor.Lon=-121.703118; %sensor longitude
irr_sensor.alt=200; %sensor altitude (in meters)
irr_sensor.tilt=0; %tilt = 0 for GHI sensor
irr_sensor.azimuth=0; % azimuth = 0 for GHI sensor
irr_sensor.UTCoffset=-8; %sensor UTC offset
```

Then define the PV plant details.

```plantinfo.tilt=37; %assume modules tilted 37 degrees (approximately latitude tilt)
plantinfo.azimuth=180; %assume modules facing south
plantinfo.type='square'; %assume a square-shaped PV plant
plantinfo.MW=30; %assume a 30MW plant
plantinfo.PVdensity=41; %41 W/m2 = 1MW per 6 acres, which is a standard rule of thumb
```

Finally, define the cloud speed.

```cloud_speed=10; %assume cloud speed of 10 m/s
```

## run WVM

```[smooth_irradiance,other_outputs]=pvl_WVM(irr_sensor,plantinfo,cloud_speed);
```

## plot the WVM results

Zoomed out plot comparing the measured GHI to the WVM output of smoothed POA irradiance.

```plot(irr_sensor.time,irr_sensor.irr,'b',irr_sensor.time,smooth_irradiance,'r');
legend('measured GHI','WVM smoothed POA');
set(gca,'xtick',floor(nanmean(irr_sensor.time)):1/24:ceil(nanmean(irr_sensor.time)));
datetick('x','HH','keepticks','keeplimits');
xlabel('time of day [HH]');
axis tight
title(datestr(nanmean(irr_sensor.time),'mmm-dd-yyyy'))
``` Zoomed in plot comparing the measured GHI to the WVM output of smoothed POA irradiance.

```plot(irr_sensor.time,irr_sensor.irr,'b',irr_sensor.time,smooth_irradiance,'r');
legend('measured GHI','WVM smoothed POA');
set(gca,'xtick',floor(nanmean(irr_sensor.time)):1/(24*12):ceil(nanmean(irr_sensor.time)));
datetick('x','HH:MM','keepticks','keeplimits');
xlabel('time of day [HH:MM]'); 