From 9eff9454acc46a3ec45f8738548728bcdb12a67c Mon Sep 17 00:00:00 2001 From: HappyZ Date: Thu, 23 May 2019 11:28:12 -0500 Subject: [PATCH] bug fix --- floormap_editor.py | 4 ++-- syngen_floorplan_multipath.py | 19 +++++++++++++------ 2 files changed, 15 insertions(+), 8 deletions(-) diff --git a/floormap_editor.py b/floormap_editor.py index 5f10dfe..778323e 100644 --- a/floormap_editor.py +++ b/floormap_editor.py @@ -27,8 +27,8 @@ def exproom(): reflections = np.ones((64, 64), dtype=float) * -100.0 orientations = np.empty((64, 64), dtype=float) * float('nan') - wall_penetration = -20.0 - wall_reflection = -3.0 + wall_penetration = -30.0 + wall_reflection = -10.0 glass_penetration = -3.0 glass_reflection = -3.0 # walls diff --git a/syngen_floorplan_multipath.py b/syngen_floorplan_multipath.py index f3f53f2..bea99e4 100644 --- a/syngen_floorplan_multipath.py +++ b/syngen_floorplan_multipath.py @@ -7,6 +7,7 @@ import pickle import argparse import numpy as np from multiprocessing import Process +from multiprocessing import Manager from libs.util import convert_vector_to_mat from libs.consts import RANDOM_SEED_TEST @@ -42,7 +43,7 @@ def getPowers(power_range, step_size: float = 2): return np.arange(power_range[0], power_range[1] + step_size, step_size) -def log_gamma_floorplan_multi(floormap, rx_loc, tx_loc, power, gaussian_noise, results, idx): +def log_gamma_floorplan_multi(floormap, rx_loc, tx_loc, power, gaussian_noise, results, kk): rss, __ = log_gamma_floorplan( floormap, rx_loc, @@ -50,7 +51,7 @@ def log_gamma_floorplan_multi(floormap, rx_loc, tx_loc, power, gaussian_noise, r power, gaussian_noise=gaussian_noise ) - results[idx] = rss + results[kk] = rss def generateData(floormap, tx_locs, args): @@ -85,19 +86,22 @@ def generateData(floormap, tx_locs, args): starttime = int(time.time()) for j in range(0, rx_locs.shape[0], args.procnum): procs = [] - results = [None] * args.procnum + results = Manager().dict() for kk in range(args.procnum): rx_loc = SpaceBlock(rx_locs[j, 0], rx_locs[j, 1]) tx_loc = SpaceBlock(rx_locs[i, 0], rx_locs[i, 1]) proc = Process( target=log_gamma_floorplan_multi, - args=(floormap, rx_loc, tx_loc, power, args.withnoise, results, kk,) + args=(floormap, rx_loc, tx_loc, power, args.withnoise, results, kk) ) proc.start() procs.append(proc) for proc in procs: proc.join() - rss_vec.extend(results) + rss_vec.extend([results[kk] for kk in range(args.procnum)]) + + # rx_loc = SpaceBlock(rx_locs[j, 0], rx_locs[j, 1]) + # tx_loc = SpaceBlock(rx_locs[i, 0], rx_locs[i, 1]) # rss, multipaths = log_gamma_floorplan( # floormap, # rx_loc, @@ -109,10 +113,13 @@ def generateData(floormap, tx_locs, args): # paths = [] # for path in multipaths: # paths.extend(list(path)) + # print(rss, rx_loc, tx_loc) # plotSpace(floormap, space_rays=paths, cminmax=(-50, 0.0)) + # rss_vec.append(rss) + duration = (int(time.time()) - starttime) print("duration: {}s ({:.2f}%) - len {}".format(duration, j/rx_locs.shape[0]*100.0, len(rss_vec))) - # rss_vec.append(rss) + print("results: {}".format(rss_vec)) rss_map = convert_vector_to_mat(rx_locs, np.array(rss_vec), (64, 64)) with open("{}_{}.pickle".format(fp_base, int(power)), 'wb') as f: