From 2290a2beefda8ed635da8c8529268b02650e0a68 Mon Sep 17 00:00:00 2001 From: Nicola Baldo Date: Mon, 18 Nov 2013 18:33:01 +0100 Subject: [PATCH] optimize LteMiErrorModel::Mib () --- src/lte/model/lte-mi-error-model.cc | 56 +++++++++++++++++------------ 1 file changed, 33 insertions(+), 23 deletions(-) diff --git a/src/lte/model/lte-mi-error-model.cc b/src/lte/model/lte-mi-error-model.cc index 8ef5064d0..b1c426992 100644 --- a/src/lte/model/lte-mi-error-model.cc +++ b/src/lte/model/lte-mi-error-model.cc @@ -328,62 +328,72 @@ LteMiErrorModel::Mib (const SpectrumValue& sinr, const std::vector& map, ui double MI; double MIsum = 0.0; + SpectrumValue sinrCopy = sinr; for (uint32_t i = 0; i < map.size (); i++) { - SpectrumValue sinrCopy = sinr; double sinrLin = sinrCopy[map.at (i)]; if (mcs <= MI_QPSK_MAX_ID) // QPSK { - int tr = 0; - while ((tr MI_map_qpsk_axis[MI_MAP_QPSK_SIZE-1]) { MI = 1; } else - { - NS_ASSERT_MSG (tr MI_QPSK_MAX_ID && mcs <= MI_16QAM_MAX_ID ) // 16-QAM { - int tr = 0; - while ((tr MI_map_16qam_axis[MI_MAP_16QAM_SIZE-1]) { MI = 1; } else { - NS_ASSERT_MSG (tr MI_map_64qam_axis[MI_MAP_64QAM_SIZE-1]) { MI = 1; } else { - NS_ASSERT_MSG (tr