Calculating the greater circle distance from source point to centre of all grid cells in a domain/reference grid
    5 views (last 30 days)
  
       Show older comments
    
I am trying to calculate the greater circle distance in metres from a source point (specified as a latitude/longitude) to the centre of all grid cells within a domain (or reference grid - calculated using makerefmat). 
Would anyone be able to help me with this? 
% Source point location (decimal degrees)
sourcelon = -7.340612; 
sourcelat = 57.005755;
% Reference grid
% Domain size 
DDX = 4800; % Varation in the domain size for X 
DDY = 5760; % Variation in the domain size for Y 
% Define limits of latitude and longitude for the area of interest
latlim = [53.5, 59.5]; 
lonlim = [-9, -4];
% Create vectors of latitude and longitude which are divided by the same 
% interval sizes as the domain
latvec = linspace(latlim(1),latlim(2),DDY); 
lonvec = linspace(lonlim(1),lonlim(2),DDX); 
% To define dy and dx, divide the initial latitude minus the final latitude
% (or longitude) by the number of elements in the domain array i.e.DDX or DDY 
dy = abs(latlim(1)-latlim(2))/DDY; %dy = difference in latitude (y) between pixels in successive rows
% (degrees) 
dx = abs(lonlim(1)-lonlim(2))/DDX; % dx = difference in longitude (x) between pixels in successive columns
% (degrees) 
% Specify the coordinates for the left hand corner of the map domain 
x11 = lonlim(1);
y11 = latlim(1);
% Create the referenced matrix grid (R) 
R = makerefmat(x11, y11, dx, dy);
0 Comments
Answers (0)
See Also
Categories
				Find more on Resizing and Reshaping Matrices in Help Center and File Exchange
			
	Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!