#0) More information on formula syntax: http://utran01.epa.ericsson.se/itkwiki/ViewWritersGuide/AppendixII
#1) Any text starting with a '#' is treated as a comment and discarded
#2) Each formula is split into the formula result variable name (part before the '=' sign) and the formula expression (the part after the '=' sign).
#3) Any reference in the formula expression to a counter name of other formula name is replaced by a perl variable reference
#4) The special names sum_<countername>, sum_time_<countername> and sum_mo_<countername> are replaced by a perl reference to variable containing counter aggregates
#5) Each formula expression is then evaluated using perl 'eval'. This means that the syntax of the expressions is the same as that of perl - you can use any perl operators & functions.
#6) The order in which the formulas are defined does not have any importance, a formula can refer to other formulas defined further down in the file
#7) The formula names should not start with "pm"

#Average Priority Queue throughput. A user can have up to 3 PQ as of P7.
PSHsAvgTputPerPq =  (pmSumAckedBitsSpi00 + pmSumAckedBitsSpi01 + pmSumAckedBitsSpi02 + pmSumAckedBitsSpi03 + pmSumAckedBitsSpi04 + pmSumAckedBitsSpi05 + pmSumAckedBitsSpi06 + pmSumAckedBitsSpi07 + pmSumAckedBitsSpi08 + pmSumAckedBitsSpi09 + pmSumAckedBitsSpi10 + pmSumAckedBitsSpi11 + pmSumAckedBitsSpi12 + pmSumAckedBitsSpi13 + pmSumAckedBitsSpi14 + pmSumAckedBitsSpi15) / (0.002 * pmSumNonEmptyUserBuffers)

#Average Cell throughput (as the sum of all PQs)
PSHsAvgTputPerCell =  (pmSumAckedBitsSpi00 + pmSumAckedBitsSpi01 + pmSumAckedBitsSpi02 + pmSumAckedBitsSpi03 + pmSumAckedBitsSpi04 + pmSumAckedBitsSpi05 + pmSumAckedBitsSpi06 + pmSumAckedBitsSpi07 + pmSumAckedBitsSpi08 + pmSumAckedBitsSpi09 + pmSumAckedBitsSpi10 + pmSumAckedBitsSpi11 + pmSumAckedBitsSpi12 + pmSumAckedBitsSpi13 + pmSumAckedBitsSpi14 + pmSumAckedBitsSpi15) / (0.002 * (pmNoActiveSubFrames + pmNoInactiveRequiredSubFrames))

PSHsTputPerSpi00 = pmSumAckedBitsSpi00 / (0.002 * (pmNoActiveSubFramesSpi00 + pmNoInactiveRequiredSubFramesSpi00))
PSHsTputPerSpi01 = pmSumAckedBitsSpi01 / (0.002 * (pmNoActiveSubFramesSpi01 + pmNoInactiveRequiredSubFramesSpi01))
PSHsTputPerSpi02 = pmSumAckedBitsSpi02 / (0.002 * (pmNoActiveSubFramesSpi02 + pmNoInactiveRequiredSubFramesSpi02))
PSHsTputPerSpi03 = pmSumAckedBitsSpi03 / (0.002 * (pmNoActiveSubFramesSpi03 + pmNoInactiveRequiredSubFramesSpi03))
PSHsTputPerSpi04 = pmSumAckedBitsSpi04 / (0.002 * (pmNoActiveSubFramesSpi04 + pmNoInactiveRequiredSubFramesSpi04))
PSHsTputPerSpi05 = pmSumAckedBitsSpi05 / (0.002 * (pmNoActiveSubFramesSpi05 + pmNoInactiveRequiredSubFramesSpi05))
PSHsTputPerSpi06 = pmSumAckedBitsSpi06 / (0.002 * (pmNoActiveSubFramesSpi06 + pmNoInactiveRequiredSubFramesSpi06))
PSHsTputPerSpi07 = pmSumAckedBitsSpi07 / (0.002 * (pmNoActiveSubFramesSpi07 + pmNoInactiveRequiredSubFramesSpi07))
PSHsTputPerSpi08 = pmSumAckedBitsSpi08 / (0.002 * (pmNoActiveSubFramesSpi08 + pmNoInactiveRequiredSubFramesSpi08))
PSHsTputPerSpi09 = pmSumAckedBitsSpi09 / (0.002 * (pmNoActiveSubFramesSpi09 + pmNoInactiveRequiredSubFramesSpi09))
PSHsTputPerSpi10 = pmSumAckedBitsSpi10 / (0.002 * (pmNoActiveSubFramesSpi10 + pmNoInactiveRequiredSubFramesSpi10))
PSHsTputPerSpi11 = pmSumAckedBitsSpi11 / (0.002 * (pmNoActiveSubFramesSpi11 + pmNoInactiveRequiredSubFramesSpi11))
PSHsTputPerSpi12 = pmSumAckedBitsSpi12 / (0.002 * (pmNoActiveSubFramesSpi12 + pmNoInactiveRequiredSubFramesSpi12))
PSHsTputPerSpi13 = pmSumAckedBitsSpi13 / (0.002 * (pmNoActiveSubFramesSpi13 + pmNoInactiveRequiredSubFramesSpi13))
PSHsTputPerSpi14 = pmSumAckedBitsSpi14 / (0.002 * (pmNoActiveSubFramesSpi14 + pmNoInactiveRequiredSubFramesSpi14))
PSHsTputPerSpi15 = pmSumAckedBitsSpi15 / (0.002 * (pmNoActiveSubFramesSpi15 + pmNoInactiveRequiredSubFramesSpi15))

