% read data from NREL tower, edited by SKK % missing data = NaN % Note that all wind data is missing if any is missing at a given time. clear all load 1997_hourly_wspd wspd_hr % wspd_hr 8760x7 490560 double % HOUR-MST, % Avg Avg Wind Speed @ 2m [m/s], % Avg Avg Wind Speed @ 5m [m/s], % Avg Avg Wind Speed @ 10m [m/s], % Avg Avg Wind Speed @ 20m [m/s], % Avg Avg Wind Speed @ 50m [m/s], % Avg Avg Wind Speed @ 80m [m/s] miss = isnan(wspd_hr(:,2)); total_missing = sum(miss); disp(['Total missing = ' num2str(total_missing,3)]) % annual average wind speed avg = mean(wspd_hr(~miss,2:7)); disp(' ') disp(['Average wind speed = ' num2str(avg,3)]) % mean wind power density: use density = 1 kg/m^3 for now (Eq. 10-8) % *** YOUR CODE GOES HERE *** % averages for each season % subset by seasons (they overlap slightly so there are 92 days in each) djf = [1:61*24 334*24+1:365*24]; mam = 59*24+1:151*24; jja = 151*24+1:243*24; son = [243*24+1:335*24]; mm = zeros(4,92*24); mm(1,:)=djf; mm(2,:)=mam; mm(3,:)=jja; mm(4,:)=son; season = {'DJF' 'MAM' 'JJA' 'SON'}; % measurement heights % *** YOUR CODE GOES HERE *** % z = ? for k=1:4 wspd_hr_season = wspd_hr(mm(k,:),:); miss = isnan(wspd_hr_season(:,2)); wspd_hr_season_avg = mean(wspd_hr_season(~miss,2:7)) % plot wind speed versus height figure (1) if k==3 kk=4; elseif k==4 kk=3; else kk = k; end subplot(2,2,kk) plot(wspd_hr_season_avg,z,'.-') grid on axis([0 6 0 100]) %set(gca,'XTick',0:1:6) % specify tick marks ylabel('Height (m)') xlabel('Wind Speed (m/s)') title(season{k}) hold on % plot wind speed versus log (height) figure (2) % *** YOUR CODE GOES HERE *** % use semilogy instead of plot % use axis([0 6 1 100]) end hold off