フィルターのクリア

Info

この質問は閉じられています。 編集または回答するには再度開いてください。

I need to plot clustering coefficient for varying value of p(fraction of directional beamforming antenna from total n and all other nodes are omnidirectional ) , although i am getting value for particular p but don't know how to plot for varying p

1 回表示 (過去 30 日間)
bhavesh k.pacherwal
bhavesh k.pacherwal 2017 年 6 月 10 日
閉鎖済み: MATLAB Answer Bot 2021 年 8 月 20 日
n = 300; % no. of nodes A = 100; % area of bounded region r1 = 5; % transmission range of main lobe assuming equal range for each node r2 = 1; % transmission range of side lobe assuming equal range for each node r3 = 2; % omnidirectional range nc = sqrt(A)*(rand(n,2)); % random coordinates of each node assuming bounded area is square m = 4; % no. of elements in ULA antenna theta_b = rad2deg(pi/6); % boresight direction b = zeros(n,n); %empty matrix adj = zeros(n,n); k = zeros(1,n); t = zeros(1,n); pt = 60; p =.5; if p==0 for l =1:n for v = 1:n dist0 = sqrt((nc(m,1)-nc(f,1))^2+(nc(m,2)-nc(f,2))^2); if dist0<r3 && dist0>0 b(l,v) = 1; b(v,l) = 1; adj(l,v) = dist0; adj(v,l) = dist0;
end end end end dn = 300*p; x = randi([1,n],dn,1); % value in column matrix may repeat g = zeros(dn,2); for s = 1:dn g(s,:) = nc(x(s,1),:); end
for i = 1:dn
for j = 1:n
dist = sqrt((nc(j,1)-g(i,1))^2+(nc(j,2)-g(i,2))^2);
pr = pt/dist^2;
if pr>25 % First constraint for ULA model
if dist < r1 && abs(nc(j,1))>abs(g(i,1)) % distance between nodes cannot exceed its transmission range
ang = atand((nc(j,2)-g(i,2))/(nc(j,1)-g(i,1)))
if ang>rad2deg(-7*pi/36) && ang<rad2deg(7*pi/36)
b(x(i,1),j) = 1;
b(j,x(i,1)) = 1;
adj(x(i,1),j) = dist;
adj(j,x(i,1)) = dist;
k(j) = ang; %array showing values of different ang's
end
end
if abs(nc(j,1))<abs(g(i,1)) % third constraint for side lobe
if dist<r2
ang1 = atand((g(i,2)-nc(j,2))/(g(i,1)-nc(j,2)));
ang1 = ang1+rad2deg(pi);
if rad2deg(11*pi/12)<ang1 && ang1<rad2deg(13*pi/12) && ang1~=(rad2deg(pi/2)|rad2deg(-pi/2))
b(x(i,1),j) = 1;
b(j,x(i,1)) = 1;
adj(x(i,1),j) = dist;
adj(j,x(i,1)) = dist;
t(j) = ang1 %array showing values of different ang1's
end
end
end
else
continue ;
end
end
end
if p~=1
for f = 1:n
c=0;
for g =1:dn
if f~=x(g,1)
c=c+1;
end
end
if c==dn
for m = 1:n
dist1 = sqrt((nc(m,1)-nc(f,1))^2+(nc(m,2)-nc(f,2))^2);
if dist1<r3 && dist1>0
b(f,m) = 1;
b(m,f) = 1;
adj(f,m) = dist1;
adj(m,f) = dist1;
end
end
end
end
end
clustering(adj)

回答 (0 件)

この質問は閉じられています。

Community Treasure Hunt

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

Start Hunting!

Translated by