PSHsTputPerSpi00Pq = pmSumAckedBitsSpi00 / (0.002 * pmSumNonEmptyUserBuffersSpi00)
PSHsTputPerSpi01Pq = pmSumAckedBitsSpi01 / (0.002 * pmSumNonEmptyUserBuffersSpi01)
PSHsTputPerSpi02Pq = pmSumAckedBitsSpi02 / (0.002 * pmSumNonEmptyUserBuffersSpi02)
PSHsTputPerSpi03Pq = pmSumAckedBitsSpi03 / (0.002 * pmSumNonEmptyUserBuffersSpi03)
PSHsTputPerSpi04Pq = pmSumAckedBitsSpi04 / (0.002 * pmSumNonEmptyUserBuffersSpi04)
PSHsTputPerSpi05Pq = pmSumAckedBitsSpi05 / (0.002 * pmSumNonEmptyUserBuffersSpi05)
PSHsTputPerSpi06Pq = pmSumAckedBitsSpi06 / (0.002 * pmSumNonEmptyUserBuffersSpi06)
PSHsTputPerSpi07Pq = pmSumAckedBitsSpi07 / (0.002 * pmSumNonEmptyUserBuffersSpi07)
PSHsTputPerSpi08Pq = pmSumAckedBitsSpi08 / (0.002 * pmSumNonEmptyUserBuffersSpi08)
PSHsTputPerSpi09Pq = pmSumAckedBitsSpi09 / (0.002 * pmSumNonEmptyUserBuffersSpi09)
PSHsTputPerSpi10Pq = pmSumAckedBitsSpi10 / (0.002 * pmSumNonEmptyUserBuffersSpi10)
PSHsTputPerSpi11Pq = pmSumAckedBitsSpi11 / (0.002 * pmSumNonEmptyUserBuffersSpi11)
PSHsTputPerSpi12Pq = pmSumAckedBitsSpi12 / (0.002 * pmSumNonEmptyUserBuffersSpi12)
PSHsTputPerSpi13Pq = pmSumAckedBitsSpi13 / (0.002 * pmSumNonEmptyUserBuffersSpi13)
PSHsTputPerSpi14Pq = pmSumAckedBitsSpi14 / (0.002 * pmSumNonEmptyUserBuffersSpi14)
PSHsTputPerSpi15Pq = pmSumAckedBitsSpi15 / (0.002 * pmSumNonEmptyUserBuffersSpi15)

PSHsEfficiency = 100 * pmNoActiveSubFrames / (pmNoActiveSubFrames + pmNoInactiveRequiredSubFrames)

HSLostFrameRatio = 100 * (pmHsDataFramesLostSpi01 + pmHsDataFramesLostSpi02 + pmHsDataFramesLostSpi03 + pmHsDataFramesLostSpi04 + pmHsDataFramesLostSpi05 + pmHsDataFramesLostSpi06 + pmHsDataFramesLostSpi07 + pmHsDataFramesLostSpi08 + pmHsDataFramesLostSpi09 + pmHsDataFramesLostSpi10 + pmHsDataFramesLostSpi11 + pmHsDataFramesLostSpi12 + pmHsDataFramesLostSpi13 + pmHsDataFramesLostSpi14 + pmHsDataFramesLostSpi15) / (pmHsDataFramesLostSpi01 + pmHsDataFramesLostSpi02 + pmHsDataFramesLostSpi03 + pmHsDataFramesLostSpi04 + pmHsDataFramesLostSpi05 + pmHsDataFramesLostSpi06 + pmHsDataFramesLostSpi07 + pmHsDataFramesLostSpi08 + pmHsDataFramesLostSpi09 + pmHsDataFramesLostSpi10 + pmHsDataFramesLostSpi11 + pmHsDataFramesLostSpi12 + pmHsDataFramesLostSpi13 + pmHsDataFramesLostSpi14 + pmHsDataFramesLostSpi15 + pmHsDataFramesReceivedSpi01 + pmHsDataFramesReceivedSpi02 + pmHsDataFramesReceivedSpi03 + pmHsDataFramesReceivedSpi04 + pmHsDataFramesReceivedSpi05 + pmHsDataFramesReceivedSpi06 + pmHsDataFramesReceivedSpi07 + pmHsDataFramesReceivedSpi08 + pmHsDataFramesReceivedSpi09 + pmHsDataFramesReceivedSpi10 + pmHsDataFramesReceivedSpi11 + pmHsDataFramesReceivedSpi12 + pmHsDataFramesReceivedSpi13 + pmHsDataFramesReceivedSpi14 + pmHsDataFramesReceivedSpi15)

Sf8SuccRate   = 100 * (pmSetupAttemptsSf8 - pmSetupFailuresSf8)     / (pmSetupAttemptsSf8 + pmSetupFailuresSf8)
Sf16SuccRate  = 100 * (pmSetupAttemptsSf16 - pmSetupFailuresSf16)   / (pmSetupAttemptsSf16 + pmSetupFailuresSf16)
Sf32SuccRate  = 100 * (pmSetupAttemptsSf32 - pmSetupFailuresSf32)   / (pmSetupAttemptsSf32 + pmSetupFailuresSf32)
Sf64SuccRate  = 100 * (pmSetupAttemptsSf64 - pmSetupFailuresSf64)   / (pmSetupAttemptsSf64 + pmSetupFailuresSf64)
Sf128SuccRate = 100 * (pmSetupAttemptsSf128 - pmSetupFailuresSf128) / (pmSetupAttemptsSf128 + pmSetupFailuresSf128)
Sf256SuccRate = 100 * (pmSetupAttemptsSf256 - pmSetupFailuresSf256) / (pmSetupAttemptsSf256 + pmSetupFailuresSf256)

#Aich
RachIntensity = WeightedAverage(pmAccessIntensityRach,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26])
EulFachRachIntensity = WeightedAverage(pmAccessIntensityEulFach,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26])
NegativeMessageratio = pmNegativeMessages / pmPositiveMessages * 100

