フィルターのクリア

Generating Geographical matrix using Loop

2 ビュー (過去 30 日間)
Oday Shahadh
Oday Shahadh 2017 年 2 月 6 日
コメント済み: KSSV 2017 年 2 月 6 日
I am trying to generate a 2D matrix for the geographical Longitude and Latitude, for the ranges below:
Φ = [0,Δφ,2Δφ, ..., 179Δφ] Θ = [0,Δθ,2Δθ, ..., 287Δθ] . I tried this
long=linspace(0,360,288); lat=linspace(0,180,180); res=zeros(288,180); for i=0:1.25:length(long) for lat=0:1:length(long) res(long,lat)=[long lat]; end end but I got this error
Subscript indices must either be real positive integers or logicals.
Error in odayalbedo (line 12) res(long,lat)=[long lat];
Any suggestions??? Thanks in advance
  1 件のコメント
Oday Shahadh
Oday Shahadh 2017 年 2 月 6 日
編集済み: KSSV 2017 年 2 月 6 日
Sorry I made a mistake when copying the code
long=linspace(0,360,288);
lat=linspace(0,180,180);
res=zeros(288,180);
for i=1:1.25:length(long)
for j=1:1:length(long)
res(i,j)=[long(i) lat(j)];
end
end
and I got this error
Subscripted assignment dimension mismatch.
Error in odayalbedo (line 12) res(i,j)=[long(i) lat(j)];
Thanks

サインインしてコメントする。

採用された回答

KSSV
KSSV 2017 年 2 月 6 日
Are you looking for this?
M = 288 ; N = 180 ;
long=linspace(0,360,M);
lat=linspace(0,180,N);
[Long,Lat] = meshgrid(long,lat) ;
You cannot save [long(i) lat(j)] into res(i,j). res(i,j) needs a single number and [long(i) lat(j)] are two numbers. Else there should be some other relation between long and lat.
  2 件のコメント
Oday Shahadh
Oday Shahadh 2017 年 2 月 6 日
why I got the size :
size([Long,Lat])
ans =
180 576
KSSV
KSSV 2017 年 2 月 6 日
[Long,Lat] this joins Long, Lat matrices of each size 180x288 to size 180x576.

サインインしてコメントする。

その他の回答 (0 件)

タグ

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by