Simulation Results for the Enhanced Block Diagonalization algorithm

Initializations

Here we import some packages and do some initialization.


In [14]:
%pylab inline


Populating the interactive namespace from numpy and matplotlib

Now we import some modules we use and add the PyPhysim to the python path.


In [15]:
import sys
sys.path.append("/home/darlan/cvs_files/pyphysim/")
# xxxxxxxxxx Import Statements xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
from pyphysim.simulations.runner import SimulationRunner
from pyphysim.simulations.parameters import SimulationParameters
from pyphysim.simulations.results import SimulationResults, Result
from pyphysim.comm import modulators, channels
from pyphysim.util.conversion import dB2Linear
from pyphysim.util import misc
import numpy as np
from pprint import pprint

from apps.simulate_comp import plot_spectral_efficience_all_metrics, plot_per_all_metrics
# xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx333

Load the results from disk

Now we set the transmit parameters and load the simulation results from the file corresponding to those transmit parameters.


In [16]:
results_filename_rank_1 = 'bd_results_2x2_ext_int_rank_1'
results_filename_rank_2 = 'bd_results_2x2_ext_int_rank_2'
results_rank_1 = SimulationResults.load_from_file('{0}{1}'.format(results_filename_rank_1, '.pickle'))
SNR_rank_1 = results_rank_1.params['SNR']
results_rank_2 = SimulationResults.load_from_file('{0}{1}'.format(results_filename_rank_2, '.pickle'))
SNR_rank_2 = results_rank_2.params['SNR']

Results for external interference of 10dBm (rank1)


In [17]:
Pe_dBm = 10
fig, ax = plt.subplots(nrows=1, ncols=2, figsize=(20,7))
fig = plot_spectral_efficience_all_metrics(results_rank_1, Pe_dBm, ax[0])
fig = plot_per_all_metrics(results_rank_1, Pe_dBm, ax[1])


Results for external interference of 0dBm (rank 1)


In [18]:
Pe_dBm = 0
fig, ax = plt.subplots(nrows=1, ncols=2, figsize=(20,7))
fig = plot_spectral_efficience_all_metrics(results_rank_1, Pe_dBm, ax[0])
fig = plot_per_all_metrics(results_rank_1, Pe_dBm, ax[1])


Results for external interference of -10dBm (rank 1)


In [19]:
Pe_dBm = -10
fig, ax = plt.subplots(nrows=1, ncols=2, figsize=(20,7))
fig = plot_spectral_efficience_all_metrics(results_rank_1, Pe_dBm, ax[0])
fig = plot_per_all_metrics(results_rank_1, Pe_dBm, ax[1])


Results for external interference of 10dBm (rank2)


In [20]:
Pe_dBm = 10
fig, ax = plt.subplots(nrows=1, ncols=2, figsize=(20,7))
fig = plot_spectral_efficience_all_metrics(results_rank_2, Pe_dBm, ax[0])
fig = plot_per_all_metrics(results_rank_2, Pe_dBm, ax[1])


Results for external interference of 0dBm (rank 2)


In [21]:
Pe_dBm = 0
fig, ax = plt.subplots(nrows=1, ncols=2, figsize=(20,7))
fig = plot_spectral_efficience_all_metrics(results_rank_2, Pe_dBm, ax[0])
fig = plot_per_all_metrics(results_rank_2, Pe_dBm, ax[1])


Results for external interference of -10dBm (rank 2)

Pe_dBm = -10

fig, ax = plt.subplots(nrows=1, ncols=2, figsize=(20,7)) fig = plot_spectral_efficience_all_metrics(results_rank_2, Pe_dBm, ax[0]) fig = plot_per_all_metrics(results_rank_2, Pe_dBm, ax[1])