#Carrier 
AvgRssi_fW = WeightedAverage(pmAverageRssi, [5.0,10.61009,11.90472,13.35731,14.98715,16.81586,18.86771,21.16992,23.75304,26.65135,29.90330,33.55206,37.64603,42.23954,47.39354,53.17643,59.66493,66.94516,75.11370,84.27896,94.56255,106.10092,119.04719,133.57315,149.87154,168.15863,188.67709,211.69917,237.53038,266.51347,299.03303,335.52058,376.46028,422.39538,473.93541,531.76428,596.64933,669.45156,751.13701,842.78959,945.62547,1061.009,1190.472,1335.731,1498.715,1681.586,1886.771,2116.992,2375.304,2665.135,2990.330,3355.206,3764.603,4223.954,4739.354,5317.643,5966.493,6694.516,7511.370,8427.896,9456.255,20811.388,65811.388,208113.88,658113.88])
AvgRssi = 10*log10(AvgRssi_fW / 1000000000000)
AvgRssiHigh_fW = WeightedAverage(pmAverageRssiHigh, [5.0,10.61009,11.90472,13.35731,14.98715,16.81586,18.86771,21.16992,23.75304,26.65135,29.90330,33.55206,37.64603,42.23954,47.39354,53.17643,59.66493,66.94516,75.11370,84.27896,94.56255,106.10092,119.04719,133.57315,149.87154,168.15863,188.67709,211.69917,237.53038,266.51347,299.03303,335.52058,376.46028,422.39538,473.93541,531.76428,596.64933,669.45156,751.13701,842.78959,945.62547,1061.009,1190.472,1335.731,1498.715,1681.586,1886.771,2116.992,2375.304,2665.135,2990.330,3355.206,3764.603,4223.954,4739.354,5317.643,5966.493,6694.516,7511.370,8427.896,9456.255,10610.092,11904.719,13357.315,14987.154,16815.863,18867.709,21169.917,23753.038,26651.347,29903.303,33552.058,37646.028,42239.538,47393.541,53176.428,59664.933,66945.156,75113.701,84278.959,94562.547,106100.923,119047.193,133573.148,149871.537,168158.630,188677.086,211699.173,237530.379,266513.468,299033.030,335520.578,376460.280,422395.381,473935.413,531764.279,596649.335,669451.564,751137.010,842789.586,945625.469,1061009.227,1190471.933,1335731.478,1498715.369,1681586.301,1886770.863,2116991.727,2375303.785,2665134.681,2990330.296,3355205.776,3764602.799,4223953.814,4739354.129,5317642.794,5966493.348,6694515.644,7511370.096,8427895.864,9456254.691,10610092.272,11904719.330,13357314.782,14987153.685,16815863.013,18867708.625,21169917.268,23753037.850,26651346.814,29903302.957,33552057.763,37646027.989,42239538.135,47393541.289,53176427.941,59664933.484,66945156.443,75113700.955,84278958.643,94562546.907,106100922.715])
AvgRssiHigh = 10*log10(AvgRssiHigh_fW / 1000000000000)
Perc90Rssi_fW = WeightedPercentile(90,pmAverageRssi, [5.0,10.61009,11.90472,13.35731,14.98715,16.81586,18.86771,21.16992,23.75304,26.65135,29.90330,33.55206,37.64603,42.23954,47.39354,53.17643,59.66493,66.94516,75.11370,84.27896,94.56255,106.10092,119.04719,133.57315,149.87154,168.15863,188.67709,211.69917,237.53038,266.51347,299.03303,335.52058,376.46028,422.39538,473.93541,531.76428,596.64933,669.45156,751.13701,842.78959,945.62547,1061.009,1190.472,1335.731,1498.715,1681.586,1886.771,2116.992,2375.304,2665.135,2990.330,3355.206,3764.603,4223.954,4739.354,5317.643,5966.493,6694.516,7511.370,8427.896,9456.255,20811.388,65811.388,208113.88,658113.88])
Perc90Rssi = 10*log10(Perc90Rssi_fW / 1000000000000)

AvgTxPwr_mW = WeightedAverage(pmTransmittedCarrierPower, [0.00,1.13,1.42,1.79,2.25,2.84,3.57,4.50,5.66,7.13,8.97,11.29,14.22,17.90,22.54,28.37,35.72,44.96,56.61,71.26,89.72,112.95,142.19,179.01,225.36,283.71,357.17,449.65,566.07,712.64,897.16,1129.46,1421.91,1790.08,2253.57,2837.08,3571.67,4496.47,5660.72,7126.43,8971.64,11294.63,14219.09,17900.78,22535.74,28370.82,35716.75,44964.72,56607.23,71264.28,89716.41,112946.27])
AvgTxPwr = 10*log10(AvgTxPwr_mW)
Perc90TxPwr_mW = WeightedPercentile(90,pmTransmittedCarrierPower, [0.00,1.13,1.42,1.79,2.25,2.84,3.57,4.50,5.66,7.13,8.97,11.29,14.22,17.90,22.54,28.37,35.72,44.96,56.61,71.26,89.72,112.95,142.19,179.01,225.36,283.71,357.17,449.65,566.07,712.64,897.16,1129.46,1421.91,1790.08,2253.57,2837.08,3571.67,4496.47,5660.72,7126.43,8971.64,11294.63,14219.09,17900.78,22535.74,28370.82,35716.75,44964.72,56607.23,71264.28,89716.41,112946.27])
Perc90TxPwr = 10*log10(Perc90TxPwr_mW)
AvgTxPwrPercMax = WeightedAverage(pmTransmittedCarrierPowerW,[1,3,5,7,9,11,13,15,17,19,21,23,25,27,29,31,33,35,37,39,41,43,45,47,49,51,53,55,57,59,61,63,65,67,69,71,73,75,77,79,81,83,85,87,89,91,93,95,97,99])
AvgTxPwrPercMaxNonHS = WeightedAverage(pmTransmittedCarrierPowerWNonHs,[1,3,5,7,9,11,13,15,17,19,21,23,25,27,29,31,33,35,37,39,41,43,45,47,49,51,53,55,57,59,61,63,65,67,69,71,73,75,77,79,81,83,85,87,89,91,93,95,97,99])

#Radiolinks
#wAvgSir           = WeightedAverage(pmAverageSir,        [-7,-6.75,-6.25,-5.75,-5.25,-4.75,-4.24,-3.75,-3.25,-2.75,-2.25,-1.75,-1.25,-0.75,-0.25,0.25,0.75,1.25,1.75,2.25,2.75,3.25,3.75,4.25,4.75,5.25,5.75,6.25,6.75,7])
#wAvgDeltaSir      = WeightedAverage(pmBranchDeltaSir,        [-30,-29,-28,-27,-26,-25,-24,-23,-22,-21,-20,-19,-18,17,-16,-15,-14,-13,-12,-11,-10,-9,-8,-7,-6,-5,-4,-3,-2,-1,0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30])
#wAvgSirError      = WeightedAverage(pmAverageSirError,   [-11,-9.75,-9.25,-8.75,-8.25,-7.75,-7.25,-6.75,-6.25,-5.75,-5.25,-4.75,-4.24,-3.75,-3.25,-2.75,-2.25,-1.75,-1.25,-0.75,-0.25,0.25,0.75,1.25,1.75,2.25,2.75,3.25,3.75,4.25,4.75,5.25,5.75,6.25,6.75,7.25,7.75,8.25,8.75,9.25,9.75,11,])
wAvgSir            = 10 * log10(WeightedAverage(pmAverageSir,      [0.0997631,0.2116992,0.2375304,0.2665135,0.2990330,0.3355206,0.3764603,0.4223954,0.4739354,0.5317643,0.5966493,0.6694516,0.7511370,0.8427896,0.9456255,1.0610092,1.1904719,1.3357315,1.4987154,1.6815863,1.8867709,2.1169917,2.3753038,2.6651347,2.9903303,3.3552058,3.7646028,4.2239538,4.7393541,5.3176428,5.9664933,6.6945156,7.5113701,8.4278959,9.4562547,10.6100923,11.9047193,13.3573148]))
wAvgDeltaSir       = 10 * log10(WeightedAverage(pmBranchDeltaSir,  [0.001,0.00125893,0.00158489,0.00199526,0.00251189,0.00316228,0.00398107,0.00501187,0.00630957,0.00794328,0.01,0.0125893,0.0158489,0.0199526,0.0251189,0.0316228,0.0398107,0.0501187,0.0630957,0.0794328,0.1,0.125893,0.158489,0.199526,0.251189,0.316228,0.398107,0.501187,0.630957,0.794328,1,1.25893,1.58489,1.99526,2.51189,3.16228,3.98107,5.01187,6.30957,7.94328,10,12.5893,15.8489,19.9526,25.1189,31.6228,39.8107,50.1187,63.0957,79.4328,100,125.893,158.489,199.526,251.189,316.228,398.107,501.187,630.957,794.328,1000]))
wAvgSirError       = 10 * log10(WeightedAverage(pmAverageSirError, [0.05,0.1061009,0.1190472,0.1335731,0.1498715,0.1681586,0.1886771,0.2116992,0.2375304,0.2665135,0.2990330,0.3355206,0.3764603,0.4223954,0.4739354,0.5317643,0.5966493,0.6694516,0.7511370,0.8427896,0.9456255,1.0610092,1.1904719,1.3357315,1.4987154,1.6815863,1.8867709,2.1169917,2.3753038,2.6651347,2.9903303,3.3552058,3.7646028,4.2239538,4.7393541,5.3176428,5.9664933,6.6945156,7.5113701,8.4278959,9.4562547,10.6100923]))

