Skip to content
Snippets Groups Projects
Commit cdaf95dc authored by Ruud Overeem's avatar Ruud Overeem
Browse files

Bug 1306: We need the values of the shortest cables iso the longest ones.

parent 546ab469
No related branches found
No related tags found
No related merge requests found
......@@ -63,10 +63,10 @@ public:
float getDelay(int rcuNr, int rcuMode) const;
// Returns the largest attenuation in dB when operation in the given rcumode.
float getLargestAtt (int rcuMode) const;
float getSmallestAtt (int rcuMode) const;
// Returns the largest delay in ns when operation in the given rcumode.
float getLargestDelay(int rcuMode) const;
float getSmallestDelay(int rcuMode) const;
private:
// Default construction and Copying is not allowed.
......@@ -78,10 +78,10 @@ private:
static const int MAX_RCU_MODE = 7;
//# Data members
float itsLargestLBAdelay;
float itsLargestHBAdelay;
int itsLargestLBAlen;
int itsLargestHBAlen;
float itsSmallestLBAdelay;
float itsSmallestHBAdelay;
int itsSmallestLBAlen;
int itsSmallestHBAlen;
CableAttenuation* itsCableAtts;
blitz::Array<int, 2> itsCableLengths;
......
......@@ -33,12 +33,16 @@ namespace LOFAR {
using namespace blitz;
#define MAX2(a,b) ((a) > (b) ? (a) : (b))
#define MIN2(a,b) ((a) < (b) ? (a) : (b))
//
// Constructor
//
RCUCables::RCUCables(const string& attFilename, const string& delayFilename) :
itsSmallestLBAdelay(10000.0),
itsSmallestHBAdelay(10000.0),
itsSmallestLBAlen (10000),
itsSmallestHBAlen (10000),
itsCableAtts (new CableAttenuation(attFilename))
{
#define EXPECTED_NR_COLUMNS 7
......@@ -89,11 +93,11 @@ RCUCables::RCUCables(const string& attFilename, const string& delayFilename) :
itsCableDelays (rcuNr, 1) = LBHdelay;
itsCableDelays (rcuNr, 2) = HBAdelay;
// keep track of longest cable in LBA and HBA group.
itsLargestLBAlen = MAX2(itsLargestLBAlen , MAX2(LBLlen, LBHlen));
itsLargestHBAlen = MAX2(itsLargestHBAlen , HBAlen);
itsLargestLBAdelay = MAX2(itsLargestLBAdelay, MAX2(LBLdelay, LBHdelay));
itsLargestHBAdelay = MAX2(itsLargestHBAdelay, HBAdelay);
// keep track of shortest cable in LBA and HBA group.
itsSmallestLBAlen = MIN2(itsSmallestLBAlen , MIN2(LBLlen, LBHlen));
itsSmallestHBAlen = MIN2(itsSmallestHBAlen , HBAlen);
itsSmallestLBAdelay = MIN2(itsSmallestLBAdelay, MIN2(LBLdelay, LBHdelay));
itsSmallestHBAdelay = MIN2(itsSmallestHBAdelay, HBAdelay);
// update admin and go on
prevRcuNr++;
......@@ -104,8 +108,8 @@ RCUCables::RCUCables(const string& attFilename, const string& delayFilename) :
ASSERTSTR(prevRcuNr != -1, "File " << delayFilename << " does not contain valid information");
LOG_DEBUG_STR("Found cable specs for " << prevRcuNr << " RCUs");
LOG_DEBUG_STR("Longest LBA cable is " << itsLargestLBAlen << "m");
LOG_DEBUG_STR("Longest HBA cable is " << itsLargestHBAlen << "m");
LOG_DEBUG_STR("Shortest LBA cable is " << itsSmallestLBAlen << "m");
LOG_DEBUG_STR("Shortest HBA cable is " << itsSmallestHBAlen << "m");
LOG_TRACE_STAT_STR(itsCableDelays);
}
......@@ -155,15 +159,15 @@ float RCUCables::getDelay(int rcuNr, int rcuMode) const
}
// Returns the largest attenuation in dB when operation in the given rcumode.
float RCUCables::getLargestAtt (int rcuMode) const
float RCUCables::getSmallestAtt (int rcuMode) const
{
return (itsCableAtts->getAttenuation((rcuMode < 5) ? itsLargestLBAlen : itsLargestHBAlen, rcuMode));
return (itsCableAtts->getAttenuation((rcuMode < 5) ? itsSmallestLBAlen : itsSmallestHBAlen, rcuMode));
}
// Returns the largest delay in ns when operation in the given rcumode.
float RCUCables::getLargestDelay(int rcuMode) const
float RCUCables::getSmallestDelay(int rcuMode) const
{
return (rcuMode < 5 ? (rcuMode == 0) ? 0.0 : itsLargestLBAdelay : itsLargestHBAdelay);
return (rcuMode < 5 ? (rcuMode == 0) ? 0.0 : itsSmallestLBAdelay : itsSmallestHBAdelay);
}
} // namespace RTC
......
......@@ -41,10 +41,10 @@ int main (int argc, char* argv[])
RCUCables RC1("tRCUCables.in_CableAtts", "tRCUCables.in_1");
// Note: test it in 4 loops iso 1 because the results are easier to interpret than.
for (int rcuMode = 0; rcuMode <= 7; rcuMode++) {
LOG_DEBUG_STR("Largest delay for mode " << rcuMode << ": " << RC1.getLargestDelay(rcuMode));
LOG_DEBUG_STR("Smallest delay for mode " << rcuMode << ": " << RC1.getSmallestDelay(rcuMode));
}
for (int rcuMode = 0; rcuMode <= 7; rcuMode++) {
LOG_DEBUG_STR("Largest atten for mode " << rcuMode << ": " << RC1.getLargestAtt (rcuMode));
LOG_DEBUG_STR("Smallest atten for mode " << rcuMode << ": " << RC1.getSmallestAtt (rcuMode));
}
for (int rcuMode = 0; rcuMode <= 7; rcuMode++) {
LOG_DEBUG_STR("Delay for RCU 5 in mode " << rcuMode << ": " << RC1.getDelay(5, rcuMode));
......
......@@ -11,26 +11,26 @@ DEBUG MAC.APL.RTCCommon - 8 x 5
-4.24 -6.82 -7.21 -9.7 -11.06
-4.46 -7.19 -7.58 -10.18 -11.61 ]
[CableAttenuation.cc:105]
DEBUG MAC.APL.RTCCommon - Reading cable-delays from file: ./tRCUCables.in_1 [RCUCables.cc:50]
DEBUG MAC.APL.RTCCommon - Found cable specs for 191 RCUs [RCUCables.cc:106]
DEBUG MAC.APL.RTCCommon - Longest LBA cable is 80m [RCUCables.cc:107]
DEBUG MAC.APL.RTCCommon - Longest HBA cable is 115m [RCUCables.cc:108]
DEBUG MAC.APL.RTCCommon - Largest delay for mode 0: 0 [tRCUCables.cc:44]
DEBUG MAC.APL.RTCCommon - Largest delay for mode 1: 326.964 [tRCUCables.cc:44]
DEBUG MAC.APL.RTCCommon - Largest delay for mode 2: 326.964 [tRCUCables.cc:44]
DEBUG MAC.APL.RTCCommon - Largest delay for mode 3: 326.964 [tRCUCables.cc:44]
DEBUG MAC.APL.RTCCommon - Largest delay for mode 4: 326.964 [tRCUCables.cc:44]
DEBUG MAC.APL.RTCCommon - Largest delay for mode 5: 465.525 [tRCUCables.cc:44]
DEBUG MAC.APL.RTCCommon - Largest delay for mode 6: 465.525 [tRCUCables.cc:44]
DEBUG MAC.APL.RTCCommon - Largest delay for mode 7: 465.525 [tRCUCables.cc:44]
DEBUG MAC.APL.RTCCommon - Largest atten for mode 0: 0 [tRCUCables.cc:47]
DEBUG MAC.APL.RTCCommon - Largest atten for mode 1: -3.32 [tRCUCables.cc:47]
DEBUG MAC.APL.RTCCommon - Largest atten for mode 2: -3.32 [tRCUCables.cc:47]
DEBUG MAC.APL.RTCCommon - Largest atten for mode 3: -3.32 [tRCUCables.cc:47]
DEBUG MAC.APL.RTCCommon - Largest atten for mode 4: -3.32 [tRCUCables.cc:47]
DEBUG MAC.APL.RTCCommon - Largest atten for mode 5: -8.35 [tRCUCables.cc:47]
DEBUG MAC.APL.RTCCommon - Largest atten for mode 6: -9.7 [tRCUCables.cc:47]
DEBUG MAC.APL.RTCCommon - Largest atten for mode 7: -10.18 [tRCUCables.cc:47]
DEBUG MAC.APL.RTCCommon - Reading cable-delays from file: ./tRCUCables.in_1 [RCUCables.cc:54]
DEBUG MAC.APL.RTCCommon - Found cable specs for 191 RCUs [RCUCables.cc:110]
DEBUG MAC.APL.RTCCommon - Shortest LBA cable is 50m [RCUCables.cc:111]
DEBUG MAC.APL.RTCCommon - Shortest HBA cable is 115m [RCUCables.cc:112]
DEBUG MAC.APL.RTCCommon - Smallest delay for mode 0: 0 [tRCUCables.cc:44]
DEBUG MAC.APL.RTCCommon - Smallest delay for mode 1: 199.257 [tRCUCables.cc:44]
DEBUG MAC.APL.RTCCommon - Smallest delay for mode 2: 199.257 [tRCUCables.cc:44]
DEBUG MAC.APL.RTCCommon - Smallest delay for mode 3: 199.257 [tRCUCables.cc:44]
DEBUG MAC.APL.RTCCommon - Smallest delay for mode 4: 199.257 [tRCUCables.cc:44]
DEBUG MAC.APL.RTCCommon - Smallest delay for mode 5: 465.525 [tRCUCables.cc:44]
DEBUG MAC.APL.RTCCommon - Smallest delay for mode 6: 465.525 [tRCUCables.cc:44]
DEBUG MAC.APL.RTCCommon - Smallest delay for mode 7: 465.525 [tRCUCables.cc:44]
DEBUG MAC.APL.RTCCommon - Smallest atten for mode 0: 0 [tRCUCables.cc:47]
DEBUG MAC.APL.RTCCommon - Smallest atten for mode 1: -2.05 [tRCUCables.cc:47]
DEBUG MAC.APL.RTCCommon - Smallest atten for mode 2: -2.05 [tRCUCables.cc:47]
DEBUG MAC.APL.RTCCommon - Smallest atten for mode 3: -2.05 [tRCUCables.cc:47]
DEBUG MAC.APL.RTCCommon - Smallest atten for mode 4: -2.05 [tRCUCables.cc:47]
DEBUG MAC.APL.RTCCommon - Smallest atten for mode 5: -8.35 [tRCUCables.cc:47]
DEBUG MAC.APL.RTCCommon - Smallest atten for mode 6: -9.7 [tRCUCables.cc:47]
DEBUG MAC.APL.RTCCommon - Smallest atten for mode 7: -10.18 [tRCUCables.cc:47]
DEBUG MAC.APL.RTCCommon - Delay for RCU 5 in mode 0: 0 [tRCUCables.cc:50]
DEBUG MAC.APL.RTCCommon - Delay for RCU 5 in mode 1: 199.257 [tRCUCables.cc:50]
DEBUG MAC.APL.RTCCommon - Delay for RCU 5 in mode 2: 199.257 [tRCUCables.cc:50]
......@@ -60,8 +60,8 @@ DEBUG MAC.APL.RTCCommon - 8 x 5
-4.24 -6.82 -7.21 -9.7 -11.06
-4.46 -7.19 -7.58 -10.18 -11.61 ]
[CableAttenuation.cc:105]
DEBUG MAC.APL.RTCCommon - Reading cable-delays from file: ./tRCUCables.in_2 [RCUCables.cc:50]
DEBUG APL.RTCCommon.EXCEPTION - Assertion: rcuNr == prevRcuNr + 1; Expected line with rcuNr 0 [RCUCables.cc:76]
DEBUG MAC.APL.RTCCommon - Reading cable-delays from file: ./tRCUCables.in_2 [RCUCables.cc:54]
DEBUG APL.RTCCommon.EXCEPTION - Assertion: rcuNr == prevRcuNr + 1; Expected line with rcuNr 0 [RCUCables.cc:80]
INFO MAC.APL.RTCCommon - Expected exception:Assertion: rcuNr == prevRcuNr + 1; Expected line with rcuNr 0 [tRCUCables.cc:60]
DEBUG MAC.APL.RTCCommon - Reading attenuations from file: ./tRCUCables.in_CableAtts [CableAttenuation.cc:47]
DEBUG MAC.APL.RTCCommon - Cable lenghts: 5
......@@ -76,8 +76,8 @@ DEBUG MAC.APL.RTCCommon - 8 x 5
-4.24 -6.82 -7.21 -9.7 -11.06
-4.46 -7.19 -7.58 -10.18 -11.61 ]
[CableAttenuation.cc:105]
DEBUG MAC.APL.RTCCommon - Reading cable-delays from file: ./tRCUCables.in_3 [RCUCables.cc:50]
DEBUG APL.RTCCommon.EXCEPTION - Assertion: rcuNr == prevRcuNr + 1; Expected line with rcuNr 10 [RCUCables.cc:76]
DEBUG MAC.APL.RTCCommon - Reading cable-delays from file: ./tRCUCables.in_3 [RCUCables.cc:54]
DEBUG APL.RTCCommon.EXCEPTION - Assertion: rcuNr == prevRcuNr + 1; Expected line with rcuNr 10 [RCUCables.cc:80]
INFO MAC.APL.RTCCommon - Expected exception:Assertion: rcuNr == prevRcuNr + 1; Expected line with rcuNr 10 [tRCUCables.cc:67]
DEBUG MAC.APL.RTCCommon - Reading attenuations from file: ./tRCUCables.in_CableAtts [CableAttenuation.cc:47]
DEBUG MAC.APL.RTCCommon - Cable lenghts: 5
......@@ -92,10 +92,10 @@ DEBUG MAC.APL.RTCCommon - 8 x 5
-4.24 -6.82 -7.21 -9.7 -11.06
-4.46 -7.19 -7.58 -10.18 -11.61 ]
[CableAttenuation.cc:105]
DEBUG MAC.APL.RTCCommon - Reading cable-delays from file: ./tRCUCables.in_4 [RCUCables.cc:50]
DEBUG MAC.APL.RTCCommon - Reading cable-delays from file: ./tRCUCables.in_4 [RCUCables.cc:54]
DEBUG APL.RTCCommon.EXCEPTION - Assertion: false; Cablelength 81 is not a legal cablelength:5
[ 50 80 85 115 130 ] [CableAttenuation.cc:134]
DEBUG APL.RTCCommon.EXCEPTION - Assertion: itsCableAtts->isLegalLength(LBHlen); LBH cablelength 81 is not allowed [RCUCables.cc:81]
DEBUG APL.RTCCommon.EXCEPTION - Assertion: itsCableAtts->isLegalLength(LBHlen); LBH cablelength 81 is not allowed [RCUCables.cc:85]
INFO MAC.APL.RTCCommon - Expected exception:Assertion: itsCableAtts->isLegalLength(LBHlen); LBH cablelength 81 is not allowed [tRCUCables.cc:74]
DEBUG MAC.APL.RTCCommon - Reading attenuations from file: ./tRCUCables.in_CableAtts [CableAttenuation.cc:47]
DEBUG MAC.APL.RTCCommon - Cable lenghts: 5
......@@ -110,8 +110,8 @@ DEBUG MAC.APL.RTCCommon - 8 x 5
-4.24 -6.82 -7.21 -9.7 -11.06
-4.46 -7.19 -7.58 -10.18 -11.61 ]
[CableAttenuation.cc:105]
DEBUG MAC.APL.RTCCommon - Reading cable-delays from file: ./tRCUCables.in_5 [RCUCables.cc:50]
DEBUG APL.RTCCommon.EXCEPTION - Assertion: rcuNr >= 0 && rcuNr < MAX_RCUS; RCUNumber 192 not in range [0..191] [RCUCables.cc:77]
DEBUG MAC.APL.RTCCommon - Reading cable-delays from file: ./tRCUCables.in_5 [RCUCables.cc:54]
DEBUG APL.RTCCommon.EXCEPTION - Assertion: rcuNr >= 0 && rcuNr < MAX_RCUS; RCUNumber 192 not in range [0..191] [RCUCables.cc:81]
INFO MAC.APL.RTCCommon - Expected exception:Assertion: rcuNr >= 0 && rcuNr < MAX_RCUS; RCUNumber 192 not in range [0..191] [tRCUCables.cc:82]
DEBUG MAC.APL.RTCCommon - Reading attenuations from file: ./tRCUCables.in_CableAtts [CableAttenuation.cc:47]
DEBUG MAC.APL.RTCCommon - Cable lenghts: 5
......@@ -126,6 +126,6 @@ DEBUG MAC.APL.RTCCommon - 8 x 5
-4.24 -6.82 -7.21 -9.7 -11.06
-4.46 -7.19 -7.58 -10.18 -11.61 ]
[CableAttenuation.cc:105]
DEBUG MAC.APL.RTCCommon - Reading cable-delays from file: ./tRCUCables.in_6 [RCUCables.cc:50]
DEBUG APL.RTCCommon.EXCEPTION - Assertion: nrArgs == EXPECTED_NR_COLUMNS; Expected 7 fields on line: 5 50 199.2573 80 [RCUCables.cc:78]
DEBUG MAC.APL.RTCCommon - Reading cable-delays from file: ./tRCUCables.in_6 [RCUCables.cc:54]
DEBUG APL.RTCCommon.EXCEPTION - Assertion: nrArgs == EXPECTED_NR_COLUMNS; Expected 7 fields on line: 5 50 199.2573 80 [RCUCables.cc:82]
INFO MAC.APL.RTCCommon - Expected exception:Assertion: nrArgs == EXPECTED_NR_COLUMNS; Expected 7 fields on line: 5 50 199.2573 80 [tRCUCables.cc:89]
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment