Metr 51 scientific computing ii lecture 9 lidar plotting techniques
1 / 19

Metr 51: Scientific Computing II Lecture 9 : Lidar Plotting Techniques - PowerPoint PPT Presentation

  • Uploaded on

Metr 51: Scientific Computing II Lecture 9 : Lidar Plotting Techniques. Allison Charland 3 April 2012. Reminder. Two weeks of Matlab left! Matlab Final will be on April 19 th Then on to HTML and creating a personal webpage. Doppler Lidar Theory. Movement of aerosols by wind.

I am the owner, or an agent authorized to act on behalf of the owner, of the copyrighted work described.
Download Presentation

PowerPoint Slideshow about ' Metr 51: Scientific Computing II Lecture 9 : Lidar Plotting Techniques' - london

An Image/Link below is provided (as is) to download presentation

Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.

- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -
Presentation Transcript
Metr 51 scientific computing ii lecture 9 lidar plotting techniques

Metr 51: Scientific Computing IILecture 9: Lidar Plotting Techniques

Allison Charland

3 April 2012


  • Two weeks of Matlab left!

  • Matlab Final will be on April 19th

  • Then on to HTML and creating a personal webpage

Doppler Lidar Theory

Movement of aerosols by wind

Infrared light reflected from aerosols

Emitted infrared light

The shift in frequency of the return echo is related to the movement of aerosols. The faster the aerosols move, the larger the shift in frequency. From this, the wind speed relative to the light beam can be measured.

Doppler wind lidar
Doppler wind lidar

  • Halo Photonics, Ltd. Stream Line 75

  • 1.5 micron

  • Eye-safe

  • 75 mm aperture all-sky optical scanner

  • Min Range: 80 m

  • Max Range: 10km

  • 550 user defined range gates (24 m)

  • Temporal resolution: 0.1-30 s

  • Measurements:

    • Backscatter Intensity

    • Doppler Radial Velocity

Lidar scanning techniques
Lidar Scanning Techniques




  • Multiple elevation and azimuth angles can be adjusted to create different types of scans.

    • DBS (Doppler Beam Swinging):

      • Wind Profile

    • Stare: Vertically pointing beam

    • RHI (Range Height Indicator):

      • Fixed azimuth angle with varying elevation angles

    • PPI (Plan Position Indicator):

      • Fixed elevation angle with varying azimuth angles

Dbs data
DBS Data

Date & Time(UTC)

Height (m AGL)

Wind Direction & Wind Speed (ms-1)

  • Remove 225 heading

  • Use load to read in the data then create wind speed and direction profiles.

  • What if you have multiple files that you want to plot using one code?

Plotting multiple profiles
Plotting multiple profiles

  • You have three files that you want to plot: wind_profile_0900PST.txt, wind_profile_1200PST.txt, and wind_profile_1500PST.txt

  • Create a character string array called filenames

    filenames = [‘wind_profile_0900PST.txt’;…


    Hint: filenames must all be the same character length

  • Create a variable for the number of files you have

    Num = 3;

Plotting multiple profiles1
Plotting multiple profiles

  • Now you want to create a for loop that will go from 1 to the number of files you have and load and plot each file.

  • Each time you loop through you want to reset the filename that is being read.

  • Set your values of height, wind direction and wind speed.

  • Plot your variables.

  • Clear variables so that the next time through the loop they will be replaced.

Plotting multiple profiles2
Plotting multiple profiles

for i =1:Num

f = filenames(i,:);

load f;

data = f;

clear f;

height = data(:,1);

wind_dir = data(:,2);

wind_speed = data(:,3);


plot(wind_dir, height, ‘+k’); hold on;

plot(wind_speed, height, ‘k’); hold on;

clear data; clear height; clear wind_dir; clear wind_speed;

end %for

Plotting multiple profiles3
Plotting multiple profiles

  • To plot each profile as a separate figure replace figure(1);clf; with figure(i);clf;

  • To save each figure as a jpeg, use saveasafter your figure is complete

    figure_name = [‘profile_’i’.jpg’];


  • Each time through the loop the figure_name will be reset and saved with the new number i.

Stare lidar data
Stare Lidar Data

Date & Time(UTC) There is one data file per hour

Stare data
Stare Data

  • The load command cannot be used for stare data because the number of columns changes throughout the data file from 3 to 4 after each scan.

  • Fastest way to plot stare data is using xlsread

  • This reads in an excel spreadsheet then later using loops the data can be separated into specific variables.

  • The first step is to load the stare data file into excel space delimited then save it as an excel file with the extension .xlsx (for Microsoft 2010).

Stare data1
Stare Data

  • Before loading the data, set up the height array.

  • Heights will always be the same throughout a stare file.

  • height = 0:225;

  • height = (height + 0.5)*24;

  • height = height';

Stare data2
Stare Data

  • Read in the datafile

  • data = xlsread(filename.xlsx);

  • j = hour; %The hour of the particular data file

  • fprintf('Completed %2.0f \n', j)

  • Set conditions for start of data columns

  • c1=2;

  • if j > 1

  • k=17;

  • p=18;

  • elseif j==1

  • k=9;

  • p=10;

  • end

  • if j >= 4

  • c1=1;

  • end %if

  • if j >= 18

  • c1=2;

  • end %if

Splitting the data
Splitting the data

count = 0;

n = 2100;

for i=1:n

count = count +1;

time(count) = data(k,c1);


V = data(p:p+100,3)';

V_2 = data(p+100:p+224,2)';

V_new(count,:) = [V V_2];

B = data(p:p+100,4)';

B_2 = data(p+100:p+224,3)';

B_new(count,:) = [B B_2];


end %for

fprintf('Completed split \n')

Stare data3
Stare Data

  • Change time from UTC to PST

  • Depends on Daylight Savings

  • for w = 1:length(time)

  • if time(w) < 7;

  • time(w) = 24 - (7-time(w));

  • else

  • time(w) = time(w)-7;

  • end %if

  • end %for

Transpose the data
Transpose the data

Transpose the data

B_new = B_new';

V_new = V_new';

time =time' ;

Plotting stare data
Plotting Stare Data


pcolor(time,height,V_new);hold on;

shading interp;

ylim([0 2400])

xlabel('Time (PST) ');

ylabel('Height (m AGL)');

title('Vertical Velocity (m s^-^1)')

caxis([-5 4])


Show Example

Stare data4
Stare Data

  • The example shown is the raw data.

  • A filter algorithm can be used to eliminate invalid data including near the surface and aloft where the signal is no longer retrieved.

  • The algorithm code will be available on D2L.

  • Multiple files could be read in and plotting using the same technique as earlier to plot multiple wind profiles.

  • The problem is that the figures created will have so much detail that there may be issues copying them.