AvgOutOfSynch       = WeightedAverage(pmOutOfSynch,        [100,300,500,700,900,1100,1300,1500,1700,1900,2100,2300,2500,2700,2900,3100,3300,3500,3700,3900,4100,4300,4500,4700,4900,5100,5300,5500,5700,5900,6100,6300,6500,6700,6900,7100,7300,7500,7700,7900,8100,8300,8500,8700,8900,9100,9300,9500,9700,9900])
AvgUlSynchTime      = WeightedAverage(pmUlSynchTime,       [25,75,125,175,225,275,325,375,425,475,750,1500,2500,3500,4500,5500])
AvgUlSynchTimeSHO   = WeightedAverage(pmUlSynchTimeSHO,    [25,75,125,175,225,275,325,375,425,475,750,1500,2500,3500,4500,5500])
AvgDpchCodePwrSf4   = 10 * log10(WeightedAverage(pmDpchCodePowerSf4,  [3.54813,4.46684,5.62341,7.07946,8.91251,11.2202,14.1254,17.7828,22.3872,28.1838,35.4813,44.6684,56.2341,70.7946,89.1251,112.202,141.254,177.828,223.872,281.838,354.813,446.684,562.341,707.946,891.251,1122.02,1412.54,1778.28,2238.72,2818.38,3548.13,4466.84,5623.41,7079.46,8912.51,11220.2,14125.4,17782.8]))
AvgDpchCodePwrSf8   = 10 * log10(WeightedAverage(pmDpchCodePowerSf8,  [3.54813,4.46684,5.62341,7.07946,8.91251,11.2202,14.1254,17.7828,22.3872,28.1838,35.4813,44.6684,56.2341,70.7946,89.1251,112.202,141.254,177.828,223.872,281.838,354.813,446.684,562.341,707.946,891.251,1122.02,1412.54,1778.28,2238.72,2818.38,3548.13,4466.84,5623.41,7079.46,8912.51,11220.2,14125.4,17782.8]))
AvgDpchCodePwrSf16  = 10 * log10(WeightedAverage(pmDpchCodePowerSf16, [3.54813,4.46684,5.62341,7.07946,8.91251,11.2202,14.1254,17.7828,22.3872,28.1838,35.4813,44.6684,56.2341,70.7946,89.1251,112.202,141.254,177.828,223.872,281.838,354.813,446.684,562.341,707.946,891.251,1122.02,1412.54,1778.28,2238.72,2818.38,3548.13,4466.84,5623.41,7079.46,8912.51,11220.2,14125.4,17782.8]))
AvgDpchCodePwrSf32  = 10 * log10(WeightedAverage(pmDpchCodePowerSf32, [3.54813,4.46684,5.62341,7.07946,8.91251,11.2202,14.1254,17.7828,22.3872,28.1838,35.4813,44.6684,56.2341,70.7946,89.1251,112.202,141.254,177.828,223.872,281.838,354.813,446.684,562.341,707.946,891.251,1122.02,1412.54,1778.28,2238.72,2818.38,3548.13,4466.84,5623.41,7079.46,8912.51,11220.2,14125.4,17782.8]))
AvgDpchCodePwrSf64  = 10 * log10(WeightedAverage(pmDpchCodePowerSf64, [3.54813,4.46684,5.62341,7.07946,8.91251,11.2202,14.1254,17.7828,22.3872,28.1838,35.4813,44.6684,56.2341,70.7946,89.1251,112.202,141.254,177.828,223.872,281.838,354.813,446.684,562.341,707.946,891.251,1122.02,1412.54,1778.28,2238.72,2818.38,3548.13,4466.84,5623.41,7079.46,8912.51,11220.2,14125.4,17782.8]))
AvgDpchCodePwrSf128 = 10 * log10(WeightedAverage(pmDpchCodePowerSf128,[3.54813,4.46684,5.62341,7.07946,8.91251,11.2202,14.1254,17.7828,22.3872,28.1838,35.4813,44.6684,56.2341,70.7946,89.1251,112.202,141.254,177.828,223.872,281.838,354.813,446.684,562.341,707.946,891.251,1122.02,1412.54,1778.28,2238.72,2818.38,3548.13,4466.84,5623.41,7079.46,8912.51,11220.2,14125.4,17782.8]))
AvgDpchCodePwrSf256 = 10 * log10(WeightedAverage(pmDpchCodePowerSf256,[3.54813,4.46684,5.62341,7.07946,8.91251,11.2202,14.1254,17.7828,22.3872,28.1838,35.4813,44.6684,56.2341,70.7946,89.1251,112.202,141.254,177.828,223.872,281.838,354.813,446.684,562.341,707.946,891.251,1122.02,1412.54,1778.28,2238.72,2818.38,3548.13,4466.84,5623.41,7079.46,8912.51,11220.2,14125.4,17782.8]))

