📄 sanity_check_topology.m
字号:
function sanity_check_topology(... output_fn, n_nodes, density, ... n_obstacles, ... l_obstacles, to_vis)% used to convert from TOSSIM's topology format to matlab format%generate a topology file%n_obstacles: number of obstacles%l_obstacles: the length of each obstacle wallDEFAULT_NODE_NO=1000;width = sqrt(n_nodes/density);rand('state',100*(sum(clock)+cputime));n_random_pairs = min(ceil(n_nodes*n_nodes/2),DEFAULT_NODE_NO*10);good_nodes = 1:n_nodes;random_pairs_idx = ceil(rand(n_random_pairs, 2)*length(good_nodes));random_pairs = reshape(good_nodes(random_pairs_idx(:)), n_random_pairs, ... 2);obstacles={};startx = rand(n_obstacles,1).*(width-l_obstacles);starty = rand(n_obstacles,1)*width;h_or_v = rand(n_obstacles,1); %horizontal or verticalfor i=1:n_obstacles if h_or_v(i)>=0.5 obstacles{i}=[startx(i),starty(i); startx(i)+l_obstacles, ... starty(i)]; else obstacles{i}=[starty(i),startx(i); starty(i), startx(i)+ ... l_obstacles]; endendneighbor_dist = load('~/CompactRouting/connectivity.txt');fprintf('coverting to a sparse matrix\n');S = neighbor_dist;tmp = find(S==Inf);S(find(S==Inf))=zeros(length(tmp),1);D = sparse(S);fprintf('finished coverting to a sparse matrix\n');coord = rand(n_nodes,2);%[D coord] = simulate_topology(n_nodes, width, width,1, obstacles);if to_vis visualize(D, coord, [], [], 1,1, obstacles );endif output_fn x = version; if x(1)=='6' save(output_fn, 'D','coord','density','obstacles','width', ... 'random_pairs','n_nodes','n_random_pairs'); else save(output_fn, 'D','coord','density','obstacles','width', ... 'random_pairs','n_nodes','n_random_pairs','-V6'); endend
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -