Commits
1468 1468 | if (activeAntennas.find(*a) != activeAntennas.end()) { |
1469 1469 | if (prtlev > 2) |
1470 1470 | cout << "[FringeJones.cc::findRefAntWithData] We are choosing refant " << *a << endl; |
1471 1471 | refAnt = *a; |
1472 1472 | break; |
1473 1473 | } else { |
1474 1474 | if (prtlev > 2) |
1475 1475 | cout << "[FringeJones.cc::findRefAntWithData] No data for refant " << *a << endl; |
1476 1476 | } |
1477 1477 | } |
1478 - | return refAntList(0); |
1478 + | return refAnt; |
1479 1479 | } |
1480 1480 | |
1481 1481 | |
1482 1482 | // Stolen from SolveDataBuffer |
1483 1483 | void |
1484 1484 | aggregateTimeCentroid(SDBList& sdbs, Int refAnt, std::map<Int, Double>& aggregateTime) { |
1485 1485 | // Weighted average of SDBs' timeCentroids |
1486 1486 | std::map<Int, Double> aggregateWeight; |
1487 1487 | for (Int i=0; i < sdbs.nSDB(); ++i) { |
1488 1488 | SolveDataBuffer& s = sdbs(i); |
2217 2217 | Double df0 = centroidFreq - sdbs(0).freqs()(0); // global center to global edge |
2218 2218 | |
2219 2219 | logSink() << "Solving for fringes for spw=" << currSpw() << " at t=" |
2220 2220 | << MVTime(refTime()/C::day).string(MVTime::YMD,7) << LogIO::POST; |
2221 2221 | |
2222 2222 | std::map<Int, Double> aggregateTime; |
2223 2223 | // Set the refant to the first choice that has data! |
2224 2224 | refant() = findRefAntWithData(sdbs, refantlist(), prtlev()); |
2225 2225 | if (refant()<0) |
2226 2226 | throw(AipsError("No valid reference antenna supplied.")); |
2227 + | else |
2228 + | logSink() << "Using reference antenna " << refant() << LogIO::POST; |
2227 2229 | |
2228 2230 | aggregateTimeCentroid(sdbs, refant(), aggregateTime); |
2229 2231 | |
2230 2232 | if (DEVDEBUG) { |
2231 2233 | std::cerr << "Weighted time centroids" << endl; |
2232 2234 | for (auto it=aggregateTime.begin(); it!=aggregateTime.end(); ++it) |
2233 2235 | std::cerr << it->first << " => " << it->second - t0 << std::endl; |
2234 2236 | } |
2235 2237 | |
2236 2238 | DelayRateFFT drf(sdbs, refant(), delayWindow(), rateWindow()); |