AvgDpdchBer = WeightedAverage(pmDpdchBer,[0,-2.02313,-2.10438,-2.02313,-1.94188,-1.86063,-1.77938,-1.69813,-1.61688,-1.53563,-1.45438,-1.37313,-1.29188,-1.21063,-1.12938,-1.04813,-0.96688,-0.88563,-0.80438,-0.72313,-0.64188,-0.56062,-0.47937,-0.39812,-0.31687])
AvgDpcchBer = WeightedAverage(pmDpcchBer,[0,-2.02313,-2.10438,-2.02313,-1.94188,-1.86063,-1.77938,-1.69813,-1.61688,-1.53563,-1.45438,-1.37313,-1.29188,-1.21063,-1.12938,-1.04813,-0.96688,-0.88563,-0.80438,-0.72313,-0.64188,-0.56062,-0.47937,-0.39812,-0.31687])

#Prach
#AvgRxPreambleSir = WeightedAverage(pmReceivedPreambleSir,[-26,-25,-24,-23,-22,-21,-20,-19,-18,-17,-16,-15,-14,-13,-12,-11,-10,-9,-8,-7,-6,-5,-4,-3,-2,-1,0])
AvgRxPreambleSir = 10 * log10(WeightedAverage(pmReceivedPreambleSir,[0.00281838,0.00354813,0.00446684,0.00562341,0.00707946,0.00891251,0.0112202,0.0141254,0.0177828,0.0223872,0.0281838,0.0354813,0.0446684,0.0562341,0.0707946,0.0891251,0.112202,0.141254,0.177828,0.223872,0.281838,0.354813,0.446684,0.562341,0.707946,0.891251,1.12202]))
#AvgPropDelay (in meters/chip) - currently cannot be aggregated at time level can only print at rop level. 0.78 = 300,000,000 m/s / 3,840,000 chip/s = 78 meters/chip (divide by 100 because pmPropagationDelay is in %)
AvgPropDelay = 0.78070952604166666666666666666667 * @{pmPropagationDelay}[0] * WeightedAverage(pmPropagationDelay,[0,0.5,1.5,2.5,3.5,4.5,5.5,6.5,7.5,8.5,9.5,11,13,15,17,19,21,23,25,27,29,31.5,34.5,37.5,40.5,43.5,46.5,49.5,52.5,55.5,58.5,62,66,70,74,78,82,86,90,94,98]) 
ReceivedBlockSuccRatio = 100 * pmSuccReceivedBlocks / (pmSuccReceivedBlocks + pmUnsuccReceivedBlocks)

#IubDataStreams
#pmTargetHsRate not found after P6
#AvgTargetHsRate        = WeightedAverage(pmTargetHsRate,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100])
NackRatio              = 100 * (pmNackReceived/(pmNackReceived+pmAckReceived))
AvgIubMacdPduRbsRxBits =  WeightedAverage(pmIubMacdPduRbsReceivedBits,[100,300,500,700,900,1100,1300,1500,1700,1900,2100,2300,2500,2700,2900,3100,3300,3500,3700,3900,4100,4300,4500,4700,4900,5100,5300,5500,5700,5900,6100,6300,6500,6700,6900,7100,7300,7500,7700,7900,8100,8300,8500,8700,8900,9100,9300,9500,9700,9900,10100,10300,10500,10700,10900,11100,11300,11500,11700,11900,12100,12300,12500,12700,12900,13100,13300,13500,13700,13900,14100,14300,14500,14700,14900,15100,15300,15500,15700,15900,16100,16300,16500,16700,16900,17100,17300,17500,17700,17900,18100,18300,18500,18700,18900,19100,19300,19500,19700,19900,25000,35000,45000,55000,65000,75000,85000,95000,105000,115000,125000,135000,145000,155000,165000,175000,185000,195000,205000,215000,225000,235000,245000,255000,265000,275000,285000,295000,305000,315000,325000,335000,345000,355000,365000,375000,385000,395000,405000,415000,425000,435000,445000,455000,465000,475000,485000,495000,505000])

#HsDschResources
AvgAvgUserRate        = WeightedAverage(pmAverageUserRate,[4,12,24,40,56,80,112,160,224,320,448,640,896,1280,1792,2560,3584,3584])
#AvgTxCarrierPwrHs     = WeightedAverage(pmTransmittedCarrierPowerHs,[-0.5,0.5,1.5,2.5,3.5,4.5,5.5,6.5,7.5,8.5,9.5,10.5,11.5,12.5,13.5,14.5,15.5,16.5,17.5,18.5,19.5,20.5,21.5,22.5,23.5,24.5,25.5,26.5,27.5,28.5,29.5,30.5,31.5,32.5,33.5,34.5,35.5,36.5,37.5,38.5,39.5,40.5,41.5,42.5,43.5,44.5,45.5,46.5,47.5,48.5,49.5,50.5])
#AvgTxCarrierPwrNonHs  = WeightedAverage(pmTransmittedCarrierPowerNonHs,[-0.5,0.5,1.5,2.5,3.5,4.5,5.5,6.5,7.5,8.5,9.5,10.5,11.5,12.5,13.5,14.5,15.5,16.5,17.5,18.5,19.5,20.5,21.5,22.5,23.5,24.5,25.5,26.5,27.5,28.5,29.5,30.5,31.5,32.5,33.5,34.5,35.5,36.5,37.5,38.5,39.5,40.5,41.5,42.5,43.5,44.5,45.5,46.5,47.5,48.5,49.5,50.5])
AvgTxCarrierPwrHs_mW    = WeightedAverage(pmTransmittedCarrierPowerHs,[0.00,1.13,1.42,1.79,2.25,2.84,3.57,4.50,5.66,7.13,8.97,11.29,14.22,17.90,22.54,28.37,35.72,44.96,56.61,71.26,89.72,112.95,142.19,179.01,225.36,283.71,357.17,449.65,566.07,712.64,897.16,1129.46,1421.91,1790.08,2253.57,2837.08,3571.67,4496.47,5660.72,7126.43,8971.64,11294.63,14219.09,17900.78,22535.74,28370.82,35716.75,44964.72,56607.23,71264.28,89716.41,112946.27])
AvgTxCarrierPwrNonHs_mW = WeightedAverage(pmTransmittedCarrierPowerNonHs,[0.00,1.13,1.42,1.79,2.25,2.84,3.57,4.50,5.66,7.13,8.97,11.29,14.22,17.90,22.54,28.37,35.72,44.96,56.61,71.26,89.72,112.95,142.19,179.01,225.36,283.71,357.17,449.65,566.07,712.64,897.16,1129.46,1421.91,1790.08,2253.57,2837.08,3571.67,4496.47,5660.72,7126.43,8971.64,11294.63,14219.09,17900.78,22535.74,28370.82,35716.75,44964.72,56607.23,71264.28,89716.41,112946.27])
AvgTxCarrierPwrHs     = 10*log10(AvgTxCarrierPwrHs_mW)
AvgTxCarrierPwrNonHs  = 10*log10(AvgTxCarrierPwrNonHs_mW)

AvgReportedCqi        = WeightedAverage(pmReportedCqi,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,-1])
AvgUsedCqi            = WeightedAverage(pmUsedCqi,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30])
AvgHsPdschCodesAdded  = (pmSumNumHsPdschCodesAdded/pmSampleNumHsPdschCodesAdded)
#AvgSumOfHsScchUsedPwr = WeightedAverage(pmSumOfHsScchUsedPwr,[0,0.5,1,1.5,2,2.5,3,3.5,4,4.5,5,5.5,6,6.5,7,7.5,8,8.5,9,9.5,10,10.5,11,11.5,12,12.5,13,13.5,14,14.5,15,15.5,16,16.5,17,17.5,18,18.5,19,19.5,20,20.5,21,21.5,22,22.5,23,23.5,24,24.5,25,25.5,26,26.5,27,27.5,28,28.5,29,29.5,30,30.5,31,31.5,32,32.5,33,33.5,34,34.5,35,35.5,36,36.5,37,37.5,38,38.5,39,39.5,40,40.5,41,41.5,42,42.5,43,43.5,44,44.5,45,45.5,46,46.5,47,47.5,48,48.5,49,49.5,50,50.5,51])
AvgSumOfHsScchUsedPwr = 10 * log10(WeightedAverage(pmSumOfHsScchUsedPwr,[1,1.12202,1.25893,1.41254,1.58489,1.77828,1.99526,2.23872,2.51189,2.81838,3.16228,3.54813,3.98107,4.46684,5.01187,5.62341,6.30957,7.07946,7.94328,8.91251,10,11.2202,12.5893,14.1254,15.8489,17.7828,19.9526,22.3872,25.1189,28.1838,31.6228,35.4813,39.8107,44.6684,50.1187,56.2341,63.0957,70.7946,79.4328,89.1251,100,112.202,125.893,141.254,158.489,177.828,199.526,223.872,251.189,281.838,316.228,354.813,398.107,446.684,501.187,562.341,630.957,707.946,794.328,891.251,1000,1122.02,1258.93,1412.54,1584.89,1778.28,1995.26,2238.72,2511.89,2818.38,3162.28,3548.13,3981.07,4466.84,5011.87,5623.41,6309.57,7079.46,7943.28,8912.51,10000,11220.2,12589.3,14125.4,15848.9,17782.8,19952.6,22387.2,25118.9,28183.8,31622.8,35481.3,39810.7,44668.4,50118.7,56234.1,63095.7,70794.6,79432.8,89125.1,100000,112202,125893]))

#old stuff
#RL_Add__failure_sf_32 = pmNoOfRlAdditionFailuresSf32

#Inherited from ITK
PSIntHSLostFrameRatio00 = (pmHsDataFramesLostSpi00) / (pmHsDataFramesLostSpi00 + pmHsDataFramesReceivedSpi00)
PSIntHSLostFrameRatio01 = (pmHsDataFramesLostSpi01) / (pmHsDataFramesLostSpi01 + pmHsDataFramesReceivedSpi01)
PSIntHSLostFrameRatio02 = (pmHsDataFramesLostSpi02) / (pmHsDataFramesLostSpi02 + pmHsDataFramesReceivedSpi02)
PSIntHSLostFrameRatio03 = (pmHsDataFramesLostSpi03) / (pmHsDataFramesLostSpi03 + pmHsDataFramesReceivedSpi03)
PSIntHSLostFrameRatio04 = (pmHsDataFramesLostSpi04) / (pmHsDataFramesLostSpi04 + pmHsDataFramesReceivedSpi04)
PSIntHSLostFrameRatio05 = (pmHsDataFramesLostSpi05) / (pmHsDataFramesLostSpi05 + pmHsDataFramesReceivedSpi05)
PSIntHSLostFrameRatio06 = (pmHsDataFramesLostSpi06) / (pmHsDataFramesLostSpi06 + pmHsDataFramesReceivedSpi06)
PSIntHSLostFrameRatio07 = (pmHsDataFramesLostSpi07) / (pmHsDataFramesLostSpi07 + pmHsDataFramesReceivedSpi07)
PSIntHSLostFrameRatio08 = (pmHsDataFramesLostSpi08) / (pmHsDataFramesLostSpi08 + pmHsDataFramesReceivedSpi08)
PSIntHSLostFrameRatio09 = (pmHsDataFramesLostSpi09) / (pmHsDataFramesLostSpi09 + pmHsDataFramesReceivedSpi09)
PSIntHSLostFrameRatio10 = (pmHsDataFramesLostSpi10) / (pmHsDataFramesLostSpi10 + pmHsDataFramesReceivedSpi10)
PSIntHSLostFrameRatio11 = (pmHsDataFramesLostSpi11) / (pmHsDataFramesLostSpi11 + pmHsDataFramesReceivedSpi11)
PSIntHSLostFrameRatio12 = (pmHsDataFramesLostSpi12) / (pmHsDataFramesLostSpi12 + pmHsDataFramesReceivedSpi12)
PSIntHSLostFrameRatio13 = (pmHsDataFramesLostSpi13) / (pmHsDataFramesLostSpi13 + pmHsDataFramesReceivedSpi13)
PSIntHSLostFrameRatio14 = (pmHsDataFramesLostSpi14) / (pmHsDataFramesLostSpi14 + pmHsDataFramesReceivedSpi14)
PSIntHSLostFrameRatio15 = (pmHsDataFramesLostSpi15) / (pmHsDataFramesLostSpi15 + pmHsDataFramesReceivedSpi15)
#PSIntHSLostFrameRatio	= 100 *max(PSIntHSLostFrameRatio00, PSIntHSLostFrameRatio01, PSIntHSLostFrameRatio02, PSIntHSLostFrameRatio03,PSIntHSLostFrameRatio04, PSIntHSLostFrameRatio05, PSIntHSLostFrameRatio06, PSIntHSLostFrameRatio07, PSIntHSLostFrameRatio08, PSIntHSLostFrameRatio09, PSIntHSLostFrameRatio10, PSIntHSLostFrameRatio11, PSIntHSLostFrameRatio12, PSIntHSLostFrameRatio13, PSIntHSLostFrameRatio14, PSIntHSLostFrameRatio15)

#PSIntHSLimitingRatio = max(pmCapAllocIubHsLimitingRatioSpi00 , pmCapAllocIubHsLimitingRatioSpi01, pmCapAllocIubHsLimitingRatioSpi02, pmCapAllocIubHsLimitingRatioSpi03, pmCapAllocIubHsLimitingRatioSpi04, pmCapAllocIubHsLimitingRatioSpi05, pmCapAllocIubHsLimitingRatioSpi06, pmCapAllocIubHsLimitingRatioSpi07, pmCapAllocIubHsLimitingRatioSpi08, pmCapAllocIubHsLimitingRatioSpi09, pmCapAllocIubHsLimitingRatioSpi10, pmCapAllocIubHsLimitingRatioSpi11, pmCapAllocIubHsLimitingRatioSpi12, pmCapAllocIubHsLimitingRatioSpi13, pmCapAllocIubHsLimitingRatioSpi14, pmCapAllocIubHsLimitingRatioSpi15) 
PSIntHSLimitingRatio = pmCapAllocIubHsLimitingRatioSpi04 

#RBS Eul Specific
#NoiseFloorWeightedAverage = WeightedAverage(pmNoiseFloor,[-114,-113,-112,-111,-110,-109,-108,-107,-106,-105,-104,-103,-102,-101,-100,-99,-98,-97,-96,-95,-94,-93,-92,-91,-90,89,-88,-87,-86,-85,-84,-83,-82,-81,-80,-79,-78,-77,-76,-75,-74,-73,-72,-71,-70,-69,-68,-67,-66,-65,-64,-63,-62,-61,-60])
NoiseFloorWeightedAverage = 10 * log10(WeightedAverage(pmNoiseFloor, [1.99054,4.49647,5.66072,7.12643,8.97164,11.29463,14.21909,17.90078,22.53574,28.37082,35.71675,44.96472,56.60723,71.26428,89.71641,112.94627,142.19093,179.00778,225.35744,283.70820,357.16747,449.64720,566.07229,712.64279,897.16412,1129.463,1421.909,1790.078,2253.574,2837.082,3571.675,4496.472,5660.723,7126.428,8971.641,11294.627,14219.093,17900.778,22535.744,28370.820,35716.747,44964.720,56607.229,71264.279,89716.412,112946,142191,179008,225357,283708,357167,449647,566072,712643,897164,1129463]) / 1000000000000)
OwnUuLoadWeightedAverageLog = WeightedAverage(pmOwnUuLoad,[1.02356,1.07180,1.12232,1.17521,1.23059,1.28859,1.34932,1.41291,1.47950,1.54923,1.62224,1.69869,1.77875,1.86258,1.95036,2.04228,2.13853,2.23931,2.34485,2.45536,2.57108,2.69225,2.81913,2.95199,3.09111,3.23679,3.38934,3.54907,3.71634,3.89148,4.07488,4.26693,4.46802,4.67859,4.89909,5.12997,5.37174,5.62490,5.89000,6.16758,6.45825,6.76262,7.08133,7.41507,7.76453,8.13046,8.51364,8.91487,9.33502,9.77496,10.23564])
OwnUuLoadWeightedAverage = 10 * log10(OwnUuLoadWeightedAverageLog)
RateGrantedEulWeightedAverage = WeightedAverage(pmTotRateGrantedEul,[50,150,250,350,450,550,650,750,850,950,1050,1150,1250,1350,1450,1550,1650,1750,1850,1950,2050,2150,2250,2350,2450,2550,2650,2750,2850,2950,3050,3150,3250,3350,3450,3550,3650,3750,3850,3950,4050,4150,4250,4350,4450,4550,4650,4750,4850,4950,5050,5150,5250,5350,5450,5550,5650,5750,5850,5950])
ROTWeightedAverageLog = WeightedAverage(pmTotalRotCoverage,[1.06101,1.19047,1.33573,1.49872,1.68159,1.88677,2.11699,2.37530,2.66513,2.99033,3.35521,3.76460,4.22395,4.73935,5.31764,5.96649,6.69452,7.51137,8.42790,9.45625,10.61009,11.90472,13.35731,14.98715,16.81586,18.86771,21.16992,23.75304,26.65135,29.90330,33.55206,37.64603,42.23954,47.39354,53.17643,59.66493,66.94516,75.11370,84.27896,94.56255,106.10092,119.04719,133.57315,149.87154,168.15863,188.67709,211.69917,237.53038,266.51347,299.03303,335.52058])
ROTWeightedAverage = 10 * log10(ROTWeightedAverageLog)
WaitingTimeEulWeightedAverage = WeightedAverage(pmWaitingTimeEul,[5,15,25,35,45,55,65,75,85,95,150,250,350,450,550,650,750,850,950,1500])

PSIntEulTti2ThrptAvgMacUser = pmSumAckedBitsCellEulTti2 * 500 / pmNoActive2msFramesEul
PSIntEulTti10ThrptAvgMacUser = pmSumAckedBitsCellEulTti10 * 100 / pmNoActive10msFramesEul
PSIntEulTti2ThrptAvgMacCell = pmSumAckedBitsCellEulTti2 * 500 / pmNoActive2msIntervalsEulTti2
PSIntEulTti10ThrptAvgMacCell = pmSumAckedBitsCellEulTti10 * 100 / pmNoActive10msIntervalsEulTti10
PSIntEulThrptAvgMacCell = (pmSumAckedBitsCellEulTti2 + pmSumAckedBitsCellEulTti10) * 500 / (pmNoActive2msIntervalsEul)
PSIntEulTti10MacEffFactor = 100 * pmSumAckedBitsCellEulTti10 / (pmSumAckedBitsCellEulTti10 + pmSumNackedBitsCellEulTti10)
PSIntEulTti2MacEffFactor = 100 * pmSumAckedBitsCellEulTti2 / (pmSumAckedBitsCellEulTti2 + pmSumNackedBitsCellEulTti2)  

EULCapcityAllocationSuccRate = 100 * (1 - pmCapacityAllocRejServEDchUsers/pmCapacityAllocAttServEDchUsers)
EulDlPowerWeightedAverage = 10 * log10(WeightedAverage(pmCommonChPowerEul,[1.12202,1.41254,1.77828,2.23872,2.81838,3.54813,4.46684,5.62341,7.07946,8.91251,11.2202,14.1254,17.7828,22.3872,28.1838,35.4813,44.6684,56.2341,70.7946,89.1251,112.202,141.254,177.828,223.872,281.838,354.813,446.684,562.341,707.946,891.251,1122.02,1412.54,1778.28,2238.72,2818.38,3548.13,4466.84,5623.41,7079.46,8912.51,11220.2]))

WeightedAverageHSUsersPerTTI = WeightedAverage(pmNoOfHsUsersPerTti,[0,1,2,3,4])
WeightedAverageTbs16Qam = WeightedAverage(pmUsedTbs16Qam,[500,1500,2500,3500,4500,5500,6500,7500,8500,9500,10500,11500,12500,13500,14500,15500,16500,17500,18500,19500,20500,21500,22500,23500,24500,25500,26500,27500,28500,29500])
WeightedAverageTbsQpsk = WeightedAverage(pmUsedTbsQpsk,[500,1500,2500,3500,4500,5500,6500,7500,8500,9500,10500,11500,12500,13500,14500,15500,16500,17500,18500,19500,20500,21500,22500,23500,24500,25500,26500,27500,28500,29500])
AvgSumOfHsScchUsedPwr = WeightedAverage(pmSumOfHsScchUsedPwr,[0,0.5,1,1.5,2,2.5,3,3.5,4,4.5,5,5.5,6,6.5,7,7.5,8,8.5,9,9.5,10,10.5,11,11.5,12,12.5,13,13.5,14,14.5,15,15.5,16,16.5,17,17.5,18,18.5,19,19.5,20,20.5,21,21.5,22,22.5,23,23.5,24,24.5,25,25.5,26,26.5,27,27.5,28,28.5,29,29.5,30,30.5,31,31.5,32,32.5,33,33.5,34,34.5,35,35.5,36,36.5,37,37.5,38,38.5,39,39.5,40,40.5,41,41.5,42,42.5,43,43.5,44,44.5,45,45.5,46,46.5,47,47.5,48,48.5,49,49.5,50,50.5,51]) 

AvgUsedCQI = WeightedAverage(pmUsedCqi,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,-1])
AvgReportedCQI64Qam = WeightedAverage(pmReportedCqi64Qam,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,-1])
AvgReportedCQIMimoSs = WeightedAverage(pmReportedCqiMimoSs,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,-1])
AvgReportedCQIMimoDs1 = WeightedAverage(pmReportedCqiMimoDs1,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,-1])
AvgReportedCQIMimoDs2 = WeightedAverage(pmReportedCqiMimoDs2,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,-1])

AvgUlCECapacity         = WeightedAverage([@{pmCapacityUlCe}[1..10]],[15,30,45,55,65,76,82.5,87.5,92.5,95])
AvgUlCEeXTCapacity      = WeightedAverage([@{pmCapacityUlCeExt}[1..9]],[0,2.5,7.5,12.5,17.5,25,35,42.5,47.5])
AvgDlCECapacity         = WeightedAverage([@{pmCapacityDlCe}[1..10]],[15,30,45,55,65,76,82.5,87.5,92.5,95])
AvgCapacityUlCE 	= pmSumCapacityUlCe / pmSamplesCapacityUlCe
AvgCapacityDlCE 	= pmSumCapacityDlCe / pmSamplesCapacityDlCe
AvgCapacityUlCEAll 	= pmSumCapacityUlCe / 900 / pmRopCounter
AvgCapacityDlCEAll 	= pmSumCapacityDlCe / 900 / pmRopCounter

AvgNbUlCECapacity         = WeightedAverage([@{pmCapacityNodeBUlCe}[1..10]],[15,30,45,55,65,76,82.5,87.5,92.5,95])
AvgNbUlCEeXTCapacity      = WeightedAverage([@{pmCapacityNodeBUlCeExt}[1..9]],[0,2.5,7.5,12.5,17.5,25,35,42.5,47.5])
AvgNbDlCECapacity         = WeightedAverage([@{pmCapacityNodeBDlCe}[1..10]],[15,30,45,55,65,76,82.5,87.5,92.5,95])

#AvgCapacityServEDchUsers = WeightedAverage(pmCapacityServEDchUsers,[10,30,45,55,65,75,82.5,87.5,92.5,97.5])
AvgCapacityServEDchUsers = pmSumCapacityServEDchUsers / pmSamplesCapacityServEDchUsers
 
# IP TransportNetwork
SctpPacketLossRatio = 100 * pmSctpStatRetransChunks / (pmSctpStatSentChunks + pmSctpStatRetransChunks) 
EsmPortIn = (((pmIfInOctetsHi * 2147483648) + pmIfInOctetsLo) * 8) / (900 * 1000000)
EsmPortOut = (((pmIfOutOctetsHi * 2147483648) + pmIfOutOctetsLo) * 8) / (900 * 10000000)
EsmPortTot = EsmPortIn + EsmPortOut
GigaPortIn =  ((pmIfInOctetsLink1Hi * 2147483648 + pmIfInOctetsLink1Lo + pmIfInOctetsLink2Hi * 2147483648 + pmIfInOctetsLink2Lo ) / (900 * 1000000))* 8
GigaPortOut = ((pmIfOutOctetsLink1Hi * 2147483648 + pmIfOutOctetsLink1Lo + pmIfOutOctetsLink2Hi * 2147483648 + pmIfOutOctetsLink2Lo ) / (900 * 1000000))* 8
GigaPortTot = GigaPortIn + GigaPortOut 

#Note: pmRopCounter can only be used on reports that are aggregated on ManagedElement 
#From 44/1553-HSC 105 50/1 :
IpLayerMbpsOut = 8 * pmIpIfStatsHCOutOctets / (1000000 * 900)
IpLayerMbpsIn = 8 * pmIpIfStatsHCInOctets / (1000000 * 900)
EthLayerMbpsOut = (8 * pmIpIfStatsHCOutOctets + 336 * pmIpIfStatsHCOutTransmits) / (1000000 * 900)
EthLayerMbpsIn = (8 * pmIpIfStatsHCInOctets + 336 * pmIpIfStatsHCInReceives) / (1000000 * 900)

AtmIn = pmReceivedAtmCells * 53 * 8 / (900 * 1000000)
AtmOut = pmTransmittedAtmCells * 53 * 8 / (900 * 1000000)
AtmTot = (pmTransmittedAtmCells + pmReceivedAtmCells) * 53 * 8 / (900 * 1000000) 


#Note: for getting the values of AvgRssiHigh_fW:
#gawk 'BEGIN{for(i=-110;i<=-40;i+=0.5) { c++;if(c>=41)x=3;else x=5 ;print sprintf("%5.1f %.*f",i,x,10^12*10^(i/10)+(10^12*10^((i+0.5)/10)-10^12*10^(i/10))/2)}}'
